Avatar billede mickni33 Nybegynder
16. oktober 2005 - 15:50 Der er 12 kommentarer og
1 løsning

minimax algoritme

Hvordan ser " leaf noderne " ud i et minimax træ ud ( kryds og bolle ) hvis jeg har et scorebræt som ser således ud
3 2 3
2 4 2
3 2 3

har kigget lidt på nettet men har ikke lige helt forstået hvordan man kan finde frem til det bedste træk ved hjælp af scorebrætet

Så der må meget gerne forklares eller ved et rigtig godt link
Avatar billede scheea2000 Nybegynder
17. oktober 2005 - 07:11 #1
Se min artikel: http://www.eksperten.dk/artikler/322

Hvilket sprog?

Spørg endelig yderligere hvis du er i tvivl om noget....
Avatar billede scheea2000 Nybegynder
17. oktober 2005 - 07:14 #2
Hils Bjørn i øvrigt ;-)
Avatar billede scheea2000 Nybegynder
17. oktober 2005 - 07:39 #3
Koden er godt nok med lidt mere pynt (a-b pruning etc.)
Anyway:

Du kan heller ikke finde det bedste træk fra scorebrættet - du benytter scorebrættet når minimax algoritmen "kører". Du skal tage udgangspunkt i træk - ikke scoreboardet. (se min artikel eller den første og bedste graf i dit materiale).
Dvs. din "graf" udspændes som mulige træk - dvs. din leaf nodes repræsenterer alle de forskellige brætpositioner som er mulige (plus en masse dupletter..) Bjørn plejer at være rimelig grundig med Minimax algoritmen med papir og blyant osv. Det har han måske droppet eller læser du bare forud?
Avatar billede mickni33 Nybegynder
17. oktober 2005 - 08:32 #4
Hehehe ja jeg har bjørn :-)
Nej han bruger stadig papir og blyant :-) Men jeg var syg den dag han gennemgik så den sidder ikke helt fast endnu.

Jeg skal også bruge AlphaBeta men ville bare lige starte med minimax.

kigger lige på dit link
Avatar billede mickni33 Nybegynder
17. oktober 2005 - 08:59 #5
I et kryds og bolle spil..
Hvad bruges evaluate funktionen til ?
er det den der regner scoren ud ?
Avatar billede mickni33 Nybegynder
17. oktober 2005 - 09:07 #6
hvad betyder deet der -1 har aldrig set det før

for(int i=0; -1 != operations[i];i++)
Avatar billede mickni33 Nybegynder
17. oktober 2005 - 09:11 #7
nååå det bar om operations[i] != -1... er ikk helt så skarp til morgen :-)
Avatar billede scheea2000 Nybegynder
17. oktober 2005 - 13:24 #8
jeg har prøvet at lave algortimen lidt general (du får brug for det, når du skal lave en mere avanceret evalueringsfunktion fx til skak).

Evalueringsfunktionen i dit tilfælde er bare dit scorebræt.

Hvis han viser en rapport om skak eller en skakmotor, kan du så ikke se om det er vores :-) hæhæ... Det kunne være sjovt hvis han stadig tager den frem.
(Anders Scheel & Martin Ebbesen)
Avatar billede mickni33 Nybegynder
17. oktober 2005 - 13:43 #9
hehe fint nok så kan jeg kontakte dig her når jeg får problemer.... skal også lave skak når vi starter her efter ferien
Avatar billede mickni33 Nybegynder
17. oktober 2005 - 14:01 #10
evaluation()
dvs at den returnere den værdi som mit array indeholder når der køres igennem en løkke ...feks scorebræt[0][0] som er lig med 3.
Avatar billede scheea2000 Nybegynder
17. oktober 2005 - 14:08 #11
Tja. I stedet for board, kan du give den en position, ja.
Avatar billede mickni33 Nybegynder
26. oktober 2005 - 15:40 #12
min TícTacToe spiller som en brækket arm :-)
Den spiller kun for, at jeg ikke skal vinde. har den en oplagt chance for selv at vinde gør den ikke det men sætter istedet for en 'O' sådan at jeg ikke for 3 på stribe...
Hvad kan være galt?
Avatar billede scheea2000 Nybegynder
26. oktober 2005 - 18:39 #13
smid en mail med koden, så skal jeg prøve at se om jeg kan hjælpe dig. C#?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester