Yakın zamanda kodlayıcı olmayan bir kişiyle satranç bilgisayarlarının olasılıkları hakkında bir tartışma içindeydim. Teoride çok bilgili değilim ama yeterince bildiğimi düşünüyorum.
Satrançta her zaman kazanan ya da çıkmaza giren deterministik bir Turing makinesi olamayacağını savundum. Bence, oyuncu 1/2 hamlelerinin tüm kombinasyonlarının tüm alanını araştırsanız bile, bilgisayarın her adımda karar verdiği tek hareket bir sezgiye dayanıyor. Sezgisel bir temele dayandığından, rakibin yapabileceği TÜM hamleleri yenmek zorunda değildir.
Arkadaşım, tersine, bir bilgisayarın asla bir "hata" hareketi yapmaması durumunda her zaman kazanacağını veya eşitleyeceğini düşündü (bunu nasıl tanımlıyorsunuz?). Ancak, CS almış bir programcı olarak, iyi seçimlerinizin bile - bilge bir rakip verildiğinde - sonunda sizi "hata" yapmaya zorlayabileceğini biliyorum. Her şeyi bilseniz bile, bir sonraki adımınız bir buluşsal yöntemi eşleştirmede açgözlüdür.
Çoğu satranç bilgisayarı olası bir son oyunu devam eden oyunla eşleştirmeye çalışır, bu da esasen dinamik bir programlama geri dönüşüdür. Yine, söz konusu oyunsonu kaçınılabilir.
Düzenleme: Hmm ... Burada bazı tüyleri karıştırmışım gibi görünüyor. Bu iyi.
Tekrar düşününce, satranç gibi sonlu bir oyunu çözmenin teorik bir problemi yokmuş gibi görünüyor. Satrancın pullardan biraz daha karmaşık olduğunu, zira galibiyetin mutlaka taşların sayısal olarak tükenmesi değil, bir eş tarafından kazandığını iddia ediyorum. İlk iddiam muhtemelen yanlıştır, ancak yine de sanırım henüz tatmin edici bir şekilde (resmi olarak) kanıtlanmamış bir şeye işaret ettim.
Sanırım benim düşünce deneyim, ağaçta bir dal alındığında, o zaman algoritmanın (veya ezberlenmiş yolların), rakibin hareketlerindeki olası herhangi bir dal için bir eşe giden yolu (çiftleşmeden) bulması gerektiğiydi. Tartışmadan sonra, hayal edebileceğimizden daha fazla anı verildiğinde, tüm bu yollar bulunabilirdi.