Escolar Documentos
Profissional Documentos
Cultura Documentos
(6.1)
Esta funo caracterstica A de x, discrimina todos os elementos de um determinado
conjunto universal, tambm designado por universo do discurso, em dois grupos: os
que pertencem a A (tm a caracterstica C
A
=1) e os que no pertencem a A (tm a
caracterstica C
A
=0). Pode pois dizer-se que C
A
uma aplicao de U em {0,1}:
A
C : U {0,1} (6.2)
Esta classificao dicotmica, embora exacta, poder no ser das mais apropriadas para
lidar com certo tipo de fenmenos. Considere-se assim o exemplo dado atrs para
classificar o ambiente da esplanada em funo da temperatura. Pode efectuar-se uma
classificao, do tipo anterior, do modo seguinte:
Temperatura (T) Ambiente
T < 10 C muito frio
10 T < 17 C frio
17 T < 24 C tpido
24 T < 30 C quente
T 30 C muito quente
Sabe-se assim, de uma forma exacta, que a caracterstica do ambiente tpido se a
temperatura se encontrar compreendida entre 17 e 24 C, e no ser tpido caso
contrrio. E que acontece quando a temperatura, que estava a descer de uma forma
muito lenta, passar de 17.01 C para 16.99 C? Ser que o ambiente passou bruscamente
de tpido a frio? De acordo com a classificao dada de facto assim aconteceu. Mas ser
esta a forma mais correcta de classificar?
Para resolver situaes semelhantes deste exemplo faz-se uma extenso da noo
convencional de conjunto, definindo uma classe de objectos em que a transio de uma
classe para outra gradual, em vez de ser abrupta. assim introduzido o conceito de
funo de pertena, definido como se segue:
Seja U o conjunto universal ou universo do discurso. Define-se funo de pertena de
um conjunto A,
A
, pela aplicao
A
: U {0,1} (6.3)
em que {0, 1}.
Nestes termos, a classificao do ambiente da esplanada apresentado atrs pode por
exemplo ser feita com 5 funes de pertena, como exemplificado na Fig. 6.1
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 162 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
Define-se suporte de um conjunto difuso como o conjunto convencional dos pontos
com grau de pertena em A no nulo. Formalmente conjunto
A
{ U| ( ) 0} x x > (6.4)
Fig. 6.1 Funes de pertena para a temperatura ambiente
Define-se corte- fraco de um conjunto difuso A, ou simplesmente corte-, como
A
A { U ( ) } x x
= (6.5)
Define-se corte- forte de um conjunto difuso A, como sendo
A
A { U ( ) } x x
= > (6.6)
Se a funo de pertena for contnua os cortes fraco e forte so coincidentes.
Define-se altura de um conjunto difuso A pela expresso
A
(A) {sup ( ) } H x = > (6.7)
Um conjunto difuso diz-se normalizado ou regular se H(A) = 1.
Um conjunto difuso diz-se convexo quando o seu suporte um subconjunto dos reais e
verifica
A A A
[ , ] , ( ) min( ( ), ( )) x a b x a b (6.8)
Observando o conjunto difuso de valores do ambiente tpido do exemplo anterior,
conclui-se que normalizado e convexo.
Chama-se nmero difuso a um conjunto difuso normalizado e convexo, definido em ,
com uma funo de pertena contnua ou contnua por troos. D-se um exemplo,
relacionado com o que j foi abordado na introduo, da vizinhana de uma funo em
torno de zero. Introduza-se o conceito de nmero prximo de zero atravs de uma
funo de pertena, por exemplo,
zero 2
1
( )
10 1
x
x
=
+
(6.9)
temperatura
frio muito
frio
tpido quente
muito
quente
ambiente
0
0.2
0.4
0.6
0.8
1
0 5 10 15 20 25 30 35 40C
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 163
cuja representao grfica se encontra na Fig. 6.2. O conjunto difuso dos nmeros
prximos de zero caracterizado pela funo de pertena (6.9). O nmero difuso
aproximadamente zero poder ser caracterizado pela mesma funo de pertena.
Fig. 6.2 Funo de pertena para o conjunto difuso
dos nmeros reais prximos de zero.
Chama-se singular difuso (fuzzy singleton) a um conjunto difuso cujo suporte um
nico ponto de U. Se A um singular difuso cujo suporte o ponto x
0
, ento A
representado por
A 0 0
A ( ) / x x = (6.10)
Um conjunto difuso A pode ser considerado como sendo a unio dos seus singulares
constituintes. Nesta conformidade, num universo de discurso discreto X={x
1
, x
2
, ,x
n
}
o conjunto pode representar-se por
A
1
A ( ) /
n
i i
i
x x
=
=
(6.11)
6.2.2.2. Propriedades fundamentais
H dois princpios bsicos na teoria dos conjuntos difusos: o princpio da resoluo e o
princpio da extenso.
O princpio da resoluo, ou da representao, afirma o seguinte: um conjunto difuso
pode ser encarado como sendo a unio dos seus cortes-:
| ) ( | 0,1 0,1
A A A
= =
(6.12)
O princpio da extenso permite a generalizao de conceitos matemticos convencio-
nais aos conjuntos difusos. Seja f uma funo contnua tal que f: XY. Pelo princpio
da extenso, ao conjunto difuso A definido em X feito corresponder um conjunto
difuso f(A) tal que
A
(x)
-3 -2 -1 0 1 2 3
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
x
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 164 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
(A)
(A) ( ) / ( )
f
Y
f x f x =
(6.13)
(A)
( )
( ) sup ( )
f A
y f x
y x
=
= (6.14)
Este princpio est na base da aritmtica difusa, cujas operaes foram generalizadas a
nmeros difusos, por meio da aplicao de (6.13) e de (6.14).
Fig. 6.3 Adio de dois nmeros difusos
6.2.3. Lgica difusa
A designao lgica difusa utilizada em dois contextos diferentes:
Um no sentido lato, designando os conceitos e tcnicas referentes aos conjuntos e
aos sistemas difusos (exemplo: controlador de lgica difusa).
Outro em sentido restrito, referindo-se s relaes entre grandezas difusas.
6.2.3.1. Variveis
De entre as diversas variveis tipo que podem ser definidas, sero considerados apenas
duas: as variveis difusa e as variveis lingusticas.
Variveis difusas so aquelas cujos valores so nomes de conjuntos difusos,
associados aos seus possveis valores. No exemplo apresentado na pg. 157 a
temperatura, associada aos valores desde muito frio at muito quente um exemplo
de uma varivel difusa.
Variveis lingusticas so aquelas cujos valores so nomes de conjuntos difusos,
associados a expresses que permitem determin-las. Tomando o exemplo da pg. 157,
poder definir-se uma varivel lingustica TpAmbiente quente mas no muito quente.
De um modo mais formal, define-se varivel lingustica x pelo conjunto
( , U, , ) x L G S = (6.15)
em que L o conjunto de termos lingusticos de x; cada um destes termos representado
por um conjunto definido no universo U. G representa uma gramtica para a
manipulao sintctica e S uma regra semntica que associa a cada varivel difusa uma
varivel lingustica.
| | | | | | | |
0 1 2 3 4 5 6 7
2 + 3 = 5
~ ~ ~
1
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 165
6.2.3.2. Operaes
Nos conjuntos convencionais definem-se as seguintes as operaes fundamentais ou
operaes bsicas: unio, interseco e complemento:
Unio A B { U| A B} x x x = (6.16)
Interseco A B { U| A B} x x x = (6.17)
Complemento A { U| A} x x = (6.18)
Com conjuntos difusos definem-se operaes semelhantes a estas, mas em termos de
funo de pertena. Considerem-se dois conjuntos difusos A e B, definidos em U, com
funes de pertena
A
e
B
.
A funo de pertena da unio ou disjuno de A com B definida ponto a ponto para
todos os elementos xU tais que
A B A B
( ) = max{ ( ), ( )} x x x
(6.19)
Fig. 6.4 Operaes bsicas com conjuntos difusos.
De modo anlogo, a funo de pertena da interseco ou conjuno de A com B
definida ponto a ponto para todos os elementos xU tais que
A B A B
( ) = min{ ( ), ( )} x x x
(6.20)
x 0 50 100
0
0.2
0.4
0.6
0.8
1
Conjuntos difusos A e B
g
r
a
u
d
e
p
e
r
t
e
n
a
0 50 100
0
0.2
0.4
0.6
0.8
1
Unio de A e B
0 50 100
0
0.2
0.4
0.6
0.8
1
Interseco de A e B
x
0 50 100
0
0.2
0.4
0.6
0.8
1
Complemento de A
g
r
a
u
d
e
p
e
r
t
e
n
a
g
r
a
u
d
e
p
e
r
t
e
n
a
g
r
a
u
d
e
p
e
r
t
e
n
a
x x
A
B
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 166 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
A funo de pertena do complemento de A definida ponto a ponto para todos os
elementos xU tais que
A A
( ) = 1- ( ) x x (6.21)
Na Fig. 6.4 faz-se uma representao grfica das operaes que se acabam de
apresentar.
Aos operadores lgicos unio e interseco, uma vez que estabelecem uma ligao entre
conjuntos difusos, d-se por vezes o nome genrico de conectivas.
O produto cartesiano de n conjuntos difusos A
1
, A
2
, A
n
, definidos respectivamente
em U
1
, U
2
, , U
n
, o conjunto difuso definido no espao cartesiano U
1
U
2
U
n
,
com a seguinte funo de pertena:
1 1 n
A A A
( ) = min{ ( ), , ( )}
n
A
x x x
(6.22)
A forma de definir os operadores lgicos OU difuso, E difuso e Complemento
difuso so as que foram propostas por Zadeh, mas no so as nicas. Os operadores
lgicos interseco e conjuno so definidos de uma forma bastante mais genrica
atravs dos chamados operadores triangulares. Definem-se dois operadores
triangulares, a norma-T, extenso da interseco, e a norma-S, extenso da
conjuno.
Norma-T Seja x o elemento genrico do universo do discurso, A e B dois
conjuntos difusos e
A
(x) e
B
(x) duas funes de pertena para A e B respectivamente.
O conjunto C diz-se norma-T de A e B sse existir uma funo de pertena
C
(x) definida
do modo seguinte:
( ) ( ( ), ( ))
: [0,1] [0,1] [0,1]
C A B
x T x x
T
=
(6.23)
e goza das seguintes propriedades:
T
1
fronteira: T(0,0)=0 T(1,a)=T(a,1)=a
T
2
monotonia: T(a,b)T(c,d) sse a c bd
T
3
comutatividade: T(a,b)=T(b,a)
T
4
associatividade: T(a,T(b,c))=T(T(a,b),c)
A propriedade P
1
uma generalizao da propriedade anloga existente nos conjuntos
convencionais. Da propriedade P
2
conclui-se que a diminuio do grau de pertena de A
ou de B no pode produzir um aumento do grau de pertena da sua interseco. A
comutatividade da interseco diz que indiferente a ordem pela qual se combinam os
conjuntos. Finalmente a associatividade permite efectuar o agrupamento de conjuntos
emparelhando-os como se pretender.
A norma-T de x e y tambm representada por:
T( , ) ( , ) x y x y x y (6.24)
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 167
Norma-S Sejam
A
(x) e
B
(x) duas funes de pertena de dois conjuntos difusos
A e B respectivamente. O conjunto C diz-se norma-S de A e B sse existir uma funo de
pertena
C
(x) definida do modo seguinte:
( ) ( ( ), ( ))
: [0,1] [0,1] [0,1]
C A B
x S x x
S
=
(6.25)
e goza das seguintes propriedades:
S
1
fronteira: S(1,1)=1 S(a,0)=S(0,a)=a
S
2
monotonia: S(a,b)S(c,d) sse a c bd
S
3
comutatividade: S(a,b)=S(b,a)
S
4
associatividade: S(a,S(b,c))=S(S(a,b),c)
A norma-S de x e y tambm representada por:
S(x,y) = (x,y) = x y (6.26)
A norma-T est associada norma-S por meio da negao ou complemento:
( ( ) ( )) x y n n x n y = (6.27)
A relao (6.27) no mais do que uma das leis de Morgan.
Deixa-se ao cuidado do leitor verificar que a funo de pertena interseco, definida
por (6.20), obedece definio (6.23) propriedades T
1
a T
4
, e que a funo de pertena
unio, definida por (6.19), obedece definio (6.25) e goza das propriedades S
1
a S
4
.
H outras formas de definir as funes de pertena interseco e unio, dentro das
normas triangulares. A mais simples para a interseco, consiste em efectuar o produto
xy e para a unio, efectuar a operao x+yxy, designada por ou probabilstico.
6.2.3.3. Regras if-then
Viu-se que as funes de pertena so definidas por regras. Comparando com a
linguagem corrente, os elementos de um conjunto so equivalentes aos substantivos e os
operadores equivalentes aos verbos. H uma regra condicional, bastante conhecida das
linguagens de programao, que a if-then. Ela tem uma forma semelhante a
se x pertence a A ento y pertence a B
A primeira parte da regra, se x pertence a A designada antecedente ou permissa. A
2 parte, ento y pertence a B tem o nome de consequente ou concluso. Concretize-
se com um exemplo, a partir das temperaturas ambiente e do tipo de estao do ano.
se o ambiente est quente ento tempo de Vero
A caracterstica quente representada por um nmero entre 0 e 1 e portanto o
antecedente gera um nmero tambm compreendido entre 0 e 1. A palavra Vero um
conjunto difuso; o consequente atribui a uma varivel de sada (tempo) um conjunto
difuso (Vero).
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 168 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
6.2.4. Regras de inferncia
As regras de inferncia constituem o processo de estabelecer a relao entre as entradas
e as sadas de um sistema lgico. Esta relao, aplicao ou mapping fornece a base
a partir da qual podem ser tomadas decises. Este processo envolve os conceitos que se
apresentaram atrs: funes de pertena, operadores lgicos e regras if-then.
Vai dar-se um exemplo que permite fazer a previso aproximada da chuva numa certa
regio, tomando como base o valor da presso atmosfrica e a direco do vento. Este
exemplo muito simplista, pois uma boa previso dever ser baseada em mais variveis
de entrada. Os passos a seguir so os seguintes:
1. Escolha das variveis de entrada e de sada. Neste exemplo as variveis de
entrada sero a presso atmosfrica e a direco do vento. Esta escolha dever ser
feita de acordo com os conhecimentos meteorolgicos pr-existentes que se sabe
serem determinantes para o estado do tempo. Vai considerar-se para varivel de
sada a previso da quantidade de chuva.
2. Definio dos universos de discurso para as variveis de entrada. Neste
exemplo, tendo em conta conhecimentos meteorolgicos sabe-se que a presso
atmosfrica poder estar baixa, normal ou alta.
3. Definio das funes de pertena para as variveis consideradas (fuzificao
das entradas e das sadas). aqui que se vai dizer o que se entende por presso
baixa, normal ou alta, e o que vento Norte, Oeste ou outro. Neste exemplo
considerar-se-o apenas 3 funes de pertena para a variao da presso e 4 para
a direco do vento. Podero ser utilizadas funes do tipo gaussiano, como se
mostra na Fig. 6.5, ou de outro tipo, como no exemplo que se d adiante.
Fig. 6.5 Funes de pertena para a presso e para a direco do vento.
4. Escolha das conectivas a utilizar. Para este efeito devero ser definidos os tipos
de funes a utilizar para as funes de pertena da conjuno e da disjuno.
Neste exemplo escolhe-se para a interseco a funo mnimo(x,y) e para a unio a
funo mximo(x,y).
N
-100 0 100
presso / mBar
-180 -90 0 90 180
direco do vento /
O S
S E P0 P+ P
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 169
5. Escolha das regras de inferncia. neste ponto que se vo criar as variveis
difusas de sada, a partir de regras. Neste exemplo vai ser utilizado o conheci-
mento pr-existente sobre o fenmeno (consulta aos especialistas) para prever se
vai ou no haver chuva. Quando h apenas duas variveis de entrada comum
apresentarem-se as regras sob a forma de uma matriz. Se houvesse mais variveis
de entrada as regras poderiam ser apresentadas sob a forma de um array. No
caso deste exemplo pode construir-se a seguinte matriz, geradora das variveis
difusas SC, SC+, CH, CH+.
Estas variveis difusas de sada tm o seguinte significado:
SC+ tempo muito seco
SC tempo seco
CH tempo de chuva
CH+ tempo com muita chuva
A matriz apresentada uma forma compacta de apresentar as seguintes regras:
1. Se (if) a presso atmosfrica P- e (and) a direco do vento S, ento (then) o
tempo ir ser SC (tempo seco).
2. Se (if) a presso atmosfrica P- e (and) a direco do vento E, ento (then) o
tempo ir ser SC+ (tempo muito seco).
3. Se (if) a presso atmosfrica P0 e (and) a direco do vento S, ento (then) o
tempo ir ser CH (tempo chuvoso).
4. Se (if) a presso atmosfrica P0 e (and) a direco do vento E, ento (then) o
tempo ir ser SC (tempo seco).
H neste exemplo um total de 8 regras, que definem as 4 variveis difusas de sada
indicadas acima. No caso geral as regras no tero necessariamente que ser feitas apenas
com o operador and, podero ser mais complexas, em particular quando h mais que
duas entradas.
Ficam assim definidas, em termos de variveis lingusticas, as 4 possibilidades que o
tempo atmosfrico ir ter, em funo das medies efectuadas na presso e na direco
do vento. No caso de pretender dar esta informao de forma numrica ou atravs de um
ponteiro sobre uma escala, torna-se necessrio efectuar a agregao das variveis
lingusticas de sada assim obtidas e converter a agregao num valor numrico atravs
da operao inversa da fuzificao, que designada por desfuzificao. Estes dois
pontos sero abordados no exemplo seguinte, do controlo de um satlite.
and direco do vento
presso atmosf. N (norte) S (sul) E (este) O (oeste)
P- - SC SC+ -
P0 - CH SC CH
P+ CH CH+ - CH+
. . .
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 170 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
6.2.5. Projecto de um controlador difuso
O projecto de um controlador difuso tem passos muito semelhantes aos anteriores. Vai
admitir-se que o controlador ser inserido numa cadeia de controlo convencional, com
realimentao negativa, como se mostra na Fig. 6.6.
Fig. 6.6 Cadeia de controlo difuso.
Os passos a considerar no projecto do controlador so os seguintes:
1. Escolha das variveis de entrada e de sada.
2. Definio dos universos de discurso para as variveis de entrada e de sada.
3. Definio das funes de pertena para os termos lingusticos das variveis
consideradas (fuzificao das entradas e das sadas).
4. Construo das regras de inferncia a utilizar.
5. Escolha das conectivas a utilizar.
6. Agregao de todas as regras de sada.
7. Desfuzificao da sada.
Vai concretizar-se atravs do exemplo dado no Cap.2: Pretende-se controlar a posio
angular de um satlite, obrigando-o a rodar em torno de um eixo por meio de um par
de propulsores, como indicado na Fig. 6.7. Considera-se apenas este grau de liberdade.
1. Escolha das variveis de entrada e de sada:
Viu-se na seco 2.4.1, que utilizando na cadeia de controlo apenas a varivel
posio angular, o satlite ficava a oscilar em torno da referncia. Vai ento utilizar-
-se, alm da posio, o valor da velocidade angular,
=x
2
[0.2,+0.2] rad/s.
3. Definio das funes de pertena:
A definio das funes de pertena feita de acordo com a sensibilidade que o
especialista tem em relao ao problema especfico em causa. Mesmo assim
recomendado que se faam vrias hipteses, se testem os resultados e se escolha a
que conduzir a melhores resultados. Uma vez que se est a apresentar um exemplo,
vai comear-se com um nmero muito pequeno de funes de pertena e testar o
resultado. Na prtica corrente ter entre 3 e 11 funes de pertena por varivel.
Escolhemos 3 funes de pertena para a posio e outras 3 para a velocidade:
Posio: Velocidade:
RE rodado esquerda VE velocidade para a esquerda
R0 centrado V0 velocidade nula
RD rodado direita VD velocidade para a direita
Podem escolher-se as funes de pertena do tipo triangular, como indicado na
Fig. 6.8. Depois de efectuados os testes podem escolher-se outros tipos de funes de
pertena, nomeadamente funes do tipo gaussiano, e comparar os resultados. Em
grande parte dos casos no haver melhoria significativa no desempenho.
Para a velocidade angular segue-se uma estratgia anloga que se utilizou com a
posio.
antena
u
agregao
0.07
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 175
Modelo Simulink utilizado para implementar o controlo difuso do satlite:
Modelo do satlite:
Resultados do controlo:
60 80 100 120 140 160 180 200
-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
0.4
0.5
referncia
posio
tempo / s
posio
angular
/ rad
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 176 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 177
6.3. Redes Neuronais
6.3.1. Conceitos e definies
6.3.1.1. A rede multicamada
Uma rede neuronal artificial, RNA, uma estrutura matemtica constituda por um
nmero finito de unidades individualizadas, tambm designadas por neurnios, orga-
nizados em camadas. A rede uma aplicao de um espao de entrada P num espao
de sada A.
A Fig. 6.11 representa a estrutura de uma RNA. O sinal de entrada, P, um vector de
dimenso
r
, aplicado entrada da rede. A entrada da rede contm r unidades,
dispostas numa camada. Cada unidade desta camada recebe directamente a respectiva
componente do sinal de entrada. A soma das entradas multiplicadas por coeficientes de
ponderao, no indicados na figura, qual adicionado um valor constante, aplicada
a cada uma das unidades da camada seguinte, designada por 1 camada, que origina
uma sada a
( ) a i = (6.28)
em que i designa a soma ponderada das entradas e do valor constante, e uma funo
suave crescente e limitada, designada por funo de activao
2
.
Fig. 6.11 Representao de uma rede neuronal artificial
2
D-se o nome de "funo suave" a uma funo contnua e indefinidamente diferencivel.
N de ordem
da camada
N de
unidades
1
2
i
n
n
-1
Entrada 1 camada
escondida
Camada
de sada
P
A
L
0 1 -1 L-1 L
r n
1
n
-1
n
n
L-1
n
L
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 178 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
A Fig.6.12 representa o detalhe de uma unidade de processamento, ou neurnio, e a
Fig.6.13 mostra um exemplo de uma funo de activao. De uma forma anloga ao que
se passa na 1 camada, a segunda camada recebe os sinais de sada de cada uma das
unidades da camada 1, tambm multiplicados por coeficientes de ponderao, e o
processo repete-se at se atingir a camada de sada.
Fig.6.12 Representao do clculo realizado pelo neurnio i da camada l
Na terminologia das RNA costume designar por camadas escondidas todas as que se
encontram entre a entrada e a camada de sada, no sendo a entrada contabilizada para
efeito de contagem do nmero de camadas, embora muitas vezes se lhe chame camada
de entrada. Assim, por exemplo, quando se referir uma rede de trs camadas, significa
que se trata de uma rede com duas camadas escondidas e uma camada de sada.
Fig.6.13 Exemplo de uma funo de activao
i
a
+
a
-1
1
a
-1
2
a
-1
n
-1
w
i 1
w
i 2
w
i n
-1
i
i
b
i
(.)
i
a
i
1
-1.5
-1
-0.5
0.5
1
1.5
-6.0 -4.0 -2.0 4.0 6.0 2.0
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 179
Nas duas expresses seguintes esto indicados os clculos efectuados na unidade
genrica i da camada :
Valor interno:
1
1
1
n
i ij j i
j
i w a b
=
= +
(6.29)
Sada: ( )
i i i
a i =
(6.30)
Designando por W
(
(
(
(
(
=
(
(
(
(
(
W
(6.31)
por I
o vector de cons-
tantes ou vector de polarizao da camada e por A
1
2
...
n
b
b
b
(
(
(
=
(
(
(
B
1
2
...
n
a
a
a
(
(
(
=
(
(
(
A
(6.32)
as equaes (6.29) e (6.30) podem escrever-se na forma matricial
1
= + I W A B
(6.33)
( ) = A I
(6.34)
em que
.
Na matriz W
,
ij
w
i
b
=
=
(6.36)
Fig.6.14 Representao grfica da unidade i da camada l, numa rede de base radial
a
-1
1
a
-1
2
al
-1
n
-1
i
i
w
i
a
i
1
(
1
1 a
,
1 c
2
(
1
2 a
,
2 c
1
n
(
1
1
n a
,
1
n c
i
(
1
i a
,
i c
)
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 181
6.3.2. A RNA como aproximador universal
A RNA constitui um aproximador universal. Uma das suas vantagens sobre outros
aproximadores consiste em ter-se uma estrutura com um nmero finito de unidades. Se
a funo a aproximar for contnua, possvel aproxim-la por meio de uma RNA com
apenas duas camadas, uma camada escondida e a camada de sada:
2 2 1 1 1 2
f =W (WP+B )+B (6.37)
Se a funo a aproximar for descontnua, poder no ser possvel aproxim-la por meio
de uma rede de duas camadas. no entanto sempre possvel aproxim-la por meio de
uma RNA com trs camadas:
3 3 2 2 1 1 1 2 3
f =W (W (WP+B )+B )+B (6.38)
Este ltimo caso de bastante interesse em sistemas de controlo com a lei de
realimentao descontnua, ou em sistemas em que haja necessidade de identificar
modelos inversos de processo de fase no mnima.
6.3.3. Estrutura de uma rede
6.3.3.1. Nmero de camadas
Na seco anterior viu-se que para as aplicaes que interessam identificao de
sistemas e ao controlo suficiente a utilizao de redes com trs camadas: duas
camadas escondidas e uma camada de sada. Nos casos mais simples, em que no haja
descontinuidades da funo a aproximar, no modelo a identificar ou na lei de controlo,
suficiente a utilizao de uma camada escondida e uma camada de sada.
6.3.3.2. Nmero de unidades
A determinao do nmero de unidades de uma rede, e a sua distribuio pelas camadas
da rede, normalmente abordada de uma forma prtica, uma vez que no existe um
procedimento exacto para efectuar a sua determinao. Obviamente o nmero de
unidades das camadas de entrada e de sada devero ser iguais dimenso dos
respectivos sinais.
Para as camadas escondidas corrente configurar inicialmente a rede com um nmero
de unidades igual soma das dimenses dos sinais de entrada e de sada. Depois de
testar a rede com este nmero de unidades, reconfigura-se a rede com mais ou menos
unidades, consoante os resultados obtidos. Na medida em que os resultados sejam
aceitveis, utilizar-se- sempre o menor nmero possvel de unidades.
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 182 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
6.3.3.3. Funes de activao
De entre as vrias funes de activao no lineares utilizadas nas RNA salientam-se as
seguintes:
Funo Expresso Grfico
1
Exponencial (x) =
x
e 1
1
+
0
0 , 2
0 , 4
0 , 6
0 , 8
1
1 , 2
- 6 , 0 - 4 , 0 - 2 , 0 0 , 0 2 , 0 4 , 0 6 , 0
2
Exponencial (x) =
x
x
e 1
e 1
- 1 . 5
- 1
- 0 . 5
0
0 . 5
1
1 . 5
- 6 . 0 - 4 . 0 - 2 . 0 0 . 0 2 . 0 4 . 0 6 . 0
3
Trigonomtrica
inversa arctg()
(x) =
2
arctan(x)
- 1
- 0 . 8
- 0 . 6
- 0 . 4
- 0 . 2
0
0 . 2
0 . 4
0 . 6
0 . 8
1
- 6 . 0 - 4 . 0 - 2 . 0 0 . 0 2 . 0 4 . 0 6 . 0
4
Hiperblica th()
Igual 2, excepto
factor de escala em x
- 1 . 5
- 1
- 0 . 5
0
0 . 5
1
1 . 5
- 6 . 0 - 4 . 0 - 2 . 0 0 . 0 2 . 0 4 . 0 6 . 0
5
Degrau unitrio
Pode ser considerado
como sendo o limite
dos anteriores,
mudada a escala x - 1 , 5
- 1
- 0 , 5
0
0 , 5
1
1 , 5
- 6 , 0 - 4 , 0 - 2 , 0 0 , 0 2 , 0 4 , 0 6 , 0
S e r i e s 4
Do ponto de vista do comportamento da rede, as quatro primeiras funes so equiva-
lentes.
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 183
6.3.4. Obteno dos parmetros da rede
6.3.4.1. Funcional de custo
Depois de se fixar o nmero de camadas de uma rede e o nmero de unidades em cada
camada, dever determinar-se quais os valores dos parmetros
ij
w
e de
i
b
que
conduzem ao melhor desempenho da rede. Aos parmetros
ij
w
(6.39)
Considera-se que a rede adequada se o valor deste funcional for inferior a um
determinado limite de aceitao.
Os parmetros ideais para a rede sero assim aqueles a que corresponde o mnimo do
funcional J
Nd
. Pode no entanto acontecer que este mnimo esteja acima do limite de
aceitao. Isto poder ser devido a vrias causas:
O mnimo obtido para J
Nd
no um mnimo absoluto mas sim um mnimo local.
O nmero de unidades da rede no suficiente.
O nmero de entradas da rede no o correcto.
A determinao do mnimo de J
Nd
um problema geralmente complexo, uma vez que se
trata de minimizar uma funo de muitas variveis. Com efeito, para uma rede com
duas camadas escondidas, com n
1
e n
2
unidades em cada camada, com r entradas e n
L
sadas, o nmero total de parmetros a obter, n
p
, dado por (ver Fig. 6.11):
1 1 1 2 2 2
( ) ( ) ( )
p L L
n r n n n n n n n n = + + + + + (6.40)
Uma rede muito simples com r = 5, n
1
= 3 e n
2
= 3 e uma sada ter n
p
= 34 parmetros.
Se se fizerem estes parmetros variar continuamente de modo a obter o valor mnimo
para J
Nd
, tem-se o problema da minimizao de uma funo de muitas variveis, que
poder apresentar mnimos locais Os mtodos de clculo dos parmetros de modo a
minimizar J
Nd
devero considerar a possvel existncia destes mnimos locais e procurar
ultrapassar o problema de modo a encontrar-se, se possvel, o mnimo global.
O outro caso mencionado atrs, do nmero de unidades insuficiente, resolve-se
simplesmente tentando uma rede com maior nmero de unidades, ou eventualmente
com uma outra distribuio pelas camadas escondidas.
Finalmente o ltimo caso indicado: se se suspeitar das entradas da rede no serem as
correctas, devero ser reanalisadas quais as entradas mais convenientes.
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 184 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
6.3.4.2. Treino da rede
A minimizao de J
Nd
efectuada por mtodos iteractivos. Durante a busca do mnimo
diz-se que se efectua o treino da rede, ou que esta est em aprendizagem.
Um mtodo muito corrente para treinar a rede designado por rectro-propagao
(backpropagation: Rumelhart et al. 1986). Esta forma de treino baseia-se no mtodo
do gradiente. Parte de um valor inicial arbitrrio para os parmetros e d-lhes um
acrscimo negativo proporcional derivada de J
Nd
em relao ao parmetro. Comea-se
pela camada de sada e aplica-se a seguir s sucessivas camadas, por ordem contrria
do fluxo de informao. O mtodo lento, em particular junto do mnimo.
Um outro mtodo utilizado para treinar as redes neuronais o de Marquardt-Levenberg.
Trata-se de uma modificao do mtodo de Gauss-Newton (Hagan e Menhaj, 1994). O
mtodo computacionalmente mais pesado do que a rectro-propagao, exibindo no
entanto uma convergncia bastante mais rpida do que esta.
6.3.5. Identificao do Processo.
6.3.5.1. Dados de entrada /sada
Considere-se um processo discreto, de uma s varivel, linear ou no, com atraso de
transporte p. Se o processo for observvel, poder ser representado por uma equao s
diferenas
( ) [ ( 1), , ( ), ( ), , ( )]
y u
y n f y n y n n u n p u n p n = (6.41)
em que
n - tempo discreto, p - atraso de transporte,
u(n) - varivel de entrada, n
u
- nmero de entradas atrasadas,
y(n) - varivel de sada, n
y
- nmero de realimentaes atrasadas.
Considerando as observaes das sadas nos instantes sucessivamente anteriores ao
actual, n-1, n-2, ..., n-h, pode escrever-se
( 1) [ ( 2), , ( 1), ( 1), , ( 1)]
y u
y n f y n y n n u n p u n p n = (6.42)
( 2) [ ( 3), , ( 2), ( 2), , ( 2)]
y u
y n f y n y n n u n p u n p n = (6.43)
( ) [ ( 1), , ( ), ( ), , ( )]
y u
y n h f y n h y n h n u n h p u n h p n = (6.44)
A substituio sucessiva em (6.41) de (6.42), (6.43), ..., (6.44) conduz a uma equao do
tipo
( ) [ ( 1), , ( ), ( ), , ( )]
y u
y n g y n h y n h n u n p u n h p n = (6.45)
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 185
A equao (6.45) tem o seguinte significado, representado na Fig. 6.15: O valor da
varivel de sada no instante actual, n, pode ser considerado como dependente dos
valores dessa varivel nos instantes (n-h-1) a (n-h-n
y
) e dos valores da varivel de
entrada nos instantes (n-p) a (n-h-p-n
u
).
Uma vez que para a identificao do processo apenas se dispe de sequncias de entrada
e de sada, como se referiu no incio, apenas ser possvel efectuar a identificao da
parte observvel do processo, permanecendo a dinmica interna por identificar.
Fig. 6.15 Processo de ordem n
y
com atraso p
6.3.5.2. Estrutura da entrada da rede.
As consideraes anteriores sugerem que a rede estimadora do processo dever ser
alimentada com (h+n
u
+1) entradas u e respectivos atrasos, e n
y
entradas y e anteriores.
Com efeito da equao (6.45) pode obter-se
( ) [ ( 1), , ( ), ( ), , ( )]
y u
y n h g y n y n n u n p h u n p n + = + (6.46)
pelo que para dois pares de sequncias u(n) e y(n) se espera ter para uma RNA
estimadora do processo, cuja sada se designar por ( ) y n ,
( ) [ ( 1), , ( ), ( ), , ( )]
y u
y n h g y n y n n u n p h u n p n + = + (6.47)
Considerem-se os dois casos seguintes:
h p : Neste caso os valores de u(n-p+h), , u(n-p-n
u
) pertencem ao passado pelo que
podem ser sempre conhecidos. Dispe-se assim dos dados necessrios para efectuar
uma identificao do processo.
h > p : Nesta situao a determinao de ( ) y n h + vai depender de u(n
f
), ou seja dos
valores da entrada tomados em instantes futuros n
f
> n. Ser necessrio efectuar alguma
suposio sobre u(n
f
), como por exemplo congelar todas as entradas futuras,
mantendo-as iguais a u(n) presente, ou prever u(n
f
) a partir dos valores passados.
Representando a rede neuronal pelo rectngulo da Fig. 6.16, o conjunto de entradas e
sadas sugerido para a rede o indicado a seguir:
Tempo discreto
n
u(n)
y(n)
n
u
h p
n
y
h
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 186 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
Fig. 6.16 Conjunto de entradas de uma RNA para estimar ( ) y n h +
Como muitas vezes os valores de n
u
, n
y
e p no so conhecidos a priori, devero ser
atribudas rede um nmero de entradas u e um nmero de entradas y suficientes para
se obter um desempenho aceitvel.
corrente escolher-se uma rede com duas camadas escondidas. A razo da escolha, j
mencionada anteriormente, complementada com os resultados obtidos por Hartman et
all (1990) e por Hornick (1991):
Para uma funo contnua uma rede neuronal com duas camadas escondidas
constitui um aproximador universal com convergncia mais rpida do que
uma rede de uma camada.
Uma RNA com duas camadas escondidas permite a utilizao de leis de controlo
descontnuas, o que no possvel com apenas uma camada,
Uma RNA com duas camadas escondidas permite sempre a obteno de um
modelo inverso (Sontag, 1992).
O nmero de unidades nas camadas escondidas depende da relao (6.41) que carac-
teriza o processo, que partida no conhecido. Considera-se habitualmente uma rede
com um total de unidades igual ao valor estimado para n
u
+n
y
, por se verificar suficiente.
Treino da rede
Para o treino da rede devem ser considerados dois casos: treino em grupo (batch) e
treino em linha (on line). O primeiro tem interesse quando o processo a identificar
invariante no tempo ou ento para a obteno de um valor inicial de parmetros para a
rede. O treino em linha poder ser necessrio sempre que preciso identificar um
processo variante no tempo. Chama-se no entanto a ateno para o facto de o treino em
linha, quando se trata de processos no lineares, poder conduzir obteno de uma rede
que no aproxime o processo globalmente. No treino em linha pois necessrio ter
cuidado com os dados utilizados, para no se cair num ponto de funcionamento local.
Neste caso tem-se uma rede bem treinada localmente mas com pouca capacidade para
generalizar para outro tipo de dados de entrada. Assim, o algoritmo de treino no
dever esquecer os dados iniciais mas sim complement-los.
h+n
u
+1
entradas
u
n
y
entradas
y
u(n-p)
u(n-p-1)
u(n-p-2)
u(n-p-h-n
u
)
y(n-h-1)
y(n-h-2)
y(n-h-n
y
)
( ) y n
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 187
Treino em grupo.
Uma vez que se trata de identificar um processo genrico, que poder ser linear ou no-
linear, uma questo que se coloca a definio da amplitude do sinal de entrada. Dever
considerar-se o sinal de entrada a poder variar entre -au
M
e + au
M
sendo u
M
o valor
absoluto mximo detectado na sequncia de entrada e a uma constante real maior do
que a unidade. De forma anloga se estabelece o domnio para o sinal de sada.
O nmero de valores das sequncias {u} e {y} utilizados para o treino em grupo, Nd,
dever ser da ordem das centenas, para permitir ter uma grande variedade de
amplitudes.
Alimentando a rede com (h+n
u
+1) entradas desde u(n-p) a u(n-p-h-n
u
) e com n
y
entradas
desde y(n-h) a y(n-h-n
y
), esta origina um sinal de sada ( ) y n . A rede deve ser treinada
utilizando um algoritmo disponvel, por exemplo o de rectropropagao dos erros ou o
algoritmo de Marquardt-Levenberg. O nmero de iteraces utilizado para obter a
convergncia da rede varivel consoante os casos estudados, a respectiva rapidez de
convergncia e o valor aceite para J
Nd
. No caso da rectro-propagao a fim de acelerar a
convergncia devem utilizar-se os mtodos do passo adaptativo e do momento,
conhecidos das redes neuronais e postos disposio pelos fornecedores do software
especfico de redes neuronais.
Aps o treino em grupo as redes devem testadas utilizando outras sequncias de entrada
/sada, com outras formas amplitudes e nmero de pontos, para verificar a sua boa
capacidade de generalizao. Aps ser definido um critrio de aceitao, a rede
considerada adequada e suficientemente treinada quando satisfaz esse critrio. Por vezes
considera-se como critrio de aceitao o andamento da curva de erro y(n) - ( ) y n , em
vez do valor de J
Nd
.
Treino em linha.
Uma vez que o treino de uma rede neuronal envolve um nmero muito grande de
iteraes, normalmente superior a 1000, ao efectuar-se o treino em linha no pode ser
feita apenas uma destas iteraes por cada passo de execuo do controlo. O seu
nmero depender da velocidade de variao no tempo do prprio processo. No entanto
dever ser pelo menos da ordem das dezenas. A Fig. 6.17 representa esquematicamente
as sequncias para efectuar o treino em linha.
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 188 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
Fig. 6.17 - Treino de uma rede neuronal, em linha.
No entanto, se o nmero de iteraes para actualizao da rede for elevado, o rudo do
processo, includo o rudo dos sensores, pode perturbar significativamente a
convergncia da rede, levando os seus parmetros a mudar sistematicamente de
trajectria. -se assim conduzido necessidade de filtrar os dados u(n) e y(n) utilizados
para treinar a rede. Esta filtragem, que poder ser igual para todas as entradas da rede,
dever obedecer a duas condies antagnicas: por um lado dever ser bastante elevada
para que o rudo no perturbe a convergncia da rede e por outro suficientemente fraca
para que qualquer variao dos parmetros do processo seja imediatamente detectada.
Um outro problema da actualizao em linha, em sistemas no lineares, j atrs referido,
consiste no esquecimento das caractersticas globais da rede, ficando esta mais adaptada
apenas para pontos de funcionamento com caractersticas locais.
6.3.6. Controlo preditivo.
No controlo de um processo com atraso de transporte utilizando um controlador
clssico, por exemplo um PID, medida que se vo tendo tempos de atraso maiores
torna-se necessrio baixar o ganho proporcional e aumentar o tempo de integrao, se se
quiserem evitar oscilaes ou ter um sistema instvel. Esta medida torna a resposta do
sistema lenta. Com o fim de obter controladores com melhor desempenho, utilizam-se
outros mtodos. De entre os que utilizam redes neuronais foram estudados os seguintes:
Uso de um controlador clssico em que o erro obtido subtraindo referncia o valor
da previso, e controlo por meio do modelo inverso. Em qualquer dos casos o modelo
dever ser actualizado em linha.
tempo discreto, n
instantes de execuo
do controlo
actualizao da rede
||||||||||||||| ||||||||||||||| ||||||||||||||| ||||||||||||||| |||||||||||||||