| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Nov 2004
Beiträge: 138
| Künstliche Intelligenz
Achtung! Experten gefragt: ist es ohne übermenschliche Fähigkeiten in ActionScript möglich, einen Algorithmus für "3 in einer Reihe" zu entwickeln? Weiß wer irgendeinen möglichen Ansatz? Vielleicht mithilfe von Arrays? Oder sollte ich direkt die Finger davon lassen? ![]() Vielen Dank für Hilfe! FireShark |
| | |
| | #2 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
"..3 in einer Reihe.." wenn du das als intelligenz bezeichnest :-) ja, geht. der-mögliche-spielzug-baum ist bei diesem spiel durchaus überschaubar und kann direkt eingefingert werden. fang vielleicht mal so an (sehr einfach und wenig KI ;-): var zeile1=[0,0,0,0,0,0]; var zeile2=[0,0,0,0,0,0]; var zeile3=[0,0,0,0,0,0]; var zeile4=[0,0,0,0,0,0]; var zeile5=[0,0,0,0,0,0]; var zeile6=[0,0,0,0,0,0]; var spielplan=[zeile1, zeile2, zeile3, zeile4, zeile5, zeile6]; jetzt kannst du z.b. über spielplan[3][4]=1; // eine 'figur' setzen 1=computer, 2=mensch und z.b. über if (spielplan[3][4]==1) {..} // abfragen
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (22-06-2005 um 21:14 Uhr) |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Nov 2004
Beiträge: 138
|
Hihi. *g* Ja, ich habe mir schon gedacht, dass diese Bezeichnung wohl doch ein wenig lächerlich sein würde, aber es sind ja doch nicht wenige mögliche Züge, und vor allem viele, die absolut schwachsinnig sind. Deshalb sollte der Algorithmus also schon wenigstens ein bisschen "intelligent" und flexibel/reaktionsfähig sein. Die Aufgabe, 3 in eine Reihe zu bekommen und gleichzeitig den menschlichen Gegner nicht gewinnen zu lassen, selbst zu programmieren, stelle ich mir jedenfalls nicht einfach, wenn überhaupt möglich vor, deshalb wende ich mich an das Forum. Mir würde schon eher geholfen mit etwas konkreteren Hilfestellungen, aber trotzdem schonmal vielen Dank, hgseib! ![]() FireShark |
| | |
| | #4 (permalink) |
| Neuer User Registriert seit: Nov 2004
Beiträge: 138
|
Ah, da war ich wohl zu spät. Ja, vielen Dank. Ich werde mal versuchen, etwas daraus zu machen. Allerdings denkst du wahrscheinlich auch an ein anderes Spiel. Ich meine nicht "4 in einer Reihe", sondern das, wo es lediglich 3x3 Felder gibt und man nicht darauf achten muss, dass die "Steine" nur von oben aus gesetzt werden können, und sich daraufhin übereinanderstapeln. Geändert von FireShark (22-06-2005 um 21:19 Uhr) |
| | |
| | #5 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
der einzigste unterschied von 'vier gewinnt' gegenüber 'tic-tac-toe' ist, das letzteres nur 3*3 felder hat und vier gewinnt halt mehr. 'tic-tac-toe' ist aber wirklich zu kindisch und nicht zu gewinnen. und guck mal, was es alles gibt auf dieser (internet)welt - nach 0.1 sekunden suchzeit (da hat meine tipperei wesentlich länger gedauert): http://ostermiller.org/tictactoeexpert.html
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (22-06-2005 um 21:26 Uhr) |
| | |
| | #6 (permalink) |
| Neuer User Registriert seit: Nov 2004
Beiträge: 138
|
Naja, bei "4 gewinnt" (oder "4 in einer Reihe") fallen aber doch auch die Steine immer von oben in die Löcher, das ist also auch anders. Und das macht schon einiges aus, dieser Unterschied. Jedenfalls danke für den Link, der ist gut. Ich hatte vergessen, wie das Spiel heißt, sonst hätte ich natürlich gesucht. Also "Tic Tac Toe" - ok. Danke nochmal! ![]() FireShark |
| | |
| | #7 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
sei nicht so kleinlich ;-) nur weil die plastikversion nur fallen lassen kann. ein programmierer denkt immer nur in variablen. und ob die variable nun 3 oder 300 beinhaltet, das programm muss in allen fällen gehen, sonst ist es schlecht programmiert. hier mal so auf die schnelle ein 'grundgerüst'. ohne KI. wenn ich mal zeit habe suche ich danach. denke, in 'spektrum der wissenschaft' war mal eine abhandlung darüber.
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de |
| | |
| | #8 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
nicht 1000%ig, ist eh nur kinderkram
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (23-06-2005 um 06:44 Uhr) |
| | |
| | #9 (permalink) |
| Neuer User Registriert seit: Nov 2004
Beiträge: 138
|
Hm ja, für Experten oder Berufsinformatiker ist das natürlich Kinderkram... Hey, trotzdem vielen Dank für die Datei! ![]() Aber: Zitat: "//...sonst egal pers soll auch mal gewinnen koennen" Alle möglichen Spielzüge im Voraus berechnen lassen - wäre das zu aufwendig? Ist nur ne Frage, keine Kritik. Vielen, vielen Dank nochmal! FireShark |
| | |
| | #10 (permalink) |
| Techniker Registriert seit: Sep 2003 Ort: 64807
Beiträge: 16.322
|
"..Berufsinformatiker ist das natürlich Kinderkram.." hab das nie gelernt (bei wem denn auch, vor 25 jahren?). kindergram deshalb, weil das spiel nicht zu gewinnen ist und ich sehe da auch nichts KI mässiges. ist bestenfalls geeignet (wie hier) um das programmieren zu lernen. "..Alle möglichen Spielzüge im Voraus berechnen lassen.." ist das da: "der-mögliche-spielzug-baum ist bei diesem spiel durchaus überschaubar und kann direkt eingefingert werden." hab wohl auch schon varianten gesehen, die lernen. also die züge des gewinners merken (ist ja nicht viel: 0-1-2 gewonnen). mit jedem spiel 'kennt' das programm dann mehr gewinnzüge. mach einfach mal eine eigene variante und prüfe, ob du sie schlagen kannst. wenn ja, dann hast du schlecht programmiert, also dich selbst besiegt ;-)
__________________ die ultimative antwort auf alle programmierfragen: der debugger mfg h.g.seib www.SeibsProgrammLaden.de Geändert von hgseib (23-06-2005 um 16:08 Uhr) |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |