Sei sulla pagina 1di 52

Robotica e Soft Computing I

Robotica

1-1

Argomenti del corso


Definizioni

di fuzzy set e operazioni su

essi Relazioni tra fuzzy set e regole if-then Ragionamento Fuzzy e sistemi dinferenza Applicazioni alla Robotica

Robotica

1-2

Riferimento bibliografico

Robotica

1-3

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1-4

Insiemi
Definiti

per elencazione o per caratteristica:



{1, 2, 4,8,16}
{x | x = 2 i , 0 i 4}

Funzione

indicatrice di un sottoinsieme A di un insieme X


1A : X {0,1} " 1 se xA # $ 0 se altrimenti

Robotica

1-5

Fuzzy Sets
Insiemi

con contorni sfumati


A = Set of tall people Fuzzy set A
1.0 .9 .5

Crisp set A
1.0

Membership
function

510

Heights

510 62

Heights

Robotica

1-6

Funzioni di appartenenza (MF)


Caratteristiche

delle MF:
!tall in Europe

Misure soggettive Non funzioni probabilistiche


MFs .8 .5 .1 510
Robotica

!tall in the US !tall in NBA


Heights

1-7

Fuzzy Sets
Un

fuzzy set A in X espresso come un insieme di coppie ordinate:


A = {(x, A (x)) | x X }

Fuzzy set

Membership function (MF)

Universo del discorso

Robotica

1-8

Fuzzy Sets con Universi Discreti

Fuzzy set C = una citt in cui desiderabile vivere X = {SF, Boston, LA} (discreto e non ordinato) C = {(SF, 0.9), (Boston, 0.8), (LA, 0.6)} Fuzzy set A = un certo numero di figli X = {0, 1, 2, 3, 4, 5, 6} (discreto) A = {(0, .1), (1, .3), (2, .7), (3, 1), (4, .6), (5, .2), (6, .1)}

Robotica

1-9

Fuzzy Sets con Universi Continui


Fuzzy

set B = circa 50 anni di et

X = Set continuo di interi positivi B = {(x, mB(x)) | x in X}


B(x) =
1 x 50 1+ 10
2

Robotica

1 - 10

Notazione alternativa
Un

fuzzy set pu essere denotato come segue:


X discreto X continuous

A=

xi X

( xi ) / xi

A = A( x) / x
X

Attenzione: S e lintegrale indicano lunione dei gradi di appartenenza; / un marker e non indica una divisione.

Robotica

1 - 11

Partizioni Fuzzy
Partizioni

fuzzy formate dai valori linguistici young, middle aged, old:

Robotica

1 - 12

Altre definizioni
Support Core Normality Crossover

points Fuzzy singleton a-cut, strong a-cut

Convexity Fuzzy numbers Bandwidth Symmetricity Open left or right, closed

Robotica

1 - 13

Terminologia
MF 1 .5 a
0

Core Crossover points a - cut Support

Robotica

1 - 14

Convessit dei Fuzzy Sets

Un fuzzy set A convesso se per ogni l in [0, 1]:

A ( x1 + ( 1 ) x 2 ) min( A ( x1 ), A ( x 2 ))
Altern.: A convesso se tutti gli a-cuts sono convessi.

Robotica

1 - 15

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1 - 16

Operazioni sui Fuzzy Sets


Sottoinsieme:

A B A B
Complemento:

A = X A A ( x ) = 1 A ( x )
Unione:

C = A B c ( x ) = max( A ( x ), B ( x )) = A ( x ) B ( x )
Intersezione:

C = A B c ( x ) = min( A ( x ), B ( x )) = A ( x ) B ( x )
Robotica 1 - 17

Esempi

Robotica

1 - 18

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1 - 19

Formulazione delle MF
Triangolare Trapezoidale Gaussiana
trimf ( x ; a , b , c ) = max min
x a c x , , 0 b a c b

d x x a trapmf ( x ; a , b , c , d ) = max min , 1, , 0 b a d c


1 x c 2
2

gaussmf ( x ; a , b , c ) = e
gbellmf ( x ; a , b , c ) =

Campana generaliz.:

x c 1+ b

2b

Robotica

1 - 20

Esempi

disp_mf.m
Robotica 1 - 21

Altre MF
Sigmoidale: sigmf ( x ; a , b , c ) = 1 + e a ( x c )
1

Extensions:
Differenza di due MF sig.

Prodotto di due MF sig. disp_sig.m


Robotica 1 - 22

Altre MF
L-R:
c x FL , x < c LR ( x ; c , , ) = F x c , x c R

Esempio:
c=65 a=60 b=10

FL ( x ) = max( 0 , 1 x )
2

F R ( x ) = exp( x )

c=25 a=10 b=40

Robotica

1 - 23

Estensione cilindrica
Fuzzy set base Estensione cilindrica

Robotica

1 - 24

Proiezione di MF 2D
MF bidimensionale Proiezione in X Proiezione in Y

R ( x, y )
Robotica

A( x) = max R ( x, y )
y

B( y) = max R ( x , y )
x
1 - 25

Esempi di MF 2D

Robotica

1 - 26

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1 - 27

Operazioni estese tra fuzzy set


Le

definizioni classiche di unione, intersezioni e complemento posseggono propriet assiomatiche rigorose Possono essere definite in altri modi pur mantenendo consistenza e ragionevolezza rispetto alle operazioni sugli insiemi
Robotica 1 - 28

Complemento Fuzzy
Vincoli

generali:

Estremi: N(0)=1 e N(1) = 0 Monotonicit: N(a) > N(b) se a < b Involuzione: N(N(a) = a
Due

tipi of complementi fuzzy :


1 a N s (a ) = 1 + sa

Complemento di Sugeno :

Robotica

N w ( a ) = (1 a w )1/ w Complemento di Yager :

1 - 29

Complemento Fuzzy
Complemento di Sugeno:

1 a N s (a ) = 1 + sa

Complemento di Yager:

N w ( a ) = (1 a w )1/ w

Robotica

1 - 30

Intersezione Fuzzy : T-norm


Vincoli

di base:

Estremi: T(0, 0) = 0, T(a, 1) = T(1, a) = a Monotonicit: T(a, b) < T(c, d) se a<c e b<d Commutativit: T(a, b) = T(b, a) Associativit: T(a, T(b, c)) = T(T(a, b), c)
Quattro

esempi:

Robotica

Minimo: Tm(a, b) Prodotto Algebrico : Ta(a, b) Prodotto Bounded : Tb(a, b) Prodotto Drastico : Td(a, b)

1 - 31

Esempi di T-norm
Minimo: Tm(a, b) Prodotto Algebrico: Ta(a, b) Prodotto Bounded: Tb(a, b) Prodotto Drastico: Td(a, b)

Robotica

1 - 32

Unione Fuzzy : T-conorm o S-norm


Vincoli

di base:

Estremi: S(1, 1) = 1, S(a, 0) = S(0, a) = a Monotonicit: S(a, b) < S(c, d) se a<c e b<d Commutativit: S(a, b) = S(b, a) Associativit: S(a, S(b, c)) = S(S(a, b), c)
Quattro

esempi:

Robotica

Massimo: Sm(a, b) Somma Algebrica: Sa(a, b) Somma Bounded: Sb(a, b) Somma Drastica: Sd(a, b)

1 - 33

Esempi di T-conorm o S-norm


Massimo: Sm(a, b) Somma Algebrica: Sa(a, b) Somma Bounded: Sb(a, b) Somma Drastica: Sd(a, b)

Robotica

1 - 34

Leggi di DeMorgan generalizzate


T-norm

e T-conorm sono duali e verificano la generalizzazione delle leggi di DeMorgan:


T(a, b) = N(S(N(a), N(b))) S(a, b) = N(T(N(a), N(b)))
Tm(a, b) Ta(a, b) Tb(a, b) Td(a, b) Sm(a, b) Sa(a, b) Sb(a, b) Sd(a, b)
1 - 35

Robotica

T-norm e S-norm parametrizzate


T-norm

e T-conorm duali parametrizzate sono state proposte da diversi ricercatori:


Yager Schweizer and Sklar Dubois and Prade Hamacher Frank Sugeno

Robotica

1 - 36

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1 - 37

Principio di estensione
A un fuzzy set su X :

A = A ( x1 ) / x1 + A ( x2 ) / x2 ++ A ( xn ) / xn
Limmagine di A sotto f( ) un fuzzy set B:

B = A (x1 ) / y1 + A (x2 ) / y2 ++ A (xn ) / yn


dove yi = f(xi), i = 1 to n. Se f( ) una funzione a pi valori:

B ( y ) = max A ( x )
x= f
1

( y)

Robotica

1 - 38

Principio di estensione

$ max[min (x )] & f 1 ( y) i Ai i B (y) = % & 0 '

se se

f 1 (y) altrim

Robotica

1 - 39

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1 - 40

Relazioni Fuzzy
Una

relazione fuzzy R una MF 2D:


R = {(( x, y ), R ( x, y ))|( x , y ) X Y}

Esempi:

x vicino ad y (x e y sono numeri) x dipende da y (x e y sono eventi) x e y sono simili (x e y sono oggetti) Se x grande, allora y piccola (x una osservazione e y una azione corrispondente)
Robotica 1 - 41

Composizione Max-Min
La

composizione max-min di due relazioni fuzzy R1 (definita su X e Y) e R2 (definita su Y e Z) R1 R2 ( x, z ) = [ R1 ( x, y ) R2 ( y, z )] y Propriet:


Associativit: R (S T ) = ( R S ) T Distributivit sullunione:
R ( S T ) = ( R S ) ( R T )

Distributivit debole sullintersezione:


R ( S T ) ( R S ) ( R T )
Robotica

Monotonicit:

S T (R S) (RT)

1 - 42

Composizione Max-Star
Composizione
1 2

Max-product :
y
1 2

R R ( x, z ) = [ R ( x, y ) R ( y, z )]
In

generale, possiamo avere una composizione max-*:


R R ( x, z ) = [ R ( x, y )* R ( y, z )]
1 2

dove * una T-norm.


Robotica 1 - 43

Argomenti
Introduzione Definizioni e terminologia Operazioni sui fuzzy set Funzioni di appartenenza Operazioni estese sui fuzzy set

Principio

di estensione Relazioni fuzzy Regole fuzzy if-then


Robotica 1 - 44

Variabili Linguistiche

Robotica

Ad una variabile numerica si assegnano valori numerici: Age = 65 Ad una variabile linguistica si assegnano valori linguistici: Age is old Un valore linguistico un fuzzy set Tutti i valori linguistici formano il term set: T(age) = {young, not young, very young, ... middle aged, not middle aged, ... old, not old, very old, more or less old, ... not very yound and not very old, ...} 1 - 45

Valori e termini linguistici

Robotica

1 - 46

Operazioni
Concentrazione: Dilatazione: Intensificazione di contrasto:
CON ( A) = A2

DIL( A) = A0.5
0 A ( x ) 0.5 2 A2 , INT ( A) = 2( A)2 , 0.5 A ( x ) 1

Robotica

1 - 47

Regole Fuzzy If-Then


Formato Esempi:

generale:

If x is A then y is B If pressure is high, then volume is small. If the road is slippery, then driving is dangerous. If a tomato is red, then it is ripe. If the speed is high, then apply the brake a little.
Robotica 1 - 48

Regole Fuzzy If-Then


Due modi di interpretare If x is A then y is B:
A coupled with B A entails B

A
Robotica

A
1 - 49

Regole Fuzzy If-Then


Due

interpretazioni di If x is A then y is

B:
A coupled with B: (A and B)
R = A B = A B = A ( x ) B ( y )|( x, y )
~

A entails B: (not A or B)
Dal calcolo proposizionale

Robotica

1 - 50

Regole Fuzzy If-Then


Funzione di implicazione fuzzy : R ( x, y ) = f ( A ( x ), B ( y )) = f ( a, b)
A coupled with B

Robotica

1 - 51

Regole Fuzzy If-Then


A entails B

Robotica

1 - 52