Yapay zeka ile ilgilenenlere

Öncelikle merhabalar. Başlığa ne yazacağıma karar veremedim alakasız olmuşsa kusura bakmayın.
Python’un PyQt5 adlı kütüphanesini kullanarak bir tic tac toe oyunu yapmaya başlamıştım ve bunu iyice geliştirmeye karar vermiştim. Bilgisayar ile oynanabilmesini hedefledim ve bilgisayarın yenilmez olmasını istedim.
Yapay zeka, minimax gibi algoritmalar vb. şeylere ulaştım nasıl başlayacağımı düşünürken. Yapay zeka hakkında en ufak bir deneyimim ve hatta bir fikrim olmadığı için bu yöntemden uzaklaştım. Minimax gibi algoritmalar da yanılmıyorsam yine yapay zeka ile alakalı zaten. Olmasa bile bu yöntemden de uzaklaşmaya karar verdim çünkü bu konular hakkında da çok az fikir sahibi ve deneyimsizdim.
Ben de if bloklarıyla yapmaya kalkarak bir çılgınlık ettim. Bu şekilde bir noktaya kadar yürüdü ancak o noktadan sonra maalesef if blokları kontrol edilemez olmaya başladı. Hepsi birbirine dolandı. Bir if bloğu çalışırken bir diğer if bloğu da çalışıyordu ve bunu engellemek mümkün değildi. Mümkün olsa bile daha yolun başında böyle bir sorun yaşıyordum. Daha yazılacak en az 300 if bloğu vardır tahminimce. Hatta az bile söylüyorumdur. Daha bu kadar az ilerlemişken böyle dertlere düşünce yolun gerisinde çekeceğim sıkıntıyı hayal dahil etmek istemedim. İlk defa pes edeceğime dair bu kadar emin oldum.
Şimdi neden bu konuyu açtığıma geliyorum. “Madem ben yapacak kadar bilgi sahibi değilim, yapacak kadar bilgi sahibi olanların işine yarasın bu proje !” dedim. Projemin alınıp geliştirilmesi için bir teklif sunuyorum kısacası. Projemin bağlantısı aşağıda bulunuyor, umarım birilerinin işine yarar ve bu birileri
bu proje ile birlikte kendini geliştirebilir.
Özetle bu projeyi alın ve istediğiniz gibi evirip çevirin diyorum :sweat_smile:
https://github.com/TaylanOzturk23/Tic-Tac-Toe


Ön izleme yapmak isteyenler için de aşağıda bir ön izleme videosu bırakıyorum.


Umarım birilerinin işine yarar.

3 Beğeni

Bir proje sizi ne kadar zorlarsa sizi o kadar geliştirir. bkz. : Unnick.

1 Beğeni

Evet artık bir tic tac toe ustasıyım :smiley:

1 Beğeni

Google’ın tic-tac-toe oyununun sırrını da çözmüşsündür :sunglasses:

1 Beğeni

Ben de bu tam bu konu hakkında yeni bir video çektim. Pekiştirmeli öğrenme algoritması olan Q Learning’i kullandım ama ben de bu konuda yeni olduğum için belki hatalar yapmış olabilirim. Merak ederseniz bi göz atabilirsiniz :smiley: XOX Oyunu İçin Yapay Zeka - Q Learning - YouTube
Link paylaşmak yasak mı emin değilim yasak ise silerim

5 Beğeni

Merhabalar,
İşin minimax algoritması kısmını hallettim. Ufak değişiklikler yaptıktan sonra yakında pull request atmayı umuyorum :wink:

İyi çalışmalar.

Hocam sizin linkiniz niye yasak olsun ki, sonuçta yazılım konusunda bilgi paylaşımı yapmışsınız. Paylaşmayıp da ne yapacaksınız, ilahi :sweat_smile:

Herkese hayırlı sabahlar dilerim :slight_smile:

6 Beğeni

Eliniz değmişken bir de alfa-beta budamasını ekleyebilirseniz ekleyin, tam olsun :slight_smile:

Elinize sağlık.

Django ile online olarak oynanabilecek versiyonunu yazmıştım, ben de paylaşmak istedim burada. Hem karşılıklı hem de bilgisayara karşı oynayabilirsiniz.

5 Beğeni

Dün izleme fırsatı bulamamıştım. Bugün izledim. Gerçekten çok faydalı bir video olmuş.
Teşekkürler :+1: :slight_smile:

1 Beğeni

Hayırlı geceler :first_quarter_moon:

Reyis sen istersin de biz yapmaz mıyız :slight_smile: Alfa-beta budaması da eklendi, GUI de düzenlendi, pull request de atıldı. Belki GUI tasarımı iyi değildir, o da geliştirilebilir.

https://github.com/TaylanOzturk23/Tic-Tac-Toe/pull/1

@coderistan ve @DrShahinstein e teşekkür ederim, onlar sayesinde dağarcığıma yeni bir problem yaklaşımı katmış oldum :facepunch: :heart:

3 Beğeni

Ben teşekkür ederim :slightly_smiling_face: Bunu duymak çok güzel bir şey :heart:
Edit:
Az önce repoyu klonlayıp denedim. Gerçekten muhteşem olmuş :star:
Yazdığınız kodlardan faydalanarak kendimi geliştirebileceğime inanıyorum.
Uğraşınız için müteşekkirim :heart:

2 Beğeni

Eline koluna sağlık kardeşim, yeni bir şeyler öğrenmene sebep olduysam ne mutlu bana :slight_smile:

1 Beğeni