Package fr.lifl.jedi.model.interactionSelection

This package defines the elements required to perform interaction selection.

See:
          Description

Class Summary
AbstractRealizableTuple<IntType extends AbstractInteraction<?>> This class represents a realizable tuple.
RealizableDegenerateTuple Realizable tuple for a degenerate interaction (an interaction with no target agent).
RealizableMultipleTargetTuple Realizable tuple for an interaction with a number of targets that depends on the situation of the source agent.
RealizableSingleTargetTuple Realizable tuple for an interaction with a single target.
TuplesObjectPool This class is used to manage an object pool containing tuples.
 

Package fr.lifl.jedi.model.interactionSelection Description

This package defines the elements required to perform interaction selection.

This package and its subpackage are the fruits of works lead by the SMAC (which stands for "Systèmes Multi-Agents et Comportements" -- i.e. Multi-Agent Systems and Behavior in english) Research Team, from the University of Lille, France.

This version of JEDI was written by :

Contact : philippe (d) mathieu (a) lifl (d) fr
Replace (d) with a dot, and (a) with an @.

Package contents

This package contains all classes that make possible to implement a reactive interaction selection process. It corresponds to a subset of the Model part of the MVC.

The interaction selection process uses a subsumption-like architecture to select what the agent performs. Every assignation element involved in the action selection process is given a priority, with the methods InteractionMatrixLine.add(fr.lifl.jedi.model.interactionDeclaration.DegenerateInteraction, int), InteractionMatrixLine.add(fr.lifl.jedi.model.interactionDeclaration.MultipleTargetInteraction, Class, double, int) or InteractionMatrixLine.add(fr.lifl.jedi.model.interactionDeclaration.SingleTargetInteraction, Class, double, int). Interaction selection takes place in decreasing value of priority, and checks every priority until a realizable tuple is selected.

For each priority, a particular interaction selection policy is used to select the initiated realizable interaction. This policy is defined thanks to an instance of this class and its subclasses.

An interaction selection selection policy is separated in two parts :

  1. The first one defines on which elements this policy takes place. Indeed, the selection can be made either by :
  2. The second part defines the nature of the selection of tuples, interaction or target. Natures can be :
    1. a random selection of an element (see RandomSelectionNature);
    2. a preferred selection of an element (see PreferredSelectionNature)
    3. a weighted selection of an element (see WeightedSelectionNature)

For instance :