Hoofdstuk 1 Basisbegrippen
Hoofdstuk 1 Basisbegrippen
Hoofdstuk 1 Basisbegrippen
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Hoofdstuk</strong> 1<br />
<strong>Basisbegrippen</strong><br />
1.1 De fuzzy-set<br />
Het begrip 'fuzzy'<br />
In de klassieke verzamelingenleer behoort een element wel of niet tot een verzameling. De vage<br />
logica daarentegen gaat er van uit dat een element ook ten delen tot een verzameling kan horen. Zo<br />
krijgen we een 'vage' omlijning van het beschouwde begrip of de beschouwde verzameling.<br />
Neem als voorbeeld het begrip of de definitie 'jong'. Iemand is 'jong' indien hij of zij niet oud is dan<br />
20 jaar. Dit is een scherp omlijnde definitie. Ofwel is deze definitie van toepassing ofwel niet. Een<br />
persoon die 20 jaar en 1 dag oud is, is bijgevolg niet meer jong. Twee dagen geleden was hij of zij<br />
wel nog jong. Deze plotse overgang van jong naar niet jong is eigenlijk in strijd met de menselijk<br />
denkwijze. Als mens gaan we het begrip 'jong' ruimer zien en minder afgelijnd. 25 jaar is ook nog<br />
jong maar niet in dezelfde mate als 20 jaar. Laten we daarom jong definiëren met de curve uit figuur<br />
1.1. Voor elke ouderdom wordt aangegeven in welke mate de betreffende ouderdom 'jong' is. Voor<br />
leeftijden kleiner dan 20 jaar is de uitspraak 'deze leeftijd is jong' voor 100% waar. Leeftijden groter<br />
dan 40 jaar zijn niet meer 'jong'. Tussen deze twee leeftijdsgrenzen in neemt de waarheidsgraad<br />
geleidelijk af.<br />
1<br />
Waarheidsgraad<br />
0.5<br />
0<br />
20 40 Leeftijd<br />
Figuur 1.1: Definitie van het begrip jong.<br />
De linguïstische variabele<br />
In de fuzzy-set theorie wordt gewerkt met begrippen als variabelen. Een mogelijk begrip is "de<br />
betreffende temperatuur is warm" of kortweg "warm". Wat juist verstaan wordt onder "warm", is<br />
afhankelijk van de beschouwde situatie en moet gedefinieerd worden. Voor elke temperatuur wordt<br />
aangegeven in welke mate deze temperatuur warm is. Dit kan gebeuren via de lidmaatschapsfunctie<br />
of het waarheidsgehalte zoals aangegeven in figuur 1.1 voor de variabele "jong".<br />
Baeten J.<br />
- 1.1 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
De lidmaatschapsgraad en de lidmaatschapsfunctie<br />
De lidmaatschapsgraad (of de waarheidsgraad) geeft het waarheidsgehalte aan van een bewering of<br />
geeft aan in welke mate het beschouwde element tot de verzameling behoort. Een functie of een<br />
curve die deze waarheidsgraden weergeeft voor alle mogelijke elementen is de lidmaatschapsfunctie<br />
of -curve. De verzameling van alle beschouwde elementen is de populatie of het universum,<br />
aangeduid met de hoofdletter U. Een willekeurig element uit die populatie wordt dan aangeduid met<br />
u. Het symbool voor de waarheidsgraad is µ.<br />
Neem als voorbeeld het begrip "lange mannen". Een man met een lengte van 180 cm behoort met<br />
een waarheidsgehalte van 90% tot de verzameling van lange mannen. Een man van twee meter<br />
behoort met een waarheidsgehalte van 100% tot de verzameling van lange mannen. Een man van<br />
210 cm is weliswaar lang maar heeft een waarheidsgehalte van 70%. In de categorie van 'extreem'<br />
lange mensen scoort hij echter met 100%.<br />
Er bestaat geen eenduidige werkwijze die aangeeft hoe de lidmaatschapsfuncties bepaald moeten<br />
worden. In feite moet de lidmaatschapsfunctie een weerspiegeling zijn van de menselijke ervaring<br />
of van het intuïtief aanvoelen van het begrip. Dit is dan ook de enige regel.<br />
Lidmaatschapsfuncties kunnen in een formule of grafisch weergegeven worden. Bij de grafische<br />
voorstelling geeft de horizontale as de elementen uit de populatie en de verticale as de<br />
waarheidsgraad µ voor elk van de elementen voor de beschouwde linguïstische variabele. Figuur<br />
1.2.a geeft een voorbeeld. Het geheel van waarheidsgraden voor een populatie betreffende een<br />
linguïstische variabele wordt een fuzzy-set genoemd.<br />
µ , Waarheidsgraad of lidmaatschapsgraad<br />
1<br />
Lidmaatschapscurve<br />
1<br />
Verzameling "lange mannen"<br />
0.5<br />
Linguïstische variabele =<br />
"Lange mannen"<br />
0<br />
0<br />
180 200 U = lengte van de man (in cm)<br />
Universum of populatie<br />
a) b)<br />
Figuur 1.2: a) De fuzzy-set vergeleken met b) een 'crisp'-set.<br />
180 220<br />
De fuzzy-set staat in tegenstelling tot de 'crisp'-set uit de binaire logica waar de verzameling perfect<br />
afgelijnd is zoals weergegeven in figuur 1.2.b.<br />
Baeten J.<br />
- 1.2 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Het formalisme<br />
Voor alle elementen u van het universum U wordt de fuzzy-set A voorgesteld door:<br />
A = {[u, µ A (u)] ∀u ∈ U} met 0 ≤ µ A (u) ≤ 1<br />
Een fuzzy-set is in feite een geheel van geordende elementen. Hierbij spelen twee grootheden een<br />
rol: de plaats of de waarde van het element in de populatie en de bijbehorende waarheidsgraad.<br />
Bij een discreet opgebouwde populatie wordt de set A voorgesteld door<br />
A = µ A (u 1 )/u 1 + µ A (u 2 )/u 2 + ...<br />
+ µ A (u n )/u n<br />
waarin u 1 , u 2 , ..., u n elementen zijn van het universum of de populatie U.<br />
De lidmaatschapsfunctie ligt hier vervat in de set van waarheidsgraden µ A<br />
(u 1<br />
), ... , µ A<br />
(u n<br />
).<br />
Het deelteken en het sommatieteken slaan niet op de respectievelijke wiskundige bewerkingen.<br />
Bij een continu opgebouwde populatie wordt de fuzzy-set weergegeven door:<br />
A = ∫ A<br />
µ A (u)/u<br />
Neem als voorbeeld het begrip: "ongeveer gelijk aan 10". Deze set kan gedefinieerd worden door de<br />
uitdrukking:<br />
A = ∫ ≅10<br />
1<br />
1 + [u − 10] 2 /u<br />
met lidmaatschapsfunctie<br />
µ A (u) =<br />
1<br />
1 + [u − 10] 2<br />
Voor u = 0 is µ A<br />
(0) = 1/101 , voor u = 1 is µ A<br />
(1) = 1/82 , ... voor u = 10 is µ A<br />
(10) = 1 enz. ...<br />
Figuur 1.3 geeft de gedefinieerde fuzzy-set grafisch weer.<br />
1<br />
0.9<br />
Waarheidsgraad µ<br />
0.8<br />
0.7<br />
0.6<br />
0.5<br />
0.4<br />
0.3<br />
0.2<br />
0.1<br />
0<br />
0 5 1 0 1 5 2 0<br />
Figuur 1.3: Grafische voorstelling van de fuzzy-set "ongeveer gelijk aan 10".<br />
Getallen<br />
Baeten J.<br />
- 1.3 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Vormen van lidmaatschapsfuncties<br />
Zoals eerder vermeld moet in elke specifieke toepassing de aard, de grootte en de vorm van de<br />
lidmaatschapscurve door de gebruiker zelf gekozen worden.<br />
De lidmaatschapsfunctie kan zeer uiteenlopende vormen aannemen. Figuur 1.4 geeft de meest<br />
voorkomende basisvormen.<br />
1<br />
µ(u)<br />
1<br />
µ(u)<br />
1<br />
µ(u)<br />
1<br />
µ(u)<br />
0.5<br />
0.5<br />
0.5<br />
0.5<br />
s z z s<br />
0<br />
u<br />
0<br />
Z-vorm S-vorm Klok-vorm (Gauss-curve)<br />
u<br />
0<br />
u<br />
0<br />
u<br />
Inverse klokvorm<br />
Figuur 1.4: Basisvormen van lidmaatschapsfuncties.<br />
De basisvormen uit figuur 1.4 kunnen vergeleken worden van een laagdoorlaat-, hoogdoorlaat,<br />
band- en bandsperfilter. Alle vier vormen kunnen afgeleid worden uit de algemene S-vorm uitfiguur<br />
1.5.<br />
1<br />
S(a,b,c)<br />
µ(u)<br />
b = (a + c) /2<br />
0,5<br />
0<br />
a b c<br />
u<br />
Figuur 1.5: Algemene S-vorm.<br />
Deze algemene S-vorm stemt met de volgende formules overeen:<br />
S(u)=0 u ∈ [−∞, a]<br />
S(u)=2(u − a) 2 /(c − a) 2 u ∈ [a, b]<br />
S(u)=1 − 2(u − c) 2 /(c − a) 2 u ∈ [b, c]<br />
S(u)=1 u ∈ [c, ∞]<br />
De continu verlopende lidmaatschapscurves hebben het nadeel dat ze meestal voorgesteld worden<br />
door redelijk lange (of ingewikkelde) formules. Dit zal de rekentijd van het fuzzy algoritme nadelig<br />
beïnvloeden. Daarom worden meestal zeer eenvoudige fuzzy sets gekozen, zoals weergegeven in<br />
figuur 1.6.<br />
De vereenvoudigde functies zijn samengesteld uit rechte stukken, zodat er een (deelsgewijs) lineair<br />
verband bestaat tussen het element uit de populatie en de waarheidsgraad voor dit element.<br />
Baeten J.<br />
- 1.4 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
µ(u) µ(u) µ(u) µ(u)<br />
Z-vorm S-vorm<br />
-vorm Π -vorm<br />
1 1 1 1<br />
0<br />
0 0 0<br />
u u u u<br />
Figuur 1.6: Vereenvoudigde basisvormen.<br />
Zoals later uit de rekenvoorbeelden zal blijken, leveren deze vereenvoudigde lidmaatschapsfuncties<br />
evenzeer goede resultaten.<br />
1.2 Basisbewerkingen<br />
Unie<br />
De unie van de sets A en B (universum U) wordt symbolisch voorgesteld door:<br />
A ∪ B<br />
Zij komt overeen met de 'OR'-functie. Met behulp van de unie worden uit reeds gedefinieerde<br />
begrippen zoals bijvoorbeeld "groot" en "zeer groot" de definitie bepaald voor het begrip "groot OF<br />
zeer groot". Het waarheidsgehalte van de uitspraak "groot of zeer groot" is gelijk aan het maximum<br />
van de waarheidsgehaltes overeenstemmend "groot" en "zeer groot":<br />
µ A∪B (u) = max [µ A (u), µ B (u)]<br />
Neem als voorbeeld de lidmaatschapsfuncties voor "groot" en "zeer groot" zoals gedefinieerd in<br />
figuur 1.7.a. Indien we voor elk element het maximum nemen van de twee gegeven curven,<br />
bekomen figuur 1.7.b. Dit is de lidmaatschapsfunctie voor "groot of zeer groot".<br />
1<br />
µ(u)<br />
Groot<br />
Zeer groot<br />
Unie<br />
1<br />
µ(u)<br />
Groot of zeer groot<br />
0,5<br />
0<br />
180 200 220<br />
u<br />
MAX<br />
" OF "<br />
a) b)<br />
0,5<br />
0<br />
180 200 220<br />
u<br />
Figuur 1.7: Toepassing van de unie voor de definitie "groot of zeer groot".<br />
Baeten J.<br />
- 1.5 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Volgend voorbeeld illustreert de unie bij definities over een discrete populatie. We definiëren:<br />
"groot" = 0/170 + 0/180 + .5/190 + 1/200 + .5/210 + 0/220<br />
"zeer groot" = 0/170 + 0/180 + 0/190 + 0/200 + .5/210 + 1/220<br />
De unie geeft dan:<br />
"groot of zeer groot" = 0/170 + 0/180 + .5/190 + 1/200 + .5/210 + 1/220<br />
Merk op dat max-operator ook werkt bij de binaire logica. De uitgang van een OF-poort is gelijk<br />
aan de maximale ingang (enkel binaire signalen zijn toegelaten). Tabel 1.1 geeft de uitgang van een<br />
OF-poort met twee ingangen.<br />
1e ing. 2e ing. "OF" uitg.<br />
1 1 = 1<br />
1 0 max 1<br />
0 1 nemen 1<br />
0 0 0<br />
Tabel 1.1: OF-poort = max-operator.<br />
Doorsnede<br />
De doorsnede van de sets A en B (universum U) wordt symbolisch voorgesteld door:<br />
A ∩ B<br />
Zij komt overeen met de 'AND'-functie. De lidmaatschapsfunctie is:<br />
µ A∩B (u) = min [µ A (u), µ B (u)]<br />
Een element uit de doorsnede maakt deel uit van de verzameling A en van B. Als voorbeeld nemen<br />
we de reeds gedefinieerde begrippen "groot" en "zeer groot". Figuur 1.8 geeft dan de<br />
lidmaatschapsfunctie voor "groot en zeer groot".<br />
µ(u)<br />
µ(u)<br />
1<br />
Groot<br />
Zeer groot<br />
Doorsnede<br />
1<br />
0,5<br />
MIN<br />
0,5<br />
Groot en zeer groot<br />
0<br />
180 200 220<br />
u<br />
" EN "<br />
0<br />
180 200 220<br />
u<br />
Figuur 1.8: Toepassing van de doorsnede voor de definitie "groot en zeer groot".<br />
Voor de eerder gegeven discrete populatie vinden we:<br />
"groot en zeer groot" = 0/170 + 0/180 + 0/190 + 0/200 + .5/210 + 0/220<br />
Baeten J.<br />
- 1.6 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Ook hier kunnen we de vergelijking maken met de binaire EN-poort. De uitgang van de EN-poort is<br />
gelijk aan het minimum van de aangelegde ingangen zoals tabel 1.2 aangeeft voor twee ingangen.<br />
1e ing. 2e ing. "EN" uitg.<br />
1 1 = 1<br />
1 0 min 0<br />
0 1 nemen 0<br />
0 0 0<br />
Tabel 1.2: EN-poort = min-operator.<br />
Complement<br />
Het complement van een fuzzy-set A wordt symbolisch voorgesteld door:<br />
¬ A<br />
De lidmaatschapsfunctie wordt gedefinieerd als:<br />
µ ¬ A(u) = 1 − µ A (u)<br />
Het complement van een fuzzy-set correspondeert met de gekende 'NOT'-functie of negatie.<br />
De lidmaatschapsfunctie voor "niet groot" wordt dan bijvoorbeeld:<br />
"niet groot" = 1/170 + 1/180 + .5/190 + 0/200 + .5/210 + 1/220<br />
of grafisch zoals weergegeven in figuur 1.9.<br />
1<br />
µ(u)<br />
Groot<br />
Complement<br />
1<br />
µ(u)<br />
Niet groot<br />
0,5<br />
1 - µ<br />
0,5<br />
0<br />
180 200 220<br />
u<br />
" NIET "<br />
0<br />
180 200 220<br />
u<br />
Figuur 1.9: Toepassing van de negatie voor de definitie "niet groot".<br />
Ook het complement of de negatie stemt overeen met de binaire logica. Tabel 1.3 geeft een<br />
voorbeeld.<br />
ing. "NIET" uitg.<br />
1 = 0<br />
0 1 - bin. waarde 1<br />
Tabel 1.3: 'NIET'-poort = 1 - ingang.<br />
Baeten J.<br />
- 1.7 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Versterking<br />
Voor een fuzzy-set kan ook een versterkende graad gedefinieerd worden. Indien A een gegeven set<br />
is, dan wordt "zeer A" of "echt A" gedefinieerd als:<br />
ZEER A = ∫ A<br />
µ A 2 (u)/u<br />
Het versterken van het gegeven begrip komt dus overeen met het kwadrateren van de afzonderlijke<br />
toebehoringsgraden µ.<br />
Neem bijvoorbeeld<br />
"klein" = 1/1 + .7/2 + .2/3 + 0/4 + 0/5<br />
dan is<br />
"zeer klein" = 1/1 + .49/2 + .04/3 + 0/4 + 0/5<br />
Figuur 1.10 geeft nog een tweede voorbeeld.<br />
µ(u)<br />
µ(u)<br />
1<br />
Goed<br />
Versterking<br />
1<br />
Echt goed<br />
0,5<br />
µ²<br />
0,5<br />
0<br />
-1 0<br />
1<br />
u<br />
0<br />
-1 0 1<br />
u<br />
Figuur 1.10: Toepassing van de versterking voor de definitie van "echt goed".<br />
Toepassing<br />
Reken voor de hierboven gegeven definities de lidmaatschapsfuncties uit voor:<br />
"Klein, maar niet echt klein" bij een discrete populatie (elementen 1 tot 5)<br />
"Goed of niet zeer goed" bij een continue populatie van -1 tot 1<br />
"Niet Goed, maar zeer goed"<br />
Oplossing zie figuur 1.11.<br />
1<br />
µ(u)<br />
Goed of niet zeer goed<br />
1<br />
µ(u)<br />
Niet goed en zeer goed<br />
0,5<br />
0,5<br />
0<br />
-1 0<br />
1<br />
u<br />
0<br />
-1 0 1<br />
u<br />
Figuur 1.11: Toepassing - voorbeeld<br />
"Klein, maar niet echt klein" = 0/1 + .51/2 + .2/3 + 0/4 + 0/5.<br />
Baeten J.<br />
- 1.8 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Opmerkingen<br />
1) Niet alle Booleaanse wetten zijn van toepassing in de fuzzy-set theorie. Zo is er bijvoorbeeld<br />
geen wet van het uitgesloten derde en geen wet van de contradictie. In de Booleaanse algebra geldt<br />
steeds:<br />
en<br />
A∪ ¬ A = U<br />
A∩ ¬ A =∅<br />
(De unie van A met het complement van A geeft het volledige universum).<br />
(De doorsnede van A met het complement van A is de lege verzameling).<br />
In de fuzzy-set theorie krijgen we afwijkende resultaten. Stel A(u) = 0.7.<br />
en<br />
A(u)∪ ¬ A(u)=max(0.7, 0.3)=0.7 < 1<br />
A(u)∩ ¬ A(u)=min(0.7, 0.3)=0.3 > 0<br />
Figuur 1.12 geeft dezelfde vaststelling grafisch weer. De toebehoringsfunctie van<br />
niet steeds 1 of 100% en de waarheidsgehalte van A(u)∩ ¬ A(u) is niet steeds 0%.<br />
A(u)∪ ¬ A(u)<br />
is<br />
1<br />
µ(u)<br />
'Goed en niet goed' cte 0 %<br />
1<br />
µ(u)<br />
'Goed of niet goed' cte 100 %<br />
0,5<br />
0,5<br />
0<br />
-1 0<br />
1<br />
u<br />
0<br />
-1 0 1<br />
u<br />
Figuur 1.12: Voorstelling van "goed en niet goed" en "goed of niet goed".<br />
2) In de literatuur worden nog andere mogelijke operatoren voorgesteld voor de unie en de<br />
doorsnede van twee fuzzy sets. (Algemeen wordt hierbij de unie-operator een s-norm genoemd, de<br />
doorsnede-operator een t-norm). We vermelden enkele mogelijke sets van operatoren:<br />
Waarschijnlijkheidsoperatoren<br />
µ A∩B (u)=µ A (u).µ B (u)<br />
µ A∪B (u)=µ A (u)+µ B (u) − µ A (u).µ B (u)<br />
(algebraïsch product)<br />
(algebraïsche som)<br />
Operatoren van Giles<br />
µ A∩B (u)=max {0, µ A (u)+µ B (u) − 1}<br />
µ A∪B (u)=min {1, µ A (u)+µ B (u)}<br />
(begrensd verschil)<br />
(begrensde som)<br />
Voor verdere mogelijk operatoren wordt naar de literatuur verwezen. In wat volgt zullen we enkel<br />
de minimum- en maximum operatoren gebruiken omdat deze het eenvoudigst zijn.<br />
Baeten J.<br />
- 1.9 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
1.3 Fuzzy relaties<br />
In deze paragraaf wordt een methode aangegeven om relaties tussen ingangsinformatie en uitgangsinformatie<br />
bij een fuzzy systeem voor te stellen. Hierbij hebben ingang en uitgang meestal een<br />
verschillende dimensie. In de relatie zit de kennis vervat over de te ondernemen regelactie.<br />
Neem een fuzzy-set A in het universum U en een fuzzy-set B in het universum V. Om A met B te<br />
verbinden gebruiken we de regel:<br />
"Indien A, dan B."<br />
Bovenstaande regel veronderstelt een relatie die wordt aangeduid door R = A*B. Indien A slechts<br />
voor 50 % waar is, dan zal actie B ook slechts voor 50 % toegepast worden. Zulk een relatie kan<br />
ook weergegeven worden in matrixvorm.<br />
Bijvoorbeeld: de relatie "Indien ingang groot, dan uitgang groot" is weergegeven in de volgende<br />
matrix, waarbij de linguïstische variabelen "ingang groot" en "uitgang groot" respectievelijk op een<br />
rij en een kolom slaan.<br />
Groot<br />
1<br />
0 0<br />
Middel<br />
0<br />
0<br />
0<br />
Klein<br />
0 0 0<br />
Groot Middel Klein<br />
Linguïstische variabelen<br />
voor de ingang.<br />
Linguïstische variabelen<br />
voor de uitgang<br />
In principe volstaat deze matrixvoorstelling of het eenvoudig opsommen van de "indien-dan"-<br />
regels, om alle regelacties te specifiëren. De volgende paragrafen beschrijven niettemin deze relatie<br />
iets meer in detail.<br />
Gedetailleerde uitwerking bij continue populaties<br />
Neem voor de definitie van A "ingang groot" en B "uitgang groot" de fuzzy-sets uit figuur 1.13.<br />
µ<br />
1<br />
"Ingang is groot"<br />
1<br />
µ<br />
"Uitgang is groot"<br />
.5<br />
0.5<br />
0<br />
Ingang<br />
Figuur 1.13: Definitie van "ingang groot" en "uitgang groot".<br />
0<br />
Uitgang<br />
Baeten J.<br />
- 1.10 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
De juiste wiskundige weergave van de relatie tussen deze continu verlopende populaties is:<br />
R = A ∗ B = ∫ uv<br />
µ A (u) ∩ µ B (v) /(u, v)<br />
De bovenvermelde matrixvoorstelling breidt dan uit naar een driedimensionale figuur waarbij de<br />
x-as de ingangspopulatie weergeeft, de y-as de uitgangspopulatie en de z-as de toebehoringsgraad.<br />
Figuur 1.14 geeft een voorbeeld.<br />
µ<br />
1<br />
0.8<br />
0.6<br />
0.4<br />
0.2<br />
0<br />
20<br />
30<br />
10<br />
20<br />
10<br />
0 0<br />
Ingang<br />
Uitgang<br />
Figuur 1.14: Voorstelling van de relatie "indien ingang groot, dan uitgang groot".<br />
"Ingang is groot"<br />
Ingang<br />
25<br />
20<br />
15<br />
10<br />
µ = 0.9<br />
µ = 0.7<br />
µ = 0.5<br />
µ = 0.3<br />
µ = 0.1<br />
"Indien ingang groot, dan uitgang groot"<br />
5<br />
1<br />
.5<br />
5 10 15 20 25 30<br />
µ<br />
0<br />
1<br />
0.5<br />
µ<br />
"Uitgang is groot"<br />
0<br />
Figuur 1.15: Voortselling van de relatie R met hoogtelijen.<br />
Uitgang<br />
We kunnen figuur 1.14 ook tweedimensionaal beschouwen en de waarheidsgraden voor de relatie<br />
voorstellen met behulp van 'hoogtelijnen' of lijnen van constante waarheid over de beschouwde<br />
Baeten J.<br />
- 1.11 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
universums U en V, zoals figuur 1.15 aangeeft. In de marge van de figuur worden ook de vormen<br />
van de lidmaatschapsfuncties voor "ingang groot" en "uitgang groot" gegeven.<br />
Gedetailleerde uitwerking bij discrete populaties<br />
Bij discrete sets over een eindige populatie wordt de relatie:<br />
µ R (u, v) = µ A∗B (u, v)=min [µ A (u), µ B (v)] ∀u ∈ U, v ∈ V<br />
Deze relatie kan geschreven worden in matrixvorm.<br />
⎡<br />
⎢<br />
A ∗ B =<br />
⎢<br />
⎣<br />
min [µ A (u 1 ), µ B (v 1 )] ...<br />
min [µ A (u 1 ), µ B (v m )]<br />
.. . ...<br />
...<br />
min [µ A (u n ), µ B (v 1 )] .. . min [µ A (u n ), µ B (v m )]<br />
⎤<br />
⎥<br />
⎥<br />
⎦<br />
Neem als voorbeeld de regel "Indien te snel, dan remmen". We definiëren te snel en remmen als<br />
volgt:<br />
"Te snel" = 0/20 + 0/40 + 0.1/60 / + 0.6/90 + 1/ 120 (met u = de snelheid in km/h)<br />
"Remmen" = 0 /ND + 0.5/LD + 1/HD (met ND, LD, HD resp. niet, lichtjes en hard de rem indrukken)<br />
In dit voorbeeld is A = het begrip "te snel" en B = het begrip "remmen".<br />
De fuzzy relatie R (Indien A dan B) wordt hier weergegeven door:<br />
R =<br />
0<br />
0<br />
0.1<br />
0.6<br />
1<br />
↑<br />
A, B →<br />
⎡ 0 0 0 ⎤<br />
⎢<br />
0 0 0<br />
⎥<br />
⎢<br />
0 0.1 0.1<br />
⎢<br />
⎥<br />
0 0.5 0.6<br />
⎥<br />
⎢ ⎥<br />
⎣ 0 0.5 1 ⎦<br />
0 0.5 1<br />
Uitbreiding<br />
Voor de regel "Indien A, dan B, dan C" wordt de fuzzy relatie R gegeven door:<br />
of<br />
A ∗ B ∗ C = ∫ u,v,w<br />
µ A (u)∩µ B (v)∩µ C (w) /(u, v, w)<br />
A ∗ B ∗ C = Σ u,v,w<br />
µ A (u)∩µ B (v)∩µ C (w) /(u, v, w)<br />
met universums U, V, W.<br />
Baeten J.<br />
- 1.12 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
1.4 Samenstellingsregels<br />
Bij de efficiënte controle van complexe processen zijn vaak veel gedragsregels nodig. Toch is het<br />
onmogelijk regels te voorzien voor alle mogelijke situaties die zich kunnen voordoen. Juist daarom<br />
is het nodig de samenstellings- of inferentieregel te gebruiken.<br />
Neem bijvoorbeeld de regel "Indien veel te snel, dan hard remmen". Als de voorwaarde "veel te<br />
snel" maar voor 50% voldaan is , dan zullen we ook maar voor 50% "hard remmen". Dit is een<br />
vorm van inferentie (afleiden). De volledige set van regels zou kunnen zijn:<br />
"Indien veel te snel, dan hard remmen"<br />
"Indien te snel, dan lichtjes remmen"<br />
"Indien goed, dan niets doen"<br />
"Indien te traag, dan gas bijgeven"<br />
(veel te snel = VTS, hard remmen = HR)<br />
(te snel = TS, lichtjes remmen = LR)<br />
(goed = G, niets doen = ND)<br />
(te traag = TT, gas bijgeven = GB)<br />
We kunnen al deze regels samenvoegen in een regelmatrix.<br />
VTS<br />
TS<br />
R =<br />
G<br />
TT<br />
1 0 0 0<br />
0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
1<br />
0<br />
0<br />
0<br />
1<br />
HR LR ND GB<br />
Als de werkelijke snelheid gekend is, kan bepaald worden in welke mate VTS, TS, G, en TT waar<br />
zijn. Neem bijvoorbeeld:<br />
"Werkelijke snelheid" = 0/VTS + 0.4/TS + 0.6/G + 0/TT<br />
Volgens de inferentieregel zal dan LR voor 40% en ND voor 60% van toepassing zijn zodat:<br />
"Werkelijke actie" = 0/HR + 0.4/LR + 0.6/ND + 0/GB<br />
In bovenstaand voorbeeld is "de werkelijke snelheid" een fuzzy-set over de linguïstische<br />
ingangsvariabele. "De werkelijke actie", het resultaat van de inferentieregel, is een fuzzy-set over de<br />
linguïstische uitgangsvariabelen. Algemeen geldt:<br />
Gegeven een set A' en een relatie R, dan wordt de overeenkomstige uitgangsset B':<br />
B = A R = A A ∗ B<br />
waarbij de relatie R overeenstemt met "Indien A dan B".<br />
Baeten J.<br />
- 1.13 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
De operator ° stelt het maximum-minimum produkt voor. De lidmaatschapsfunctie van de<br />
uitgangsset B' wordt gegeven door:<br />
µ B (v) = max min [µ A (u), µ R (u, v)]<br />
We nemen eerst het minimum over de ingangsvariabelen u en vervolgens het maximum over de<br />
kolommen in de (resterende) matrix. Laten we dit verduidelijken met het bovenstaand voorbeeld.<br />
Het verband min [µ A (u), µ R (u, v)] wordt:<br />
min(0,1) min(0,0) min(0,0) min(0,0)<br />
min(.4,0) min(.4,1) min(.4,0) min(.4,0)<br />
= =<br />
min(.6,0) min(.6,0) min(.6,1) min(.6,0)<br />
min(0,0) min(0,0) min(0,0) min(0,1)<br />
0 0 0 0<br />
0 .4 0 0<br />
0 0 .6 0<br />
0 0 0 0<br />
HR LR ND GB<br />
VTS<br />
TS<br />
G<br />
TT<br />
en<br />
µ B (v) = max min [µ A (u), µ R (u, v)]<br />
wordt:<br />
µ (v) =<br />
B'<br />
0 0 0 0<br />
0 .4 0 0<br />
max max max max = 0/HR + 0.4/LR + 0.6/ND + 0/GB<br />
0 0 .6 0<br />
0 0 0 0<br />
In dit voorbeeld is het resultaat van het max-min produkt evident. Nemen we daarom eens een iets<br />
uitgebreidere regelmatrix opgebouwd uit de sets A en B:<br />
zodat<br />
A = 0/1 + .2/2 + .5/3 + 1/4<br />
B = 1/a + .8/b + .4/c + 0/d<br />
R =<br />
0 0 0 0<br />
.2<br />
.5<br />
1<br />
.2<br />
.5<br />
.8<br />
.2<br />
.4<br />
.4<br />
0<br />
0<br />
0<br />
a b c d<br />
1<br />
2<br />
3<br />
4<br />
Neem als set A' = 0/1 + .3/2 + .6/3 + .7/4<br />
Baeten J.<br />
- 1.14 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Het verband min [µ A (u), µ R (u, v)] wordt:<br />
min(0,0) min(0,0) min(0,0) min(0,0)<br />
min(.3,.2) min(.3,.2) min(.3,..2) min(.3,0)<br />
= =<br />
min(.6,.5) min(.6,.5) min(.6,.4) min(.6,0)<br />
min(.7,1) min(.7,.8) min(.7,.4) min(.7,0)<br />
0 0 0 0<br />
.2 .2 .2 0<br />
.5 .5 .4 0<br />
.7 .7 .4 0<br />
µ B (v) = max min [µ A (u), µ R (u, v)]<br />
wordt hier<br />
µ (v) =<br />
B'<br />
0 0 0 0<br />
.2 .2 .2 0<br />
max max max max = .7/a + .7/b + 0.4/c + 0/d<br />
.5 .5 .4 0<br />
.7 .7 .4 0<br />
Merk op dat de bovenstaande regelmatrix of regel "indien A dan B" nooit van toepassing zal zijn<br />
voor de waarde '1' en bijgevolg nooit de waarde 'd' zal aansturen. Dit komt ook tot uiting bij de regel<br />
"indien warm, dan verwarming dicht". Deze regel vertelt niets over de actie die ondernomen moet<br />
worden indien het koud zou zijn. Wel kunnen we uit deze regel door inferentie bepalen wat we<br />
zouden ondernemen indien het niet echt warm is, maar slechts een beetje warm, laten we zeggen<br />
voor 30% warm. In dit geval zegt de inferentieregel dat we de verwarming voor 30% dicht moeten<br />
zetten. Deze redenering komt overeen met de minimum-operator. Indien er nog een tweede regel<br />
van toepassing zou zijn op de uitgang "dicht" en deze regel zou voor 50% waar zijn. Dan moeten we<br />
kiezen tussen 30% of 50% als regelwaarde voor "dicht". We zullen de sterkste actie weerhouden, dit<br />
wil zeggen dat de regel die het meest van toepassing is, toegepast wordt. We nemen bijgevolg het<br />
maximum van de twee aangeboden waarden voor eenzelfde uitgang. De combinatie van de twee<br />
redeneringen resulteert in max-min operator. Het uitgebreid voorbeeld uit hoofdstuk 2 verduidelijkt<br />
nog de algemene werkwijze.<br />
Sommige programma's werken niet rechtstreeks met de regelmatrix als weerspiegeling van de<br />
opgestelde regels. De verschillende regels worden alleen gebundeld in één enkele regel (met EN- en<br />
OF-operatoren) per mogelijke (linguïstische) variabele. Bijvoorbeeld:<br />
Indien (A en B) of (C en D) of (A en niet D), dan actie 1.<br />
De EN-operator stemt overeen met een minimum, de OF-operator met het maximum. Zo krijgen we<br />
weer het max-min-produkt.<br />
Baeten J.<br />
- 1.15 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
1.5 Het fuzzy regelalgoritme<br />
Het geheel van logische stuurregels is het fuzzy-regelalgoritme. Het algoritme bepaalt het gedrag<br />
van de fuzzy-regelaar.<br />
Een fuzzy-regelaar moet een niet-fuzzy ingang kunnen verwerken en omvormen tot een fuzzy-set.<br />
Dit gebeurt in de fuzzyficatiestap. Een fuzzy-regelaar moet tevens een niet-fuzzy uitgang kunnen<br />
afleveren. Dit gebeurt bij de defuzzyficatiestap. Het hart van de fuzzy-regelaar vormt de schakel<br />
tussen de fuzzy ingangsset en de fuzzy uitgangsset en bestaat uit een opsomming van de regels of<br />
uit een regelmatrix. In het eerste geval dienen de regels iteratief toegepast te worden waarbij 'en' en<br />
'of' overeenstemmen met het minimum en het maximum van de betreffende waarheidsgraden. In<br />
het tweede geval wordt de inferentieregel toegepast om de uitgangsset te bekomen volgens het<br />
max-min produkt beschreven in de vorige paragraaf.<br />
De fuzzy-regelaar bestaat dus uit drie onderdelen zoals weergegeven in figuur 1.16.<br />
Ingang<br />
Fuzzyficatie<br />
Regelmatrix R<br />
of<br />
Opsomming van regels<br />
Indien ... dan ...<br />
Indien ... dan ...<br />
Defuzzyficatie<br />
Uitgang<br />
Figuur 1.16: Blokschema vam de fuzzy-regelaar.<br />
De fuzzyficatiestap<br />
Elk meetresultaat wordt vergeleken met een vooraf gedefinieerde fuzzy ingangssetverzameling. De<br />
meting dient zich als een 'singleton' aan. Voor elke linguïstische variabele wordt nagegaan wat de<br />
lidmaatschapsgraad is voor de gegeven meting of ingangsvariabele.<br />
µ<br />
100<br />
NL NM NS ZO PS PM PL<br />
ijskoud koud koel goed warm heet zeer heet<br />
80<br />
60<br />
40<br />
20<br />
0<br />
5 10 15 20 25 30 35 40 45 50 55<br />
Ingang<br />
Temperatuur in °c<br />
Figuur 1.17: Voorbeeld fuzzyficatie.<br />
Figuur 1.17 geeft een voorbeeld van de fuzzyficatiestap. Een temperatuur van 15°C is voor 20%<br />
koel en voor 70% koud, de overige waarheidsgraden zijn 0.<br />
Baeten J.<br />
15°C = .7/koud + .2/koel<br />
- 1.16 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
Figuur 1.17 geeft ook de standaard afkortingen gebruikt bij de fuzzyficatiecurven voor het<br />
foutsignaal. Deze zijn:<br />
NL Negative Large NG Negatief Groot<br />
NM Negative Medium NM Negatief Middelgroot<br />
NS Negative Small NK Negatief Klein<br />
ZO Zero of ON Ongeveer Nul<br />
PS Positive Small PK Positief Klein<br />
PM Positive Medium PM Positief Middelgroot<br />
PL Positive Large PG Positief Groot<br />
Bijvoorbeeld: Een temperatuur van 36°C geeft:<br />
36°C = 0/NL + 0/NM + 0/NS + .87/ZO + .12/PS + 0/PM + 0/PL<br />
De lidmaatschapsfuncties hoeven niet symmetrisch te zijn en worden zelfs vaak scheef genomen.<br />
Zie figuur 1.18. Wel wordt er best gezorgd voor een overlapping waarbij bij een bepaalde ingang<br />
maximaal 2 en minimaal 1 fuzzyficatiecurve(s) een waarde opleveren verschillend van 0. Figuur<br />
1.19 geeft enkele foutieve lidmaatschapsfuncties.<br />
µ<br />
1<br />
NG NM NK ON PK PM PG<br />
0<br />
Figuur 1.18: Scheve lidmaatschapsfuncties.<br />
Onvoldoende werking<br />
Instabiele werking<br />
Figuur 1.19: Foutieve lidmaatschapsfuncties.<br />
De verschillende lidmaatschapsfuncties zijn met behulp van vergelijkingen in het procesbeheerssysteem<br />
opgenomen. Door de substitutie van de waarde van de ingangsvariabele (meting) in deze<br />
vergelijkingen wordt bepaald wat de lidmaatschapsgraad of het waarheidsgehalte is.<br />
De vereenvoudigde vormen van lidmaatschapskrommes maken het mogelijk ook in kleinere<br />
automatiseringssystemen met voldoende snelheid de fuzzyficatieberekeningen uit te voeren. Wil<br />
men gebruik maken van moeilijkere lidmaatschapskrommes dan moet speciale hard- en software<br />
voorhanden zijn. De programma's worden dan in Pascal of C geschreven en later gecompileerd.<br />
Baeten J.<br />
- 1.17 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
De regels<br />
Zoals eerder vermeld hangen de regels af van de toepassing en steunen ze vooral op ervaringsgegevens.<br />
De regels zijn van de vorm<br />
"Indien ..... , dan ...."<br />
"Indien ..... , dan ...."<br />
...<br />
Om de uitgang te vinden, wordt het max-min produkt toegepast op de regelmatrix of de minimumen<br />
maximum-operatoren volgens de EN en OF voorwaardenstructuur uit de regels.<br />
Tabel 1.4 geeft een voorbeeld van het relatieschema met twee ingangen en een uitgang. De ingangen<br />
zijn het foutsignaal e en de verandering van het foutsignaal de. De uitgang is u.<br />
Niet alle vakjes moeten opgevuld worden. Indien men bij een bepaalde combinatie van ingangen<br />
geen actie wens te ondernemen, kan het betreffende vakje open gelaten worden.<br />
de \ e NG NM NK NU PK PM PG<br />
NG UNG UNG UNG UNG UNM UNK UNU<br />
NM UNG UNG UNG UNM UNK UNU UPK<br />
NK UNG UNG UNM UNK UNU UPK UPM<br />
NU UNG UNM UNK UNU UPK UPM UPG<br />
PK UNM UNK UNU UPK UPM UPG UPG<br />
PM UNK UNU UPK UPM UPG UPG UPG<br />
PG UNU UPK UPM UPG UPG UPG UPG<br />
Tabel 1.4: Relatieschema overeenstemmend met een PD-regelaar.<br />
Enkele mogelijke regels uit tabel 1.4 zijn hieronder uitgeschreven.<br />
"Indien e = PG en de = NU, dan u = UPG.<br />
"Indien e = PM en de = NU, dan u = UPM.<br />
"Indien e = NU en de = PG, dan u = UPG.<br />
"Indien e = NU en de = NU, dan u = UNU.<br />
"Indien e = NG en de = PG, dan u = UNU.<br />
enz...<br />
Waarbij bijvoorbeeld UPG betekent "Uitgang Positief Groot"<br />
Is men overtuigd van de juistheid van sommige regels en twijfelt men aan andere regels dan is het<br />
mogelijk om de uitkomst van de ene regel t.o.v. de andere regel met een vermenigvuldigingsfactor<br />
op te waarderen. Dit gebeurt door het toekennen van gewichtsfactoren aan de regels. (Dit zal verder<br />
niet worden toegepast).<br />
Baeten J.<br />
- 1.18 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
De defuzzyficatiestap<br />
In de vorige paragraaf zijn de regels behandeld waarin de ervaringen en het gewenst regelgedrag<br />
zijn vastgelegd. Op basis van de momentele waarden van de verschillende ingangsvariabelen volgt<br />
na bewerking van deze regels per regel een waarheidsgehalte voor de linguïstische<br />
uitgangsvariabele. De defuzzyficatie is de berekening van een concreet uitgangssignaal op basis van<br />
de verschillende waarheidsgehaltes.<br />
µ<br />
100<br />
NG NK ON PK PG<br />
80<br />
60<br />
40<br />
20<br />
0<br />
-100 -40 0 40 100<br />
Uitgang<br />
Figuur 1.20: Lidmaatschapsfucnties voor de uitgang van de regelaar.<br />
De waarheidsgehaltes voor de uitgangsset kunnen op verschillende manieren in de lidmaatschapskrommes<br />
van de uitgangsvariabelen worden verwerkt. Men spreekt hierbij van inferentie<br />
(gevolgtrekking). De meest gebruikte methoden zijn de minimum-inferentie en de produktinferentie<br />
methoden. Bij minimum-inferentie wordt de lidmaatschapskromme begrensd (afgeknot)<br />
op de minimumwaarde zoals figuur 1.21.a aangeeft.<br />
set = 0.8/klein + 0.4/medium + 0/groot<br />
µ<br />
µ<br />
100<br />
Klein Medium Groot<br />
100<br />
Klein Medium Groot<br />
80<br />
80<br />
60<br />
60<br />
40<br />
40<br />
20<br />
20<br />
0<br />
0<br />
Uitgang<br />
a) b)<br />
Figuur 1.21: Voorbeelden van a) minimum-inferentie en b) produkt-inferentie.<br />
Uitgang<br />
Bij produkt inferentie wordt de lidmaatschapskromme begrensd op de waarde die volgt uit het<br />
produkt van de waarheidsgraad en de oorspronkelijke lidmaatschapsfunctie. Figuur 1.21.b geeft een<br />
voorbeeld.<br />
Stel dat de uitgangsset overeenkomstig de krommes uit figuur 1.20 gelijk is aan:<br />
u = 0/NG + /NK + .2/ON + .8/PK + .4/PG<br />
Volgens de minimum-inferentie regel geeft dit het resultaat uit figuur 1.22.<br />
Baeten J.<br />
- 1.19 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
µ<br />
100<br />
NG NK ON PK PG<br />
80<br />
60<br />
40<br />
20<br />
0<br />
-100 -40 0 40 100<br />
Uitgang<br />
Figuur 1.22: Voorbeeld: bepaling van de uitgang van de regelaar.<br />
Figuur 1.22 geeft weer dat een "kleine positieve" uitgang de hoogste waarheidsgraad kent. Een<br />
logische gevolgtrekking kan dus zijn dat de uitgang ongeveer gelijk moet zijn aan 40. Maar ook<br />
niets doen (ON) en sterk aansturen (PG) scoren. Deze waarden moeten in de berekening van de<br />
effectieve uitgang meegenomen worden.<br />
In feite is het totaal gearceerde oppervlak maatgevend voor de regelaarsuitgang. De meest gebruikte<br />
methode is dan ook de zwaartelijn- of de zwaartepuntmethode. De ligging van de zwaartelijn of het<br />
zwaartepunt van het totaal gearceerd oppervlak is de gezochte (enkelvoudige) uitgang.<br />
Nochtans, bij het toepassen van de zwaartepuntmethode ontstaan problemen aan de boven- en<br />
ondergrens van de uitgangsvariabele. Neem als voorbeeld de driehoeksvorm voor PG uit figuur<br />
1.22. Stel dat de lidmaatschapsgraad voor PG 100% is. Het zwaartepunt van de driehoek ligt dan<br />
echter niet in 100 maar rond 80. Nochtans waren alle andere lidmaatschapsgraden gelijk aan 0. Zie<br />
figuur 1.23.a.<br />
µ<br />
100<br />
PG<br />
µ<br />
100<br />
PG<br />
80<br />
80<br />
60<br />
60<br />
40<br />
40<br />
20<br />
20<br />
0<br />
40 100 Uitgang<br />
a) b)<br />
0<br />
40<br />
100<br />
140<br />
Uitgang<br />
Figuur 1.23: a) maximale uitgang is niet berijkbaar en b) correctie volgens uitgebreide zwaartelijnmethode.<br />
Dit wil zeggen dat de maximale uitgang (100) nooit bereikt kan worden. De uitgebreide zwaartepuntmethode<br />
corrigeert dit door de lidmaatschapskrommes die uiterst links en rechts liggen bij de<br />
zwaartelijnberekening te spiegelen. Zie figuur 1.23.b. Het zwaartepunt in figuur 1.23.b ligt nu wel<br />
in 100.<br />
De defuzzyficatie vergt veel rekentijd. Daarom is gezocht naar vereenvoudigingen die het<br />
regelresultaat nauwelijks beïnvloeden maar de berekeningen sneller laten verlopen. Bij de<br />
Baeten J.<br />
- 1.20 -
Automatisering: Fuzzy-regeltechniek<br />
<strong>Hoofdstuk</strong> 1: <strong>Basisbegrippen</strong><br />
zwaartelijn bepaling moet het oppervlak worden bepaald van de omhullende kromme van alle<br />
lidmaatschapscurves van de uitgangsvariabele. Dit oppervlak kent overlappingen. Door uit te gaan<br />
van de afzonderlijke figuren bij de berekening van het totaal oppervlak worden deze overlappingen<br />
dubbel gerekend. De berekening zelf is echter eenvoudiger en wordt de vereenvoudigde zwaartelijn<br />
methode genoemd.<br />
Een derde vereenvoudiging of aanpassing kan erin bestaan de lidmaatschapsfuncties voor de<br />
linguïstische uitgangsvariabelen te definiëren als singletons. De uitgang wordt dan bekomen door<br />
het gewogen gemiddelde te nemen van de fuzzy uitgangsset:<br />
uitgang = Σ i v i µ(v i )<br />
Σ i µ(v i )<br />
We noemen dit de singletonmethode.<br />
Nemen we terug het voorbeeld uit figuur 1.22. We herdefiniëren de uitgangsbegrippen als<br />
singletons. Zie figuur 1.24.<br />
µ<br />
100<br />
fuzzy set = 0/NG + 0/NK + .4/ON + .8/PK + .2/PG<br />
NG NK ON PK PG<br />
80<br />
60<br />
40<br />
20<br />
0<br />
-100 -40 0 40 100<br />
Figuur 1.24: Voorbeeld - Singletonmethode.<br />
Uitgang<br />
De uitgangswaarde of het zwaartepunt is hier dan:<br />
40 ∗ 0 + 80 ∗ 40 + 20 ∗ 100<br />
40 + 80 + 20<br />
= 37, 14%<br />
Het volgend hoofdstuk geeft een uitgewerkt voorbeeld waarbij de verschillende stappen van de<br />
fuzzy-regelaar uitvoerig aan bod komen.<br />
Baeten J.<br />
- 1.21 -