Programiranje umetne inteligence je proces, s katerim računalniški strokovnjaki ali programerji dajejo umetno inteligenco (AI) računalniškim napravam. Umetna inteligenca je običajno opredeljena kot sposobnost računalniških sistemov, da delujejo na način, ki ga lahko imenujemo inteligentni. Na splošno omogoča tem napravam, da oblikujejo načrt ukrepanja, ki ustreza situaciji ali danim navodilom.
Programerji umetne inteligence običajno izvajajo programiranje z umetno inteligenco z uporabo številnih programskih jezikov. Te programske jezike pogosto uporabljajo za učenje strojev, kako razmišljati. Običajno se osredotočijo na eno samo temo, v kateri želijo, da je stroj strokovnjak, in jih tako spremenijo v ekspertne sisteme. To je pogosto mogoče doseči z zbiranjem in shranjevanjem informacij o določenem področju, kot so medicina, geologija ali robotika, v bazi podatkov, ki se običajno imenuje tudi baza znanja. Informacije v bazi znanja običajno pomagajo strojem pri reševanju zapletenih problemov, ki jim pogosto dajejo videz, da so inteligentni.
Obstaja veliko aplikacij, v katerih se lahko uporablja programiranje umetne inteligence. Uporablja se lahko vnaprej in kritičnih sistemov, ki sodelujejo pri raziskovanju vesolja, video igrah in znanstvenih študijah. Uporablja se lahko tudi v običajnih avtomatskih gospodinjskih aparatih. V večini teh aplikacij je običajno nekaj stalnih elementov, vključenih v programiranje umetne inteligence, na primer določen niz pravil in baza znanja. Ti so pogosto potrebni za uspešno simulacijo človeške inteligence.
Med procesom programiranja umetne inteligence se upoštevajo tudi drugi pomembni elementi računalniške inteligence, kot so samodejno upravljanje pomnilnika, generiranje kod, ponavljajoče se izračune in omogočanje postopkov iskanja. S temi elementi se lahko računalniški sistemi pogosto prilagajajo spremembam okolja, iščejo rešitve za težave in izvajajo dana navodila. Na primer, uporabnik bo morda želel svoje datoteke razporediti v padajočem vrstnem redu in glede na velikost. S programiranjem umetne inteligence lahko računalniški sistem pogosto izvede večino nalog enostavno in hitro.