Information Technology Reference
In-Depth Information
be done in a way that a simulation engine is capable of checking
these assertions during a simulation execution.
Secondly, constraints help to prevent erroneous agent behavior or
at least to detect erroneous behavior at an early stage during model
development. Especially if development is done collaboratively by
different parties preventing erroneous behavior is important. By
explicitly modeling constraints a simulation engine is capable of
enforcing the constraints during a simulation execution. Thereby,
flaws in the behavior or subtle errors in the implementation are
detected fast and without manual support.
Besides preventing and detecting erroneous behavior constraints
are also an appropriate way to increase and ensure a certain level
of fairness between agents (as cheating is prevented).
Clearly, using constraints for the second reason is essentially done for
verification and validation purposes. Therefore, constraints introduced
for such purposes of verification and validation are not strictly part
of a model itself, but part of the associated test suite of a model.
Example: Firespread Two constraints are defined:
Limiting-Condition-Constraint: No more than one fireman-
agent may water the same cell at the same time. If this is the
case, the water supply is failing and all water-actions of the
agents on this cell are aborted instantaneously.
Assertion-Constraint: The firebug-agent may only ignite the
cell it is currently occupying. If the firebug tries to ignite any
other cell, the simulation will be aborted with an appropriate
error message.
Search WWH ::




Custom Search