stell dir einen Fahrrroboter vor, der 4 ganz simple von einander verschiedene Verhaltenweisen hat:
1. normalerweise geradeausfahren
2. wenn er ein Objekt vor sich per Ultraschall entdeckt: Kurve fahren
3. wenn er an ein Objekt anstößt: anhalten, rückwärtsfahren, drehen, dann wieder vorwärtsfahren.
4. wenn jmand den Notaus-Schalter drückt: sofort alles stoppen.
Hier hast du deine hierarchische Subsumption-("Behaviour"-) Struktur, jede Ebene ist mit Sensor-Ereignissen verknüpft:
das Standardverhalten (niedrigste Priorität) "Geradeausfahren" wird duch "Kurvefahren" überschrieben, sobald ein bestimmtes Ereignis eintritt (Objekt von USS gemeldet"),
und wenn das Ereignis "Stoßstange meldet Anstoßen" eintritt, wird das momentane Verhalten durch "Zurückfahren und wenden" überschrieben,
und egal was gerade passiert, löst "Notaus gedrückt" ein Überschreiben aller anderen Verhaltensweisen aus, und sorgt für den Stopp aller Maschinen (höchste Priorität).
Lesezeichen