clarion.system
Class AbstractIRLRule

java.lang.Object
  extended by clarion.system.AbstractExplicitModule
      extended by clarion.system.AbstractRule
          extended by clarion.system.RefineableRule
              extended by clarion.system.AbstractIRLRule
All Implemented Interfaces:
InterfaceDeleteable, InterfaceHandlesFeedback, InterfaceHandlesFeedbackWithTime, InterfaceTracksMatchStatistics, InterfaceTracksTime

public abstract class AbstractIRLRule
extends RefineableRule

This class implements an IRL rule within CLARION. It extends the RefineableRule class. This class is abstract and therefore cannot be instantiated on its own. All user defined IRL rules MUST extend this class.

Usage:

IRL (Independent Rule Learning) rules are rules within CLARION that are more complex than simple Condition ---> Action pairings but are not as complex as fixed rules. Their complexity mostly lies in how conditions are matched.

Some examples of IRL rules include:

IRL rules MUST contain both an action and condition. They are very similar in nature to RER rules (in that they can be refined and deleted) except that their condition matching operations are user defined.

All condition matching operations performed by the IRL rule must be specified within the "getSupport" method. The getSupport method returns a value which is equal to the support for the rule. IRL rules are no different than any other type of rule in terms of selection. They will compete with all other rules for selection based on their support and utility.

Version:
6.0.4
Author:
Nick Wilson

Nested Class Summary
 
Nested classes/interfaces inherited from class clarion.system.AbstractRule
AbstractRule.SelectionTypes, AbstractRule.UtilityOptions
 
Field Summary
 
Fields inherited from class clarion.system.RefineableRule
MatchAll, Variations
 
Fields inherited from class clarion.system.AbstractRule
BENEFIT_CONSTANT, C7, C8, Children, COST_CONSTANT, CurrentInput, DEAFUALT_PARTIAL_MATCH_ON, DEFAULT_PARTIAL_MATCH_OFF, DENSITY, GLOBAL_BENEFIT_CONSTANT, GLOBAL_C7, GLOBAL_C8, GLOBAL_COST_CONSTANT, GLOBAL_DENSITY, GLOBAL_PARTIAL_MATCH_THRESHOLD, GLOBAL_POSITIVE_MATCH_THRESHOLD, GLOBAL_SELECTION_TYPE, GLOBAL_SUPPORT_EPSILON, GLOBAL_UTILITY_OPTION, GLOBAL_V, LastMatch, NM, PARTIAL_MATCH_THRESHOLD, PM, POSITIVE_MATCH_THRESHOLD, rAction, rCondition, SELECTION_TYPE, SUPPORT_EPSILON, UTILITY_OPTION, V
 
Fields inherited from class clarion.system.AbstractExplicitModule
ACTUATION_TIME, C, D, DECISION_TIME, GLOBAL_ACTUATION_TIME, GLOBAL_C, GLOBAL_D, GLOBAL_DECISION_TIME, GLOBAL_INITIAL_BLA, GLOBAL_PERCEPTION_TIME, GLOBAL_WEIGHT, INITIAL_BLA, PERCEPTION_TIME, WEIGHT
 
Constructor Summary
AbstractIRLRule(GeneralizedConditionChunk cond, AbstractAction act)
          Initializes an IRL rule with the condition and action specified .
 
Method Summary
abstract  double getSupport(DimensionValueCollection CurrentInput)
          Determines the rule support for the IRL rule.
 
Methods inherited from class clarion.system.RefineableRule
checkDeletionByDensity, clone, getMatchAll, getMaxVariationMinusOne, getMaxVariationPlusOne, getNumVariations, getVariations, hashCode, initVariations, resetVariations, setMatchAll
 
Methods inherited from class clarion.system.AbstractRule
checkMatchCriterion, checkMatchCriterion, covers, covers, equals, equals, getAction, getChildren, getCondition, getFeedback, getNM, getNumChildren, getPM, getUtility, getUtility, incrementNM, incrementPM, initChildren, resetChildren, resetMatchStatistics, setCurrentInput, setFeedback, setNM, setPM, toString, turnPartialMatchON, updateMatchStatistics
 
Methods inherited from class clarion.system.AbstractExplicitModule
addTimeStamp, getBLA, getResponseTime
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface clarion.system.InterfaceTracksTime
addTimeStamp, getBLA
 

Constructor Detail

AbstractIRLRule

public AbstractIRLRule(GeneralizedConditionChunk cond,
                       AbstractAction act)
Initializes an IRL rule with the condition and action specified .

Parameters:
cond - The condition of the rule.
act - The action of the rule.
Method Detail

getSupport

public abstract double getSupport(DimensionValueCollection CurrentInput)
Determines the rule support for the IRL rule. This method must be specified by the user to handle matching of the current input to the rule.

Overrides:
getSupport in class AbstractRule
Parameters:
CurrentInput - The current input.
Returns:
The support for the IRL rule.