คอมพิวเตอร์เล่นหมากรุกสามเช็คได้อย่างไร


10
  • คอมพิวเตอร์จะประเมินตำแหน่งหมากรุกสามเช็คที่ด้านแรกเพื่อตรวจสอบอีกด้านที่ชนะสามครั้งได้อย่างไร

    • พวกเขาให้ความสำคัญกับการตรวจสอบครั้งแรกและครั้งที่สองอย่างไร

    • ดูเหมือนว่าการประเมินตำแหน่งจะยุ่งยาก แต่ก็ดูเหมือนว่าหมากรุกสามเช็คจะเป็นเกมที่ง่ายกว่าในการแก้ปัญหามากกว่าหมากรุกมาตรฐาน

คำตอบ:


10

https://github.com/ddugovic/Stockfish

การพัฒนาที่แอคทีฟมากนี่เป็นเวอร์ชั่น Stockfish ที่ใช้โดย lichess

สิ่งที่คุณต้องทำคือค้นหาแมโครนี้:

#ifdef THREECHECK

ฟังก์ชั่นการประเมินผล:

https://github.com/ddugovic/Stockfish/blob/master/src/evaluate.cpp

เช็คจะได้รับโบนัสพิเศษต่างจากหมากรุกปกติ:

    if (pos.is_three_check())
        score += ChecksGivenBonus[pos.checks_given(Us)];

pos.checks_givenให้จำนวนเช็คที่ได้ทำไปแล้ว ChecksGivenBonusคืออาร์เรย์ของค่าโบนัส

ค่าโบนัสคือ:

  S(444, 181),  // first check
  S(2425, 603), // second check

444เป็นโบนัสสำหรับการเปิด / เกมกลางและ181เป็นโบนัสสำหรับเกม endgame โบนัสสำหรับการตรวจสอบครั้งที่สองนั้นยิ่งใหญ่กว่ามาก

ฉันไม่แน่ใจว่าการประเมินตำแหน่งในการตรวจสอบสามครั้งเป็นเรื่องยุ่งยาก ฉันสามารถดูพารามิเตอร์ที่มีการเปลี่ยนแปลงความปลอดภัยของกษัตริย์ดีขึ้น แต่โครงสร้างโดยรวมก็เหมือนกับหมากรุกทั่วไป


8
  1. ฉันได้รับการทำงานในรหัสดังกล่าวของ Stockfish สามตรวจสอบหมากรุกดังนั้นฉันจะพยายามที่จะสรุปที่สำคัญที่สุดในการเปลี่ยนแปลงการประเมินผล (ในแง่ของการเพิ่มอีโล) ที่เราทำเมื่อเทียบกับมาตรฐานของหมากรุก ดังที่ได้กล่าวไว้ก่อนหน้านี้นอกเหนือจากการเปลี่ยนแปลงเหล่านี้แล้วการประเมินจะคล้ายกับหมากรุกทั่วไปโดยมีการปรับแต่งพารามิเตอร์เพียงบางส่วนเท่านั้น

    • โบนัสสำหรับจำนวนเช็ค :
      • ในเกมกึ่งกลางหนึ่งเช็คมีค่าประมาณ 2/3 ของชิ้นส่วนเล็ก ๆ ในขณะที่ค่าของเช็คสองชิ้นนั้นอยู่ที่ประมาณ 3 ชิ้นส่วนน้อย แต่ตำแหน่งดังกล่าวมักจะมีไดนามิกสูงดังนั้นจึงยากที่จะประเมินแบบคงที่
      • ในเกมจบการตรวจสอบไม่คุ้มค่ามากนักเนื่องจากเนื้อหามีความสำคัญมากกว่า หนึ่งเช็คมีค่าเกี่ยวกับการจำนำเช็คสองใบสอดคล้องกับบิตน้อยกว่าชิ้นรอง
    • โบนัส / บทลงโทษที่สูงขึ้นมากสำหรับตำแหน่งกษัตริย์ที่ปลอดภัย / ไม่ปลอดภัยเช่นจำนวนชิ้นที่ถูกโจมตีหรือสำหรับหลุมในที่หลบภัย
      • การประเมินความปลอดภัยของกษัตริย์นั้นมีการกำหนดขนาดขึ้นอยู่กับจำนวนการตรวจสอบของฝ่ายตรงข้ามที่ได้รับแล้วดังนั้นความปลอดภัยของกษัตริย์จึงมีความสำคัญมากกว่าหากเขาใกล้ที่จะให้การตรวจสอบครั้งที่สาม
    • ค่าชิ้นแตกต่างจากหมากรุกมาตรฐานเล็กน้อย การจำนำมีค่าน้อยกว่าในเกมกึ่งกลางเนื่องจากปัจจัยแบบไดนามิกเช่นไฟล์ที่เปิดมีความสำคัญมากกว่าและเกมโกงมีค่ามากกว่าในเกม endgames เนื่องจากพวกเขาสามารถขู่ให้ตรวจสอบได้อย่างง่ายดาย
  2. เกี่ยวกับส่วนที่สองของคำถามฉันคิดว่าการประเมินเป็นเรื่องยุ่งยากในตำแหน่งปิดเพราะยากที่จะประเมินความไม่สมดุลเกี่ยวกับจำนวนการตรวจสอบและวัสดุ หากตำแหน่งนั้นมียุทธวิธีสูงการค้นหาควรจะสามารถแก้ไขความไม่ถูกต้องของการประเมินได้

  3. การแก้หมากรุกสามเช็คส่วนใหญ่น่าจะง่ายกว่าหมากรุกมาตรฐานเพราะเกมมีแนวโน้มที่จะสั้นกว่า จุดสำคัญอย่างหนึ่งก็คือคุณค่าทางทฤษฎีของเกมด้วยการเล่นที่ดีที่สุด ถ้าสีขาวสามารถบังคับให้ชนะ (ค่อนข้างสั้น) การพิสูจน์อาจเป็นไปได้ แต่ถ้าเป็นการจับที่ดีที่สุดการพิสูจน์ต้นไม้ที่ต้องการนั้นอาจจะใหญ่เกินไป

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.