Você está na página 1de 26

Universidade Federal do Ceara

Departamento de Engenharia de
tica
Teleinforma
s-Graduac
o em
Programa de Po
a
tica
Engenharia de Teleinforma

Otimizac
ao Usando Algoritmos de
Computac
ao Evolutiva (GA e DE) e
Intelig
encia de Enxame (PSO)

Eduardo de Olivindo Cavalcante

31 de Maio de 2015

Quest
ao 1. Considere a funcao de Rastringin para 2 variaveis:
f (x1 , x2 ) = 20 + x1 2 + x2 2 10(cos(2x1 ) + cos(2x2 )),

(1)

em que xi [5.12; +5.12], i = 1, 2.. Esta funcao possui um mnimo global


em (x1 , x2 ) = (0, 0) para o qual f (x1 , x2 ) = 0. Pede-se:

(i) Fazer o grafico da funcao f (x1 , x2 ) para todo o domnio de (x1 , x2 ):


Os graficos mostrados abaixo foram gerado utilizando a funcao surf
do Matlab.

(a) Func
ao no domnio

(b) Mnimo global

Figura 1: Funcao de Rastringin


Ao analisarmos os graficos acima, vemos que a funcao de Rastringin
apresenta diversos mnimos e maximos locais no intervalo considerado,
porem tambem e possvel observar que existe apenas um mnimo global,
no ponto (0, 0) ( indicado pela seta vermelha na na Figura 1b ). Outra
caracterstica importante que se pode notar sao as simetrias que esta
funcao apresenta,de forma que os valores da funcao em cada quadrante
de (x1 , x2 ) sao iguais.

(ii) Fazer o grafico de curvas desta funcao:


O grafico mostrado abaixo foi gerado utilizando a funcao contour do
Matlab.

Figura 2: Curvas de Contorno


O grafico de curvas de contorno nos permite verificar, mais uma vez,
as caractersticas percebidas nos graficos anteriores. A existencia de
diversos crculos no grafico mostra os diversos maximos e mnimos locais que a funcao apresenta. Nota-se tambem a simetria da funcao em
relacao a cada quadrante. Outro aspeto notado e a tendencia de queda
do valor medio da funcao quando se aproxima do ponto (0, 0), que se
percebe pelas diferentes cores das curvas, que vao de cores mais vermelhas nas bordas para cores azuladas no centro do grafico.

(iii) Encontrar o mnimo global usando GA tomando como base o codigo


Matlab enviado por email. Mostrar graficos da funcao de aptidao do
melhor indivduo e da aptidao media da populacao a cada geracao. Especificar valores adequados dos parametros tamanho da populacao (N )
e probabilidades de recombinacao (pc ) e de mutacao (pm ).
Utilizando como base o codigo disponibilizado e realizando algumas
modificacoes para adapta-lo ao caso com 2 variaveis (x1 , x2 ), executamos o processo de minimizacao do valor da funcao de Ranstringin.
Neste caso, utilizamos o processo de selecao via torneio, recombinacao
via corte de 1 pontos e cromossomo de 44 genes para representar cada
ponto. Os valores escolhidos para os parametros foram N = 100, pc =
0.8 e pm = 0.01, onde as probabilidades foram escolhidas de modo
que haja uma grande chance de que ocorra a recombinacao entre dois
pais e que a mutacao ocorra em um n
umero pequeno de genes, isto
e feito de modo a tentar imitar o processo que ocorre na natureza.
Aqui, utilizamos como condicao de parada do algoritmo o ponto em que
ele alcanca a geracao de n
umero 200, e entao verificamos os melhores
as aptidoes dos melhores indivduos em cada geracao e a media das
aptidoes de todos os indivduos em cada geracao.
Na Figura 3 sao mostrados os graficos das melhores e medias aptidoes
para uma realizacao do algortmo.

(a) Aptid
ao do melhor indivduo

(b) Aptidao media

Figura 3: Aptidoes em uma realizacao do AG

Ve-se pelo grafico mostrado na Figura 3a que o algoritmo encontra um


ponto pertencente ao domnio de (x1 , x2 ), neste caso (0.0024, 0.0024),
cuja aptidao e visivelmente muito proxima a zero, isto ocorre na geracao
de n
umero 28, nas geracoes seguintes o valor se aproxima cada vez mais
do zero absoluto e na geracao de n
umero 96 o valor absoluto da aptidao
e zero e o ponto de coordenada (0.00000, 0.00000) foi encontrado. Na
Figura 3b, ao analisarmos as aptidoes medias de todos os indivduos,
vemos que nem todos convergiram para este ponto, entretanto, notase que a curva apresenta uma tendencia de decaimento em seu valor
medio, o que faz com que com um n
umero grande de geracoes todos os
indivduos cheguem ao ponto proximo ao de melhor aptidao.
Para melhor analisar a convergencia do Algoritmo Genetico e necessario
verificar o seu comportamento em um n
umero grande de realizacoes.
Desta forma, para colher informacoes estatticas do problema, realizamos o algoritmo 100 vezes e analisamos as medias dos melhores e de
todos os indivduos em cada realizacao. Os graficos sao mostrado na
Figura 4.

(a) Media das aptid


oes dos melhores indivduo

(b) Media das aptidoes medias

Figura 4: Aptidoes em uma realizacao do algortmo


Ao analisar a Figura 4a, vemos que a aptidao do melhor indivduo e
efetivamente minimizada na media das realizacoes, e que essa reducao
se da em grandes passos de reducao da aptidao no incio do algoritmo e a
menores passos nas geracoes maiores. Na Figura 4b, em que e mostrada
a media das aptidoes medias de cada realizacao, vemos que algo similar
4

ocorre, porem a minimizacao ocorre muito mais lentamente do que ao


analisarmos o decaimento da aptidao dos melhores indivduos, o que
era esperado, ja que para que a aptidao media chegue a zeros todos os
indivduos devem ser completamente minimizados.
(iv) Avaliar empiricamente o efeito de uma escolha inadequada dos parametros
(N, pc e pm ) no desempenho do AG. Sugestao: Fixar dois dos parametros
e verificar como o desempenho do AG e afetado pela variacao do terceiro parametro.
Inicialmente, variamos o n
umero de indivduos (N ) de 2 a` 300 de modo
a avaliar a escolha de seus valores, e deixamos pc = 0.8 e pm = 0.01 da
mesma forma que na questao anterior. Fixamos o n
umero de geracoes
em N g = 100 e para cada valor de N fizemos 10 realizacoes do algoritmo
esperado que
e colhemos as medias das aptidoes na u
ltima geracao. E
com quanto mais indivduos se tenha, mais rapido se chegue a uma
solucao, isto e, melhor e a aptidao quando o algoritmo chega no n
umero
maximo de geracoes. Na Figura 5 e mostrado o resultado obtido.

(a) Media das aptid


oes dos melhores indivduos

(b) Media das aptidoes medias

Figura 5: Aptidoes variando o n


umero de indivduo
Nos graficos vemos que o esperado e verdadeiro, uma vez que quanto
maior o n
umero de indivduos, menor e a aptidao na geracao de n
umero
100. Na Figura 5a notamos que com 200 indivduos o melhor indivduo
tem aptidao muito proxima a zero, enquanto na Figura 5b vemos que
a media das aptidoes dos elementos e reduzida quando se acrescenta
5

mais indivduos, porem quando o n


umero de indivduos e muito grande
a aptidao media aparenta ficar em torno de um valor constante, isto
pode acontecer pela maior dificuldade de minimizar todos os indivduos
ao mesmo tempo quando se acrescenta ainda mais individuos.
Outra forma de analisar a convergencia pode ser feita fixando um limiar de aptidao desejado e verificando o n
umero de geracoes necessarias
para que o algoritmo alcance este valor de aptidao. Isto foi feito utilizando como criterio de parada do codigo a condicao de que a aptidao
do melhor indivduo seja menor que o limiar dado pelo valor 106 ,
muito proximo do zero ideal. Para garantir que as simulacoes acontecessem em um tempo razoavel outra condicao teve que ser adicionada
fazendo com que o n
umero maximo de geracoes possveis fosse 105 . Os
parametros utilizados sao os mesmos de antes e novamente o codigo
e executado 10 vezes e as medias sao colhidas. O grafico obtido e
mostrado na Figura 6.

Figura 6: N
umero de geracoes para convergencia variando N.
Na Figura 6 vemos que ha uma grande variacao no n
umero de geracoes
necessarias para convergencia do AG para cada valor de N, porem ao
analisarmos a curva vemos que ha uma tendencia de reducao do n
umero
de geracoes necessarias quando o n
umero de indivduos e aumentado,
6

isto e, o algoritmo converge mais rapidamente quando se tem um maior


n
umero de indivduos, como era esperado.
Agora iremos variar a probabilidade de cruzamento (pc ) entre 0.01 e 1,
enquanto manteremos fixos os outros parametros em N = 30 e pm =
0.01. Realizando experimentos com o n
umero de geracoes fixo em Ng =
50 e repetindo cada experimento 10 vezes e colhendo as medias de cada
resultado, temos como resultado, os graficos mostrados na Figura 7:

(a) Media da aptid


ao do melhor indivduo

(b) Media das aptidoes medias

Figura 7: Aptidoes variando a probabilidade de cruzamento


Pelos graficos da Figura 7 vemos que as aptidoes variam de maneira
aparentemente nao ordenada. Entretanto, percebe-se que essas variacoes
ocorrem em torno de um valor medio proximo a 2.8 para a Figura 7a e
proximo a 4.8 para a Figura 7b.
O fato de nao existir um padrao fixo de variacao da aptidao em relacao `a
probabilidade de cruzamento tambem e observado quando visualizamos
o n
umero de geracoes necessarias para a convergencia do algoritmo na
Figura 8, onde uma media de 2500 geracoes sao necessarias para atingir
a convergencia.
O proximo parametro a ser inspecionado e a probabilidade de mutacao
(pm ), com valores variando entre 0.01 e 1, enquanto os outros parametros
sao mantidos fixos em N = 30 e pc = 0.8. Realizando experimentos
com o n
umero de geracoes fixo em Ng = 50 e repetindo cada experimento 10 vezes e colhendo as medias de cada resultado, temos como
resultado, os graficos mostrados na Figura 9.
7

Figura 8: N
umero de geracoes para convergencia variando pc .

(a) Media da aptid


ao do melhor indivduo

(b) Media das aptidoes medias

Figura 9: Aptidoes variando a probabilidade de mutacao


Nos graficos mostrados nas Figuras 9 e 10 vemos que as melhores convergencias sao encontradas quando os valores de pm sao muito proximos
a zero ou muito proximos a 1 (quando iguais a zero ou a 1 a convergencia
nao e boa, dado que nao haveria mutacao no primeiro caso e mutacao
total no segundo). Este fato e muito interessante, pois e esperado que

o AG convirja melhor apenas para valores de pm muito proximos a


zero, nao para outros valores, pois desta forma as boas caractersticas
dos indivduos nao seriam perdidas e passadas as proximas geracoes e
mutacoes funcionariam como na natureza.

Figura 10: N
umero de geracoes para convergencia (apt<0.01) variando pm .
Contudo, as simetrias deste problema especificadas nos itens (i) e (ii)
fazem com que os pontos cujos cromossos sao inversos, por exemplo
000010 e 111101, tenham valores de aptidoes identicas, o que faz com
que a aptidao de um certo cromossomo que passa pelo processo de
mutacao com probabilidades de mutacao muito grandes ou muito pequenas sejam equivalentes.
Considere o seguinte exemplo: Um cromossomo 10100010101 passa
por um processo de mutacao com pm = 0.01 e o resultado obtido e
10100010111, em que ocorreu uma mutacao no terceiro gene menos
significativo. Se consideramos agora a pm = 0.99, a probabilidade de
se obter um cromossomo igual a 01011101000, onde todos os genes,
exceto o terceiro menos significativo, mudaram e a mesma que de se
obter o cromossomo resultante do primeiro processo de mutacao, e no
caso do nosso problema, ambos teriam a mesma aptidao por serem
mutualmente inversos.
9

Para mostrar que em um caso sem simetria isto nao ocorre, retiramos
a simetria presente nosso problema, reescrevendo a funcao de Rastringin na forma abaixo, deslocando o seu ponto de mnimo para o
ponto (5, 5), cujos graficos sao mostrados na Figura 11.
f (x1 , x2 ) = 20+(x1 +5)2 +(x2 +5)2 10(cos(2(x1 +5))+cos(2(x2 +5))),
(2)

(a) Media da aptid


ao do melhor indivduo

(b) Media das aptidoes medias

Figura 11: Funcao de teste nao simetrica

(a) Media da aptid


ao do melhor indivduo

(b) Media das aptidoes medias

Figura 12: Aptidoes variando a probabilidade de mutacao

10

Avaliando o comportamento da convergencia do Algoritmo Genetico


aplicado a esta nova funcao, atraves da variacao da probabilidade de
mutacao, Figura 12, vemos que nao existe mais a equivalencia entre
probabilidades muito altas e muito baixas, e que como era esperado o
algoritmo funciona mais eficientemente com probabilidades de mutacao
baixas.
(v) Repetir o experimento usando as metaheurstcas evolucao diferencial
(DE) e otimizacao por enxame de partculas (PSO). Compare os resultados obtidos em termos de velocidade convergencia para o otimo
global, tempo de simulacao e insensibilidade a variacao de parametros.
Utilizando o Algoritmo de Evolucao Diferencial com uma populacao
de 30 indivduos, com os parametros cr = 0.2 E F = 1, foi obtido o
resultado mostrado na Figura 13 para a aptidao do melhor indivduo e a
aptidao media de todos os indivduos para uma realizacao do algoritmo.
Percebe-se pela figura que o DE chega ao ponto cuja aptidao do melhor

(a) Aptid
ao do melhor indivduo

(b) Aptidao media

Figura 13: Aptidoes DE


indivduo e muito proxima a zero a partir geracao de n
umero 30 e que
a media de todos os indivduos se torna muito proxima a zero a partir
geracao 40.
Para ilustrar melhor o funcionamento do DE mostramos na Figura 14
as posicoes de cada indivduo no grafico de curvas da funcao de Rastringin. Na figura se ve que conforme passam as geracoes, os indivduos
11

se aproximam do ponto otimo, e que na geracao 40 todos os pontos


encontram-se no interior do vale de valor mnimo da funcao.

Figura 14: Posicoes dos indivduos em geracoes

12

Para o PSO com uma populacao de 30 indivduos, com parametros


w = 0.6, c1 = c2 = 2.05, foi obtido o resultado mostrado na Figura
15 para a aptidao do melhor indivduo e a aptidao media de todos os
indivduos para uma realizacao do algoritmo.

(a) Aptid
ao do melhor indivduo

(b) Aptidao media

Figura 15: Aptidoes PSO


Pela Figura 15 vemos que o PSO encontra um indivduo cuja aptidao
e muito proxima a zero na geracao 42, porem, como se ve na Figura
15b, nem todos os indivduos chegam ao ponto de melhor aptidao, uma
vez que a media das aptidoes nao chega em zero. Contudo e esperado
que com um n
umero grande de geracoes todos os elemento convirjam
para o ponto otimo, pois a curva de media apresenta uma tendencia de
queda em seus valores.
Para ilustrar melhor o funcionamento do DE mostramos na Figura 16 as
posicoes de cada indivduo no grafico de curvas da funcao de Rastringin.
Na figura se ve que conforme passam as geracoes, os indivduos se
movem de forma a procurar o valor otimo, e que na geracao 30 a maioria
dos pontos encontram-se na regiao proxima ao valor mnimo da funcao.
O proximo seguinte na caracterizacao dos algoritmos e a comparacao
entre seus desempenhos, isto foi feito inicialmente atraves da construcao
dos graficos da aptidoes em cada geracao de cada algoritmo, com todos
eles utilizando uma populacao de 30 indivduos e iterando ate o maximo
de 200 geracoes, tendo como parametros pc = 0.8 e pm = 0.01 para o
AG, cr = 0.2 e F = 1 para o DE e w = 0.6, c1 = c2 = 2.05 para o
13

Figura 16: Posicoes dos indivduos em diferentes iteracoes PSO


PSO. A Figura 17 mostra os graficos que foram construdos atraves do
valores medios de aptidao em 100 realizacoes de cada algoritmo.
Analisando a Figura 17, vemos que O DE e PSO chegam em valores de
aptidao muito proximos a zero para o melhor e na media dos indivduos,
14

(a) Aptid
oes dos melhor indivduo

(b) Aptidoes medias

Figura 17: Comparacao das aptidoes dos 3 algortmos


porem o DE chega ao ponto otimo em um menor n
umero de geracoes,
tambem nota-se que o AG apresenta em media um desempenho pior que
os outros dois algoritmos, embora a aptidao media de seus indivduos
seja melhor que a do PSO nas 70 primeiras geracoes.
Para a analise do tempo de simulacao utilizamos duas abordagens, na
primeira cronometramos o tempo medio gasto por todos os algoritmos
para gerar os resultados mostrados acima, isto e, o tempo medio que
cada um leva para gerar as 200 geracoes, na segunda abordagem fixamos
um requisito de aptidao menor que 105 para considerar a convergencia
do melhor indivduo e cronometramos o tempo medio que cada codigo
leva para chegar ao ponto de convergencia. Os resultados sao mostrados
na Tabela 1 e foram obtidos atraves das medias dos tempos de 100
realizacoes de cada teste.
Abordagem
Abordagem 1
Abordagem 2

AG
0.8960 s
3.5096 s

DE
0.2219 s
0.0611 s

PSO
0.0118 s
0.0480 s

Tabela 1: Tempos de simulacoes


Na tabela, percebe-se que o PSO e em ambos os casos o mais rapido dos
algoritmos, seguido pelo DE em segundo lugar e o AG e o mais lento.
Fazendo uma relacao ente este resultado e os da Figura 17, pode-se
15

afirmar que embora o PSO precise de mais geracoes para alcancar o


mnimo, cada uma de suas geracoes sao computadas mais rapidamente
do que as geracoes DE, de modo que o tempo total necessario para o
PSO seja menor do que o do DE.
Outra caracterstica importante a ser comparada e a relacionada a`
variacao dos parametros utilizados em cada algoritmo. Esta analise
e feita, inicialmente, com o parametro do n
umero de indivduos, por
ser o u
nico parametro compartilhado entre todos os metodos. A Figura
18 mostra esta comparacao com o n
umero de indivduos variando de 4
a` 100 e com o n
umero de geracoes fixo em 60.

(a) Aptid
oes dos melhor indivduo

(b) Aptidoes medias

Figura 18: Comparacao de aptidoes variando N (60 ger)


Na Figura 18 vemos que quanto maior o n
umero de indivduos melhor
sera a aptidao obtida por todos os algoritmos e que o DE apresenta
as melhores aptidoes nos dois graficos. Outro aspecto interessante e o
fato de as aptidoes medias do PSO serem piores do que a do AG, isto
ocorre nesse grafico como reflexo do que e mostrado na Figura Figura
17, em que para 60 geracoes o AG apresenta melhor aptidao media do
que o PSO. Da mesma forma, se fixarmos agora o n
umero de geracoes
em 120, e esperado que a media das aptidoes do PSO sejam melhores
que as do AG, e isto e comprovado na Figura 19.

16

(a) Aptid
oes dos melhor indivduo

(b) Aptidoes medias

Figura 19: Comparacao de aptidoes variando N (120 ger)


O algoritmo DE apresenta mais dois parametros que podem ser analisados quanto a sua variacao, cr e F . Os graficos das variacoes de ambos
sao mostrados na Figura 20. Nelas vemos que valores baixos de cr e
valores de F entre 0.2 e 1 sao os que levam a um melhor desempenho
do DE quando aplicado a este problema especfico.

(a) Aptid
ao variando cr

(b) Aptidao variando F

Figura 20: Comparacao de aptidoes variando N (120 ger)


Da mesma forma, com o PSO, podemos variar o parametro w e visualizar o comportamento das solucoes. Na Figura 21 nota-se que para
valores de w proximos a 0.67 os melhores desempenhos sao alcancados
para este problema.
17

Figura 21: Aptidao variando w


Em uma conclusao sobre a comparacao dos tres algoritmos podemos
afirmar que, para os parametros testados, o PSO encontra mais rapidamente os valores otimos da funcao, embora necessite de um n
umero
maior de iteracoes para alcancar este ponto, enquanto o DE necessita
de um n
umero menor de geracoes mas seu calculo e mais demorado, ja
o AG se mostra como o mais lento dos tres nesta aplicacao. Tambem
podemos concluir que todos os codigos tem sua eficiencia melhorada
quando um n
umero grande de indivduos e utilizado.

18

Quest
ao 2. Considere o problema de ajuste de curvas para os dados do
aerogerador disponibilizado no SIGAA. De posse de um conjunto de N
pares entrada-sada {(v(l), p(l))}N
ao e um
l=1 , assuma que a curva de regress
polinomio de ordem k(k 0), ou seja
p(v) = a0 + a1 v + a2v 2 + ... + ak v k ,

(3)

em que v e a velocidade do vento (m/s) e p e a potencia gerada (kW) predita pelo modelo polinomial. Use as metaheursticas DE e PSO para estimar
valores para os parametros aj , j = 0, ..., k.. Compare o resultado obtido com
aquele gerado pela funcao polyfit do Matlab/Octave.
O conjunto de dados a ser aproximado, que representa as velocidades e
as potencias de uma aerogerador e mostrado na Figura 22.

Figura 22: Conjunto de dados do Aerogerador


Seguindo as dicas providas no enunciado da questao representamos cada
indivduo das metaheursticas a serem utilizadas como um vetor de ndices
do modelo polinomial, da seguinte forma:
(i)

x(i) = [a0

ai1

ai2
19

...

ain ]T ,

(4)

e minimizamos a funcao erro dada pelo somatorio de todos os erro quadraticos


de cada ponto de potencia, dado pela expressao
ferro (x(i) ) =

N
X

(p(l) p(l))2

(5)

l=1

Primeiramente utilizaremos a metaheurstica DE para minimizar esta


funcao erro acima, buscando um polinomio de ordem k = 4. Para isto
definimos os parametros da seguinte forma: n
umero de indivduos N i = 100,
constante de regularizacao cr = 0.9 e passo F = 0.5. Como criterio de parada
do algoritmo definimos um n
umero de geracoes maximo igual a 300.
Apos as 300 geracoes o indivduo com melhor aptidao encontrado foi
xDE = [0.3913

10.3729

5.0036

1.4339

0.0677]T ,

(6)

cujo grafico de sua funcao p(v) e mostrada em vermelho na Figura 23.

Figura 23: Funcoes Aproximadas


Na figura vemos que a curva DE (vermelho) se encaixa muito bem aos
conjuntos de pontos do aerogerador, aparecendo sempre na regiao media
entre todos os ponto. Na figura tambem e mostrada a curva gerada pelas
20

funcoes do Matlab polyfit e polyval, esta curva representada pelo pontilhado em cor verde, vemos que em todos os pontos as duas curvas parecem
estar sobrepostos, tendo sempre valores muito parecidos, alem disso, analisarmos os valores dos ndices do polinomio gerados pela funcao polyfit na
equacao percebemos que estes valores sao muito proximos aos obtidos no
melhor indivduo DE, com diferencas apenas a partir da sexta casa decimal.
Xpolyf it = [0.3913

10.3729

5.0036

1.4339

0.0677]T ,

(7)

Podemos tambem analisar, como fizemos na questao 1, os valores das


aptidoes em cada geracao, mostradas na Figura 24, onde vemos que com
pouqussimas iteracoes, cerca de 15, acontece um reducao muito grande do
valor da aptidao (nesse caso o erro quadratico medio), fazendo com que
nesse ponto ja tnhamos uma aproximacao razoavel dos pontos. A partir
dessa geracao a queda do valor de aptidao se da muito mais lentamente, ate
estabilizar no valor de erro = 6.5743 105 , que e o mesmo valor de erro que
obtido na aproximacao utilizando a funcao polyfit, o que nos diz que o
algortmo alcanca o ponto otimo.

(a) Aptid
oes dos melhor indivduo

(b) Aptidoes medias

Figura 24: Aptidoes por geracao DE


Com o proposito de testarmos mais uma vez a confiabilidade do algoritmo, realizamos 50 simulacoes com os mesmos parametros e colhemos as
medias dos erros quadraticos medios obtidos em cada uma delas, e tivemos
um resultado praticamente igual ao anterior, erromedio = 6.5743 105 , o
que nos diz que todas realizacoes chegam num valor de erro muito proximo
ao otimo.
21

Utilizando agora a Metaheurstica PSO, buscaremos, novamente, um polinomio


que aproxime a funcao com ordem k = 4. Para isto utilizamos o mesmo
n
umero de indivduos e geracoes utilizados no DE, N i = 100 e 300 geracoes,
e os parametros w = 0.6 e c1 = c2 = 2.05. Em uma realizacao do codigo o
indivduo com melhor aptidao encontrado foi
xP SO = [2.7814

2.3952

1.2871

1.0690

0.0559]T ,

(8)

cujo grafico de sua funcao p(v) e mostrada em vermelho na Figura 25.

Figura 25: Funcoes Aproximadas


Vemos pela figura e pelo polinomio obtido que, embora tenha ocorrido
uma boa aproximacao da curva, essa aproximacao nao foi igual a` obtida
utilizando a funcao polyfit, ou seja o ponto otimo nao foi aproximado perfeitamente. Isto pode ser aferido ao calcular a funcao erro aplicada ao melhor
indivduo, que retorna o valor erro = 6.6176 105 , que e ligeiramente maior
que o erro otimo, erro = 6.5743 105 , obtido com polyfit. Executando
o codigo 50 vezes e colhendo os erros obtidos, encontramos erro medio da
aproximacao com o PSO, erromedio = 6.6256 105 .
Deste modo, podemos concluir que para os parametros utilizados, o PSO
encontra uma boa curva de aproximacao para os dados, porem esta aproximacao nao e a de menor erro quadratico medio. Entretanto, quando se
22

aumenta o n
umero de maximo de geracoes, o algoritmo PSO chega em valores menores de erro. Na Figura 26 sao mostradas as aptidoes por geracao.

(a) Aptid
oes dos melhor indivduo

(b) Aptidoes medias

Figura 26: Aptidoes por geracao PSO


Foram realizados tambem testes buscando polinomios de ordem k = 6,
nestes testes utilizamos os mesmos parametros de anteriormente e obtivemos
resultados semelhantes, com uma aproximacao perfeita para o DE e uma boa,
porem imperfeita, para o PSO, Figura 27. Quanto aos tempos de simulacao,
o que era observado na questao anterior se mantem, com o PSO atingindo
mais rapidamente a geracao de n
umero 300.

(a) Aproximac
ao DE

(b) Aproximacao PSO

Figura 27: Aproximacoes com polinomio ordem 6

23

Quest
ao 3. Repita a Questao 2 usando como funcao-objetivo a ser minimizada a soma dos erros quadraticos (SEQ) com regularizacao:
f (xi ) =

N
X

ei 2 (l) + kxi k2 ,

(9)

l=1

em que > 0 e uma constante pequena, chamada de constante de regularizacao. O smbolo k k denota a norma euclidiana de um dado vetor.
A constante de regularizacao e um hiperparametro do problema de minimizacao em questao, ou seja, ele deve ser escolhido primeiro para que os
algoritmos de otimizacao metaheurstica possam ser aplicados. Assim, usando um valor adequado para (e.g. = 0.1), calcule a norma do vetor de
parametros obtido e compare-a com a norma do vetor obtido na Questao 2.
Em que o resultado obtido usando-se a funcao-objetivo mostrada na Eq. (3)
difere daquele obtido usando-se a funcao-objetivo da Questao 2?
A adaptacao do codigos da Questao 2 para a funcao SEQ e feita atraves
da adicao do termo mais a direita na equacao (9) na funcao de aptidao de
ambas metaheursticas. Este acrescimo da norma ao quadrado na funcao a
ser minimizada tem o intuito de fazer com que o resultado de norma mnima
seja obtido. Deste modo e esperado que as normas dos polinomios obtidos
nesta questao sejam menores do que as da questao anterior.
Escolhendo o valor de = 0.01, executamos os codigos de DE e PSO com
regularizacao, utilizando polinomios de ordem 4 e os mesmos parametros
utilizados na questao anterior. Os graficos obtidos sao mostrados na Figura
28, onde vemos que os resultados continuam com as mesmas caractersticas
obtidas na questao anterior, com o DE mostrando uma aproximacao perfeita
e o PSO com uma boa aproximacao dos valores.
Para verificar se as normas sao realmente reduzidas, executamos cada
codigo 50 vezes e calculamos a media das normas ao quadrado do melhor
indivduo de cada realizacao e dispomos os resultados nas Tabelas 2 e 3 para
os problemas com polinomios de ordem 4 e 6, respectivamente.

24

(a) Aproximac
ao DE

(b) Aproximacao PSO

Figura 28: Aproximacoes com regularizacao


Abordagem
Sem regularizacao
Com regularizacao

DE
PSO
134.8466 37.8074
134.6893 6.2554

Tabela 2: Normas ao quadrado dos melhores indivduos ordem 4


Abordagem
Sem regularizacao
Com regularizacao

DE
PSO
933.6167 141.3933
894.9717 0.1432

Tabela 3: Normas ao quadrado dos melhores indivduos ordem 6


Pelas tabelas, vemos que em todos os casos os codigos com regularizacao
resultarem em indivduos com norma reduzida, como era esperado. Desta
forma podemos afirmar que o acrescimo da regularizacao no problema de
minimizacao da funcao de erros quadraticos medio, efetivamente incorpora
o problema de minimizacao da norma, fazendo que tanto o erro, quanto a
norma do polinomio sejam minimizados.
Como uma conclusao geral ao trabalho, podemos afirmar que as tres
metaheuristicas analisadas funcionam efetivamente na otimizacao de problemas, porem e necessaria a correta escolha da metaheurstica mais adequada
para cada problema e a correta escolha de parametros para que os valores
otimos sejam encontrados mais rapidamente e com maior confiabilidade.
25

Você também pode gostar