Download PDF
ads:
Universidade Federal do Rio Grande do Norte
Centro de Tecnologia
Programa de os-Gradua¸ao em Engenharia El´etrica
Algoritmos inteligentes para auto-corre¸ao,
auto-verifica¸ao e auto-valida¸ao de medidas em
sensore s
Autor: David Ricardo do Vale Pereira
Orientadores: Prof D.Sc. Adri˜ao Duarte oria Neto
Prof D.Sc. Jorge Dantas de Melo
Natal, dezembro de 2006
ads:
Livros Grátis
http://www.livrosgratis.com.br
Milhares de livros grátis para download.
Universidade Federal do Rio Grande do Norte
Centro de Tecnologia
Programa de os-Gradua¸ao em Engenharia El´etrica
David Ricardo do Vale Pereira
Algoritmos intelig entes para auto-corre¸ao,
auto-verifica¸ao e auto-valida¸ao de medidas em
sensore s
Disserta¸ao de mestrado apresentada ao
Programa de os-Gra dua¸ao em Engenharia
El´etrica da UFRN area de concentra¸ao:
Engenharia de Computa¸ao) como parte dos
requisitos necess´arios para obten¸ao do t´ıtulo
de Mestre em Ciˆencias.
N´umero de Ordem PPGEE: M185
Natal, dezembro de 2006
ads:
Agradecimentos
Agrade¸co principalmente aos meus pais, Wilson Roberto e Maria de atima, a
quem devo tudo o que sou e que tenho. Se, alg um dia, o meu trabalho t iver alguma
relevˆancia, saibam que tudo o ter´a sido poss´ıvel gra¸cas ao seu amor, compreens˜ao
e dedica¸ao.
Aos meus in´umeros amigos, que compartilharam comigo todas as dificuldades
encontradas no decorrer dessa jornada, sempre me incentivando, apoiando e
iluminando o meu caminho. Os meus sinceros agradecimentos p ois, sem vocˆes,
a vida vale muito pouco.
A todos os professores que cont r ibu´ıram com a minha forma¸ao intelectual,
especialmente os professores Adri˜ao Duarte, Jorge Dantas e Affonso Guedes, por
sempre terem acreditado na minha capacidade e terem me ajudado a abrir tantas
portas ao longo da minha vida.
Agrade¸co ainda `a FINEP, CENPES e CNPQ pelo apoio e sup orte financeiro para
a realiza¸ao das atividades deste trabalho.
i
Resumo
Neste trabalho ´e apresentado um conjunto de algoritmos inteligentes que tˆem
como objetivo a corre¸ao de erros de calibra¸ao em sensores e a diminui¸ao da
periodicidade de suas calibra¸oes. Tais algoritmos foram desenvo lvidos utilizando
Redes Neurais Artificiais devido a sua grande capacidade de aprendizado, adapta¸ao
e aproxima¸ao de fun¸oes.
Ser˜ao mostradas duas abordagens, a primeira utiliza redes Perceptron de
M´ultiplas Camadas para aproximar as diversas formas da curva de calibra¸ao do
sensor que se descalibra em diferentes instantes do tempo. Tal abordagem exige o
conhecimento do temp o de funcionamento do sensor, informa¸ao que nem sempre
est´a disp on´ıvel. Para superar essa necessidade, uma outra abordagem utilizando
Redes Neurais Recorrentes foi proposta. As Redes Recorrentes possuem uma grande
capacidade de aprender a dinˆamica do sistema pa ra o qual ela foi treinada e, assim,
podem aprender a dinˆa mica de descalibra¸ao do sensor. Conhecendo o tempo de
funcionamento do sensor ou a sua dinˆa mica de descalibra¸ao, ´e poss´ıvel determinar
o quanto um sensor est´a descalibrado e corrigir o valor medido, proporcionando uma
medi¸ao mais exata.
Os algoritmos aqui propostos podem ser implementados em ambientes de redes
industriais Foundation Fieldbus, que possuem uma boa capacidade de programa¸ao
de dispositivos atraes dos blocos funcionais, possibilitando a plica¸oes nos pro cessos
de medi¸ao.
Palavras-Chave: Redes Neurais, Sensores, Redes Industriais
ii
Abstract
This work presents a set of intelligent algorithms with the purpo se of correcting
calibration errors in sensors and reducting the periodicity of their calibrations. Such
algorithms were designed using Artificial Neural Networks due to its great capacity
of learning, adaptation and f unction approximation.
Two approaches will be shown, the first one uses Multilayer Perceptron Networks
to approximate the many shapes of the calibration curve of a sensor which
discalibrates in different time points. This approach requires the knowledge of the
sensor’s functioning time, but this information is not always available. To overcome
this need, another approach using Recurrent Neural Netwo r ks was proposed. The
Recurrent Neural Networks have a gr eat capacity of learning the dynamics of a
system to which it was trained, so they can learn the dynamics of a sensor’s
discalibration. Knowing the sensor’s functioning time or its discalibration dynamics,
it is possible to determine how much a sensor is discalibrated and correct its
measured value, providing then, a more exact measurement.
The algorithms proposed in this work can be implemented in a Foundation
Fieldbus industrial network environment, which has a good capacity of device
programming thro ugh its function blocks, making it possible to have them applied
to the measurement process.
Keywords: Neural Networks, Sensors, Industrial Networks
iii
Sum´ario
1 Int rodu¸ao 1
1.1 Organiza¸ao da Disserta¸ao . . . . . . . . . . . . . . . . . . . . . . . 4
2 Redes Neurais Artificiais 5
2.1 Por que utilizar Redes Neurais? . . . . . . . . . . . . . . . . . . . . . 8
2.2 Perc´eptron de M´ultiplas Camadas . . . . . . . . . . . . . . . . . . . . 9
2.3 Redes Neurais Recorrentes . . . . . . . . . . . . . . . . . . . . . . . . 12
2.4 Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4.1 Filtro de Kalman Estendido . . . . . . . . . . . . . . . . . . . 18
3 Sensores em Ambiente Foundation Fieldbus 21
3.1 Foundation Fieldbus . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1.1 Vantagens do padr˜ao Foundation Fieldbus . . . . . . . . . . . 22
3.1.2 Modelo de Comunica¸ao em Camadas . . . . . . . . . . . . . . 25
3.1.3 Redes Neurais Embarcadas . . . . . . . . . . . . . . . . . . . . 26
4 Algoritmos Inteligentes 30
4.1 Auto-Corre¸ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.2 Auto-Verifica¸ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.3 Auto-Valida¸ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.4 Algoritmos com Redes Neurais Recorrentes . . . . . . . . . . . . . . . 34
4.4.1 Auto-Corre¸ao . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4.2 Auto-Verifica¸ao . . . . . . . . . . . . . . . . . . . . . . . . . 35
5 Estudo de Caso 37
5.1 Implementa¸ao usando Perceptron de M´ultiplas Camadas . . . . . . . 40
5.2 Implementa¸ao usando Redes Neurais Recorrentes . . . . . . . . . . . 46
6 Conclus˜oes e Perspectivas Futuras 53
A Modelo da planta utilizada na simula¸ao 55
iv
B Algoritmos de treinamento das redes neurais 57
B.1 Algoritmo da Backpropagation . . . . . . . . . . . . . . . . . . . . . . 57
B.2 Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
C P rodu¸ao Cient´ıfica 61
Referˆencias Bibliogr´aficas 63
v
Lista de Figuras
1.1 Exemplo de Curva de Calibra¸a o de um Sensor Emp´ırico . . . . . . . 2
2.1 Representa¸ao gr´afica de um Neurˆonio Artificial . . . . . . . . . . . . 7
2.2 Fun¸o es Degrau, Linear e Sigm´oide, respectivamente . . . . . . . . . . 7
2.3 Problema do ou-exclusivo . . . . . . . . . . . . . . . . . . . . . . . . 10
2.4 Exemplo de Arquitetura da Perc´eptron de M´ultiplas Camadas . . . . 10
2.5 Exemplo de aproximao de fun¸ao com uma MLP.
[Kr¨ose and van der Smagt, 1996] . . . . . . . . . . . . . . . . . . . . . 12
2.6 Exemplo de Perc´eptron de M´ultiplas Camadas Recorrente . . . . . . 13
2.7 Exemplo de uso do Filtro de Kalman [Maybeck, 1990] . . . . . . . . . 16
2.8 Representa¸ao de um sistema dinˆamico, linear e discreto . . . . . . . 17
2.9 Diagrama de fluxo de sinal durante o treinamento . . . . . . . . . . . 20
3.1 Topo logia t´ıpica de uma rede fieldbus . . . . . . . . . . . . . . . . . . 23
3.2 Modelo de camadas Foundation Fieldbus comparado ao OSI . . . . . 25
3.3 Tipos de Blocos Funcionais . . . . . . . . . . . . . . . . . . . . . . . . 26
3.4 Bloco Aritm´etico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.5 Blocos Caracterizador . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6 Neurˆonio com Blocos Funcionais . . . . . . . . . . . . . . . . . . . . . 28
3.7 Blocos Aritm´eticos Agrupados . . . . . . . . . . . . . . . . . . . . . . 28
4.1 Diagrama de Blocos do Algoritmo da Auto-Corre¸ao . . . . . . . . . 31
4.2 Diagrama de Blocos do Treinamento da Auto-Corre¸ao . . . . . . . . 32
4.3 Diagrama de Blocos do Algoritmo da Auto-Verifica¸ao . . . . . . . . 33
4.4 Treinamento da Auto-Verifica¸ao . . . . . . . . . . . . . . . . . . . . 33
4.5 Diagrama de Blocos do algoritmo da Auto-Valida¸ao . . . . . . . . . 34
4.6 Diagrama de blocos da Auto-Corre¸ao com Redes Recorrentes . . . . 35
4.7 Diagrama de blocos do treinamento da Rede Recorrente . . . . . . . . 35
4.8 Diagrama de blocos da Auto-Verifica¸ao com Redes Recorrentes . . . 36
5.1 Sistema de Controle de N´ıvel utilizado . . . . . . . . . . . . . . . . . 37
vi
5.2 Diagrama de Blocos do Controle do Processo . . . . . . . . . . . . . . 38
5.3 Curva de Calibra¸ao do Sensor . . . . . . . . . . . . . . . . . . . . . . 39
5.4 Curvas de Calibra¸ao do Sensor em Tempos de Funcionamento
Diferentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.5 Arquitetura da Rede Neural Utilizada . . . . . . . . . . . . . . . . . . 40
5.6 Resultado da Auto- Corre¸ao . . . . . . . . . . . . . . . . . . . . . . . 41
5.7 Resultado da Auto- Verifica¸ao . . . . . . . . . . . . . . . . . . . . . . 41
5.8 Entrada do Sistema na primeira simulao . . . . . . . . . . . . . . . 42
5.9 Resposta do Sistema `a entrada degrau e resultado da auto-corre¸ao . 43
5.10 Resposta do Sistema `a entrada degrau e resultado da auto-verifica¸a o 43
5.11 Entrada do Sistema na Segunda Simula¸ao . . . . . . . . . . . . . . . 44
5.12 Resposta do Sistema `a entrada variando e resultado da auto-corre¸ao 45
5.13 Resposta do Sistema `a entrada variando e resultado da auto-verifica¸ao 46
5.14 Arquitetura da Rede Recorrente . . . . . . . . . . . . . . . . . . . . . 47
5.15 Descalibra¸ao do sensor com o tempo . . . . . . . . . . . . . . . . . . 48
5.16 Resposta do Sistema `a entrada degrau e resultado da auto-corre¸ao
com Rede Recorrente . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.17 Resposta do Sistema `a entrada degrau e resultado da auto-verifica¸ao
com Rede Recorrente . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.18 Resposta do Sistema `a entrada variando e resultado da auto-corre¸ao
com Rede Recorrente . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.19 Resposta do Sistema `a entrada variando e resultado da auto-
verifica¸ao com Rede Recorrente . . . . . . . . . . . . . . . . . . . . . 50
5.20 Erro do sistema para entrada degrau e treinamento com backpropaga tion 51
5.21 Erro do sistema para entrada degrau e treinamento com filtro de Kalman 51
vii
Lista de Tabelas
3.1 Principais blocos funcionais . . . . . . . . . . . . . . . . . . . . . . . 27
A.1 Parˆametros da Planta . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
viii
Lista de S´ımbolos e Abrevia¸oes
CLP - Controlador o gico Program´avel
DD - Device Descriptor
DLL - Data Link Layer
DSP - Processadores Digitais de Sinais (Digital Signal Processors)
EKF - Filtro de Kalman Estendido (Extended Kalman Filter)
FAS - Fieldbus Access Sublayer
FF - Foundation Fieldbus
FFB - F lexible Function Block
FMS - Fieldbus Message Specification
H1 - Barramento de Campo Foundation Fieldbus
HSE - High Speed Ethernet
MLP - Perc´eptron de M´ultiplas Camadas (Multilayer Perceptron)
NARX - Modelo ao Linear Auto-Regressivo com Entradas Ex´ogenas
OSI - Open Systems Interconnection
PhL - Physical Layer
PID - Proporcional Integral Derivativo
RNA - Rede Neural Artificial
ix
Cap´ıtulo 1
Introdu¸c˜ao
Na ind´ustria, o uso de instrumentos de medi¸ao para aferir as condi¸oes do
processo industrial em execu¸ao ´e essencial. Esses instrumentos de medi¸ao utilizam
sensores, elementos transdutores capazes de transformar uma grandeza f´ısica em um
sinal el´etrico, anal´ogico ou digital, cujo sinal de sa´ıda depende do valor da grandeza
medida. A partir desse sinal el´etrico ´e poss´ıvel visualizar o valo r da grandeza p or
meio de uma escala gr´afica ou de um mostrador digital. A fun¸ao matem´atica que
define a proporcionalidade entre a grandeza f´ısica e o sinal fornecido pelo sensor ´e,
neste trabalho, chamada de curva de calibra¸ao. A figura 1 .1 mostra um exemplo
de curva de calibra¸ao de um sensor de temperatura emp´ırico. O eixo das abscissas
corresponde `a temperatura medida em graus Celsius e o eixo das ordenadas `a tens˜ao
em volts g erada pelo sensor.
´
E comum, durante o ciclo de vida de um processo industrial, que os sensores
atuantes na planta se desgastem e se descalibrem com o tempo, isto ´e, que a
curva de calibra¸ao se deforme, de forma que o sinal referente ao valo r da medi¸ao
ao corresp onda ao valor real da grandeza f´ısica. Essa descalibra¸ao deve ser
evitada, pois pode mascarar os verdadeiros resultados obtidos com o processo,
ocasionando erros em seu controle e, conseq¨uentemente, uma queda na qualidade
do produto que se est´a produzindo. Fatores de seguran¸ca tamb´em dependem
do funcionamento correto dos sensores quando o processo cont´em materiais e
substˆancias que podem provocar explos˜oes sob certas circunstˆancias. Por exemplo,
a press˜ao em uma caldeira de uma ind´ustria ao pode ultrapassar o valor limite
definido pelo seu fabricante, portanto deve ser monitorada constantemente. Tamb´em
1
CAP
´
ITULO 1. INTRO DUC¸
˜
AO 2
Figura 1.1: Exemplo de Curva de Calibra¸ao de um Sensor Emp´ırico
´e relevante citar a importˆancia dos sensores na medi¸ao fiscal, cujos erros de medi¸ao
poderiam resultar em alculos de fa t ura mentos incompat´ıveis com os dados reais e,
conseq¨uentemente, em preju´ızos financeiros `a ind´ustria.
Dado que os sensores invariavelmente sofrem desgastes e que ao necess´arias
precis˜ao e exatid˜ao para que o s processos industriais sejam controla do s de forma
correta, ´e fundamental que os sensores descalibrados tenham, de alguma forma, o
seu erro de medi¸ao corrigido. Para tanto, ´e necess´aria uma recalibra¸ao do sensor.
Essa recalibra¸ao normalmente ´e realizada em laborat´orio, sendo necess´ario retirar
o sensor da linha de produ¸ao, o que implica, por vezes, na interrup¸ao do processo.
Al´em disso, a recalibra¸ao deve ser feita em um momento apropriado, pois se feita
de forma tardia, pode acarretar preju´ızos e, se precipitada, pode-se sub-utilizar o
sensor.
O presente trabalho consiste no estudo de a lg oritmos inteligentes para detectar a
necessidade de se recalibrar um sensor e de se compensar eventuais erros que possam
acontecer em virtude de uma descalibra¸ao.
´
E sabido que a inclus˜ao de elementos de Inteligˆencia Artificial em um sistema ´e
capaz de melhorar o desempenho, confiabilidade e robustez do controle, porque
eles incorporam um tipo de conhecimento que ao pode ser resgatado nos
modelos anal´ıticos tradicionais [Driankov et al., 1 996]. Assim, a proposta ´e utilizar
CAP
´
ITULO 1. INTRO DUC¸
˜
AO 3
Redes Neurais Artificiais a fim de aproveitar a sua capacidade de aprendizado e
aproxima¸ao de fun¸oes [Hassoun, 1996], de forma que elas possam aprender a
varia¸ao da curva de calibra¸ao do sensor com o tempo. Conhecendo o padr˜ao
de varia¸ao de tal curva, ´e poss´ıvel corrigir erros oriundos da descalibra¸ao e indicar
quando o sensor est´a descalibrado.
Uma outra possibilidade analizada no trabalho foi o uso de Redes Neurais
Recorrentes com a finalidade de aplicar as caracter´ısticas dinˆamicas desta rede para
guardar informa¸oes do estado de sistemas, atrav´es do treinamento com o algoritmo
da Back p ropagation e com o algoritmo do Filtro de Kalman. Tais redes podem
aprender a dinˆamica de varia¸ao de estado da planta e verificar quando o sinal vindo
do sensor est´a muito diferente do que deveria estar, de acordo com a estimativa dos
algoritmos. Quando a diferen¸ca for muito grande, ´e proavel que o sensor esteja
descalibrado.
Os algoritmos desenvolvidos tˆem como objetivo a resolu¸ao de dois problemas:
o primeiro, a defini¸ao do melhor momento para se calibrar o sensor, reduzindo
assim o n´umero de recalibra¸oes precipitadas ou tardias; e, segundo, encontrar
uma maneira de se corrigir erros de um sensor descalibrado, permitindo que ele
trabalhe mais tempo sem precisar de uma calibra¸ao. Um terceiro problema surge
ao resolver os dois problemas anteriores. Supondo que se tenha a solu¸ao do
problema da determina¸ao da periodicidade das calibra¸oes e da corre¸ao do erro
durante a descalibra¸ao, a confiabilidade da solu¸ao deve ser aferida. Os algoritmos
propostos ao chamados de algoritmos da a uto -verifica¸ao, auto-corre¸ao (ou auto-
compensa¸ao ) e auto-valida¸ao [Pereira and Bezerra, 2004].
Outro ponto importante ´e o embarque dos a lg oritmos em sensores de uma rede
industrial de modo que eles possam ter novas funcionalidades [Tian et al., 2000].
Uma rede industrial ´e uma rede digital local para conectar instrumentos que
participam de um processo em uma ind´ustria. Dentre os padr˜oes de redes
industriais existentes no mercado podemos destacar o padr˜ao Foundation Fieldbus
[Foundation, 20 03], que possibilita a implementa¸ao de controle no campo e de fo r ma
distribu´ıda. Al´em disso, ele possui uma maior f acilidade de programa¸ao, atrav´es
de blocos funcionais, que permitem implementa¸oes de fun¸oes de controle mais
variadas que os demais padr˜oes [Silva, 2005]. Como os dispositivos Fieldbus ao
program´aveis, a id´eia ´e incorporar nos pr´oprios sensores os algoritmos inteligentes
CAP
´
ITULO 1. INTRO DUC¸
˜
AO 4
atraes da sua implement a¸ao em blocos funcionais.
Pesquisas vˆem sendo realizadas nesse sentido com os mais variados objetivos,
principalmente no campo do diagn´ostico de falhas em controle de processos
industriais [Calado et al., 2001]. Outros campos muito estudados ao a ident ifica¸ao
de sistemas, onde plantas que possuem leituras de suas vari´aveis feitas por
sensores Foundation Fieldbus em os seus comporta mentos simulados por Redes
Neurais Artificiais [Fernandes et al., 2006]; a extra¸ao de ru´ıdos das medidas de
sensores utilizando m´etodo s de filtragem esto c´astica [Costa, 2006]; implementa¸ao
de mecanismos de controle avan¸cado, como o controle Fuzzy ou o controle neural
[Lima et al., 2004]; dentre outros.
1.1 Organiza¸ao da Disserta¸ao
Esta disserta¸ao est´a dividida em seis cap´ıtulos. O Cap´ıtulo 1 apresenta uma
introdu¸ao sobre a proposta do trabalho. O Cap´ıtulo 2 tem como objetivo apresenta r
uma vis˜ao geral sobre Redes Neurais, enfatizando os tipos que ser˜ao utilizados no
trabalho.
O Cap´ıtulo 3 descreve com mais detalhes o ambiente de rede industrial no qual
o trabalho est´a inserido, explicando a estrutura das redes Founda tion Fieldbus bem
como a cria¸ao de softwares para os instrumentos conectados `a rede.
No Cap´ıtulo 4, descreve-se a proposta deste trabalho, explicando o
funcionamento dos algoritmos inteligentes utilizados para compensar erros de
calibra¸ao, bem como a sua implementa¸ao com redes neurais. O Cap´ıtulo 5 conem
exemplos e resultados obtidos com a implementa¸ao dos algoritmos. Por fim, no
Cap´ıtulo 6 ser˜ao apresentadas conclus˜oes e perspectivas a respeito do trabalho e dos
resultados obtidos.
Cap´ıtulo 2
Redes Neurai s Artificiais
As Redes Neurais Artificiais o u, simplesmente, Redes Neurais, constituem uma
´area da Inteligˆencia Artificial que busca encontrar, inspirada no funcionamento dos
neurˆonios biol´ogicos, uma solu¸ao para os problemas de reconhecimento de padr˜oes
e aprendizado por uma aquina.
As primeiras pesquisas que levaram `a sua cria¸ao foram realizadas pelo psiquiatra
e neuroanatomista Warren S. McCulloch e o matem´atico Walter H. Pitts, em
1942. Em seu trabalho intitulado A log i cal calculus of the ideas immanent in
nervous a ctivity [McCulloch and Pitts, 1943], McCulloch e Pitts sugeriram um
modelo matem´atico para os neurˆonios, c´elulas dos sistemas nervosos dos seres vivos
respons´aveis pela transmiss˜ao de impulsos nervosos e tamb´em pelo processo de
aprendizado, segundo diversas pesquisas. O modelo ficou conhecido como neurˆonio
artificial de McCulloch e Pitts.
Nesse modelo, o neurˆonio ´e formado por um conjunto de entradas, que podem
assumir os valores zero ou um; um corpo celular ou soma, respons´avel por somar
os valores oriundos das entradas; um limiar, que torna poss´ıvel realizar uma
transforma¸ao afim na sa´ıda do neurˆonio; uma fun¸ao de ativa ¸ao, que limita o
valor da sa´ıda ao conjunto de valores do contra-dom´ınio de tal fun¸ao; e uma sa´ıda
ou axˆonio, que ´e o resultado da aplica¸ao da fun¸ao de ativao `a soma das entradas.
A fun¸ao de ativao no neurˆonio de McCulloch e Pitts ´e a fun¸ao degrau, definida
na equa¸ao 2.1 , devido a qual, a sa´ıda do neurˆonio, assim como as entradas, eram
limitadas aos valo r es zero ou um.
5
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 6
y(x) =
0, se x < 0
1, se x 0
(2.1)
Em 1949, Donald Hebb revolucionou a maneira como os neurˆonios artificiais eram
concebidos. No seu livro, the Organiz ation of Beh avior, ele propˆos o que passou a
se chamar de regra de Hebb. Ele diz que:
“Quando o axˆonio de uma c´elula A est´a pr´oximo o suficient e para
excitar uma c´elula B e, repetidamente ou persistentemente, faz parte da
sua ativao, a lg um processo de crescimento ou mudan¸cas metab´olicas
toma lugar em uma ou ambas as elulas de modo que a eficiˆencia de A
como uma das c´elulas que ativam B aumenta.”[Hebb, 1949]
Hebb estava pro pondo ao apenas que quando dois neurˆonios ao ativados juntos
a conex˜ao entre os neurˆonios ´e fortalecida, mas tamem que tal atividade ´e uma das
opera¸oes fundamentais necess´arias ao aprendizado e `a mem´oria. Para o neurˆonio
artificial, isso significava que o modelo de McCulloch-Pitts deveria ser modificado
para permitir essa nova proposta biol´ogica.
Frank Rosenblatt, usando o neurˆonio de McCulloch-Pitts e as descobertas de
Hebb, melhorou o modelo do neurˆonio artificial de fo r ma a permitir que os valores
das entradas ao mais se restringissem a zero ou um. Al´em disso, p ossibilitou
a pondera¸ao de tais valores atrav´es dos pesos sin´apticos, assim como, em um
neurˆonio biol´og ico, os neurotransmisso r es modificam as intensidades dos sinais
el´etricos propagados. A mudan¸ca de valores desses pesos sin´apticos ´e respons´avel
pelo aprendizado da Rede Neural e o alg oritmo que r ealiza essa mudan¸ca ´e chamado
de algoritmo de treinamento.
O modelo de Rosenblatt ficou conhecido como Pe rceptron [Rosenblatt , 1958] e
pode ser visto na figura 2.1, onde x
1
, x
2
, ..., x
n
ao as entradas, b
k
´e o limiar, y
k
´e
a sa´ıda e Σ represent a o corpo celular. As estruturas w
k1
, w
k2
, ..., w
km
ao os pesos
sin´apticos.
O corpo celular funciona como um combinador linear das entradas. O sinal
gerado po r essa combina¸ao sofre uma transforma¸ao afim atrav´es da soma com o
limiar, quando passa, enao, a ser chamado de campo local induzido, v
k
na figura.
A amplitude do sinal gerado pelo corpo celular ´e enao restringida p ela fun¸ao de
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 7
Figura 2.1: Representa¸ao gr´afica de um Neurˆonio Artificial
ativao, representa da na figura por ϕ(·). Desse modo, assegura-se que a amplitude
do sinal de sa´ıda ter´a um valor finito. A estrutura do neurˆonio artificial possibilita
descrevˆe-lo de modo matem´atico como segue:
v
k
=
m
j=1
w
kj
x
j
(2.2)
y
k
= ϕ(u
k
+ b
k
) (2.3)
onde x
1
, x
2
, ..., x
m
, ao os sinais de entrada; w
k1
, w
k2
, ..., w
km
ao os pesos sin´apticos
do neurˆonio k; v
k
´e a sa´ıda do combinador linear devido aos sinais de entrada; b
k
´e
o limiar; ϕ(·) ´e a fun¸ao de ativa¸ao e y
k
´e a sa´ıda do neurˆonio.
Podemos citar trˆes tipos asicos de fun¸o es de ativao: fun¸ao degrau, fun¸ao
linear e fun¸a o sigm´oide, vistas na figura 2.2. Essas fun¸oes definem a sa´ıda do
neurˆonio em termos do campo local induzido. Elas ao escolhidas de acordo com a
aplica¸ao que ter´a uma determinada rede neural.
Figura 2.2: Fun¸oes Degrau, Linear e Sigm´oide, respectivamente
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 8
2.1 Por que utilizar Redes Neurais?
arias caracter´ısticas motivam o uso das Redes Neurais no campo da Inteligˆencia
Artificial, entre as quais podemos citar [Haykin, 2001b]:
ao-linearidade: As redes neurais podem ter comportamento linear ou a o-linear.
Essa propriedade ´e importante quando os sinais de entrada da rede forem ao
lineares, o que se encontra exemplificado na maioria dos processos naturais.
A utiliza¸ao de Redes Reurais pode fazer a modelagem de tais sistemas,
normalmente bastante complexa, de forma autom´atica.
Aprendizado: As redes neurais tˆem capacidade de aprenzidado. Existem
duas categorias de aprendizado, o aprendizado supervisionado e o ao-
sup ervisionado. Quando a aprendizagem das redes neurais ´e feita atraes
da utiliza¸ao de um professor, ´e chamada de supervisionada. Trata-se de um
processo em que ´e apresentado `a Rede Neural um conjunto de entradas de
exemplo e a sa´ıda desejada par a cada uma delas. Numa fase seguinte, as
entradas passam por um processamento nos neurˆonios da rede e ´e o btida uma
sa´ıda, que ser´a comparada com aquela desejada para a modifica¸a o dos peso s
sin´apticos. Esse processo ´e refeito at´e que o erro m´edio seja menor que uma
tolerˆancia predeterminada e culmina com uma modifica¸ao da rede atrav´es de
um mapeamento entrada-sa´ıda do problema considerado. Na aprendizagem
ao-supervisionada ao existe um pro fessor para acompanhar o processo, o
que significa que ao a a apresenta¸ao para a rede de exemplos rotulados do
problema a ser aprendido pela rede. Os modelos de Rede Neural considerados
neste trabalho utilizam par a o seu aprendizado o treinamento supervisionado.
Adaptabilidade: As redes neurais tˆem uma grande capacidade de se a dapta r
a modifica¸oes ambientais. Uma rede neural que trabalhava em um certo
ambiente pode facilmente modificar-se atrav´es de um retreinamento e operar
em outro ambiente.
Capacidade de decis˜ao sobre a qualidade da informa¸ao: Uma rede neural
pode ser projetada a o apenas para decidir qual resposta ´e a mais correta
como tamem para avaliar a qualidade de sua decis˜ao. Desse modo, quando o
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 9
sinal de qualidade estiver informando que existe ambiguidade na resposta de
uma rede neural, ela poder´a ser r ejeitada.
Informa¸ao contextual: A atividade de cada neurˆo nio afeta todos os outros.
Dessa forma, o conhecimento a dquirido pela rede ´e refletido em sua pr´opria
estrutura. Assim, a informa¸ao contextual ´e sempre considerada pela Rede
Neural ao produzir uma resposta.
Tolerˆancia a falhas: Devido a sua estrutura robusta, as Rede Neurais ao bastante
tolerantes a falhas, po is o seu desempenho se degrada de forma muito suave
mesmo sob as condi¸oes mais adversas.
Implementa¸ao em VLSI: As redes neurais ao bastante indicadas para a
implementa¸ao utilizando a tecnologia de integra¸ao em larga escala devido a
sua natureza maci¸camente paralela.
2.2 Perc´eptron de M´ultiplas Camadas
Em 1969 houve um grande desest´ımulo `a pesquisa das redes neurais artificiais
devido a um ar tig o publicado por Minsky e Papert [Misky and Papert, 196 9], que
explicava que os Perc´eptrons ao poderiam r esolver problemas onde as classes de
dados envolvidas ao fossem linearmente separ´aveis. O exemplo utilizado para
provar isso foi simples: o Perceptron ao poderia representar a opera¸ao ogica
ou-exclusivo (XOR), pois ao existe uma fun¸ao linear que separe os resultados 0
ou 1 em classes diferentes, como existe para as fun¸oes AND e OR, como pode ser
visto na figura 2.3.
Para resolver o problema, seria necess´ario criar Redes Neurais com arias
camadas de neurˆonios, mas ao existiam algoritmos capazes de realizar os
treinamentos de tais redes. Houve, enao, devido `a publica¸ao desse artigo e `a falta
de computadores capazes de simular eficientemente as redes que estava sendo criadas,
um per´ıodo em que poucas publica¸oes foram feitas na ´area das R edes Neurais
Artificiais. De fato, somente um punhado dos pesquisadores pioneiros originais
mantiveram seu comprometimento com a ´area.
Esta situa¸ao mudou a partir de 1986, quando foi relatado por Rumelhart, Hinton
e Williams o desenvolvimento do Algoritmo da Retropropaga¸ao (Backpropagation)
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 10
Figura 2.3: Problema do ou-exclusivo
[Rumelhart et al., 1986] para redes Perceptron com M´ultiplas Camadas (Multilayer
Perceptrons - MLP) e a sua utiliza¸ao para a aprendizagem de aquina. Tal
algoritmo encontra-se explicado detalhadamente no apˆendice B.
As redes Perceptron de M´ultiplas Camadas ao redes neurais formadas p or
arias camadas de neurˆonios, onde cada uma dessas camadas pode ter arios desses
elementos formadores, conforme pode ser visto no exemplo da figura 2.4. O n´umero
de neurˆonios existentes em cada camada ´e chamado de arquitetura da rede neural.
Como a foi dito, o seu treinamento ´e feito atraes do a lg oritmo da ba c kpropaga tion .
Figura 2.4: Exemplo de Arquitetura da Perc´eptron de M´ultiplas Camadas
Este treinamento consiste basicamente em dois passos. Primeiro, um padr˜ao ´e
apresentado `a camada de entrada da rede e sua atividade resultante flui atrav´es
da rede, camada por camada, at´e que a resposta seja produzida pela camada de
sa´ıda. No segundo passo, a sa´ıda obtida ´e comparada `a sa´ıda desejada para esse
padr˜ao particular. Se esta ao estiver correta, o erro ´e calculado. O erro ´e ent˜ao
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 11
propagado a par t ir da camada de sa´ıda at´e a camada de entrada, e os pesos das
conex˜oes das unidades das camadas internas ao sendo modificados conforme o erro
´e retropropagado.
As redes que utilizam back propagation trabalham com uma varia¸ao da regra
delta, apropriada para redes multi-camadas: a regra delta generalizada. A regra
delta padr˜ao, essencialmente, implementa um g r adiente descendente no quadrado da
soma do erro para f un¸oes de ativao lineares. Redes sem camadas intermedi´arias,
podem resolver problemas onde a superf´ıcie de erro tem a forma de um parabol´oide
com apenas um m´ınimo. Entretanto, a superf´ıcie do erro pode ao ser ao simples e
suas derivadas mais dif´ıceis de serem calculadas. Nestes casos devem ser utilizadas
redes com camadas intermedi´a rias. Ainda assim, as redes ficam sujeitas aos
problemas de procedimentos hill-cli mbing”, ou seja, ao problema de m´ınimos locais.
Um fator importante nesse algoritmo ´e a taxa de aprendizado, que ´e uma
constante de proporcionalidade no intervalo [0,1] que ir´a dizer o quanto os pesos
dever˜ao se modificar. Quanto maior for essa taxa de aprendizado, maior ser´a a
mudan¸ca nos pesos, aumentando a velocidade do aprendizado, o que pode levar
`a uma oscila¸ao do modelo na superf´ıcie de erro. O ideal seria utilizar a maior
taxa de aprendizado poss´ıvel que ao levasse a uma oscila¸ao, proporcionando um
aprendizado mais apido.
O treinamento das redes MLP com backpropagation pode demandar muitos
passos no conjunto de treinamento, resultando um tempo de treinamento
consideravelmente longo. Se for encont rado um m´ınimo local, o erro para o conjunto
de treinamento ara de diminuir e estaciona em um valor maior que o aceit´avel. Uma
maneira de aumentar a t axa de aprendizado sem levar `a oscila¸ao ´e modificar a regra
delta generalizada para incluir o termo de momento, uma constante que determina o
efeito das mudan¸cas passadas dos pesos na dire¸ao atual do movimento no espa¸co de
pesos. Desta forma, o termo de momento leva em considera¸ao o efeito de mudan¸cas
anteriores de pesos na dire¸ao do movimento atual no espa¸co de pesos, tornando-se
´util em espa¸cos de erro que contenham longas gargantas, com curvas acentuadas ou
vales com descidas suaves.
As redes Perceptron de M´ultiplas Camadas ao excelentes pa ra classifica¸ao de
padr˜oes e para realizar aproxima¸ao de fun¸oes, o que significa que, a partir de um
grupo de amostras de pontos pertencentes a uma fun¸ao, a rede neural consegue
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 12
identificar o padr˜ao contido em tais amostras e ajustar os seus pesos de forma que
ela possa simular tal fun¸ao. Um exemplo de aproxima¸a o de fun¸ao pode ser visto
na figura 2.5.
Figura 2.5: Exemplo de aproximao de fun¸ao com uma MLP.
[Kr¨ose and van der Smagt, 1996]
Neste trabalho, como ser´a apresentado no cap´ıtulo 4, as r edes Perceptron de
M´ultiplas Camadas ser˜a o utilizadas como base dos algoritmos de auto-verifica¸ao,
auto-corre¸ao e auto-valida¸ao de sensores. Elas ter˜ao como principal fun¸ao o
aprendizado das diversas formas da curva de calibra¸ao do sensor em diferentes
instantes de tempo. A partir dessas informa¸oes e do conhecimento do temp o de
funcionamento do sensor, ´e poss´ıvel saber o quanto um sensor est´a descalibrado.
2.3 Redes Neurais Recorrentes
Foco de muitas pesquisas desde a d´ecada de 1980, as Redes Neura is
Recorrentes foram criadas para aprender padr˜oes seq¨uenciais ou variantes no tempo
[Medsker and Ja in, 2001]. Elas ao, basicamente, Redes Neurais que possuem
realimenta¸ao, isto ´e, o sinal de sa´ıda da rede ´e passado de volta (realimentado)
para a entra da [Fausset, 1994]. Podemos citar como exemplos as Redes de Hopfield,
as aquinas de Boltzmann e as Perceptrons de M´ultiplas Camadas Recorrentes
[Hecht-Nielsen, 1990]. Essas ´ultimas ao basicamente constru´ıdas atrav´es da
aplica¸ao de la¸cos de realimenta¸ao a uma Rede Neural Perceptron de ultiplas
Camadas e ser˜ao o foco desta se¸ao.
As Redes Recorrentes podem assumir diversos tipos de arquitetura de acordo com
a configura¸ao dos la¸cos de realimenta¸ao [Haykin, 2001b], como por exemplo, uma
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 13
realimenta¸ao dos neurˆonios da camada de sa´ıda para os neurˆonios da camada de
entrada, uma realimenta¸ao de neurˆonios de camadas intermedi´arias para neurˆonios
da camada de entrada, entre outras. A figura 2.6 mostra um tipo de arquitetura que
´e resultado da aplica¸ao de la¸cos de realimenta¸ao da camada de sa´ıda para a camada
de entrada de uma Rede Neural Perceptron de M´ultiplas Camadas. Este modelo,
conhecido como modelo NARX (Non-linear AutoRegressive with eXogenous inputs,
ou ao Linear Auto-Regressivo com Ent radas Ex´ogenas), tem uma ´unica entrada
u(n) que ´e atrasada q unidades no tempo. Tem ainda uma ´unica sa´ıda y( n) que
´e atrasada tamem em q unidades. O s sinais atrasados da entrada e da sa´ıda ao
utilizados para alimentar a camada de entrada.
Figura 2.6: Exemplo de Perc´eptron de M´ultiplas Camadas Recorrente
A presen¸ca de la¸cos de realimenta¸ao em Redes Neurais Recorrentes permite
que elas adquiram representa¸oes de estado, o que as torna apropriadas para ta r efa s
como previs˜ao ao-linear [Haykin, 2001b].
A no¸ao de estado desempenha um papel importante na formula¸ao matem´atica
de um sistema dinˆamico. O estado de um sistema dinˆamico pode ser definido como
um conjunto de vari´aveis que resumem toda a informa¸ao sobre o comportamento
passado do sistema e que ´e necess´aria para descrever o seu comporta mento futuro, a
ao ser por eventuais efeitos externos que venham a surgir [Haykin, 2001b]. Pode-se
descrever este comportamento matematicamente a partir das equa¸oes de vari´aveis
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 14
de estado ao lineares 2.4 e 2 .5.
x(n + 1) = ϕ(W
a
x(n) + W
b
u(n)) (2.4)
y(n) = Cx(n) (2.5)
Considerando q como sendo a ordem do sistema, m a ordem da entrada e p a
ordem da sa´ıda, podemos dizer que x(n) ´e um vetor q-por-1, u(n) ´e um vetor m-por-
1, W
a
´e uma matriz q-por-q, W
b
´e uma matriz q-por-m, C ´e uma matriz p-por-q,
e ϕ(·) ´e a fun¸ao de ativao.
Nestas equa¸oes, x(n) representa o estado atual do sistema dinˆamico, x(n + 1)
representa o estado futuro para a entrada u(n) e y(n) ´e a sa´ıda do sistema no
estado x(n). As matrizes W
a
, W
b
e C ao, respectivamente, os pesos sin´apticos
dos q neurˆonios na camada oculta que est˜ao conectados aos os de realimenta¸ao na
camada de ent r ada, os pesos sin´apticos dos neurˆonios ocultos que est˜ao conectados
aos os fontes na camada de entrada, os pesos sin´apticos dos p neurˆonios lineares na
camada de sa´ıda que est˜ao conectados aos neurˆonios ocultos. A fun¸ao de at ivao
ϕ(·) tipicamente assume a forma de uma f un¸ao tangente hiperb´olica ou log´ıstica.
Uma propriedade import ante de uma rede recorrente descrita pelo modelo de
espa¸co de estados ´e que ela pode aproximar uma ampla classe de sistemas dinˆamicos
ao-lineares [Haykin, 20 01b].
Em r ela¸ao ao treinamento, existem dois modos de fazˆe-lo numa rede recorrente:
Treinamento por ´epoca: Para uma dada ´epoca, a rede recorrente inicia a
execu¸ao de a lgum estado inicial at´e alcan¸car um novo estado, em que o
treinamento ´e parado e a rede ´e reinicializada em um estado inicial para a
pr´oxima ´epoca. O estado inicial ao precisa ser o mesmo para cada ´epoca de
treinamento. Em vez disso, o que ´e importante ´e que o estado inicial da nova
´epoca seja diferente do estado alcan¸cado pela rede ao final da ´epoca anterior.
Treinamento cont´ınuo: Este etodo ´e adequado a situa¸oes em que ao haja
estados de rein´ıcio e/ou em que seja requerida aprendizagem em tempo de
execu¸ao. A caracter´ıstica que distingue o treinamento cont´ınuo ´e que a rede
aprende enquanto realiza o processamento de sinal.
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 15
Baseado nesses modelos, podemos citar dois algoritmos a serem usados para
aprendizagem em redes recorrentes: o backpropagation e o Filtro de Kalman. Tendo
em vista que o algoritmo da bac kpropaga tion a foi comentado na se¸ao anterior,
faz-se necess´ario explicar melhor o que consiste o Filtro de Kalman e descrever o seu
algoritmo.
2.4 Filtro de Kalman
A aprendizagem de uma rede neural pelo algoritmo da backpropagation ´e
normalmente lenta por ter de contar com as estimativas instananeas do gradiente
[Haykin, 2001b].
´
E poss´ıvel superar essa limita¸ao utilizando uma ecnica conhecida
como filtragem de Kalman, que utiliza recursivamente a informa¸ao contida nos
dados de treinamento. O nosso principal interesse no Filtro de Kalman ´e explorar
as suas propriedades para realizar o treinamento supervisionado de uma rede neural
recorrente.
O F iltro de Kalman [K alman, 1 960] ´e uma poderosa ferramenta matem´atica
que provˆe uma solu¸ao ´otima para o problema de estimar o estado de um sistema
dinˆamico linear a t r av´es de medidas ruidosas de estados anteriores, problema este
chamado de Probl ema da Filtrage m Linear
´
Otima [Haykin, 2001a].
Ta l ferramenta foi uma das grandes descobertas da teoria da estima¸ao estat´ıstica
e permitiu a realiza¸ao de muitas aplica¸oes na ´area de controle de sistemas
dinˆamicos [Grewal, 2 001]. Para muitas aplica¸oes ao ´e poss´ıvel medir todas as
vari´aveis que se deseja controlar, e o Filtro de K alman provˆe meios de se inferir
as informa¸oes faltantes a partir de medi¸oes indiretas ou ruidosas. Esse algor itmo
tamem ´e usado para predi¸ao de estados futuros.
Um exemplo de aplica¸ao seria fornecer informa¸oes precisas sobre a posi¸ao e
velocidade de um objeto utilizando apenas uma seq¨uˆencia de observoes sobre sua
posi¸ao, cada uma delas contendo algum erro. Sua aplica¸ao mais imediata ´e no
controle de sistemas dinˆamicos complexos, mas tamb´em ´e freq¨uentemente usado em
aplica¸oes gr´aficas e econˆomicas.
A figura 2.7 mostra o contexto no qual o Filtro de Kalman ´e aplicado. Um
sistema f´ısico ´e controlado por um conjunto de entra das e a sua sa´ıda ´e medida
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 16
Figura 2.7: Exemplo de uso do Filtro de Kalman [Maybeck, 1990]
por instrumentos de medi¸ao, de t al forma que o comportament o do sistema o ´e
conhecido pelas suas entradas e sa´ıdas. Al´em disso, pode haver erros no processo,
sendo estes erros no sistema ou na medi¸ao. Ba seado na informa¸ao dispon´ıvel, o
Filtro de Kalman tem como fun¸a o estimar o estado do sistema [R ibeiro, 2004].
Isso ´e feito de modo recursivo, pois cada estimativa do estado posterior ser´a
calculada com base na estimativa do estado precedente e dos dados de entrada,
assim, somente a estimativa do estado precedente requer armazenamento. Al´em
de eliminar a necessidade de armazenar todos os dados j ´a observados, o Filtro de
Kalman ´e computacionalmente mais eficiente do que o alculo de cada estimativa
baseado em todos os estados anteriores.
Um sistema dinˆamico pode ser modelado atrav´es das seguintes equoes de
estado:
x
k
= F
k,k1
· x
k1
+ q
k1
(2.6)
y
k
= H
k
· x
k
+ r
k
(2.7)
Na equa¸ao 2.6 , chamada de equa¸ao do processo, x
k
´e o vetor de estados do
sistema no tempo k, F
k,k1
´e a matriz de transi¸ao e q
k
´e o ru´ıdo do processo, um
ru´ıdo aditivo, branco e gaussiano com m´edia zero e matriz de covariˆancia Q
k
. a a
equa¸ao 2.7 ´e chamada de equa¸ao de medi¸ao e tem como vari´aveis y
k
, que ´e a sa´ıda
do sistema no tempo k, H
k
´e a matriz de medi¸ao e r
k
´e o ru´ıdo de medi¸ao, que
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 17
tamem ´e aditivo, bra nco e gaussiano, mas com uma matriz de covariˆancia R
k
. Os
ru´ıdos q
k
e r
k
ao descorrelacionados. Essas equa¸oes pode ser melhor entendidas
atraes do diagrama de blocos da figura 2 .8 :
Figura 2.8: Representa¸ao de um sistema dinˆamico, linear e discreto
Suponha que uma medi¸ao em um sistema linear descr ito pelas equa¸oes 2.6 e
2.7 foi feita no tempo k.
´
E necess´ario usar a informa¸ao contida nesta medi¸ao y
k
para atualizar a estimativa ˆx
k
do estado desconhecido x
k
, o que deve ser feito em
dois passos [Tr ebaticky, 2005]:
1. Predi¸a o , onde calculamos a estimativa a priori ˆx
k
e a covariˆancia do erro P
k
atraes das equa¸oes 2.8 e 2.9.
ˆx
k
= F
k,k1
ˆx
k1
(2.8)
P
k
= F
k,k1
P
k1
F
T
k,k1
+ Q
k1
(2.9)
2. Corrc˜ao, onde as estimativas obtidas no passo anterior a o corrigidas de
acordo com y
k
atraes das equa¸oes 2.10 e 2.11.
ˆx
k
= ˆx
k
+ K
k
(y
k
H
k
ˆx
k
) (2.10)
P
k
= (I K
k
H
k
)P
k
(2.11)
A matriz K ´e chamada de m atriz de ganho de Kalman e ´e obtida atrav´es da
equa¸ao 2.12.
K = P
k
H
T
k
[H
k
P
k
H
T
k
+ R
k
]
1
(2.12)
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 18
O filtro de Ka lman asico ´e limitado `a compreens˜ao de sistemas lineares.
Entretant o, a maioria dos sistemas ao ao-lineares como, por exemplo, as Redes
Neurais. Para tais sistemas que possuem ao linearidades, utiliza-se o Filtro de
Kalman Estendido (FKE) que se baseia na lineariza¸ao da equa¸ao de medi¸ao. O
Filtro de Kalman Estendido ´e o objeto de estudo da pr´oxima se¸ao.
2.4.1 Filtro de Kalman Estendido
Considere uma Rede Neural Recorrente constru´ıda em torno de uma Perc´eptron
de M´ultiplas Camadas. Considere ainda que x
k
represente os pesos sin´apticos da
rede no tempo k. As suas equa¸oes de espa¸co de estados podem ser modeladas como
nas equa¸oes 2.13 e 2.14 [Singhal and Wu, 1989], onde o vetor de pesos x
k
representa
o papel de um estado, os vetores u
k
e v
k
ao o vetor entrada e o vetor de atividades
recorrentes do o relativo `a fun¸ao de valor vetorial h(·, ·, ·), respectivamente. O
vetor y
k
representa a resposta desejada do modelo.
x
k+1
= x
k
+ q
k
(2.13)
y
k
= h(x
k
, u
k
, v
k1
) + r
k
(2.14)
Neste sistema, a equa¸ao 2.13 representa o estado ´otimo (ap´os o treinamento)
da rede neural. Tal estado ´e caracterizado por um processo estacion´ario, dado
pelos valores dos pesos sin´apticos x
k
da rede, acrescido de um ru´ıdo do processo q
k
[Trebaticky, 2005]. A equa¸ao 2.14 define que a sa´ıda esperada y
k
da rede neural ´e
uma fun¸ao ao-linear do vetor de entrada u
k
e dos pesos x
k
, acrescidos de um ru´ıdo
de medi¸ao r
k
[Trebaticky, 2005]. Os ru´ıdos q
k
e r
k
ao tipicamente caracterizados
como ru´ıdos brancos e de m´edia zero.
Comparando o modelo descrito nas equa¸oes 2.13 e 2.14 com o modelo dinˆamico
linear das equa¸oes 2.6 e 2.7, vemos que a ´unica diferen¸ca est´a na forma ao-linear da
equa¸ao de medida neste ´ultimo modelo. Como este modelo ´e ao-linear, a aplica¸ao
do Filtro de K alman ao seria apropriada. Para podermos aplicar a teoria do Filtro
de Kalman devemos primeiramente linearizar a equa¸ao 2.14. Ap´os a lineariza¸ao,
ela deve encontrar-se na forma:
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 19
y
k
= H
k
x
k
+ r
k
(2.15)
onde H
k
´e a matriz de medi¸ao do modelo linearizado. A lineariza¸ao consiste no
alculo das derivadas parciais das p sa´ıdas de toda a rede em rela¸ao aos W pesos
do modelo como mostrado na equa¸ao 2.16.
H
k
=
y
1
w
1
y
1
w
2
· · ·
y
1
w
W
y
2
w
1
y
2
w
2
· · ·
y
2
w
W
.
.
.
.
.
.
.
.
.
.
.
.
y
p
w
1
y
p
w
2
· · ·
y
p
w
W
(2.16)
O problema do treinamento de uma rede neural utilizando um filtro de Kalman
Estendido pode ser caracterizado por buscar a melhor estimativa para o estado x
utilizando todas as observoes dispon´ıveis. A solu¸ao do problema ´e dada segundo
as seguintes equa¸oes [Trebaticky, 2005]:
K
k
= P
k
H
T
k
[H
k
P
k
H
T
k
+ R
k
]
1
(2.17)
ˆx
k+1
= ˆx
k
+ K
k
ξ
k
(2.18)
P
k+1
= P
k
K
k
H
k
P
k
+ Q
k
(2.19)
O vetor ˆx
k
representa a estimativa dos pesos no k-´esimo passo do treinamento.
Esta estimativa ´e fun¸ao da matriz de ganho de Kalman K
k
e do erro de sa´ıda
ξ
k
= y
k
ˆy
k
. A matriz de ganho de K alman ´e fun¸ao da matriz de covariˆancia do
erro de aproxima¸ao P
k
e da a matriz de observabilidade H
k
. O alculo da matriz
H
k
pode ser realizado utilizando o algoritmo da backpropagation [Trebaticky, 200 5].
A matriz de covariˆancia do erro de aproxima¸ao P
k
evolui recursivamente junto
com as estimativas dos pesos, sendo acrescida da matriz de covariˆancia do erro do
processo Q
k
.
Cada passo de treinamento pode ser dividido em arios subpassos, como
apresentado no diagrama da Figura 2.9 [Haykin, 2001a].
O diagrama pode ser descrito pelos seguintes passos:
1. alculo da sa´ıda da rede dada uma entrada u
k
e alculo do erro de sa´ıda ξ
k
.
CAP
´
ITULO 2. REDES NEURAIS ARTIFICIAIS 20
2. alculo da matriz de derivadas parciais H
k
, atraes do algoritmo da
backpropagation.
3. alculo da matriz de ganhos de Kalman K
k
.
4. Atualiza¸ao dos pesos da rede neural.
5. Atualiza¸ao da matriz de covariˆancia do erro de aproxima¸ao P
k
.
Figura 2.9: Diagrama de fluxo de sinal durante o treinamento
Ao final da apresent a¸ao de todos os exemplos de treinamento, o algoritmo
consegue gerar uma aproximao ˆx
k
para os pesos sin´apticos da rede.
Neste trabalho, a s Redes Neurais Recorrentes treinada com o backpropagation e
com o filtro de Kalman estendido ser˜a o aplicadas nos alg oritmos da auto-verifica¸ao,
auto-corre¸ao e auto-valida¸ao fa zendo com que elas aprendam a dinˆamica de
descalibra¸ao do sensor, dispensando, deste modo, a vari´avel tempo como uma da s
entradas do sistema. Acabar com a necessidade do conhecimento do tempo de
funcionamento do sensor ´e um fator importante para o trabalho, pois no ambiente
Foundation Fieldbus tal informa¸ao ao pode ser obtida.
Cap´ıtulo 3
Sensores em Ambiente Foundation
Fieldbus
O avan¸co das t´ecnicas de transmiss˜ao de dados por redes digitais e os esfor¸cos
para a cria¸a o de padr˜oes de comunica¸ao entre instrumentos possibilitaram o
surgimento da id´eia de substituir o controle centralizado de processos industriais
pelo controle distribu´ıdo, onde a diversos pontos geograficamente distantes
comunicando-se para a realiza¸ao do controle.
Ta l controle distribu´ıdo baseia-se no uso de redes industriais, que ao redes
locais de comunica¸ao de dados digitais que interconectam os dispo sitivos utilizados
no processo (sensores e atuadores) [Besch, 2004]. Existem diversas vantagens no
controle distribu´ıdo, tais como a utiliza¸ao de informa¸ao digital, que ´e mais
confi´avel que a anal´ogica, por ter uma maior resistˆencia a ru´ıdos; a possibilidade
de configura¸ao e supervis˜ao remota de dispositivos; a redu¸ao na quantidade de
cabeamento necess´ario; a possibilidade de haver colabo ra¸ao entre dispositivos,
garantindo uma maior disponibilidade e tolerˆancia a falhas, dentre outras.
Podemos destacar dentre as vantagens a possibilidade de incluir, nos dispositivos
atuantes na rede industrial, unidades de pro cessamento de dados, provendo-lhe mais
inteligˆencia e autonomia, de forma que tais instrumentos possam atuar ativamente
no processo e ao serem apenas escravos de um controlador central. A possibilidade
de integrar inteligˆencia a um dispositivo est´a se revelando como uma das principais
tendˆencias de evolu¸ao das redes industriais [Berge, 2001].
Existem diversas solu¸oes que proeem as fa cilidades de uma rede industrial
21
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 22
digital par a uma ind´ustria, tais como as tecnologias Profibus, Modbus, DeviceNet e
Foundation Fieldbus, sendo esta ´ultima o objeto de estudo deste cap´ıtulo.
3.1 Foundation Fieldbus
Foundation Fieldbus ´e um sistema de comunica¸oes digital, serial, de duas vias
e com acesso determin´ıstico que serve como uma rede local para instrumentos
industriais e dispositivos de contro le [Cagni J´unior, 2004]. Este sistema ´e usado
na automa¸ao tanto de ind´ustrias de processos quanto de manufaturas e tem a
caracter´ıstica intr´ınseca de distribuir o controle da aplica¸ao atrav´es dos dispositivos
conectados `a rede. Pode-se considerar que o modelo Fieldbus ´e o est´a gio mais recente
de um processo evolutivo dos sistemas automatizados de controle de processos
industriais [Corporation, 1997].
Diferentemente de protocolos de rede propriet´a rios, o protocolo Foundation
Fieldbus ´e aberto e dispon´ıvel a todos os pesquisadores e fabricantes,
independent emente de acordos de licenciamento. Ele ao pertence a nenhuma
empresa ou ´e regularizado po r uma ´unica na¸ao ou corpo de padr˜oes. A tecnologia
´e controlada pela Fieldbus Foundation, uma organiza¸ao sem fins lucrativos
constitu´ıda por mais de 100 das maiores empresas de controle e instrumenta¸ao,
al´em de usu´a r io s finais das tecnologias envolvidas.
A padroniza¸ao da rede Foundation Fieldbus levou mais de dez anos para ser
conclu´ıda. Os protocolos do padr˜a o definem dois n´ıveis de redes locais: as redes H1
e High Speed Ethernet (HSE). A rede H1, com velocidade de 31,25 kbps, define um
barramento para interligar dispositivos de campo, enquanto o HSE, com velocidade
de 100Mbps, ´e utilizada como meio de liga¸ao para o s diversos barramentos H1, a l´em
de ser usada para a liga¸ao de dispositivos de alta velocidade como Controladores
ogicos Program´aveis (CLPs) e computadores. Um esquema t´ıpico de uma rede
Fieldbus pode ser visto na figura 3.1.
3.1.1 Vantagens do padr˜ao Founda t i on Fieldbus
O Foundation Fieldb us tem como objetivo substituir o padr˜ao de instrumenta¸ao
anal´ogico de 4-20mA, propo rcionando um grande umero de vantagens sobre este
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 23
Figura 3.1: To pologia t´ıpica de uma rede fieldbus
padr˜ao, tais como:
Interoper abilidade de disp ositivos: Um dispositivo Fieldbus pode ser
substitu´ıdo por outros similares de fabricantes diferentes em uma mesma
rede mantendo suas caracter´ısticas or ig inais. Isso ´e poss´ıvel em virtude
da tecnologia de descritores de dispositivos (DD - Device Des criptions),
onde qualquer sistema de controle ou computador pode operar com um
dispositivo se tiver o seu DD, de forma semelhante aos device drivers em
um computador pessoal. Isto permite tamb´em a instala¸ao de dispositivos
de f orma plug-and-play, ou seja, conectar o dispositivo e utiliz´a-lo sem a
necessidade de configura¸ao.
Melhor pro cessamento de dados: Com Foundation F ieldbus, m´ultiplas
vari´aveis de cada dispositivo podem ser tra zidos para o sistema de controle
para ar mazenamento, an´alise de tendˆencias, estudos para otimiza¸ao dos
processos e gera¸ao de relat´orios. O acesso a dados precisos, de alta resolu¸ao
possibilita uma melhor configura¸ao dos processos para otimizar a sua
produ¸ao e reduzir o plant downtime. Isso aumenta o desempenho da planta
e os lucros oriundos do processo.
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 24
Maior vis˜ao do Processo: Dispo sitivos Fieldbus modernos, com poderosas
capacidades de comunica¸ao baseadas em microprocessadores, permitem que
os erros no processo sejam detectados com mais rapidez e com uma maior
certeza. Como resultado, os operadores da planta ao notificados de condi¸oes
anormais ou da necessidade de manuten¸ao preventiva, podendo assim fazer
melhores decis˜oes.
Maior Seguran¸ca: At rav´es da notifica¸ao de condi¸oes prejudiciais ou perigosas
com a ntecedˆencia, o Fieldbus permite que oes corretivas sejam realizadas
antes que seja necess´ario um desligamento ao planejado da planta. As
capacidades de diagn´ostico tamb´em reduzem a necessidade de acesso a
´areas perigosas, minimizando o risco para os trabalhadores. Al´em disso, a
Foundation Fieldbus ´e dita ser intrisecamente segura porque pode-se controlar
a energia dos sensores, al´em de se poder programar estados seguros em caso
de falha.
Manuten¸ao Preventiva mais acil: A grande capacidade de diagostico dos
dispositivos torna poss´ıvel a monitoria e gravao das condi¸oes em que o
sistema est´a operando. Os operadores da planta podem realizar manuten¸ao
preventiva sem precisar esperar por um desligamento do sistema, diminuindo
o tempo de inatividade da planta.
Redu¸ao no C abeament o e Custos de Manut en¸ao: A tecnologia
Foundation Fieldbus permite que no mesmo par de cabos em que se
transmitem os bits de sinal tamb´em se envie a energia para alimentar os
dispositivos remotos. Isso em conjunto com a forma como as conex˜oes de rede
ao realizadas proporcionam grandes economias nos custos de engenharia,
instala¸ao e manuten¸ao por causa da redu¸ao no cabeamento. Uma
economia adicional pode ser conseguida se considerarmos a diminui¸ao no
tempo necess´ario para a constru¸ao e in´ıcio da opera¸ao da rede, bem como a
simplicidade de programa¸ao das ogicas de controle utilizando os blocos de
software embutidos nos dispositivos Fieldbus.
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 25
3.1.2 Modelo de Comunica¸ao em Camadas
O padr˜ao Foundation Fieldbus tem uma ar quitetura baseada no modelo de
comunica¸ao em camadas e consiste em trˆes elementos principais [Silva, 2005]: a
Camada F´ısica, a Pilha de Comunica¸ao e a Camada de Aplica¸ao do Usu´ario. Tais
camadas podem ser vistas na figura 3.2.
A Camada F´ısica (Physical Layer - PhL) equivale `a camada f´ısica do modelo
OSI (Open Systems Interconnection) e tem como principal particularidade a
possibilidade de alimentar os dispositivos atraes dos mesmos cabos em que trafegam
os dados.
A pilha de comunica¸ao ´e respons´avel pela comunica¸ao entre os diferentes
dispositivos e pode ser dividida em trˆes subcamadas: a Camada de Enlace (Data
Link Layer - DLL), respons´avel pelo acesso ao meio f´ısico e pelo controle de erros,
a Camada de Acesso ao Fieldbus (Fieldbus Access Sublayer - FAS) e a Camada de
Especifica¸ao de Mensagens (Fiel dbus Message Specification - FMS).
Figura 3.2: Modelo de camadas Foundation F ieldbus comparado ao OSI
No t opo existe a Camada de Aplica¸ao do Usu´ario, que disponibiliza uma s´erie
de recursos comumente usados no controle de processos. Com tais recursos, ´e
poss´ıvel construir aplica¸oes para o dispositivo usando uma linguagem gr´afica de
acil entendimento para os engenheiros [Besch, 2004].
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 26
Entre os principais recursos fornecidos pela Camada de Aplica¸ao ao
Usu´ario est˜ao os Blocos Funcionais, estruturas de software executadas nas
unidades de processamento de cada dispo sitivo Field b us. Tais Blocos Funcionais
implementam certas fun¸oes usadas em aplica¸oes de controle, como controladores,
condicionadores de sinais, opera¸oes matem´aticas e opera¸oes ogicas.
3.1.3 Redes Neurais Embarcadas
Conforme dito anteriormente, os instrumentos Foundation Fieldbus possuem
capacidade de processamento, o que lhes permite a execu¸ao fun¸oes de controle
baseadas em var i´aveis cont´ınuas ou discretas. Tais fun¸oes a o associadas a blocos
de software que seguem normas padronizadas pela especifica¸ao do Foundation
Fieldbus.
Pode-se classificar os blocos a sicos em trˆes grandes grupos: os blocos de
recursos, os blocos de transdutores e os blocos funcionais, conforme visto na figura
3.3.
Figura 3.3: Tipos de Blocos Funcionais
Os blocos de recursos ao usados para a descri¸ao do dispositivo, informando
o seu nome, fabricante, vers˜o es do hardware e firmware, entre outras informa¸oes,
enquanto que os blocos transdutores ao usados para transformar os dados digitais
em anal´og icos e vice-versa, podendo ser usados para calibrar, deslocar medidas,
posicionar dados, linearizar caracter´ısticas e converter unidades f´ısicas [Costa, 2006].
a os blocos f uncionais determinam o comportamento do sistema, realizando
opera¸oes matem´aticas com entradas e fornecendo sa´ıdas de forma a realizar
estrat´egias de controle. Podemos ver alguns dos principais blocos funcionais na
tabela 3.1
Atualmente, o o padr˜ao Foundation Fieldbus possui uma grande variedade de
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 27
Ta bela 3.1: Principais blocos funcionais
Nome do Bloco S´ımbolo
Analog Input (Entrada Anal´ogica) AI
Analog Output (Sa´ıda Anal´og ica) AO
Bias/Gain (Bias/Ganho) BG
Control Selector CS
Discrete Input DI
Discrete Output DO
Manual Loader ML
Proportional/Derivative PD
Proportional/Integral/ Derivative PID
Ratio RA
blocos funcionais que executam nos dispositivos. Nas redes Profibus, po r exemplo,
somente os blocos AI, AO e Somador executam nos sensores. Os outros blocos
(PID, po r exemplo) o executam em CLPs. Por causa dessa caracter´ıstica das
redes Foundation Fieldbus ´e poss´ıvel implementar dentro do sensores o modelo de
um neurˆonio artificial, de forma que, juntando arios neurˆonios, seja poss´ıvel ter
uma Rede Neural Perceptron de ultiplas Camadas sendo executada dentro do
dispositivo [Silva, 2 005].
Os neurˆonios ao criados a partir dos blocos f uncionais Aritm´etico e
Caracterizador, que podem ser vistos nas figuras 3.4 e 3.5. Com o bloco aritm´etico,
´e poss´ıvel associar pesos a entradas e utilizar a sua fun¸ao de somador para calcular
o campo local induzido do neurˆonio.
Figura 3.4: Bloco Aritm´etico Figura 3.5: Blocos Caracterizador
Depois de calculado o campo local induzido, resta passar o seu valor pela fun¸ao
de ativao, que ´e implementada com o bloco caracterizador. O bloco caracterizador
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 28
tem como fun¸ao fazer o mapeamento entre valores de entrada e valores de sa´ıda.
A fun¸ao respons´avel pelo mapeamento ´e definida a partir de uma tabela com a t´e
21 pontos e fazendo-se interpola¸ao dos dados no bloco funcional.
Ligando a sa´ıda de um bloco aritm´etico `a entrada de um bloco caracterizador,
ambos devidamente configurados, tem-se um neurˆonio artificial como o mostrado na
figura 2.1. Como o bloco aritm´etico o permite o uso de trˆes entradas, caso sejam
necess´arias mais entradas ´e poss´ıvel combinar arios blocos a r itm´eticos. As figuras
3.6 e 3.7 mostram diagramas dos neurˆonios implementados em ambiente Foundation
Fieldbus com blocos funcionais. Na primeira figura, temos um neurˆonio formado por
um bloco aritm´etico (ARIT) e um cara cterizador (CARAC), enquanto na segunda
temos um neurˆonio com seis entradas, dispon´ıveis pelo agrupamento de dois blocos
aritm´eticos, e um bloco caracterizador.
Figura 3.6: Neurˆonio com Blocos
Funcionais
Figura 3.7: Blocos Aritm´eticos
Agrupados
Para o desenvolvimento das Redes Neurais Recorrentes em redes Foundation
Fieldbus ´e necess´ario encontrar uma forma de implementar os atrasos das entradas
e sa´ıdas da rede. Tais atrasos ao ao supo r tados pelos blocos f uncionais, portanto
devemos utilizar recursos alternativos para substitui-los. Alguns estudos vˆem sendo
realizados na tentativa de verificar a viabilidade da utiliza¸ao da Aproxima¸ao de
Pad´e para simular os at r asos.
Este trabalho tem como objetivo apresentar algoritmos que realizem a auto-
verifica¸ao, auto-corre¸ao e auto-valida¸ao de sensores. Tais a lg oritmos devem ser
estruturados de forma que a sua implementa¸ao seja poss´ıvel em um ambiente de
Redes Industriais Foundation Fieldbus. Como os algoritmos ao baseados em Redes
Neurais Artificiais, essa implementa¸ao pode ser realizada atrav´es do modelo de
CAP
´
ITULO 3. SENSORES EM AMBIENTE FOUNDATION FIELDBUS 29
neurˆonio com blocos funcionais mostrado anteriormente.
O pr´oximo cap´ıtulo ir´a detalhar os algoritmos, definindo-os e explicando como
pode ser realizada a sua implementa¸ao.
Cap´ıtulo 4
Algoritmos Inteligentes para
Auto-Verifica¸c˜ao, Auto-Corre¸c˜ao e
Auto-Valida¸ao
Para melhorar a precis˜ao dos sensores e ot imizar o seu per´ıodo de calibra¸ao, foi
proposto um conjunto de algoritmos denominados de algoritmos da auto-verifica¸ao,
da auto-corre¸ao e da auto-valida¸ao, baseados em t´ecnicas de inteligˆencia artificial
conhecidas como Redes Neurais. A descri¸a o desses algoritmos ser´a feita a seguir.
Auto-verifica¸ao ´e o algoritmo respons´avel pela verifica¸ao do quanto a curva de
calibra¸ao do sensor esa desajustada, podendo resultar em erros de medi¸ao
maiores que os permitidos. O o bjetivo desse algor itmo ´e detectar e indicar o
melhor momento pa ra se calibrar o sensor;
Auto-corre¸ao ´e o algoritmo respons´avel pela corre¸ao dos erros decorrentes de
uma descalibra¸ao. Entretando, essa corre¸ao ´e limitada at´e um valor aximo
de erro, a partir do qual a compensa¸a o se faz insuficiente e a calibra¸ao,
necess´aria;
Auto-valida¸ao ´e o algo r itmo respons´avel pela valida¸ao do funcionamento do
sistema, ou seja, pela verifica¸ao de quando o sistema est´a corrigindo o erro
de forma ineficiente ou quando est´a indicando a necessidade de calibra¸ao em
um momento errado.
30
CAP
´
ITULO 4. ALGORITMOS INTELIGENTES 31
As pr´oximas sess˜oes tˆem como obj etivo detalhar os algoritmos descritos acima,
bem como explicar as suas implementa¸oes com Redes Neurais Artificiais.
4.1 Auto-Corr e¸ao
Idealmente, um sensor deveria realizar medi¸oes seguindo um mesmo padr˜ao
durante toda a sua vida ´util. Isso ´e bastante improv´avel, tendo em vista que o sensor
sofre desgastes durante o seu funcionamento, os quais se r efletem em deforma¸oes
na curva de calibra¸ao e, conseq¨uentemente, no aparecimento de erros de medi¸ao.
O a lgoritmo da Auto-Corrc ˜ao tem como objetivo corrigir o erro provocado pelas
altera¸oes na forma da curva de calibra¸ao do sensor. Essa corre¸ao possibilita o
aumento do tempo em que sensor pode ficar em campo sem a necessidade de uma
nova calibra¸ao em laborat´orio.
Seu funcionamento parte do princ´ıpio de que existe um sensor descalibrado em
funcionamento, a partir deste moment o denominado sensor comum, cujas medidas
ser˜ao interceptadas por uma rede neural que tem conhecimento do tempo de
funcionamento do sensor. A rede neural deve conhecer o quanto o sensor est´a
descalibrado levando em considera¸ao o seu tempo de funcionamento, de forma que
corrija o erro de medi¸ao. Esse sistema pode ser visto na figura 4 .1.
Figura 4.1: Diagrama de Blocos do Algoritmo da Auto-Corre¸ao
Para que a corre¸ao seja poss´ıvel, ´e necess´ario que a rede neural passe por uma
fase de treinamento. Nesta fase, um conjunto de dados contendo a medi¸ao de um
sensor descalibrado para diversos valores de entrada e o seu tempo de funcionamento
ao apresentadas a uma Rede Neural Perceptron de M´ultiplas Camadas. Estes dados
ser˜ao comparados com os dados provenient es de um sensor devidamente calibrado, a
partir deste momento denominado sensor padr˜ao, gerando um sinal de erro que ser´a
utilizado pelo algoritmo da backpropagation para ajustar os pesos da rede neural.
CAP
´
ITULO 4. ALGORITMOS INTELIGENTES 32
Figura 4.2: Diagrama de Blocos do Treinamento da Auto-Corre¸ao
A r ede neural dever´a, dessa maneira, conhecer o padr˜ao de descalibra¸ao do
sensor para diversos tempos de funcionamento, de forma que um sensor descalibrado
em conjunto com a rede neural se comporte da mesma maneira que um sensor
calibrado. O diag r ama de blocos que representa o treinamento da rede neural para
a Auto-Corre¸ao pode ser visto na figura 4.2.
4.2 Auto-Veri fica¸ao
A utiliza¸a o da t´ecnica da Auto-Corre¸ao ao implica que calibra¸oes no sensor
ao ser˜ao mais necess´arias. Haver´a um momento em que o sensor dever´a ser
recalibrado. Neste caso, a grande quest˜ao ´e saber qual o momento certo para realizar
essa calibra¸ao.
Se um sensor ficar em campo mais tempo do que deveria, medi¸oes incorretas
ter˜ao sido obtidas por muito tempo, podendo resultar em preju´ızos financeiros. Se
o sensor ´e retirdo de campo para uma recalibra¸ao antes do tempo correto, ele ser´a
subutilizado, pois ficar´a parado com mais freq¨uˆencia que o necess´ario. Pa ra detectar
quando o erro do sensor padr˜ao est´a acima do aceit´avel, foi proposto o algoritmo da
Auto-Verificao.
Na Auto-Verifica¸ao, uma Rede Neural Perceptron de M´ultiplas Camadas ´e
associada a um sensor descalibrado, capturando suas medi¸oes e seu tempo de
funcionamento. Com base nessas informa¸oes, a rede neural estima o erro de medi¸a o
do sensor. Um diagrama de blocos do sistema pode ser visto na figura 4.3.
CAP
´
ITULO 4. ALGORITMOS INTELIGENTES 33
Figura 4.3: Diagrama de Blocos do Algoritmo da Auto-Verifica¸ao
Durante a fase de treinamento, a rede neural recebe os valores indicados pelo
sensor descalibrado e o tempo de funcionamento do sensor. A sa´ıda da rede ´e
comparada com o erro de medi¸ao desse sensor e, a partir dessa compara¸ao, deve-
se modificar os pesos da rede para que ela aprenda como o sinal de erro se comporta
com o tempo. Esse processo pode ser visto na figura 4.4.
Figura 4.4: Treinamento da Auto-Verifica¸ao
4.3 Auto-Valida¸ao
Os algoritmos de Auto-Corre¸ao e Auto- Verifica¸ao tornam os sensores
efetivamente inteligentes e robustos durante o seu per´ıodo de funcionamento no
campo. O algoritmo da Auto-Valida ¸c˜ao completa o sistema proposto, aumentando
sua confiabilidade.
Esse algoritmo verifica quando o sistema prop osto est´a funcionando de forma
correta. Seu funcionamento baseia-se no fato de que o sinal gerado pelo algoritmo
da Auto-Corre¸ao e o sinal gerado pelo algo ritmo da Auto-Verifica¸ao somado com
o sinal do sensor descalibrado devem ser iguais. Quando esses sinais ao diferentes, o
CAP
´
ITULO 4. ALGORITMOS INTELIGENTES 34
algoritmo avisa que o sistema ao est´a funcionando corretamente e as Redes Neurais
podem precisar de novos treinamentos.
Pode-se compreender melhor o funcionamento desse sistema at r av´es do diagrama
de blocos mostrado na figura 4.5, na qual a Rede Neural A est´a treinada para realizar
a Auto-Corre¸ao e a Rede Neural B est´a treinada para realizar a Auto-Verifica¸ao.
Figura 4.5: Diagra ma de Blocos do algoritmo da Auto-Valida¸ao
4.4 Algoritmos com Redes Neurais Recorre ntes
Os algoritmos explicados na sess˜ao anterior necessitam conhecer o tempo de
funcionamento do sensor para poder estimar o seu erro de calibra¸ao. Essa
necessidade pode se tornar incoveniente, pois em alguns ambientes ´e dif´ıcil obter
tal parˆametro de forma simples. Para esses casos, uma abordagem diferent e, usando
Redes Neurais Recorrentes para aprender a varia¸ao da dinˆamica do sistema no
tempo, ser´a mostrada nas pr´oximas sess˜oes.
4.4.1 Auto-Corre¸ao
Nesta vers˜ao da Auto-Corre¸ao , em vez de usar uma Percep tron de ultiplas
Camadas para aprender a varia¸ao da curva de calibra¸ao e informar o tempo de
funcionamento do sensor para obter o erro de medi¸ao, ser´a usada uma Rede Neural
Recorrente para aprender a dinˆamica do sistema, ou seja, aprender como o sistema
se comporta com o tempo .
CAP
´
ITULO 4. ALGORITMOS INTELIGENTES 35
Dessa forma, ´e poss´ıvel realizar a auto-corre¸ao fazendo com que a rede neural
receba o valor medido pelo sensor e retorne como sa´ıda uma leitura compensada.
Assim, a Rede Neural dever´a comportar-se como um sensor devidamente calibrado.
Esse esquema pode ser visto na figura 4.6.
Figura 4.6: Diagrama de blocos da Auto-Corre¸ao com R edes Recorrentes
O treinamento da Rede Neural para este algoritmo ´e feito conforme mostra a
figura 4.7. As ent r adas e sa´ıdas anteriores do sistema ao fornecidos como entrada
para a rede neural e a sa´ıda desta ser´a comparada com a sa´ıda do sistema medida por
um sensor calibrado. O erro resultante dessa compara¸ao ´e usado para treinar a rede
neural com o algoritmo da backpropagation ou com o Filtro de Kalman Estendido.
Figura 4.7: Diagrama de blocos do treinamento da Rede Recorrente
4.4.2 Auto-Verifica¸ao
Utilizando uma Rede Neural Recorrente treinada para aprender a dinˆamica de
um sistema, conforme a figura 4.7 , ´e poss´ıvel conhecer o erro de medi¸ao de um
sensor descalibrado.
O objetivo da utiliza¸ao das Redes Neurais Recorrentes ´e utiliz´a-las como
preditoras de estados, isto ´e, utiliz´a -las para tent ar predizer o pr´o ximo estado do
sistema no qual o sensor est´a fazendo medi¸oes. Tendo o valor estimado da pr´oxima
CAP
´
ITULO 4. ALGORITMOS INTELIGENTES 36
medi¸ao , deve-se compar´a-lo com o valor realmente medido pelo sensor. Pode-se
dizer que o sensor est´a descalibrado se a sua sa´ıda for muito diferente do resultado
previsto pela rede. O funcionamento do algoritmo pode ser visto na figura 4.8, onde
u(t) ´e a entrada, y(t) ´e a sa´ıda do sistema, ˆy(t) ´e a sa´ıda estimada pela Rede Neural
e e(t) ´e o erro de medi¸ao.
Figura 4.8: Diagrama de blocos da Auto-Verifica¸ao com R edes R ecorrentes
Se o erro de medi¸ao for maior que um limite permitido, significa que ser´a
necess´ario realizar uma nova calibra¸ao no sensor.
A partir dos conceitos abordados neste cap´ıtulo, foram realizadas as
implementa¸oes dos algoritmos propostos utilizando Redes Neurais Perceptro n de
M´ultiplas Camadas, treinadas pelo algoritmo da backpropagation, e Redes Neurais
Recorrentes, treinadas pelo algoritmo da backpropagation e p elo filtro de Kalman.
Ap´os a implementa¸ao foram realizadas testes de funcionamento do algoritmos em
um ambiente simulado. O pr´oximo cap´ıtulo ir´a mostrar como foram realizados o s
testes e os resultados obtidos.
Cap´ıtulo 5
Estudo de Caso
Os algoritmos propostos fo r am testados atrav´es da simula¸ao, em Matlab,
do controle de uma planta de n´ıvel. Essa planta, representada pela figura 5.1,
´e constitu´ıda por um tanque, a berto em cima e com um orif´ıcio embaixo; um
reservat´orio que ir´a conter a ´a gua vinda do tanque; uma bomba que pegar´a a ´agua
do reservat´orio e a devo lver´a a o tanque; e um sensor que est´a mede o n´ıvel de ´ag ua
no tanque. O obj etivo ´e controlar esse n´ıvel de acordo com um valor de referˆencia
fornecido.
Figura 5.1: Sistema de Controle de N´ıvel utilizado
A planta, representada pela fun¸ao de transferˆencia da equa¸ao 5.1, ´e ao-linear,
mas foi utilizada uma a proxima¸ao linear conforme mostrado no Apˆendice A.
37
CAP
´
ITULO 5. ESTUDO DE CASO 38
H(s) =
0, 2964
s + 0, 0115
(5.1)
O controle foi feito com um controlado r Proporcional Integra l Derivativo (PID)
[Ogata, 1998] como mostrado na figura 5.2. A sua fun¸ao de transferˆencia pode ser
vista na equa¸ao 5 .2 , o nde K
p
= 3, K
d
= 0, 05 e K
i
= 0, 005.
Figura 5.2: Diagrama de Blocos do Controle do Processo
G(s) =
K
d
s
2
+ K
p
s + K
i
s
(5.2)
O sensor utilizado transforma o n´ıvel de ´agua no t anque (em cm) em uma tens˜ao
el´etrica (em volts). A fun¸ao matem´atica que estabelece essa rela¸ao pode ser vista
na equa¸ao 5.3 e na figura 5.3. Tal fun¸ao ´e emp´ırica e ao representa a curva de
calibra¸ao de um sensor real.
f(x) = 10.5 · (1 e
0.02x
) (5.3)
Com o tempo esse sensor descalibra-se, de modo que a sua curva de calibra¸ao
passa a a ssumir outras configura¸oes. Na figura 5.4 vemos em azul a curva de
calibra¸ao do sensor calibrado e, em ver melho, exemplos de curvas de calibra¸ao
do sensor descalibrado em t empos de funcionamento diferentes. Essa dinˆamica de
descalibra¸ao foi feita de f orma simulada.
A partir dessas informa¸oes, os algoritmos descritos anteriormente foram
implementados de modo a comp ensar os erros de medi¸a o decorrentes da mudan¸ca
na forma da curva de calibra¸ao do sensor.
Foram usadas as duas abordagens relatadas no cap´ıtulo anter io r : com redes
neurais perc´eptron de m´ultiplas camadas, em que ao informados para a rede o
tempo de funcionamento do sensor e a forma da curva de calibra¸ao naquele instante
CAP
´
ITULO 5. ESTUDO DE CASO 39
Figura 5.3: Curva de Calibra¸ao do Sensor
Figura 5.4: Curvas de Calibra¸ao do Sensor em Tempos de Funcionamento
Diferentes
de tempo; e com redes neurais recorrentes, que aprende a dinˆamica do processo para
detectar os erros.
CAP
´
ITULO 5. ESTUDO DE CASO 40
5.1 Implementa¸ao usando Perceptron de
M´ultiplas Camadas
A rede neural utilizada para esta abordagem foi uma Perceptron de M´ultiplas
Camadas treinada pelo algoritmo da Bac kpropaga tion. A arquitetura de rede
utilizada foi a 2-3-2-1. Essa estrutura ´e formada por uma camada com duas entradas,
duas camadas escondidas com 3 e 2 neurˆonios e uma camada com uma sa´ıda. Todas
as camadas em como fun¸ao de ativao a tangente sigm´oide, com exce¸ao da
´ultima, cuja fun¸ao de ativao ´e linear pura. Essa arquitetura pode ser observada
na figura 5.5.
Figura 5.5: Arquitetura da Rede Neural Utilizada
Ap´os o treinamento das redes para a execu¸ao dos algor itmos da auto-verifica¸ao
e da auto-corre¸ao, foram realizados testes para verificar a eficiˆencia da solu¸ao
proposta. Em ambos o s casos, o erro m´edio quadr´atico obtido no treinamento foi
baixo, da ordem de 10
8
.
As figuras 5.6 e 5.7 mostram, respectivamente, os resultados para a a uto -corre¸ao
e para a auto-verifica¸ao. Na primeira, temos em azul a reta que representa o sensor
calibrado, em vermelho, o sensor descalibrado com 5 meses de uso e, em preto, a
leitura do sensor descalibrado corrigida.
a na segunda figura, temos em azul o sensor calibrado, em verde o sensor
descalibrado e em vermelho o erro estimado pela rede. Os pontos pretos representam
a soma da medi¸ao do sensor descalibrado com o erro estimado pela r ede neural,
mostrando que a estimativa do erro foi bem-sucedida.
Em seguida, foram realizados testes para conferir a sa´ıda do sistema com
a utiliza¸ao dos algoritmos inteligentes. No primeiro teste, foi utilizado como
referˆencia uma fun¸ao degrau com o valor 15 , mostrado na figura 5.8. Utilizando um
CAP
´
ITULO 5. ESTUDO DE CASO 41
Figura 5.6: Resultado da Auto-Corre¸ao
Figura 5.7: Resultado da Auto-Verifica¸ao
sensor devidamente calibrado, o n´ıvel de ´agua do tanque deveria subir at´e convergir
para o n´ıvel de 15cm. Com o sensor descalibrado, que indicava um n´ıvel menor do
que o que realmente estava a ´agua no tanque, o sistema ao converge para 15cm,
CAP
´
ITULO 5. ESTUDO DE CASO 42
mas para um valor maior.
Figura 5.8: Entrada do Sistema na primeira simula¸ao
A figura 5.9 mostra esse fato, onde a curva azul ´e a sa´ıda do sistema com o
sensor calibrado; a curva vermelha ´e a sa´ıda utilizando um sensor descalibrado com
5 meses de uso; e o s pontos pretos mostram a medi¸ao do sensor corrigida pelo
algoritmo da auto-corre¸ao. Adicionalmente, a figura 5.10 mostra o erro de medi¸ao
estimado pelo algoritmo da auto-verifica¸ao. Nela, a curva a zul representa a sa´ıda
do sistema com um sensor calibrado; a curva ver melha mostra a sa´ıda para um
sensor descalibrado; a curva verde ´e o erro de medi¸ao estimado; e os pontos pretos
ao a soma da medi¸ao do sensor descalibrado com o erro de medi¸ao estimado.
CAP
´
ITULO 5. ESTUDO DE CASO 43
Figura 5.9: Resp osta do Sistema `a entrada degrau e resultado da auto- corre¸ao
Figura 5.10: Resposta do Sistema `a entrada degrau e resultado da auto-verifica¸ao
No segundo teste, foi utilizado o mesmo sensor com 5 meses de utiliza¸ao e como
entrada um sinal de referˆencia variando no tempo, conforme mostram a equa¸ao 5.4
CAP
´
ITULO 5. ESTUDO DE CASO 44
e a figura 5.11.
Figura 5.11: Entrada do Sistema na Segunda Simula¸ao
r(t) =
0, se t < 0
10, se t 0 e t < 10
20, se t 10 e t < 20
25, se t 20 e t < 30
15, se t 30 e t < 40
20, se t 40 e t < 50
10, se t 50 e t < 60
25, se t 60 e t < 70
15, se t 70 e t < 80
5, se t 80 e t < 90
10, se t 90 e t < 100
(5.4)
Para essa entrada, o n´ıvel de ´agua no tanque da planta deveria acompanhar os
valores da entrada com algum atraso devido ao tempo necess´ario para a estabiliza¸ao
da planta. Assim como no exemplo anterior, se o sensor est´a descalibrado de forma
que indique um n´ıvel menor que o n´ıvel que realmente est´a a ´agua no tanque, a
sa´ıda do sistema ser´a maior que os valores desejados.
Na figura 5.1 2 vemos a curva azul, que represent a a sa´ıda da planta medida por
um sensor calibrado; a curva vermelha, que ´e a sa´ıda real da planta se est´a sendo
CAP
´
ITULO 5. ESTUDO DE CASO 45
utilizado um sensor descalibrado; e os po ntos pretos ao a sa´ıda da planta corrigida
pelo algoritmo da auto-corre¸ao.
Figura 5.12: Resposta do Sistema `a entrada variando e resultado da auto-corre¸ao
a na figura 5.13 temos al´em das curvas conhecidas, a curva verde que representa
o erro de medi¸ao estimado pelo algoritmo da auto-verifica¸a o. A soma do erro de
medi¸ao com a sa´ıda do sensor descalibrado no s a a curva formada pelos ponto s
pretos.
Como pode ser observado nos resultados obtidos, os algoritmos utilizando as
redes p erc´eptron de m´ultiplas camadas funcionam bem para os objetivos propostos.
O problema nessa abordagem ´e a necessidade de se informar para a rede o tempo de
funcionamento do sensor para que ela possa estimar corretamente o erro de medi¸ao.
Em ambientes onde ao seja poss´ıvel obter o tempo de funcionament o, devem ser
utilizados os algoritmos que utilizam Redes Neurais Recorrentes.
CAP
´
ITULO 5. ESTUDO DE CASO 46
Figura 5.13: Resposta do Sistema `a entr ada variando e resultado da auto -verifica¸ao
5.2 Implementa¸ao usando Redes Neurais
Recorrentes
Como as Redes Neurais Recorrentes conseguem captar a dinˆamica de um sistema
com facilidade, elas fora m utilizadas para implementar os algoritmos propostos
identificando a evolu¸ao da descalibra¸a o do sensor, de forma que ao seja necess´ario
informar seu o tempo de utiliza¸ao. A Rede Neural Recorrente em quesao foi
constru´ıda a partir da inser¸ao de la¸cos de realimenta¸ao em uma Perceptron de
M´ultiplas Camadas.
Foram utilizados como sinais de entrada na Rede Neural: a entrada do sistema; a
entrada do sistema atrasada; a sa´ıda passada do sistema e a sa´ıda retrasada. Havia
ainda uma camada oculta formada por 3 neurˆonios e a camada de sa´ıda, formada
por 1 neurˆonio. As camadas de entrada e oculta em como fun¸a o de ativao a
tangente sigm´oide e a camada de sa´ıda tem como fun¸ao de ativao ´e uma fun¸ao
linear pura. A rede pode ser vista na figura 5.14.
O treinament o da rede foi realizado utilizando tanto o algoritmo da
backpropagation quanto o filtro de Kalman estendido. Os dois algoritmos
comportaram-se de forma satisfat´oria e resultaram em o erro m´edio quadr´atico da
CAP
´
ITULO 5. ESTUDO DE CASO 47
Figura 5.14: Arquitetura da Rede Recorrente
ordem de 10
7
para o algoritmo da backpro pagation e de 10
9
para o filtro de
Kalman.
Nas simuloes realizadas para verificar a efic´acia desta abordagem, utilizou-se
o mesmo ambiente da se¸ao anterior. Neste caso, ao foi considerada apenas a
forma da curva de calibra¸ao do sensor ap´os um per´ıodo de funcionamento, mas
sim a varia¸ao da curva de calibra¸ao. Para simular a descalibra¸ao, alteramos o
algoritmo do simulador para descalibrar o sensor durante a simula¸ao do processo. A
figura 5.15 mostra como ocorreu a descalibra¸ao do sensor. Nela, o eixo das abscissas
representa o tempo de opera¸ao, em segundos, e o eixo das ordenadas o quant o o
sensor est´a descalibrado, em porcentagem. A medi¸ao do sensor ser´a igual ao valor
definido pela equa¸ao 5.3 multiplicado pela porcentagem de descalibra¸ao de acordo
com o tempo. Novamente foram utilizadas como entradas as fun¸oes mostradas nas
figuras 5.8 e 5.11 .
O resultado da simula¸ao do algoritmo da auto-compensa¸ao com Redes Neurais
Recorrentes para a entrada degrau pode ser visto na figura 5.16, em que a curva
azul representa a sa´ıda desejada do sistema, a curva vermelha ´e a sa´ıda obtida com
o sensor descalibrado e os pontos pretos mostram a corre¸ao das medi¸oes.
De forma semelhante, a figura 5.17 mostra a estimativa do erro, em verde,
calculada pelo algoritmo da a uto -verifica¸ao.
Os resultados obtidos para a entr ada variante da equa¸ao 5.4 podem ser vistos
a seguir. A figura 5.18 mostra o algor itmo da auto -corre¸ao em funcionamento. A
curva azul ´e a sa´ıda desejada do sistema, sem levar em considera¸ao a descalibra¸ao
CAP
´
ITULO 5. ESTUDO DE CASO 48
Figura 5.15: Descalibra¸ao do sensor com o tempo
Figura 5.16: Resposta do Sistema `a entrada degrau e resultado da auto-corre¸ao
com Rede Recorrente
do sensor, a curva vermelha mostra a sa´ıda obtida com o sensor descalibrado e os
pontos pretos mostram a sa´ıda corrigida.
CAP
´
ITULO 5. ESTUDO DE CASO 49
Figura 5.17 : Resposta do Sistema `a entr ada degrau e resultado da auto-verifica¸ao
com Rede Recorrente
Figura 5.18: Resposta do Sistema `a entra da variando e resultado da auto-corre¸ao
com Rede Recorrente
Complement ando o resultado anterior, a figura 5.19 mostra o erro de medi¸ao
estimado pelo algoritmo da auto-verifica¸ao, representado pela curva verde.
CAP
´
ITULO 5. ESTUDO DE CASO 50
Figura 5.19: Resposta do Sistema `a entr ada variando e resultado da auto -verifica¸ao
com Rede Recorrente
Como os resultados obtidos com o treinamento da Rede Neural utilizando o
algoritmo da backpropagat io n e o filtro de Kalman foram semelhantes, os gr´aficos
acima podem ser considerados para as duas abordag ens.
A seguir, ao mostradas as figuras 5.20 e 5.21, que representam o gr ´afico da
varia¸ao do erro m´edio quadr´atico durante 100 ´epocas do treinamento da Rede
Neural para o algoritmo da backpropagation e o F iltro de Kalman, respectivamente.
´
E poss´ıvel perceber, pelas figuras, que o erro foi baixo nas duas abordagens. O Filtro
de Kalman obteve um erro m´edio final menor e teve uma convergˆencia mais apida
que o algoritmo da backpropagation.
CAP
´
ITULO 5. ESTUDO DE CASO 51
Figura 5.20: Er r o do sistema para entrada degrau e t reinamento com
backpropagation
Figura 5.21: Erro do sistema para entra da degrau e treinamento com filtro de
Kalman
CAP
´
ITULO 5. ESTUDO DE CASO 52
A partir das simula¸oes mostradas anteriormente, percebe-se que os algoritmos
conseguem corrigir adequadamente os erros de calibra¸ao. A utiliza¸ao das Redes
Neurais Recorrentes ao uma boa solu¸ao para quando ao for poss´ıvel o bter o tempo
de funcionamento do sensor. Com rela¸ao ao treinamento dessas ´ultimas, a diferen¸ca
entre a abordag em do algoritmo da backpropagation e filtro de Kalman podem ser
melhor percebidas em situa¸oes onde a dinˆamica de descalibra¸ao do sensor seja
mais complexa. Nesses casos, o filtro de Kalman deve obter melhores resultados
[Haykin, 2001a].
Cap´ıtulo 6
Conclus˜oes e Perspectivas Futuras
Os sensores ao elementos fundamentais na execu¸ao de processos industriais.
Devido a desgastes naturais, a curva de calibra¸ao de tais elementos pode se
deformar, fazendo com que eles ao funcionem a contento e ocasionando erros de
medi¸ao . Essa deforma¸ao na curva de calibra¸ao ´e chamada de descalibra¸ao e a
sua corre¸ao ´e feita atrav´es de um processo de recalibra¸ao, normalment e realizado
em laborat´orio e que pode necessitar do imterrompimento do processo para se retirar
o sensor da linha de produ¸ao.
Prolongar o temp o de utiliza¸ao de um sensor sem a necessidade de retir´a-lo
de campo para a realiza¸ao de uma nova calibra¸ao ´e um desafio no campo da
instrumenta¸ao atual. Para resolver esse problema, foram propostos algoritmos
inteligentes que visam a diminui¸ao dos problemas causados pela descalibra¸ao de
sensores.
Os algoritmos, chamados de algoritmos da a uto -calibra¸ao, a uto -corre¸ao e
auto-valida¸ao, utilizam redes neurais artificiais, que ao bastante adequadas para
problemas em que a modelagem ´e dif´ıcil e o n´ıvel de ao-linearidades ´e alto. A
presente disserta¸ao apresentou um estudo da viabilidade ecnica da implementa¸ao
de tais algoritmos, apresenta ndo dados t´ecnicos relevantes como erros e respostas
das Redes Neurais implementadas.
Os resultados obtidos com os experimentos foram satisfat´orios, os algoritmos
conseguiram efetivamente corrigir os erros de calibra¸ao do sensor utilizado. Ambas
as abo rda gens, com Perceptron de M´ultiplas Camadas e R edes Neurais Recorrentes
atingiram os seus objetivos. Os algoritmos implementados com Redes Neurais
53
CAP
´
ITULO 6. CONCLUS
˜
OES E PERSPECTIVAS F UTURAS 54
Recorrentes conseguiram suprir adequadamente a falta da informa¸ao do tempo
de funcionamento do sensor.
O treinamento das Redes Neurais Recorrentes foi feita utilizando o algoritmo
da backpropagation e o filtro de Kalman estendido. Ambas as abordagens
proporcionaram baixos erros de treinamento e conseguiram acompanhar a dinˆamica
de descalibra¸a o do sensor, realizando boas estimativas de erros e corre¸oes.
A utiliza¸ao do filtro de Ka lman para dinˆamicas mais complexas pode ser
mais adequada devido ao efeito da extin¸ao do gradiente em redes recorrentes
[Haykin, 2001b]. A quest˜a o da extin¸ao do gradiente deve ser levantada porque,
em algumas situa¸oes, modifica¸oes pequenas na entrada da r ede podem ter pouca
ou nenhuma influˆencia sobre o treinamento da rede, devido a essa modifica¸ao ao
ser mensir´avel pelo gradiente.
O trabalho realizado nesta disserta¸ao traz diversas vantagens para a ´area
da instrumenta¸ao. A redu¸ao no per´ıodo de ent re calibra¸oes do sensor
e a possibilidade de se ter uma maior confiabilidade em suas medi¸oes ao
fatores bastante impor t antes. Algumas pesquisas a se concentraram na
implementa¸ao de tais algoritmos em ambiente fieldbus e na realiza¸ao de simula¸oes
[Cagni J´unior, 2004] e outras em se f ocando na sua implementa¸ao em ambientes
reais.
Como perspectivas para trabalhos futuros, ´e importante destacar a possibilidade
de extens˜ao de fun¸o es dos algoritmos inteligentes para realizar trabalhos como
a detec¸ao de fa lhas em processos, o estudo de t´ecnicas de contro le avan¸cado
com inteligˆencia artificial [Lima et al., 2005], dentre outros. Tamb´em ao estudos
interessantes a implementa¸ao de funcionalidades inteligentes para dispositivos em
outros ambientes de redes industriais e a implanta¸ao de hardware, como DSPs,
rodando algoritmos inteligentes no barramento da rede [Costa et al., 2006].
A ´area de Instrumenta¸ao Inteligente em Rede ´e um campo permeado por
grandes desafios a serem vencidos, cujas solu¸oes dependem, em grande extens˜ao,
da pesquisa cont´ınua e da capacidade de explora¸a o de novos paradigmas.
Apˆendice A
Modelo da planta utili zada na
simula¸c˜ao
A planta ´e formada por um tanque cil´ındrico aberto em cima e com um
orif´ıcio embaixo. Uma bomba ir´a jogar ´agua no tanque e esta sair´a pelo o rif´ıcio.
Considerando F
i
como sendo a vaz˜ao de entrada no tanque, F
o
a vaz˜a o de sa´ıda e
V o volume do tanque, podemos afirmar que:
F
i
(t) F
o
(t) =
˙
V (t) (A.1)
Como o volume de um corpo cil´ındrico ´e ig ual a ´area de sua base multiplicado pela
sua altura, temos:
F
i
(t) F
o
(t) = A
˙
h(t) (A.2)
Ser´a considerada, para os fins deste traba lho, uma aproximao linear da
planta, onde a vaz˜ao de entrada do tanque ´e igual a uma constante do motor K
m
multiplicada pela tens˜ao da bomba u(t) e a vaz˜ao de sa´ıda ´e igual a uma constante
do tanque K
t
multiplicada pela altura do n´ıvel de ´agua no tanque, h.
K
m
u(t) K
t
h(t) = A
˙
h(t) (A.3)
Pode-se rearranjar a equa¸ao A.3 para que fique da seguinte forma:
˙
h(t) +
K
t
A
h(t) =
K
m
A
u(t) (A.4)
Calculando a transformada de Laplace da equa¸ao A.4, tem-se:
55
AP
ˆ
ENDICE A. MODELO DA PLANTA UTILIZADA NA SIMULAC¸
˜
AO 56
sH(s) +
K
t
A
H(s) =
K
m
A
u(t) (A.5)
Assim, a fun¸ao de transferˆencia da planta ser´a:
H(s)
U(s)
=
K
m
A
s +
K
t
A
(A.6)
Ta bela A.1: Parˆametros da Planta
K
m
Constante da Bomba 4, 6(cm
3
/s)/V
K
t
Constante do Tanque 0, 178139cm
2
/s
A
´
Area da base do tanque 15, 5179cm
2
Considerando os valores da tabela A.1, obtidos atrav´es de medi¸oes e
aproxima¸oes, ´e poss´ıvel obter a f un¸ao de transferˆencia utilizada no cap´ıtulo 5.
H(s)
U(s)
=
0, 2964
s + 0, 0115
(A.7)
Apˆendice B
Algoritmos de treinamento das
redes neurai s
B.1 Algoritmo da Backpropagation
1. Inicializa¸ao: Inicialize os pesos sin´apticos e limiares aleatoriamente
utilizando uma distribui¸ao uniforme cuja m´edia sej a zer o, caso nenhuma
informa¸ao pr´evia esteja dispon´ıvel;
2. Exemplos para o treinamento: Apresente uma ´epoca de exemplos de
treinamento para a rede. Para cada exemplo do conjunto, ordenado de alguma
forma, realize a seq¨encia de computa¸oes para frent e e para tr´as que ser˜ao
descritas nos passos 3 e 4.
3. Computa¸ao direta (para frente): Pa r a um exemplo de treinamento da
´epoca com o vetor de entrada x(n) aplicado `a camada de entrada dos os
sensoriais e o vetor de sa´ıda d(n) aplicado `a camada de sa´ıda dos os, calcule
os campos locais induzidos e o s sinais funcionais da rede prosseguindo para
frente atrav´es da rede, camada por camada. O campo local induzido v
(l)
j
(n)
para o neurˆonio j da camada l ´e:
v
(l)
j
(n) =
m
0
i=0
w
(l)
ji
(n)y
l1
i
(n) (B.1)
onde y
l1
i
(n) ´e o sinal de sa´ıda do neurˆonio i da camada anterior l 1, na
intera¸ao n, e w
(l)
ji
(n) ´e o peso sin´aptico do neurˆonio j na camada l, que ´e
57
AP
ˆ
ENDICE B. ALGORITMOS DE TREINAMENTO DAS REDES NEURAIS58
alimentado pelo neurˆonio i da camada l 1. Quando i = 0, temos y
l1
0
(n) = 1
e w
(l)
j0
(n) = b
(l)
j
(n) ´e o bias aplicado no neurˆonio j na camada l. Utilizando
uma fun¸ao sigm´oide, o sinal de sa´ıda do neurˆonio j na camada l ´e
y
(l)
j
= ϕ
j
(v
j
(n)) (B.2)
Se o neurˆonio j est´a na primeira camada oculta (l = 1), enao
y
(0)
j
= x
j
(n) (B.3)
onde x
j
(n) ´e o j-´esimo elemento do vetor de entrada x(n). Se o neurˆonio j
est´a na camada de sa´ıda (l = L, onde L ´e o tamanho da rede) enao
y
(L)
j
= o
j
(n) (B.4)
Agora ´e o calcular o sinal de erro, sa´ıda desejada menos a sa´ıda o btida,
e
j
(n) = d
j
(n)) o
j
(n) (B.5)
4. Computa¸ao reversa (para tr´as): Inicialmente calcula-se os gradientes
locais δ da rede,
ϕ
(l)
j
= e
(L)
j
(n)ϕ
j
(v
(L)
j
(n)),
ϕ
j
(v
(l)
j
(n))
k
ϕ
(l+1)
k
(n)w
(l+1)
kj
(n), (B.6)
onde a primeira equa¸ao ´e para a camada de sa´ıda L e a segunda para a
camada oculta l. O ap´ostrofe em ϕ
(.) representa a diferenciao em rela¸ao
ao argumento. Depois ocorre o ajuste dos pesos sin´apticos da rede na camada
l de acordo com a regra delta generalizada:
w
(l)
ji
(n + 1) = w
(l)
ji
+ α
w
(l)
ji
(l 1)
+ ηδ
(l)
j
(n)y
(l1)
i
(n) (B.7)
onde η ´e o parˆametro da taxa de aprendizagem e α ´e a constante de momento.
5. Itera¸ao: Realize a itera¸ao das computa¸oes para frente e para tr´as dos
passos 3 e 4, aprensentando novas ´epocas de exemplos de treinamento para a
rede, at´e que seja satisfeito a condi¸ao de parada.
AP
ˆ
ENDICE B. ALGORITMOS DE TREINAMENTO DAS REDES NEURAIS59
B.2 Filtro de Kalman
A seguir, o algoritmo, em pseudo-c´odigo, para o treinamento de Redes Neurais
Perc´eptron de M´ultiplas Camadas com o Filtro de Ka lman ´e apresentado.
1. Computa¸ao para frente: Apresente `a Rede Neural um vetor de entrada
u
k
e realize a computa¸ao para frente (feedforward) desse vetor para obter
um vetor de sa´ıda y
k
. Compare o vetor de sa´ıda y
k
com o vet or de sa´ıdas
desejadas d
k
para obter um erro de sa´ıda ξ
k
.
ξ
k
= d
k
y
k
2. alculo de H
k
: Calcule, atrav´es do algoritmo da backpropagation, a matriz
H
k
de derivadas parciais das sa´ıdas da rede em rela¸ao aos pesos. Tal matriz
foi definida na equa¸ao 2.16 e encontra-se reproduzida abaixo:
H
k
=
y
1
w
1
y
1
w
2
· · ·
y
1
w
W
y
2
w
1
y
2
w
2
· · ·
y
2
w
W
.
.
.
.
.
.
.
.
.
.
.
.
y
p
w
1
y
p
w
2
· · ·
y
p
w
W
3. alculo da matriz de ganhos de Kalman: Utilizando a equa¸ao 2.17,
mostrada abaixo, calcule a matriz de ganhos de Kalman.
K
k
= P
k
H
T
k
[H
k
P
k
H
T
k
+ R
k
]
1
4. Atualiza¸ao dos pesos da Rede Neural: Utilize a equa¸ao 2.18 para
realizar a atualiza¸ao dos pesos ˆx
k
da Rede Neural.
ˆx
k+1
= ˆx
k
+ K
k
ξ
k
5. Atualiza¸ao da matriz: Atualiza¸ao da matriz de covariˆancia do erro de
aproxima¸ao P
k
.
P
k+1
= P
k
K
k
H
k
P
k
+ Q
k
AP
ˆ
ENDICE B. ALGORITMOS DE TREINAMENTO DAS REDES NEURAIS60
6. Itera¸ao: Realize os passos acima enquanto uma condi¸ao de parada ao
for satisfeita. Uma condi¸ao de parada comum e que foi usada neste trabalho
´e determinar que o erro m´edio quadr´atico do treinamento deve ser menor que
limiar ǫ.
Apˆendice C
Produ¸ao Cient´ıfica
O presente trabalho originou publica¸oes em eventos nacionais e internacionais.
Nacionais relacionadas abaixo:
Auto-Compens a¸ao de Sensores Found ation Fieldbus utilizando Redes Neurais
Recorrentes. PEREIRA, D. R. V., CAGNI J
´
UNIOR, E., D
´
ORIA NETO, A.
D., MELO, J. D. Congresso Brasileiro de Redes Neurais - VII CBRN, 2005.
Natal/RN
Auto-Compens a¸ao de Sensores Inteligentes Foundation Fi eldbus Utilizando
Redes Neurais Recorrentes Atrav´es de Blocos Funciona i s . PEREIRA, D. R. V.,
CAGNI J
´
UNIOR, E., SILVEIRA, R. W. R., D
´
ORIA NETO, A. D . Simp´osio
Brasileiro de Automa¸ao Inteligente - VII SBAI, 2005. ao Lu´ıs/MA
Instrumenta¸ao I nteligente em Rede Aplicada ao Processo de Med i ¸c˜ao de
Vaz˜ao e BSW. PEREIRA, D. R. V., BEZERRA, J. P. M., D
´
ORIA NETO,
A. D., MELO, J. D. Congresso Brasileiro de Autom´atica - XV CBA, 2004.
Gramado/RS
Auto-Calibrao, Auto-Valida¸ao e Auto-Co mpensa¸ao de sensores
Foundation F i e l dbus usando Redes Neurais Perceptron de ultiplas Camadas.
PEREIRA, D. R . V., BEZERRA, J. P. M., D
´
ORIA NETO, A. D., MELO, J.
D. I Workshop da Rede de Instrumenta¸ao e Controle, 200 4. Natal/R N
Internacionais:
61
AP
ˆ
ENDICE C. PRODUC¸
˜
AO CIENT
´
IFICA 62
The Implementation of the Self-Calibration, Sel f -Compensation a nd Self-
Validation Algorithms for Foundation Fieldbus Sensors Using Standard
Function Blocks. PEREIRA, D. R. V. CAG NI J
´
UNIOR, E., D
´
ORIA NETO,
A. D., MELO, J. D. Computational Intelligente for Measurement Systems and
Applications, CIMSA - 2005. Sic´ılia, It´alia
Self-Compensation, Self-Cali bration and Self-Validation of Foundation
Fieldbus Intelligent Sensors. PEREIRA, D. R. V., BEZERRA, J. P. M.,
D
´
ORIA NETO, A. D., MELO, J. D. Conferˆencia Internacional de Aplica¸oes
Industriais - VI INDUSCON, 2004. Joinville/SC
Referˆencias Bibliogr´aficas
[Barroso et al., 1987] Barroso, L. C., Barr oso, M. M. A., Campos Filho, F. F.,
Carvalho, M. L. B., and Maia, M. L. (19 87). alculo Num´erico (com aplicoes).
Editora Harbra, 2 edition.
[Berge, 2001] Berge, J. (2001). Fieldbuses for process control: Engineering,
operation and maintenance, the instrumentation, systems and automation.
Society-ISA.
[Besch, 20 04] Besch, G. V. L. (2004). Especifica¸ao de um bloco funcional
implementando rede neural para redes industriais foundation fieldbus.
[Cagni J´unior, 2004] Cagni unior, E. (2004). Implementa¸ao de algoritmos
inteligentes baseados em redes neurais artificiais para sensores foundation fieldbus
utilizando blocos funcionais padr˜ao. Trabalho de Conclus˜ao do Curso de
Engenharia de Computa¸ao da UF RN.
[Calado et al., 2001] Calado, J. M. F., Korbicz, J., Patan, K., Pat ton, R. J., and
da Costa, J. M. G. S. (20 01). Soft computing approaches to fault diagnosis for
dynamic systems. European Journal of Control.
[Corporation, 1997] Corporation, S. I. (1997). Smar Fieldbus Tutorial.
[Costa, 2006] Costa, I. M. (2006). Projeto e implementa¸ao em ambiente
foundation fieldbus de filtragem estoc´astica baseada em an´alise de componentes
independent es. Master’s thesis, PPGEE - Programa de os Gradua¸ao em
Engenharia El´etrica, UFRN.
[Costa et al., 2006] Costa, I. M., J´unior, E. C., Couto, F. C., Guanabara, L. S.,
Domingos, D., de Oliveira, J. A. N., de Melo, J. D., Neto, A. D . D., and
63
REFER
ˆ
ENCIAS BIBLIOGR
´
AFICAS 64
Guedes, L. A. (2006). Um sistema integrado para o desenvolvimento de novas
funcionalidades em sensores inteligentes. Congresso Brasileiro de Autom´atica.
[Driankov et al., 1996] Driankov, D., Hellendoorn, H., and Reinfrank, M. (1996) .
An introduction to fuzzy control. In Springer-Verlag, page 149 a 163.
[Fausset, 19 94] Fausset, L. (1994 ). Fundamentals o f Neural Networks. Prentice Hall.
[Fernandes et al., 2006] Fernandes, R. G., Silva, D. C., Guedes, L. A., and Neto,
A. D. (2006). Identifica¸ao neural de um sistema de n´ıveis em ambiente foundation
fieldbus. Congresso Latino Americano de Autom´atica, Salvador/BA.
[Foundation, 20 03] Foundation, F . (2 003). Foundation Fieldbus technical ov erview.
Bookman.
[Grewal, 2001] Grewal, M. (2001). Kal man Filtering: Theory and Practice using
Matlab. Wiley.
[Hassoun, 1996] Hassoun, M. H. (1996). Fundamentals of Artificial Neural
Networks. MIT Press.
[Haykin, 2001a] Haykin, S. (2001a). Kalman Filtering and Neural Networks. Wiley,
New York.
[Haykin, 2001b] Haykin, S. (2001b). Redes Neurai s: Princ´ı pios e Aplicoes.
Bookman.
[Hebb, 1949] Hebb, D. O. (1949). The organization of behavior. Wiley, New York.
[Hecht-Nielsen, 1990] Hecht-Nielsen, R. (1990). Neurocomputing. Addison-Wesley.
[Kalman, 1960] Kalman, R. E. ( 1960). A new approach to linear filtering and
prediction problems. In Transac tion s o f the ASME, Journal of Basic Engineering,
volume 82, page 35 a 45.
[Kr¨ose and van der Smagt, 1996] Kr¨ose, B. and van der Smagt, P. (1996 ). An
introduction to neural networks.
[Lima et al., 2004] Lima, F. S., Oliveira, L. A. H. G., Sala zar, A. O., and Maitelli,
A. L. (2004 ). Implementa¸ao de controle avan¸cado em redes foundation fieldbus
REFER
ˆ
ENCIAS BIBLIOGR
´
AFICAS 65
utilizando blocos funcionais padr˜oes. Congresso Internacional de Autom a¸ao,
Sistemas e Instrumenta¸ao.
[Lima et al., 2005] Lima, F. S., Silva, D. R. C., Guedes, L. A., oria Neto, A. D.,
and Melo, J. D. (2005). Controle inteligente para um tanque ao-linear de 1
a
ordem atrav´es de redes industriais founda tion fieldbus utilizando blocos funcionais
padr˜ao. VII Simp´osio Brasileiro de Automa¸ao Inteligente.
[Maybeck, 199 0] Maybeck, P. S. (1990). The kalman filter: An introduction to
concepts. in Autonomous Ro bot Vehic l es.
[McCulloch and Pitts, 1943] McCulloch, W. S. and Pitts, W. H. (1943). A logical
calculus of the ideas immanent in neural activity. Bulletin of Mathema tical
Biophysics 5.
[Medsker and Ja in, 2001] Medsker, L. R. and Jain, L. C. (2001). Recurrent Neural
Networks Design and Applications. CRC Press.
[Misky and Papert, 1969] Misky, M. a nd Pa pert, S. (1969). Perceptrons: An
introduction to computational geometry.
[Ogata, 1998] Ogata, K. (1998). Engenharia de Controle Moderno. Editora LTC.
[Pereira and Bezerra, 2004] Pereira, D. R. V. and Bezerra, J. P. M. (2004). Auto-
calibra¸ao, auto-compensa¸ao e auto-valida¸ao de sensores foundation fieldbus
utilizando redes neurais perc´eptron de m´ultiplas camadas. Trabalho de Conclus˜ao
do Curso de Engenharia de Computa¸ao da UFRN.
[Ribeiro, 2004] Rib eiro, M. I. (2004). Kalman and extended kalman filters: Concept,
derivation and properties. Technical report, Instituto Superior T´ecnico, Lisboal,
Portugal.
[Rosenblatt, 19 58] Rosenblatt, F. (1958). The perceptron: a probabilistic model for
information storage and organization in the brain.
[Rumelhart et al., 1986] Rumelhart, D., Hinton, G., and Williams, R. J. (1986).
Learning internal representation by error propagation. In Parallel D istributed
Processing.
[Silva, 2005] Silva, D. R. C. (2005). Redes neurais artificiais no ambiente de redes
industriais foundation fieldbus usando blocos funcionais padr˜oes. Master’s thesis,
PPGEE - Programa de os G r adua¸ao em Engenharia El´etrica, UFRN.
[Singhal and Wu, 1989] Singhal, S. and Wu, L. (1989). Training multilayer
perceptrons with the extended kalman algorithm. in Ad vances i n Neural
Information Processing.
[Tian et al., 2000] Tian, G. Y., Zhao, Z. X., and Baines, R. W. (2000). A fieldbus-
based intelligent sensor. Mechatronics, 10.
[Trebaticky, 2005] Trebaticky, P. (2005). Recurrent neural network training with
the extended kalman filter. Technical report, Slovak University of Technology.
66
Livros Grátis
( http://www.livrosgratis.com.br )
Milhares de Livros para Download:
Baixar livros de Administração
Baixar livros de Agronomia
Baixar livros de Arquitetura
Baixar livros de Artes
Baixar livros de Astronomia
Baixar livros de Biologia Geral
Baixar livros de Ciência da Computação
Baixar livros de Ciência da Informação
Baixar livros de Ciência Política
Baixar livros de Ciências da Saúde
Baixar livros de Comunicação
Baixar livros do Conselho Nacional de Educação - CNE
Baixar livros de Defesa civil
Baixar livros de Direito
Baixar livros de Direitos humanos
Baixar livros de Economia
Baixar livros de Economia Doméstica
Baixar livros de Educação
Baixar livros de Educação - Trânsito
Baixar livros de Educação Física
Baixar livros de Engenharia Aeroespacial
Baixar livros de Farmácia
Baixar livros de Filosofia
Baixar livros de Física
Baixar livros de Geociências
Baixar livros de Geografia
Baixar livros de História
Baixar livros de Línguas
Baixar livros de Literatura
Baixar livros de Literatura de Cordel
Baixar livros de Literatura Infantil
Baixar livros de Matemática
Baixar livros de Medicina
Baixar livros de Medicina Veterinária
Baixar livros de Meio Ambiente
Baixar livros de Meteorologia
Baixar Monografias e TCC
Baixar livros Multidisciplinar
Baixar livros de Música
Baixar livros de Psicologia
Baixar livros de Química
Baixar livros de Saúde Coletiva
Baixar livros de Serviço Social
Baixar livros de Sociologia
Baixar livros de Teologia
Baixar livros de Trabalho
Baixar livros de Turismo