Absender: Frank Menzel
Datum: Mi, 18.06.2008 16:38:25
In-reply-to:
<4858FD89.2030403@xxxxxxxx>
-----Ursprüngliche Nachricht----- Von: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] Im Auftrag von Benjamin Benz Gesendet: Mittwoch, 18. Juni 2008 14:20 An: Entwicklung rund um den c't-bot Betreff: Re: [ct-bot] bot-2-bot-Kommunikation -> Senden der Stackdaten Hi, >> habe mich mal etwas mit der bot-2-bot-Kommunikation beschäftigt. >> Rausgekommen ist, dass nun der Stack eines Bots zu den anderen >> Remote-Bots übertragen werden kann und anschließend auf ihnen das >> Stack-Fahrverhalten gestartet wird. > > das ist ja mal eine interessante Idee. :-) das finde ich auch >> Im sim ist dies schon recht >> beeindruckend, wenn 2 Bots direkt nebeneinander platziert werden, der >> eine dem anderen zum Schluss seinen Weg übermittelt und dann beginnt, >> die Strecke abzufahren. Leider hat jeder Bot für sich seine eigene >> Vorstellung von den Positionen innerhalb seiner eigenen Welt, da es >> keine globale Positionen gibt. Also wird es nicht derselbe Weg sein, >> wenn die Bots nicht auf demselben Ausgangspunkt starten. Bei >> nebeneinander-Start ist es die Bahn daneben aber eben im Sim nicht >> anders machbar > > Warum? Du kannst Bot 2 doch im Sim an die Ausgangsposition von Bot 1 > stellen. Vielleicht wäre auch ein Offset sinnvoll oder die Kombination mit einem Verhalten "suche_Startpunkt"? -> Problem ist ja hier, dass die Koordinaten 47,11 für den einen bot eine andere Position darstellt als für den anderen, zumindest für uns als Betrachter der Szene. Diese sind nur identisch für denselben Ausgangspunkt. Idee war hier, dass der bot ein Labyrinth nach dem Ziel durchsuchen kann und wenn dort angekommen, kann er den nunmehr ermittelten kürzesten Weg dorthin einem anderen Bot mitteilen, der von demselben Ausgangspunkt startet. > Wir könnten ganz allgemein mal überlegen, ob es Sinn macht, dass ein Bot > per Remote-Call ein Verhalten auf einem anderen Bot starten kann (das > entspricht hier dem go-Befehl). > Meinungen dazu? Ich denke, dass wäre schon sinnvoll. dann könnte man ein Master-Slave-Sywtem sehr einfach machen. -> habe ich ja mit dem Start des remote-Stackverhaltens bereits getan, sehe also damit den Sinn > Der Bot-Code ist bisher nicht dafür ausgelegt, große Datenmengen zu > empfangen. Das Thema habe ich in einem anderen Zusammenhang schon auf > der ToDo-Liste. Am besten wäre eigentlich, wenn man die Daten als > Payload überträgt, aber nicht sofort, wie es zurzeit z.B. bei den > Remote-Calls ist, sondern dass der Bot beim Empfang eines Kommandos die > Payload beim Sim abholt. Der Sim müsste die Daten dafür natürlich so > lange puffern (IMHO ist das aber kein Nachteil). Dann könnten wir eine > Funktionen zum Payload-Abholen machen, die dann von verschiedenen > Codeteilen benutzt werden kann, z.B. für den Positions-Stack oder > Dateien und Programme, die man zum Bot übertragen möchte. Ich glaube, > das wäre die einzig stabile Lösung, um mehr als ein paar Bytes zu einem > realen Bot übertragen zu können. Der Nachteil ist allerdings, dass wir > schon wieder am Bot-2-Sim-Protokoll schrauben müssten. > Meinungen hierzu? Wie groß seht ihr denn die Notwendigkeit dafür? Kommen so große Datenmengen denn in der Praxis vor, oder kann der Sim einfach die Daten etwas "langsamer" ausliefern? -> wenn am Ende der Auslieferung erst das Remote-Verhalten gestartet wird, ist es doch egal ob er etwas langsamer ausliefert; wenn aber der eine bot dem anderen seine Map mitteilen soll (warum auch immer :-) ist das punktweise Senden natürlich nicht gerade sinnvoll, da ist die oben angesprochene Möglichkeit die bessere Lösung Gruß, Frank Menzel -- Benjamin Benz Heise Zeitschriften Verlag Redaktion c't eMail: bbe@xxxxxxxx WWW : http://www.heise.de Heise Zeitschriften Verlag GmbH & Co. KG Registergericht: Amtsgericht Hannover HRA 26709 Persönlich haftende Gesellschafterin: Heise Zeitschriften Verlag Geschäftsführung GmbH Registergericht: Amtsgericht Hannover, HRB 60405 Geschäftsführer: Ansgar Heise, Steven P. Steinkraus, Dr. Alfons Schräder _______________________________________________ ct-bot-entwickler Mailingliste ct-bot-entwickler@xxxxxxxxxxxxxxxxx http://www.heise.de/bin/newsletter/listinfo/ct-bot-entwickler