método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 ·...
Transcript of método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 ·...
1
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
73
método de solução aproximada• Definir• - Representação• - Objectivo• - Função de avaliação
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
74
Representação do problema• - Definição das variáveis de decisão do modelo escolhido para o
problema real. Importante fazer a formulação matemática do problema. Ajuda a conhecer o problema.
• - A representação é o objecto escolhido (mais adequado) para a apresentação das soluções no algoritmo.
• - O algoritmo usa a codificação da solução – objecto para manipular as soluções candidatas a alternativas.
• - A representação é específica do problema e do algoritmo. Um problema pode ter diferentes formas de representação da solução. Cabe ao investigador escolher a representação mais adequada atendendo ao par (problema/algoritmo).
• - A representação escolhida irá determinar o espaço de pesquisa e a sua dimensão. O espaço de pesquisa não é definido pelo problema, mas pela representação escolhida.
• - Uma representação menos adequada pode originar um domínio extenso, com muitas representações que são soluções não admissíveis ou duplicadas.
2
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
75
Representação do problema• Uma boa representação deve ser:• - Um para um - relação biunívoca• - Exaustiva do espaço de soluções do problema.• - Incluir a solução óptima.
Ex.Espaço de pesquisa do JS, com representação ordinal do problema (lista circular)
(j !)m(j )j m
SA
ANA
*
(j )j m cromossomas
(j !)m selecções
SA planos semi activos
A planos activos
NA planos não atrasados
* solução óptima
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
76
Representação do problema
• Se começar a pesquisar no espaço errado, nunca encontra a resposta certa!
Outros exemplos:SAT – temos n variáveis lógicas. Uma representação pode ser string binária de comprimento n. Cada elemento da string corresponde uma variável do problema. O espaço de pesquisa resultante é de dimensão .TSP – temos n cidades. Uma solução pode ser representada por uma permutação dos índices das soluções que representa um circuito hamiltoniano. O espaço de pesquisa resultante é de dimensão Se o problema for simétrico então a dimensão é
2n
!n( )1 !2n −
6 fósforos em cima da mesa para criar 4 triângulos equiláteros
3
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
77
O objectivo:• Descreve o propósito da execução.
• Uma vez definido o espaço de pesquisa devemos saber o que queremos encontrar?
• Tipos de objectivos do problema:• - Uma função – maximmização / minimização• - Uma expressão.
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
78
Função de aptidão / avaliação:• Nem sempre a (informação) função objectivo é a melhor forma
de conduzir a pesquisa.• SAT – Todas as soluções são “False” e a solução óptima é “True”.
O que é uma solução vizinha melhor? Contar número de disjunções “False”
• É um mapa do espaço de pesquisa definido. Cada solução candidata tem atribuído um valor, que serve para classificar a qualidade da solução. Pode ser uma classificação ordinal (ranking) ou numérica, que dá um conhecimento do grau da qualidade.
• Qual a melhor função de avaliação?• - deve identificar uma solução que cumpre o objectivo• - não deve considerar melhor uma solução que não cumpre o
objectivo do que uma solução que cumpre o objectivo.• JS e TSP: a função de avaliação pode ser a função objectivo?
Esquema dinâmico?
4
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
79
Espaço de pesquisa e Vizinhanças:(j !)m(j )j m
SA
ANA
*
(j )j m cromossomas
(j !)m selecções
SA planos semi activos
A planos activos
NA planos não atrasados
* solução óptima
Soluções admissíveis – soluções impossíveis
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
80
Do Modelo à Solução• Como definir uma correcta vizinhança?• Fixa? Variável?• Passar de Solução Válida para outra Solução Válida
5
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
81
Estruturas de Vizinhanças• Espaços de pequenos soluções válidos pequenos• Difícil definir uma estrutura de soluções que inclua soluções
impossíveis e um mecanismo que garante a admissibilidade da final solução.
• TSP: • 2-swap: troca 2 cidades adjacentes num circuito hamiltoniano• 2-permutação: troca dois arcos não adjacentes de um circuito
hamiltoniano.
• bin packing.• O espaço de soluções pode ser definido como o conjunto de
soluções admissíveis ou o conjunto de todas as “soluções”.• Falkenauer (1994) e Reeves (1996) adoptaram o modelo soluções
admissíveis e Kämpke (1988) adoptou o modelo todas as “soluções”.
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
82
Métodos Heurísticos
Construtivos
Pesquisa LocalMeta-heurísticas
Eficácia
Complexidade
Eficiência
Simplicidade
6
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
83
métodos construtivos• geram a solução partindo “do nada”
– (de uma solução parcial inicial vazia)• adicionam componentes até a solução
ficar completa• tipicamente são os métodos de
aproximação mais rápidos.
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
84
métodos construtivos
7
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
85
métodos construtivos• métodos especificamente concebidos
para cada problema– a adição de componentes (solução parcial)
deve respeitar as restrições do problema• obtenção de uma solução válida
• métodos construtivos famosos– algoritmo de Kruskal – encontra a solução óptima do problema
ASCM (problema fácil)– algoritmo do vizinho mais próximo – TSP– regras de despacho (scheduling) SPT, EDD– wi/pi – Prob. Mochila
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
86
métodos de pesquisa local• partem de uma solução inicial completa• iterativamente tentam substituir a
solução corrente – por uma solução melhor– que exista numa vizinhança da solução
corrente
8
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
87
Pesquisa Local• Método iterativo• Procedimento muito simples de melhoria da solução
• Método rápido com soluções de boa qualidade
• Tem um grande número de variantes e extensões
• Processo nuclear de métodos heurísticos mais elaborados
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
88
Pesquisa Local• Começa da posição inicial (solução inicial)
– inicia-se num dado ponto do espaço de pesquisa
9
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
89
Pesquisa Local• Começa da posição inicial (solução inicial)
– inicia-se num dado ponto do espaço de pesquisa
• Iterativamente move-se da posição corrente para uma posição vizinha– uma solução na vizinhança com melhor valor
• Usa uma função de avaliação (objectivo) para condução dos movimentos
Óptimo
Local
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
90
Pesquisa Local• trajectória de uma única solução
• garantia da obtenção de um óptimo local• desempenho fortemente dependente do
ponto de partida - Múltiplos?• variantes do método de pesquisa local
– principal diferença é o processo da escolha da solução na vizinhança
10
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
91
Vizinhanças• vizinhança depende do problema em estudo• definir funções de vizinhança eficientes
(soluções de boa qualidade) pode ser visto como um dos maiores desafios da pesquisa local
• não há regras gerais - para cada situação tem de ser efectuado um estudo independente
• para o mesmo problema estão disponíveis diferentes esquemas de vizinhança
• Ver TSP.ppt e TSP.xls
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
92
Vizinhanças• modelo de simples troca
• o um dos modelos mais utilizado em problemas de Optimização Combinatória
• o problema representados por uma sequência ou partições
• o modelo genérico k-exchenge – as soluções vizinhas são obtidas por troca de k elementos de uma dada sequência ou partição.
• o Problema da ordenação;• o Problema da partição uniforme de um grafo• o Problema do Caixeiro-Viajante• o ...
11
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
93
Algoritmos Pesquisa Local
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
94
Algoritmos Pesquisa Local
12
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
95
Algoritmos Pesquisa Local
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
96
Algoritmos Pesquisa Local
13
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
97
Algoritmos Pesquisa Local
Hill-climbing é a Pesquisa Local associada a um problema de maximizaçãoDescent é a Pesquisa Local associada a um problema de minimização
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
98
Algoritmos Pesquisa Local• Estratégias• Primeira melhoria• Melhor melhoria
14
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
99
Exemplos Pesquisa Local• Melhoria Iterativa para o SAT
– Inicialização: aleatoriamente escolhida, uma completa afectação de valores lógicos;
– Vizinhança: afectações das variáveis são vizinhas se elas deferirem no valor lógico de uma variável
– Função de avaliação: número de cláusulas insatisfeitas numa dada afectação
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
100
Exemplos Pesquisa Local• Melhoria Iterativa para o TSP
• Solução inicial é um circuito completo• Vizinhança k-opt: soluções que diferem no máximo em k arcos
• Dimensão da vizinhança: O(nk)•Vizinhanças mais complexas: pesquisa de profundidade variável
15
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
101
Pesquisa Local• Pontos fracos
– Normalmente terminam em soluções óptimos locais– A solução (óptima) obtida é função da solução inicial– Geralmente não é possível estabelecer um limite superior
relativamente ao tempo de computação (depende do ponto inicial)
• Pontos fortes– Método muito fácil de aplicar– Representação do problema + Função de
avaliação + definição da vizinhança
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
102
Escapar de óptimos locais– Na maioria dos problemas reais a função de
avaliação define uma superfície que descreve a topografia do espaço de procuracom muitas colinas e vales.
Encontrar o melhor cume ou o vale mais baixo é como tentar caminharna montanha na escuridão só com uma pequena lanterna.
16
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
103
Componentes do método de pesquisa• As técnicas eficazes de pesquisa estão munidas de um mecanismo que promove o balanço entre dois objectivos (aparentemente) conflituosos– o Exploitation / intensification: – (pesquisa na zona) consolidação da
pesquisa em zonas alvo do espaço de soluções resultado da experiência acumulada da procura – obtenção do óptimo local de uma zona;
– o Exploration / diversification: (pesquisa em novas zonas) cobrir o mais possível o espaço de soluções de modo a encontrar melhores soluções para o problema - cobertura do espaço de pesquisa.
• A Pesquisa Local (Hill-climbing) consolida a pesquisa na zona, mas negligencia a pesquisa de uma grande parte do espaço de pesquisa. (uma trajectória)• A Pesquisa Aleatória (random search) explora o espaço de pesquisa esquecendo a consolidação da pesquisa em zonas promissoras. (dar uma volta sem ver detalhes)
Universidade do Minho2006
Métodos HeurísticosJosé António Oliveira – [email protected]
104
Escapar de óptimos locais• Cada espaço de pesquisa é diferente
– o Mesmo espaços idênticos podem revelar-se muito distintos sob diferentes representações e funções de avaliação
• Como escapar aos óptimos locais?• Como balancear a Exploration e a Exploitation de
forma a tornar o resultado do método independente da solução de partida?– o As opções são dependentes do problema em análise– o Técnicas meta-heurísticas– o Utilizar grande número de configurações iniciais.
§ Alterar o modelo de vizinhança§ Alterar a função de avaliação