Autor |
Beitrag |
Thorsten-Bln
Hält's aus hier
Beiträge: 14
|
Verfasst: Do 13.12.07 00:28
Hallo,
bin dabei einen Klassiker den ich noch aus 386er Zeiten in Erinnerung habe, nachzuschreiben.
Das spielt nennt sich Eimerkette, es gab aber auch mal eine Variante die nannte sich Octavian.
Es geht dabei darum, dass auf einem Spielfeld von Spieler und Computer abwechselnd jeweils ein Stein/Punkt gesetzt wird.
Zu beachten ist dabei, dass ein Feld/Eimer in der Mitte, welches 4 Nachbarfelder hat, bei 4 voll ist und bei 5 überläuft und seinen Inhalt gleichmäßig auf die Nachbarfelder verteilt. Ein Eckfeld, welches nur 2 Nachbarfelder hat. Ist folglicherweise bei 2 voll und läuft bei 3 über.
Wenn ein Feld überläuft und das Nachbarfeld gehört dem Gegner, dann gewinnt man dieses Feld und den dortigen Inhalt dazu.
Gewonnen hat derjenige, dem irgendwann das ganze Spielfeld gehört.
Leider ist der Computerspieler momentan noch recht "dämlich" und verliert so gut wie immer. Da er bisher seine Züge nur zufällig macht.
Ich habe jedoch momentan keinerlei Ideen, wie ich ihm eine KI beibringe, sodass er auch taktisch zieht.
Ihr könnt es Euch ja mal runterladen und ansehen. Evtl. hat von Euch einer ne Idee ?
Aber auch für sonstige Verbesserungsvorschläge bin ich offen.
Liebe Grüße
Thorsten
Einloggen, um Attachments anzusehen!
Zuletzt bearbeitet von Thorsten-Bln am Do 13.12.07 21:42, insgesamt 1-mal bearbeitet
|
|
Jann1k
      
Beiträge: 866
Erhaltene Danke: 43
Win 7
TurboDelphi, Visual Studio 2010
|
Verfasst: Do 13.12.07 17:13
eien möglichkeit wäre zB die KI jeden möglichen Zug durchspielen zu lassen und den zu nehmen, der am meisten Raumgewinn bringt
|
|
golgol
      
Beiträge: 58
Win XP Prof. / Linux
C# (VS 2005)
|
Verfasst: Do 13.12.07 17:25
Ich denke Jann1k hat dir da schon die wahrscheinlich praktikabelste Lösung genannt. Die Wahrscheinlich aufwändigste Lösung hab ich mal machen müssen. Es handelt sich dabei um sogenannte
künstliche neuronale Netze - aber ich denke das ist ein kleiner Overkill, da die Möglichen Züge imho relativ zeitnahe durchgespielt werden können.
|
|
Fiete
      
Beiträge: 617
Erhaltene Danke: 364
W7
Delphi 6 pro
|
Verfasst: Do 13.12.07 19:09
Titel: Re: Eimerkette - Bitte helft mir , brauche Tips für KI !
Moin Thorsten,
schau doch mal unter "logisches Minenspiel" im open source bereich.
Ich kenne das Spiel unter dem Namen Sprengmeister.
Gruß
Fiete
_________________ Fietes Gesetz: use your brain (THINK)
|
|
Thorsten-Bln 
Hält's aus hier
Beiträge: 14
|
Verfasst: Do 13.12.07 21:43
So...
habe jetzt eine KI implementiert.. Ich habe nun schon ein paar Mal gewonnen, aber auch verloren.
Genau so sollte es ja sein..
Hat noch jemand Verbesserungsvorschläge ?
|
|
Jann1k
      
Beiträge: 866
Erhaltene Danke: 43
Win 7
TurboDelphi, Visual Studio 2010
|
Verfasst: Do 13.12.07 21:54
verbesserungsvorschläge kann man nur machen, wenn du auch sagst wie deine KI funktioniert.
Wenn du meinen Vorschlag umgesetzt hast, kannst du deine KI ja bei den 3-5 besten Zügen schauen lassen, wie viele Felder der Gegner gewinnen kann und dann aus der Differenz quasi den effektiven Raumgewinn berechnen
|
|
Thorsten-Bln 
Hält's aus hier
Beiträge: 14
|
Verfasst: Do 13.12.07 22:03
Naja, ich hab ja den Quellcode zum Ausprobieren bereitgestellt, daher war das Verbesserungsvorschläge darauf bezogen.
Codeoptimierungen etc.
Wie die KI funktioniert ist eigentlich recht einfach. Er bewertet nun alle Felder, bevor er ein Feld auswählt auf das er setzt.
1. Es wird geschaut, wem das Feld gehört :
a) niemanden --> Bewertung +1
b) ihm selber --> Bewertung +2
c) dem Gegner --> Bewertung -100
2. Es wird geschaut, wie einfach der Eimer gefüllt werden kann :
a) Eckeimer --> Bewertung +3
b) Randeimer --> Bewertung +2
c) Mitte-Eimer --> Bewertung +1
3) Es wird geschaut wie die Nachbarfelder gefüllt sind
a) Je leerem Nachbarfeld --> Bewertung +1
b) Nachbarfeld gehört ihm selber --> Bewertung +2
c) Nachbarfeld gehört dem Gegner :
I. Gegner bekommt Nachbarfeld schneller voll --> Bewertung -3
II. Gegner bekommt Nachbarfeld langsamer voll --> Bewertung +3
|
|
laublau
Hält's aus hier
Beiträge: 1
|
Verfasst: Sa 25.05.19 14:59
Hi...
Bist Du an dem Projekt noch dran?
Ich würde mir wünschen, dass die KI auch noch berücksichtigt, wie schnell ein Feld zurück-erobert werden kann.. sprich: Befindet sich in unmittelbarer Nähe ein Feld, das der Gegner zum überlaufen bringen kann, was KI-Felder auch sofort wieder zum überlaufen bringt..
Aber herzlichen Dank - das Spiel habe ich so vermisst.. 
|
|
Sinspin
      
Beiträge: 1335
Erhaltene Danke: 118
Win 10
RIO, CE, Lazarus
|
Verfasst: Sa 25.05.19 22:27
Zitat: | Verfasst: Do 13.12.07 |
Ich glaube, eher nicht. Das ist 11 Jahre und 5 Monate her.
_________________ Wir zerstören die Natur und Wälder der Erde. Wir töten wilde Tiere für Trophäen. Wir produzieren Lebewesen als Massenware um sie nach wenigen Monaten zu töten. Warum sollte unser aller Mutter, die Natur, nicht die gleichen Rechte haben?
|
|