• Nenhum resultado encontrado

3.4 Características do Algoritmo

3.4.4 Dinâmica do Algoritmo

A dinâmica dos algoritmos de Inteligência de Enxame é baseada em características pró- prias de todos os algoritmos de busca baseados em população e características específicas da metáfora que foram utilizadas em sua concepção. Considerando a fundamentação biológica apresentada no Capítulo 2 e a estruturação da metáfora apresentada na Seção 3.3, a dinâmica dos agentes pode ser definida com base nas estratégias de busca utilizadas pelos agentes.

A dinâmica dos agentes no algoritmo está relacionada com a dinâmica dos agentes des- crita na metáfora (Seção 3.3). Assim, considerando a metáfora, o comportamento dos agentes pode seguir as seguintes estratégias:

Busca por Informação Pública (novas soluções): associada ao comportamento exploratório dos insetos e representada pela busca aleatória dos agentes pelo espaço de busca ou em sua vizinhança. Nos algoritmos de Inteligência de Enxame esse comportamento é, tipicamente, apresentado na fase de inicialização, onde os agentes são movimentados aleatoriamente em busca de novas soluções. Além disso, essa busca aleatória permite que novas soluções sejam encontradas ao longo do processo iterativo. Computacionalmente, essa busca por nova informação está associada ao processo de exploração do espaço de busca e com a geração ou modificação de so- luções de forma aleatória apresentada na Seção 3.4.2.

Seguir Informação Privada (características individuais do agente): neste caso o agente pode utilizar seus próprios critérios para conduzir suas decisões individuais. É associada ao conhecimento adquirido pelo agente e uso da informação privada descritos na metáfora. Computacionalmente, esse conhecimento individual pode ser representado como uma memória individual, índices que indicam a probabilidade de um agente decidir ou não por realizar uma determinada ação, ou limiares que podem ser utilizados para indicar o grau de satisfação do agente. Os algoritmos de Inteli- gência de Enxame, em sua maioria, não exploram o uso da informação privada na implementação dos agentes.

Compartilhar Informação Social: o comportamento exploratório dos agentes con- duz à descoberta de informações importantes como, por exemplo, melhores regiões do espaço de busca. Essa informação é então compartilhada com outros agentes co- mo uma informação social por meio das interações. No algoritmo ACO, por exem- plo, o compartilhamento da informação social é implementado por meio da atualiza- ção do peso das arestas do grafo que compõem o caminho percorrido de forma pro- porcional à qualidade da solução encontrada.

Seguir Informação Social: o comportamento do agente passa a ser guiado pela in- formação social compartilhada por outros agentes. Neste caso os agentes que encon- tram boas regiões do espaço de busca conduzem as ações de outros agentes, contri- buindo para a explotação das regiões já encontradas. Computacionalmente, esse procedimento é relacionado aos mecanismos de combinação de soluções baseadas na qualidade e na movimentação dos agentes de forma guiada, conforme apresenta- do na Seção 3.4.2.

3.4.4.1 Exploração e Explotação do Espaço de Busca

A exploração e explotação do espaço de busca visa encontrar (ou gerar) novas soluções. Nos algoritmos populacionais as novas soluções podem ser geradas aleatoriamente ou pelo uso de uma heurística que combina partes de soluções existentes para obter uma solução me- lhor (YANG, 2014). Os algoritmos apresentados são algoritmos de busca, onde um conjunto de agentes, trabalhando em paralelo, busca por soluções candidatas no espaço de busca do problema sob um conjunto de restrições. Segundo Hill et al. (2015) o processo de busca en- volve um equilíbrio entre a explotação das oportunidades conhecidas e a exploração do espa- ço para encontrar melhores oportunidades. A busca global permite a exploração do espaço de busca como um todo e visa encontrar novas e melhores soluções para o problema. A busca pode ser aleatória ou guiada por informações previamente obtidas sobre o espaço de busca (uso de heurísticas). Por outro lado, a busca local é utilizada para explorar as soluções (ou regiões) já encontradas.

Apesar das diferentes metáforas, a implementação desses mecanismos, de uma maneira geral, recai em um mesmo procedimento computacional. Em todos os casos apresentados aqui, os processos de exploração e explotação se resumem a um dos procedimentos de gera- ção ou modificação de solução apresentado na Seção 3.4.2. Basicamente, nos algoritmos de Inteligência de Enxame, da forma como são implementados atualmente, a exploração é feita por meio de uma busca aleatória por soluções novas, enquanto a explotação é realizada por uma busca guiada que conduz os agentes para boas regiões no espaço de busca. Tanto a busca aleatória quanto a busca guiada, movimentam os agentes pelo espaço de busca e consequen- temente modificam as soluções de acordo com o seu esquema de representação, conforme apresentado na Seção 3.4.2.

O equilíbrio entre exploração e explotação é um importante componente para a dinâmi- ca dos algoritmos de Inteligência de Enxame. De maneira geral, a explotação consiste do uso da informação social compartilhada pelos agentes e a exploração consiste na busca de nova informação por meio do comportamento exploratório. Tanto a exploração quanto a explotação movimenta os agentes pelo espaço de busca, criando ou modificando as soluções representa- das por esses agentes. Essa movimentação pode ser aleatória contribuindo para a exploração do espaço de busca e a descoberta de novas regiões promissoras, ou guiada contribuindo para a explotação de regiões específicas do espaço com o objetivo de refinar a busca.

No algoritmo ACO a exploração é realizada pela movimentação aleatória dos agentes sobre o grafo que, por meio de um procedimento iterativo, constroem e modificam as solu-

ções. A explotação, por sua vez, é realizada por meio do recrutamento de outras formigas para explorarem a fonte de alimento encontrada. O recrutamento não é explícito no algoritmo ACO e ocorre uma vez que as formigas tendem a escolher os caminhos com uma maior quantidade de feromônio.

3.4.4.2 Auto-Organização

Conforme mencionado anteriormente, a dinâmica da colônia está fundamentada nos princípios dos fenômenos auto-organizados, apresentados na Seção 2.2.1, que aparece como um importante componente em um amplo repertório de comportamentos coletivos apresenta- dos por insetos e animais sociais (GARNIER, GAUTRAIS e THERAULAZ, 2007; BONABEAU, THERAULAZ, et al., 1997).

Após descrever os componentes básicos de um sistema auto-organizado para a constru- ção da metáfora pode se definir como esses componentes serão implementados computacio- nalmente. Os componentes básicos de um sistema auto-organizado são: 1) realimentação posi- tiva; 2) realimentação negativa; 3) múltiplas interações; e 4) amplificação das flutuações.