cFuzzyObj Class Reference

Trieda reprezentuje fuzzy regulator. More...

#include <fuzzyobj.h>


Public Member Functions

 cFuzzyObj ()
 Konstruktor fuzzyregulatora.
 ~cFuzzyObj ()
void SetSamples (int samples1)
 Nastavy pocet vzoriek, ktore maju byt na intervale.
void AddInput (float min1, float max1)
 Zadefinuje mnozinu fuzzygroup pre vstupne fuzzy mnoziny na rovnakom intervale.
void AddOutput (float min1, float max1)
 Zadefinuje mnozinu fuzzygroup pre vystupne fuzzy mnoziny na rovnakom intervale.
void AddInputMF (int inputgroup1,...)
 Prida fuzzy mnozinu do zvolenej vstupnej fuzzygroup.
void AddOutputMF (int outputgroup1,...)
 Prida fuzzy mnozinu do zvolenej vystupnej fuzzygroup.
void AddRule (int outputgroup1,...)
 Prida pravidlo do regulatora.
float CountResult (int outputgroup1, int method, int ops,...)
 Vyhodnoti vystup z regulatora na zaklade vlozenych vstupov.

Data Fields

int inputs
 uchovava pocet vstupnych fuzzygroup (lingvistickych premennych )
int outputs
 uchovava pocet vystupnych fuzzygroup (lingvistickych premennych)
int rules
 uchovava pocet pridanych pravidiel
int samples
 urcuje pocet samplov na intervale
fuzzygroup ** input
 reprezentuje pole ukazovatelov na fuzzygroup-y
fuzzygroup ** output
 reprezentuje pole ukazovatelov na fuzzygroup-y
fuzzyrule ** rule
 reprezentuje pole ukazovatelov na pravydla fuzzyrule


Detailed Description

Trieda reprezentuje fuzzy regulator.

Umonuuje na stavit vstupne a vystupne mnoziny. Poskytuje metody na ziskanie vystupu.

Definition at line 20 of file fuzzyobj.h.


Constructor & Destructor Documentation

cFuzzyObj::cFuzzyObj (  ) 

Konstruktor fuzzyregulatora.

nastavy hodnoty stavovych premennych na 0.

Definition at line 6 of file fuzzyobj.cpp.

References input, inputs, output, outputs, rule, and rules.

cFuzzyObj::~cFuzzyObj (  ) 

Definition at line 11 of file fuzzyobj.cpp.

References input, inputs, output, outputs, rule, and rules.


Member Function Documentation

void cFuzzyObj::SetSamples ( int  samples1  ) 

Nastavy pocet vzoriek, ktore maju byt na intervale.

Parameters:
samples1 pocet vzoriek

Definition at line 22 of file fuzzyobj.cpp.

References samples.

Referenced by Player::kickToScore().

void cFuzzyObj::AddInput ( float  min1,
float  max1 
)

Zadefinuje mnozinu fuzzygroup pre vstupne fuzzy mnoziny na rovnakom intervale.

Parameters:
min1 spodna hranica intervalu
max1 horna hranica intervalu

Definition at line 26 of file fuzzyobj.cpp.

References input, inputs, and samples.

Referenced by Player::kickToScore().

void cFuzzyObj::AddOutput ( float  min1,
float  max1 
)

Zadefinuje mnozinu fuzzygroup pre vystupne fuzzy mnoziny na rovnakom intervale.

Parameters:
min1 spodna hranica intervalu
max1 horna hranica intervalu

Definition at line 32 of file fuzzyobj.cpp.

References output, outputs, and samples.

Referenced by Player::kickToScore().

void cFuzzyObj::AddInputMF ( int  inputgroup1,
  ... 
)

Prida fuzzy mnozinu do zvolenej vstupnej fuzzygroup.

Parameters:
inputgroup1 je to index fuzzygroupy, do ktorej sa ma pridat prislusna fuzzy mnozina. Tento index suhlasi s poradim pridavania fuzzygroup do regulatora. Indexovat sa zacina od 0.
... ďalsim parametrom je typ charakteristickej funkcie pre fuzzy mnozinu
... ďalsimi parametrami su hodony na intervale <min1, max1> pre vytvorenie konkretnej charakteristickej funkcie.
See also:
Konstanty pre typy charakteristickych funkcii v subore fuzzy.h

Definition at line 38 of file fuzzyobj.cpp.

References fuzzygroup::addfuzzy(), FZ_CONST, FZ_LEFT, FZ_RIGHT, FZ_TRAPEZOID, FZ_TRIANGLE, FZ_WELL, input, fuzzygroup::mf, fuzzygroup::mfs, fuzzy::setconst(), fuzzy::setleft(), fuzzy::setright(), fuzzy::settrapezoid(), fuzzy::settriangle(), and fuzzy::setwell().

Referenced by Player::kickToScore().

void cFuzzyObj::AddOutputMF ( int  outputgroup1,
  ... 
)

Prida fuzzy mnozinu do zvolenej vystupnej fuzzygroup.

Parameters:
outputgroup1 je to index fuzzygroupy, do ktorej sa ma pridat prislusna fuzzy mnozina. Tento index suhlasi s poradim pridavania fuzzygroup do regulatora. Indexovat sa zacina od 0.
... ďalsim parametrom je typ charakteristickej funkcie pre fuzzy mnozinu
... ďalsimi parametrami su hodony na intervale <min1, max1> pre vytvorenie konkretnej charakteristickej funkcie.
See also:
Konstanty pre typy charakteristickych funkcii v subore fuzzy.h

Definition at line 90 of file fuzzyobj.cpp.

References fuzzygroup::addfuzzy(), FZ_CONST, FZ_LEFT, FZ_RIGHT, FZ_TRAPEZOID, FZ_TRIANGLE, fuzzygroup::mf, fuzzygroup::mfs, output, fuzzy::setconst(), fuzzy::setleft(), fuzzy::setright(), fuzzy::settrapezoid(), and fuzzy::settriangle().

Referenced by Player::kickToScore().

void cFuzzyObj::AddRule ( int  outputgroup1,
  ... 
)

Prida pravidlo do regulatora.

Okrem parametra outputgroup1 je potrebne zadat aj ďalsie parametre. Ich pocet je urceny:

Pre kazdu vstupnu fuzzygroup-u je potrebne zadat index charakteristickej funkcie, ktora sa bude pri vyhodnocovani pravidla uplatnovat. Rovnako to plati pre charakteristicku funkciu vystupnej fuzzygroupy.

Parameters:
outputgroup1 urcuje index vystupnej fuzzygroup-y.

Definition at line 134 of file fuzzyobj.cpp.

References inputs, rule, rules, fuzzyrule::setoutput(), and fuzzyrule::setoutputgroup().

Referenced by Player::kickToScore().

float cFuzzyObj::CountResult ( int  outputgroup1,
int  method,
int  ops,
  ... 
)

Vyhodnoti vystup z regulatora na zaklade vlozenych vstupov.

Okrem parametrov outputgroup1, method, ops, su potrebne aj parametre vstupnych hodnot pre fuzzy regulator. Ich pocet je zhodny s poctom vstupnych fuzzygroup (lingvistickych premennych).

Parameters:
outputgroup1 fuzzygroup-a (lingvisticka premenna), ktora nas zaujima. Napriklad sila.
method metoda defuzifikacie
ops typ aplikovanej logiky
... ostatne parametre
Returns:
vystup z regulatora

Definition at line 152 of file fuzzyobj.cpp.

References andl(), andp(), andz(), fuzzy::bisector(), fuzzy::centroid(), DFZ_BISECTOR, DFZ_CENTROID, DFZ_HOM, DFZ_LOM, DFZ_MOM, fuzzy::hom(), input, fuzzyrule::inputs, inputs, fuzzy::lom(), max(), fuzzygroup::mf, min(), fuzzy::mom(), OPS_LARSEN, OPS_LUKASIEWITZ, OPS_ZADEH, fuzzyrule::output, output, rule, rules, samples, fuzzy::setandl(), fuzzy::setandp(), fuzzy::setandz(), fuzzy::setconst(), and fuzzy::setorz().

Referenced by Player::kickToScore().


Field Documentation

int cFuzzyObj::inputs

uchovava pocet vstupnych fuzzygroup (lingvistickych premennych )

Definition at line 25 of file fuzzyobj.h.

Referenced by AddInput(), AddRule(), cFuzzyObj(), CountResult(), and ~cFuzzyObj().

int cFuzzyObj::outputs

uchovava pocet vystupnych fuzzygroup (lingvistickych premennych)

Definition at line 26 of file fuzzyobj.h.

Referenced by AddOutput(), cFuzzyObj(), and ~cFuzzyObj().

int cFuzzyObj::rules

uchovava pocet pridanych pravidiel

Definition at line 27 of file fuzzyobj.h.

Referenced by AddRule(), cFuzzyObj(), CountResult(), and ~cFuzzyObj().

int cFuzzyObj::samples

urcuje pocet samplov na intervale

Definition at line 28 of file fuzzyobj.h.

Referenced by AddInput(), AddOutput(), CountResult(), and SetSamples().

fuzzygroup** cFuzzyObj::input

reprezentuje pole ukazovatelov na fuzzygroup-y

Definition at line 30 of file fuzzyobj.h.

Referenced by AddInput(), AddInputMF(), cFuzzyObj(), CountResult(), and ~cFuzzyObj().

fuzzygroup** cFuzzyObj::output

reprezentuje pole ukazovatelov na fuzzygroup-y

Definition at line 31 of file fuzzyobj.h.

Referenced by AddOutput(), AddOutputMF(), cFuzzyObj(), CountResult(), and ~cFuzzyObj().

fuzzyrule** cFuzzyObj::rule

reprezentuje pole ukazovatelov na pravydla fuzzyrule

Definition at line 32 of file fuzzyobj.h.

Referenced by AddRule(), cFuzzyObj(), CountResult(), and ~cFuzzyObj().


The documentation for this class was generated from the following files:
Generated on Thu Apr 26 22:45:30 2007 for GangOfSix(GOS)-RoboCupTeamProject by  doxygen 1.5.1-p1