Package nrc.fuzzy

Interface Summary
AntecedentCombineOperatorInterface An interface for classes that provides an operator to combine the fuzzy match values of antecedent/input pairs in a rule when a rule is fired which has multiple antecedents.
FuzzyRuleExecutorInterface An interface for classes that provides an execute method to execute (fire) FuzzyRules.
FuzzySetFunction An interface that is implemented by classes that will generate FuzzySets between 2 X values.
SimilarityOperatorInterface An interface for classes that provides an operator to calculate the similarity between 2 fuzzy values.
 

Class Summary
AboveModifier Concrete implementation of the above modifier.
AntecedentCombineOperator An abstract class that can be sub-classed to provide an execute method that performs a desired operation on antecedent/input pair match values as a rule is being executed.
BelowModifier Concrete implementation of the below modifier.
CompensatoryAndAntecedentCombineOperator A class that provides a special operator referred to as the 'compensatory and' operator to combine the fuzzy match values of antecedent/input pairs in a rule when a rule is fired which has multiple antecedents.
DoubleVector The DoubleVector class implements a growable array of double values.
ExtremelyModifier Concrete implementation of the extremely modifier.
FuzzyParser  
FuzzyParserSym CUP generated class containing symbol constants.
FuzzyRule A FuzzyRule holds three sets FuzzyValues for the antecedents, conclusions and input values of a rule.
FuzzyRuleExecutor An abstract class that can be sub-classed to provide an execute method that accepts a FuzzyRule object and returns a FuzzyValueVector composed of the actual output FuzzyValues for the rule (using the implication operator and composition operator that the specific interface implements).
FuzzySet A fuzzy set is a mapping of a set of real numbers onto a membership value in the range [0, 1].
FuzzyValue The FuzzyValue class represents a fuzzy value, which is an association of a FuzzyVariable, a FuzzySet, and the linguistic expression which describe the FuzzyValue.
FuzzyValueVector The FuzzyValueVector class implements a growable array of FuzzyValues.
FuzzyVariable This class defines a FuzzyVariable, which consists of a name (for example, temperature) the units of the variable if required (for example, degrees C), the universe of discourse for the variable (for example a range from 0 to 100), and a set of fuzzy terms that will be used when describing the fuzzy variable.
GaussianFuzzySet Used to build specialized FuzzySets that have a 'gaussian' shape with a 0 at the left and right edges of the curve and a 1 in the middle section.
IntensifyModifier Concrete implementaion of the intensify modifier.
Interval The Interval class is used to represent an interval of the real number line.
IntervalVector The IntervalVector class implements a growable array of Intervals.
LarsenProductMaxMinRuleExecutor Implements the FuzzyRuleExecutor interface providing an execute method that accepts a FuzzyRule object and returns a FuzzyValueVector composed of the actual conclusion FuzzyValues for the rule using the Larsen Product inference operator and MaxMin composition.
LeftGaussianFunction An implementation of the FuzzySetFunction interface to provide a class with the ability to generate a FuzzySet that is the left half of a gaussian-shaped curve with membership value 0 on the lower left to 1 on the upper right.
LeftGaussianFuzzySet Used to build specialized FuzzySets that in have a shape similar to the left half of a gaussian curve with a 0 at the lower left edge and 1 at the upper right edge.
LeftLinearFunction An implementation of the FuzzySetFunction interface to provide a class with the ability to generate a FuzzySet that is a straight line (linear) from membership value 0 on the left to 1 on the right.
LeftLinearFuzzySet Used to build specialized LFuzzySets that have a straight line from the 0 value at the lower left edge to the 1 value at the upper right edge.
LFuzzySet Used to build specialized FuzzySets that in general have membership values of 0 at the left edge and 1 at the right edge.
LRFuzzySet The LRFuzzySet class allows the construction of a wide range of FuzzySets with relatively the same shape.
MamdaniMinMaxMinRuleExecutor Implements the FuzzyRuleExecutor interface providing an execute method that accepts a FuzzyRule object and returns a FuzzyValueVector composed of the actual conclusion FuzzyValues for the rule using the Mamdani Min inference operator and MaxMin composition.
MinimumAntecedentCombineOperator A class that provides a 'mimimum' operator to combine the fuzzy match values of antecedent/input pairs in a rule when a rule is fired which has multiple antecedents.
ModifierFunction The abstract ModifierFunction class along with the concrete implementations of this class encapsulate the set of Modifiers (or Hedges) available to operate on fuzzy values or fuzzy sets.
Modifiers This class maintains a list (in a hash table) of the fuzzy modifiers (or hedges) that are available to users.
MoreorlessModifier Concrete implementaion of the more_or_less modifier.
NormModifier Concrete implementaion of the norm modifier which normalizes a FuzzyValue/FuzzySet.
NotModifier Concrete implementaion of the not modifier, which will give the complement of a FuzzyValue/FuzzySet.
Parameters The Parameters class is a class which contains only class variables which are used in multiple classes in the fuzzy package.
PIFuzzySet Used to build specialized FuzzySets that in have a 'bell' shape with a 0 at the left and right edges of the curve and a 1 at the middle.
PlusModifier Concrete implementaion of the plus modifier.
ProductAntecedentCombineOperator A class that provides a 'product' operator to combine the fuzzy match values of antecedent/input pairs in a rule when a rule is fired which has multiple antecedents.
RectangleFuzzySet Used to build specialized FuzzySets that have a rectangle shape.
RFuzzySet Used to build specialized FuzzySets that in general have membership values of 1 at the left edge and 0 at the right edge.
RightGaussianFunction An implementation of the FuzzySetFunction interface to provide a class with the ability to generate a FuzzySet that is the right half of a gaussian-shaped curve with membership value 1 on the upper left to 0 on the lower right.
RightGaussianFuzzySet Used to build specialized FuzzySets that in have a shape similar to the right half of a gaussian curve with a 1 at the upper left edge and 0 at the lower right edge.
RightLinearFunction An implementation of the FuzzySetFunction interface to provide a class with the ability to generate a FuzzySet that is a straight line (linear) from membership value 1 on the left to 0 on the right.
RightLinearFuzzySet Used to build specialized RFuzzySets that have a straight line from the 1 value at the upper left edge to the 0 value at the lower right edge.
SetPoint The SetPoint class provides a means for representing a point with an x and y coordinate.
SFunction An implementation of the FuzzySetFunction interface to provide a class with the ability to generate a FuzzySet that is an S-shaped curve with membership value 0 on the lower left to 1 on the upper right.
SFuzzySet Used to build specialized FuzzySets that in have a shape similar to the character S with a 0 at the left edge and 1 at the right edge.
SimilarityByAreaOperator A class that provides an operator to calculate the similarity between 2 fuzzy values.
SimilarityByPossibilityOperator A class that provides an operator to calculate the similarity between 2 fuzzy values.
SimilarityOperator An abstract class that can be sub-classed to provide an operator to calculate the similarity between 2 fuzzy values.
SingletonFuzzySet Used to build specialized FuzzySets that have a single value with membership value of 1.0.
SlightlyModifier Concrete implementaion of the slightly modifier.
SomewhatModifier Concrete implementaion of the somewhat modifier.
StringVector The StringVector class implements a growable array of String objects.
TrapezoidFuzzySet Used to build specialized FuzzySets that have a trapezoid shape.
TriangleFuzzySet Used to build specialized FuzzySets that have a triangle shape.
TsukamotoRuleExecutor Implements the FuzzyRuleExecutor interface providing an execute method that accepts a FuzzyRule object and returns a FuzzyValueVector composed of the actual conclusion FuzzyValues for the rule using the Tsukamoto rule firing method.
VeryModifier Concrete implementaion of the very modifier.
ZFunction An implementation of the FuzzySetFunction interface to provide a class with the ability to generate a FuzzySet that is a Z-shaped curve with membership value 1 on the upper left to 0 on the lower right.
ZFuzzySet Used to build specialized FuzzySets that in have a shape similar to the character Z with a 1 at the left edge and 0 at the right edge.
 

Exception Summary
FuzzyException The FuzzyException class provides the basis for all the exceptions that were created for this package.
FuzzyRuleException Exceptions related to FuzzyRules.
FuzzySetException A subdivision of FuzzyExceptions to identify more specifically those exceptions related to FuzzySet creation and manipulation.
FuzzyValueException Exceptions related to FuzzyValues
FuzzyVariableException  
IncompatibleFuzzyValuesException An exception that is raised when an operation on two FuzzyValues (such as fuzzy union) is attempted and the FuzzyValues are associated with different FuzzyVariables.
IncompatibleRuleInputsException An exception that is raised when the input FuzzyValues of a FuzzyRule do not match the antecedent FuzzyValues of the rule in number of FuzzyValues or the type of corresponding FuzzyValues (ie the corresponding inputs and antecedents must have the same FuzzyVariable associated with them).
InvalidDefuzzifyException The InvalidDefuzzifyException class is thrown to indicate that a defuzzify operation on a FuzzySet failed.
InvalidFuzzyVariableNameException Exception thrown when a FuzzyVariable is attempted to be created with an invalid name (the name must have at least 1 charater in it).
InvalidFuzzyVariableTermNameException Exception thrown when a FuzzyVariable is attempted to be created with an invalid term name (the name must not have spaces or the ( or ) characters in it.
InvalidLinguisticExpressionException An exception that is raised when the parse/evaluation of a fuzzy linguistic expression fails.
InvalidUODRangeException Exception thrown when a FuzzyVariable is attempted to be created with an invalid UOD (Universe of Discourse) specification.
NoXValueForMembershipException The NoXValueForMembershipException class is thrown to indicate that an X value corresponding to a membership value could not be found for the given FuzzySet/FuzzyValue.
XValueOutsideUODException An exception that is raised when a FuzzySet (associated with a FuzzyValue) has X values that lie outside of the Universe of Discourse (UOD) for the FuzzyVariable (associated with that FuzzyValue).
XValuesOutOfOrderException The XValuesOutOfOrderException class is thrown to indicate that the x values in a FuzzySet that are not in strictly ascending order.
YValueOutOfRangeException The YValueOutOfRangeException class is thrown to indicate that a y value, or membership value, in a FuzzySet does not fall within strict range of 0.0 to 1.0 inclusive, or [0.0, 1.0].