Dama Oynayan LISP kodu - Altüst (Minimax) Algoritması

0
malkocoglu

Bilgisayarlar bir problemi yapay zeka kullanarak çözerken, kullandıkları teknikler; Karar ağacı, akıllı tahmin yeteneği ve o ana kadar geçilen yolu hatırlamaktır.
Bir rakibe karsi oyun oynayabilen bir yapay zeka algoritmasi bu tekniği bir ileri götürerek, rakibin hareketlerini de çözüm alanına almaya çalışır. Altüst (Minimax) algoritmasi, oyun zekası alanında bilinen bir algoritma; Yapay Zeka dersi için yazılmış ve altüst kulanan LISP Dama kodlarını sitemizden paylaşıyoruz.
Yapay Zeka ve Müsabaka - Altüst Algoritması

Görüşler

0
FZ
Sessiz sedasız ve kararlı şekilde Türkçe bilim dilini geliştirdiğiniz için teşekkürler!

Tabii bence bu tür yazıların önemli bir yanı daha var, bilgisayar programlama deyince bir uçta C ya da Assembly programlama dilini, diğer uçta da VB, SQL gibi dilleri gören insanların ufkunu genişletiyorlar.
0
malkocoglu
Tesekkurler; dil cesitligin konusunda haklisiniz. Dillerin sozdizim kurallari ile birlikte, o dili yaratan programcinin tercih ettigi kodlama kaliplarini da ogrenmis oluyoruz bence; bu yuzden bolluk berekettir denebilir :)

Saygilar,
0
Nightwalker
Hazır yapay zekadan bahsetmişken. Acaba Lisp ve Prolog u karşılaştırabilir misiniz ? Bu konuda deneyimli insanların yorumlarını merak ediyorum doğrusu.
0
anonim
Prolog hic kullanmadim, bilemeyecegim.
0
malkocoglu
Gecikmis bir cevap: Video'dan yapay zeka dersi izlerken... hoca pat diye Prolog konusuna daldi. Ogrendiklerimi aktariyorum.

Prolog, mantiksal kurallar kullanarak bilgiyi temsil etmenize yardim ediyor. Her programlama dili belli bir problem icin ozel yazilmistir diye dusunursek, Prolog'un altin ozelligi kural yaratmak ve ilerisel/gerisel zincirleme ile karara varmak, ya da varilmis karardan geriye baslangic noktasi bulmaktir diyebiliriz.

Tarihi birkac nokta vermekte yararli olur: Prolog, Fransiz'lar (ve Avrupa'lilar) tarafindan Amerika'yi yapay zeka alaninda gecmek icin ulusal bir proje olarak basladi. Daha sonra, Japonya tarafindan ele alindi, ve 5. nesil dil projesi cercevesinde Prolog makinalari vs, gibi bir cok atilim yapilarak buyuk paralar bu alana harcandi.

Hoca'nin yorumu, (Amerika'li oldugu icin herhalde), verdikleri para kadar sonuc alinmadigi. Tabii buyuk atilimlar bazen sonuclara tam varmasa bile yan urunlerden coplenen sanayii'nin bu arastirmalardan neler cikarttigini bilemeyiz.

Bilginize sunarim.











Görüş belirtmek için giriş yapın...

İlgili Yazılar

Diyelim Ki Elimizde Nesneye Yönelimli Bir Dil Yok - Alice Nesneler Diyarında

FZ

Elinizdeki programlama dilinde nesneye yönelimli (OO - Object Oriented) programlama imkanı olmasa idi ne yapardınız? İki seçenekten biri gelirdi aklınıza herhalde:
  1. OO desteği veren bir dil kullanmaya başlamak.
  2. Elinizdeki dile OO desteği katmak için uğraşmak.
Bu kısa yazıda Peter Norvig'in PAIP (Paradigms of Artificial Intelligence Programming Case Studies in Common Lisp) kitabının 13. bölümündeki birkaç kısa örnekten yola çıkarak "eğer Common Lisp dilinde CLOS (Common Lisp Object System) gibi bir şey olmasaydı bunu nasıl gerçekleştirebilirdik?" sorusunun cevabının ilk bölümüne göz atacağız.

Cusp: Eclipse için Common Lisp Eklentisi

zekzekus

Lisp ile uğraşan ama Emacs editörüne alışamamış benim gibi kullanıcıların yardımına Eclipse IDE ortamı için hazırlanmış Cusp eklentisi yetişiyor.

Hangi Common Lisp?

zekzekus

Daniel Weinreb, buradan erişilebilecek şekilde, Common Lisp gerçekleştirimleri (implementasyonları) ile ilgili bir inceleme yapmış. İncelemeye konu olan Common Lisp gerçekleştirimlerinin sorumluları kendi gerçekleştirimlerini anlatmışlar. "Nedir bu Lisp? Ortada bir sürü Lisp var, hangisini seçmeliyim?" diyenler için özellikle az bilinen Common Lisp gerçekleştirimlerini de içermesi açısından güzel bir kaynak.

stumpwm: Lisp ile minimalist pencere yöneticisi

FZ

stumpwm GNU/Linux ve UNIX türevleri için minimalist bir pencere yöneticisi ve başlangıç noktası şöyle tanıtılıyor: "StumpWM, programcılarının C ile yazılmış ratpoison'dan kaynaklanan hayalkırıklıkları sonucunda ortaya çıktı. ratpoison kullanmaya başladıktan kısa bir süre sonra fark ettik ki sisteme lispimsi emacs tarzı özellikler katıp duruyorduk. C-t : ile devreye giren bir REPL, kancalar ve gittikçe büyüyen bir Common Lisp alt kümesi.

Açık olan şuydu ki ihtiyaç duyduğumuz şey zırt pırt yeniden durdurup başlatmamıza bizi zorlamayan, kolayca hack edilebilir ve özelleştirme imkanı sunan, sıfırdan Lisp ile yazılmış bir pencere yöneticisi idi."

stumpwm ile ilgili eğlenceli bir videoyu burada izleyebilirsiniz.

PL/scheme: PostgreSQL için Scheme

FZ

cs-lisp e-posta listesinde Volkan Yazıcı tarafından geliştirilen PL/scheme projesinin duyurusu bugün yapıldı.