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
Administrator
Die anderen Varianten gefallen mir nicht, weil sie das Spiel nicht deterministisch machen würden. So kann man zwei KIs nur einmal gegeneinander antreten lassen und hat das Ergebnis. Auch können so alle die Matches selber nachvollziehen.
Kann man in der Forensoftware hier eigentlich die Fähigkeit, Beiträge zu editieren, für einen Thread deaktivieren? Dann könnten die Teilnehmer die Codes direkt in den Thread posten.
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Spiele Programmierer« (10.02.2015, 20:57)
Die anderen Varianten gefallen mir nicht, weil sie das Spiel nicht deterministisch machen würden. So kann man zwei KIs nur einmal gegeneinander antreten lassen und hat das Ergebnis. Auch können so alle die Matches selber nachvollziehen.
Dann musst du aber auch Zufallsgeneratoren in den KIs verbieten (zumindest das Seeden mit Systemzeit o. Ä.).
Determinismus würde ich auch nicht voraussetzen. Das grundlegend verhindern zu wollen, würde sehr viele Optimierungen verbieten und Zeitverbrauch ist nun mal ohnehin nicht deterministisch. Überhaupt, Programmieren in C++ ist ganz leicht mal nicht deterministisch. Ein versehentlicher Zugriff irgendwo in den Heap kann zum Beispiel ganz leicht ein Programm nicht deterministisch machen.
@TGGC
Ich glaub du stellst dir das zu kompliziert vor. Sagen wir das Spiel arbeitet mit 50 Frames pro Sekunde, also 20ms pro Frame. Am Ende der Runde werde ich dann die durchschnittliche Rechendauer der Champion KI messen und wenn diese über 20ms liegt gibt's Punktabzug. Wenn's über 40ms ist wird sie disqualifiziert.
Genau was ich sagte. Angenommen das Resultat meiner KI wird durch irgendeine Iterationstiefe (bei Brute Force gar nicht so ungewoehnlich) bestimmt, dann haengt ihre Effizienz stark davon ab, wie genau ich deine Rechenleistung schaetze oder messen kann.Beim entwickeln der KI hätte ich aber nicht deine systemconfig somit kann ich auch keine aussage treffen wie weit ich von den 20 bzw. 40 ms entfernt bin. Das sehe ich dabei als Problem an, zumindest für die Entwicklung der KI.
Administrator
Administrator
Werbeanzeige