Apakah ada mesin catur yang dapat menunjukkan jika satu sisi memiliki undian paksa?

11

Apakah ada mesin catur yang memiliki mode analisis yang dapat menunjukkan jika suatu posisi diundi oleh kedua belah pihak?

Merupakan hal yang umum bagi engine untuk mengevaluasi evaluasi sebesar 0,0 ketika mereka mendeteksi hasil seri. Tetapi evaluasi 0,0 dapat berarti banyak hal. Misalnya, dengan asumsi putih untuk bergerak, evaluasi 0,0 dapat berarti:

  • Gim ini tentu saja merupakan hasil imbang terlepas dari bagaimana salah satu pemain bermain (mis. Materi tidak mencukupi).
  • Kedua pemain bisa memaksakan hasil seri. Tidak ada pemain yang bisa berharap untuk menang jika lawan mereka bermain dengan sempurna.
  • Tidak peduli yang bergerak memainkan putih, komputer 100% yakin bahwa hitam dapat memaksa hasil imbang jika dia mau. Putih tidak bisa berharap menang jika hitam bermain sempurna. Hasil imbang adalah hasil yang paling mungkin, tetapi pencarian lebih dalam mungkin menunjukkan bahwa hitam dapat memaksa menang.
  • Komputer 100% yakin bahwa putih dapat memaksa hasil imbang jika dia mau. Hitam tidak bisa berharap menang jika putih bermain sempurna. Hasil imbang adalah hasil yang paling mungkin, tetapi pencarian lebih dalam mungkin menunjukkan bahwa putih dapat memaksa menang.
  • Komputer belum menemukan penarikan paksa untuk kedua sisi, tetapi evaluasi sejauh ini persis tingkat. Hasil imbang adalah hasil yang paling mungkin, tetapi pencarian yang lebih dalam kemudian dapat menunjukkan keuntungan untuk satu sisi.

Hanya untuk memberikan contoh kapan ini mungkin berguna, jika putih tidak perlu menang dan hanya ingin memastikan mungkin mendapatkan hasil imbang maka mereka mungkin lebih suka untuk bermain dengan evaluasi +0.0 dan imbang yang diketahui diketahui meskipun langkah lain dengan evaluasi yang lebih tinggi tersedia.

Contoh lain adalah bahwa jika Anda membutuhkan kemenangan (yaitu hasil seri sama buruknya dengan kekalahan), Anda mungkin ingin memainkan langkah dengan evaluasi negatif sedikit untuk menghindari memberi lawan Anda kesempatan untuk memaksakan hasil seri. Meskipun ini meningkatkan peluang Anda untuk kalah, itu juga meningkatkan peluang Anda untuk menang.

Jelas ada posisi di mana sulit atau tidak mungkin untuk memastikan apakah undian paksa tersedia atau tidak. Tetapi jika mesin mengumumkan undian paksa maka harus dimungkinkan untuk memaksakan undian. Negatif palsu dapat diterima tetapi seharusnya tidak ada positif palsu.

Jadi secara ringkas, saya ingin tahu untuk posisi tertentu jika salah satu (atau kedua pemain) memiliki undian paksa yang tersedia untuk mereka. Menghitung evaluasi numerik posisi itu tidak perlu, tetapi jika itu juga memberikan ini pada saat yang sama, itu bonus.

Mark Byers
sumber
Tidakkah mengetahui bagian titik dari tabel endgame 6 potong ini?
Tony Ennis
2
Basis tabel membantu, karena dengan begitu Anda tahu bahwa skor 0,0 adalah untuk hasil imbang paksa dengan permainan optimal. Tapi saya ingin mesin memberi tahu saya jika ia menemukan undian paksa dari posisi awal yang sewenang-wenang, termasuk (terutama) ketika ada lebih dari 6 buah. Misalnya, jika putih masuk ke posisi di mana mereka dapat memaksa pemeriksaan terus-menerus, saya ingin mesin memberi tahu saya, bahkan jika itu tidak selalu merupakan langkah terbaik putih menurut fungsi evaluasi.
Mark Byers
Saya ingin tahu ketika Anda benar-benar dapat memanfaatkan perhitungan semacam ini dalam praktiknya. Ini akan menjadi fitur yang bagus. Dalam stockfish saya menggunakan fitur "variasi ganda" analisis UCI, yang mengurutkan pergerakan berdasarkan skor evaluasi mereka. Undian paksa muncul dalam daftar dengan sangat jelas ketika itu merupakan cek atau kebuntuan abadi, tetapi kadang-kadang itu kurang jelas, dan seperti yang Anda katakan, jika Anda masuk lebih dalam, itu mungkin bukan undian.
Eve Freeman
1
Tapi seberapa dipaksa dipaksa? Saya pikir dalam banyak kasus yang disebut undian paksa, lawan masih bisa menyimpang tetapi dengan mengorbankan posisi yang jelas lebih buruk. Suatu posisi di mana putih dapat memaksa baik draw atau rook up tidak akan menjadi draw paksa, membatasi kegunaannya.
RemcoGerlich
Jika putih bisa memaksakan undian alih-alih naik maka saya ingin tahu itu.
Mark Byers

Jawaban:

9

Jawaban singkat untuk pertanyaan Anda adalah tidak , tidak ada mesin catur yang dapat dengan andal menunjukkan jika satu sisi memiliki undian paksa. Misalnya, posisi terkunci ini cukup menarik bagi mata manusia:

Posisi terkunci, undian tanpa harapan

Namun, perhatikan bahwa evaluasi adalah 0,17 , bukan 0,00 . Houdini juga memberikan 0,05 - sedikit lebih baik untuk putih. Ini sangat penting. Ini menunjukkan bahwa evaluasi 0,00 dicadangkan oleh program-program ini untuk alasan tertentu, dan memang demikian. Pada dasarnya, bahkan dalam posisi "sama", komputer tidak akan pernah mengatakan bahwa skornya adalah 0,00 , melainkan akan memberikan keunggulan satu menit ke satu atau sisi lainnya.

Jadi dengan latar belakang itu, ke spesifik! Pertama, jika permainan hanya seri karena posisi (yaitu kebuntuan, bahan tidak mencukupi, dll.) Sebagian besar GUI akan memunculkan pesan yang mengatakan "Game Drawn", atau sesuatu untuk efek itu. Itu meninggalkan kasus-kasus yang lebih rumit yang Anda sebutkan dalam pertanyaan Anda. Untuk menutupi sebagian besar dari itu, saya akan memperkenalkan posisi lain. Ini diambil dari Morphy-NN 1-0, New Orleans Blindfold Simul:

Morphy - NN 1-0, New Orleans Blindfold Simul

Perhatikan bahwa Morphy saat ini memiliki pasangan dalam 6 dimulai dengan 18.b4+!. Namun, jika Morphy entah bagaimana tidak mengetahui bahwa ini adalah pasangannya, ia masih memiliki undian paksa dengan pengulangan, yang dengan cepat dilihat oleh komputer. Dengan menambah jumlah variasi yang ditampilkan oleh komputer, dimungkinkan untuk melihat bahwa setelah putih memainkan gerakan seperti 18.Qxc3+?, putih masih dapat memaksakan hasil seri, meskipun ada celah dan potongan. Evaluasi 0,00 lagi memberi tahu kami bahwa ini adalah posisi khusus di mana komputer dapat menghitung pemeriksaan abadi. Jika gerakan 18.Qxc3+? Kxd5dilakukan di papan tulis, maka evaluasi akan menjadi 0,00 , yang menunjukkan bahwa kelanjutan terbaik putih adalah dengan memaksakan hasil seri. Kegagalan untuk melakukan ini akan menyebabkan hilangnya permainan dengan permainan terbaik.


Jadi untuk meringkas, tidak ada mesin yang ada dapat mengatakan dengan kepastian yang tepat bahwa suatu posisi adalah seri. Namun, evaluasi 0,00 khusus, dan jika itu muncul sebagai skor utama, atau skor untuk variasi, itu berarti bahwa hasil imbang mungkin dipaksa di garis tertentu. Cara termudah untuk mengecek disebut "analisis spasi" - ketika pengguna menekan spasi berulang-ulang untuk memaksa komputer memainkan langkah yang disarankan. Akhirnya Anda akan sampai pada posisi yang jelas bagi manusia dan mesin.


Dan akhirnya, untuk menjawab poin Anda tentang "penghinaan"

Contoh lain adalah bahwa jika Anda membutuhkan kemenangan (yaitu hasil seri sama buruknya dengan kekalahan), Anda mungkin ingin memainkan langkah dengan evaluasi negatif untuk menghindari memberi lawan Anda peluang untuk memaksakan hasil seri. Meskipun ini meningkatkan peluang Anda untuk kalah, itu juga meningkatkan peluang Anda untuk menang.

Ini cukup sederhana disebut sebagai penghinaan di antara programmer catur. Sebagian besar mesin akan memungkinkan Anda untuk mengatur tingkat penghinaan dalam pengaturan. Pengaturan penghinaan yang positif (100 biasanya tingkat yang wajar untuk analisis) akan memberi tahu mesin untuk berusaha cukup keras (nilai gadai) untuk menghindari hasil seri. Pengaturan negatif akan menyebabkan mesin mencari penarikan paksa (yaitu bahan tidak cukup, jalan buntu, atau abadi).

Andrew
sumber
Ini kira-kira ide yang sama seperti dalam komentar Wes Freeman untuk pertanyaan itu, dan seperti apa yang ia jelaskan memerlukan beberapa input manusia - "Gambar paksa muncul dalam daftar cukup jelas [kadang-kadang], tetapi kadang-kadang kurang jelas" - jawaban Anda memiliki "analisis spasial" yang berkontribusi pada manusia. Inilah sebabnya saya menyarankan untuk mengutak-atik fungsi evaluasi dalam jawaban saya; kami membuatnya sehingga mesin itu sendiri benar-benar mencari undian paksa dan memberi tahu kami kapan mereka hadir secara meyakinkan. Itu tampaknya menjadi satu-satunya perbedaan substantif antara pendekatan.
ETD
@ Edean, saya setuju. Hasil imbang yang paling sulit untuk ditemukan adalah di mana endgame tidak dapat dimenangkan, tetapi satu sisi dapat menekan untuk menang selamanya. Secara terpisah, mengubah fungsi eval engine akan menjadi salah satu pendekatan, tetapi kemungkinan besar bukan sesuatu yang dapat dilakukan dalam skala waktu yang masuk akal. Dimungkinkan untuk bermain-main dengan pengaturan hina saat ini, tetapi itu tidak melakukan hal yang sama seperti pemrograman ulang mesin seperti yang Anda sarankan baik. Pengaturan yang dapat diedit manusia cukup terbatas pada mesin saat ini.
Andrew
Pengaturan hina itu rapi - tidak menyadarinya.
Eve Freeman
2
Ngomong-ngomong, saya tidak berpikir 0,00 selalu merupakan indikasi dari penarikan paksa, yang sepertinya Anda maksudkan. Saya melihatnya kadang-kadang bahkan di awal pembukaan - saya kira itu hanya berarti bahwa mengingat posisi dan materi saat ini, kemungkinan besar bahkan, dan evaluasi terjadi menjadi 0,00.
Eve Freeman
3
Menarik. Di stockfish sudah pasti tidak. Hanya menganalisis posisi pembukaan selama beberapa detik akan mengembalikan banyak skor 0,00.
Eve Freeman
4

Seperti halnya mesin dapat, pada titik-titik tertentu, melihat pasangan yang dipaksa beberapa gerakan menjauh, karena ada garis yang cukup memaksa sehingga mesin dapat melihat semuanya dengan sempurna di kedalaman yang tersisa sampai pasangan, ada juga persimpangan di permainan catur yang akan memungkinkan mesin untuk melihat hasil imbang paksa karena alasan yang sama untuk dapat sepenuhnya mensurvei kemungkinan terbatas dalam bermain.

Selain itu, akan mudah untuk men-tweak fungsi evaluasi mesin untuk membuatnya mencari dan lebih suka gerakan yang mengarah pada penarikan paksa seperti itu: seperti halnya mencapai pasangan biasanya diberikan beberapa nilai yang sangat besar yang mengerdilkan semua faktor numerik lain bahwa algoritma evaluasi mesin mempertimbangkan untuk memandu permainan mesin menuju tujuan akhir, seseorang bisa memberikan nilai numerik yang sangat besar untuk mencapai salah satu jenis undian yang ada dalam pikiran saya.

Misalnya, secara otomatis mengevaluasi posisi di mana lawan memiliki materi yang tidak cukup untuk dikawinkan sebagai +1000000. Kemudian, jika mesin menemukan dirinya sendiri dengan opsi memaksa banyak bahan lawan, itu akan memberi tahu Anda. Juga, atur algoritme evaluasi untuk mengevaluasi pengulangan tiga kali lipat sebagai +1000000 daripada biasa 0. Lalu, jika ada pengulangan paksa (seperti dalam skenario pemeriksaan abadi), mesin akan menyukainya dan memberi tahu Anda tentang hal itu . Demikian pula, beri +1000000 jika seseorang secara paksa dapat mencapai pengundian tablebase.

Anda juga dapat memastikan bahwa mesin akan memberikan penilaian ini hanya ketika ada kepastian lengkap bahwa undian benar-benar paksa (karena pohon antara sini dan di sana telah dapat sepenuhnya diperiksa), seperti halnya dengan mesin yang tidak mengumumkan pasangan kecuali jika yakin. Dengan demikian, Anda tidak akan mendapatkan positif palsu, meskipun tentu saja akan ada banyak negatif palsu, yang secara masuk akal / seharusnya Anda izinkan dalam pertanyaan Anda.

ETD
sumber
Saya tidak berpikir bahwa mesin apa pun akan bekerja seperti ini "di luar kotak" karena faktor penghinaan dan cara mereka memangkas. Pada dasarnya, jika undian ditemukan, garis apa pun yang memenangkan materi akan dikecualikan. Jadi misalnya memeriksa raja akan lebih baik daripada menangkap benteng gratis. Aku sedang mempertimbangkan posting jawaban lagi karena ada yang cara untuk menggunakan mesin saat ini untuk melakukan hal ini, tetapi saya tidak ingin memberikan terlalu banyak rahasia persiapan. ;)
Andrew
Tidak ada mesin yang bekerja seperti yang saya jelaskan "di luar kotak," itu benar, karena mereka dirancang untuk mencari kemenangan; untuk alasan yang sama, Anda harus melakukan sedikit penyesuaian untuk membuat mesin bermain normal, katakanlah, catur bunuh diri. Saya sudah meminta kami memodifikasi fungsi evaluasi; faktor penghinaan apa pun dapat diubah / dinonaktifkan bersama dengan apa yang saya sarankan jika perlu, ya? Poin utama saya adalah bahwa saya pikir mesin yang ada dapat dirancang ulang (dengan cara yang cukup mudah) berfungsi seperti yang diinginkan Mark. Jadi, setidaknya saat ini, saya masih melihat ini sebagai cara untuk "menggunakan mesin saat ini." Pikiranku selalu bisa diubah. :)
ETD