fuzzylite  6.0
A Fuzzy Logic Control Library in C++
fl Namespace Reference

Template implementation. More...

Classes

class  Activated
 The Activated class is a special Term that contains pointers to the necessary information of a term that has been activated as part of the Antecedent of a Rule. More...
 
class  Activation
 The Activation class is the abstract class for RuleBlock activation methods. More...
 
class  ActivationFactory
 The ActivationFactory class is a ConstructionFactory of Activation methods for RuleBlocks. More...
 
class  Aggregated
 The Aggregated class is a special Term that stores a fuzzy set with the Activated terms from the Antecedents of a Rule, thereby serving mainly as the fuzzy output value of the OutputVariables. More...
 
class  Antecedent
 The Antecedent class is an expression tree that represents and evaluates the antecedent of a Rule. More...
 
class  Any
 The Any class is a special Hedge that always returns 1.0. More...
 
class  Bell
 The Bell class is an extended Term that represents the generalized bell curve membership function. More...
 
class  Benchmark
 The Benchmark class is designed to evaluate the performance of an Engine. More...
 
class  Binary
 The Binary class is an edge Term that represents the binary membership function. More...
 
class  Bisector
 The Bisector class is an IntegralDefuzzifier that computes the bisector of a fuzzy set represented in a Term. More...
 
class  Centroid
 The Centroid class is an IntegralDefuzzifier that computes the centroid of a fuzzy set represented in a Term. More...
 
class  CloningFactory
 The CloningFactory class is the base class for a factory whose objects are created from a registered object by calling the clone() method. More...
 
class  Complexity
 The Complexity class is used throughout the library to estimate the computational cost of the different components of the library. More...
 
class  Concave
 The Concave class is an edge Term that represents the concave membership function. More...
 
class  Consequent
 The Consequent class is a proposition set that represents and evaluates the consequent of a Rule. More...
 
class  Console
 The Console class is a command-line tool that helps to utilize the fuzzylite library. More...
 
class  Constant
 The Constant class is a (zero) polynomial Term that represents a constant value \( f(x) = k \). More...
 
class  ConstructionFactory
 The ConstructionFactory class is the base class for a factory whose objects are created from a registered ConstructionFactory::Constructor. More...
 
class  Cosine
 The Cosine class is an extended Term that represents the cosine membership function. More...
 
class  CppExporter
 The CppExporter class is an Exporter that translates an Engine and its components to the C++ programming language using the fuzzylite library. More...
 
class  Defuzzifier
 The Defuzzifier class is the abstract class for defuzzifiers. More...
 
class  DefuzzifierFactory
 The DefuzzifierFactory class is a ConstructionFactory of Defuzzifiers. More...
 
class  Discrete
 The Discrete class is a basic Term that represents a discrete membership function. More...
 
class  Engine
 The Engine class is the core class of the library as it groups the necessary components of a fuzzy logic controller. More...
 
class  Exception
 The Exception class is the only type of exception that is utilized throughout the library. More...
 
class  Exporter
 The Exporter class is the abstract class for exporters to translate an Engine into different formats. More...
 
class  Expression
 The Expression class is the base class to build an expression tree. More...
 
class  FactoryManager
 The FactoryManager class is a central class grouping different factories of objects, together with a singleton instance to access each of the factories throughout the library. More...
 
class  FclExporter
 The FclExporter class is an Exporter that translates an Engine and its components to the Fuzzy Control Language specification. More...
 
class  FclImporter
 The FclImporter class is an Importer that configures an Engine and its components utilizing the Fuzzy Control Language specification. More...
 
class  First
 The First class is a RuleBlock Activation method that activates the first \(n\) rules whose activation degrees are greater than or equal to the given threshold. More...
 
class  FisExporter
 The FisExporter class is an Exporter that translates an Engine and its components into the Fuzzy Inference System format for Matlab or Octave. More...
 
class  FisImporter
 The FisImporter class is an Importer that configures an Engine and its components from utilizing the Fuzzy Inference System format for Matlab or Octave. More...
 
class  FL_IFINAL
 The Extremely class is a Hedge located fifth in the ordered set (Not, Seldom, Somewhat, Very, Extremely, Any). More...
 
class  FldExporter
 The FldExporter class is an Exporter that evaluates an Engine and exports its input values and output values to the FuzzyLite Dataset (FLD) format, see http://www.fuzzylite.com/fll-fld for more information. More...
 
class  FllExporter
 The FllExporter class is an Exporter that translates an Engine and its components to the FuzzyLite Language (FLL), see http://www.fuzzylite.com/fll-fld for more information. More...
 
class  FllImporter
 The FllImporter class is an Importer that configures an Engine and its components utilizing the FuzzyLite Language (FLL), see http://www.fuzzylite.com/fll-fld for more information. More...
 
class  Function
 The Function class is a polynomial Term that represents a generic function \( f : x \mapsto f(x) \). More...
 
class  FunctionFactory
 The FunctionFactory class is a CloningFactory of operators and functions utilized by the Function term. More...
 
class  fuzzylite
 The fuzzylite class contains global settings and information about the library. More...
 
class  Gaussian
 The Gaussian class is an extended Term that represents the Gaussian curve membership function. More...
 
class  GaussianProduct
 The GaussianProduct class is an extended Term that represents the two-sided Gaussian membership function. More...
 
class  General
 The General class is a RuleBlock Activation method that activates every rule following the order in which the rules were added to the rule block. More...
 
class  Hedge
 The Hedge class is the abstract class for hedges. More...
 
class  HedgeFactory
 The HedgeFactory class is a ConstructionFactory of Hedges. More...
 
class  Highest
 The Highest class is a RuleBlock Activation method that activates a given number of rules with highest activation degrees in descending order. More...
 
class  Importer
 The Importer class is the abstract class for importers to configure an Engine and its components from different text formats. More...
 
class  InputVariable
 The InputVariable class is a Variable that represents an input of the fuzzy logic controller. More...
 
class  IntegralDefuzzifier
 The IntegralDefuzzifier class is the base class for defuzzifiers which integrate over the fuzzy set. More...
 
class  JavaExporter
 The JavaExporter class is an Exporter that translates an Engine and its components to the Java programming language using the jfuzzylite library. More...
 
class  LargestOfMaximum
 The LargestOfMaximum class is an IntegralDefuzzifier that computes the largest value of the maximum membership function of a fuzzy set represented in a Term. More...
 
class  Last
 The Last class is a RuleBlock Activation method that activates the last \(n\) rules whose activation degrees are greater than or equal to the given threshold. More...
 
class  Linear
 The Linear class is a linear polynomial Term expressed as \(f(x)= \mathbf{c}\mathbf{v}+k = \sum_i c_iv_i + k\), where variable \(x\) is not utilized, \(\mathbf{v}\) is a vector of values from the input variables, \(\mathbf{c}\) is a vector of coefficients, and \(k\) is a constant. More...
 
class  Lowest
 The Lowest class is a RuleBlock Activation method that activates a given number of rules with lowest activation degrees in ascending order. More...
 
class  MeanOfMaximum
 The MeanOfMaximum class is an IntegralDefuzzifier that computes the mean value of the maximum membership function of a fuzzy set represented in a Term. More...
 
class  Norm
 The Norm class is the abstract class for norms. More...
 
class  Operation
 The Operation class contains methods for numeric operations, string manipulation, and other functions, all of which are also accessible via fl::Op. More...
 
class  OutputVariable
 The OutputVariable class is a Variable that represents an output of the fuzzy logic controller. More...
 
class  PiShape
 The PiShape class is an extended Term that represents the Pi-shaped curve membership function. More...
 
class  Proportional
 The Proportional class is a RuleBlock Activation method that activates the rules utilizing activation degrees proportional to the activation degrees of the other rules, thus the sum of the activation degrees is equal to one. More...
 
class  Ramp
 The Ramp class is an edge Term that represents the ramp membership function. More...
 
class  Rectangle
 The Rectangle class is a basic Term that represents the rectangle membership function. More...
 
class  RScriptExporter
 The RScriptExporter class is an Exporter that creates an R script to plot one or more surfaces of an engine for two input variables and any number of output variables. More...
 
class  Rule
 The Rule class is a conditional statement that contributes to the control of an Engine. More...
 
class  RuleBlock
 The RuleBlock class contains a set of Rules and fuzzy logic operators required to control an Engine. More...
 
class  Sigmoid
 The Sigmoid class is an edge Term that represents the sigmoid membership function. More...
 
class  SigmoidDifference
 The SigmoidDifference class is an extended Term that represents the difference between two sigmoidal membership functions. More...
 
class  SigmoidProduct
 The SigmoidProduct class is an extended Term that represents the product of two sigmoidal membership functions. More...
 
class  SmallestOfMaximum
 The SmallestOfMaximum class is an IntegralDefuzzifier that computes the smallest value of the maximum membership function of a fuzzy set represented in a Term. More...
 
class  SNorm
 The SNorm class is the base class for all S-Norms, and it is utilized as the disjunction fuzzy logic operator and as the aggregation (or accumulation in versions 5.0 and earlier) fuzzy logic operator. More...
 
class  SNormFactory
 The SNormFactory class is a ConstructionFactory of SNorms. More...
 
class  Spike
 The Spike class is an extended Term that represents the spike membership function. More...
 
class  SShape
 The SShape class is an edge Term that represents the S-shaped membership function. More...
 
class  Term
 The Term class is the abstract class for linguistic terms. More...
 
class  TermFactory
 The TermFactory class is a ConstructionFactory of Terms. More...
 
class  Threshold
 The Threshold class is a RuleBlock Activation method that activates the rules whose activation degrees satisfy the equation given by the comparison operator and the threshold, and deactivates the rules which do not satisfy the equation. More...
 
class  TNorm
 The TNorm class is the base class for T-Norms, and it is utilized as the conjunction fuzzy logic operator and as the implication (or activation in versions 5.0 and earlier) fuzzy logic operator. More...
 
class  TNormFactory
 The TNormFactory class is a ConstructionFactory of TNorms. More...
 
class  Trapezoid
 The Trapezoid class is a basic Term that represents the trapezoidal membership function. More...
 
class  Triangle
 The Triangle class is a basic Term that represents the triangular membership function. More...
 
class  Variable
 The Variable class is the base class for linguistic variables. More...
 
class  WeightedAverage
 The WeightedAverage class is a WeightedDefuzzifier that computes the weighted average of a fuzzy set represented in an Aggregated Term. More...
 
class  WeightedAverageCustom
 The (experimental) WeightedAverageCustom class is a WeightedDefuzzifier that computes the weighted average of a fuzzy set represented in an Aggregated Term utilizing the fuzzy operators for implication and aggregation to compute the weighted average. More...
 
class  WeightedDefuzzifier
 The WeightedDefuzzifier class is the base class for defuzzifiers which compute a weighted function on the fuzzy set without requiring to integrate over the fuzzy set. More...
 
class  WeightedSum
 The WeightedSum class is a WeightedDefuzzifier that computes the weighted sum of a fuzzy set represented in an Aggregated Term. More...
 
class  WeightedSumCustom
 The (experimental) WeightedSumCustom class is a WeightedDefuzzifier that computes the weighted sum of a fuzzy set represented in an Aggregated Term utilizing the fuzzy operators for implication and aggregation to compute the weighted sum. More...
 
class  ZShape
 The ZShape class is an edge Term that represents the Z-shaped membership function. More...
 

Typedefs

typedef double scalar
 Represents floating-point values (typedef to float or double). More...
 
typedef Operation Op
 A shortened type to refer to Operation. More...
 

Variables

const scalar nan FL_IUNUSED_DECL = std::numeric_limits<scalar>::quiet_NaN()
 Represents the Not-A-Number scalar value. More...
 
const std::nullptr_t null = nullptr
 Represents the C++11 or C++98 null pointer depending on whether the compilation flag -DFL_CPP98 is set. More...
 

Detailed Description

Template implementation.

The fl namespace is the namespace where all the classes of the fuzzylite library are contained in.

Author
Juan Rada-Vilela, Ph.D.
Since
4.0

Typedef Documentation

◆ Op

typedef Operation fl::Op

A shortened type to refer to Operation.

Definition at line 573 of file Operation.h.

◆ scalar

typedef double fl::scalar

Represents floating-point values (typedef to float or double).

Represents floating-point values as doubles.

Definition at line 114 of file fuzzylite.h.

Variable Documentation

◆ FL_IUNUSED_DECL

const scalar inf fl::FL_IUNUSED_DECL = std::numeric_limits<scalar>::quiet_NaN()

Represents the Not-A-Number scalar value.

Represents the infinity scalar value.

Definition at line 128 of file fuzzylite.h.

◆ null