• Keine Ergebnisse gefunden

Verschiedene Zust¨ ande von Verhalten

4.5 Objektorientierte Realisierung

4.5.2 Verschiedene Zust¨ ande von Verhalten

Durch die sequentielle Untersuchung einer Beobachtungsfolge auf stattfindendes Verhalten, durchl¨auft jedes Verhaltens-Objekt eine Art Lebenszyklus. Dieser Lebenszyklus ist in verschiedene Phasen strukturiert. Die jeweils aktuelle Phase wird durch den Zustand des Verhaltens beschrieben.

Bei der Erzeugung eines Verhaltens-Objektes wird sein Zustand initialisiert.

Mit jeder analysierten Beobachtung kann der Zustand des Verhaltens wechseln, bis schließlich durch die Analyse einer Beobachtung festgestellt wird, daß das Verhalten beendet oder abgebrochen wurde.

Die m¨oglichen Zust¨ande von Verhaltens-Objekten werden in diesem Ab-schnitt vorgestellt und beschrieben. Desweiteren wird durch die Analyse der m¨oglichen Zustandswechsel eines Verhaltens-Objektes der Lebenszyklus eines Verhaltens-Objektes veranschaulicht.

Bei der ¨Uberpr¨ufung, ob ein Verhalten stattfindet oder nicht, wird der je-weils aktuelle Zustand des Verhaltens ermittelt. Insgesamt werden die folgenden sechs Zust¨ande, in denen ein Verhalten auftreten kann, unterschieden.

not happening (dt. nicht stattfindend) Ein Verhalten kann nicht stattfin-den. Dies ist der Fall, wenn der Startzeitpunkt des Verhaltens noch nicht ermittelt werden konnte. Mit diesem Zustand wird jedes Verhaltens-Objekt initialisiert20.

Ein Verhaltens-Objekt Paß befindet sich solange in diesem Zustand, bis in einer Beobachtung der Ball durch einen Interaktionspartner kontrolliert wird. Erst dann kann die Startzeit des Verhaltens ermittelt werden.

20Wann welche Verhaltens-Objekte angelegt werden wird sp¨ater in Abschnitt 4.5.6.2 auf Seite 98 behandelt.

4.5 Objektorientierte Realisierung 85

pending (dt. anh¨angig) Ein Verhalten ist anh¨angig oder schwebend, wenn der Startzeitpunkt des Verhaltens schon ermittelt wurde, das Verhalten aber im eigentlichen Sinne noch nicht gestartet wurde. Ein Verhalten ist erst dann im eigentlichen Sinne gestartet, wenn eine ausreichende Teil-menge der Ereignisse – die sogenannten Vorbedingungen21 – des Verhal-tens bestimmt wurde.

Ein Verhaltens-Objekt Paß befindet sich z.B. nach der Untersuchung der ersten Beobachtungen, in der der Kicker allein den Ball kontrolliert, in die-sem Zustand. Wenn bei der Untersuchung der zweiten Beobachtung fest-gestellt wird, daß der Ball von keinem Spieler kontrolliert wird (Ereignis-Muster ballFree erf¨ullt), der Ball sich aber nicht schnell vom Kicker ent-fernt (Ereignis-Muster ballFastDeparting nicht erf¨ullt), dann findet kein Paß-Verhalten statt und das Verhaltens-Objekt wird neu initialisiert.

in progress (dt. aktiv) Ein Verhalten kann aktiv sein. Dies bedeutet, daß es im eigentlichen Sinne gestartet wurde aber noch kein m¨oglicher End-zeitpunkt des Verhaltens festgestellt werden konnte, d.h. noch nicht alle Ereignisse des Verhaltens konnten bestimmt werden.

Ein erfolgreiches Paß-Verhalten ist also nach dessen eigentlichen Start solange aktiv, bis der Empf¨anger den Ball kontrolliert.

end possible (dt. Ende m¨oglich) Das Ende eines Verhaltens ist m¨oglich, wenn alle Ereignisse des Verhaltens bestimmt wurden (m¨oglicher End-zeitpunkt ermittelt), aber die prinzipielle M¨oglichkeit besteht, daß das Verhalten in der n¨achsten Beobachtung fortgesetzt wird.

Ein Dribbel Verhalten kann sich in diesem Zustand befinden sobald die minimale Dribbel-Dauer erreicht wurde.

finished (dt. beendet) Ein Verhalten gilt als beendet, wenn mit der aktuel-len Beobachtung das Verhalten nicht weiter fortgesetzt werden kann und der vorherige Zustand des Verhaltens-Objektes der Zustandend possible war.

Wenn z.B. bei der Untersuchung einer neuen Beobachtung f¨ur ein Dribbel-Objekt welches sich im Zustand end possible befindet, festgestellt wird, daß sich die Dribble-Richtung stark ver¨andert hat (straightMovement-Bedingung nicht mehr erf¨ullt), so gilt das aktuelle Dribbel-Verhalten als beendet.

Ein Verhalten gilt auch als beendet, wenn alle Ereignisse des Verhaltens bestimmt wurden und das Verhalten mit der n¨achsten Beobachtung defi-nitiv nicht fortgesetzt werden kann.

Dies ist z.B. beim Paß-Verhalten der Fall, wenn der Empf¨anger den Ball kontrolliert. Dann sind alle Ereignis-Muster bestimmt und das Verhalten kann durch die Bedingung XBallControl1 nicht in der n¨achsten Beobach-tung fortgesetzt werden.

21Die Vorbedingungen stellen eine Kategorie von Ereignissen dar und werden ausf¨uhrlicher auf Seite 92 betrachtet.

86 Die Verhaltens-Bestimmung

canceled (dt. abgebrochen) Ein Verhalten wird als abgebrochen bezeichnet, wenn das Verhalten bisher im Zustand in progress war und es mit der aktuellen Beobachtung nicht weiter fortgesetzt werden kann.

Ein Paß, der noch nicht den Empf¨anger erreicht hat aber im Zustand in progress ist, wird mit Beobachtungen abgebrochen, die einen Fehlerfall des Passes charakterisieren.

Bei der sequentiellen Untersuchung der Beobachtungssequenz aus Abbil-dung 4.4 auf Seite 52 durchl¨auft ein Paß-Objekt die Zust¨ande not happening (Initialzustand),pending(Abb. 4.4(a)),in progress (Abb. 4.4(b-h)) undfinished (Abb. 4.4(i)).

Der Zustand eines Verhaltens-Objektes wird durch ein Objekt der Klasse State repr¨asentiert (Abbildung 4.11).

Abbildung 4.11: Klassendiagramm f¨ur die Klasse der Zust¨ande

Alle m¨oglichen Zustands¨uberg¨ange eines Verhaltens sind in Abbildung 4.12 mit Hilfe eines Petrinetzes dargestellt. Dabei wird durch jede neue Beobach-tung eine Transition ausgel¨ost. Die Abh¨angigkeit des Schaltens einer Transition durch neue Beobachtungen ist im Petrinetz aus Gr¨unden der ¨Ubersichtlichkeit nicht dargestellt.

Abbildung 4.12: Petrinetz zur Beschreibung der ¨Uberg¨ange der Zust¨ande eines Verhaltens

4.5 Objektorientierte Realisierung 87

Am Anfang befindet sich das Verhalten im Zustand not happening. Durch die erste untersuchte Beobachtung kann der Zustand zupending wechseln oder gleich bleiben.

Wenn das Verhaltens-Objekt im Zustandpending ist kann es mit einer neuen Beobachtung in den Zustandin progress wechseln aber auch ein Wechsel direkt in den Zustand end possible ist nicht ausgeschlossen. Erfolgreiches Dribbel-Verhalten mit st¨andiger Ballkontrolle wechselt z.B. vom Zustand pending in den Zustand end possible wenn die minimale Dribbel-Dauer erreicht ist. Das Verhalten kann auch im Zustandpending bleiben oder zur¨uck in den Zustand not happening wechseln. Ein Paß-Verhalten wechselt z.B. vom Zustandpending in den Zustand not happening, wenn sich der Ball nach der Kontrolle durch einen Spieler von diesem nur langsam entfernt und nicht schnell, wie durch die Bedingung ballFastDeparting gefordert.

Aus dem Zustand in progress kann das Verhalten zum Zustand end pos-sible, canceled, oder finished wechseln oder im aktuellen Zustand verharren.

Ein Torschuß-Verhalten befindet sich nach Verlassen der Kontrolle des Kickers im Zustand in progress und wechselt z.B. in den Zustand canceled wenn der Ball vom Torwart abgefangen wird. Wenn der Ball eines Torschuß-Verhaltens dagegen das Tor trifft, wechselt der Zustand des Verhaltens vonin progress zu finished.

Wenn das Verhaltens-Objekt bereits im Zustandend possibleist, kann es in diesem Zustand bleiben oder in den Zustandfinished ubergehen.¨

Zu Beginn wird f¨ur jede Verhaltens-Klasse, also f¨ur jedes Verhaltens-Muster ein Objekt angelegt, welches mit dem Zustandnot happening initialisert wird.

Dieses Objekt durchl¨auft einen Lebenszyklus bis es schließlich in den Zustand finishedbzw.canceledgelangt. Damit ist ein Verhalten (erfolgreich bzw. erfolg-los) erkannt und ein neues Verhalten dieses Verhaltens-Muster kann beginnen.

Daf¨ur wird ein weiteres Verhaltens-Objekt dieser Klasse angelegt.

Die Zustands¨anderung eines Verhaltens-Objektes durch eine neue Beobach-tung ist von den Zust¨anden seiner Ereignis-Objekte abh¨angig. Bevor genau an-geben werden kann, wie sich der Zustand eines Verhaltens aus den Zust¨anden seiner Ereignisse zusammensetzt (Abschnitt 4.5.6), wird die Klasse der Ereignis-Muster mit ihren m¨oglichen Zust¨anden eingef¨uhrt (Abschnitt 4.5.3) und die Bedeutungen der verschiedenen Ereignis-Muster hinsichtlich ihrer Benutzung in den Verhaltens-Mustern untersucht (Abschnitt 4.5.4).