KI Contest 4-Gewinnt

Übersicht Sonstiges Smalltalk

Gehe zu Seite Zurück  1, 2, 3  Weiter

Neue Antwort erstellen

Geeecko

BeitragMo, Apr 30, 2007 15:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Man könnte doch einfach Funktionen Schreiben, die einen bewegt. Naja, logisch Wink aber der code der vom Veranstallter gemacht wurde, prüft dann,
mhhh... da ist eine Waffe: Aufsammeln. Und der Teilnehmer kann dann einfach mit CreateShot() einen Schuss erstellen. Smile
Der Code prüft dann wieder, welche Waffe er hat und so, und schießt dann.
Und er prüft nach Kollisionen.

Ma ne Frage: Welche Sprache? (Habe noch nicht alles gelesen, sorry Wink )
Würde aber sagen: Es gibt 2 Wettbewerbe. Einmal Blitz2D und Max.
....

Smily

BeitragMo, Apr 30, 2007 15:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn das nun wirklich so ein Robotwars-wettbwerb wird, müsste die Veranstaltung jemand anderes Übernehmen.

Gruß, Smily0412
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Tankbuster

BeitragMo, Apr 30, 2007 15:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Warum eigentlich nicht in 3D ??
Fänd ich persöhnlich schöner, weil man einfach nur ne Cam und en Licht erstellen muss (+5CodeZeilen), und dann kann man sich das Spektakel auch selbst angucken^^
Twitter
Download Jewel Snake!
Windows|Android

NightPhoenix

BeitragMo, Apr 30, 2007 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
ja 3d wäre echt besser...
also wie schon gesagt ich wäre immernoch dafür dass di beste Umsetzung eines eigenen Arena Kampfes per Abstimmung wie in der ArtCompo gewinnt.
Zwei Roboter mit der gleichen KI gegeneinander
MfG.

Smily

BeitragMo, Apr 30, 2007 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
man kann es auch in 2D in der Draufsicht machen ^^
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

NightPhoenix

BeitragMo, Apr 30, 2007 15:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn es eine Abstimmung am Ende des Contests zu den einzelnen KIs gäbe, dann könnte doch jeder machen was er will... ist das nicht viel besser? Question
Arrow Keiner hat Aufwand die KI irgendwo einzubauen
Arrow Es gibt keinen Streit
Arrow Jeder darf entscheiden welche KI ihm doch am besten gefällt
Arrow Wenn die KIs einzeln laufen, dann gibt es auf so manchen PCs wenigstens keine Leistungseinbrüche... bei 20 teilnehmern würde es ja 1FPS geben... oder wollt ihr etwa der Masse verbieten hier mitzumachen?

Spikespine

BeitragMo, Apr 30, 2007 16:00
Antworten mit Zitat
Benutzer-Profile anzeigen
NightPhoenix: Abstimmung, was einem "am besten gefällt" ist immer subjektiv. Ich halte es generell für erstrebenswert, objektive Bewertungen zu treffen, wo sie möglich sind! Und nichts wäre objektiver als ein fairer Kampf Wink
Athlon 64 3700+ | 1024 MB RAM | GeForce 7900 GT | Blitz2D, Blitz3D, BlitzPlus, BlitzMax

Tankbuster

BeitragMo, Apr 30, 2007 16:06
Antworten mit Zitat
Benutzer-Profile anzeigen
Genau find ich auch!
Aber noch was....
findet ihr, die KI muss die Feinde sehen können (also hat ein eingeschränktes sichtfeld),... weil sonst könnte sie ja schießen, wenn nur eine Millisekunde keine Mauer zwischen dem Roboter und dem Gegner ist!
Deshalb finde ich, wir müssten uns auch da einiegen.
Sonst wär das irgendwie ziemlich unfair......
Twitter
Download Jewel Snake!
Windows|Android

NightPhoenix

BeitragMo, Apr 30, 2007 16:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann bist du also gewillt 48h zu opfern um die KIs einzubauen?
Mag subjektiv sein so ne Abstimmung, aber überleg doch mal was für ein Aufwand das jedes mal wäre.
Was wenn einer in 2D proggt, der andere in 3D?
Was wenn mal 20 Leute teilnehmen?

Außerdem macht das KI proggn doch keinen Sinn wenn man nichts zum testen hat und nichts worauf man diese abstimmen kann. Jede KI von Spielen wird aufeinander abgestimmt, ob es nun ein Bot aus CS ist, oder ein reales selbstfahrends Auto auf der Straße. Genau das macht eine KI aus, also was nützt einem eine KI wenn sie nicht so abgstimmt ist, dass sie gänzlich anders reagiert als erwartet?
Das ist fast so als ob man einen AutoPilot fürs Flugzeug programmiert, der aber nicht getestet wird.

Kann einer einen realen Vorschlag machen wie sowas funktionieren soll?

Smily

BeitragMo, Apr 30, 2007 16:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Wieso 48 Stunden mit dem Einbauen?

Beispiel:
Person A und Person B schicken die KI jeweils als Funktion KI(p) ein. Wobei p angibt, welches Spieler die KI kontrolliert.

eine der KI-Funktionen benenne ich zu KI2(p) um.
Dann das ganze nur noch in ein Programm unterbringen und spieler 1 von KI() und spieler 2 von KI2() steuern lassen.

Gruß,
Smily0412
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Spikespine

BeitragMo, Apr 30, 2007 16:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Dann bist du also gewillt 48h zu opfern um die KIs einzubauen?
Mag subjektiv sein so ne Abstimmung, aber überleg doch mal was für ein Aufwand das jedes mal wäre.
Was wenn einer in 2D proggt, der andere in 3D?
Was wenn mal 20 Leute teilnehmen?


Nene, ich glaube da gibt es ein Missverständnis Smile
Es wird kein Aufwand sein, die KI einzubauen, weil jeder die KI für das gleiche Spiel programmiert. Für exakt den selben Code! Der Organisator muss dann nur noch Copy & Paste machen und kann starten um sich den Kampf anzusehen.

um seine KI zu testen, kann man sich ja zusätzlich eine Tastatursteuerung einbauen, um selbst gegen die KI anzutreten.

edit: jetzt war smily schneller Smile
Athlon 64 3700+ | 1024 MB RAM | GeForce 7900 GT | Blitz2D, Blitz3D, BlitzPlus, BlitzMax

NightPhoenix

BeitragMo, Apr 30, 2007 16:25
Antworten mit Zitat
Benutzer-Profile anzeigen
na wenn ihr meint.... wie lösen wir das problem mit 3D und 2D?
Außerdem gibt es da noch die Möglichkeit, dass über 10 Leute mitmachen und ich bezweifle, dass jede KI so einfach gestrikt sein wird, dass das ein normaler PC abhält. Oder wie seht ihr das?

Holzchopf

Meisterpacker

BeitragMo, Apr 30, 2007 17:11
Antworten mit Zitat
Benutzer-Profile anzeigen
Es sieht ganz danach aus, als ob noch einige Probleme beseitigt werden müssten...

Meine Vorschläge (wo ich welche habe):

Arrow 2D / 3D
Es wird ganz einfach auf einem 2D-Spielfeld gespielt. Dann brauchts nur ein - sagen wir mal - 20x20 Dimfeld oder Bank. Von 3D würd ich abraten, dann hätten die 2Dler /BPler kaum Chancen.

Arrow Blitz2D und co. vs BlitzMax
Wenn jede Sprache einsetzbar sein soll, bietet sich wohl ein kleines Netzwerk an: Ein Host stellt sämtliche Spielerinfos (Position, Richtung, Schiessen) an alle anderen Programme durch und stellt zudem das Spielfeld dar. Die Clients, die nur die KI berechnen, brauchen dann ja keine Grafikausgaben.
Das Hostprogramm wird vor dem Conteststart veröffentlicht, genau so wie das Protokoll und der Port festgelegt werden (was wohl auch schon ziemlich aufwändig wird). Das Hostprogramm wird aus dem Grund veröffentlicht, damit jeder Teilnehmer seine KI lokal testen kann.
Ein weiterer Vorteil, wenn man die KI in eine separate Anwendung steckt, ist, dass jeder Teilnehmer seine Variablen benennen darf, wie er will.

Arrow Gameplay
Wäre wohl nicht schlecht, wenn das Ganze eh rundenbasiert ablaufen würde. Der Host (wenn man von obiger Idee ausgeht) sendet einfach gleichzeitig an alle Spieler die Erlaubnis, einen Zug zu tätigen. Als Zug sollte folgendes in Frage kommen:
- um 1 Feld bewegen
- auf dem Feld drehen
- schiessen
So wärs auch nicht schlimm, wenn eine KI mal eben n bisschen länger rechnet. Ich gehe sogar davon aus, dass man das Spiel dann eh abbremsen müsste, damit man vom Kampf was mitkriegt.
Und wie wärs, einfach die KI gewinnen zu lassen, welche die gegnerische zuerst zehnmal getroffen hat?

Arrow Auswertung
Je nach Anzahl der Einsendungen eine Turnierleiter oder jeden gegen jeden einmal antreten lassen (oder eine Mischung). Dann sollte es eindeutig sein, wer gewinnt (wird dann allerdings bei Unentschieden ein wenig verzwickt...)

Das wären mal so meine Überlegungen, wenn ihr Lust habt, oder wenns nötig ist, dürft ihr sie so richtig auseinander nehmen Rolling Eyes

MfG
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Smily

BeitragMo, Apr 30, 2007 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
also damit ich das jetzt richtig verstanden habe:
Du willst das ganze als Onlinegame gestalten?

Gruß, Smily0412
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Holzchopf

Meisterpacker

BeitragMo, Apr 30, 2007 18:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Kann man jetzt so auffassen, war aber nicht beabsichtigt.

Mein Gedanke war eigentlich, damit jeder in seiner bevorzugten Sprache schreiben kann, dass jeder nur die KI in die Anwendung packt. Damit die verschiedenen Anwendungen miteinander kommunizieren können, brauchts eine einheitliche festgelegte Schnittstelle. In BB ist dies mit mit den Netzwerkbefehlen IMHO am einfachsten zu realisieren, braucht ja nur einen Stream auf 127.0.0.1 an einem festgelegten Port. Die Write* und Read* Befehle kennen wir ja alle Wink
Aber ja, wenn man eh schon Netzwerkbefehle zur Kommunikation der einzelnen "Funktionen" einsetzt, kann man auch genauso gut ein Online-Spiel draus machen. Rolling Eyes Obwohl das eigentlich nicht mein primärer Gedanke war...
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Geeecko

BeitragMo, Apr 30, 2007 23:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Man könte natührlich auch sowas machen:
Wenn ein client joint, wird die zeit angezeigt, wann das spiel gesartet wird.
Wenn es dann soweit ist, wird der host an die clients (die "echten" KI´s) ein go senden, welche dann anfangen, sich zu kloppen. Dann können wir alle zusehen wer gewinnt. Und noch einen Chat XD
Nur ein Vorschlag. Dann am besten nur Rect oder nur vorgegebene grafiken verwenden. Ich fänds cool. Unser erstes Online TV Very Happy
....

Smily

BeitragDi, Mai 01, 2007 16:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Idee ist cool.
Ich glaube, ich würde mich doch wieder dafür berreiterklären, die Grundlage zu schaffen.

Ich würde das dann so machen:
Arrow Ich Programmiere das Serverprogramm und lasse es irgendwo laufen.
Arrow Dazu kommt noch ein Client von mir, womit die Roboter per Tastatur gesteuert werden können.
Arrow Das Protokoll und die Port-Nummer wird öffentlich zugänglich gemacht.

Ich stelle mir das Spiel jetzt so vor:
- Gespielt wird auf einer Arena, welches Hinternisse in form von Rects hat.
- Es gibt verschiedene Extras, welche die Roboter aufsammeln können, um z.B. ihre Energie zu regenerieren oder bessere Waffen zu bekommmen.
- Die Roboter haben eine Grundform, können innerhalb dieser form aber selber gestaltet werden. (z.B. verschiedene Farben)

Gibt es sonst noch irgendwelche Ideen?

Gruß, Smily0412
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Spikespine

BeitragDi, Mai 01, 2007 17:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Cool!
Ich würde aber darauf achten, das Spielprinzip so simpel wie möglich zu gestalten. Dann ist der Code schön kurz, übersichtlich und gut verständlich. Außerdem ist es für die Teilnehmer schwieriger, für ein komplexes Spiel die KI zu schreiben, und man möchte ja viele Teilnehmer haben! Verschiedene Waffen fände ich hier schon zu hoch gegriffen Wink
Athlon 64 3700+ | 1024 MB RAM | GeForce 7900 GT | Blitz2D, Blitz3D, BlitzPlus, BlitzMax

Geeecko

BeitragDi, Mai 01, 2007 17:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Aber ich dachte es wird KI???
Und jetzt steuert man doch selber? ^^

Ich hätte noch eine Idee:
Man könnte ja immer Tuniere veranstalten. Z.b. Samstag von 17Uhr bis 19Uhr (Oder anders). Dann kann man seinen Client umprogrammieren.
Also man kann die KI im eigenen Programm schreiben, welches dann die daten an den Server sendet. also... schwer zu erklären O.o

Man schreibt seine KI und joint auf den Server Smile
Die Kloppen sich dann. Aber da besteht die Gefahr, das einer einfach selber steuert... das wäre gemein.
....

Smily

BeitragDi, Mai 01, 2007 17:40
Antworten mit Zitat
Benutzer-Profile anzeigen
Meister_Dieb hat Folgendes geschrieben:
Aber da besteht die Gefahr, das einer einfach selber steuert... das wäre gemein.


Eine gute KI dürfte sogar Exakter und Präziser als der Mensch steuern.
Also wäre die KI wohl Irgendwann einem Menschen überlegen ^^
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Gehe zu Seite Zurück  1, 2, 3  Weiter

Neue Antwort erstellen


Übersicht Sonstiges Smalltalk

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group