Preskočiť na obsah

Minimax (algoritmus)

z Wikipédie, slobodnej encyklopédie

Minimax je algoritmus, ktorý má určiť najlepšiu stratégiu hry tým, že prezerá dopredu rôzne postupnosti ťahov a snaží sa nájsť takú postupnosť, ktorá vedie k výhre hráča. Minimax algoritmus je považovaný za jeden zo základných algoritmov umelej inteligencie v problematike riešenia problémov opísaných ako hra.[1]

Hra ako problém hľadania a algoritmus minimax

[upraviť | upraviť zdroj]

Nech máme hru pre dvoch hráčov, ktorých pomenujeme Max a Min, pričom Max začína hru a následne sa postupne v ťahoch hráči striedajú, kým nie je hra ukončená a následne výsledok hry bodovo ohodnotený. V tomto prípade je hra problémom hľadania:

  • začiatočný stav reprezentuje začiatok hry pred prvým ťahom hráča Max
  • množina operátorov definuje povolené ťahy hráčov
  • množina stavov reprezentuje všetky možné stavy hry
  • cieľový test definuje koniec hry
  • bodovacia funkcia definuje číselné ohodnotenie výsledkov hry

Algoritmus minimax určuje najlepšiu stratégiu pre hráča Max za predpokladu, že protihráč Min vždy zahrá ťah, ktorý je pre Maxa najhorším možným ťahom, a teda Max sa snaží maximalizovať svoje skóre a Min sa snaží minimalizovať Maxovo skóre.[1] Minimax zaručuje hráčovi optimálnu hru za predpokladu, že výsledok nezávisí od náhodného deja.[1]

Postup algoritmu minimax

[upraviť | upraviť zdroj]

Zo začiatku je potrebné vygenerovanie stromu hľadania, ktorý predstavuje preskúmanie všetkých možných stavov hry až po koncové stavy, a teda predstavuje množinu stavov. Jednotlivé stavy je potrebné bodovo ohodnotiť tak, že zo začiatku je na koncové stavy aplikovaná bodovacia funkcia a postupne sa ohodnocujú jednotlivé uzly stromu hľadania až po samotný koreň stromu, pričom platí, že ak je na ťahu Max, na uzol sa prenáša maximum z hodnôt nasledovníkov a ak je na ťahu Min, prenáša sa minimum z hodnôt nasledovníkov.[1] V prípade vygenerovania a ohodnotenia stromu hľadania je možné vykonať ťah, vedúci do najlepšieho postavenia.

Referencie

[upraviť | upraviť zdroj]
  1. a b c d Pavol NÁVRAT, Ľubica BEŇUŠKOVÁ, Mária BIELIKOVÁ, Ivan KAPUSTÍK, Gabriela KOSKOVÁ a Jiří POSPÍCHAL. Umelá inteligencia. 2. vyd. Bratislava: Vydavateľstvo STU, 2006. Edícia učebných textov informatiky a informačných technológií. ISBN 80-227-2354-1.