Motstridende søk er et søk, der vi undersøker problemet som oppstår når vi prøver å planlegge i forkant av verden og andre agenter planlegger mot oss.
- I tidligere emner har vi studert søkestrategiene som kun er knyttet til en enkelt agent som tar sikte på å finne den løsningen som ofte kommer til uttrykk i form av en sekvens av handlinger.
- Men det kan være noen situasjoner der mer enn én agent søker etter løsningen i samme søkerom, og denne situasjonen oppstår vanligvis i spill.
- Miljøet med mer enn én agent betegnes som multi-agent miljø , der hver agent er motstander av en annen agent og spiller mot hverandre. Hver agent må vurdere handlingen til andre agenter og effekten av denne handlingen på deres ytelse.
- Så, Søk der to eller flere spillere med motstridende mål prøver å utforske det samme søkerommet for løsningen, kalles motstridende søk, ofte kjent som spill .
- Spill er modellert som et søkeproblem og heuristisk evalueringsfunksjon, og dette er de to hovedfaktorene som bidrar til å modellere og løse spill i AI.
Typer spill i AI:
Deterministisk | Sjansen beveger seg | |
---|---|---|
Perfekt informasjon | Sjakk, dam, gå, Othello | Backgammon, monopol |
Ufullkommen informasjon | Slagskip, blind, tikk-tac-toe | Bridge, poker, scrabble, atomkrig |
Eksempel: Backgammon, Monopol, Poker, etc.
Merk: I dette emnet vil vi diskutere deterministiske spill, fullt observerbart miljø, nullsum og hvor hver agent opptrer alternativt.
Nullsumspill
- Nullsumspill er motstridende søk som involverer ren konkurranse.
- I nullsum-spill er hver agents gevinst eller tap av nytte nøyaktig balansert med tap eller gevinster av nytte av en annen agent.
- Én spiller i spillet prøver å maksimere én enkelt verdi, mens en annen spiller prøver å minimere den.
- Hvert trekk av én spiller i spillet kalles som ply.
- Sjakk og tikken er eksempler på et nullsumspill.
Nullsumspill: Innebygd tenkning
Nullsumspillet innebar innebygd tenkning der en agent eller spiller prøver å finne ut:
- Hva å gjøre.
- Hvordan bestemme flyttingen
- Må tenke på motstanderen også
- Motstanderen tenker også hva han skal gjøre
Hver av spillerne prøver å finne ut hvordan motstanderen reagerer på deres handlinger. Dette krever innebygd tenkning eller bakoverresonnement for å løse spillproblemene i AI.
array java
Formalisering av problemet:
Et spill kan defineres som en type søk i AI som kan formaliseres av følgende elementer:
annet hvis java
Spilltre:
Et spilltre er et tre der nodene til treet er spilltilstandene og kantene på treet er bevegelsene til spillerne. Spilltre involverer starttilstand, handlingsfunksjon og resultatfunksjon.
Eksempel: Tic-Tac-Toe spilltre:
Følgende figur viser en del av vilttreet for tic-tac-toe-spill. Følgende er noen hovedpunkter i spillet:
- Det er to spillere MAX og MIN.
- Spillere har en alternativ tur og starter med MAX.
- MAX maksimerer resultatet av spilltreet
- MIN minimerer resultatet.
Eksempel forklaring:
relasjonell enhet
- Fra starttilstanden har MAX 9 mulige trekk da han starter først. MAX plass x og MIN plass o, og begge spillere spiller vekselvis til vi kommer til en bladnode hvor en spiller har tre på rad eller alle rutene er fylt.
- Begge spillerne vil beregne hver node, minimax, minimax-verdien som er det best oppnåelige verktøyet mot en optimal motstander.
- Anta at begge spillerne er godt klar over tikken og spiller det beste spillet. Hver spiller gjør sitt beste for å forhindre at en annen vinner. MIN spiller mot Max i spillet.
- Så i spilltreet har vi et lag med Max, et lag med MIN, og hvert lag kalles som Ply . Maks plass x, så setter MIN o for å forhindre at Max vinner, og dette spillet fortsetter til terminalnoden.
- I dette er enten MIN seire, MAX vinner, eller det er uavgjort. Dette spill-treet er hele søkerommet av muligheter som MIN og MAX spiller tikk-tac-toe og bytter på vekselvis.
Derfor fungerer kontradiktorisk søk etter minimax-prosedyren som følger:
- Målet er å finne den optimale strategien for at MAX skal vinne spillet.
- Den følger tilnærmingen til Dybde-først-søk.
- I vilttreet kan optimal bladknute vises på hvilken som helst dybde av treet.
- Spred minimaksverdiene opp til treet til terminalnoden oppdages.
I et gitt spilltre kan den optimale strategien bestemmes fra minimumsverdien til hver node, som kan skrives som MINIMAX(n). MAX foretrekker å gå til en tilstand med maksimal verdi og MIN foretrekker å gå til en tilstand med minimumsverdi da: