Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

131

11.02.2015, 12:22

Die multithreaded Version hätte auch den Nachteil, dass sie die KI recht kompliziert werden lassen würde.
Was haltet ihr davon, dass das Programm zu Beginn eine Eichfunktion laufen lässt, die die Geschwindigkeit eures PC relativ zu meinem misst. So eine Eichfunktion könnte mit der Zeit auch mit der KI des Champions erweitert werden. Sowas ist natürlich nicht 100% genau, aber wenn ich den Determinismus aufgebe hätte das auch einige Konsequenzen:
Fast identische KIs (was vermutlich auch vorkommen wird, da man ja Sourcecode klauen darf) müsste man wirklich sehr oft gegeneinander antreten lassen, um festzustellen, wer besser ist. Und die KIs würden sich auf eurem Rechner anders verhalten, als auf meinem. Auch müsste man mehrere Versionen laufen lassen (GCC/VC) um keinen zu benachteiligen. Das würde auch die KI Entwicklung verkomplizieren, weil man nicht leicht bestimmen kann, ob eine Änderung eine KI verbessert hat.
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

132

11.02.2015, 12:29

Hallo@all,

hier kommt ein Neuling mit einer Frage:

Geht es wirklich um eine KI für Pong, dieses 2-Schläger-und-1-Ball-Spiel ? Also dieses hier ?

Ich denke, dass etwas anderes gemeint sein müsste, weil KI und Pong für mich nicht wirklich in denselben Satz gehören ;)
Andererseits lasse ich mich auch gern eines besseren belehren.


Danke schon im Voraus für die Klarstellung.

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

133

11.02.2015, 12:53

Das hab ich noch nicht verraten:)
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

134

11.02.2015, 13:05

Und wie wäre es mit der (bereits erwähnten) Idee, die KI in einer Sprache wie z. B. Lua zu schreiben, wo man die ausgeführten VM-Instruktionen zählen könnte? Das wäre dann unabhängig von der Geschwindigkeit des Rechners. Und bisher haben wir uns nur auf die Ausführungsgeschwindigkeit beschränkt - was ist mit Speicherverbrauch? Soll auch derjenige belohnt werden, der wenig Speicher benötigt?

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

135

11.02.2015, 13:23

Naja, wer will schon in LUA programmieren? :)
Speicherverbrauch sollte kein Problem sein, jedenfalls kann ich mir nicht vorstellen, dass eine KI für das Spiel viel Speicher brauchen sollte.
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

136

11.02.2015, 13:30

Geht es wirklich um eine KI für Pong, dieses 2-Schläger-und-1-Ball-Spiel ? Also dieses hier ?

Ich denke, dass etwas anderes gemeint sein müsste, weil KI und Pong für mich nicht wirklich in denselben Satz gehören ;)
Andererseits lasse ich mich auch gern eines besseren belehren.

Nein, es geht garantiert nicht um Pong, das gabs nämlich schon.
Damit siehst du auch, dass das durchaus geht ;)
"Theory is when you know something, but it doesn’t work. Practice is when something works, but you don’t know why. Programmers combine theory and practice: Nothing works and they don’t know why." - Anon

David Scherfgen

Administrator

  • »David Scherfgen« ist der Autor dieses Themas

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

137

11.02.2015, 13:36

Das Interessante am damaligen Pong-Contest war, dass der Ball mit der Zeit immer schneller wurde.

Schrompf

Alter Hase

Beiträge: 1 470

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

138

11.02.2015, 14:05

Ich äußere auch mal vorsichtiges Interesse, kann aber zur Diskussion nix beitragen. Nach meiner Vorstellung würden die Spielregeln der KI, die zuerst fertiggerechnet hat, einen Vorteil geben, so dass es ein Spieltheoretisches Problem wird. Das hängt dann aber von den Spielregeln ab, und die sind mir (zu Recht) noch unbekannt.
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

TGGC

1x Rätselkönig

Beiträge: 1 799

Beruf: Software Entwickler

  • Private Nachricht senden

139

11.02.2015, 14:34

Und wie wäre es mit der (bereits erwähnten) Idee, die KI in einer Sprache wie z. B. Lua zu schreiben, wo man die ausgeführten VM-Instruktionen zählen könnte? Das wäre dann unabhängig von der Geschwindigkeit des Rechners. Und bisher haben wir uns nur auf die Ausführungsgeschwindigkeit beschränkt - was ist mit Speicherverbrauch? Soll auch derjenige belohnt werden, der wenig Speicher benötigt?
Wie gut sich LUA dafuer eignet, weiss ich nicht, aber grundsaetzlich ist das ein moeglicher Ansatz. Core War macht das ja so aehnlich. So eine VM koennte ja tatsaechlich auch paralell zwei Programme ablaufen lassen. Ich kannte da aber auch mal was, wo es lauter Roboter in einem 2D Grid gab und jeder wurde mit einer VM gesteuert. Die VM hatte dann Befehle wie DREHE, BEWEGE, SCANNE FELD VOR DIR, ERSTELLE ROBOTER etc. und jeder Befehl hatte zugeordnete Kosten. Dementsprechend waren der Roboter dann eben auch schnell oder behaebig. Insgesamt aber auch sehr aufwendig zu organisieren. Speicherverbrauch liesse sich evtl. ja auch so aehnlich abbilden, z.b. fuer jede x Byte, die man zusaetzlich belegt, werden die Befehle um y% langsamer.

Helmut

5x Contest-Sieger

Beiträge: 692

Wohnort: Bielefeld

  • Private Nachricht senden

140

11.02.2015, 17:36

Ich habe mal einen Thread mit den groben Umrissen des Contests erstellt: #17: "Blobby Volley KI", Spezial
Vielleicht kann ein Moderator den Thread in das richtige Subforum schieben (Ich hab da keine Berechtigung)
Sei stets geduldig gegenüber Leuten, die nicht mit dir übereinstimmen. Sie haben ein Recht auf ihren Standpunkt - trotz ihrer lächerlichen Meinung. (F. Hollaender)

Werbeanzeige