Você está na página 1de 30

159

6. SISTEMAS DIFUSOS E REDES NEURONAIS




6.1. Introduo. Controlo inteligente
Quase todos os processos industriais esto ligados a sistemas de aquisio de dados, a
sistemas de controlo distribudo, ou apenas a sistemas de monitorizao e diagnstico.
Devido ao aumento de complexidade dos processos, com acrscimo do nmero de
cadeias de controlo multivarivel, com um grande acoplamento entre as variveis, fortes
no linearidades e variaes dos parmetros por vezes rpidas, os esquemas de controlo
convencionais, apesar de terem tido uma evoluo muito significativa, por vezes so
insuficientes para resolver alguns dos problemas de controlo que se colocam, pelo que
poder haver necessidade de recorrer a tcnicas diferentes das convencionais.
Uma das ideias que se encontra na base de algumas das tcnicas que surgiram foi a de
observar como que os seres vivos, e em particular os seres humanos, se comportam
perante determinado tipo de problemas, e como que os solucionam. Aplicado ao
controlo de processos surgiu desta forma o chamado controlo inteligente.
O facto do ser humano lidar por vezes com informao que no se encontra bem
definida, ou at mesmo inexistente foi uma das razes que levou ao aparecimento da
lgica difusa, que tem servido para muitos fins, entre eles para efectuar a identificao
de sistemas e efectuar o seu controlo. Os sistemas periciais e os sistemas baseados em
regras so outras formas de lidar com sistemas e podem por vezes ser associados aos
sistemas difusos.
A observao da modo como o crebro humano funciona deu origem ao desenvolvi-
mento de uma estrutura matemtica, as redes neuronais artificiais (RNA). Os diversos
tipos de RNA tm sido utilizados em campos muito diversos, sendo talvez os mais
importantes o reconhecimento de caracteres, o reconhecimento de padres e a
identificao de sistemas. Tambm tm sido usadas em controlo de sistemas.
Quando os parmetros de um sistema variam no tempo ou quando devido existncia
de vrios pontos de funcionamento com caractersticas muito distintas (devido por
exemplo s no linearidades), torna-se necessrio ir ajustando os parmetros do
controlador de uma forma automtica: este o princpio do controlo adaptativo. Outras
vezes h necessidade de trabalhar com sistemas em que os parmetros podem variar
muito rapidamente no tempo, de forma que, para a obteno de bons resultados, no h
tempo de esperar que se faa a adaptao dos parmetros. Surgiu ento a ideia de ter
previamente disponveis uns tantos modelos do sistema, previstos ou no previstos, e
outros tantos conjuntos de parmetros para os respectivos controladores, de modo a
entrar imediatamente em operao o controlador que nesse instante melhor corrige o
processo, tendo nascido assim o controlo com modelos mltiplos.
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 160 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
Num outro tipo de formalismo, designado por algoritmos genticos, definem-se entes
matemticos com propriedades semelhantes s das clulas biolgicas, que nascem, se
multiplicam e desaparecem de acordo com um conjunto de regras bem definidas. Estes
algoritmos tm sido utilizados em vrios campos cientficos, nomeadamente no controlo
de processos.
Neste captulo apenas sero abordadas a lgica difusa e as redes neuronais e a sua
aplicao no controlo de sistemas.

6.2. Conjuntos e lgica difusa
6.2.1. Introduo
O conceito de conjunto difuso (fuzzy set) est associado a uma classe de objectos em
que no se consegue, ou no tem interesse, efectuar a classificao de uma forma
precisa, no sentido convencional. Embora o conceito se perca na 2 metade do sculo
XIX, ele s em 1965 foi formalmente apresentado, por Zadeh
(1)
. Uma das preocupaes
que estiveram na base do aparecimento dos conjuntos difusos foi a seguinte:
Algumas classes de objectos no tm critrios de pertena bem definidos.
Veja-se o seguinte exemplo: Esto 60 pessoas de diversas nacionalidades numa
esplanada em Paris, numa noite de Outubro, em que a temperatura ronda os 17 C.
Como que os utentes da esplanada classificam o ambiente: muito frio, frio, tpido,
quente ou muito quente?
Este problema, que aqui se equaciona para um facto do dia a dia, pe-se em qualquer
outro ramo de actividade, como sejam numa indstria ou at mesmo numa cincia
exacta como a Matemtica. Num processo industrial, um determinado operador trabalha
com uma certa vlvula com uma abertura que considera ideal, enquanto outro operador,
nas mesmas circunstncias acha que essa vlvula se encontra demasiado aberta. E em
matemtica, o que que se entende por analisar o comportamento de uma determinada
funo na vizinhana de x=0? Qual dever ser o domnio a considerar?
para formalizar este tipo de conceitos que se estudam os conjuntos difusos, e os
sistemas que com eles operam, designados por sistemas difusos. O conceito de tal
modo flexvel e poderoso que pode ser estendido aos sistemas de controlo, dando
origem ao controlo difuso.
6.2.2. Conjuntos e sistemas difusos
6.2.2.1. Definies
O conceito convencional de conjunto obtido custa de uma determinada
caracterstica, C. Designando por U o conjunto universal e por x os seus elementos,
para um determinado conjunto A atribui-se um valor C
A
(x) a cada um do seus elementos
xU, do seguinte modo:

1
Lutfi A. Zadeh, Engenheiro Electrotcnico, Azerbeijo, 1921-
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 161

A
1, A
( )
0, A
sse x
C x
sse x

=

(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,

. Tem-se deste modo para


variveis de entrada do controlador a posio angular e a velocidade angular. A
sada do controlador ser a intensidade do jacto propulsor (em que se considera o
seu sentido).

controlador
difuso
y
referncia +

processo
erro controlo sada
u
e
r

regras

6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 171







Fig. 6.7 Esquema do satlite

2. Universos do discurso:
A posio do satlite poder variar entre e +. A determinao da sua velocidade
angular um pouco mais complicada. Ela depende do momento de inrcia do satlite
em torno do seu eixo de rotao e do binrio propulsor. Para um satlite com a massa
de 200 kg, e o dimetro de 2,8 m, e para um binrio propulsor de 1 Nm, um clculo
aproximado permite determinar o momento de inrcia do satlite (suposto homo-
gneo I=2/5mR
2
=160 kg.m
2
) e concluir, utilizando as expresses (2.34) e (2.35) que
a velocidade angular estar compreendida entre 0.20 e +20 rad/s. Tem-se assim os
valores do universo do discurso: =x
1
[,+] rad e

=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

6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS


Pg. 172 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva









Fig. 6.8 Funes de pertena para a posio e velocidade do satlite

4. Obteno das regras de controlo
A definio das regras de controlo tambm feita de acordo com os conhecimentos
do especialista em satlites, que definiu as regras seguintes:
1. Se (if) a posio RE e (and) a velocidade VE, ento (then) o jacto dever ser
JD2 (jacto para a direita, forte).
2. Se (if) a posio RE e (and) a velocidade V0, ento (then) o jacto dever ser
JD (jacto para a direita).

Como para o exemplo anterior poder elaborar-se o conjunto de regras por
seguinte quadro, em que as entradas so ligadas por meio do operador E.


posio angular
velocidade
angular
RE R0 RD
VE JD2 JD J0
V0 JD J0 JE
VD J0 JE JE2

De acordo com o quadro resumo haver 9 regras e 5 funes de pertena para o
jacto propulsor:
JE2 jacto propulsor actua para a esquerda, forte
JE jacto propulsor actua para a esquerda
J0 jacto propulsor nulo
JD jacto propulsor actua para a direita
JD2 jacto propulsor actua para a direita, forte


. . .
- - /8 0 /8 x
1
= pos. ang.
(x
1
)
RE
RD
R0
-0.20 -0.07 0 0.07 0.20 x
2
= vel. ang.
(x
2
)
V0
VD
VE
6 - SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva Pg. 173





Fig. 6.9 Funes de pertena para a intensidade do jacto propulsor

5. Escolha das conectivas a utilizar.
Este ponto poder ser feito antes ou depois do anterior. Serve para definir o modo
como so implementados os operadores ou e and. Podem de novo usar-se as
definies (6.19) e (6.20), por serem as mais correntes e a experincia mostrar que
oferecerem um bom desempenho.
6. Agregao de todas as regras de sada.
A agregao o processo pelo qual os conjuntos difusos resultantes de cada regra
so combinados num nico conjunto difuso. A agregao das regras de sada
necessria, uma vez que muitas das decises se baseiam em mais do que uma
regra ao mesmo tempo. Esta afirmao particularmente vlida quando as
funes de pertena so do tipo gaussiano. Acompanhe-se a exposio com um
exemplo. Admita-se o satlite estava posicionado e estabilizado e que se mudou
de 0.1 rad a referncia da posio angular. O erro de posio ser de +0.1 rad. Da
Fig. 6.8 tira-se, para x
1
=0.1, o valor de
R0
(x
1
)=0.73 e o valor de
RD
(x
1
)=0.27. O
satlite est centrado com um grau de pertena de 0.73 e rodado direita com um
grau de pertena de 0.27. Pode dizer-se que com as funes de pertena atribudas
o satlite est mais centrado do que desviado. Como neste instante a velocidade
angular nula ser
V0
(x
2
)=1 e as outras funes de pertena da velocidade tm o
valor zero. A sada depender de duas regras simultneas com valores no nulos:
1. Se (if) a posio R0 e (and) a velocidade V0, ento (then) o jacto dever ser J0
(jacto nulo), multiplicado por 0,73
2. Se (if) a posio RD e (and) a velocidade V0, ento (then) o jacto dever ser
JE (jacto para a esquerda), multiplicado por 0.27.
O resultado global consiste em multiplicar por 0.73 a funo de pertena J0, por
0.27 a funo JE e efectuar a sua unio. Resulta a funo de pertena que limita a
rea sombreada da Fig. 6.10.
importante chamar-se aqui a ateno para o facto de as regras deverem ter um
peso diferente consoante a entrada. Com efeito, neste exemplo, a importncia da
contribuio da posio e da velocidade para a intensidade do jacto propulsor no
ser a mesma. Neste exemplo tal no foi considerado, tendo sido atribudos o
mesmo peso 1 s contribuies da posio e da velocidade.

-1.0 -0.5 -0.25 0 0.25 0.5 1.0 u

= jacto
(u)
JD2 JD J0 JE JE2
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 174 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva





Fig. 6.10 Funo de pertena da agregao das sadas

7. Desfuzificao da sada.
A desfuzificao consiste em converter a varivel de sada lingustica num valor
numrico. No exemplo que se est a apresentar, a sada a funo de pertena que
limita a rea sombreada, e resultado da agregao das sadas de cada regra. Mas a
sada para o jacto no pode ser uma funo de pertena, tem que ser um valor
numrico, que neste exemplo dever estar no intervalo [-1, 1], em que 1 o mximo
de intensidade que o jacto pode ter num sentido e -1 no sentido oposto. pois
necessrio efectuar a converso da sada lingustica num nmero que esteja dentro da
gama de sada. Um mtodo muito vulgar para efectuar esta converso o chamado
mtodo do centride; consiste em determinar o centro geomtrico da rea definida
pela funo de pertena da agregao das variveis de sada e a partir da sua posio
determinar a coordenada da sada, pela distncia ao eixo das ordenadas, como se
indica na Fig. 6.10.
6.2.6. Controlo difuso do satlite no Matlab
O sistema se controlo que acaba de se descrever foi implementado em Matlab/Simulink.
Para este efeito necessrio implementar as regras em Matlab, atravs do editor FIS
(fuzzy inference systems). Para isto invoca-se o editor atravs do comando fuzzy.
Uma vez no editor define-se o nmero de entradas, a gama de cada entrada, o nmero
de funes de pertena e o seu tipo (de entre uma lista standard). Faz-se o mesmo para
as sadas. Definem-se tambm as regras e o seu peso. Pode observar-se o resultado final
vendo as regras ou a superfcie. O ficheiro dever ser salvo em disco e tambm no
workspace. Este ltimo ponto importante, pois ao workspace que o Simulink vai
buscar as regras.
A seguir abre-se o Simulink e constri-se o modelo do satlite. Da biblioteca do
Simulink Fuzzy Logic Toolbox copia-se o Fuzzy Logic Controller, que dever ser
ligado entrada do processo (atravs de um ganho). Este dever estar ligado ao ficheiro
com as regras que foram anteriormente salvas no workspace. A entrada do Fuzzy
Logic Controller dever ser feita atravs de um multiplexer, que contm o erro de
posio e a velocidade, esta multiplicada por um ganho. Na pg. seguinte est
representado o modelo que acaba de se descrever. Colocou-se tambm um PID, para
poder comparar o desempenho dos controladores.

-1.0 -0.5 -0.25 0 0.25 0.5 1.0 u

= jacto
(u)
JD2 JD J0 JE JE2

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

a matriz de transferncia da sada da camada -1 para a camada ,



1
1
1
1
11 12 1
21 22 2
1 2
1 2
...
...
... ... ... ...
...
... ... ... ...
...
n
n
i i in
n n n n
w w w
w w w
w w w
w w w

(
(
(
(
(
=
(
(
(
(
(

W



(6.31)
por I

o vector de valores internos nas unidades da camada , por B

o vector de cons-
tantes ou vector de polarizao da camada e por A

o vector de sada da camada ,



1
2
...
n
i
i
i
(
(
(
=
(
(
(

I


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

aplicado individualmente a cada um dos elementos do vector I


.
Na matriz W

,
ij
w

representa o coeficiente de ponderao que multiplica a sada da


unidade j da camada anterior, -1, antes de a adicionar unidade i da camada , e no
vector B


i
b

o vector de polarizao da unidade i da camada .


corrente fazer-se a funo de activao igual para todas as unidades de uma mesma
camada.
6 -SISTEMAS DIFUSOS, MODELOS MLTIPLOS E REDES NEURONAIS
Pg. 180 Escola Superior de Tecnologia de Setbal Controlo No Linear Gustavo da Silva
Uma vez que as funes de activao so limitadas, para se poder ter uma sada com
uma amplitude arbitrria faz-se a camada de sada linear (

(x) = x), pelo que a sada


de uma rede com L camadas dada pela expresso
L L L-1 L-1 2 2 1 1 1 2 L-1 L
A =W (W ( ( (W ( (W (WP+B )+B )+ +B )+ )+B )+B

(6.35)
A
1

A
2

O sinal de entrada poder ser uma funo contnua do tempo, P(t), sendo ento a sada
tambm uma funo contnua, admitindo-se neste caso que a execuo dos clculos se
faz em tempo contnuo e num intervalo de tempo infinitesimal, ou poder ser uma
sequncia de sinais discretos do tempo ou de outras variveis. Neste caso a execuo
dos clculos faz-se ao ritmo da chegada das entradas da rede.
Repare-se que a RNA, tal como aqui foi definida, uma rede esttica, no guardando
qualquer informao relativa a estados anteriores; no existe realimentao das sadas
nas entradas. No caso de se desejar manipular sistemas dinmicos, os valores anteriores
das entradas, sadas ou estados devero ser aplicados entrada juntamente com a
entrada actual da rede.
6.3.1.2. A rede de base radial
A estrutura desta rede semelhante da rede anterior, mas com uma diferena
importante: o sinal de entrada primeiramente transformado por meio de uma funo
no linear, s sendo em seguida efectuada a soma dos valores resultantes de cada
converso, como se mostra na expresso (6.36) e na Fig.6.14.

1
1
1
( , )
n
i i i i i
j
a w a c

=
=


(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

d-se tambm o nome


de pesos.
O mtodo correntemente usado para avaliar o desempenho de uma rede consiste em
calcular o funcional de custo, J
Nd
, obtido pela soma do quadrado dos desvios da
previso em relao ao processo, e referida a um par de sequncias { y } e {y} de
comprimento N
d
.

2
1
[ ( ) ( )]
Nd
Nd
k
J y k y k
=
=

(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
||||||||||||||| ||||||||||||||| ||||||||||||||| ||||||||||||||| |||||||||||||||

Você também pode gostar