heise online · c't · iX · Technology Review · Telepolis · mobil · Security · Netze · heise open · heise resale · Autos · c't-TV · Jobs · Kiosk
Zum Inhalt
c't

c't Projekte - c't-Bot und c't-Sim - Mailinglisten

c't-Bot und c't-Sim


[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

Re: [ct-bot] Notfallverhalten Idee...

Absender: Timo Sandmann
Datum: So, 13.05.2007 17:28:29
In-reply-to: <812F86EC9E1A96489D5E83C2AB7D6886F28D18@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>
References: <812F86EC9E1A96489D5E83C2AB7D6886F28D18@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>


Hallo,

Am 11.05.2007 um 11:02 schrieb Menzel, Frank IT-OO4:

Ziel war es ja, mit einem Abgrund-Notverhalten auch in den Verhalten darüber informiert zu werden, wenn der bot eben auf einen Abgrund fährt. Je nach Verhalten kann dann entsprechend reagiert werden. Im einfachsten Fall darf der bot nicht da reinfallen, so wie es jetzt eben der Fall ist.

ich glaube (!) es war eher so gedacht, dass das Abgrund-Behandlungs-/ Verhinderungsverhalten immer dasselbe ist, aber dass die anderen Verhalten *nach* dessen Ausführung feststellen können, dass sie a) unterbrochen wurden und b) ein Ausweichmanöver (oder was auch immer) gefahren wurde.

Ich greife mal die Idee mit der Screen-Registrierung auf. Da werden in einem begrenzten Array Pointer auf Prozeduren gespeichert und je nach Screen eine bestimmte Routine aufgerufen. Wenn man nun ein ebensolches Array macht für die Registrierung von nacheinander auszuführende Notfallroutinen, die je nach Verhalten dort registriert werden, kann man relativ flexibel darüber die Verhalten informieren und dort was tun. Im einfachsten Fall wird auf jeden Fall die Routine registriert, die die speeds auf minus setzt, so wie jetzt, damit er nicht ins Loch fällt (es muß hier sichergestellt sein, daß auch drunterliegende Fahrverhalten zum Zuge kommen). Das jetzige Notfallverhalten prüft also die Sensoren auf Abgrund und startet nacheinander alle Routinen, die hier registriert sind.

Und wo ist jetzt der Unterschied zum bisherigen Verhaltenssystem, abgesehen davon, dass der Funktionszeiger in einem Array anstatt in einer verketteten Liste (wie für alle Verhalten) gespeichert wird? Da sehe ich jetzt gerade nicht den Vorteil (außer, dass man das speicherintensive malloc() spart, aber da man das für alle anderen Verhalten ja sowieso hat...). So hat man dann nur zwei unterschiedliche Varianten für ähnliche Dinge (Aufrufen einer Funktion bzw. eines Verhaltens, die/das aktiv ist), oder ich verstehe es falsch?

Zum Ringpuffer kann ich nichts sagen.

Gruß Timo





Copyright © 2007 Heise Zeitschriften Verlag Kritik, Anregungen bitte an c't-WWW Datenschutzhinweis   Impressum