class Constraint : public StorableObject

Eine Nebenbedingung zu einem Wunsch

Inheritance:


Public Methods

Constraint()
Liefert eine triviale Nebenbedingung, deren Erfuellung nichts bringt
virtual StorableObject* copy()
Legt eine Kopie des Objekts auf dem Heap an und liefert einen Zeiger darauf zurueck
int expectedUtility()
Liefert den erwarteten Nutzen
int id()
Liefert den Typ der Nebenbedingung zurueck
virtual String toString()
Beschreibung als String fuer die Ausgabe auf einem Terminal
virtual ~Constraint()
Virtueller Destruktor

Protected Fields

mutable int simStepOfUtilityCalculation
Ist der simStep im Weltmodell verschieden von diesem Wert, wird die ExpectedUtility neu berechnet
mutable int theExpectedUtility
Hier wird die ExpectedUtility gecacht
int theId
Typ des Wunsches

Protected Methods

virtual int computeExpectedUtility()
Fuehrt die eigentliche Berechnung der expectedUtility durch

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

Eine Nebenbedingung zu einem Wunsch. Eine Nebenbedingung hat zwar wie ein Wunsch einen Nutzen, kann aber keinen konkreten Handlungsplan erzeugen.

In unserem Modell ist die Nuetzlichkeit einer Nebenbedingung nur von der Situation, nicht aber von dem Wunsch, bei dessen Umsetzung sie erfuellt wird, abhaengig. (Wohl aber kann es verschiedene Wuensche verschieden viel kosten, dieselbe Nebenbedingung zu erfuellen).

Auch von Constraint selbst koennen Instanzen erzeugt werden. Sie werden zur Initialisierung im Deliberator verwendet. Normalerweise werden aber nur von Nachkommen von Constraint Instanzen erzeugt.

Quelltext

[Header | [Implementierung]

CVS Informationen zum Interface

  **************************************************

  *
  * Aktueller Stand
  *
  *   $RCSfile: Constraint.h,v $
  *   $Revision: 1.12 $
  *   $Date: 1998/08/14 13:20:09 $
  *   $Author: myritz $ 
  *
  **************************************************
  
Constraint()
Liefert eine triviale Nebenbedingung, deren Erfuellung nichts bringt

int expectedUtility()
Liefert den erwarteten Nutzen. Diese Methode ist const, obwohl sie interne Werte umsetzt (simStepOfUtilityCalculation und theExpectedUtility).
Returns:
Ein Wert zwischen MIN_UTILITY und MAX_UTILITY.

int id()
Liefert den Typ der Nebenbedingung zurueck

virtual StorableObject* copy()
Legt eine Kopie des Objekts auf dem Heap an und liefert einen Zeiger darauf zurueck

virtual String toString()
Beschreibung als String fuer die Ausgabe auf einem Terminal

virtual ~Constraint()
Virtueller Destruktor

int theId
Typ des Wunsches. Wird sofort im Konstruktor gesetzt.

mutable int theExpectedUtility
Hier wird die ExpectedUtility gecacht

mutable int simStepOfUtilityCalculation
Ist der simStep im Weltmodell verschieden von diesem Wert, wird die ExpectedUtility neu berechnet

virtual int computeExpectedUtility()
Fuehrt die eigentliche Berechnung der expectedUtility durch
Returns:
Im Allgemeinen ein Wert zwischen zwischen NEUTRAL_UTILITY und MAX_UTILITY, bei Constraint selbst aber NEUTRAL_UTILITY.


Direct child classes:
Option
ConserveStaminaConstraint

alphabetic index hierarchy of classes


Hauptseite

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

generated by doc++