Você está na página 1de 6

CONTROLE GENÉTICO NÃO LINEAR POR REALIMENTAÇÃO DE ESTADO

César Daltoé Berci∗, Celso Pascoli Bottura∗



DMCSI - FEEC - UNICAMP
Av. Albert Einstein, 400 - sala 215
Campinas, Brasil

Emails: cesardaltoe@hotmail.com, cpbottura@dmcsi.fee.unicamp.br

Abstract— Control theory has been benefited from the enormous development of digital computing and
computational intelligence to solve relatively complex problems through means of computational methods. In
the control theory of nonlinear systems this relationship is even clearer. Because of the complexity of these
systems, it becomes virtually impossible to treat most of them with traditional methods. Within this context,
this paper proposes the design of a controller, based on genetic algorithms, which through a particular approach
to the control problem, applies an evolutionary process to select the correct input to be applied to the system in
each sample time. Thus, a controller quite simple and generally applicable to a wide range of nonlinear dynamic
systems is obtained.

Keywords— Intelligent Control, Nonlinear Systems, Genetic Algorithms

Resumo— A teoria de controle é grande beneficiária do desenvolvimento da computação digital e da inteligen-


cia computacional, utilizadas na solução de problemas relativamente complexos através de métodos computa-
cionais. Na teoria de controle de sistemas não lineares esta relação é ainda mais clara. Devido a complexidade
desse tipo de sistema, torna-se praticamente impossı́vel tratá-los através dos métodos tradicionais de controle.
Neste contexto o presente documento propõe a concepção de um controlador baseado em algoritmos genéticos,
através de uma abordagem particular do problema de controle, aplicando um processo evolutivo na seleção da
entrada que deve ser aplicada ao sistema em cada instante de tempo. Dessa forma é obtido um controlador
bastante simples e aplicável de forma geral a uma vasta gama de sistemas não lineares.

Keywords— Controle Inteligente, Sistemas Não Lineares, Algoritmos Genéticos

1 Introdução ples e abrangente do problema de controle: “En-


contrar o ponto no espaço de entradas, que quando
O controle de sistemas dinâmicos não lineares aplicado ao sistema leva a saı́da ao ponto desejado
pode se tornar uma tarefa de grande complexi- no espaço de saı́das”, utilizando para tanto con-
dade, em função das caracterı́sticas e não lineari- ceitos relativamente modernos da teoria de cont-
dades do sistema a ser controlado. Existem na lit- role, como o controle por realimentação de estado.
eratura diversos métodos/algoritmos de controle A presente proposta visa localizar este ponto
para esse tipo de sistema, em sua grande maio- através de uma computação massiva guiada por
ria baseados em simplificações e linearizações do uma meta-heurı́stica apropriada. Dessa forma é
modelo não linear. utilizada uma grande capacidade computacional
O constante crescimento da capacidade com- para a solução do problema de controle, capaci-
putacional disponı́vel, cria uma motivação para a dade essa impensável a algumas décadas, inviabi-
aplicação de técnicas relativamente novas de in- lizando este tipo de abordagem, ainda inexplorada
teligência computacional ao problema de controle na literatura pertinente ao assunto.
por meios menos convencionais, como é feito em: Dentre inúmeras ferramentas de busca com
(Berci and Bottura, 2008c; Berci and Bottura, capacidade de serem aplicadas ao problema em
2008b; Berci and Bottura, 2008a; Berci, 2008), tela, optou-se pela utilização de algoritmos genéti-
onde são desenvolvidos observadores de estado in- cos (Wright, 1991; Eshelman and Schafter, 1993;
teligentes com base em condições geométricas de Davis, 1991; Goldberg, 1989) para concepção do
observabilidade (Hirschorn and Lewis, 2002; Be- controlador proposto. Existem vários fatores que
sançon, 2007; Haynes, 1969; Hedrick and Girard, levam a esta escolha, tendo em vista que os
2005; Klamka, 2002; Lewis, 2002; Wadoo, 2003), AGs (Algoritmos Genéticos) são uma ferramente
por meio de um novo paradigma na área de es- amplamente difundida na comunidade cientı́fica,
timação de estado, criado a partir de uma teoria demonstrando a capacidade necessária para real-
de controle relativamente antiga, porém, apoiado ização da tarefa proposta, além de apresentarem
na capacidade presente na inteligência computa- caracterı́sticas de convergência que favorecem esse
cional. tipo de aplicação (Berci, 2008).
Mantendo em mente esta mesma motivação, o
presente documento propõe uma solução alterna- 2 O Problema de Controle
tiva para concepção de controladores não lineares
para sistemas MIMO (Multiple-Input Multiple- Inúmeras são as situações onde aplica-se o controle
Output), baseado em uma definição bastante sim- de sistemas dinâmicos, cada uma delas podendo
apresentar sua própria definição desse conceito.
Inicialmente é definido o problema de controle
u(t) = 
de uma forma bastante particular, porém, sufi- T

cientemente abrangente para englobar outras pos- arg min (G(u(t), t) − r(t)) (G(u(t), t) − r(t))
sı́veis definições mais especı́ficas. (2)
A equação 2 representa um problema clássico
de otimização contı́nuo e convexo com relação a
Definição 1 (O Problema de Controle) G(u(t), t), e como tal, pode-se utilizar algoritmos
Dada uma variável y(t), doravante chamada genéticos, bem como outras ferramentas de busca
de variável a ser controlada, pertencente a um e otimização, em sua solução.
espaço Y, pretende-se manter y no interior de
um subespaço R ∈ Y, quando é possı́vel apenas 3 O Controlador Genético
alterar o valor de uma segunda variável u(t) ∈ U ,
doravante denominada variável de controle, que Dadas a Definição 1 e a equação 2 é possı́vel criar
se relaciona com y de alguma maneira, tal que o uma codificação de forma a solucionar o problema
mapeamento y = G(u(t), t) existe. de minimização da equação 2 utilizando AG. Para
tanto faz-se necessária a definição dos seguintes
parâmetros, que formam a codificação do prob-
Esta definição generalista do problema de con- lema:
trole se aplica a praticamente todos os métodos
de controle conhecidos, que por meios diferentes, • Representação dos indivı́duos.
mantem o mesmo objetivo da Definição 1.
Esta definição baseada em subespaços, ali- • Forma de avaliação dos indivı́duos (função de
ada a representação de sistemas dinâmicos no es- fitness).
paço de estados, permitem a aplicação de ferra-
• Método de seleção.
mentas de inteligência computacional diretamente
na solução do problema de controle previamente • Método de reprodução.
definido, ao invés da utilização dessas ferramen-
tas apenas como suporte para métodos classicos • Método de mutação.
de controle.
Para tanto, consideremos o seguinte sistema Este conjunto de parâmetros define o contro-
não linear: lador genético proposto neste trabalho, pois esta-
belece a codificação do algoritmo genético, e com
isso estabelece seu objetivo. A definição desses
ẋ = f (x, u)
(1) parâmetros é feita com base no Sistema 1 e detal-
y = h(x, u)
hada nos parágrafos que seguem:
onde x ∈ Rn é o estado do sistema, u ∈ Rm é Considerando a entrada u ∈ U ⊂ Rm , os indi-
a entrada do sistema, y ∈ Rp é a saı́da do sistema, vı́duos da população são representados por a, onde
f : Rn+m → Rn é um mapeamento onde fi para cada indivı́duo i tem associado a ele um ponto
todo i ∈ {1...n}, é uma função suave e Lipschitz, ai ∈ U .
e h : Rn → Rp é um mapeamento hi para todo A avaliação dos indivı́duos associa a cada in-
i ∈ {1...p} é uma função suave e Lipschitz. divı́duo i um escalar real: f itnessi refletindo a
Comparando o Sistema 1 com a Definição 1 qualidade da solução por ele apresentada, e é re-
temos que a saı́da do sistema y é a variável a ser alizada com base em uma função de fitness:
controlada e sua entrada u é a variável de controle.
As funções f e h, juntamente com o estado do f itnessi = f itness(ai ) (3)
sistema x definem o mapeamento existente entre A definição da função f itness(ai ) é dada a
u e y. Como o estado x(t) é variante com o tempo, seguir:
o mapeamento G(u(t), t) também o é.
Consideremos o caso onde se deseja que a
f itness(ai ) = e(−τ (yδ (t,ai )−r(t)) (yδ (t,ai )−r(t)))
T
saı́da do Sistema 1 siga uma determinada refer-
encia variante no tempo r(t) ∈ Rp , então, o sube- (4)
spaço R(t) é definido a cada instante de tempo t, onde o parâmetro τ é um parâmetro utilizado
como sendo o menor espaço vetorial que contenha para ajustar a sensibilidade do algoritmo, seu
r(t) e sua vizinhança. ajuste é feito de forma empı́rica requerendo ex-
Dessa forma, o problema de controle se re- periência e observação e afeta diretamente a con-
duz a encontrar o valor da variável de controle do vergência e a capacidade exploratória do método,
sistema u(t), a cada instante de tempo, tal que: podendo ser ajustado dinamicamente a fim de evi-
y(t) = G(u(t), t) ∈ R(t). Esse problema pode tar o mal condicionamento numérico. A variável
também ser descrito da seguinte forma: yδ é a saı́da futura do sistema definida a seguir:
Definição 2 (Saı́da Futura) Dado o sistema r(t) u(t) y(t)
dinâmico não linear 1, a saı́da futura do sistema Controlador Sistema 6
yδ (t0 ) é dada por:

yδ (t0 , u) = y(t0 + δ)| x(t)


(5)
{u(t) = u(t0 ) ∀ t0 < t ≤ (t + δ)}
Figure 1: Controlador genético
Nota-se claramente a necessidade do conheci-
mento completo do vetor de estado do sistema em 16
Entrada do Sistema
t0 para o cálculo da saı́da futura yδ . Dessa forma,
o controlador genético proposto implementa uma 14

forma alternativa de controle por realimentação 12

Amplitude
de estado.
A seleção dos indivı́duos é realizada em duas 10

etapas distintas. Primeiramente são selecionados 8


de forma determinı́stica um número aleatório de
indivı́duos que irão sobreviver até a próxima ger- 6

ação. Feito isso é selecionado através do mecan- 4

ismo conhecido como roleta, um número aleatório


2
de pares de indivı́duos que irão se reproduzir 0 2 4 6 8 10

deixando herdeiros na próxima geração. É impor- Tempo [s]


tante salientar que é preservado o número máximo
de indivı́duos na população em todas as gerações. Figure 2: Entrada do sistema para uma referência
O mecanismo de reprodução utilizado é o em degrau de amplitude −1.5
método matricial (Berci, 2008), que demonstra
melhor desempenho em espaços de busca reais e
amostragem α = 0.1s segundos. O sinal de refer-
contı́nuos.
encia r(t) adotado foi um degrau com amplitude
O método de mutação empregado é o método
−1.5. A Figura 2 ilustra a entrada do sistema
vetorial, onde um vetor aleatório com distribuição
u(t) calculada pelo controlador genético para esta
retangular de baixa amplitude é adicionado ao ve-
simulação:
tor ai , sendo os indivı́duos que irão sofrer mutação
A aplicação do sinal de controle dado na
aleatoriamente escolhidos dentre todos os da pop-
Figura 2 à entrada do sistema resulta na saı́da
ulação.
y(t) mostrada na Figura 3:
O processo evolutivo do AG, utilizando a con-
figuração previamente descrita, possui a capaci- Pode-se observar nas Figuras 2 e 3 que o
dade de localizar u(t) ∈ U de forma a solucionar tempo de acomodação da entrada do sistema cal-
o problema descrito na Definição 1, não empre- culada pelo controlador genético é aproximada-
gando para tanto nenhuma técnica antes utilizada mente 2 segundos. A saı́da, porém, alcança o valor
de controle, caracterizando um novo paradigma na de referência rapidamente e se estabiliza sem so-
área de controle por realimentação de estado. bre sinal em aproximadamente dois perı́odos de
amostragem e com tempo de subida tr igual a um
perı́odo de amostragem, como fica evidenciado na
4 Exemplo de Aplicação

Consideremos o seguinte sistema dinâmico não lin- Saida do Sistema


0
ear:
−0.2

ẋ1 = x21 − x2 − u −0.4


ẋ2 = x1 x2 − 2x21 (6)
Amplitude

y = x1 −0.6

−0.8
Suporemos aqui, ainda que sem comprovação,
que este sistema é não localmente fracamente con- −1

trolável, conforme ficará claro mais adiante. −1.2

É utilizado aqui um controlador genético


−1.4
(Figura 1) com uma população de 100 indivı́-
duos, que são evoluı́dos por 30 gerações a cada −1.6
0 2 4 6 8 10

perı́odo de amostragem e saı́da futura calculada Tempo [s]


para δ = 0.1s.
Consideremos agora uma simulação com Figure 3: Saı́da resultante do sistema para a en-
tempo total de 10 segundos e perı́odo de trada mostrada na Figura 2
−1.35
Saida do Sistema 0
Saı́da do Sistema
r(t)
−1
y(t)

−2

Amplitude
−1.4
Amplitude
−3

−4

−5
−1.45

−6

−7

−1.5
−8
0 2 4 6 8 10
0 0.1 0.2 0.3 0.4 0.5 Tempo [s]
Tempo [s]
Figure 6: Saı́da do sistema para a referência dada
Figure 4: Detalhe da saı́da do sistema y durante
pela equação 7 com α = 0.1s
o inicio da simulação

pontos de descontinuidades na derivada do sinal


Figura 4, que mostra em detalhe o inicio da sim- de referência adotado, onde o valor desta não é
ulação. definido. Essa caracterı́stica que representa um
Este resultado pode ainda ser melhorado, desafio significativo para o controlador proposto,
diminuindo o tempo de estabilização da saı́da para pois torna-se impossı́vel prever a uma referência
um perı́odo de amostragem, visto que é sem- futura.
pre possı́vel (dentro dos limites da capacidade Para o caso um sinal de referência em degrau,
computacional disponı́vel) melhorar a solução ap- descrito na Figura 3, o controlador foi plenamente
resentada pelo algoritmo genético, modificando capaz de seguir essa referência, porém, no caso em
parâmetros como o tamanho da população e tela o sinal de referência é variante no tempo, e
número de gerações entre outros. nota-se claramente na equação 4, que o sistema
A simulação previamente discutida ilustra a irá produzir na saı́da um atraso igual a α, ou seja,
operação do controlador proposto para uma en- um perı́odo de amostragem.
trada constante, porém, é de fundamental inter- Esse atraso indesejável pode ser eliminado
essa avaliar a sua capacidade de seguir uma refer- pela utilização de um preditor na entrada do con-
ência variante no tempo, caracterizando o prob- trolador. Tal ferramenta irá estimar o valor do
lema do servo mecanismo. Para tanto, consider- sinal de referência para o tempo t + α: rα (t) =
emos agora uma referência descrita por um sinal r(t + α). A função de fitness é então substituı́da
não linear formado pela combinação de degraus e pela equação que segue:
rampas, descrito na equação 7:

f itness(ai ) = e(−τ (yδ (t,ai )−rα (t)) (yδ (t,ai )−rα (t)))
T

r(t) = −3µ(t)−tµ(t)+2(t−4)µ(t−4)−(t−6)µ(t−6) (8)


(7) Neste trabalho foi adotado para o calculo
A Figura 5 ilustra o sinal de referência dado do valor rα (t) o preditor quadrático dado pela
na equação 7: equação 9:

−3
Sinal de Referência
d r(t) d2 r(t) 2
−3.5 rα (t) = r(t) + α+ α (9)
dt dt2
−4
Consideremos agora um perı́odo de
Amplitude

−4.5
amostragem α = 0.1 segundos. A aplicação
−5 do controlador proposto para esta configuração
−5.5
resulta na saı́da mostrada na Figura 6:
Nota-se claramente que o controlador pro-
−6
posto foi perfeitamente capaz de seguir o sinal de
−6.5
referência em utilizado, o que o faz de forma bas-
−7
0 2 4 6 8 10
tante eficiente. É possı́vel verificar ainda que o
Tempo [s] controlador apresenta maior erro nos pontos de
descontinuidade da derivada, conforme suposição
Figure 5: Sinal de referência não suave variante anteriormente discutida, onde a grandeza d r(t)
dt é
no tempo alterada subitamente.
Uma possı́vel forma de mitigar o erro do con-
A Figura 5 mostra claramente que existem trolador genético nesta situação, é diminuir o
0
Saı́da do Sistema ência dado pela equação 10:
r(t)
−1
y(t)
r(t) = sin(t) (10)
−2
Amplitude
−3 O resultado da aplicação deste sinal de refer-
−4
ência, utilizando um perı́odo de amostragem α =
0.05 s, é mostrado na Figura 9:
−5

−6
0.6
Saı́da do Sistema
−7

0.4
−8
0 2 4 6 8 10
Tempo [s] 0.2

Amplitude
0
Figure 7: Saı́da do sistema para a referência dada
pela equação 7 com α = 0.01s −0.2

−0.4
Erro do Sistema
−0.6 r(t)
0.05 y(t)
−0.8
0 2 4 6 8 10
Tempo [s]
Amplitude

−0.05
Figure 9: Saı́da do sistema para a referência
−0.1
senoidal com α = 0.01s

−0.15 α = 0.01 s Novamente fica evidenciado o potencial do


α = 0.1 s
controlador proposto, que foi plenamente capaz
1 2 3 4 5 6 7 8 9 10 de seguir uma referência senoidal, utilizando um
Tempo [s]
preditor quadrático.
Outra caracterı́stica relevante a todo contro-
Figure 8: Erro do sistema em seguir o sinal de
lador é a estabilidade do sistema completo con-
referência: y(t) − r(t)
trolador+planta em malha fechada. Em contro-
ladores baseados em modelo, essa estabilidade
perı́odo de amostragem α, o que claramente irá pode ser avaliada com o auxilio de várias técni-
diminuir o perı́odo de tempo no qual existe um cas, porém, a grande maioria dessas técnicas são
erro considerável no valor rα calculado pelo pred- voltadas para sistemas lineares, sendo o caso não
itor. linear consideravelmente mais complexo, e em al-
A tı́tulo de comprovação, consideremos a gumas situações praticamente intratável.
Figura 7, na qual é mostrada a saı́da do sis- Para o controlador proposto não são perti-
tema quando utilizado um perı́odo de amostragem nentes essas análises convencionais, sendo sua es-
α = 0.01 segundos, dez vezes inferior ao utilizado tabilidade relacionada apenas a controlabilidade
na simulação que resultou na saı́da dada na Figura do sistema e a limitação da referência, sempre que
6. supusermos que o AG será capaz de encontrar o
A Figura 8 ilustra o erro do sistema em seguir ponto de otimalidade da sua função de custo.
o sinal de referência para as duas configurações em
questão (α = 0.01 s e α = 0.1 s) 5 Conclusões
É evidente a redução do erro do contro-
lador nos pontos de descontinuidade do sinal A aplicação de computação massiva e inteligên-
de referência associada à redução do perı́odo de cia computacional em controle é um assunto bas-
amostragem, confirmando a hipótese previamente tante difundido na literatura pertinente ao as-
discutida. Esses resultados confirmam também sunto, porém, o controlador genético proposto não
a eficiência do controlador genético em seguir se enquadra nesse cenário de forma usual, onde
um sinal de referência variante no tempo, ca- geralmente essas ferramentas são utilizadas como
pacidade essa que se soma ao potencial regu- suporte para métodos tradicionais de controle ou
lador demonstrado anteriormente pelo controlador mesmo para modelar caracterı́sticas desconheci-
quando aplicado a um sinal de referência em de- das dos sistemas a serem controlados.
grau. Diferentemente, o controlador genético aqui
Por fim é avaliada a capacidade do con- proposto é aplicado diretamente no cálculo da en-
trolador proposto seguir um sinal de referência trada do sistema com base no sinal de referên-
senoidal. Para tanto, é utilizado o sinal de refer- cia, constituindo um controlador não baseado em
modelo, com caracterı́sticas bastante particulares do XVII Congresso Brasileiro de Automática.
e de grande relevância na área de controle. Juiz de Fora, Brasil .
Esse controlador é suportado pela definição
particular do problema de controle aqui apresen- Berci, C. D. and Bottura, C. P. (2008c). Ob-
tada, que permite a representação do controle servador neural inteligente não baseado em
através de um problema de otimização. Esta modelo para sistemas não lineares, Anais do
definição é bastante genérica e não faz menção a XVII Congresso Brasileiro de Automática.
nenhuma caracterı́stica dinâmica ou classificação Juiz de Fora, MG, Brasil .
do sistema. Dessa forma, os controladores desen- Besançon, G. (2007). Nonlinear Observers and
volvidos com base nesta definição também serão Aplications, Springer.
consideravelmente abrangentes, podendo ser apli-
cados a uma vasta gama de sistemas não lineares. Davis, L. (1991). Handbook of Genetic Algorithms,
Outra caracterı́stica singular do controlador Van Nostrand Reinhold.
proposto, seu tempo de resposta, pode ser obser-
Eshelman, L. and Schafter, J. (1993). Real-coded
vada no exemplo de aplicação discutido. Fica ev-
genetic algorithm and interval schemata,
idente que o tempo de resposta do controlador é
Foundation of Genetic Algorithms 2 pp. 375–
função da configuração do AG, a qual pode ser
382.
melhorada sempre que houver capacidade com-
putacional disponı́vel. No caso aqui descrito ele Goldberg, D. E. (1989). Genetic Algorithms in
se torna muito próximo de um controlador ideal, Search, Optimization & Machine Learning,
pois, além de alcançar um tempo de resposta Addison-Wesley.
muito pequeno, o sistema controlado não apre-
senta overshoot considerável. Haynes, G. W. (1969). Controllability of Nonlin-
Ressalta-se ainda o paralelismo intrı́nseco dos ear Systems With Linearly Occurring Con-
métodos de inteligência computacional aplicáveis trols, National Aeronautics and Space Ad-
ao problema de controle da forma que esse é ministration NASA - Washington, D.C.
aqui definido. Esse paralelismo representa uma
Hedrick, J. K. and Girard, A. (2005). Control-
vantagem significativa à implementação do sis-
lability and observability of nonlinear sys-
tema de controle proposto em uma máquina par-
tems, Control of Nonlinear Dynamic Sys-
alela hipotética, como um computador quântico,
tems: Theory and Applications .
tornando o controlador consideravelmente mais
rápido. Hirschorn, R. M. and Lewis, A. D. (2002). Ge-
Esses resultados experimentais, juntamente ometric local controllability: Second-order
com as espectativas teóricas, comprovam que o conditions, Proceedings of the 41st IEEE
controlador genético aqui proposto, representa Conference on Decision and Control, Las Ve-
uma importante ferramenta na área de cont- gas, NV, Institute of Electrical and Electron-
role por realimentação de estado, sendo ainda ics Engineers .
de concepção relativamente simples, pois não
é necessária uma análise mais detalhada da Klamka, J. (2002). Controllability of nonlinear
dinâmica do sistema a ser controlado, e aplicável discrete systems, Int. J. Appl. Math. Com-
a uma vasta gama de sistemas não lineares, inde- put. Sci 12: 179–180.
pendente do seu grau de complexidade ou classi-
Lewis, A. D. (2002). Nonlinear control theory,
ficação.
Transactions Of The American Mathematical
Society .
References
Wadoo, S. A. (2003). Feedback Control and Non-
Berci, C. D. (2008). Observadores inteligentes de linear Controllability of Nonholonomic Sys-
estado: Propostas, Master’s thesis, Universi- tems, PhD thesis, Faculty of the Virginia
dade Estadual de Campinas. Polytechnic Institute and State University.

Wright, A. H. (1991). Genetic algorithms for


Berci, C. D. and Bottura, C. P. (2008a). Ob-
real parameter optimization, Department of
servador inteligente adaptativo neural não
Computer Science University of Montana
baseado em modelo para sistemas não lin-
pp. 205–220.
eares, Proceedings of 7th Brazilian Confer-
ence on Dynamics, Control and Applications.
Presidente Prudente, Brasil 7: 209–215.

Berci, C. D. and Bottura, C. P. (2008b). Obser-


vador inteligente para sistema não lineares
baseado em inteligência de enxame, Anais

Você também pode gostar