@ NicTheQuickich meinte eher diesen code
http://www.mdcc-fun.de/k.helbing/Little-Timpetu/LT.zip
glaube nicht das er hierfür nur 30-60 min gebraucht hat höchstens er kannte sich schon sehr gut in der materie aus
unknow chess (alpha) pb 5.50
-
- Beiträge: 283
- Registriert: 18.08.2012 19:18
- Computerausstattung: Windows 8 64bit .Profan x2,Purebasic 5.5
- Wohnort: Worms
- Kontaktdaten:
Re: unknow chess (alpha) pb 5.50
i7,12gb ram , Windows 10 ,Purebasic 5.50
Re: unknow chess (alpha) pb 5.50
Bevor du an die KI rangehst, schaue dir mal den MiniMax-Algorithmus an.
Nicht einfach iwie drauf losbauen (Keine "If Turm steht da und Pferd dort then ziehe Läufer daundda hin"-Logikgräber).
Ich habe ihn mal für ein Dame-Spiel implementiert (allerdings in Java). Das war nicht soo schwierig. Mit wenig Code bekommt man hier sehr viel. Müsste sich auch auf Schach anwenden lassen (Der Unterschied zwischen Schach und Dame besteht hier überwiegend darin, dass die Figuren anders gezogen werden und das Spielziel etwas anders ist. Das ist beides eher unwesentlich für den Algorithmus).
Dabei werden alle Zugsituationen über mehrere Runden hinweg durchgegagen und schlussendlich derjenige mit den besten Chancen gezogen.
Kann allerdings eine gewisse Rechenzeit in Anspruch nehmen, wenn sehr weit in die Zukunft geschaut wird. Da PB aber von der Hardwarenähe her eher wie C tickt, sollte eine ähnlich hohe Performance drin sein. Java lahmt dagegen etwas, weil intern doch viel Typcasting etc. stattfindet und der effektiv zur CPU übermittelte Maschinencode etwas aufgeblasen ist.
-> https://de.wikipedia.org/wiki/Minimax-Algorithmus
Allerdings kann der Computerspieler hier schnell zu schwer für einen menschlichen Spieler werden, so dass der menschliche Spieler nur verliert. Musst ihn eine gewisse Anzahl "Denkfehler" machen lassen.
Nicht einfach iwie drauf losbauen (Keine "If Turm steht da und Pferd dort then ziehe Läufer daundda hin"-Logikgräber).
Ich habe ihn mal für ein Dame-Spiel implementiert (allerdings in Java). Das war nicht soo schwierig. Mit wenig Code bekommt man hier sehr viel. Müsste sich auch auf Schach anwenden lassen (Der Unterschied zwischen Schach und Dame besteht hier überwiegend darin, dass die Figuren anders gezogen werden und das Spielziel etwas anders ist. Das ist beides eher unwesentlich für den Algorithmus).
Dabei werden alle Zugsituationen über mehrere Runden hinweg durchgegagen und schlussendlich derjenige mit den besten Chancen gezogen.
Kann allerdings eine gewisse Rechenzeit in Anspruch nehmen, wenn sehr weit in die Zukunft geschaut wird. Da PB aber von der Hardwarenähe her eher wie C tickt, sollte eine ähnlich hohe Performance drin sein. Java lahmt dagegen etwas, weil intern doch viel Typcasting etc. stattfindet und der effektiv zur CPU übermittelte Maschinencode etwas aufgeblasen ist.
-> https://de.wikipedia.org/wiki/Minimax-Algorithmus
Allerdings kann der Computerspieler hier schnell zu schwer für einen menschlichen Spieler werden, so dass der menschliche Spieler nur verliert. Musst ihn eine gewisse Anzahl "Denkfehler" machen lassen.
-
- Beiträge: 283
- Registriert: 18.08.2012 19:18
- Computerausstattung: Windows 8 64bit .Profan x2,Purebasic 5.5
- Wohnort: Worms
- Kontaktdaten:
Re: unknow chess (alpha) pb 5.50
wenn du meinen ersten post gelesen hast habe ich versucht diesen min/man algo umzusetzen.
eine andere variante halt nennt sich alpha beta also ist nichts neues für mich
wenn ich so den code von Helle sehe habe ich keine lust mehr auf den aufwand.
trotzdem danke.
Für die hilfe/Kritik.
eine andere variante halt nennt sich alpha beta also ist nichts neues für mich
wenn ich so den code von Helle sehe habe ich keine lust mehr auf den aufwand.
trotzdem danke.
Für die hilfe/Kritik.
i7,12gb ram , Windows 10 ,Purebasic 5.50