método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 ·...

16
Universidade do Minho 2006 Métodos Heurísticos José António Oliveira – [email protected] 73 método de solução aproximada • Definir •- Representação •- Objectivo - Função de avaliação Universidade do Minho 2006 Métodos Heurísticos José 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.

Transcript of método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 ·...

Page 1: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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.

Page 2: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 3: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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?

Page 4: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 5: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 6: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 7: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 8: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 9: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 10: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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 ...

Page 11: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 12: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 13: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 14: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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

Page 15: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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.

Page 16: método de solução aproximadapessoais.dps.uminho.pt/zan/MH/PesqLocal.pdf · 2006-11-21 · dimensão. O espaço de pesquisa não é definido pelo problema, ... 6 fósforos em cima

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