ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de...

8
ESTIMA ¸ C ˜ AO DE PAR ˆ AMETROS DE SISTEMAS N ˜ AO LINEARES POR BUSCA DE CUCO VIA VOOS DE L ´ EVY Daniel K. Souza * , Gideon V. Leandro * , Gustavo Oliveira * , Eduardo P. Ribeiro * * Departamento de Engenharia El´ etrica Universidade Federal do Paran´a Curitiba, Paran´a, Brasil Emails: [email protected], [email protected], [email protected], [email protected] Abstract— In this work we applied the optimization algorithm cuckoo search via L´ evy flights (BC) in the parameters estimation of systems once the structure of the system is known or identified. Some improvements were realized in the BC with focus on the parameters estimation, that can also be used in any optimization problem. The results show the superiority of this method when compared with the fast nondominated sorting genetic algorithm (NSGA-II). Keywords— Parameters estimation, systems identification, cuckoo search via L´ evy flights, optimization algorithm, non scented genetic algorithm. Resumo— Nesse trabalho aplicamos o algoritmo de otimiza¸ c˜ao busca de cuco via voos de L´ evy (BC) na estima¸ c˜ao de parˆametros de sistemas uma vez que a estrutura do sistema ´ e conhecida ou identificada. Algumas melhorias foram realizadas no BC com foco em estima¸ c˜ao dos parˆametros, mas que tamb´ em podem ser utilizadas em qualquer problema de otimiza¸ c˜ao. Os resultados demonstram a superioridade desse m´ etodo em comparativo com o algoritmo gen´ eticodeordena¸c˜aon˜ ao dominado r´apido (NSGA-II). Palavras-chave— Estima¸c˜ ao de parˆametros, identifica¸c˜ao de sistemas, busca de cuco via voos de L´ evy, algoritmo de otimiza¸ c˜ao, algoritmo gen´ eticon˜aodominador´apido. 1 Introdu¸c˜ ao Na ´ area de identifica¸c˜ ao de sistemas, a maioria dos fenˆ omenos s˜ ao primeiramente modelados como sistemas lineares para facilitar o entendimento dos seus comportamentos com uma matem´ atica menos complexa. Assim que a tecnologia evolui, melho- res modelos s˜ ao necess´ arios para atingir as novas demandas de qualidade dos processos. Como resul- tado, uma pesquisa mais profunda sobre o compor- tamento do sistema frequentemente leva a modelos ao lineares. Parcialmente isso explica por que aidentifica¸c˜ ao de sistemas n˜ ao lineares tem sido uma ´ area bem ativa (Ljung, 2010) (Billings, 1980) (Ljung, 2007). Uma atividade chave no procedimento de iden- tifica¸c˜ ao de sistemas n˜ ao lineares, para a classe de modelo e a estrutura escolhida, ´ e a estima¸ ao de parˆ ametros que faz com que o modelo represente a dinˆ amica pretendida. Para estimar parˆ ametros de sistemas n˜ ao line- ares o m´ etodo dos m´ ınimos quadrados ordin´ arios (MQO) foi amplamente utilizado devido ` a sua sim- plicidade, velocidade e matem´ atica bem entendida num tempo em que o poder computacional dis- pon´ ıvel era relativamente baixo. Mais tarde foi descoberto que problemas que requerem um mo- delo de ru´ ıdo tornariam o modelo n˜ ao linear nos parˆ ametros, prejudicando a estima¸ ao de parˆ ame- tros sem tendˆ encias por estimadores baseados em MQO (Kumar e Moore, 1981). Para trabalhar com n˜ ao linearidades nos parˆ a- metros, alguns algoritmos heur´ ısticos de otimiza¸ ao avan¸cados foram empregados. Samad e Mathur (1992) utilizaram estimadores de parˆ ametros com redes neurais artificiais (RNA) para uma dada estrutura de modelo parametrizada treinada por aprendizado supervisionado. Yao e Sethares (1994) usaram os algoritmos gen´ eticos (GA) para resolver o problema de identifica¸c˜ ao de parˆ ametros para filtros digitais IIR lineares e n˜ ao lineares. Schwaab et al. (2008) propuseram o uso de otimiza¸c˜ ao por enxame de part´ ıculas (PSO) para estima¸c˜ ao de parˆ ametros n˜ ao lineares apresentando bons resul- tados estat´ ısticos. Como os algoritmos de otimiza¸ ao tem um papel importante na identifica¸ ao de sistemas caixa preta, e tamb´ em motivados pelos recentes avan¸ cos nesta ´ area, este artigo prop˜ oe o uso de um novo tipo de algoritmo evolucion´ ario (EA), o BC para aestima¸c˜ ao de parˆ ametros. Normalmente em problemas pr´ aticos a estru- tura perfeita ou parˆ ametros do modelo n˜ ao s˜ ao co- nhecidos. Assim ser˜ ao utilizados, neste artigo, pro- blemas bem discutidos anteriormente por Aguirre et al. (2010), Piroddi e Spinelli (2003) e Zhu (2005) para avaliar a qualidade de estima¸c˜ ao do algoritmo aqui proposto em compara¸ ao com t´ ecnicas recen- tes apresentadas na literatura. Esse artigo est´ a organizado da seguinte ma- neira: Na se¸c˜ ao 2, o problema da estima¸ ao de parˆ ametros ´ e descrito, na se¸c˜ ao 3 o BC ´ e apresen- tado, na se¸ ao 4 as modifica¸c˜ oes propostas aqui para o BC s˜ ao detalhadas, na se¸ ao 5 a metodologia utilizada ´ e definida, somente ent˜ ao na se¸c˜ ao 6 os resultados s˜ ao mostrados e discutidos e finalmente Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769

Transcript of ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de...

Page 1: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

ESTIMACAO DE PARAMETROS DE SISTEMAS NAO LINEARES POR BUSCA DECUCO VIA VOOS DE LEVY

Daniel K. Souza∗, Gideon V. Leandro∗, Gustavo Oliveira∗, Eduardo P. Ribeiro∗

∗ Departamento de Engenharia EletricaUniversidade Federal do Parana

Curitiba, Parana, Brasil

Emails: [email protected], [email protected], [email protected],

[email protected]

Abstract— In this work we applied the optimization algorithm cuckoo search via Levy flights (BC) in theparameters estimation of systems once the structure of the system is known or identified. Some improvementswere realized in the BC with focus on the parameters estimation, that can also be used in any optimizationproblem. The results show the superiority of this method when compared with the fast nondominated sortinggenetic algorithm (NSGA-II).

Keywords— Parameters estimation, systems identification, cuckoo search via Levy flights, optimizationalgorithm, non scented genetic algorithm.

Resumo— Nesse trabalho aplicamos o algoritmo de otimizacao busca de cuco via voos de Levy (BC) naestimacao de parametros de sistemas uma vez que a estrutura do sistema e conhecida ou identificada. Algumasmelhorias foram realizadas no BC com foco em estimacao dos parametros, mas que tambem podem ser utilizadasem qualquer problema de otimizacao. Os resultados demonstram a superioridade desse metodo em comparativocom o algoritmo genetico de ordenacao nao dominado rapido (NSGA-II).

Palavras-chave— Estimacao de parametros, identificacao de sistemas, busca de cuco via voos de Levy,algoritmo de otimizacao, algoritmo genetico nao dominado rapido.

1 Introducao

Na area de identificacao de sistemas, a maioriados fenomenos sao primeiramente modelados comosistemas lineares para facilitar o entendimento dosseus comportamentos com uma matematica menoscomplexa. Assim que a tecnologia evolui, melho-res modelos sao necessarios para atingir as novasdemandas de qualidade dos processos. Como resul-tado, uma pesquisa mais profunda sobre o compor-tamento do sistema frequentemente leva a modelosnao lineares. Parcialmente isso explica por quea identificacao de sistemas nao lineares tem sidouma area bem ativa (Ljung, 2010) (Billings, 1980)(Ljung, 2007).

Uma atividade chave no procedimento de iden-tificacao de sistemas nao lineares, para a classe demodelo e a estrutura escolhida, e a estimacao deparametros que faz com que o modelo representea dinamica pretendida.

Para estimar parametros de sistemas nao line-ares o metodo dos mınimos quadrados ordinarios(MQO) foi amplamente utilizado devido a sua sim-plicidade, velocidade e matematica bem entendidanum tempo em que o poder computacional dis-ponıvel era relativamente baixo. Mais tarde foidescoberto que problemas que requerem um mo-delo de ruıdo tornariam o modelo nao linear nosparametros, prejudicando a estimacao de parame-tros sem tendencias por estimadores baseados emMQO (Kumar e Moore, 1981).

Para trabalhar com nao linearidades nos para-metros, alguns algoritmos heurısticos de otimizacao

avancados foram empregados. Samad e Mathur(1992) utilizaram estimadores de parametros comredes neurais artificiais (RNA) para uma dadaestrutura de modelo parametrizada treinada poraprendizado supervisionado. Yao e Sethares (1994)usaram os algoritmos geneticos (GA) para resolvero problema de identificacao de parametros parafiltros digitais IIR lineares e nao lineares. Schwaabet al. (2008) propuseram o uso de otimizacao porenxame de partıculas (PSO) para estimacao deparametros nao lineares apresentando bons resul-tados estatısticos.

Como os algoritmos de otimizacao tem umpapel importante na identificacao de sistemas caixapreta, e tambem motivados pelos recentes avancosnesta area, este artigo propoe o uso de um novotipo de algoritmo evolucionario (EA), o BC paraa estimacao de parametros.

Normalmente em problemas praticos a estru-tura perfeita ou parametros do modelo nao sao co-nhecidos. Assim serao utilizados, neste artigo, pro-blemas bem discutidos anteriormente por Aguirreet al. (2010), Piroddi e Spinelli (2003) e Zhu (2005)para avaliar a qualidade de estimacao do algoritmoaqui proposto em comparacao com tecnicas recen-tes apresentadas na literatura.

Esse artigo esta organizado da seguinte ma-neira: Na secao 2, o problema da estimacao deparametros e descrito, na secao 3 o BC e apresen-tado, na secao 4 as modificacoes propostas aquipara o BC sao detalhadas, na secao 5 a metodologiautilizada e definida, somente entao na secao 6 osresultados sao mostrados e discutidos e finalmente

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

769

Page 2: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

na secao 7, tem-se as conclusoes.

2 Definicao do Problema

O processo de identificacao de sistemas e iterativocom essas atividades principais: Testes dinamicose aquisicao de dados - Escolha da classe do modeloe estrutura - Estimacao de parametros - Validacaodo modelo (Goodwin, 1977).

Este trabalho foca na atividade de estimacaode parametros e tem, como pre-requisito, a escolhada classe do modelo e estrutura.

A identificacao de sistemas e embasada naconstrucao de um modelo matematico M com para-metros θ que se comporta aproximadamente comoo sistema real S (Aguirre et al., 2010).

Existe um conjunto de dados Z que incluitanto sinais de entrada e saıda do sistema S. Se ossinais de entrada de Z forem tomados e aplicadosas entradas do modelo M , o conjunto de dadosZM e produzido.

Entao se torna possıvel definir uma funcao decusto J(Z,ZM ) que mede quao longe o conjuntode dados ZM esta do conjunto de dados medidosZ. Minimizando-se J(Z,ZM ), pela escolha dosparametros θ do modelo M , obtem-se a estimacaoθ que melhor aproxima M de S.

3 Busca de Cuco Por Voos de Levy

A BC foi originalmente proposta por Yang e Deb(2009) e foi comparado com o PSO e com o GAonde mostrou bons resultados sobre uma amplagama de problemas de otimizacao.

3.1 Comportamento de Procriacao dos Cucos

Cucos sao passaros que nao criam seus filhotes.Ao inves, as mamaes cuco colocam seus ovos nosninhos de femeas de outras especies esperando queelas incubarao os filhotes de cuco como seus. Poremse a anfitria descobre que os ovos nao sao dela, ouela simplesmente descarta os ovos estranhos, ouabandona o ninho e constroi um novo ninho emoutro lugar.

3.2 Algoritmo Busca de Cuco

Cada ovo representa uma solucao candidata numdado espaco de busca multidimensional e sua qua-lidade esta diretamente relacionada com a pro-babilidade de sobrevivencia dessa solucao. Parasimplificacao de um primeiro algoritmo, Yang eDeb definiram que cada ninho contem apenas umovo, ou seja, cada ninho e um conjunto de solucoescandidatas contendo somente uma solucao no BC.Ao longo das geracoes dos passaros cuco e possıvelobservar que a estrategia funciona como um EA.

O algoritmo segue tres regras ideais:

1. Cada cuco bota um ovo de cada vez, e bota seuovo num ninho escolhido aleatoriamente. Issoe feito substituindo-se o ovo antigo por outrogerado atraves de um voo de Levy aplicadosobre o ovo anterior.

2. Os melhores ninhos sao transferidos as proxi-mas geracoes. Essa regra e responsavel porgarantir a convergencia da solucao atraves deelitismo.

3. O numero de ninhos anfitrioes e fixo, e o ovobotado pelo cuco e descoberto pela anfitriacom uma probabilidade pa.

3.2.1 Pseudo Codigo

. . . . . . . . . . . . . . . . . .inıcio

Funcao objetivo f(x), x = (x1, ..., xd)T ;Gera uma populacao inicial de

n ninhos anfitrioes xi (i = 1, 2, ..., n);enquanto (t <GeracaoMaxima) ou (criterio de parada)

Toma um cuco aleatoriamente por voos de Levy;avalia a sua qualidade/pertinencia Pi;Escolhe um ninho j entre n aleatoriamente;se (Pi > Pj),

substitui j pela nova solucao;fim seUma fracao (pa) dos piores ninhos sao abandonados

e novos sao construıdos;Mantem melhores solucoes

(ou ninhos com solucoes de qualidade);Ordena as solucoes e acha a melhor atual;

fim enquantoPos processa os resultados e visualizacao;

fim inıcio

3.3 Voo de Levy

Um grande contribuidor do desempenho do BCe o voo de Levy que alem de estar intrınseco aometodo BC, e um tipo de caminhada aleatoriaresponsavel por explorar o espaco de busca porsolucoes. Muitos animais as vezes desenvolvemvoos com caracterısticas tıpicas do voo de Levy. Ovoo de Levy e uma busca espacial eficiente em queas mudancas de direcao sao isotropicas e aleatorias,os segmentos da trajetoria sao retilıneos e seuscomprimentos seguem uma distribuicao de Levy(Mandelbrot, 1983). Os tubaroes, por exemplo,alternam entre o movimento browniano quandoa caca e abundante em uma determinada regiaoproxima e o movimento por voo de Levy quandoa caca esta escassa nessa regiao(Humphries, 2010).Um exemplo do voo de Levy com 50 passos podeser observado na figura 1 com a origem como pontode partida.

O caso particular para o qual Mandelbrot usouo termo “voo de Levy” e definido pela funcao de

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

770

Page 3: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

−100 0 100 200 300 400 500 600

−100

−50

0

50

Figura 1: Um exemplo de 50 passos de um voode Levy em duas dimensoes com α = 0.5, β = 1,γ = 1.5, δ = 1.

sobrevivencia da distribuicao dos comprimentosdos passos, U , como pode ser visto na equacao 1.

Pr(U > u) =

{1 : u < 1,

u−D : u ≥ 1.(1)

Onde D e um parametro relacionado a dimen-sao fractal e a distribuicao e um caso particular dadistribuicao de Pareto. Mais tarde pesquisadoresreformularam a questao permitindo que a distri-buicao dos comprimentos dos passos seja qualquerdistribuicao cuja funcao de sobrevivencia tenhauma cauda do tipo de potencia conforme pode servisto na equacao 2.

Pr(U > u) = O(u−k),

para k que satisfaz 1 < k < 3.

(2)

Aqui a notacao O e a notacao matematica doGrande-O.

4 BC modificada

Nesta secao propoe-se duas modificacoes no BCoriginal (Yang, 2010b) e utilizando-se como pontode partida o codigo disponibilizado pelo proprioautor (Yang, 2010a):

1. Simulacao numerica de processos estocasticosestaveis de Levy

2. Calculo de direcao isotropica

4.1 Simulacao numerica de processos estocasticosestaveis de Levy

O metodo utilizado por Yang em seu codigo apre-senta um calculo simplificado do vetor ~s de passodo voo de Levy conforme pode ser observado naequacao 3.

~s =~a

β

√σx(α).‖~b‖

(3)

Onde ~a e ~b sao vetores com dimensao n de va-riaveis aleatorias independentes normalmente dis-tribuıdas em que σx e calculado atraves da equacao12.

σx(α) = α

√√√√(Γ(1 + α).sin(π.α2 )

Γ( 1+α2 ).α.2

α−12

)Onde Γ(z) e a funcao de Euler Γ. (4)

Para evitar possiveis efeitos colaterais de umasimplificacao como essa, foi decidido utilizar naıntegra o metodo de Mantegna (1994).

Em comparativo com outros metodos compu-tacionais para geracao de numeros aleatorios comuma distribuicao de Levy, o metodo de Mantegnaapresentou calculos mais simples (Leccardi, 2005),o que favorece uma implementacao em hardware,como por exemplo um ASIC (Application SpecificIntegrated Circuit), para obtencao de um processa-mento muito mais rapido. Caso uma implementa-cao por hardware nao seja uma opcao de projeto,o algoritmo de McCulloch e mais indicado devidoa sua maior velocidade de processamento por soft-ware.

O algoritmo selecionado para fazer o calculo docomprimento dos passos do voo de Levy e baseadono metodo de Mantegna e foi obtido no apendicedo artigo de Leccardi. E possıvel observar queesse algoritmo, para calcular C(α), utiliza um me-todo de calculo polinomial de valores dados algunspontos conhecidos, ao inves de resolver a integralda equacao 5 numericamente obtendo-se C1(α) eC2(α), conforme proposto por Mantegna.

1

π.σx(α).

∫ ∞0

α√q .e

− q22 − q( 2α )

.C2(α)

2.σ2x(α)

dq

=1

π.

∫ ∞0

cos

[(K(α)− 1

e+ 1

).C(α)

].e−q

α

dq

(5)

onde:

K(α) =α.Γ

(α+12.α

)Γ(1α

) . α

√α.Γ

(α+12

)Γ(1 + α).sen

(π.α2

) (6)

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

771

Page 4: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

4.2 Calculo de direcao isotropica

Um voo de Levy e uma caminhada aleatoria em queos comprimentos dos passos tem uma distribuicaode probabilidade do tipo cauda pesada. Quandodefinida como uma caminhada num espaco de di-mensao maior que um, os passos sao realizados emdirecoes aleatorias isotropicas.

Na implementacao do algoritmo original noMATLAB, Yang (2010b) sugere a utilizacao dafuncao randn com dimensao igual ao numero decoordenadas do ninho conforme pode ser visto nafigura 2.

1 %% Get a cuckoo and generate new ...solutions by random walk

2 function s=get_a_cuckoo(s,star)3 stepsize=0.05;4 s=star+stepsize*randn(size(s));

Figura 2: Implementacao da isotropia do algoritmooriginal no MATLAB (Yang, 2010b).

Da trigonomia, o versor v de um vetor ~v car-rega a informacao de direcao conforme pode serobservado na equacao 7, enquanto ‖~v‖ e a magni-tude desse vetor.

~v = ‖~v‖.v (7)

Portanto o produto interno da escalar stepsizepor um vetor gerado pela operacao randn tem oobjetivo de criar um vetor com direcao aleatoriaisotropica e magnitude constante igual a 0.05 e quedesempenha um passo da caminhada aleatoria. Novoo de Levy, esse vetor tem sua magnitude calcu-lada atraves da simulacao numerica de processosestocasticos de Levy.

Como nessa implementacao os vetores euclidia-nos resultantes da operacao randn nao apresentammodulo unitario, surge, como efeito colateral, umdesvio na distribuicao de probabilidade dos com-primentos dos passos atraves da adicao de maisuma variavel aleatoria, o comprimento do vetor dedirecao gerado.

Para demonstrar esse efeito, 10000 vetores dedirecao bidimensionais foram gerados conformeimplementacao original em que a amplitude delesfoi calculada e o histograma levantado.

Como pode ser observado na figura 3, aamplitude dos vetores gerados nao e unitaria.Objetivando-se corrigir essa distorcao, esses veto-res foram transformados em versores mantendo-sea direcao isotropica e aleatoria.

Isso foi alcancado atraves da divisao dos ve-tores pelas suas respectivas magnitudes, conformesugestao de Aina e Jonas (2012). A operacao podeser vista na figura 4.

Alem de resolver o problema apontado de dis-torcao, esse tipo de implementacao ainda permite

0 1 2 3 40

50

100

150

200

250

300

Figura 3: Histograma do comprimento de 10000vetores bidimensionais gerados atraves da funcaorandn no MATLAB.

1 v = randn(10000,3);2 v = bsxfun(@rdivide,v,sqrt(sum(v.^2,2)));3

4 plot3(v(:,1),v(:,2),v(:,3),'.')5 axis equal

Figura 4: Codigo sugerido por Aina e Jonas (2012)para geracao de vetor unitario de 3 dimensoes.

a geracao de um versor n-dimensional, para issobasta alterar a dimensao 3 na linha 1 do codigo dafigura 4 para a dimensao desejada. O resultado dosvetores tridimensionais utilizando-se como pontode partida a origem pode ser observado na figura5.

5 Metodologia

Com uma estrutura matematica ja conhecida econstante, a relacao entre os sinais de entrada esaıda de ZM sera funcao exclusiva do vetor deparametros estimados θ. E aqui que entra o BC.Como um algoritmo de otimizacao, ele sera res-ponsavel por resolver o problema apresentado nasecao 2 atraves da determinacao de θ de forma aminimizar a funcao de custo J(Z,ZM (θ)) dado oconjunto de dados Z.

5.1 Parametros do BC

5.1.1 Algoritmo do voo de Levy

De acordo com o algoritmo de Mantegna selecio-nado, e preciso definir os parametros da distribui-cao de Levy zs = f(α, γ, n,N).

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

772

Page 5: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

−0.5

0

0.5

−0.5

0

0.5

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

Figura 5: Dez mil versores tridimensionais geradosisotropica e aleatoriamente.

Onde α define o ındice da distribuicao e con-trola as propriedades de escala do processo estocas-tico zs, γ seleciona a unidade de escala do processo,n e o numero de variaveis estocasticas independen-tes w calculados pela equacao 10 (Mantegna, 1994)e N e a matriz de entrada que define somente adimensao da matriz de resultados.

O calculo de zs e feito atraves da equacao 8.

zs = α√γ .z (8)

Como pode ser visto na equacao 9, z e umamedia ponderada de n variaveis estocasticas wgeradas pela equacao 10.{

z = 1α√n.∑nk=1 wk : n > 1,

z = w : n = 1.(9)

w = {[K(α)− 1] .e−v

C(α) + 1}.v (10)

Nessa equacao, a variavel estocastica v e calcu-lada atraves de duas variaveis estocasticas normaisx e y como pode ser observado na equacao 11. JaK(α) e um parametro da transformacao nao lineare e calculado atraves da equacao 6.

v =x

α√|y|

(11)

Os desvios padrao de x e de y sao selecionadosassim: σy = 1 e σx calculado pela equacao 12.

σx(α) = α

√√√√Γ(1 + α).sin(π.α2

)Γ(1+α2

).α.2

α−12

(12)

Conforme pode ser visto na tabela 1, a dimen-sao da matriz de resultados sera igual a dimensaodo vetor de parametros a serem identificados θ.

Tabela 1: Parametros utilizados no calculo dadistribuicao de Levy.

Parametro Valor

α 1.5γ 1n 1

N matrix θ

5.1.2 criterio de parada

Assim como o GA, o BC tambem precisa de umcriterio de parada para interromper a evolucao dapopulacao de solucoes. Em geral, dois criterios deparada distintos sao usados em EAs:

1. Parada quando o algoritmo atinge um determi-nado numero de avaliacoes da funcao objetivo.

2. Parada quando a evolucao da populacao entraem saturacao.

O criterio de parada que e proposto aqui paraidentificacao leva em consideracao a saturacao dataxa media de evolucao. A razao para isso e:

1. Geralmente para a identificacao de sistemasas coordenadas do erro mınimo global saodesconhecidas.

2. Quando a evolucao da populacao entra emsaturacao, as chances sao boas de que a melhorsolucao ate entao esta proxima do mınimoglobal.

A saturacao da taxa media de evolucao seraconfigurada por dois parametros, StallGenLimit eTolFun. Quando a taxa de evolucao das ultimasStallGenLimit geracoes for menor que TolFun, oalgoritmo interrompe novas geracoes.

6 Resultados

O problema de estimacao dos parametros e resol-vido atraves de uma otimizacao que muitas vezes setorna multi objetivo (MOP, Multi Objective Opti-mization) quando conjuntos de solucoes diferentesatendem os requisitos de desempenho. EAs pa-recem uma escolha natural para resolver MOPsporque podem encontrar multiplas solucoes emuma rodada de simulacao. Para avaliar os resulta-dos do estimador de parametros por BC (EPBC)proposto, um comparativo sera feito com os resul-tados do estimador de parametros com o NSGA-II(EPNSGAII) obtidos por Aguirre et al. (2010).

No artigo do Aguirre et al. (2010) um EA multi-objetivo (MOEA) chamado NSGA-II (Deb et al.,2002) foi aplicado com sucesso para a estimacaode parametros de alguns exemplos ja exploradosna literatura.

Segundo Deb et al. (2002) o NSGA-II lida bemcom os principais pontos de crıtica do NSGA, com

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

773

Page 6: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

melhores resultados se comparado com a estrategiade evolucao pareto-arquivada (PAES) e pareto-forca EA (SPEA).

Dentre os exemplos abordados, dois foram se-lecionados para testar o desempenho do algoritmoaqui proposto. Eles possuem as seguintes caracte-rısticas:

1. Sistema output error polinomial (OEP) linearnos parametros

2. Sistema output error racional (OER) nao li-near nos parametros

6.1 Parametros do EPBC utilizados

Como ambos os exemplos sao SISO (Single InputSingle Output), a funcao de custo selecionada paraser minimizada foi o erro medio quadratico (MSEMean Squared Error) aplicado ao erro de saıdaconforme descrito pela equacao:

J(Z,ZM ) = MSE(y − y) (13)

Nestes exemplos o parametro StallGenLimitfoi configurado relativamente alto e o parametroTolFun foi configurado bem baixo para evitar adesistencia da evolucao muito precocemente as-sim como um aumento da duracao da simulacaoMonteCarlo.

Para completar a parametrizacao do BC, apopulacao inicial foi fixada em 15 elementos (Po-pulationSize), e a probabilidade de descoberta deovos estranhos pela anfitria (pa) foi fixada em 0,25(DiscoveryRate). Resumindo, o BC foi configuradode acordo com a tabela (2).

Tabela 2: Conjunto de configuracoes do EPBC.

Parametro BC Valor

StallGenLimit 1000PopulationSize 15

TolFun 1e-20DiscoveryRate 0.25

6.2 Construcao dos Modelos dos Exemplos

Os sistemas S dos exemplos, aqui tambem explora-dos, foram construıdos no Simulink objetivando-segerar o conjunto de dados Z que inclui tanto ossinais de entrada e saıda do sistema S.

Seguindo-se as recomendacoes do MATLAB(2013) para melhores resultados, a semente inicialdos blocos geradores de ruıdo gaussiano foi configu-rada para a funcao randseed, que gera um numeroprimo aleatorio e maior que 30.

6.3 Exemplo OEP

O primeiro exemplo aqui abordado trata da identi-ficacao de parametros de um modelo para um sis-tema OEP proposto por Piroddi e Spinelli (2003):

w(k) = 0.75w(k − 2) + 0.25u(k − 1)

−0.2w(k − 2)u(k − 1)

y(k) = w(k) + e(k)

(14)

onde a entrada u(k) e um processo auto regressivode segunda ordem com polos em z = 0.9 e 0.95excitado por um ruıdo branco gaussiano com mediazero e variancia σ2 = 0.25.

Figura 6: Sistema OEP.

Re-escrevendo na representacao NARMAX:

y(k) =0.75y(k − 2) + 0.25u(k − 1)

− 0.2y(k − 2)u(k − 1)− 0.75e(k − 2)

+ 0.2e(k − 2)u(k − 1) + e(k)

(15)

Na simulacao livre, frequentemente esse sis-tema apresenta comportamento instavel conformepode ser observado na figura 7.

0 50 100 150 200 250 300−30

−20

−10

0

10

20

30

y(k)u(k)

Figura 7: Instabilidade do sistema OEP. Max.e mın. de y(k) sao 6, 95.1023 e −1, 90.1017 respec-tivamente.

Observou-se que um aumento da quantidadede amostras utilizadas nos sinais de entrada e saıdadesse sistema implica um aumento da incidencia deinstabilidade do sistema. Esse comportamento trazuma dificuldade adicional na estimacao devido apossibilidade de gerar inumeros pontos de mınimona funcao de custo.

Os resultados obtidos das 1000 rodadas Mon-teCarlo mostram que utilizando-se a EPBC, foi

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

774

Page 7: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

possıvel estimar os parametros do modelo con-forme mostra a tabela (3) na coluna θ com umcomprimento de 300 amostras na simulacao livredo sistema S no Simulink.

Tabela 3: Resultados do modelo OEP comEPBC sobre 1000 rodadas Monte Carlo.

ref min max med std. dev.

θn θm θM θ σθ

θ1 0.75 0.7497 0.7500 0.7500 0.0000θ2 0.25 0.0316 0.3408 0.2336 0.0402θ3 -0.2 -0.2001 -0.2000 -0.2000 0.0000

Se os resultados forem comparados agora comaqueles obtidos pelo Aguirre et al. (2010) na tabela4, e tambem possıvel ver que para 300 amostras, osdesvios padrao σθ do EPBC para os parametros θ1e θ3 sao iguais a zero, enquanto o EPNSGAII ob-teve 0,005. Ja o parametro θ2 foi melhor estimadopelo EPNSGAII.

Tabela 4: Resultados do modelo OEP comEPNSGAII sobre 1000 rodadas Monte Carlo.

ref min max med std. dev.

θn θm θM θ σθ

θ1 0.75 0.7350 0.7690 0.7500 0.0050θ2 0.25 0.2330 0.2650 0.2500 0.0050θ3 -0.2 -0.2210 -0.1790 -0.2010 0.0050

6.4 Exemplo OER

O seguinte sistema OER e nao linear nos parame-tros e foi tirado de Zhu (2005).{

w(k) = 0.3w(k−1)w(k−2)+0.7u(k−1)1+w(k−1)2+u(k−1)2

y(k) = w(k) + e(k)(16)

onde a entrada u(k) e uma sequencia uniforme-mente distribuıda com media zero e variancia σ2

igual a 0.33 e e(k) e um ruıdo branco com mediazero e variancia σ2 igual a 0.01. Esse problema foiescolhido porque de acordo com o Aguirre et al.(2010) ele representa uma estimacao de parametrosdesafiadora.

Figura 8: Sistema OER.

Ele pode ser re-escrito usando a representacao

equation error :

y(k) =0.3y(k − 1)y(k − 2) + 0.7u(k − 1)

1 + y(k − 1)2 + u(k − 1)2+ e(k)

(17)Os resultados obtidos das 1000 rodadas Mon-

teCarlo mostram que utilizando-se a EPBC, foipossıvel estimar os parametros do modelo con-forme mostra a tabela (5) na coluna θ com umcomprimento de 1000 amostras na simulacao livredo sistema S no Simulink.

Tabela 5: Resultados do modelo OER comEPBC sobre 1000 rodadas Monte Carlo.

ref min max med std. dev.

θn θm θM θ σθ

θ1 0.3 0.0874 0.5552 0.3008 0.0745θ2 0.7 0.6182 0.7882 0.6981 0.0266θ3 1 -0.4115 2.5834 0.9693 0.5121θ4 1 0.7476 1.2415 0.9971 0.0837

Se os resultados forem comparados agora comaqueles obtidos pelo Aguirre et al. (2010) na tabela6, e tambem possıvel ver que para uma simulacaode 1000 amostras, os desvio padrao σθ do EPBCfoi aproximadamente metade do estimador de pa-rametros NSGA-II. Isso significa que ele foi maiseficiente na indicacao dos valores de parametrosreais.

Tabela 6: Resultados do modelo OER comEPNSGAII sobre 1000 rodadas Monte Carlo.

ref min max med std. dev.

θn θm θM θ σθ

θ1 0.3 -0.25 0.834 0.293 0.142θ2 0.7 0.454 0.905 0.703 0.062θ3 1 -2.659 4.175 1.044 0.939θ4 1 0.452 1.773 1.016 0.225

7 Conclusoes

Nesse artigo propos-se um algoritmo de estimacaoque aplica o BC na estimacao de parametros dadaa estrutura do sistema. O algoritmo foi acurado,rapido, facil de implementar e ajustar. Alem dissoforam propostas algumas modificacoes no BC afimde melhora-lo.

Para destacar o seu desempenho os sistemasdos exemplos escolhidos foram nao lineares, sendoo primeiro de saıda instavel e o segundo nao lineartambem nos parametros o que representa uma com-plexidade adicional para o processo de estimacao.

Os resultados demonstram que o algoritmoaqui proposto alem de obter sucesso na tarefa daestimacao de parametros, foi em geral mais acuradono comparativo com o NSGA-II.

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

775

Page 8: ESTIMAC˘AO DE PAR~ AMETROS DE SISTEMAS N^ AO … · Belo Horizonte, MG, 20 a 24 de Setembro de 2014 769. na se˘c~ao 7, tem-se as conclus~oes. ... que mede quao longe o conjunto

Referencias

Aguirre, L. A., Barbosa, B. H. e Braga, A. P.(2010). Prediction and simulation errors inparameter estimation for nonlinear systems,Mechanical Systems and Signal Processing24(8): 2855 – 2867.

Aina e Jonas (2012). How to generate a unitvector pointing in a random direction withisotropic distribution of direction? Dispo-nıvel em: <http://stackoverflow.com/questions/9750908/how-to-generate-a-

unit-vector-pointing-in-a-random-

direction-with-isotropic-dist>.Acesso em: 31 de dezembro de 2013.

Billings, S. (1980). Identification of nonlinearsystems: A survey, Control theory and appli-cations, IEEE Proceedings D 127(6): 272–285.

Deb, K., Pratap, A., Agarwal, S. e Meyarivan,T. (2002). A fast and elitist multiobjectivegenetic algorithm: Nsga-ii, EvolutionaryComputation, IEEE Transactions on6(2): 182–197.

Goodwin, G. C. (1977). Dynamic system identifi-cation: experiment design and data analysis,Developmental Psychology Series, AcademicPress.

Humphries, N. E. (2010). Environmental contextexplains levy and brownian movement pat-terns of marine predators, Nature 465: 1066 –1069.

Kumar, R. e Moore, J. B. (1981). Detectiontechniques in least squares identification,Automatica 17(6): 805 – 819.

Leccardi, M. (2005). Comparison of threealgorithms for levy noise generation, FifthEUROMECH Nonlinear Dynamics Confe-rence, pp. 1–6.

Ljung, L. (2007). Identification of nonlinearsystems, LiTH-ISY-R 2784, LinkopingUniversity, The Institute of Technology,Department of Electrical Engineering, Auto-matic Control.

Ljung, L. (2010). Perspectives on system identifica-tion, Annual Reviews in Control 34(1): 1 – 12.

Mandelbrot, B. (1983). The Fractal Geometryof Nature, Henry Holt and Company, SanFrancisco.

Mantegna, R. N. (1994). Fast, accurate algorithmfor numerical simulation of levy stablestochastic processes, Phys. Rev. E 49: 4677–4683.

MATLAB (2013). Gaussian noise generator,MATLAB online documentation, TheMathWorks Inc., Natick, Massachusetts.

Piroddi, L. e Spinelli, W. (2003). An identificationalgorithm for polynomial narx models basedon simulation error minimization, Internatio-nal Journal of Control 76(17): 1767–1781.

Samad, T. e Mathur, A. (1992). Parameterestimation for process control with neuralnetworks, International Journal of Approxi-mate Reasoning 7(3-4): 149–164.

Schwaab, M., Biscaia, E. C., Jr., Monteiro,J. L. e Pinto, J. C. (2008). Nonlinearparameter estimation through particle swarmoptimization, Chemical Engineering Science63(6): 1542–1552.

Yang, X.-S. (2010a). Cuckoo search (cs) algorithm.Diponıvel em: <http://www.mathworks.com/matlabcentral/fileexchange/29809-

cuckoo-search-cs-algorithm>. Acessoem: 11 de fevereiro de 2014.

Yang, X.-S. (2010b). Nature-inspired metaheuristicalgorithms, 2 edn, Luniver Press, Universityof Cambridge, Frome, BA11 6TT, UnitedKingdom.

Yang, X.-S. e Deb, S. (2009). Cuckoo search vialevy flights, Nature Biologically Inspired Com-puting, 2009. NaBIC 2009. World Congresson, pp. 210–214.

Yao, L. e Sethares, W. (1994). Nonlinear para-meter estimation via the genetic algorithm,Signal Processing, IEEE Transactions on42(4): 927–935.

Zhu, Q. (2005). An implicit least squares algo-rithm for nonlinear rational model parameterestimation, Applied Mathematical Modelling29(7): 673 – 689.

Anais do XX Congresso Brasileiro de Automática Belo Horizonte, MG, 20 a 24 de Setembro de 2014

776