|
 |
 |
 |
|
|
c't Projekte - c't-Bot und c't-Sim -
Mailinglisten
[Voriger (Datum)]
[Nächster (Datum)]
[Voriger (Thread)]
[Nächster (Thread)]
[Nach Datum][Nach Thread]
Absender: Benjamin Benz
Datum: Mi, 18.06.2008 14:20:26
In-reply-to:
<F57F05A6-3013-4A1D-9337-2358FB3DD378@xxxxxxxxxxxxxxx>
References:
<000001c8d09e$f363bff0$0200a8c0@mexpnew> <F57F05A6-3013-4A1D-9337-2358FB3DD378@xxxxxxxxxxxxxxx>
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"?
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.
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?
Ciao Ben
--
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
|
|
|