# minimax Algorithmus



## boontje (14. Mai 2014)

Hallo!
Ich programmiere gerade als Projekt ein 4 Gewinnt.
Dabei versuche ich gerade einen Computergegner mit minimax Algorithmus zu Programmieren.
Habe mir auf Wikipedia den Pseudocode angeguckt, verstehe ihn aber nicht wirklich.
Kann mir vlt. jemand einen Tipp geben wie man sowas in Java übersetzt  
Danke im voraus
boontje


----------



## VfL_Freak (15. Mai 2014)

Moin,

von welchen Code sprichst Du denn  ???:L

Gruß
Klaus


----------



## boontje (15. Mai 2014)

Sorry, hab ich ganz vergessen des dazuzuschreiben 
Ich hab mir den Pseudocode von Wikipedia angeguckt 
Hier der Link  Minimax-Algorithmus ? Wikipedia


----------



## VfL_Freak (15. Mai 2014)

das ist aber nicht nur Pseudo-Code drin, sondern auch ein konkreteres Beispiel!
Minimax-Algorithmus ? Wikipedia unter "implementierung"

Poste doch mal Deinen bisherigen Ansatz und stell' dann kokrete Fragen dazu!
Kompletten Code wird hier sicherlich keiner posten ....


----------



## boontje (15. Mai 2014)

Das erwarte ich auch nicht!
Mein Problem ist, dass ich keinen Ansatz habe!
Ich weiß nicht wie ich anfangen soll und wie man sowas im allgemeinen Programmiert


----------



## turtle (15. Mai 2014)

Zum Thema MiniMax (mit Alpha-Beta-Pruning) gab es in eine der *c't-10/2014* den Artikel "Brettspiel-KI selbst programmieren" der für dich sehr interessant sein dürfte.

Da kann ich eigentlich nur referieren und sagen, das bei MiniMax der "Spielbaum" abgespielt wird. 

Es werden alle Züge von Weiss gemacht. Dann werden auf allen resultierenden Positionen alle Züge von Schwarz gemacht. Dieses wird wiederholt bis die gewünschte Spieltiefe erreicht wird. 

Dann wird die Endposition bewertet. 

Dieses nennen wir Informatiker eine Tiefensuche, weil der Baum bis zu einer bestimmten Tiefe "abgespielt" wird und die resultierenden Stellungen einfach bewertet werden.

Nun wird diese Bewertung durch den Baum nach oben "gepumpt" und bei Weiss wird derjenige Zug gewählt der zum maximalen Gewinn führt während bei Knoten,in denen Schwarz am Zug ist, denjenigen Zug wählt, der den für ihn besten Zug, also aus weisser Sicht minimalen Gewinn wählt. 

Daher der Name MiniMax.


----------

