|
You last visited: Today at 03:37
Advertisement
Arty X – lernende Tic-Tac-Toe KI
Discussion on Arty X – lernende Tic-Tac-Toe KI within the Coding Releases forum part of the Coders Den category.
03/23/2013, 16:42
|
#1
|
elite*gold: 0
Join Date: Sep 2012
Posts: 6
Received Thanks: 3
|
Arty X – lernende Tic-Tac-Toe KI
Hallo Community,
Ich wollte euch nur kurz mein kleines Projekt vorstellen. Es ist ein Tic-Tac-Toe Spiel mit eingebauter lernender KI. Genauere Informationen findet ihr auf meiner Website:
Hier schonmal die wichtigsten Links, freue mich auf Rückmeldung
SourceCode Arty X:
Arty X:
brain.ini:
|
|
|
03/23/2013, 22:00
|
#2
|
elite*gold: 12
Join Date: Feb 2013
Posts: 442
Received Thanks: 246
|
Also ich finde das programm super und hab mittlerweile eine 500 kb große KI datei.
Was mich ein wenig stört sind immer die Message boxen hinterher, kannst du es nicht so machen dass neben dem spiel eine Statistik mit wins,loses und games ist?
Ps: Wie lehrnt das programm denn? Ich führe das 20 mal die gleichen spielzüge aus und gewinne trotzdem immer
|
|
|
03/23/2013, 22:29
|
#3
|
elite*gold: 3800
Join Date: Dec 2012
Posts: 13,037
Received Thanks: 8,238
|
Der Pro des Codens meldet sich ja wieder hier
Kenne dich ja von YouTube und habe auch schon per PN mit dir geschrieben
Gute Arbeit
|
|
|
03/24/2013, 10:37
|
#4
|
elite*gold: 0
Join Date: Jan 2011
Posts: 637
Received Thanks: 382
|
Hmm.. Wie auch schon auf YT gesagt: Nice ;o
Aber iwie kann ich nicht glauben, dass du der "richtige" ShadowzKnowledge bist o.o
|
|
|
03/24/2013, 11:07
|
#5
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
weder im quellcode, noch im spieleverhalten seh ich irgendeine art von KI..
es wird ja nichtmal überprüft, ob ich bereits 2 felder nebeneinander habe,
um dann das 3. feld zu blocken.. alles eher random
wo in deinem quellcode meinst du die KI zu benutzen/anzulegen?
|
|
|
03/24/2013, 12:24
|
#6
|
elite*gold: 0
Join Date: Sep 2012
Posts: 6
Received Thanks: 3
|
@AllCowsAreBurgers
ja kann man machen. du musst einfach in die conf.ini diese Zeile einfügen
endless=TRUE
@xSnake
was heißt denn hier richtig ?!
@omer36
die KI ist die brain.ini. läuft quasi mit Statistik
und der COM liest sie aus und endet sie an (:
|
|
|
03/24/2013, 12:39
|
#7
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
|
Quote:
Originally Posted by ShadowzKnowledge
die KI ist die brain.ini. läuft quasi mit Statistik
und der COM liest sie aus und endet sie an (:
|
Quote:
Originally Posted by AllCowsAreBurgers
Ps: Wie lehrnt das programm denn? Ich führe das 20 mal die gleichen spielzüge aus und gewinne trotzdem immer
|
anscheinend ja nicht.
|
|
|
03/24/2013, 12:55
|
#8
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,876
|
Quote:
Originally Posted by ShadowzKnowledge
@AllCowsAreBurgers
ja kann man machen. du musst einfach in die conf.ini diese Zeile einfügen
endless=TRUE
@xSnake
was heißt denn hier richtig ?!
@omer36
die KI ist die brain.ini. läuft quasi mit Statistik
und der COM liest sie aus und endet sie an (:
|
Das ist keine wirkliche KI.
Statistik != KI
Klar gehört zur KI (oft) auch gewissermaßen Statistik.
Aber ein Programm, das nur auf Statistik beruht ist totaler Unsinn.
Ich habe deinen Source-Code mal überflogen und habe gesehen, dass so Sachen wie heuristische Verfahren zum Vorentscheid völlig fehlen.
Das hat zur Folge, dass deine KI dumm ist und dumm bleibt.
Heuristische Verfahren würden in diesem Falle vollkommen reichen, da die Spielkomplexität einfach sehr gering ist.
Ich denke aber, dass du dir schon was dabei gedacht hast, wenn du das Ganze auf Statistiken anlegst.
Wenn du das wirklich "lernend" (und zwar auch intelligent lernend) machen willst, helfen dir folgende Schlagwörter:
Evolutionärer Algorithmus, Heuristiken, Wissenverarbeitung mit Logik, Regelsysteme, Unvollständiges Wissen
Besonders die ersten 2 Schlagwörter sind für dein Programm interessant, der Rest ist eher weiterführend.
|
|
|
03/24/2013, 13:47
|
#9
|
elite*gold: 273
Join Date: Sep 2010
Posts: 1,831
Received Thanks: 786
|
Quote:
Originally Posted by Shadow992
Das ist keine wirkliche KI.
Statistik != KI
Klar gehört zur KI (oft) auch gewissermaßen Statistik.
Aber ein Programm, das nur auf Statistik beruht ist totaler Unsinn.
Ich habe deinen Source-Code mal überflogen und habe gesehen, dass so Sachen wie heuristische Verfahren zum Vorentscheid völlig fehlen.
Das hat zur Folge, dass deine KI dumm ist und dumm bleibt.
Heuristische Verfahren würden in diesem Falle vollkommen reichen, da die Spielkomplexität einfach sehr gering ist.
Ich denke aber, dass du dir schon was dabei gedacht hast, wenn du das Ganze auf Statistiken anlegst.
Wenn du das wirklich "lernend" (und zwar auch intelligent lernend) machen willst, helfen dir folgende Schlagwörter:
Evolutionärer Algorithmus, Heuristiken, Wissenverarbeitung mit Logik, Regelsysteme, Unvollständiges Wissen
Besonders die ersten 2 Schlagwörter sind für dein Programm interessant, der Rest ist eher weiterführend.
|
Bei TicTacToe lässt sich auch ziemlich schnell der "beste Zug" berechnen..
|
|
|
03/24/2013, 14:02
|
#10
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,876
|
Quote:
Originally Posted by .SkyneT.
Bei TicTacToe lässt sich auch ziemlich schnell der "beste Zug" berechnen..
|
Quote:
Originally Posted by Shadow992
Heuristische Verfahren würden in diesem Falle vollkommen reichen, da die Spielkomplexität einfach sehr gering ist.
|
Zitat von Wiki:
Quote:
In der Informatik kommen, ähnlich wie in der Mathematik, heuristische Methoden zum Einsatz, um mit geringem Rechenaufwand und kurzer Laufzeit zulässige Lösungen für ein bestimmtes Problem zu erhalten.
http://de.wikipedia.org/wiki/Heuristik
|
Eine Berechnung wird also wohl auf ein heuristisches Verfahren hinauslaufen.
|
|
|
03/24/2013, 15:25
|
#11
|
elite*gold: 273
Join Date: Sep 2010
Posts: 1,831
Received Thanks: 786
|
|
|
|
03/24/2013, 16:09
|
#12
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,876
|
Quote:
Originally Posted by .SkyneT.
|
Was auch in den Bereich Heuristik gehört, nur um es einmal anzumerken.
|
|
|
03/24/2013, 16:19
|
#13
|
elite*gold: 273
Join Date: Sep 2010
Posts: 1,831
Received Thanks: 786
|
Quote:
Originally Posted by Shadow992
Was auch in den Bereich Heuristik gehört, nur um es einmal anzumerken.
|
Informier dich erst besser ...
Meine Beispiele sind beides Algorithmen, die ohne
Heuristik auskommen.
Quote:
Heuristische Verfahren würden in diesem Falle vollkommen reichen, da die Spielkomplexität einfach sehr gering ist.
|
Alleine der Satz zeigt mir das du wohl nicht
weißt was Heuristik ist.
|
|
|
03/24/2013, 16:43
|
#14
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,876
|
Quote:
Originally Posted by .SkyneT.
Informier dich erst besser ...
Meine Beispiele sind beides Algorithmen, die ohne
Heuristik auskommen.
Alleine der Satz zeigt mir das du wohl nicht
weißt was Heuristik ist.
|
Was definierst du dann als Heuristik?
Laut Wikipedia:
Quote:
Heuristik (altgr. εὑρίσκω heurísko, ich finde, zu heuriskein‚ (auf)finden, entdecken) bezeichnet die Kunst, mit begrenztem Wissen ("unvollständige Informationen") und wenig Zeit zu guten Lösungen zu kommen.[1] Es bezeichnet ein analytisches Vorgehen, bei dem mit begrenztem Wissen über ein System mit Hilfe von Mutmaßungen Schlussfolgerungen über das System getroffen werden. Die damit gefolgerten Aussagen können von der optimalen Lösung abweichen. Durch Vergleich mit einer optimalen Lösung kann die Güte der Heuristik bestimmt werden.
Heuristik ? Wikipedia
|
Laut dem Buch hier vor mir zu Wissenverarbeitung:
Quote:
Heuristische Funktion
Defintion 2.1
Eine heuristische Funktion ist eine Funktion h, die jedem Knoten k im Suchbaum eine nicht negative Zahl h(k) zuordnet. Diese Zahl gibt eine Schätzung für die Entfernung des Knotens k zum nächsten Zielknoten an. Ist k ein Zielknoten, so ist h(k) = 0.
|
Wieso genau sind die 2 Algorithmen keine heuristischen Verfahren, wenn in meinen Augen die Definition beider Quellen passt?
|
|
|
03/24/2013, 16:55
|
#15
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,904
Received Thanks: 25,393
|
Für mich ist die Frage eher, was es bei Tictactoe groß zu lernen gibt. Nach einigen Spielen sollte die KI auf jeden Zug nen Konter wissen und es endet immer unentschieden, wenn der User sich nicht total doof anstellt.
|
|
|
All times are GMT +1. The time now is 03:37.
|
|