chessrank.org
Blog

Opponent Prep'in İçinde: Bir sonraki rakibinizin hayaletini nasıl inşa ediyoruz

Opponent Prep'i aç, bir kullanıcı adı yaz ve birkaç saniye sonra tahtanın karşısında rahatsız edici bir şeye bakıyor olacaksın: onun açtığı gibi açan, hep sürüklendiği aynı sarsak yapılara sürüklenen ve tam olarak ne zaman hata yapma eğiliminde olduğunu biliyormuş gibi görünen bir bot. Buna Ghost Bot diyoruz ve kaputun altında gerçekten katmanlı bir mühendislik var — her biri, hiç oynamadığın bir yabancı hakkında farklı bir soruyu yanıtlamak için inşa edilmiş, üst üste yığılmış birkaç bağımsız sistem.

Dört sistem, tek bir Ghost Bot
Tam pozisyon kitabı
oyuncunun gerçekten ulaştığı her pozisyon ve orada ne oynadığı
Alışkanlık kitabı
daha önce hiç ulaşmadığı pozisyonlarda bile kurulumlarını tanır
Stil parmak izi
kendi seviyesindeki oyunculara karşı ölçülen, hamle seçme biçiminin istatistiksel bir okuması
Güvenlik ağı
Ghost Bot'un bir alışkanlığı hiçbir zaman asılı bir taşa dönüştürmesini engelleyen canlı motor kontrolü

Önce, tüm geçmişini okur

Bir isim aradığın anda, o oyuncunun kayıtlardaki tüm mevcut oyunlarını çekiyoruz ve tek bir analiz turundan geçiriyoruz — kazanma oranı, her renkle gerçekte hangi açılışlara ulaştığı, oyunun farklı noktalarında yaklaşık ne kadar güçlü oynadığı ve en önemlisi, geçmişte tam olarak nerede en çok puan kaybettiği. Tahmin edilmiş değil. Kendi hamlelerinden, oynadığı yüzlerce oyun boyunca sayılmış.

Tam pozisyon kitabı: hamleleri, indekslenmiş

Bu geçmişten bir arama tablosu oluşturuyoruz: oyuncunun gerçekten ulaştığı her pozisyon için ne oynadı ve ne sıklıkla? Ghost Bot onun izinden giderken doğaçlama yapmıyor — her seçeneği gerçekten ne sıklıkla seçtiğine göre ağırlıklandırılmış olarak doğrudan bu tablodan çekiyor. Onu elli kez ziyaret ettiği bir pozisyona götür, botun yanıtı tam olarak aynı elli veri noktasından gelir. Bu bir simülasyondan çok, rakamlar tarafından anlatılan bir tekrardır.

Ürkütücü derecede isabetli hissettiren numara: alışkanlık kitabı

İşte gerçek düşünme gerektiren kısım burada. Tam pozisyon tablosu yalnızca daha önce bulunduğu bir pozisyona geri döndüğünde işe yarar — ve hafifçe bile olsa alışılmadık bir şey oynadığın anda o tablo boş kalır. Gerçek rakiplerin sonsuz belleği yoktur ama alışkanlıkları vardır: filini her zaman fianşetto yapan, sekizinci hamleye kadar hep rok yapan, tahtanın diğer tarafında ne yaparsan yap hep aynı piyon üçgenini kuran oyuncu.

Bu yüzden bilginin yarısını bilerek atan ikinci bir dizin oluşturduk: bir pozisyonu yalnızca oyuncunun kendi taşlarına göre hatırlar, senin ne yaptığın her ne ise onu bulanıklaştırır. Ghost Bot'un, teknik olarak gerçek oyunlarında hiç meydana gelmemiş bir pozisyonda "bu onun London Sistemine benziyor" diye tanımasını sağlayan da bu daha bulanık hafızadır. Bu, satranç beyninin yerini alan bir örüntü tanımadır — ve hatırlanan her alışkanlık, oynanmadan önce sessizce güvenlik açısından yeniden kontrol edilir, böylece tanıdık bir kurulum, sadece pozisyon öyle göründüğü için dokuzuncu hamlede bir taşı asılı bırakmaz.

Her iki kitabın üzerinde en tuhaf katman yer alır: bir dizi kadrana indirgenmiş bir kişilik. Oyuncunun gerçek hamle seçimlerini, kendi gücüne yakın rakiplerden oluşan bir kontrol grubuyla karşılaştırarak bir stil parmak izi oluşturuyoruz. Bu, "temkinli oynar", "keskin taktikleri sever" ya da "eşit pozisyonlarda sabırsızlanır" gibi özellikleri, Ghost Bot her iki kitabın da ötesinde doğaçlama yapmak zorunda kaldığında kararlarını sessizce aynı yöne eğen sayısal dürtülere dönüştürür. Sonuç sadece açılışını hatırlamakla kalmaz — onun eğildiği gibi eğilir.

Peki Report ve Blunder Puzzle seni bekletirken bu neden anında beliriyor?

İşte dürüst, biraz da hayal kırıklığı yaratan cevap: Opponent Prep hızlıdır çünkü yukarıdakilerin hiçbiri bir satranç motoruna hiçbir şey sormaz. Tüm raporu oluşturmak — repertuar, iki kitap, stil parmak izi, zayıf noktalar — hesaplamak değil, saymaktır. Bu, zaten oynanmış bir yığın oyun üzerinde aritmetiktir. Modern bir tarayıcı, o yığında kaç yüz oyun olursa olsun bunu birkaç saniyede çiğneyip geçer.

Game Analysis ve Blunder Puzzle ise kestirmesi olmayan tamamen farklı türde bir soruyu yanıtlıyor: bu belirli hamle, bu belirli oyunda gerçekten iyi miydi — ve ne kadar iyiydi? Bu soru beş dakika önce yoktu. Kimse bunu daha önce hiç sormadı çünkü şu anda tahtandaki pozisyon, az önce oynadığın oyuna özgü. Bunu arayabileceğin bir tablo yok. Bunu yanıtlamanın tek dürüst yolu, pozisyonu gerçek bir satranç motoruna vermek ve tüm oyun boyunca hamle hamle arama yapmasına izin vermektir — ve bir fedanın gerçekten sağlam olup olmadığını kontrol ederken, ilkinin üzerine ikinci bir soru sormak zorundadır: alırsa ne olur? Bu bir tablo araması değildir. Bu, cihazında canlı olarak, pozisyon pozisyon gerçekleşen gerçek, sıralı düşünmedir ve daha önce kimsenin hiç oynamadığı bir oyun için bunu atlayabilecek dünyada hiçbir önbellek yoktur.

Basitçe söylemek gerekirse: Opponent Prep hızlıdır çünkü hatırlıyor. Report ve Blunder Puzzle zaman alır çünkü gerçekten düşünüyorlar.

Git kendi hayaletini inşa et

Opponent PrepHerkesi keşfet ve kendi geçmişinden inşa edilmiş bir bota karşı oyna

Saat başlamadan önce alışkanlıklarını öğren.