Bu sene Bilgisayar Mühendisliği 3. sınıf öğrencisi olduğum için baya yoğun geçti diyebiliriz. Artık önemsiz ( daha doğrusu mühendislik eğitimi adına bana katkısı olmayan ) derslerin kalmamasından dolayı projelerden , ödevlerden , sunumlardan ve sınavlardan başımızı neredeyse başımızı kaldıramadık. Artık seçmeli dersler de almaya başladım bölümümüz ile ilgili. Bu derslerden biri de Yapay Zeka (Artificial Intelligence). Hocamız derste işlediği konulardan bir programlama projesi yapmamızı ve projenin teorik kısmından sunum yapmamızı istedi. Ben de Oyun Ağaçları'nı (Game Tree) seçip örnek proje olarak en basit çift kişilik tahta oyunlarından hepimizin bildiği XOX - Tic Tac Toe ' yu seçip Microsoft Silverlight'da oyunu geliştirdim.
Oyundaki yapay zeka sıra bilgisayarda olduğu zaman o anki en iyi hamleyi yapmaya çalışıyor. Hatta en iyi hamleyi yapıyor bile diyebiliriz çünkü isminden de anlaşılacağı gibi programlaması iyi yapılmışsa bilgisayarı yenmeniz mümkün değil. Aynı şekilde bütün kazanma tekniklerini bilen bir insan , yanlış ve dikkatsizce oynamadığı sürece kaybetmez. Eğer dikkatli oynarsanız beraber oynadığınız oyunlar hep berabere bitecektir. Bilgisayar o hamleyi bilgisayar'ın işlem gücünü kullanarak ilerde hem karşısındaki insan'ın hem de kendisinin ilerde hamle yapabileceği bütün oyun durumlarını önceden hesaplayarak seçiyor. Yapay zeka'daki teori kısmını , başka bir blog yazımda , powerpoint sunum dosyam ile açıkladım o sayfaya bakmanızı tavsiye ederim.
Projelerimde genelde ekran görüntüsü koyardım fakat bu projemde koymamamın nedeni oyunu direk internet üzerinden test edebilirsiniz çünkü projeyi Silverlight'da geliştirdim. Sayfanın alt kısmında bilgisayarı Oyunu oynayabilmeniz için bilgisayarınızda Silverlight plug-in i yüklü olması gerekiyor. Tasarım ve oyun seçenekleri üzerinde pek uğraşmadım. Oyuna siz başlıyorsunuz , fare ile istediğiniz alana X koyabiliyorsunuz. Oyun bittiğinde fare ile oyun alanına sırayla bir kaç kez tıkladığınızda yeni oyun açılacaktır. Hatırlatmakta fayda var ; oynadığınız yapay zeka (bilgisayar) yenilmeyecek şekilde programlanmıştır.
Oyunu oynanamak için tıklayınız.