ant colony optimization theory rio de janeiro 2011 disciplina: inteligência de enxame docente:...
TRANSCRIPT
Ant Colony Optimization TheoryAnt Colony Optimization Theory
Rio de JaneiroRio de Janeiro20112011
Disciplina: Inteligência de EnxameDisciplina: Inteligência de EnxameDocente: José Manoel SeixasDocente: José Manoel SeixasDiscente: José Dilermando Costa JuniorDiscente: José Dilermando Costa Junior
22
Introdução Introdução Considerações teóricas no ACOConsiderações teóricas no ACOO problema e o algoritmoO problema e o algoritmoProvas de convergênciaProvas de convergênciaACO e MBSACO e MBSConsiderações finaisConsiderações finais
33
IntroduçãoIntrodução
Otimização metaheurística por colônia de formigasOtimização metaheurística por colônia de formigas Tentativa e erroTentativa e erro
Construção teórica – problema de convergênciaConstrução teórica – problema de convergência Velocidade de convergênciaVelocidade de convergência Definição de parâmetrosDefinição de parâmetros Abordagens existentesAbordagens existentes Identificação de características do problemaIdentificação de características do problema Importância de diferentes componentes metaheurísticosImportância de diferentes componentes metaheurísticos
Convergências de alguns algoritmos ACO para soluções ótimasConvergências de alguns algoritmos ACO para soluções ótimasRelação entre ACO e outras técnicasRelação entre ACO e outras técnicas
44
Introdução Introdução Considerações teóricas no ACOConsiderações teóricas no ACOO problema e o algoritmoO problema e o algoritmoProvas de convergênciaProvas de convergênciaACO e MBSACO e MBSConsiderações finaisConsiderações finais
55
Considerações teóricas no ACOConsiderações teóricas no ACO
ACO apresenta definição amplaACO apresenta definição amplaVantagem:Vantagem: Permite que algoritmos baseados em formigas sejam aplicados Permite que algoritmos baseados em formigas sejam aplicados à problemas de à problemas de
otimização de dados discretos.otimização de dados discretos. Problemas estáticos – problema do caixeiro viajanteProblemas estáticos – problema do caixeiro viajante Problemas variantes no tempo – redes de telecomunicaçõesProblemas variantes no tempo – redes de telecomunicações
Primeiro aspecto teórico considerado – convergênciaPrimeiro aspecto teórico considerado – convergência
O algoritmo encontra a solução ótimaO algoritmo encontra a solução ótima??
66
Considerações teóricas em ACOConsiderações teóricas em ACO
Quando se considera um algoritmo de otimizaQuando se considera um algoritmo de otimização estocástico há pelo ção estocástico há pelo menos dois tipos de convergência:menos dois tipos de convergência:
Convergência em valor – probabilidade de gerar uma solução ótima pelo Convergência em valor – probabilidade de gerar uma solução ótima pelo menos uma vezmenos uma vez
Convergência em solução – probabilidade de atingir um estado que mantém Convergência em solução – probabilidade de atingir um estado que mantém gerando a mesma solução ótimagerando a mesma solução ótima
Convergência em valor - Convergência em valor - Convergência em solução - Convergência em solução -
77
Introdução Introdução Considerações teóricas no ACOConsiderações teóricas no ACOO problema e o algoritmoO problema e o algoritmoProvas de convergênciaProvas de convergênciaACO e MBSACO e MBSConsiderações finaisConsiderações finais
88
O problema e o algoritmoO problema e o algoritmo
Exemplo de minimização do problema Exemplo de minimização do problema
O objetivo é encontrar uma solução ótima O objetivo é encontrar uma solução ótima , , com custo com custo mínimo.mínimo.
Para o exemplo foi considerado apenas problemas estáticos.Para o exemplo foi considerado apenas problemas estáticos.
Grupo de soluçõesGrupo de soluções Função objetivoFunção objetivoGrupo de restriçõesGrupo de restrições
99
O problema e o algoritmoO problema e o algoritmo
Características do problema:Características do problema: Grupo finito de componentes Grupo finito de componentes Grupo finito de estados do problema,Grupo finito de estados do problema,
Todas sequências possíveis dos elementos de Todas sequências possíveis dos elementos de CC Grupo de soluções Grupo de soluções S – S – Grupo de características -Grupo de características - Um grupo não vazio de soluções ótimas Um grupo não vazio de soluções ótimas
1010
O problema e o algoritmoO problema e o algoritmo
Formigas artificiais constroem soluções caminhando Formigas artificiais constroem soluções caminhando aleatoriamente pelo grafo construídoaleatoriamente pelo grafo construído
Viés – trilhas de feromônio Viés – trilhas de feromônio ττInício do algoritmo Início do algoritmo Para cada interação as formigas são posicionadas de acordo com um Para cada interação as formigas são posicionadas de acordo com um critério dependente do problema.critério dependente do problema.
1111
O problema e o algoritmoO problema e o algoritmo
Restrições são utilizadas para impedir soluções inviáveis.Restrições são utilizadas para impedir soluções inviáveis.
1212
O problema e o algoritmoO problema e o algoritmo
As trilhas de feromônio são atualizadas após todas formigas As trilhas de feromônio são atualizadas após todas formigas terem terminado o “AntSolutionConstruction”terem terminado o “AntSolutionConstruction”
Taxa de evaporação – diminuição de feromônio nas conexões Taxa de evaporação – diminuição de feromônio nas conexões LL com com fator fator ρρ
Aumento de feromônio nas conexões Aumento de feromônio nas conexões - melhor solução encontrada desde as primeiras interações do - melhor solução encontrada desde as primeiras interações do algoritmo (algoritmo (best-so-far solutionbest-so-far solution)) - melhor solução obtida na interação atual - melhor solução obtida na interação atual θθ ((interation-best solutioninteration-best solution))
DiferentesDiferentes esquemas de atualização do feromônio discutidos no cap. 3 esquemas de atualização do feromônio discutidos no cap. 3 podem ser descritos utilizando “GenericPheromoneUpdate”podem ser descritos utilizando “GenericPheromoneUpdate”
Função de qualidadeFunção de qualidade
1313
O problema e o algoritmoO problema e o algoritmo
Algoritmos ACO podem utilizar diferentes funções de Algoritmos ACO podem utilizar diferentes funções de qualidadequalidade
AS - AS -
ANTS - ANTS -
1414
Introdução Introdução Considerações teóricas no ACOConsiderações teóricas no ACOO problema e o algoritmoO problema e o algoritmoProvas de convergênciaProvas de convergênciaACO e MBSACO e MBSConsiderações finaisConsiderações finais
1515
Convergência em valorConvergência em valor
O nO nível máximo possível de feromônio é limitado devido a ível máximo possível de feromônio é limitado devido a evaporação do feromônioevaporação do feromônio
Preposição 4.1Preposição 4.1 Para qualquer Para qualquer
O máximo de feromônio adicionado a qualquer arco O máximo de feromônio adicionado a qualquer arco (i,j)(i,j) depois de qualquer depois de qualquer interação éinteração é
A trilha de feromônio é limitada por A trilha de feromônio é limitada por
Converge assimptoticamente Converge assimptoticamente
1616
Convergência em valorConvergência em valor
Preposição 4.2Preposição 4.2 Uma vez que tenha sido encontrada a solução ótima Uma vez que tenha sido encontrada a solução ótima
Valor da trilha de feromônio da solução ótima aumenta monotonicamente. Valor da trilha de feromônio da solução ótima aumenta monotonicamente.
LembrarLembrarPreposição 4.1Preposição 4.1Preposição 4.2 – conexões da solução ótima converge para Preposição 4.2 – conexões da solução ótima converge para
1717
Convergência em valorConvergência em valor
Teorema 4.1Teorema 4.1 Sendo a probabilidade do algoritmo encontrar uma solução Sendo a probabilidade do algoritmo encontrar uma solução
ótima pelo menos uma vez dentro das primeiras ótima pelo menos uma vez dentro das primeiras θθ interações, então, interações, então, para um valor arbitrariamente pequeno e para um grande para um valor arbitrariamente pequeno e para um grande θθ::
Como há limite inferior e superior de feromônio, a escolha do próximo Como há limite inferior e superior de feromônio, a escolha do próximo passo tem probabilidade maior que zero.passo tem probabilidade maior que zero.
Limite inferiorLimite inferior
1818
Convergência em soluConvergência em soluçãoção
Difere da convergência em valor por permitir mudanças nos valores Difere da convergência em valor por permitir mudanças nos valores mínimos de feromônio nas interaçõesmínimos de feromônio nas interaçõesO baixo limite de feromônio diminui em direção a zero, mas de forma lenta O baixo limite de feromônio diminui em direção a zero, mas de forma lenta (velocidade logarítmica), garantindo que uma solução ótima seja (velocidade logarítmica), garantindo que uma solução ótima seja encontradaencontradaDois teoremas:Dois teoremas:Teorema 4.2Teorema 4.2 O mais baixo limite das trilhas de feromônio de é:O mais baixo limite das trilhas de feromônio de é:
A solução ótima é encontrada no limite com probabilidade 1A solução ótima é encontrada no limite com probabilidade 1
Interação onde a solução Interação onde a solução ótima é encontrada pela ótima é encontrada pela primeira vezprimeira vez
1919
Convergência em soluConvergência em soluçãoção
Para qualquer interação:Para qualquer interação: Características de escolha:Características de escolha:
Probabilidade limitada:Probabilidade limitada:
2020
Convergência em soluConvergência em soluçãoção
Limite superiorLimite superior
Para provar que este produto é igual a zero, considera o logaritmo, Para provar que este produto é igual a zero, considera o logaritmo, lembrando que , então :lembrando que , então :
2121
Convergência em soluConvergência em soluçãoção
A probabilidade de não encontrar solução ótima é zero.A probabilidade de não encontrar solução ótima é zero.As trilhas de feromônio que não pertencem a solução ótima convergem As trilhas de feromônio que não pertencem a solução ótima convergem para zero.para zero.
Teorema 4.3Teorema 4.3 Sendo Sendo θθ** a intera a interação que a solução ótima é encontrada pela ção que a solução ótima é encontrada pela primeira vez e a probabilidade de uma formiga primeira vez e a probabilidade de uma formiga KK construir construir ss** na na θθ--ésima interação, sendo ésima interação, sendo θθ > > θθ** então: então:
A probabilidade de uma formiga A probabilidade de uma formiga KK localizada no componente localizada no componente ii da conexão da conexão ss** fazer a escolha correta é:fazer a escolha correta é:
E no limite:E no limite:
2222
Características adicionais dos algoritmos ACOCaracterísticas adicionais dos algoritmos ACO
Melhorar as soluções construídas pelas formigas – uso de algoritmo de Melhorar as soluções construídas pelas formigas – uso de algoritmo de busca local.busca local.Escolha do próximo passo – uso de informação heurística.Escolha do próximo passo – uso de informação heurística.
Busca LocalBusca Local
A melhor solução encontrada pela busca local é utilizada na atualização A melhor solução encontrada pela busca local é utilizada na atualização das trilhas de feromônio.das trilhas de feromônio.Não afeta as características de convergência. Não afeta as características de convergência.
2323
Características adicionais dos algoritmos ACOCaracterísticas adicionais dos algoritmos ACO
Melhorar as soluções construídas pelas formigas – uso de busca local do Melhorar as soluções construídas pelas formigas – uso de busca local do algoritmo.algoritmo.Escolha do próximo passo – uso de informação heurística.Escolha do próximo passo – uso de informação heurística.
Informação heurísticaInformação heurística
Faz uso de uma informação prévia para enviesar as decisões Faz uso de uma informação prévia para enviesar as decisões probabilísticas.probabilísticas.Mais comum utilizar Mais comum utilizar
Medida heurística desejadaMedida heurística desejada
2424
O que a prova realmente diz?O que a prova realmente diz?
RevendoRevendo:: Teorema 4.1 – fixando um baixo limite positivo na trilha de feromônio é Teorema 4.1 – fixando um baixo limite positivo na trilha de feromônio é
garantido encontrar a solução ótima (convergência em valor).garantido encontrar a solução ótima (convergência em valor).
Teorema 4.2 – o solução ótima é encontrada diminuindo um limite mínimo de Teorema 4.2 – o solução ótima é encontrada diminuindo um limite mínimo de feromônio em direção à zero, mas de forma lenta (convergências em solução).feromônio em direção à zero, mas de forma lenta (convergências em solução).
Teorema 4.3 – um decréscimo suficientemente lento de um baixo limite da Teorema 4.3 – um decréscimo suficientemente lento de um baixo limite da trilha de feromônio leva a um efeito que o algoritmo converge a um estado no trilha de feromônio leva a um efeito que o algoritmo converge a um estado no qual todas formigas constroem a solução ótima.qual todas formigas constroem a solução ótima.
2525
Convergência de alguns algoritmos ACOConvergência de alguns algoritmos ACO
Em geral o teorema 4.1 aplicado a qualquer algoritmo ACO com Em geral o teorema 4.1 aplicado a qualquer algoritmo ACO com probabilidade probabilidade PP((ss) de construir uma solu) de construir uma solução é sempre maior que ção é sempre maior que uma pequena constanteuma pequena constante
Consequência do fato que que é obtido:Consequência do fato que que é obtido:
Definindo um valor mínimo para a trilha de feromônio.Definindo um valor mínimo para a trilha de feromônio. Limitando a quantidade de feromônio que cada formiga deposita a cada Limitando a quantidade de feromônio que cada formiga deposita a cada
interação.interação. Deixar o feromônio evaporar com o tempo.Deixar o feromônio evaporar com o tempo. Pela forma particular da função escolhida.Pela forma particular da função escolhida.
2626
Convergência de alguns algoritmos ACOConvergência de alguns algoritmos ACO
MAX-MIN MAX-MIN Ant System (MMAS)Ant System (MMAS)
Utiliza um valor máximo de feromônio.Utiliza um valor máximo de feromônio. Utiliza uma regra mais geral de atualização do feromônio.Utiliza uma regra mais geral de atualização do feromônio. Para selecionar a conexão que será adicionado feromônio, permite escolher Para selecionar a conexão que será adicionado feromônio, permite escolher
interation-best solutioninteration-best solution ou ou best-so-far solutionbest-so-far solution..
2727
Convergência de alguns algoritmos ACOConvergência de alguns algoritmos ACO
Ant Colony System (ACS)Ant Colony System (ACS)
Utiliza regra proporcional pseudo-aleatória que a cada passo a formiga escolhe:Utiliza regra proporcional pseudo-aleatória que a cada passo a formiga escolhe:A conexão com maior valor da trilha de feromônio (probabilidade A conexão com maior valor da trilha de feromônio (probabilidade qq00).).Exploração enviesada (probabilidade 1-Exploração enviesada (probabilidade 1-qq00) baseado na equação:) baseado na equação:
Não utiliza evaporação de feromônio em todas conexões, apenas naquelas de Não utiliza evaporação de feromônio em todas conexões, apenas naquelas de melhor solução até o momento.melhor solução até o momento.
Cada formiga utiliza atualização local da trilha de feromônio imediatamente Cada formiga utiliza atualização local da trilha de feromônio imediatamente após cruzar uma conexão.após cruzar uma conexão.
Quantidade máxima de feromônio é limitada porQuantidade máxima de feromônio é limitada por
Fração de feromônio Fração de feromônio evaporadoevaporado
Pequena quantidade de Pequena quantidade de feromônio adicionadoferomônio adicionado
2828
Introdução Introdução Considerações teóricas no ACOConsiderações teóricas no ACOO problema e o algoritmoO problema e o algoritmoProvas de convergênciaProvas de convergênciaACO e MBSACO e MBSConsiderações finaisConsiderações finais
2929
ACO e MBSACO e MBS
No ACO metaheurístico, a atenção está direcionada ao procedimento de No ACO metaheurístico, a atenção está direcionada ao procedimento de construção estocástica usado pelas formigas e como estas formigas usam construção estocástica usado pelas formigas e como estas formigas usam soluções para enviesar o trajeto de futuras formigas, mudando valores de soluções para enviesar o trajeto de futuras formigas, mudando valores de feromônio.feromônio.Problema de otimização combinatorial:Problema de otimização combinatorial:
ACO – encontrar melhores soluçõesACO – encontrar melhores soluçõesespaço de soluçõesespaço de soluções
MBS – maximizar a probabilidade de gerar boas soluçõesMBS – maximizar a probabilidade de gerar boas soluçõesDistribuição de probabilidade paramétricaDistribuição de probabilidade paramétrica
No campo metaheurNo campo metaheuríístico para otimização combinatorial, há duas stico para otimização combinatorial, há duas aproximações antitéticas:aproximações antitéticas:
Instance-basedInstance-based Model-basedModel-based
3030
Model-Based Search (MBS)Model-Based Search (MBS)
As soluções são geradas utilizando modelo probabilístico parametrizado, que é As soluções são geradas utilizando modelo probabilístico parametrizado, que é atualizado utilizando soluções prévias, concentrando desta forma em regiões atualizado utilizando soluções prévias, concentrando desta forma em regiões que contém soluções de alta qualidadeque contém soluções de alta qualidade
3131
MBS tenta resolver o problema de minimização em dois passos:MBS tenta resolver o problema de minimização em dois passos:
Possíveis soluPossíveis soluções são construídas usando alguns modelos probabilísticos ções são construídas usando alguns modelos probabilísticos parametrizados, isto é, a distribuição da probabilidade parametrizada sobre o parametrizados, isto é, a distribuição da probabilidade parametrizada sobre o espaço de solução.espaço de solução.
Possíveis soluções são avaliadas e usadas para modificar o modelo Possíveis soluções são avaliadas e usadas para modificar o modelo probabilístico, a medida que futuros viés são considerados em direção à probabilístico, a medida que futuros viés são considerados em direção à soluções de baixo custo.soluções de baixo custo.
A estrutura do modelo pode ser pré-fixada, atualizando os parâmetros do modeloA estrutura do modelo pode ser pré-fixada, atualizando os parâmetros do modeloMudar a estrutura do modeloMudar a estrutura do modelo
3232
Atualização dos parâmetros dos modelos:Atualização dos parâmetros dos modelos: Stochastic Gradient AscentStochastic Gradient Ascent (SGA) (SGA) Cross-EntropyCross-Entropy (CE) (CE)
Substituindo minimização por maximizaçãoSubstituindo minimização por maximização
Assume que:Assume que: É dado um expressivo espaço É dado um expressivo espaço MM de possíveis modelos probabilísticos de possíveis modelos probabilísticos A estrutura do modelo é fixadaA estrutura do modelo é fixada E E MM é parametrizado por um vetor é parametrizado por um vetor
Parâmetro dimensionalParâmetro dimensional
3333
Problema de maximização:Problema de maximização:
É equivalente para resolver o problema de otimização originalÉ equivalente para resolver o problema de otimização original
Stochastic Gradient AscentStochastic Gradient Ascent (SGA) (SGA)
Utilizado como uma heurística para mudarUtilizado como uma heurística para mudar Substitui a expectância Substitui a expectância
Valor esperadoValor esperado Função de qualidadeFunção de qualidade
3434
Stochastic Gradient AscentStochastic Gradient Ascent (SGA) (SGA)
Tamanho do passoTamanho do passo
3535
Cross-EntropyCross-Entropy (CE) (CE)
Começa com uma mesma distribuiçãoComeça com uma mesma distribuição Constrói uma série de distribuições para tentar aumentar a Constrói uma série de distribuições para tentar aumentar a
probabilidade de gerar soluções de baixo custo depois de cada interação. probabilidade de gerar soluções de baixo custo depois de cada interação. Definindo igual a Definindo igual a
Então a solução é a distribuição que minimizaEntão a solução é a distribuição que minimizaDivergência de Divergência de Kullback-LeiblerKullback-Leibler
Entropia cruzadaEntropia cruzada
3636
Maximização por CEMaximização por CE
3737
Atualização de feromônio com SGA no ACOAtualização de feromônio com SGA no ACO
AdiAdição de feromônioção de feromônio
EvaporaçãoEvaporação de feromônio de feromônio
3838
Introdução Introdução Considerações teóricas no ACOConsiderações teóricas no ACOO problema e o algoritmoO problema e o algoritmoProvas de convergênciaProvas de convergênciaACO e MBSACO e MBSConsiderações finaisConsiderações finais
3939
Considerações finaisConsiderações finais
É possível provar a convergência para sub-grupos dos algoritmos ACO.É possível provar a convergência para sub-grupos dos algoritmos ACO. Convergência em valor – gera pelo menos uma solução ótima (Ex. ACS e Convergência em valor – gera pelo menos uma solução ótima (Ex. ACS e
MMMMAS).AS). Convergência em solução – atinge uma situação que gera sempre a mesma Convergência em solução – atinge uma situação que gera sempre a mesma
solução ótima (Ex. GBAS e ACOsolução ótima (Ex. GBAS e ACObs,bs,ττmin(min(θθ))).).
Viés introduzido no algoritmo não descarta a possibilidade de gerar Viés introduzido no algoritmo não descarta a possibilidade de gerar soluções ótimassoluções ótimasAlgoritmos ACO pertencem a classe de algoritmos MBS.Algoritmos ACO pertencem a classe de algoritmos MBS.Algoritmos MBS utilizam modelo probabilístico parametrizado.Algoritmos MBS utilizam modelo probabilístico parametrizado.Minimização por SGA e CE para atualização de feromônio podem ser Minimização por SGA e CE para atualização de feromônio podem ser utilizados.utilizados.
4040
Considerações finaisConsiderações finais
Não foi falado sobre velocidade de convergência.Não foi falado sobre velocidade de convergência.Não foi falado sobre tempo computacional necessário para gerar soluções Não foi falado sobre tempo computacional necessário para gerar soluções ótimas.ótimas.
4141