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

อ่าน 9 นาที

มินิแม็กซ์

มินิแม็กซ์ (บางครั้ง เรียกว่า มินแม็กซ์ , MM [ 1 ] หรือ จุดอานม้า [ 2 ] ) เป็นกฎการตัดสินใจที่ใช้ใน ปัญญาประดิษฐ์ ทฤษฎี การตัดสินใจ ทฤษฎี เกมเชิงผสม สถิติ และ ปรัชญา เพื่อ ลด การ...

มินิแม็กซ์

มินิแม็กซ์ (บางครั้ง เรียกว่า มินแม็กซ์ , MM [ 1 ]หรือจุดอานม้า[ 2 ] ) เป็นกฎการตัดสินใจที่ใช้ในปัญญาประดิษฐ์ทฤษฎีการตัดสินใจทฤษฎีเกมเชิงผสมสถิติและปรัชญาเพื่อลดการสูญเสียที่เป็นไปได้สำหรับ สถานการณ์ ที่เลวร้ายที่สุด ( การสูญเสีย สูงสุด )เมื่อเกี่ยวข้องกับผลกำไร จะเรียกว่า "แม็กซิมิน" – เพื่อเพิ่มผลกำไรขั้นต่ำให้สูงสุด เดิมทีได้รับการกำหนดขึ้นสำหรับทฤษฎีเกมผลรวมเป็น ศูนย์ของผู้เล่นหลายคน ครอบคลุมทั้งกรณีที่ผู้เล่นทำการเคลื่อนไหวสลับกันและกรณีที่ผู้เล่นทำการเคลื่อนไหวพร้อมกัน นอกจากนี้ยังได้รับการขยายไปสู่เกมที่ซับซ้อนมากขึ้นและการตัดสินใจทั่วไปในสภาวะที่มีความไม่แน่นอน

ทฤษฎีเกม

ในเกมทั่วไป

ค่าmaximinคือค่าสูงสุดที่ผู้เล่นสามารถมั่นใจได้ว่าจะได้รับโดยไม่ทราบการกระทำของผู้เล่นคนอื่น หรือกล่าวอีกนัยหนึ่งคือ เป็นค่าต่ำสุดที่ผู้เล่นคนอื่นสามารถบังคับให้ผู้เล่นได้รับเมื่อพวกเขาทราบการกระทำของผู้เล่น คำจำกัดความอย่างเป็นทางการคือ: [ 3 ]

วีฉัน_=สูงสุดเอฉันนาทีเอฉันวีฉัน(เอฉัน,เอฉัน){\displaystyle {\underline {v_{i}}}=\max _{a_{i}}\min _{a_{-i}}{v_{i}(a_{i},a_{-i})}}

ที่ไหน:

  • iคือดัชนีของผู้เล่นที่สนใจ
  • ฉัน{\displaystyle -i}หมายถึงผู้ เล่นคนอื่นๆ ทั้งหมด ยกเว้นผู้เล่นi
  • เอฉัน{\displaystyle a_{i}}คือการกระทำที่ผู้เล่นi กระทำ
  • เอฉัน{\displaystyle a_{-i}}แสดงถึงการกระทำของผู้เล่นคนอื่นๆ ทั้งหมด
  • วีฉัน{\displaystyle v_{i}}คือฟังก์ชันค่าของผู้เล่นi

การคำนวณค่า maximin ของผู้เล่นจะทำโดยใช้แนวทางกรณีที่เลวร้ายที่สุด: สำหรับการกระทำที่เป็นไปได้แต่ละอย่างของผู้เล่น เราจะตรวจสอบการกระทำที่เป็นไปได้ทั้งหมดของผู้เล่นคนอื่น ๆ และกำหนดชุดการกระทำที่เลวร้ายที่สุดที่เป็นไปได้ ซึ่งก็คือชุดการกระทำที่ทำให้ผู้เล่นiได้ค่าที่น้อยที่สุด จากนั้น เราจะกำหนดว่าผู้เล่นiสามารถทำการกระทำใดได้บ้างเพื่อให้แน่ใจว่าค่าที่น้อยที่สุดนี้เป็นค่าสูงสุดที่เป็นไปได้

ตัวอย่างเช่น พิจารณาเกมต่อไปนี้สำหรับผู้เล่นสองคน โดยผู้เล่นคนแรก ("ผู้เล่นแถว") สามารถเลือกการเคลื่อนไหวใดก็ได้จากสามแบบ ซึ่งมีป้ายกำกับว่าT , MหรือBและผู้เล่นคนที่สอง ("ผู้เล่นคอลัมน์") สามารถเลือกการเคลื่อนไหวใดก็ได้จากสองแบบ คือLหรือRผลลัพธ์ของการรวมกันของการเคลื่อนไหวทั้งสองแสดงอยู่ในตารางผลตอบแทน:

แอลอาร์ที3,12,20เอ็ม5,010,1บี100,24,4{\displaystyle {\begin{array}{c|cc}\hline &L&R\\\hline T&3,1&2,-20\\M&5,0&-10,1\\B&-100,2&4,4\\\hline \end{array}}}

(โดยที่ตัวเลขแรกในแต่ละช่องคือเงินรางวัลของผู้เล่นแถว และตัวเลขที่สองคือเงินรางวัลของผู้เล่นคอลัมน์)

เพื่อเป็นตัวอย่าง เราจะพิจารณาเฉพาะกลยุทธ์บริสุทธิ์ เท่านั้น ตรวจสอบผู้เล่นแต่ละคนทีละคน:

  • ผู้เล่นแถวสามารถเล่นTซึ่งรับประกันว่าพวกเขาจะได้รับผลตอบแทนอย่างน้อย2 (การเลือกเล่นBมีความเสี่ยง เนื่องจากอาจนำไปสู่ผลตอบแทนได้)−100และการเล่นMอาจส่งผลให้ได้รับผลตอบแทนเท่ากับ−10 ) ดังนั้น:วีโอ_=2{\displaystyle {\underline {v_{row}}}=2}.
  • ผู้เล่นในคอลัมน์สามารถเล่นLและรับเงินรางวัลอย่างน้อยที่สุดได้0 (การเล่นRทำให้พวกเขามีความเสี่ยงที่จะได้รับ20{\displaystyle -20}). เพราะฉะนั้น:วีโอ_=0{\displaystyle {\underline {v_{col}}}=0}.

หากผู้เล่นทั้งสองฝ่ายใช้กลยุทธ์แม็กซิมินของตนเอง(ที,แอล){\displaystyle (T,L)}เวกเตอร์ผลตอบแทนคือ(3,1){\displaystyle (3,1)}.

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

วีฉัน¯=นาทีเอฉันสูงสุดเอฉันวีฉัน(เอฉัน,เอฉัน){\displaystyle {\overline {v_{i}}}=\min _{a_{-i}}\max _{a_{i}}{v_{i}(a_{i},a_{-i})}}

นิยามนี้คล้ายคลึงกับนิยามของค่า maximin มาก เพียงแต่ลำดับของตัวดำเนินการหาค่าสูงสุดและค่าต่ำสุดนั้นกลับกัน ในตัวอย่างข้างต้น:

  • ผู้เล่นแถวสามารถได้รับค่าสูงสุด4 (หากผู้เล่นคนอื่นเล่นR ) หรือ5 (ถ้าผู้เล่นอีกฝ่ายเล่นL ) ดังนั้น:วีโอ¯=4 .{\displaystyle {\overline {v_{row}}}=4\ .}
  • ผู้เล่นที่เล่นคอลัมน์จะได้ค่าสูงสุด1 (หากผู้เล่นอีกคนเล่นT )1 (ถ้าเป็นM ) หรือ4 (ถ้าB ) ดังนั้น:วีโอ¯=1 .{\displaystyle {\overline {v_{col}}}=1\ .}

สำหรับผู้เล่นแต่ละคนiค่า maximin จะมีค่าไม่เกิน minimax:

วีฉัน_วีฉัน¯{\displaystyle {\underline {v_{i}}}\leq {\overline {v_{i}}}}

โดยสัญชาตญาณแล้ว ในเกม maximin การหาค่าสูงสุดจะเกิดขึ้นหลังจากหาค่าต่ำสุด ดังนั้นผู้เล่นiจึงพยายามหาค่าสูงสุดของตนเองก่อนที่จะรู้ว่าผู้เล่นคนอื่นจะทำอะไร ในเกม minimax การหาค่าสูงสุดจะเกิดขึ้นก่อนหาค่าต่ำสุด ดังนั้นผู้เล่นiจึงอยู่ในสถานะที่ดีกว่ามาก เพราะพวกเขาหาค่าสูงสุดของตนเองได้โดยรู้ว่าผู้เล่นคนอื่นทำอะไรไปแล้ว

อีกวิธีหนึ่งในการทำความเข้าใจสัญลักษณ์คือการอ่านจากขวาไปซ้าย: เมื่อเราเขียน

วีฉัน¯=นาทีเอฉันสูงสุดเอฉันวีฉัน(เอฉัน,เอฉัน)=นาทีเอฉัน(สูงสุดเอฉันวีฉัน(เอฉัน,เอฉัน)){\displaystyle {\overline {v_{i}}}=\min _{a_{-i}}\max _{a_{i}}{v_{i}(a_{i},a_{-i})}=\min _{a_{-i}}{\Big (}\max _{a_{i}}{v_{i}(a_{i},a_{-i})}{\Big )}}

ชุดผลลัพธ์เริ่มต้น วีฉัน(เอฉัน,เอฉัน) {\displaystyle \ v_{i}(a_{i},a_{-i})\ }ขึ้นอยู่กับทั้งสองอย่าง เอฉัน {\displaystyle \ {a_{i}}\ }และ เอฉัน .{\displaystyle \ {a_{-i}}\ .}เราเริ่มจากการกีดกันออกไป ก่อนเอฉัน{\displaystyle {a_{i}}}จากวีฉัน(เอฉัน,เอฉัน){\displaystyle v_{i}(a_{i},a_{-i})}โดยการเพิ่มค่าสูงสุดเหนือ เอฉัน {\displaystyle \ {a_{i}}\ }(สำหรับทุกค่าที่เป็นไปได้ของเอฉัน{\displaystyle {a_{-i}}}) เพื่อให้ได้ผลลัพธ์ส่วนต่าง ๆ วีฉัน(เอฉัน),{\displaystyle \ v'_{i}(a_{-i})\,,}ซึ่งขึ้นอยู่กับเพียงอย่างเดียว เอฉัน .{\displaystyle \ {a_{-i}}\ .}จากนั้นเราจะลดค่าให้น้อยที่สุด เอฉัน {\displaystyle \ {a_{-i}}\ }เหนือผลลัพธ์เหล่านี้ (ในทางกลับกันสำหรับค่าสูงสุด)

แม้ว่าจะเป็นเช่นนั้นเสมอ วีโอ_วีโอ¯ {\displaystyle \ {\underline {v_{row}}}\leq {\overline {v_{row}}}\ }และ วีโอ_วีโอ¯,{\displaystyle \ {\underline {v_{col}}}\leq {\overline {v_{col}}}\,,}เวกเตอร์ผลตอบแทนที่ได้จากการที่ผู้เล่นทั้งสองฝ่ายใช้กลยุทธ์มินิแม็กซ์ของตนเอง (2,20) {\displaystyle \ (2,-20)\ }ในกรณีของ (ที,อาร์) {\displaystyle \ (T,R)\ }หรือ(10,1){\displaystyle (-10,1)}ในกรณีของ (เอ็ม,อาร์),{\displaystyle \ (M,R)\,,}ไม่สามารถจัดอันดับในลักษณะเดียวกันกับเวกเตอร์ผลตอบแทนได้ (3,1) {\displaystyle \ (3,1)\ }เกิดจากการที่ผู้เล่นทั้งสองฝ่ายใช้กลยุทธ์ maximin ของตนเอง

ในเกมที่มีผลรวมเป็นศูนย์

ในเกมสองผู้เล่นที่มีผลรวมเป็นศูนย์คำตอบแบบมินิแม็กซ์จะเหมือนกับสมดุลแน

ในบริบทของเกมผลรวมเป็นศูนย์ทฤษฎีบทมินิแม็กซ์เทียบเท่ากับ: [ 4 ]

สำหรับเกมสองผู้เล่นแบบผลรวมเป็นศูนย์ที่มีกลยุทธ์จำนวนจำกัด จะมีค่าVและกลยุทธ์แบบผสมสำหรับผู้เล่นแต่ละคนอยู่เสมอ โดยที่

(a) จาก กลยุทธ์ของผู้เล่นที่ 2 ผลตอบแทนที่ดีที่สุดที่เป็นไปได้สำหรับผู้เล่น ที่ 1 คือVและ
( b) จาก กลยุทธ์ของผู้เล่นที่ 1 ผลตอบแทนที่ดีที่สุดที่เป็นไปได้สำหรับผู้เล่นที่ 2 คือ − V

ในทำนองเดียวกัน กลยุทธ์ของผู้เล่นที่ 1 รับประกันผลตอบแทนV ให้แก่ตนเอง โดยไม่คำนึงถึง กลยุทธ์ของผู้เล่นที่ 2 และในทำนองเดียวกัน ผู้เล่น ที่ 2 สามารถรับประกันผลตอบแทน −V ให้ แก่ตนเองได้ ชื่อมินิแม็กซ์เกิดขึ้นเนื่องจากผู้เล่นแต่ละคนลดผลตอบแทนสูงสุดที่เป็นไปได้สำหรับอีกฝ่ายให้เหลือน้อยที่สุด – เนื่องจากเกมนี้เป็นเกมผลรวมเป็นศูนย์ พวกเขาจึงลดการสูญเสียสูงสุดของตนเองให้เหลือน้อยที่สุดด้วย (กล่าวคือ เพิ่มผลตอบแทนขั้นต่ำของตนเองให้สูงสุด) ดูตัวอย่างเกมที่ไม่มีค่าด้วย

ตัวอย่าง

ตารางผลตอบแทนสำหรับผู้เล่น A
B เลือก B1 B เลือก B2 B เลือก B3
A เลือก A1 +3 −2 +2
A เลือก A2 −1 0 +4
A เลือก A3 −4 −3 +1

ตัวอย่างต่อไปนี้ของเกมผลรวมเป็นศูนย์ ซึ่งผู้เล่นAและBทำการเคลื่อนไหวพร้อมกัน แสดงให้เห็นถึง วิธีแก้ปัญหา แบบ maximinสมมติว่าผู้เล่นแต่ละคนมีตัวเลือกสามตัวเลือก และพิจารณาเมทริกซ์ผลตอบแทนสำหรับAที่แสดงอยู่บนโต๊ะ ("เมทริกซ์ผลตอบแทนสำหรับผู้เล่น A") สมมติว่าเมทริกซ์ผลตอบแทนสำหรับBเป็นเมทริกซ์เดียวกันแต่เครื่องหมายกลับกัน (เช่น ถ้าตัวเลือกคือ A1 และ B1 แล้วBจะจ่าย 3 ให้A ) ดังนั้น ตัวเลือก maximin สำหรับAคือ A2 เนื่องจากผลลัพธ์ที่แย่ที่สุดคือต้องจ่าย 1 ในขณะที่ตัวเลือก maximin แบบง่ายสำหรับBคือ B2 เนื่องจากผลลัพธ์ที่แย่ที่สุดคือไม่ต้องจ่ายอะไรเลย อย่างไรก็ตาม วิธีแก้ปัญหานี้ไม่เสถียร เนื่องจากถ้าBเชื่อว่าAจะเลือก A2 แล้วBจะเลือก B1 เพื่อให้ได้ 1; จากนั้นถ้าAเชื่อว่าBจะเลือก B1 แล้วAจะเลือก A1 เพื่อให้ได้ 3; และจากนั้นBจะเลือก B2; และในที่สุดผู้เล่นทั้งสองจะตระหนักถึงความยากลำบากในการตัดสินใจ ดังนั้นจึงจำเป็นต้องมีกลยุทธ์ที่เสถียรกว่านี้

ตัวเลือกบางอย่างถูก ตัวเลือกอื่น ครอบงำและสามารถตัดทิ้งได้: Aจะไม่เลือก A3 เพราะ A1 หรือ A2 จะให้ผลลัพธ์ที่ดีกว่า ไม่ว่าBจะเลือกอะไรก็ตาม; Bจะไม่เลือก B3 เพราะการผสมผสานระหว่าง B1 และ B2 บางแบบจะให้ผลลัพธ์ที่ดีกว่า ไม่ว่าAจะเลือก อะไรก็ตาม

ผู้เล่นA สามารถหลีก เลี่ยง การ จ่ายเงินที่คาดว่าจะมากกว่า 1/3ได้โดยการเลือก A1 ด้วยความน่าจะเป็น1/6 และ A2 ด้วยความน่า จะ เป็น5/6 : ผลตอบแทนที่คาด หวัง สำหรับ A จะเป็น 3 × 1/61 × 5/6 = + 1/3ในกรณีที่B เลือก B1 และ −2 × 1/6 + 0 × 5/6 = + 1/3 ในกรณีที่B เลือก B2ในทำนองเดียวกันB สามารถรับประกันผลกำไรที่คาดหวัง ได้อย่างน้อย1/3ไม่ว่าA จะ เลือกอะไรก็ตาม โดยใช้กลยุทธ์แบบสุ่มในการเลือก B1 ด้วยความน่าจะเป็น1/3และB2ด้วยความน่าจะเป็น2/3 กลยุทธ์ มิ นิแม็ ซ์แบบ ผสมเหล่านี้ไม่สามารถปรับปรุงได้และมีความเสถียร แล้ว

แม็กซิมิน

ในทฤษฎีเกม บ่อยครั้ง คำว่าmaximinจะแตกต่างจาก minimax minimax ใช้ในเกมผลรวมเป็นศูนย์เพื่อแสดงถึงการลดผลตอบแทนสูงสุดของฝ่ายตรงข้ามให้เหลือน้อยที่สุด ในเกมผลรวมเป็นศูนย์ การกระทำนี้จึงเหมือนกับการลดการสูญเสียสูงสุดของตนเองให้เหลือน้อยที่สุด และการเพิ่มผลกำไรขั้นต่ำของตนเองให้มากที่สุด

"แม็กซิมิน" เป็นคำที่ใช้กันทั่วไปในเกมที่ไม่ใช่ผลรวมเป็นศูนย์ เพื่ออธิบายกลยุทธ์ที่เพิ่มผลตอบแทนขั้นต่ำของตนเองให้สูงสุด ในเกมที่ไม่ใช่ผลรวมเป็นศูนย์ กลยุทธ์นี้โดยทั่วไปจะไม่เหมือนกับการลดผลกำไรสูงสุดของฝ่ายตรงข้ามให้เหลือน้อยที่สุด หรือไม่เหมือนกับกลยุทธ์สมดุลแนช

ในการแข่งขันซ้ำๆ

ค่า minimax มีความสำคัญมากในทฤษฎีเกมซ้ำหนึ่งในทฤษฎีบทหลักของทฤษฎีนี้ คือ ทฤษฎีบทพื้นฐาน(folk theorem ) ซึ่งอาศัยค่า minimax เป็นหลัก

ทฤษฎีเกมเชิงการจัดเรียง

ในทฤษฎีเกมเชิงการจัดเรียงมีอัลกอริทึม minimax สำหรับการแก้ปัญหาเกม

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

อัลกอริทึมมินิแม็กซ์พร้อมการเคลื่อนไหวแบบสลับกัน

อัลกอริทึม minimax [ 5 ]เป็นอัลกอริทึม แบบเรียกซ้ำ สำหรับการเลือกการเคลื่อนไหวครั้งต่อไปในเกม ที่มีผู้เล่น n คน ซึ่งโดยปกติจะเป็นเกมที่มีผู้เล่นสองคน ค่าจะถูกเชื่อมโยงกับแต่ละตำแหน่งหรือสถานะของเกม ค่านี้คำนวณโดยใช้ฟังก์ชันการประเมินตำแหน่งและบ่งชี้ว่าการที่ผู้เล่นไปถึงตำแหน่งนั้นจะดีเพียงใด จากนั้นผู้เล่นจะทำการเคลื่อนไหวที่ทำให้ค่าต่ำสุดของตำแหน่งที่เกิดจากการเคลื่อนไหวที่เป็นไปได้ของฝ่ายตรงข้ามมีค่าสูงสุด หากเป็นAเมื่อถึงตาของฝ่าย A ฝ่ายAจะกำหนดค่าให้กับแต่ละการเดินที่ถูกต้องตามกฎของฝ่าย A

วิธีการจัดสรรที่เป็นไปได้วิธีหนึ่งคือการกำหนดค่าชัยชนะให้กับAเป็น +1 และให้กับBเป็น −1 ซึ่งนำไปสู่ทฤษฎีเกมเชิงการจัดเรียง ตามที่ จอห์น เอช. คอนเวย์ได้พัฒนาไว้อีกทางเลือกหนึ่งคือการใช้กฎที่ว่า หากผลลัพธ์ของการเคลื่อนไหวเป็นการชนะทันทีสำหรับAจะกำหนดค่าเป็นอนันต์บวก และหากเป็นการชนะทันทีสำหรับBจะกำหนดค่าเป็นอนันต์ลบ ส่วนค่าของAสำหรับการเคลื่อนไหวอื่นๆ จะเป็นค่าสูงสุดของค่าที่ได้จากการเคลื่อนไหวแต่ละครั้งของBคำตอบที่เป็นไปได้ของ A และ B ด้วยเหตุนี้Aจึงเรียกว่าผู้เล่นที่เพิ่มค่าสูงสุดและBเรียกว่าผู้เล่นที่ลดค่า ต่ำสุด จึงเป็นที่มาของชื่ออัลกอริทึมมินิแม็กซ์ อัลกอริทึมข้างต้นจะกำหนดค่าอนันต์บวกหรือลบให้กับตำแหน่งใดๆ เนื่องจากค่าของทุกตำแหน่งจะเป็นค่าของตำแหน่งสุดท้ายที่ชนะหรือแพ้ โดยทั่วไปแล้ว วิธีนี้มักทำได้เฉพาะในช่วงท้ายของเกมที่ซับซ้อน เช่นหมากรุกหรือโกะเนื่องจากเป็นไปไม่ได้ในเชิงการคำนวณที่จะมองไปข้างหน้าจนถึงจุดจบของเกม ยกเว้นในช่วงท้าย และแทนที่จะเป็นเช่นนั้น ตำแหน่งต่างๆ จะได้รับค่าจำกัดเพื่อเป็นการประมาณระดับความเชื่อมั่นว่าตำแหน่งนั้นจะนำไปสู่ชัยชนะสำหรับผู้เล่นคนใดคนหนึ่ง

สิ่งนี้สามารถขยายได้หากเราสามารถจัดหา ฟังก์ชันการประเมิน แบบฮิวริ สติก ซึ่งให้ค่าแก่สถานะเกมที่ไม่ใช่ขั้นสุดท้ายโดยไม่ต้องพิจารณาลำดับที่สมบูรณ์ที่เป็นไปได้ทั้งหมดที่ตามมา จากนั้นเราสามารถจำกัดอัลกอริทึมมินิแม็กซ์ให้มองไปข้างหน้าเพียงจำนวนตาเดินที่กำหนดเท่านั้น จำนวนนี้เรียกว่า "การมองไปข้างหน้า" ซึ่งวัดเป็น " plies " ตัวอย่างเช่น คอมพิวเตอร์หมากรุกDeep Blue (เครื่องแรกที่เอาชนะแชมป์โลก ในขณะนั้นอย่าง Garry Kasparov ) มองไปข้างหน้าอย่างน้อย 12  plies จากนั้นจึงใช้ฟังก์ชันการประเมินแบบฮิวริสติก[ 6 ]

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

ประสิทธิภาพของอัลกอริธึมมินิแม็กซ์แบบง่ายอาจได้รับการปรับปรุงอย่างมากโดยไม่ส่งผลกระทบต่อผลลัพธ์ ด้วยการใช้การตัดแต่งแบบอัลฟา-เบตานอกจากนี้ยังสามารถใช้วิธีการตัดแต่งแบบฮิวริสติกอื่นๆ ได้ แต่ไม่รับประกันว่าทุกวิธีจะให้ผลลัพธ์เหมือนกับการค้นหาแบบไม่ตัดแต่ง

อัลกอริทึม minimax แบบง่ายๆ สามารถปรับเปลี่ยนได้อย่างง่ายดายเพื่อให้ได้ค่าความแปรผันหลัก ทั้งหมด พร้อมกับคะแนน minimax เพิ่มเติม

รหัสเทียม

รหัสเทียมสำหรับอัลกอริทึม minimax ที่จำกัดความลึกแสดงไว้ด้านล่าง

ฟังก์ชัน minimax(node, depth, maximizingPlayer) คือถ้า depth = 0 หรือ node เป็นโหนดปลายทางให้คืนค่าฮิวริสติกของ node นั้น ถ้า maximizingPlayer เป็นจริง ค่า := −∞ สำหรับลูกแต่ละคนของโหนดให้ทำตามนี้ ค่า := ค่าสูงสุด (ค่า, ค่าต่ำสุดสูงสุด (เด็ก, ความลึก − 1, เท็จ)) ส่งคืนค่า อื่น(* ย่อขนาดผู้เล่น *) ค่า := +∞ สำหรับลูกแต่ละคนของโหนดให้ทำตามนี้ ค่า := ค่าต่ำสุดของค่า, ค่าต่ำสุดของค่าลูก, ความลึก − 1, จริง) ค่าส่งคืน
(* การเรียกครั้งแรก *) minimax(origin, depth, TRUE)

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

โปรแกรม Minimax จะแยกพิจารณาผู้เล่นทั้งสองคน (ผู้เล่นที่ต้องการเพิ่มค่าสูงสุดและผู้เล่นที่ต้องการลดค่าต่ำสุด) ออกจากกันในโค้ด โดยอิงจากการสังเกตว่า สูงสุด(เอ,)=นาที(เอ,) ,{\displaystyle \ \max(a,b)=-\min(-a,-b)\ ,}อัลกอริ ทึม minimax มักจะสามารถลดรูปให้ง่ายขึ้นเป็น อัลกอริทึม negamaxได้

ตัวอย่าง

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

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

อัลกอริทึมจะประเมินโหนดใบ แต่ละโหนด โดยใช้ฟังก์ชันการประเมินแบบฮิวริสติก เพื่อให้ได้ค่าที่แสดงไว้ การเคลื่อนไหวที่ผู้เล่นที่เพิ่ม ค่าสูงสุด ชนะจะได้รับค่าเป็นอนันต์บวก ในขณะที่การเคลื่อนไหวที่นำไปสู่ชัยชนะของ ผู้เล่น ที่ลดค่าต่ำสุดจะได้รับค่าเป็นอนันต์ลบ ในระดับที่ 3 อัลกอริทึมจะเลือกค่า ที่น้อยที่สุดของโหนดลูก สำหรับแต่ละโหนดและกำหนดค่านั้นให้กับโหนดนั้น (เช่น โหนดทางซ้ายจะเลือกค่าต่ำสุดระหว่าง "10" และ "+∞" ดังนั้นจึงกำหนดค่า "10" ให้กับตัวเอง) ขั้นตอนต่อไปในระดับที่2 คือการเลือก ค่า ที่มากที่สุดของโหนดลูก สำหรับแต่ละโหนด อีกครั้ง ค่าจะถูกกำหนดให้กับโหนดแม่ แต่ละโหนด อัลกอริทึมจะประเมินค่าสูงสุดและต่ำสุดของโหนดลูกสลับกันไปเรื่อยๆ จนกว่าจะถึงโหนดรากซึ่งจะเลือกการเคลื่อนไหวที่มีค่ามากที่สุด (แสดงในรูปด้วยลูกศรสีน้ำเงิน) นี่คือการเคลื่อนไหวที่ผู้เล่นควรทำเพื่อลดการสูญเสียสูงสุดที่เป็นไปได้ให้ น้อยที่สุด 

สำหรับการตัดสินใจส่วนบุคคล

ท่ามกลางความไม่แน่นอน

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

นอกจากนี้ ยังมีการพัฒนา โครงสร้างข้อมูล expectiminimaxสำหรับเกมสองผู้เล่นที่โอกาส (เช่น ลูกเต๋า) เป็นปัจจัยหนึ่ง

เกณฑ์ในทฤษฎีการตัดสินใจทางสถิติ

ในทฤษฎีการตัดสินใจ ทางสถิติแบบคลาสสิก เรามีตัวประมาณค่าอยู่ตัวหนึ่ง δ {\displaystyle \ \delta \ }ซึ่งใช้ในการประมาณค่าพารามิเตอร์ θΘ .{\displaystyle \ \theta \in \Theta \ .}นอกจากนี้เรายังสมมติฟังก์ชันความเสี่ยง อีกด้วย อาร์(θ,δ) .{\displaystyle \ R(\theta ,\delta )\ .}โดยทั่วไปจะระบุเป็นค่าอินทิกรัลของฟังก์ชันความสูญเสียในกรอบแนวคิดนี้ δ~ {\displaystyle \ {\tilde {\delta }}\ }เรียกว่าminimaxถ้ามันตรงตามเงื่อนไข

จีบθอาร์(θ,δ~)=ข้อมูลδ จีบθ อาร์(θ,δ) .{\displaystyle \sup _{\theta }R(\theta ,{\tilde {\delta }})=\inf _{\delta }\ \sup _{\theta }\ R(\theta ,\delta )\ .}

เกณฑ์ทางเลือกอีกประการหนึ่งในกรอบทฤษฎีการตัดสินใจคือตัวประมาณค่าแบบเบย์สในกรณีที่มีการแจกแจงความน่าจะเป็นล่วงหน้าΠ .{\displaystyle \Pi \ .}ตัวประมาณค่าแบบเบย์เซียนคือตัวประมาณค่าที่ทำให้ความเสี่ยงเฉลี่ย ต่ำที่สุด

Θอาร์(θ,δ) Π(θ) .{\displaystyle \int _{\Theta }R(\theta ,\delta )\ \operatorname {d} \Pi (\theta )\ .}

ทฤษฎีการตัดสินใจที่ไม่ใช่ความน่าจะเป็น

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

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

มินิแม็กซ์ในระบอบประชาธิปไตย

แนวคิดของการลงคะแนนแบบ " เลือกสิ่ง ที่เลวร้ายน้อยที่สุด " (LEV) สามารถมองได้ว่าเป็นรูปแบบหนึ่งของกลยุทธ์มินิแม็กซ์ ซึ่งผู้ลงคะแนนเมื่อเผชิญกับผู้สมัครสองคนขึ้นไป จะเลือกคนที่ตนมองว่าเป็นอันตรายน้อยที่สุดหรือ "เลวร้ายน้อยที่สุด" ในการทำเช่นนั้น "การลงคะแนนไม่ควรถูกมองว่าเป็นรูปแบบของการแสดงออกถึงตัวตนส่วนบุคคลหรือการตัดสินทางศีลธรรมที่มุ่งตอบโต้ผู้สมัครจากพรรคใหญ่ที่ไม่สะท้อนค่านิยมของเรา หรือเป็นระบบที่ทุจริตซึ่งออกแบบมาเพื่อจำกัดทางเลือกให้เหลือเฉพาะสิ่งที่ยอมรับได้สำหรับชนชั้นนำขององค์กร" แต่ควรถูกมองว่าเป็นโอกาสในการลดอันตรายหรือการสูญเสีย[ 7 ]

แม็กซิมินในปรัชญา

ในปรัชญา คำว่า "maximin" มักถูกใช้ในบริบทของทฤษฎีความยุติธรรมของJohn Rawls ซึ่งเขาอ้างถึงในบริบทของหลักการความแตกต่าง [ 8 ] Rawls นิยามหลักการนี้ว่าเป็นกฎที่ระบุว่าความไม่เท่าเทียมกันทางสังคมและเศรษฐกิจควรได้รับการ จัดเรียงเพื่อให้ "เกิดประโยชน์สูงสุดแก่สมาชิกที่ด้อยโอกาสที่สุดในสังคม" [ 9 ] [ 10 ]

ดูเพิ่มเติม

สรุปเนื้อหา

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

ข้อมูลสำคัญเกี่ยวกับ มินิแม็กซ์

มินิแม็กซ์ (บางครั้ง เรียกว่า มินแม็กซ์ , MM [ 1 ] หรือ จุดอานม้า [ 2 ] ) เป็นกฎการตัดสินใจที่ใช้ใน ปัญญาประดิษฐ์ ทฤษฎี การตัดสินใจ ทฤษฎี เกมเชิงผสม สถิติ และ ปรัชญา เพื่อ ลด การ...

ในเกมทั่วไป

ค่า maximin คือค่าสูงสุดที่ผู้เล่นสามารถมั่นใจได้ว่าจะได้รับโดยไม่ทราบการกระทำของผู้เล่นคนอื่น หรือกล่าวอีกนัยหนึ่งคือ เป็นค่าต่ำสุดที่ผู้เล่นคนอื่นสามารถบังคับให้ผู้เล่นได้รับเมื่อพวกเขาทราบการกระทำของผู้เล่น คำจำกัดความอย่างเป็นทางการคือ: [ 3 ]

ในเกมที่มีผลรวมเป็นศูนย์

ในเกมสองผู้เล่น ที่มีผลรวมเป็นศูนย์ คำตอบแบบมินิแม็กซ์จะเหมือนกับ สมดุลแน ช

ตัวอย่าง

ตัวอย่างต่อไปนี้ของเกมผลรวมเป็นศูนย์ ซึ่งผู้เล่น A และ B ทำการเคลื่อนไหวพร้อมกัน แสดงให้เห็นถึง วิธีแก้ปัญหา แบบ maximin สมมติว่าผู้เล่นแต่ละคนมีตัวเลือกสามตัวเลือก และพิจารณา เมทริกซ์ผลตอบแทน สำหรับ A ที่แสดงอยู่บนโต๊ะ ("เมทริกซ์ผลตอบแทนสำหรับผู้เล่น A")...