Você está na página 1de 8

MODULAO DE VELOCIDADE EM OTIMIZAO POR ENXAME DE PARTCULAS

Csar Dalto Berci1 and Celso Pascoli Bottura2


2 1 DMSCI - FEE - UNICAMP, Campinas, Brasil, cesardaltoe@hotmail.com DMSCI - FEE - UNICAMP, Campinas, Brasil, bottura@dmcsi.fee.unicamp.br

Resumo: A computao bio-inspirada apresenta vrias tcnicas para soluo de problemas baseadas em processos naturais. Uma dessas tcnicas a otimizao por enxame de partculas, inspirada principalmente no movimento de aves e peixes. O presente documento apresenta uma modicao no mtodo original de otimizao por enxame de partculas, baseada na observao da trajetria descrita pelas partculas durante o processo iterativo, alcanando um signicativo aumento na taxa de convergncia do mtodo sem comprometer sua capacidade exploratria. Keywords: Inteligncia de Enxame, Modulao de Velocidade, Otimizao 1. INTRODUO Vrios ramos da cincia exigem otimizao de parmetros e funes, como encontrar um vetor de parmetros que melhor aproxima uma curva atravs de um conjunto de funes, ou alocao tima de recursos em um sistema social ou industrial, entre muitas outras aplicaes que podem ser citadas. O problema de se otimizar uma dada funo f qualquer, consiste em localizar os pontos de mnimo ou mximo da funo ( importante salientar que o mnimo de f o mximo de f , logo os problemas de maximizao e minimizao so duais). Quando f linear, este problema pode ser resolvido atravs de mtodos de PL (programao linear), porm quando f uma funo com caractersticas no lineares, o problema de otimizao pode se tornar bastante complexo, dependendo da forma das no linearidades presentes em f . Com o o avano da tecnologia e conseqente crescimento da capacidade computacional disponvel, surgiram outras possibilidades para soluo do problema de otimizao atravs do uso massivo dessa nova capacidade computacional. A biologia vem demonstrando ser uma grande fonte de inspirao para esta classe de algoritmos, tendo gerado inmeros mtodos de grande poder computacional.

Dentre eles pode se citar a otimizao por enxame de partculas, um mtodo bastante difundido para otimizao de funes contnuas, que demonstra-se muito eciente e vantajosa na busca de extremos de funes no lineares, dado que encontrar esses pontos analiticamente pode no ser uma tarefa trivial. Esse mtodo tem sua inspirao no movimento de um cardume de peixes e de uma revoada de pssaros. Esses animais interagem uns com os outros de forma a manter um padro e localizar um objetivo comum, como encontrar comida locais seguros e desviar de predadores. Tais interaes podem ser descritas de forma bastante simples para cada animal, gerando um comportamento social, que emerge em um movimento complexo do grupo em torno do objetivo comum. Inspirados nos estudos de Heppner e Grenander [6], e em Reynolds [9] que estudaram o movimento de pssaros, Kennedy e Eberhart apresentaram o modelo original do mtodo de otimizao por enxame de partculas em seu artigo Particle Swarm Otimizatiom [7]. Nele os autores descrevem uma populao de partculas representadas por pontos do espao euclidiano Rn , que se locomovem por este espao de forma estocstica baseando-se em regras individuais, orientadas por uma funo de custo f a qual se deseja otimizar. A principio, Kennedy e Eberhart propem regras bastante simples para reger o movimento de cada partcula, dadas pelas equaes a seguir.

vi (t + 1) xi (t + 1)

= =

vi (t) + c1 1 (pi xi (t)) + +c2 2 (pg xi (t)) xi (t) + v(t + 1) (1) (2)

onde vi (t) a velocidade da partcula i na iterao t, xi (t) a posio da partcula i na iterao t, pi a melhor posio j registrada pela partcula, pg a melhor posio entre todas as partculas da populao em toda sua histria. As constantes c1 e c2 so coecientes de acelerao que regulam como as partculas iro acelerar em direo a pi e pg ,

que representam a melhor posio j observada pela partcula e por toda a populao respectivamente. Os escalares 1 e 2 so escolhidos de forma aleatria a cada iterao, sendo responsveis por introduzir aleatoriedade ao processo, ampliando a capacidade de explorao da populao de partculas. A qualidade de uma dada soluo, representada por uma partcula, o valor da funo de custo f avaliada na posio da partcula xi , assim, quando se deseja minimizar f , a melhor posio individual de cada partcula pi dada pela posio onde a partcula j esteve tendo registrado o menor valor da funo, e pg a posio entre todas as partculas onde se observa o menor valor para f (pi ) j obtido, que ser tambm o resultado do algoritmo aps o processo iterativo. O termo (pi xi (t)) da equao (1) conhecido como termo cognitivo, e determina o comportamento da partcula relativa a suas experincias passadas. O comportamento social das partculas dado pela expresso: (pg xi (t)), conhecida como termo social, pois rege a parcela do movimento da partcula que leva em conta a totalidade da populao e sua histria. A juno destes dois termos, proporciona um mtodo com grande capacidade exploratria e boa convergncia, o que no observado utilizando apenas um dos termos [1, 7], exceto quando se utiliza apenas o termo social, situao na qual so observados bons resultados em alguns casos, porm de forma mais abrangente essa variante inferior aquela utilizando amos os termos social e cognitivo. O presente documento, com base no estudo e observao do mtodo apresentado por Kennedy e Eberhart, prope uma modicao na velocidade das partculas, visando com isto obter um aumento na taxa de convergncia do mtodo, atravs da modulao dada pela equao que segue: vi (t + 1) = (vi (t + 1), vi (t))vi (t + 1) (3)

Se a equao (5) for vlida para todo x Rn , onde n a dimenso de x, ento x ser um mnimo global da funo f , caso essa desigualdade seja vericada apenas em um subconjunto X pertencente ao Rn contendo x , ento x0 ser um minimo local de f em X . Supondo que f uma funo no linear contnua e convexa em V , e que possui um ou mais mnimos locais em V , o mtodo de otimizao por enxame de partculas prope uma soluo para o problema de minimizao da funo f em V , baseado em um enxame de partculas, onde cada partcula representada por um ponto do Rn , e uma possvel soluo para o problema. A posio de uma determinada partcula i dada por xi e associada a ela um valor de adaptao i dado pela equao: i (t) = f (xi (t)) (6)

O valor adaptao i (t), tem por nalidade avaliar a qualidade da soluo representada pela partcula i, na iterao t. Uma populao inicial de partculas gerada contendo np partculas, onde cada uma recebe uma posio xi aleatria pertencente a um subconjunto V Rn . A velocidade inicial vi de cada partcula tomada de forma tambm aleatria, porm, existe a possibilidade de iniciar as velocidades iguais a zero dado que as posies j so aleatrias[1]. Os valores de i (1) so calculados para cada partcula com base na funo f : i (1) = f (xi (1)) i [1..np ], o valor de pg tomado com base na seguinte equao: f (pg ) = g

f (xi ) g xi = pg A soluo candidata ao problema x representada pela posio pg . O processo iterativo decorre baseado nas equaes (1) e (2), onde esperado que o comportamento social das partculas faa com que estas se locomovam pelo espao euclidiano Rn em uma direo que ser a composio de sua inrcia (velocidade anterior), da melhor posio que a partcula j obteve em toda sua histria pi , e na melhor posio j obtida pela populao pg , que a soluo obtida para o problema. Aps algumas iteraes, espera-se que as partculas apresentem uma maior densidade em X, um conjunto contendo x e sua vizinhana. O critrio de parada do mtodo de otimizao por enxame de partculas pode ser baseado em um nmero mximo de operaes de atualizao, ou nmero mximo de iteraes ni . Uma alternativa ao critrio de parada interromper o processo iterativo, quando a melhor posio global pg atingir um determinado valor. Este ltimo critrio bastante til quando se minimizam funes cujo valor mnimo conhecido, como funes de erro quadrticas utilizadas no treinamento de redes neurais: f = erro = (yrede ydesejado )2 (7)

onde uma funo contnua que prov uma modulao na velocidade vi (t + 1), escolhida de forma tal a adaptar a velocidade da partcula ao cenrio em que se encontra a populao em relao ao problema na iterao t + 1, onde espera-se que essa melhor adaptao garanta uma convergncia mais rpida do mtodo. 2. OTIMIZAO POR ENXAME DE PARTCULAS Consideremos uma funo f (x) a qual se deseja otimizar em relao a x. Neste documento ser considerado como otimizao encontrar o ponto x0 onde o valor da funo atinge seu mnimo, esta hiptese no restringe de forma alguma o problema de otimizao, pois ao se maximizar f obtido o mesmo resultado que ao se minimizar f , dada a dualidade existente entre os dois problemas. O processo de minimizao visa encontrar o ponto onde o valor da funo f atinge seu valor mnimo, como descrito nas equaes que seguem: f (x )

x = x

(4) (5)

f (x)

onde a funo tem seu mnimo em erro = 0. Porm, mesmo nestes casos importante determinar um nmero mximo de iteraes para garantir a convergncia do mtodo. A seguir mostrado o algoritmo de otimizao por enxame de partculas original, proposto por Kennedy e Eberhart [1, 7]. Inicializar Populao Aleatria; for t=1 at ni do for i=1 at np do vi (t + 1) = vi (t) + c1 1 (pi xi (t)) + c2 2 (pg xi (t)); xi (t + 1) = xi (t) + v(t + 1); i = f (xi ); if i f (pi ) then pi = xi end if i f (pg ) then pg = xi end end end Algoritmo 1: Otimizao por Enxame de Partculas, Mtodo Original A populao inicial de partculas iniciada em um subconjunto V , dessa forma espera-se que seja encontrado um mnimo local da funo f contido em V , ou o mais prximo deste conjunto. Esta variante do mtodo conhecida por Gbest, nela existe apenas um timo global pg , e todas as partculas esto na vizinhana deste ponto e so atradas por ele. Para otimizao multiobjetivo, pode-se utilizar a variante conhecida por Lbest, onde existem vrios timos locais e a populao est dividida em grupos, onde cada grupo est na vizinhana de um timo local, que atrai apenas as partculas da sua vizinhana. 3. MODIFICAES NO MTODO DE OTIMIZAO POR ENXAME DE PARTCULAS Aps o primeiro artigo propondo o mtodo de otimizao por enxame de partculas, vrias modicaes foram sugeridas por diversos autores, a m de melhorar a ecincia do mtodo proposto originalmente. Dentre as vrias modicaes propostas, pode-se citar por exemplo, a utilizao de coecientes de acelerao c1 e c2 variantes no tempo [8], escolher parmetros timos segundo algum aspecto relevante [12]. Algumas das modicaes mais relevantes para o presente estudo so discutidas nos pargrafos que seguem. 3.1. Limitao de Velocidade A m de limitar a mxima mudana de posio que uma partcula pode realizar em uma nica iterao [11], introduzido ao mtodo original o limitante superior de velocidade Vmax . Esse limitante introduzido com o intuito

de impedir que as partculas aumentem indenidamente a sua velocidade, o que poderia gerar uma instabilidade no mtodo. A velocidade inferior das partculas tambm pode ser limitada por Vmim , garantindo que as partculas iro realizar uma mudana de posio no mnimo igual a Vmin a cada iterao. Esta alterao visa garantir a diversidade da populao, mesmo aps muitas iteraes, o que conseqentemente acarreta em aumento da capacidade exploratria do mtodo, mesmo quando a populao se encontra em uma pequena vizinhana X de x , porm pode diminuir a taxa de convergncia quando mal utilizado. A utilizao destes dois limitantes bastante simples, e inclu apenas duas condies extras ao procedimento original, resultando no algoritmo 1: Inicializar Populao Aleatria; for t=1 at ni do for i=1 at np do vi (t + 1) = vi (t) + c1 1 (pi xi (t)) + c2 2 (pg xi (t)); if norma(vi (t + 1)) > Vmax then Vmax v(t + 1) = norma(vi (t+1)) vi (t + 1) end if norma(vi (t + 1)) < Vmin then Vmin v(t + 1) = norma(vi (t+1)) vi (t + 1) end xi (t + 1) = xi (t) + v(t + 1); i = f (xi ); if i f (pi ) then pi = xi end if i f (pg ) then pg = xi end end end Algoritmo 2: Otimizao por Enxame de Partculas Com Limitao de Velocidade

3.2. Peso de Inrcia Este fator visa controlar a inuncia da velocidade da partcula na iterao anterior, de forma a proporcionar maior ecincia ao mtodo [10, 11]. A modicao necessria para introduzir o peso de inrcia no mtodo original, consiste em adicionar equao de atualizao de velocidade que passa a ser dada pela equao (8):

vi (t+1) = vi (t)+c1 1 (pi xi (t))+c2 2 (pg xi (t)) (8) O efeito da adio deste termo pode ser observado escolhendo c1 = c2 = 0, dessa forma para > 1 a velocidade da partcula ir aumentar constantemente a cada iterao, assim quando c1 , c2 = 0 a inuncia dos coecientes de velocidade ir diminuir a cada iterao, onde a velocidade anterior ser amplicada. Portanto escolhendo

um > 1 aumentada a capacidade exploratria do mtodo, porm sua convergncia bastante prejudicada. Escolhendo agora um < 0, com c1 = c2 = 0 a velocidade ir diminuir de forma constante at cessar o movimento das partculas. Neste caso quando so escolhidos c1 , c2 = 0, a inuncia dos coecientes de acelerao na determinao da posio da partcula, ir aumentar gradativamente durante a evoluo do processo iterativo, o que melhora a convergncia do mtodo porm, degrada sua capacidade de explorao. evidente a existncia de um compromisso entre capacidade de explorao e taxa de convergncia que deve ser preservado na escolha de . Em [10], feito um estudo com variando entre 0 e 1, 4, os autores chegaram a concluso que uma escolha apropriada seria escolher = [0, 8; 1, 2], e constataram tambm que = 1 um valor prefervel para esta varivel. 3.3. Fator de Constrio

o que pode ser observado quando utilizado um peso de inrcia < 1 ou um limitante superior de velocidade adequado, ou ainda um fator de constrio. Esses mtodos citados acarretam em uma perda signicativa na capacidade exploratria do mtodo de otimizao por enxame de partculas, sendo essa perda maior quanto maior for o aumento alcanado na taxa de convergncia. A intenso aqui proporcionar uma maneira de reduzir as oscilaes sem causar conseqente perda na capacidade exploratria do mtodo, para tanto proposta a seguinte equao de modulao: vi (t + 1) = ()vi (t + 1) (12)

onde um escalar a ser denido, e uma funo contnua tal que: () 1 , responsvel por prover a modulao na velocidade, e dada por: = e(cos()1) = (vi (t + 1), vi (t)) (13) (14)

Uma forma de criar um modelo de otimizao por enxame de partculas que se auto adapta a seus parmetros utilizar o fator de constrio X ( importante salientar que X escolhido com base nos parmetros utilizados c1 , c2 e no se adapta durante o processo iterativo). Esse fator possibilita a concepo de um algoritmo sem levar em conta o peso de inrcia e o limitante superior da velocidade, propondo a atualizao de velocidade dada pela equao (9) que descreve a velocidade da iterao t + 1 [24].

vi (t+1) = X [vi (t) + c1 1 (pi xi (t)) + c2 2 (pg xi (t))] (9) onde X descrito como segue: 2 4 = c1 + c2 2 4 (11) A idia principal do mtodo garantir que as partculas sero estimuladas a acelerar quando estiverem longe do ponto timo, preservando a capacidade exploratria do mtodo original, e na vizinhana deste ponto as mesmas sero frenadas pela equao (12), garantindo com isso um aumento na taxa de convergncia prximo ao objetivo do problema. Estima-se que quando distantes do objetivo, as partculas apresentem velocidades consecutivas alinhadas em uma mesma direo, ou ao menos em direes muito prximas, apontando para o conjunto X que contem x , objetivo do problema. Esta situao claramente observada quando analisadas as trajetrias das partculas durante o processo iterativo, no caso onde o algoritmo foi inicializado em uma regio V distante de X. Neste caso a modulao proposta no interfere na velocidade que pode crescer indiscriminadamente enquanto as velocidades consecutivas estiverem na mesma direo, mantendo a capacidade exploratria mxima para o mtodo de otimizao por enxame de partculas. No caso contrrio, situao na qual as partculas se encontram em uma vizinhana X de x , estas apresentam
Figura 1 Angulo

(10)

Uma comparao da ecincia alcanada ao se utilizar o fator de constrio pode ser encontrada em [5], onde so obtidos bons resultados usando apenas esse fator, sem a necessidade da utilizao de peso de inrcia e limitante de velocidade. Esse fator resulta geralmente em uma convergncia mais rpida do mtodo [11], porm traz perda de capacidade exploratria, podendo fazer com que o mtodo falhe quando iniciado muito distante do ponto timo [1]. 4. MODULAO DE VELOCIDADE No mtodo originalmente proposto por Kennedy, possvel averiguar um movimento aparentemente aleatrio das partculas, porm em uma anlise mais atenta, nota-se que estas se comportam de forma a criar oscilaes em torno de um ponto timo da funo aps algumas iteraes O presente documento visa propor um mtodo que previne a ocorrncia destas oscilaes, provendo um conseqente aumento na taxa de convergncia do mtodo,

um movimento oscilatrio em torno deste ponto, onde seria interessante reduzir a velocidade das partculas criando assim um ajuste no das posies, este procedimento aumenta consideravelmente a taxa de convergncia do mtodo dentro de X. Novamente a modulao proposta prov a variao de velocidade necessria para o cenrio apresentado, dado que a mesma reduz a velocidade da partcula sempre forem constatadas velocidades consecutivas em direes diferentes, sendo maior a reduo quanto maior for o ngulo entre as velocidades. O parmetro do mtodo determina o fator de reduo da velocidade, neste trabalho foi utilizado um = 0, 3466 correspondente a uma reduo de 50% na velocidade quando = , este valor obtido da seguinte maneira: 2 ( ) = 0, 5 2 e2 = 0, 5 ln(0, 5) = 2 = 0, 3466

5. EXEMPLOS E COMPARAES A ttulo de exemplo, consideremos o problema de minimizar a funo de Rosenbrock:


n1

f (x) =
i=1

(100(xi+1 x2 )2 + (xi 1)2 ) i

(16)

denindo n = 4, tem-se um problema de otimizao com 4 variveis (x R4 ). Esta funo apresenta um mnimo global x R4 , tal que se observa: x f (x ) = = [1111]T 0

O processo de anlise dos resultados da otimizao por enxame da partcula ser feito por meio de inferncia estatstica, dada a caracterstica estocstica do mtodo. Como uma primeira anlise, consideremos a seguinte congurao para o mtodo com modulao de velocidade: (15) Nmero de partculas: 20 Nmero de iteraes: 200 Coecientes de acelerao: c1 = c2 = 1 Populao inicial: hipercubo centrado na origem de raio unitrio Utilizando essa congurao o mtodo proposto no algoritmo (3) aplicado ao problema de se otimizar a funo (16). A caracterstica estocstica intrnseca ao mtodo de otimizao por enxame de partculas, leva a resultados diferentes a cada nova aplicao. Portanto, a m de avaliar a ecincia do mtodo em resolver o problema proposto, o processo de otimizao foi repetido por 100 vezes, onde em cada uma das repeties obtido um vetor contendo o valor da funo f (pg ), para cada iterao. A m de possibilitar uma anlise estatstica do comportamento do mtodo proposto, o grco da gura 2, apresenta o valor mdio obtido das 100 repeties e sua varincia.

A seguir mostrado o algoritmo de otimizao por enxame de partculas, utilizando o conceito de modulao de velocidade exposto neste trabalho. Inicializar Populao Aleatria; for t=1 at ni do for i=1 at np do vi (t + 1) = vi (t) + c1 1 (pi xi (t)) + c2 2 (pg xi (t)); = ang(vi (t + 1), vi (t)); vi (t + 1) = ()vi (t + 1); xi (t + 1) = xi (t) + v(t + 1); i = f (xi ); if i f (pi ) then pi = xi end if i f (pg ) then pg = xi end end end Algoritmo 3: Algoritmo de Otimizao por Enxame de Partculas O mtodo de modulao proposto neste documento, representa uma alternativa s tcnicas estudadas para aumentar a ecincia do mtodo de otimizao por enxame de partculas. O algoritmo proposto, atravs de um processo de adequao da velocidade das partculas, prov a maximizao de ambos os fatores, taxa de convergncia e capacidade exploratria, tornando o mtodo original mais rpido em localizar seu objetivo, dado o aumento na taxa de convergncia, e preservando a capacidade exploratria original, fazendo com que as partculas encontrem seu objetivo mesmo quando inicializadas afastadas do mesmo.

Figura 2 Mtodo com modulao de velocidade

A diversidade da populao, fator essencial para o bom desenvolvimento do processo iterativo, avaliada atravs da varincia encontrada no valor da funo obtido por cada partcula em uma dada iterao. A gura 3 ilustra a evoluo da diversidade mdia da populao durante o processo iterativo.

Figura 5 Diversidade da Populao

Figura 3 Diversidade da Populao

O mesmo processo de otimizao realizado utilizando o algoritmo original proposto por Kennedy e Eberhart, e tambm para o algoritmo modicado contendo o fator de constrio, dado que este o algoritmo com o qual se obtm os melhores resultados. Novamente uma srie de 100 repeties utilizada com o intuito de vericar o comportamento mdio de cada mtodo. A gura 4 compara os resultados obtidos pelos trs mtodos plotando seu desempenho mdio.

O mtodo proposto se mostrou claramente superior ao mtodo original, fato j esperado, dado que a modulao de velocidade implementada contm maior informao a respeito do problema. Porm, quando comparado ao mtodo utilizando o fator de constrio, foram obtidos resultados semelhantes, quando comparados os valores mdios obtidos para a funo de custo, o que no ocorre ao se comparar a diversidade das populaes, dado que para o mtodo com fator de constrio, a diversidade claramente degradada, evidenciando a perda na capacidade exploratria quando utilizado esse fator. Como no possvel inferir a respeito da ecincia relativa entre os mtodos de forma mais abrangente apenas com o exemplo proposto, uma srie de testes foi realizado, utilizando o funo de Rosenbrock dada na equao (16), a funo de Rastrigin, equao (17), e o erro de uma rede neural tipo MLP, equao (18).

f (x) f (x)

=
i=1

(x2 10 cos(2xi ) + 10) i (S F(E, x))2 onde : x e um vetor de parmetros a

(17) (18)

Figura 4 Comparao

A evoluo da diversidade mdia da populao para cada um dos mtodos pode ser observada no grco que segue:

Para cada uma das situaes expostas nas tabelas que seguem, os mtodos foram utilizados na otimizao de um problema de ordem n (x Rn ), com uma populao de np partculas e 200 iteraes, os algoritmos so repetidos por 100 vezes, e a cada uma das repeties tomado o valor da funo obtido ao nal das 200 iteraes. A mdia desses valores para as 100 repeties e sua varincia: , so apresentadas nas tabelas que seguem.

Tabela 1 Modulao X Fator de Constrio Mtodo Mtodo com Modulao com Fator X Funo n np Mdia Mdia Rastrigin 5 25 0,1096 0,1379 0,1396 0,2805 Rastrigin 10 50 0,2196 0,5530 0,2600 0,4928 Rastrigin 20 100 0,0553 0,0347 0,0434 0,0494 Rosenbrock 5 25 0,0810 0,1787 0,3656 0,4790 Rosenbrock 10 50 6,6537 0,7505 7,2397 0,4365 Rosenbrock 20 100 18,0218 0,1390 18,3650 0,1496 MLP 50 250 0,0247 0,0002 0,0280 0,0002 Problema

Figura 6 Comparao Tabela 2 Modulao X Original Mtodo Mtodo com Modulao Original Funo n np Mdia Mdia Rastrigin 5 25 0,1096 0,1379 2,3448 3,5197 Rastrigin 10 50 0,2196 0,5530 7,8097 27,6054 Rastrigin 20 100 0,0553 0,0347 22,8631 223,2299 Rosenbrock 5 25 0,0810 0,1787 3,3764 1,0318 Rosenbrock 10 50 6,6537 0,7505 9,5684 0,4776 Rosenbrock 20 100 18,0218 0,1390 22,4926 2,2510 MLP 50 250 0,0247 0,0002 0,0441 0,0003 Problema

evidente a perda de ecincia do mtodo com fator de constrio, para uma situao onde o objetivo encontra-se distante da populao. No exemplo mostrado foi alcanado um valor nal para a funo f (pg ) = 3.5134 quando utilizada a modulao de velocidade, enquanto o valor encontrado pelo mtodo com fator de constrio foi f (pg ) = 539.3 indicando a inviabilidade da utilizao deste mtodo para esta situao. 6. CONCLUSES O mtodo de modulao da velocidade exposto neste documento, traz uma alternativa para o aumento de performance do mtodo de otimizao por enxame de partculas, o tornando consideravelmente mais eciente. Este ganho de ecincia mostrou-se comparvel ao ganho atingido por outras modicaes, onde sita-se aqui o mtodo com fator de constrio, que representa uma maneira simples e ecaz de aumentar a taxa de convergncia do mtodo original. O mtodo onde adicionado o fator de constrio, cria um decrscimo gradual mais acelerado na velocidade das partculas, e em alguns casos isto pode levar a uma situao onde o mtodo torna-se incapaz de alcanar o objetivo por ter sido inicializado muito longe deste. Este problema encontrado no existe no mtodo proposto, pois, a modulao feita na velocidade das partculas relativa a sua movimentao, e no inibe o aumento da velocidade das partculas quando estas apresentam velocidades consecutivas colineares. A modulao na velocidade porm requer um esforo computacional maior, na obteno do angulo o que demanda clculos de normas e produtos de vetores. O calculo da funo : R R por sua vez computacionalmente simples dado que esta uma funo escalar com um nico parmetro , tambm escalar. Considerando a ecincia do mtodo de otimizao por enxame de partculas utilizando o fator de constrio, o mtodo aqui proposto apresenta-se apenas como uma soluo alternativa, porm, com resultados semelhantes. O diferencial da proposta de modulao de velocidade

As tabelas 1 e 2, demonstram a superioridade do mtodo proposto em relao ao mtodo original, dada a diferena signicativa entre as mdias obtidas para os valores das funes quando utilizado a modulao da velocidade das partculas (tabela 2). Essa diferena porm no existe quando o mtodo comparado quele utilizando o fator de constrio X , onde estatisticamente no se pode inferir a existncia de diferena entre as mdias obtidas para os testes realizados. Logo conclu-se que para as situaes estudadas na tabela 1, ambos os mtodos com modulao e com fator de constrio apresentam o mesmo resultados aps 200 iteraes. A utilizao do fator de constrio porm apresenta uma restrio quanto a sua inicializao. Foi proposto em [1], que este mtodo pode se tornar invivel quando a populao for inicializada muito distante do seu objetivo. Esta restrio no existe quando utilizado o mtodo com modulao de velocidade, dado que o mesmo no restringe a velocidade das partculas, quando estas esto afastadas do seu objetivo. A ttulo de exemplo consideremos a funo de Rosenbrock com 4 variveis, ambos os mtodo com fator de restrio e modulao de velocidade so utilizados para otimizar essa funo contendo nos dois casos populaes com 20 partculas atualizadas por 200 iteraes. A inicializao das partculas feita em um hipercubo de raio unitrio centrado em C = [1000, 1000, 1000, 1000], o que est distante do objetivo x = [1, 1, 1, 1]. A gura (6) ilustra o desempenho dos mtodos durante o processo iterativo.

encontra-se na sua superioridade em robustez dado que o mesmo menos sensvel a sua inicializao, apresentando contudo, um custo de um aumento no nmero de operaes necessrias para atualizar a posio da partcula. Referncias [1] F. den van Bergh. An Analysis of Particle Swarm Optimization. PhD thesis, Departament of Computer Science, University of Pretoria, 2002. [2] M. Clerc. The swarm and the queen: Towards a deterministic and adaptive particle swarm optimization. IEEE Int. Conf. on Evolutionary Computation, 2001. [3] M. Clerc and J. Kennedy. The particle swarm-explosion stability, and convergence in a multidimensional complex space. IEEE Int. Conf. on Evolutionary Computation, 6(1):5873, 2002. [4] D. Corne, M. Dorigo, and F. Glover. New Ideas In Optimazation. McGraw Hill, 1999. [5] C. Russ Eberhart and Y Shi. Comparing inertia weights and constriction factors in particle swarm optimization. Proceedings of the Congress on Evolutionary Computing IEEE, pages 8489, 2000. [6] F. Heppner and U. Grenander. A Stochastic Nonlinear Model For Coordinate Bird Flocks. AAAS Publications, Washington, DC, 1990. [7] J. Kennedy and R.C Eberhart. Particle swarm optimization. Proceedings of IEEE Int. Conf. on Neural Network, Piscataway, NJ:19421948, 1995. [8] A. Ratnaweeera, S.K. Halgamuge, and H.C. Watson. Self-organized hierarchical particle swarm optimizer with time-varying acceleration coecients. IEEE Transactions on Evolutionary Computation, 8(3):240250, 2004. [9] C.W. Reynolds. Flocks, herds, and schools: A distributed behavior model. Computer Graphics, 21(4):2534, 1987. [10] Y Shi and C. Russ Eberhart. A modied particle swarm optimizer. IEEE Int. Conf. on Evolutionary Computation, 1998. [11] D. Swagatam, A. Ajith, and K. Amit. Particle Swarm Optimization and Diferential Evolution Algorithms: Techinical Analysis, Applications and Hybridization Perspectives. Dept. of Eletronics and Telecommunication Engineering, Jadavpur University, Kolkata, India, 2007. [12] Li-ping Zhang, Huan-jun Yu, and Shang-xu Hu. Optimal choice of parameters for particle swarm optimization. Journal of Zhejiang University, 6A:528534, 2005.

Você também pode gostar