Căutarea adversară este o căutare, în care examinăm problema care apare atunci când încercăm să planificăm înaintea lumii și alți agenți planifică împotriva noastră.
- În subiectele anterioare, am studiat strategiile de căutare care sunt asociate doar cu un singur agent care urmărește să găsească soluția care adesea se exprimă sub forma unei secvențe de acțiuni.
- Dar, ar putea exista unele situații în care mai mult de un agent caută soluția în același spațiu de căutare, iar această situație apare de obicei în timpul jocului.
- Mediul cu mai mult de un agent este denumit ca mediu multi-agent , în care fiecare agent este un adversar al celuilalt agent și joacă unul împotriva celuilalt. Fiecare agent trebuie să ia în considerare acțiunea celuilalt agent și efectul acelei acțiuni asupra performanței lor.
- Asa de, Căutările în care doi sau mai mulți jucători cu obiective conflictuale încearcă să exploreze același spațiu de căutare pentru soluție, se numesc căutări adverse, adesea cunoscute ca Jocuri. .
- Jocurile sunt modelate ca o problemă de căutare și o funcție de evaluare euristică, iar aceștia sunt cei doi factori principali care ajută la modelarea și rezolvarea jocurilor în AI.
Tipuri de jocuri în AI:
Determinat | Șansa se mișcă | |
---|---|---|
Informație perfectă | Șah, dame, du-te, Othello | Table, monopol |
Informații imperfecte | Cuirasate, orb, tic-tac-toe | Bridge, poker, scrabble, război nuclear |
Exemplu: table, monopol, poker etc.
Notă: În acest subiect, vom discuta despre jocurile deterministe, mediul complet observabil, suma zero și unde fiecare agent acționează alternativ.
Joc cu sumă zero
- Jocurile cu sumă zero sunt căutări adverse care implică concurență pură.
- În jocul cu sumă zero, câștigul sau pierderea de utilitate a fiecărui agent este exact echilibrat de pierderile sau câștigurile de utilitate ale altui agent.
- Un jucător al jocului încearcă să maximizeze o singură valoare, în timp ce alt jucător încearcă să o minimizeze.
- Fiecare mișcare a unui jucător în joc este numită pli.
- Șahul și tic-tac-toe sunt exemple de joc cu sumă zero.
Joc cu sumă zero: gândire încorporată
Jocul cu sumă zero a implicat o gândire încorporată în care un agent sau un jucător încearcă să-și dea seama:
curs de matematică java
- Ce să fac.
- Cum să decizi mutarea
- Trebuie să se gândească și la adversarul său
- Adversarul se gândește și ce să facă
Fiecare dintre jucători încearcă să afle răspunsul adversarului său la acțiunile lor. Acest lucru necesită gândire încorporată sau raționament înapoi pentru a rezolva problemele jocului în AI.
Formalizarea problemei:
Un joc poate fi definit ca un tip de căutare în AI care poate fi formalizat din următoarele elemente:
Arborele jocului:
Un arbore de joc este un arbore în care nodurile arborelui sunt stările de joc, iar marginile arborelui sunt mișcările jucătorilor. Arborele de joc implică starea inițială, funcția acțiunilor și funcția rezultat.
Exemplu: Arborele jocului Tic-Tac-Toe:
lista comparabila
Următoarea figură arată o parte din arborele jocului pentru jocul tic-tac-toe. Iată câteva puncte cheie ale jocului:
- Sunt doi jucători MAX și MIN.
- Jucătorii au o tură alternativă și încep cu MAX.
- MAX maximizează rezultatul arborelui de joc
- MIN minimizează rezultatul.
Exemplu de explicație:
- Din starea inițială, MAX are 9 mișcări posibile când începe primul. MAX locul x și MIN locul o și ambii jucători joacă alternativ până ajungem la un nod frunză unde un jucător are trei la rând sau toate pătratele sunt umplute.
- Ambii jucători vor calcula fiecare nod, minimax, valoarea minimax care este cea mai bună utilitate realizabilă împotriva unui adversar optim.
- Să presupunem că ambii jucători sunt bine conștienți de tic-tac-toe și joacă cel mai bun joc. Fiecare jucător face tot posibilul pentru a preveni ca altul să câștige. MIN acționează împotriva lui Max în joc.
- Deci, în arborele de joc, avem un strat de Max, un strat de MIN și fiecare strat este numit ca Ply . Max plasează x, apoi MIN pune o pentru a împiedica Max să câștige, iar acest joc continuă până la nodul terminal.
- În acest caz, fie MIN câștigă, MAX câștigă, fie este o remiză. Acest arbore de joc este întregul spațiu de căutare a posibilităților pe care MIN și MAX le joacă tic-tac-toe și iau pe rând alternativ.
Prin urmare, căutarea contradictorie pentru procedura minimax funcționează după cum urmează:
- Acesta își propune să găsească strategia optimă pentru ca MAX să câștige jocul.
- Urmează abordarea căutării în profunzime.
- În arborele de joc, nodul frunzei optim ar putea apărea la orice adâncime a arborelui.
- Propagați valorile minimax până la arbore până când nodul terminal este descoperit.
Într-un arbore de joc dat, strategia optimă poate fi determinată din valoarea minimax a fiecărui nod, care poate fi scrisă ca MINIMAX(n). MAX preferă să treacă într-o stare de valoare maximă și MIN preferă să treacă la o stare de valoare minimă atunci: