class KickOption : public Option

Diese Klasse ist Superklasse fuer alle Wuensche, die den Ball kicken wollen

Inheritance:


Public Methods

virtual int cancellationCost()
Gibt die Abbruchkosten an
virtual Plan generatePlan()
Erzeugt einen Plan zur Umsetzung der Absicht
virtual bool isPossible()
Prueft, ob die Absicht tatsaechlich umsetzbar ist

Protected Fields

mutable Vector toTarget
Der Vektor von der eigenen Position zum Kickziel

Protected Methods

virtual int baseUtility()
Der Grundnutzen des Wunsches
virtual int constraintCost( const Constraint *constraint )
Liefert die Kosten, die durch die Einhaltung einer Nebenbedingung entstehen
KickOption()
Protected Konstruktor macht die Klasse abstrakt

Inherited from Option:

Public Methods

virtual void adaptToPreviousIntention( const Option *previousIntention )
virtual StorableObject* copy()
virtual bool forceContinuation()
void setConstraints( const Array<Constraint *>& constraints )
virtual String toString()

Protected Fields

mutable Array <Constraint *> acceptedConstraints
Array <Constraint *> requestedConstraints

Protected Methods

int computeExpectedUtility()
bool isConstraintAccepted( int constraintId )
bool isOptionPossible()
void setIsOptionPossible( bool isOptionPossible )

Private Fields

mutable bool theIsOptionPossible

Inherited from Constraint:

Public Methods

int expectedUtility()
int id()

Protected Fields

mutable int simStepOfUtilityCalculation
mutable int theExpectedUtility
int theId

Inherited from StorableObject:

Public

Ausgabe auf dem Terminal

void printOn(ostream& = cout)
Ausgabe der Beschreibung auf einen Stream
virtual String toString()
Beschreibung als String fuer die Ausgabe auf einem Terminal

Objekte anlegen und zerstören

virtual StorableObject* copy()
Legt eine Kopie des Objekts auf dem Heap an und liefert einen Zeiger darauf zurück
virtual ~StorableObject()
Der virtuelle Destruktor

Documentation

Diese Klasse ist Superklasse fuer alle Wuensche, die den Ball kicken wollen.

Alle diese Wuensche liegen das Ziel bereits bei der baseUtility-Berechnung fest, und auch die Ausfuehrung (generatePlan(), die Kostenberechnungen (constraintCost(), cancellationCost()) und einige andere Methoden sind identisch.

Quelltext

[Header | [Implementierung]

CVS Informationen zum Interface

  **************************************************
  *
  * Aktueller Stand
  *
  *   $RCSfile: KickOption.h,v $
  *   $Revision: 1.6 $
  *   $Date: 1998/08/14 13:20:46 $
  *   $Author: myritz $ 
  *
  **************************************************
  
virtual int cancellationCost()
Gibt die Abbruchkosten an.
Returns:
NEUTRAL_COST

virtual bool isPossible()
Prueft, ob die Absicht tatsaechlich umsetzbar ist
Returns:
YES oder NO.

virtual Plan generatePlan()
Erzeugt einen Plan zur Umsetzung der Absicht. Wurde die Umsetzung des Plans bereits teilweise erledigt, so stellt dies generatePlan() fest und erzeugt die naechsten Schritte ausgehend von der aktuellen Situation im Weltmodell.
Returns:
Plan, der die ersten Schritte zur Umsetzung der Absicht enthaelt. Die Zahl der Schritte laesst sich konfigurieren (Variable maxLengthOfPlan in agent.conf).

KickOption()
Protected Konstruktor macht die Klasse abstrakt. Erzeugt eine KickOption.

virtual int baseUtility()
Der Grundnutzen des Wunsches. Diese Funktion testet, ob die Grundvoraussetzungen für einen Kick vorliegen, d.h. die eigene und die Ballposition sind ausreichend zuverlässig und der Ball ist innerhalb der KickRange.
Returns:
NEUTRAL_UTILITY, wenn die Positionen nicht ausreichend genau sind; MIN_UTILITY, wenn der Ball ausserhalb der KickRange ist; MAX_UTILITY, wenn gekickt werden kann.

mutable Vector toTarget
Der Vektor von der eigenen Position zum Kickziel. Wird bereits von baseUtility ausgerechnet und gecacht.

virtual int constraintCost( const Constraint *constraint )
Liefert die Kosten, die durch die Einhaltung einer Nebenbedingung entstehen. Praktisch alle Kick-Optionen machen keinen Dash, daher wird das hier fuer alle vorgegeben. Wer Sonderwünsche hat, muß diese Methode überschreiben.
Returns:
Im allgemeinen Fall ein Wert zwischen NEUTRAL_COST und MAX_COST.
Parameters:
constraint - Zeiger auf die einzuhaltende Nebenbedingung


Direct child classes:
GoalKickOption
ForwardPassOption
DirectPassOption
ControlBallOption

alphabetic index hierarchy of classes


Hauptseite

Einleitung | Architektur | Dynamische Zusammenhänge | Referenzhandbuch | FAQ | Anhang A | Anhang B

generated by doc++