Meta-heurísticas 105 meta-heurísticas Propriedades e Características: são estratégias que guiam o processo de pesquisa; - o objectivo a atingir é a exploração eficiente do espaço de pesquisa de modo a encontrar soluções (sub)óptimas; - as técnicas que constituem as meta-heurísticas variam desde simples procedimentos de pesquisa local a processos de aprendizagem complexos; - as meta-heurísticas incorporam mecanismos para evitar a retenção do processo de procura em áreas restritas do espaço de pesquisa; - as meta-heurísticas não são específicas do problema; - as meta-heurísticas fazem uso do conhecimento específico do domínio e / ou da experiência de procura (memória) para influenciar a procura. 106
meta-heurísticas As meta-heurísticas são conceitos de nível superior para explorar espaços de pesquisa usando diferentes estratégias. As estratégias devem ser escolhidas de tal modo que exista um balanço dinâmico entre: 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; 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. 107 meta-heurísticas Os critérios de paragem podem ser: um tempo máximo de CPU; um número máximo de iterações; se for encontrada uma solução com menor que um valor limiar predefinido; um número máximo de iterações sem que sejam obtidas melhorias. 108
Novos métodos As três componentes da Pesquisa Local: 1. Gerador da solução inicial 2. Função de vizinhança 3. Função de avaliação Meta-Heurísticas baseadas em Extensões da Pesquisa Local 109 Gerador da solução inicial GRASP: Greedy Randomized Adaptive Search Procedure algoritmo simples que combina os métodos construtivos com a pesquisa local. procedimento iterativo composto por duas fases: construção da solução melhoria a solução 110
GRASP a melhor solução é fornecida no final das iterações, quando o critério de paragem é obtido o lista de candidatos de tamanho variável: 1 n o 1: selecção essencialmente gulosa - n: selecção essencialmente aleatória o seleccionar um elemento de acordo com uma função de avaliação dinâmica o estática: custos dos arcos no TSP - dinâmica: custo de inserção no TSP 2ª fase: pesquisa local simples, SA ou TS 111 Função de vizinhança VNS Variable Neighborhood Search e as suas variantes 112
Função de vizinhança VNS Variable Neighborhood Search 3 fases principais: shaking, local search e move o shaking: uma solução s vizinha de s da k-ésima vizinhança é conduzida a um óptimo local s (uma qualquer vizinhança). s é comparada com a solução corrente s e toma o lugar de solução corrente se for melhor. O algoritmo recomeça com k=1, senão k é incrementado. Objectivo é saltar para diferentes zonas do espaço de pesquisa e avaliar diferentes óptimos locais, mas que não seja muito distanciado de s para não se tornar num método multi-start. Trocar de vizinhança equivale a diversificar a pesquisa e cobrir o espaço de soluções. 113 Função de vizinhança A função BestImprovement() devolve o óptimo local de uma vizinhança. Baseia-se no conceito de que uma solução que é óptimo local de uma vizinhança pode não ser o óptimo local de outra vizinhança. 114
Função de vizinhança Atendendo à dificuldade de definir diferentes vizinhanças no VNS e VND em VNDS usa-se uma decomposição do problema. Cada vizinhança avalia somente k parâmetros do problema (subproblema). 115 Função de vizinhança Extensão do VNS que considera diferentes critérios de aceitação de uma solução que tem em conta a distância / desvio (skew) entre soluções. 116
Função de avaliação GLS Guided Local Search Alteração da função de avaliação 117 Função de avaliação GLS Guided Local Search 118
Função de avaliação GLS Guided Local Search O principal objectivo do GLS é ajudar gradualmente que a pesquisa saia de um óptimo local, alterando o horizonte da procura. A orientação da pesquisa é obtida por alteração dinâmica da função de avaliação. A função de avaliação é alterada dinamicamente, tornando a solução (óptima local corrente) cada vez menos atractiva. 119 Função de avaliação GLS Guided Local Search Penalizações: Aditivas Multiplicativas Aumenta todas as iterações Aumenta cada 100 iterações. Cuidado especial porque podem afectar parâmetros sensíveis da instância do problema 120
Função de avaliação Pesquisa Local ILS Passeio Aleatório 121 Função de avaliação Pesquisa Local ILS Passeio Aleatório 122
Função de avaliação O esquema mais geral das estratégias explorativas. Por ser generalista é base de outras estratégias, o VNS, mas também pode conter outras metaheurísticas como sub-componentes. Um modelo simples e poderoso Devido à sua flexibilidade e alto nível de abstracção, a ILS pode ser considerada uma plataforma básica para o desenvolvimento da maioria das meta-heurísticas. 123 Função de avaliação Num espaço de pesquisa não é possível redesenhar uma vizinhança que só considere óptimos locais (situação ideal), então: 1. Executar LS de s até s* 2. Perturbar s* para obter s 3. Executar LS de s até s* 4. Atendendo ao critério de aceitação decidir se s* s* Voltar a 2 124
Função de avaliação Perturbação Não pode ser muito pequena, senão pode não sair do mesmo óptimo local Não pode ser muito grande, senão o método transforma-se em random start Deve ser tal que gere um novo óptimo local, mas próximo. O critério de aceitação funciona como um contrabalanço da perturbação, filtra e devolve informação sobre a acção da perturbação, dependendo do novo s* 125 Função de avaliação A concepção de algoritmo ILS tem alguns graus de liberdade, na escolha da solução inicial, modelo de perturbação e no critério de aceitação. Um papel chave é desempenhado pela história da pesquisa que pode ser explorada como memória de curto e longo prazo. Criação de solução inicial rápida criação aleatória 126
Função de avaliação Perturbação não-determinística para evitar a criação de ciclos e de intensidade variável, ou adaptativa. Intensidade da perturbação pode ser avaliada pela quantidade alterações efectudas. O critério de aceitação pode variar desde aceitar sempre, ou no caso de melhoria de solução. Situações intermédias podem ser obtidas implementando esquemas semelhantes ao dos planos de arrefecimento do SA. Um esquema de arrefecimento não monótono (afina a diversificação e a intensificação) e se explorar a história da pesquisa torna-se num modelo semelhante ao Reactive Tabu Search 127