Saya menggunakan Arena GUI bersama dengan stockfish di game mesin. Saya ingin mengunduh tablebase 6-piece tapi itu hanya banyak pekerjaan (dan mungkin tidak perlu). Jika saya mengunduh tablebase (syzygy), apakah stockfish berfungsi dengannya atau hanya menunggu papan untuk memiliki 6-potongan dan kemudian tablebase membuat gerakannya?
Inilah yang saya maksud dengan lebih detail
Stockfish bekerja dengan tablebase
Saya menganggap saya memiliki posisi sebagai berikut:
(Catatan: saat ini saya tidak berbicara tentang gerakan terbaik, hanya sebuah contoh)
Stockfish berkonsultasi dengan tablebase tentang apa yang terjadi setelah Qxd4 Rxd4 (tanpa terus mengevaluasi sisa baris). Jika garis ini menang, itu berlaku untuk itu.
Stockfish bekerja sendiri
Stockfish terus memainkan permainan sampai enam keping tersisa di papan tulis, lalu tablebase membuat gerakan.
Yang mana yang sebenarnya terjadi?
sumber
Jawaban:
Stockfish tidak melakukan itu, itu bukan tujuan dari tablebase. Secara singkat, tablebase meningkatkan pencarian mesin sebelum posisi enam orang mencapai papan tulis.
Ayo berolahraga, tambahkan papan 5 buah. Sekarang Anda memiliki 10 buah di papan tulis, dan itu bukan sesuatu yang dapat Anda temukan di tablebase apa pun. Namun, selama pencarian mesin setiap kali Stockfish diperdagangkan hingga 6 buah , ia dapat langsung menggunakan informasi tablebase. Informasi tablebase memberi Stockfish apakah posisi itu win / loss / draw tanpa pernah turun menjadi 5 potong. Karena itu, pencarian lebih cepat dan lebih efisien.
EDIT:
Kode yang relevan adalah https://github.com/official-stockfish/Stockfish/blob/master/src/search.cpp :
TB::Cardinality
secara default 6. Stockfish memeriksa berapa banyak bagian, jika tidak lebih dari 6 ia berkonsultasi dengan informasi tablebase. Kalau tidak, pencarian teratur.sumber