• Keine Ergebnisse gefunden

Formalisierung der Ausl¨ oser-Bestimmung

Der Prozess der Ausl¨oser-Bestimmung setzt sich zusammen aus:

• der Spezifikation von Ausl¨osern (engl. specify trigger) und

• der Erkennung von Ausl¨osern (engl. recognize trigger).

In Abbildung 5.3 sind diese beiden Teilprozesse dargestellt. Wie bei der Ver-haltens-Bestimmung wird die Spezifikation von Ausl¨osern durch einen Designer vorgenommen, der f¨ur jedes Verhaltens-Muster ein Ausl¨oser-Muster definiert.

Diese Ausl¨oser-Muster werden sowohl genutzt, um den Ausl¨oser eines Verhal-tens, als auch die m¨oglichen Ausl¨oser einer Entscheidungs-Situation zu bestim-men. In diesem Abschnitt wird die Spezifikation von Ausl¨osern (Abschnitt

Abbildung 5.3: Struktur der Ausl¨oser-Bestimmung 5.2.1) und die Erkennung von Ausl¨osern (Abschnitt 5.2.2) formalisiert.

5.2.1 Spezifikation von Ausl¨osern

Da jedes Ausl¨oser-Muster einem Verhaltens-Muster zugeordnet ist, k¨onnen die Namen der entsprechenden Verhaltens-Muster verwendet werden. Damit be-steht jeder Ausl¨oser aus:

• einem Namenname∈NB,5

• einer Sequenz von Prim¨arwerten und

• einer Sequenz von Sekund¨arwerten.

5NBwurde als Menge der Namen aller Verhalten eingef¨uhrt (Abschnitt 4.3.3 auf Seite 58).

5.2 Formalisierung der Ausl¨oser-Bestimmung 109

Es werden also zwei verschiedene Arten von Werte-Sequenzen unterschie-den. Im Vorfeld der Formalisierung der Ausl¨oser und Ausl¨oser-Muster wird die Menge der Sequenztypen eingef¨uhrt.

ST ist die Menge der Sequenztypen. Sie besteht aus den zwei Elementen

‘primary’ und ‘secondary’, d.h. ST={primary,secondary}.

Bei der Spezifikation der Ausl¨oser-Muster wurden verschiedene prim¨are und sekund¨are Attribute verwendet, die in Tabelle 5.1 zusammengefasst sind. In der linken Spalte sind die Namen der Attribute angegeben, wobei die Vektoren vom Kicker zum Empf¨anger bzw. zum Torzentrum in der Tabelle mit

”relative Po-sitionen“ bezeichnet werden. Die mittlere Spalte gibt die verwendete Bezeich-nung der Menge an und die rechte Spalte macht Angaben ¨uber die Elemente der jeweiligen Menge.

Attribut Mengenname Erl¨auterungen

Kickerpositionen KP Teilmenge von V

relative Positionen RP Teilmenge von V

Winkel zum Gegner OA Teilmenge von R

Entfernungen zum Gegner OD Teilmenge von R

virtuelle Zielrichtungen VD {0,60,120,180,240,300}

Spielernummern NR {1, . . . ,11}

Zeitpunkte T bereits definiert

Spielzust¨ande GS {‘im Spiel’,‘Freistoß etc.’}

Gegnernamen ON beliebige Zeichenketten

Tabelle 5.1: Die f¨ur Ausl¨oser verwendeten Attribute und ihre Mengen Da Ausl¨oser mit den selben Namen durch ein und dasselbe Ausl¨oser-Muster repr¨asentiert werden sollen, werden zuerst die Mengen aller Werte-Sequenzen mit dem Namen name ∈NB und dem Sequenztyptype ∈ ST eingef¨uhrt. An-schließend werden die Mengen der Ausl¨oser und der Ausl¨oser-Muster definiert.

triggerTupelnametype bezeichnet die Menge allerWerte-Sequenzen von Aus-l¨osernmit dem Namenname∈NBund dem Sequenztyptype∈ST. Jede Werte-Sequenz-MengetriggerTupelnametype entspricht dabei einer Sequenz von Attributen, es gilt

triggerTupelnametype =A1× · · · ×An (5.1) wobei jedes Ai mit 1 ≤ i ≤ n eine der Attributmengen aus Tabelle 5.1 bezeichnet. Die Anzahl der Attributmengennund die Angabe, um welche Attributmengen es sich jeweils bei den MengenAi handelt, ist durch den Namenname und den Sequenztyp type eindeutig definiert.

Beispielsweise isttriggerTupelpassprimary=KP×RP×OA×OD×OA×OD die Menge der Werte-Sequenzen mit den Namen pass und dem Sequenz-typ primary.

110 Fallbasierte Generierung von Verhaltens-Modellen

triggers bezeichnet die Menge aller Ausl¨oser. Ein Ausl¨oser besteht aus ei-nem Namen, einer Sequenz von Prim¨arwerten und einer Sequenz von Se-kund¨arwerten. Der Name ist ein Element der MengeNBund die Sequen-zen sind Elemente der passenden Werte-SequenSequen-zen triggerTupelnametype .

triggers=

name(pSeq, sSeq) : name∈NB,

pSeq∈triggerTupelnameprimary, sSeq∈triggerTupelnamesecondary (5.2) triggerPatterns bezeichnet die Menge aller Ausl¨oser-Muster. Ein Aus-l¨oser-Muster T P = name(triggerTupelnameprimary,triggerTupelnamesecondary) mit name ∈ NB repr¨asentiert alle Ausl¨oser gleichen Namens. Damit ergibt sich die Menge aller Ausl¨oser-Muster als

triggerPatterns=

name(triggerTupelnameprimary,

triggerTupelnamesecondary) : name∈NB . (5.3) Da jede Werte-Sequenz-MengetriggerTupelnametype gleichzeitig als eine Se-quenz von Attributen angesehen werden kann, verwenden wir f¨ur die Ausl¨oser-Muster auch Attributsbezeichnungen und benennen Ausl¨ oser-Muster auch mit T P = name(hap1, . . . , apki,has1, . . . , asli), wobei die api und asj jeweils beliebige Elemente der entsprechenden Attributmen-genAi bzw. Aj bezeichnen.

Bei Verwendung der Attributsbezeichnungen ergibt sich f¨ur das Ausl¨ oser-Muster Paß T Ppass= pass (hap1, . . . ap6i,has1. . . as5i), wobei ap1 ∈ KP, ap2 ∈ RP, ap3, ap5 ∈ OA, ap4, ap6 ∈ OD, as1, as2 ∈ NR, as3 ∈ T, as4 ∈GSund as5∈ONgilt.

Die Mengen f¨ur Ausl¨oser und Ausl¨oser-Muster wurden aufbauend auf den Mengen der Werte-Sequenzen von Ausl¨osern definiert. Jedes Ausl¨oser-Muster T P =name(triggerTupelnameprimary,triggerTupelnamesecondary) stellt eine Ausl¨ oser-menge{T1, . . . Tm}mitTi =name(pSeqi, sSeqi),pSeqi∈triggerTupelnameprimary und sSeqi ∈triggerTupelnamesecondary dar. Jedes dieser Ereignisse Ti wird durch das Ereignis-Muster T P repr¨asentiert. Diese Beziehung wird im folgenden mit Ti∈∈T P gekennzeichnet.

5.2.2 Erkennung von Ausl¨osern

F¨ur Entscheidungs-Situationen m¨ussen alle potentiellen Ausl¨oser ermittelt wer-den. Diese Aufgabe wird durch die Funktion identifySverrichtet. Bei erkannten Verhalten muß f¨ur dessen Entscheidungs-Situation der entsprechende Ausl¨oser identifiziert werden. Daf¨ur ist die Funktion identifyT zust¨andig.

identifyS ist die Funktion, die f¨ur Entscheidungs-Situationen alle Ausl¨oser ei-nes Ausl¨oser-Musters bestimmt. Bei den betrachteten Ausl¨oser-Mustern wird f¨ur jedes potentielle Ziel ein Ausl¨oser ermittelt. F¨ur den Paß wird also f¨ur jeden als Empf¨anger in Frage kommenden Mitspieler ein Ausl¨oser ermittelt. Bei weit entfernten Mitspielern kann auf eine Ermittlung des