• Nenhum resultado encontrado

propesq-abc

N/A
N/A
Protected

Academic year: 2021

Share "propesq-abc"

Copied!
7
0
0

Texto

(1)

_________________________________________________________________________________________________________________

Pró-Reitoria de Pesquisa

Dados do Projeto e do(a) Coordenador do Projeto

Título do Projeto Otimização por colônia de abelhas artificiais: aplicação em problemas

de otimização numérica

Referência da Chamada: (x) BIC/UFJF e PIBIC/CNPq

( ) PIBIC/CNPq AÇÕES AFIRMATIVAS ( ) PROBIC/FAPEMIG

( ) PROBIC-JR/FAPEMIG ( ) Apoio ao Recém-Doutor ( ) Apoio a Grupos de Pesquisa ( ) Apoio à Instalação de Doutores ( ) Cadastro na Propesq

Coordenador do Projeto: Leonardo Goliatt da Fonseca

Endereços para contato: Eletrônico: leonardo.goliatt@ufjf.edu.br

Telefônico: (32) 2102-3468

Unidade/Departamento: Mecânica Aplicada e Computacional Data: 25/04/11

(2)

1 . Justificativa/Caracterização do Problema

Técnicas de otimização são uma ferramenta essencial no desenvolvimento de produtos e sistemas nas Engenharias, e a disponibilidade de algoritmos eficientes e robustos é de extrema importância por proporcionar economia e rapidez. Um grande número de modelos tradicionais usados pra resolver problemas complexos de Engenharia são baseados em controle e centralização [1]. Vários sistemas naturais nos mostram que organismos individuais com capacidades limitadas podem criar sistemas capazes de realizar tarefas complexas pela interação dinâmica entre tais indivíduos.

Insetos sociais têm fornecido alguns dos mecanismos mais bem descritos de tomada de decisão coletiva, graças, em grande parte, à relativa simplicidade, abertura e tratabilidade experimental de suas sociedades. Essa tratabilidade experimental permite que hipóteses sejam testadas, além de promover a geração de conjuntos de dados para apoiar o desenvolvimento de modelos matemáticos e simulações computacionais mais realísticas.

Nos últimos anos, pesquisadores intensificaram o estudo do comportamento de insetos sociais com o objetivo de usar os conceitos de Inteligência de Enxame para desenvolver vários sistemas artificiais. Um dos primeiros algoritmos desenvolvidos foi o Algoritmo de Enxame de Partículas [2, 3], inspirado no comportamento de bando de aves e cardumes, e aplicado em problema de otimização numérica. Outro algoritmos de bastante sucesso é o Algoritmo de Colônia de Formigas Artificiais [4, 5], aplicado em problemas de otimização combinatória [6].

A área de Inteligência de Enxames é uma área de pesquisa intensa, especialmente os recém-criados Algoritmos de Abelhas Artificiais[7], foco do desenvolvimento deste projeto. Os mecanismos básicos usados por abelhas na natureza tem sido implementadas e dado origem a diferentes algoritmos [7]. Alterações e modificações tem sido propostas recentemente para melhorar o desempenho ao algoritmo ABC convencional em problemas de otimização [9, 16-19].

1.1 Comportamento das abelhas na natureza

A auto-organização das abelhas é baseada em poucas regras relativamente simples do comportamento individual dos insetos. Um exemplo é a coleta e o processamento do néctar, práticas altamente organizadas, que incluem mecanismos eficientes de comunicação e compartilhamento de informações. Entre as abelhas melíferas (produtoras de mel), a comunicação pode ser feita por meio de sons, substâncias químicas, tato, danças ou estímulos eletromagnéticos. A transferência de alimento parece ser uma das maneiras mais importantes de comunicação. A dança é outro importante meio de comunicação; por meio dela as operárias podem informar a distância e a localização exata de uma fonte de alimento [8].

A troca de informações entre abelhas é a ocorrência mais importante na formação da inteligência coletiva. Os primeiros modelos do comportamento de forrageamento de colônias de abelhas foram baseados em equações de reação-difusão. Estes modelos que levaram a emergência do comportamento de inteligência coletiva de colônias de abelhas e consistem de três componentes essenciais: fontes de alimento, abelhas operárias (abelhas campeiras e seguidoras) e abelhas batedoras (exploradoras). Estes componentes definem 2 modos de comportamento das colônias de abelhas: recrutamento para uma fonte de alimento e abandono de uma fonte.

Primeiramente, as abelhas campeiras saem para buscar fontes de néctar. Depois que colhe o néctar, a abelha volta à colmeia, e transmite as informações as companheiras. Cada colmeia possui uma área de dança no qual as abelhas que já descobriram fontes de néctar dançam, com o objetivo de recrutar suas companheiras a seguí-la. Durante a dança, a operária indica a direção da fonte de alimento em relação à posição da colmeia e do sol. A distância da colmeia até a fonte de néctar é informada pelo número de vibrações (requebrados) realizadas e pela intensidade do som emitido durante a dança (Figura 1). Quanto menor a distância entre a fonte e a colmeia, maior o número de vibrações. A campeira pode interromper sua dança por curtos intervalos e oferecer às abelhas

(3)

seguidoras que estão observando-a, uma porção do néctar que coletou. Assim, ela informa o odor e paladar do néctar e da flor, e as demais operárias decidem partir ou não em busca desta fonte. Portanto, as danças indicam se há uma fonte abundante de alimento, os movimentos indicam a distância e a orientação, e o néctar passado para as abelhas seguidoras ajudam a reconhecer a fonte pelo odor do alimento.

Figura 1: Compartilhamento da informação da posição de uma fonte de alimento [9]. Da esquerda para a direita: Posicionamento da fonte de alimento com relação ao sol, dança para fornecer informações às

seguidoras e recrutamento.

Cada abelha seguidora decide visitar a fonte de néctar seguindo uma abelha campeira que já descobriu uma fonte de alimento. Após deixar a colmeia, a abelha campeira coleta o néctar e retorna à colmeia para descarregar o conteúdo para uma abelha operária que tem a tarefa de armazená-lo. Depois de ceder o alimento a uma operária dentro da colmeia, a abelha pode: (a) abandonar a fonte de alimento e tornar-se uma exploradora, (b) continuar a coleta na fonte de alimento sem recrutar as companheiras, ou (c) dançar e assim recrutar as companheiras antes de retornar para a fonte de alimento. As abelhas optam por uma das alternativas acima com uma certa probabilidade.

Os mecanismos pelos quais a abelha decide seguir uma dançarina específica não são bem conhecidos, mas considera-se que o recrutamento entre as abelhas é sempre uma função da qualidade da fonte de alimento. Sabe-se também que nem todas as abelhas começam a buscar alimento simultaneamente.

Existem atualmente alguns algoritmos de abelhas que usa esta abordagem como modelo [7]. Dentre estes, um algoritmo usado para otimização numérica é o Algoritmo de Colônia de Abelhas Artificiais (Artificial Bee Colony – ABC)[10].

(4)

1.2 O Algoritmo de Colônia de Abelhas Artificiais

Inspirado pelo comportamento de forrageamento das abelhas, o Algoritmo de Colônia de Abelhas Artificiais (ABC), é um novo paradigma em Inteligência de Enxames desenvolvido a partir de 2005 [11]. Este algoritmo mostrou-se eficiente em otimização numérica [10]. e competitivo com outras meta-heurísticas [12, 13] Uma revisão dos algoritmos baseados em colônias de abelhas e suas aplicações podem ser encontradas nas referencias [7] e [14]. O pseudocódigo do algoritmo ABC é mostrado na Figura 2.

Fase de inicialização

repita

Fase das abelhas campeiras Fase das abelhas seguidoras Fase das abelhas batedoras Memorize as melhores soluções

até Número máximo de ciclos

Figura 2: Algoritmo ABC.

O Algoritmo ABC possui três parâmetros de controle: tamanho da colônia (número de abelhas campeiras e seguidoras), número máximo de iterações (ciclos do algoritmo) e o valor limite, que determina o número de tentativas de melhorar uma fonte antes de abandoná-la. Antes de iniciar o algoritmo, os valores dos parâmetros de controle são definidos. Cada ciclo do procedimento de busca consiste em três fases após o estágio de inicialização: locar as abelhas campeiras nas fontes de alimento e calcular a quantidade de néctar; locar as abelhas seguidoras nas fontes de alimento e calcular a quantidade de néctar; determinar as abelhas batedoras e locá-las em fontes de alimento aleatórias.

No ABC, as fontes de alimento representam possíveis soluções para o problema. A quantidade de néctar de uma fonte de alimento corresponde à qualidade da solução representada pela fonte. Assim, a quantidade de néctar das fontes de alimento existentes no início são determinadas, ou seja, a qualidade das soluções iniciais é calculada. Cada abelha campeira é movida na área de sua fonte de alimento para determinar uma nova fonte vizinha à antiga. Então, o néctar da nova fonte é avaliado. Se a quantidade de néctar da nova fonte de alimento for maior que da fonte anterior, a abelha esquece a anterior e memoriza a nova fonte. Após as abelhas campeiras completarem sua busca, elas voltam à colmeia e compartilham as informações relativas ao néctar de suas fontes de alimento com as abelhas seguidoras que aguardam na área de dança. As seguidoras determinam as fontes de alimento que explorarão a partir de uma probabilidade baseada na quantidade de néctar, ou seja, se uma fonte de alimento possui mais néctar que outra, a probabilidade de ser escolhida pelas seguidoras será maior e assim, mais abelhas seguidoras são recrutadas. Este processo é similar a ao processo de seleção usado em algoritmos evolutivos, tais como os Algoritmos Genéticos [15]. Cada seguidora determina então uma fonte de alimento na vizinhança da fonte escolhida e avaliará a quantidade de néctar.

Se uma solução representada por uma determinada fonte de alimento não pode ser melhorada após um determinado número de tentativas, significa que esta fonte de alimento foi esgotada pelas abelhas e a sua respectiva abelha campeira transforma-se em uma abelha batedora. O número de tentativas que determina quando uma fonte será considerada esgotada é igual ao valor do parâmetro de controle limite. Estes três passos repetem-se até que o critério de finalização do algoritmo seja atendido.

Como outros grupos de animais que vivem de extração, as abelhas procuram por alimento a fim de maximizar a relação E/T, onde E é a energia obtida e T o tempo gasto extraindo o alimento. A

(5)

energia E é proporcional à quantidade de néctar das fontes descobertas pelas abelhas e o enxame trabalha para maximizar o mel dentro da colmeia. Em um problema de maximização, o objetivo é maximizar a função objetivo F(x), onde x é um vetor em RD, e D é a dimensão do problema.

Seja xi a posição da i-ésima fonte de alimento (i-ésima solução para o problema) e assuma que

F(xi) representa a quantidade de néctar da fonte de alimento localizada em xi. Considere que P(c) =

{xi(c) | i=1, …, s} representa a população de fontes de alimento sendo visitadas pelas abelhas, onde c é o ciclo e s é o número de fontes de alimento ao redor da colmeia. Como dito anteriormente, a preferência de uma abelha seguidora por uma fonte de alimento depende da quantidade de néctar F(x) daquela fonte. Enquanto a quantidade de néctar de uma fonte aumentar, a probabilidade da fonte ser escolhida pelas seguidoras aumenta proporcionalmente. A probabilidade da fonte de alimento localizada em xi ser escolhida por uma seguidora pode ser descrita por

p

i

=

F

x

i

F

x

m

onde s é número de abelhas campeiras na colônia. A abelha seguidora escolhe uma fonte de alimento a partir de sua probabilidade e, em seguida, determina uma fonte vizinha à fonte selecionada. Uma abelha seguidora que escolheu uma fonte xi gera uma nova solução vi a partir de xi da seguinte forma

v

ij

=x

ij

+H

ij

x

kj

x

ij

onde k=[1,2,…,s] e j=[1,2,…,D] são índices escolhidos aleatoriamente, k ≤ i, s é o número de fontes de alimento, D é a dimensão do problema e Hij é um número aleatório em [-1, 1].

Se uma posição não pode ser melhorada apos um número pré-determinado de tentativas, então a fonte de néctar é abandonado e a correspondente abelha campeira se torna uma batedora. A posição abandonada pode ser substituída pode uma nova fonte encontrada pela batedora.

2 . Objetivos

O presente projeto, pretende alcançar a seguintes metas, com relação aos resultados científicos:

1. Estudar os mecanismos de funcionamento de colônias de abelhas na natureza; 2. Estudar e propor os modelos computacionais de colônias de abelhas artificiais; 3. Produzir material material de didático, relatórios e artigos científicos.

Além dos objetivos citados acima, tem-se o intuito de ampliar o alcance dos objetivos do projeto na direção de formar um grupo de pesquisa de modelagem com enfoque na área de Algoritmos de Colônias de Abelhas artificiais e estabelecer colaborações com pesquisadores do curso de Ciências Biológicas para a obtenção de metodologias mais consistentes com o comportamento dos insetos reais.

3 . Metodologia e Estratégias de Ação

O plano de trabalho está dividido em três fases. Na primeira fase será feita uma extensa pesquisa sobre os algoritmos tradicionais propostos na literatura. Paralelamente, serão estudados a organização social abelhas reais, seus mecanismos de comunicação e navegação e sua relação com o funcionamento da colônia, com intuito de verificar características ainda não implementadas nos

(6)

algoritmos existentes e a aplicabilidade no contexto do deste projeto. A partir daí será proposto modelo de algoritmo para ser implementado em uma linguagem de programação adequada.

A segunda fase será dedicada a produção de um código computacional do algoritmo de otimização. Serão feitas comparações com metodologias existentes a também com outras meta-heurísticas de otimização. O Departamento de Mecânica Aplicada e Computacional da Faculdade de Engenharia (MAC/UFJF) possui os recursos computacionais necessários para o desenvolvimento desta fase.

A terceira fase constitui-se da obtenção de resultados em conjuntos-teste de problemas de otimização e a comparação criteriosa baseada em análises gráficas e estatísticas, assim como a produção de artigos científicos para divulgar os resultados desta pesquisa em congressos nacionais e/ou internacionais.

4 . Resultados e os impactos esperados

Espera-se ao fim deste projeto caracterizar e desenvolver um algoritmo de otimização para aplicações em problemas de otimização em Engenharia, e o desenvolvimento de um software que será distribuído para a comunidade acadêmica. Além disso, a confecção de material dedicado a algoritmos de abelhas artificiais para ser usado como material didático nos cursos de Otimização oferecidos na graduação.

O presente projeto pretende contribuir na formação de estudantes de graduação, através da bolsa de iniciação científica solicitada, e principalmente, como passo inicial para futuras contribuições com o mestrado interdisciplinar em Modelagem Computacional da UFJF, possibilitando contribuir com o início de uma nova linha de pesquisa em meta-heurísticas bio-inspiradas.

5 . Cronograma

Tarefa Meses

Revisão teórica de conceitos e levantamento bibliográfico. x x Estudo dos mecanismos de comunicação em colônias

naturais de abelhas e dos principais algoritmos de abelhas artificiais.

x x x x Implementação dos algoritmos de abelhas artificiais e

aplicação em problemas de otimização numérica. x x x x x x x

Análise de resultados, e produção de relatórios e artigos

científicos. x x x x x

6. Referências Bibliográficas

[1] D. Teodorovic, L. Panta, G. Markovic, and M. Dell’Orco, “Bee colony optimization: Principles and applications,” in Neural Network Applications in Electrical Engineering, 2006. NEUREL 2006. 8th

Seminar on, pp. 151 –156, 2006.

[2] J. Kennedy and R. Eberhart, “Particle swarm optimization,” in IEEE international conference on

neural networks, vol. IV, (Piscataway, NJ), pp. 1942–8, 1995.

[3] J. Kennedy and R. C. Eberhart, Swarm intelligence. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., 2001.

(7)

[4] M. Dorigo, V. Maniezzo, and A. Colorni, “The Ant System: Optimization by a colony of cooperating agents,” IEEE Transactions on Systems, Man, and Cybernetics Part B: Cybernetics, vol. 26, no. 1, pp. 29–41, 1996.

[5] M. Dorigo and L. M. Gambardella, “Ant colony system: A cooperative learning approach to the traveling salesman problem,” IEEE Transactions on Evolutionary Computation, vol. 1, pp. 53–66, April 1997.

[6] M. Dorigo, Ant Colony Optimization. MA: MIT Press, 2004.

[7] D. Karaboga and B. Akay, “A survey: algorithms simulating bee swarm intelligence,” Artif. Intell.

Rev., vol. 31, no. 1-4, pp. 61–85, 2009.

[8] Empresa Brasileira de Pesquisa Agropecuária – EMBRAPA Meio-Norte, “Produção de mel.”

http://sistemasdeproducao.cnptia.embrapa.br/FontesHTML/Mel/SPMel/index.htm.

[9] F. Kang, J. Li, and Q. Xu, “Structural inverse analysis by hybrid simplex artificial bee colony algorithms,” Computers & Structures, vol. 87, no. 13-14, pp. 861–870, 2009.

[10] D. Karaboga and B. Basturk, “A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm,” J. of Global Optimization, vol. 39, no. 3, pp. 459–471, 2007.

[11] D. Karaboga, “An idea based on honey bee swarm for numerical optimization,technical,” Tech. Rep. TR06, Erciyes University, Engineering Faculty, Computer Engineering Department.

[12] D. Karaboga and B. Basturk, “On the performance of artificial bee colony (ABC) algorithm,”

Applied Soft Computing, vol. 8, no. 1, pp. 687–697, 2008.

[13] D. Karaboga and B. Akay, “A comparative study of artificial bee colony algorithm,” Applied

Mathematics and Computation, vol. 214, no. 1, pp. 108–132, 2009.

[14] A. Baykasoglu, L. :Ozbak1r, and P. Tapkan, “Artificial bee colony algorithm and its application to generalized assignment problem,” in Swarm Intelligence: Focus on Ant and Particle Swarm

Optimization (F. Chan and M. Tiwari, eds.), ch. 8, pp. 113–144, 2007.

[15] D. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning. Addison-Wesley Publishing Co., 1989. Reading, Mass., USA.

[16] B. Alatas, “Chaotic bee colony algorithms for global numerical optimization,” Expert Systems with

Applications, vol. 37, no. 8, pp. 5682–5687, 2010.

[17] R. Akbari, A. Mohammadi, and K. Ziarati, “A novel bee swarm optimization algorithm for numerical function optimization,” Communications in Nonlinear Science and Numerical Simulation, vol. 15, no. 10, pp. 3142–3155, 2010.

[18] B. Akay and D. Karaboga, “A modified artificial bee colony algorithm for real-parameter optimization,” Information Sciences, vol. In Press, Corrected Proof, pp. –, 2010.

[19] G. Zhu and S. Kwong, “Gbest-guided artificial bee colony algorithm for numerical function optimization,” Applied Mathematics and Computation, vol. In Press, Corrected Proof, pp. –, 2010.

Referências

Documentos relacionados

Neste estudo foram estipulados os seguintes objec- tivos: (a) identifi car as dimensões do desenvolvimento vocacional (convicção vocacional, cooperação vocacio- nal,

Disto pode-se observar que a autogestão se fragiliza ainda mais na dimensão do departamento e da oferta das atividades fins da universidade, uma vez que estas encontram-se

El animal siente hambre, pero como no tiene otra cosa que hacer sino sentir hambre y tratar de comer, no puede sentir todo esto como una necesidad, como algo con que hay que

Porém, as narrativas dos diários reflexivos selecionados para essa análise não somente trouxeram a voz do aluno de modo reflexivo para que o professor também possa pensar com

De seguida, vamos adaptar a nossa demonstrac¸ ˜ao da f ´ormula de M ¨untz, partindo de outras transformadas aritm ´eticas diferentes da transformada de M ¨obius, para dedu-

•   O  material  a  seguir  consiste  de  adaptações  e  extensões  dos  originais  gentilmente  cedidos  pelo 

Considera-se que a interdisciplinaridade contribui para uma visão mais ampla do fenômeno a ser pesquisado. Esse diálogo entre diferentes áreas do conhecimento sobre

Código Descrição Atributo Saldo Anterior D/C Débito Crédito Saldo Final D/C. Este demonstrativo apresenta os dados consolidados da(s)