fuzzylite  6.0 A Fuzzy Logic Control Library in C++
fl::WeightedSum Class Reference

The WeightedSum class is a WeightedDefuzzifier that computes the weighted sum of a fuzzy set represented in an Aggregated Term. More...

#include <WeightedSum.h>

Inheritance diagram for fl::WeightedSum:
Collaboration diagram for fl::WeightedSum:

## Public Member Functions

WeightedSum (Type type=Automatic)

WeightedSum (const std::string &type)

virtual ~WeightedSum () FL_IOVERRIDE

virtual std::string className () const FL_IOVERRIDE
Returns the name of the class of the defuzzifier. More...

virtual Complexity complexity (const Term *term) const FL_IOVERRIDE
Computes the complexity of defuzzifying the given term. More...

virtual scalar defuzzify (const Term *term, scalar minimum, scalar maximum) const FL_IOVERRIDE
Computes the weighted sum of the given fuzzy set represented as an Aggregated Term as $$y = \sum_i{w_iz_i}$$, where $$w_i$$ is the activation degree of term $$i$$, and $$z_i = \mu_i(w_i)$$. More...

virtual WeightedSumclone () const FL_IOVERRIDE
Creates a clone of the defuzzifier. More...

Public Member Functions inherited from fl::WeightedDefuzzifier
WeightedDefuzzifier (Type type=Automatic)

WeightedDefuzzifier (const std::string &type)

virtual ~WeightedDefuzzifier () FL_IOVERRIDE

void setType (Type type)
Sets the type of the weighted defuzzifier. More...

Type getType () const
Gets the type of the weighted defuzzifier. More...

virtual std::string getTypeName () const
Returns a string representation of the type of the defuzzifier. More...

virtual Type inferType (const Term *term) const
Infers the type of the defuzzifier based on the given term. More...

Public Member Functions inherited from fl::Defuzzifier
Defuzzifier ()

virtual ~Defuzzifier ()

## Static Public Member Functions

static Defuzzifierconstructor ()

Static Public Member Functions inherited from fl::WeightedDefuzzifier
static std::string typeName (Type type)
Returns a string representation of the given type. More...

Public Types inherited from fl::WeightedDefuzzifier
enum  Type { Automatic, TakagiSugeno, Tsukamoto }
The Type enum indicates the type of the WeightedDefuzzifier based the terms included in the fuzzy set. More...

## Detailed Description

The WeightedSum class is a WeightedDefuzzifier that computes the weighted sum of a fuzzy set represented in an Aggregated Term.

WeightedSumCustom
WeightedAverage
WeightedAverageCustom
WeightedDefuzzifier
Defuzzifier
Since
4.0

Definition at line 37 of file WeightedSum.h.

## ◆ WeightedSum() [1/2]

 fl::WeightedSum::WeightedSum ( Type type = Automatic )
explicit

## ◆ WeightedSum() [2/2]

 fl::WeightedSum::WeightedSum ( const std::string & type )
explicit

## ◆ ~WeightedSum()

 virtual fl::WeightedSum::~WeightedSum ( )
virtual

## ◆ className()

 virtual std::string fl::WeightedSum::className ( ) const
virtual

Returns the name of the class of the defuzzifier.

Returns
the name of the class of the defuzzifier

Implements fl::Defuzzifier.

## ◆ clone()

 virtual WeightedSum* fl::WeightedSum::clone ( ) const
virtual

Creates a clone of the defuzzifier.

Returns
a clone of the defuzzifier

Implements fl::Defuzzifier.

## ◆ complexity()

 virtual Complexity fl::WeightedSum::complexity ( const Term * term ) const
virtual

Computes the complexity of defuzzifying the given term.

Parameters
 term is the term to defuzzify
Returns
the complexity of defuzzifying the given term

Implements fl::Defuzzifier.

## ◆ constructor()

 static Defuzzifier* fl::WeightedSum::constructor ( )
static

## ◆ defuzzify()

 virtual scalar fl::WeightedSum::defuzzify ( const Term * term, scalar minimum, scalar maximum ) const
virtual

Computes the weighted sum of the given fuzzy set represented as an Aggregated Term as $$y = \sum_i{w_iz_i}$$, where $$w_i$$ is the activation degree of term $$i$$, and $$z_i = \mu_i(w_i)$$.

From version 6.0, the implication and aggregation operators are not utilized for defuzzification.

Parameters
 term is the fuzzy set represented as an AggregatedTerm minimum is the minimum value of the range (only used for Tsukamoto) maximum is the maximum value of the range (only used for Tsukamoto)
Returns
the weighted sum of the given fuzzy set

Implements fl::Defuzzifier.

The documentation for this class was generated from the following file: