กลับไปหน้าบทความ

อ่าน 8 นาที

ความซับซ้อนของเกม

ทฤษฎีเกมเชิงการจัดเรียง (Combinatorial game theory) วัด ความซับซ้อนของเกม ได้หลายวิธี:

ความซับซ้อนของเกม

ทฤษฎีเกมเชิงการจัดเรียง (Combinatorial game theory)วัดความซับซ้อนของเกมได้หลายวิธี:

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

มาตรการเหล่านี้เกี่ยวข้องกับการทำความเข้าใจสถานการณ์ในเกม ผลลัพธ์ที่เป็นไปได้ และความซับซ้อนในการคำนวณของสถานการณ์เกมต่างๆ

มาตรวัดความซับซ้อนของเกม

ความซับซ้อนของปริภูมิสถานะ

ความซับซ้อนของปริภูมิสถานะของเกมคือจำนวนตำแหน่งเกมที่ถูกต้องตามกฎหมายที่สามารถเข้าถึงได้จากตำแหน่งเริ่มต้นของเกม[ 1 ]

เมื่อการคำนวณค่านี้ยากเกินไป มักจะสามารถคำนวณ ค่าขอบเขตบนได้โดยการนับรวมตำแหน่งที่ไม่ถูกต้องบางส่วน (ตำแหน่งที่ไม่สามารถเกิดขึ้นได้ในระหว่างเกม) ด้วย

ขนาดต้นไม้เกม

ขนาดของต้นไม้เกมคือจำนวนเกมทั้งหมดที่เป็นไปได้ที่สามารถเล่นได้ ซึ่งก็คือจำนวนโหนดใบในต้นไม้เกมที่เริ่มต้นจากตำแหน่งเริ่มต้นของเกมนั้น

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

สำหรับเกมที่จำนวนการเดินหมากไม่จำกัด (เช่น โดยขนาดของกระดาน หรือโดยกฎเกี่ยวกับการซ้ำตำแหน่ง) โดยทั่วไปแล้ว แผนผังการเดินหมากจะมีขนาดเป็นอนันต์

ต้นไม้ตัดสินใจ

แผนผังการตัดสินใจเป็นแผนผังย่อยของแผนผังเกม โดยแต่ละตำแหน่งจะถูกกำกับด้วยข้อความว่า "ผู้เล่น A ชนะ", "ผู้เล่น B ชนะ" หรือ "เสมอ" หากสามารถพิสูจน์ได้ว่าตำแหน่งนั้นมีค่าดังกล่าว (โดยสมมติว่าทั้งสองฝ่ายเล่นอย่างดีที่สุด) โดยการพิจารณาเฉพาะตำแหน่งอื่นๆ ในกราฟเท่านั้น ตำแหน่งสุดท้ายสามารถกำกับข้อความได้โดยตรง—เมื่อผู้เล่น A เป็นฝ่ายเดิน ตำแหน่งนั้นสามารถกำกับข้อความว่า "ผู้เล่น A ชนะ" หากตำแหน่งถัดไปใดๆ ก็ตามเป็นผลดีสำหรับ A; "ผู้เล่น B ชนะ" หากตำแหน่งถัดไปทั้งหมดเป็นผลดีสำหรับ B; หรือ "เสมอ" หากตำแหน่งถัดไปทั้งหมดเป็นผลเสมอหรือเป็นผลดีสำหรับ B (เมื่อผู้เล่น B เป็นฝ่ายเดิน ตำแหน่งที่สอดคล้องกันจะถูกทำเครื่องหมายในทำนองเดียวกัน)

วิธีการวัดความซับซ้อนของเกมสองวิธีต่อไปนี้ใช้แผนผังการตัดสินใจ:

ความซับซ้อนของการตัดสินใจ

ความซับซ้อนของการตัดสินใจในเกม คือ จำนวนโหนดใบในต้นไม้ตัดสินใจที่เล็กที่สุดซึ่งกำหนดค่าของตำแหน่งเริ่มต้น

ความซับซ้อนของโครงสร้างเกม

ความซับซ้อนของต้นไม้เกมคือจำนวนโหนดใบใน ต้นไม้ตัดสินใจ แบบเต็มความกว้าง ที่เล็กที่สุด ซึ่งกำหนดค่าของตำแหน่งเริ่มต้น[ 1 ]ต้นไม้แบบเต็มความกว้างประกอบด้วยโหนดทั้งหมดในแต่ละระดับความลึก นี่เป็นการประมาณจำนวนตำแหน่งที่ต้องประเมินใน การค้นหา แบบมินิแม็กซ์เพื่อกำหนดค่าของตำแหน่งเริ่มต้น

แม้แต่การประมาณความซับซ้อนของโครงสร้างเกมก็ยังทำได้ยาก แต่สำหรับบางเกมสามารถประมาณได้โดยใช้สูตร โดยที่b คือ ค่าสัมประสิทธิ์การแตกกิ่งเฉลี่ยของเกมและdคือจำนวนตาเดินในเกมโดยเฉลี่ย

ความซับซ้อนในการคำนวณ

ความซับซ้อนในการคำนวณของเกมอธิบายถึง ความยาก เชิงอะซิมโทติกของเกมเมื่อขนาดเกมใหญ่ขึ้นเรื่อยๆ โดยแสดงในรูปสัญกรณ์บิ๊กโอหรือในรูปของการเป็นสมาชิกในกลุ่มความซับซ้อนแนวคิดนี้ไม่ได้ใช้กับเกมเฉพาะเจาะจง แต่ใช้กับเกมที่ได้รับการขยายให้มีขนาดใหญ่ขึ้นได้ โดยทั่วไปแล้วจะทำได้โดยการเล่นบน กระดานขนาด nคูณn (จากมุมมองของความซับซ้อนในการคำนวณ เกมบนกระดานขนาดคงที่ถือเป็นปัญหาจำกัดที่สามารถแก้ไขได้ใน O(1) ตัวอย่างเช่น โดยใช้ตารางค้นหาจากตำแหน่งต่างๆ เพื่อหาการเดินที่ดีที่สุดในแต่ละตำแหน่ง)

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

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

ตัวอย่าง: เกมโอเอ็กซ์ (tic-tac-toe)

สำหรับเกมโอเอ็กซ์ขอบเขตบนอย่างง่ายสำหรับขนาดของปริภูมิสถานะคือ 3⁹ = 19,683 (มีสามสถานะสำหรับแต่ละช่องทั้งเก้าช่อง) จำนวนนี้รวมถึงตำแหน่งที่ไม่ถูกต้องหลายตำแหน่ง เช่น ตำแหน่งที่มีกากบาทห้าอันและไม่มีวงกลม หรือตำแหน่งที่ผู้เล่นทั้งสองมีแถวสามอัน การนับที่ละเอียดกว่าโดยการลบตำแหน่งที่ไม่ถูกต้องเหล่านี้ออก จะได้ 5,478 [ 2 ] [ 3 ]และเมื่อพิจารณาการหมุนและการสะท้อนของตำแหน่งว่าเหมือนกัน จะมีตำแหน่งที่แตกต่างกันโดยพื้นฐานเพียง 765 ตำแหน่งเท่านั้น

เพื่อจำกัดขอบเขตของโครงสร้างเกม จะมีการเดินหมากเริ่มต้นที่เป็นไปได้ 9 แบบ การตอบโต้ที่เป็นไปได้ 8 แบบ และอื่นๆ ไปเรื่อยๆ ดังนั้นจึงมีเกมทั้งหมดอย่างมากที่สุด 9! หรือ 362,880 เกม อย่างไรก็ตาม เกมอาจใช้เวลาน้อยกว่า 9 ตาเดินในการจบ และการนับอย่างแม่นยำจะให้เกมที่เป็นไปได้ 255,168 เกม เมื่อพิจารณาการหมุนและการสะท้อนของตำแหน่งว่าเหมือนกัน จะมีเกมที่เป็นไปได้เพียง 26,830 เกมเท่านั้น

ความซับซ้อนในการคำนวณของเกมโอเอ็กซ์ขึ้นอยู่กับวิธีการวางนัยทั่วไปการวางนัยทั่วไปตามธรรมชาติคือเกมm , n , k : เล่นบน กระดานขนาด m x nโดยผู้ชนะคือผู้เล่นคนแรกที่ได้kแถว เกมนี้สามารถแก้ได้ในDSPACE ( mn ) โดยการค้นหาต้นไม้เกมทั้งหมด ซึ่งทำให้เกมนี้อยู่ในคลาสความซับซ้อนที่สำคัญPSPACE ; ด้วยการทำงานเพิ่มเติม สามารถแสดงให้เห็นว่าเป็นPSPACE-completeได้[ 4 ]

ความซับซ้อนของเกมที่รู้จักกันดีบางเกม

เนื่องจากความซับซ้อนของเกมมีมาก ตารางนี้จึงแสดงค่าสูงสุดของลอการิทึมฐาน 10 (กล่าวคือ จำนวนหลัก) ตัวเลขทั้งหมดต่อไปนี้ควรพิจารณาด้วยความระมัดระวัง การเปลี่ยนแปลงเล็กน้อยในกฎของเกมอาจเปลี่ยนแปลงตัวเลข (ซึ่งมักเป็นการประมาณคร่าวๆ อยู่แล้ว) ไปอย่างมหาศาล ซึ่งอาจมากกว่าตัวเลขที่แสดงไว้มาก

หมายเหตุ

  1. ^บริดจ์แบบดับเบิลดัมมี่ (เช่น ปัญหาดับเบิลดัมมี่ในบริบทของบริดจ์แบบสัญญา ) ไม่ใช่เกมกระดานที่แท้จริง แต่มีโครงสร้างเกมที่คล้ายคลึงกัน และมีการศึกษาในบริดจ์คอมพิวเตอร์โต๊ะบริดจ์สามารถถือได้ว่ามีช่องสำหรับผู้เล่นแต่ละคนและแต่ละรอบที่จะเล่นไพ่ ซึ่งสอดคล้องกับขนาดกระดาน 52 ความซับซ้อนของโครงสร้างเกมเป็นขอบเขตบนที่อ่อนมาก: 13! ยกกำลัง 4 ผู้เล่นโดยไม่คำนึงถึงความถูกต้องตามกฎ ความซับซ้อนของปริภูมิสถานะสำหรับหนึ่งรอบที่กำหนดไว้ เช่นเดียวกันโดยไม่คำนึงถึงความถูกต้องตามกฎ แต่มีการตัดการสลับตำแหน่งออกไปจำนวนมาก 4 รอบสุดท้ายเป็นการเคลื่อนไหวที่ถูกบังคับเสมอโดยมีปัจจัยการแตกแขนงเท่ากับ 1

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Game_complexity&oldid=1361332532 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ ความซับซ้อนของเกม

ทฤษฎีเกมเชิงการจัดเรียง (Combinatorial game theory) วัด ความซับซ้อนของเกม ได้หลายวิธี:

ความซับซ้อนของปริภูมิสถานะ

ความ ซับซ้อนของปริภูมิสถานะ ของเกมคือจำนวนตำแหน่งเกมที่ถูกต้องตามกฎหมายที่สามารถเข้าถึงได้จากตำแหน่งเริ่มต้นของเกม [ 1 ]

ขนาดต้นไม้เกม

ขนาดของต้นไม้เกม คือจำนวนเกมทั้งหมดที่เป็นไปได้ที่สามารถเล่นได้ ซึ่งก็คือจำนวน โหนดใบ ใน ต้นไม้เกม ที่เริ่มต้นจากตำแหน่งเริ่มต้นของเกมนั้น

ต้นไม้ตัดสินใจ

แผนผัง การตัดสินใจ เป็นแผนผังย่อยของแผนผังเกม โดยแต่ละตำแหน่งจะถูกกำกับด้วยข้อความว่า "ผู้เล่น A ชนะ", "ผู้เล่น B ชนะ" หรือ "เสมอ" หากสามารถพิสูจน์ได้ว่าตำแหน่งนั้นมีค่าดังกล่าว (โดยสมมติว่าทั้งสองฝ่ายเล่นอย่างดีที่สุด) โดยการพิจารณาเฉพาะตำแหน่งอื่นๆ...