clarion.system
Class AbstractSubsystem

java.lang.Object
  extended by clarion.system.AbstractSubsystem
Direct Known Subclasses:
ACS, MCS, MS, NACS

public abstract class AbstractSubsystem
extends java.lang.Object

This class implements a subsystem within CLARION. This class is abstract and therefore cannot be instantiated on its own.

Usage:

This class is used as the foundation for the subsystems of CLARION. This class is mostly used for internal development purposes related to the CLARION Library. Currently there is no simple method for user-defined subsystems. The addition of any subsystem to the CLARION Library would require major structural changes to the system itself as well as major implications for the CLARION theory.

Known Subclasses:

Version:
6.0.4
Author:
Nick Wilson

Field Summary
protected  DimensionValueCollection InputSpace
          Points to the input space from the instance of the CLARION class to which this instance of the subsystem is attached.
 
Constructor Summary
AbstractSubsystem(CLARION Agent)
          Initializes the subsystem and attaches it to the specified CLARION Agent.
 
Method Summary
protected abstract  void attachSelfToAgent(CLARION Agent)
          Attaches the subsystem to the specified CLARION agent.
protected abstract  void endEpisode()
          Performs the appropriate end of episode instructions for the subsystem.
protected  void updateInputSpace(java.util.Collection<Dimension> c)
          Updates the input space based on the specified collection of dimension-value pairs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

InputSpace

protected DimensionValueCollection InputSpace
Points to the input space from the instance of the CLARION class to which this instance of the subsystem is attached.

Constructor Detail

AbstractSubsystem

public AbstractSubsystem(CLARION Agent)
Initializes the subsystem and attaches it to the specified CLARION Agent. During initialization this instance of the subsystem will attach itself to the CLARION agent you specify.

Parameters:
Agent - The agent to which the subsystem is being attached.
Method Detail

attachSelfToAgent

protected abstract void attachSelfToAgent(CLARION Agent)
Attaches the subsystem to the specified CLARION agent.

Parameters:
Agent - The agent to which this subsystem will be attached.

endEpisode

protected abstract void endEpisode()
Performs the appropriate end of episode instructions for the subsystem. This method is called by the CLARION class its endEpisode method is called.


updateInputSpace

protected void updateInputSpace(java.util.Collection<Dimension> c)
Updates the input space based on the specified collection of dimension-value pairs. If any dimensions or values exist within the specified collection that are not currently in the input space, those dimensions and/or values are added to the input space.

Parameters:
c - The collection of dimension-value pairs with which to update the input space.