270 likes | 446 Views
Introduzione alla logica sfumata Introduction to Fuzzy Logic Insieme sfumato Fuzzy Set Dominio di definizione; definition space : x X R L’insieme sfumato è definito dalla f unzione di appartenenza; Fuzzy set defined by its membership function:
E N D
Introduzione alla logica sfumata Introduction to Fuzzy Logic Insieme sfumato Fuzzy Set Dominio di definizione; definition space: x X R L’insieme sfumato è definito dalla funzione di appartenenza; Fuzzy set defined by its membership function: mA(x) 0 mA(x) 1 ,x X Insieme vuoto; Empty set F:mf(x)=0 per xX ; Insieme universo; Univers set S: mS(x) =1 per xX Insieme unione; Union set: AB mAB(x)=max[mA(x);mB(x)] Insieme intersezione; Intersection set: AB mAB(x)=min[mA(x);mB(x)] Insieme complementare; complement set: A* di of A :mA(x)+mA*(x)=1= mS(x)
mF(x) mS(x)=1 1 mA*(x) mB(x) mA(x) x 0 mF(x)=0 10 • X=(0<x<10) • Fuzzy sets: • : mF(x)=0 per xX • S: mS(x)=1 per xX • A insieme sfumato generico mA(x) = 01 per xX • A* insieme complementare di A: mA*(x) =1-mA(x) • Vettore sfumato; Fuzzy vector: • C(x)= (c1,c2,…,cM) = (mc1(x), mc2(x),…, mcM(x))
Per Insiemi Booleani; For Boolean Sets: Principio di esclusione; Exclusion principle: AA* = S; AA* =F AA*: mAA*(x) = max[mA(x),mA*(x)]≤ 1 AA* : mAA*(x) = min[mA(x),mA*(x)] ≥0 Gli insiemi sfumati non godono del principio di esclusione; Exclusion principle is not valid for Fuzzy sets A A* S AA*F
Insiemi sfumati di insiemi sfumati (funzioni sfumate a più valori) Fuzzy sets of fuzzy sets: (multivalued fuzzy functions) y1 yj yM mC(B) C(xi,yj) mC(A) mB(yj) B A mA(xi) x1 xi xM
mC2(x) S=(1,1) (0,1) A (2/3,1/4) mC(x) (1,0) mC1(x) F=(0,0) Vettore sfumato c =(c1 , c2) nel piano delle sue funziomi di appartenenza Fuzzy vector c =(c1 , c2)in the plane of the membership functions
Segnali analogici Analog signals Antecedenti: variabili linguistiche a più valori (simboli) Antecedents: Multivalued linguistic variables (symbols) Quantizzatore sfumata Fuzzifier Elaboratore linguistico Linguistic processor Quantificatore Defuzzier Segnale analogico Analog signal variabile linguistica a più valori (simbolo): Conseguente Multivalued linguistic variable (symbol): Consequent Struttura di un sistema per l’ elaborazione sfumata Fuzzy set processor
Massimo degli ingressi Max of input Segnali analogici Analog signals Antecedenti: variabili linguistiche a più valori (simboli) Antecedents: Multivalued linguistic variables (symbols) Quantizzatore sfumato Fuzzifier Elaborazione linguistica Linguistic processing Classe riconosciuta Selected class grado di apparteneza:conseguente membership value: consequent Riconoscitore basato sulla logica sfumata Fuzzy recognition system
mi(x); i=0,1 (appartenenza alla variabile binaria) binario sfumato binario booleano 1 0 m0(x) m1(x) Vm T VM x X Fig. 2 Funzioni di appartenenza alla variabile binaria ( codificatore binario booleano e codificatore binario sfumato)
mai(x), i= P,M,G maG(x) maP(x) maM(x) 1 x 0 10 ,aG} = {aP ,aM A Funzioni di appartenenza di una grandezza sfumata a tre valori (piccolo:P, medio: M,grande: G) Membership functions of a three valued fuzzy variable (small:P,medium:M, large: G)
A aMP aM aG aP B cM cG cP cP bP cM bG cP cG cMG A={aMP,aP,xM,aG} C={cP,cM,cG,cMG} B={bP,bG} C= f(A,B) Esempio di trasformazione degli antecedenti Ae B nel conseguente C Example of the mapping of antecedents A,B into the conequent C
mI F1 P MP M G F2 B U O A A E A U E I F1 mF1 mU Elab. Ling. QS; F I…E mO argmax F2 mF2 mA QS;F mE V={I,U,O,A,E} F1={MP, P,M,G} F2={B,A} Riconoscimento di vocali con logica sfumata Fuzzy vowel recognition
A A 0 1 0 1 -1 -1 B B -1 -1 0 0 1 1 A 0 1 -1 1 -1 B 0 B= NOT(A) -1 -1 -1 -1 0 1 0 0 1 -1 0 0 -1 0 1 1 1 1 C= OR(A,B) C= AND(A,B) Trasformazioni di funzioni logiche a tre valori Basic three valued logic variable transformation
mi(y), mG(y) mP(y) mM(y) 1 AP AM • mP(y) = .8 mM(y) = .3 AG y mG(y) = .1 yP yM yG y= (Si yi Ai)/(Si Ai) con i = P,M,G Quantificazione con il metodo dei centroidi Method of the centroids for fuzzy quantification
Quantificatore Defuzzifier (MLP) x^ Quantizzatore sfumato Fuzzifier mx x e + _ Realizzazione del Quantificatore con un Percettrone Multistrato Implementation of the Defuzzifier using a Multi LayerPperceptron
c(m,n) l(i,j) class T T’ B S S argmax [mHI,mMH,mML,mLO] Linguistic Processor DCT L’ L Fuzzifier Input: Image luminance I(i,j) Preprocessed input pattern: DCT Transforms Input pattern: Total (T’)and low frequency (L’) energies: T’ = S |c(m,n)|-|c(0,0)|, m,n = 0-7 L’ = S |c(m,n)|-|c(0,0)|, m,n = 0-3 Antecedents:Fuzzy Total Energy: T={VS, SM, ML, LG} Fuzzy Low Frequency Energy: L={SM, LG} Conseguents: Visibility Block Classification: B={LO,ML,MH,HI} Classificatore sfumato delle trasformate DCT di blocchi d’ immagine Image DCT Block fuzzy Classifier
mVS, mSM, mML, mLG ML VS SM LG 1 T 0 100 mSM, mLG LG SM 1 L 0 100 Funzioni di appartenenza per la codifica sfumata di T ed L Membership functions used for T and L fuzzification
T VS SM ML LG L ML MH SM LO HI LG LO ML HI HI Trasformazione linguistica dell’ attivita’ dei blocchi DCT Linguistic transformation of the DCT blocks
c s q s me x + _ e Controllore sfumato Fuzzy controller y mv inseguitore (motore) me’ e’ D(e)/Dt mvp Dt Errore di posizione; position error: (e=x-y) Antecedenti; antecedents: Errore; error: e={N,Z,P}, Derivata dell’ errore; error derivative: e’={N,Z,P}, Velocita’ al tempo n-1; speed at time n-1: vp={N,Z,P} Conseguente; consequent: Velocita’; speed:v={N,Z,P} Controllore PID sfumato per motori Fuzzy PID motor controller
Apprendimento dei classificatori sfumati • Learning of the fuzzy classifiers • Metodo del gradiente per l’addestramento dei quantizzatori sfumati; Gradient method for the learning of the fuzzifier • Problema della derivazione delle funzioni discontinue; • issues of the differentation of discontinous functions) • max(x,a)/x = 1 if x>a else max(x,a)/x= 0 • b) Addestramentodi tutti i blocchi (CS, Trasf. Linguistico, QS) • Learning of all the blocks (Fuzzifier, Ling. mapping, Defuzzzifier) • Si utilizza l’architetturaANFIS; we use the ANFIS architecture • (Adaptive Network-basedFuzzy Inference System; • Sistema d’inferenza sfumato basato su una rete adattativa)
Introduzione all’architettura ANFIS,Introduction to the ANFIS architecture z z(x) z2 zP z1 zp z0= wr x0= -r/p x x1 x2 xp xP Problema: date P coppie di addestramento (xp,zp; p=1÷P) della z=z(x) Estrapolare (inferire) la z(x) come combinazione pesata di M interpolatori lineari : z=Siwi(pix+ri) Problem: P learning pairs (xp,zp; p=1÷P) of a z=z(x) are given.Infer the z(x) as a weighted linear combination of M linear interpolator: z=Siwi(pix+ri)
m m w w m m 1 1 1 1 xl xl w w 2 2 m m 2 2 x x QS F m m xm xm m m xh xh m m w w z z i i i i AND AND m m S S w w f f + + : : m m i i i i xl xl i i y y m m QS F xm xm m m w w m m 8 8 8 8 xh xh m m f f = = p p x x + + q q y y + + r r w w 9 9 i i i i i i i i 9 9 y y x x Architettura ANFIS; ANFIS architecture Quantif. Defuzzifier (OR)
+ + m1 w1 w1 L1(x) / A1 X m2 x w2 z w2 A2 L2(x) + / X m3 w3 w3 A3 L3(x) / X Quantizzatori sfumati Fuzzifiers x P N QuantificatoriDefuzzifiers Normalizzatori dei mintermini Minterm normalizers Generatori dei Mintermini Minterm generators IF (A1 AND A2) THEN (w1=m1m2) Li(x)= pix+ri w1= w1/(w1+ w2+w3) Dettagli dell’architettura ANFIS; details of the ANFIS architecture
Rappresentazione matematica di ANFIS Mathematical respresentation of ANFIS Quantizzatori sfumati; Fuzzifiers:mi(x)= exp((x-ci)/ai)2,… (i=1÷K) Generatore dei mintermini (AND aritmetico o logico); minterm generators: mhk =mh(x)mk(x),… (h;k=1÷K;mhk=mkh) Normalizzatore dei pesi; weights normalizer: wj= wi/(w1+…+ wi+…+wI),…. With i=1÷I, I=K(K-1)/2) Interpolatori lineari; Linear interpolators: Li(x)= pix+ri Quantificatore; Defuzzifier: z=Siwi(pix+ri) In the specific case z(x)= w1 L1(x)+w2L2(x)+w3L3(x)
Metodo: K funzioni di appartenenza degli ingressi; K membership functions Il numero dei tratti lineari che vengono pesati con pesi funzione dell’ingresso sono Numero d’interpolatori lineari; number of linear interpolators; I≤ K(K-1)/2 Nell’esempio; in the example K=2, I=3: z(x) ~ w1(x) L1(x)+w2(x)L2(x)+w3(x)L3(x) L2(x) L1(x) z z(x) L3(x) w1L1(x) w3L3(x) w2L2(x) x mi(x) m2(x) m3(x) m1(x) x
Parametri; parameters • Parametri dei quantizzatori sfumati; Fuzzifier parameters: ai,ci (i=1÷K) • Parametri delle rette interpolatrici; linear interpolator parameters: pi,ri (i=1÷K(K-1)/2)) • Coppie d’addestramento; training pairs: (xp,zp; p=1÷P) P>>K2 • Addestramento ibrido; Hybrid Learning: • pi e ri ottimizzati con metodo dei minimi quadrati LSE (sistema lineare sovradimensionato di P equazioni); pi and ri optimized using LSE method (overdimensioned linear system of P equations) • 2) ai e ci ottimizzati con il metodo del gradiente e retropropagazione dell’errore EBP per ogni coppia d’addestramento; ai and ci optimized using the gradient method and EBP for each training pair. • Riferimento: • Jyh-Shing Roger Jang: ANFIS: Adaptive_Network-Based Fuzzy Inference System, • IEEE Transactions on Systems, Man, and Cybernetics, Vol. 23 No. 3 1993 pp. 665-684