Yapay zeka bir bilgisayarın ya da bilgisayar denetimli bir makinanın, genellikle insana özgü nitelikler olduğu varsayılan akıl yürütme, anlam çıkartma, genelleme ve geçmiş deneyimlerden öğrenme gibi yüksek zihinsel süreçlere ilişkin görevleri yerine getirme yeteneği olarak kabaca tanımlansa bile yapay zeka kavramı üzerinde çok tartışılan, bir konudur.
'Yapay' kelimesinin buradaki anlamını basitçe yaşayan bir organizma değil bir bilgisayar tarafından yerine getirilme olarak, 'zeka' ise bilgi ve akıl yürütme yeteneklerinin bir amacı olan etkinlerin gerçekleştirilmesinde kullanılması olarak tanımlayacak olursak, bu gün makineler zeki olarak sınıflandırılabilecek bir çok şey yapabiliyorlar. Yapay zeka araştırmacıları temelde 'makinelerin yarın yapabileceklerini' artırmak üzere bilgisayar yeteneklerinin sınırlarının genişletmeye uğraşıyorlar.
Bilinç, sınıflama yeteneği ve seçme yeteneği zeki davranışın yapı taşlarını oluşturmaktadır. Yapay zeka konusundaki araştırmacılar bilgisayarların bu alanlardaki yeteneklerini geliştirmek üzere büyük adımlar atmaktadırlar.
Yapay zeka konusundaki araştırmalar sayısal bilgisayarların 1940'lı yıllarda geliştirilmesiyle birlikte başladı. Bunu izleyen yıllarda bilgisayarların çok karmaşık mantıksal işlemler içeren satranç oynama, teorem kanıtlama gibi problemleri ustalıkla çözebilecek şekilde programlanabilecekleri ortaya konuldu. Ancak bu yetenek, yüksek zihinsel işlemler yapabilme gücünden çok, simgeler üzerinde çok sayıda işlemi büyük bir hızda gerçekleştirebilme gücünden kaynaklanıyordu.
Henüz bilgisayarların insan zekasının çok uzağında olduğu günümüzde, yapay zeka çalışmaları açısından çok önemli bazı gelişmeler yapılmış olması konuda umut verici gözükmektedir. Bunlar arasında karar verme, doğal dil anlama ve örüntü tanıma alanlarındaki sonuçları sayabiliriz. Grafik görüntülerinin tanınması, kavrama ve soyutlama gibi süreçleri içermesi dolayısıyla yapay zeka kapsamındadır. Program yazabilen bilgisayar programlarının geliştirilmesi konusu da yapay zekada umut veren çalışmalar arasındadır.
Uzman sistemler olarak anılan bilgi tabanlı yazılım sistemleri, belirli bir alanın önde gelen uzmanlarından derlenmiş bilgilere dayanarak düzenlenmiş çok sayıdaki "eğer ... ise .... dir" biçimindeki kuraldan oluşmaktadır.
Bilgisayarların Ingilizce, Fransızca gibi doğal dillerde verilen komutları anlamasını sağlayan programların yazılımında da önemli gelişmeler olmuştur. Ayrıca bir dilden diğerine tercüme, veya sözlü komutu anlayarak yerine getirme gibi uygulamalarda bulunmaktadır.