PUC-Rio Departamento de Informática
Prof. Marcus Vinicius S. Poggi de Aragão Período: 2008.1
Horário: 2as feiras de 12 às 15 horas
Tópicos em Algoritmos, Paralelismo e Otimização
Algoritmos para Problemas de Otimização: Metaeurísticas e
Heurísticas Matemáticas
Objetivos: Este curso visa fornecer noções fundamentais
para a contrução de sistemas eficientes, através da concepção de algoritmos que se utilizam de informações disponíveis ou
obtidas durante o processo de busca de soluções.
O curso apresenta técnicas fundamentais e avançadas, focalizando
nos princípios básicos para a construção de algoritmos
inteligentes. Estes princípios são aplicados a problemas de Otimização Combinatória.
CONTEÚDO
Parte I: Noções básicas
· Fundamentos de modelagem: caracterização de problemas de otimização, representação de soluções, definição do espaço de
soluções, construção de soluções, soluoeparciais e incompletas,
vizinhança e topologia do espaço de soluções, papel da
randomização em métodos de solução.
· Heurísticas construtivas: intuição e
seu papel na construção de uma solução, algoritmos gulosos,
algoritmos gulosos probabilísticos, esquemas de
aproximação, construção randômica de soluções, avaliação
da qualidade, garantia de qualidade.
· Métodos de busca local: intuição na
modificação de uma solução, busca local, heurísticas de melhoria
(hill climbing), métodos do tipo multiple restart.
· Metaeurísticas: o que é uma
metaeurística, níveis de instanciação de uma metaeurística,
principais classes de métodos, busca em grafos, algoritmo A*, aplicações em inteligência artificial.
· Tópicos avançados: estudo de tópicos avançados, selecionados entre os seguintes temas - simulated annealing, busca tabu, GRASP, heurísticas baseadas em regras, algoritmos genéticos, ant colonies, heurísiticas matemáticas, etc.
Parte II: Tópicos avançados
· Tópico 1 - Simulated annealing: histórico,
convergência assintótica, velocidade de resfriamento,
aspectos de implementação, aplicações em sistemas de computação.
· Tópico 2 - Busca tabu: princípio fundamental,
elementos básicos (vizinhança, movimentos, memórias, recentidade e
freqüência, atributos, restrições, aspiração), estratégias
de busca, intensificação, diversificação, oscilação estratégica, listas de candidatos, critérios probabilísticos, enfoques híbridos e conexões com outras metaeurísticas,
cadeias de ejeção, estratégias síncronas e assíncronas de
paralelização, reconexão de caminhos, aplicações.
· Tópico 3 - GRASP: algoritmos gulosos randomizados,
greedy randomized adaptive search procedures, fase de
construção, fase de busca local, GRASP como método de amostragem no
espaço de soluções, reconexão de caminhos, aplicações.
· Tópico 4 - Heurísticas baseadas em regras:
identificação de regras: análise do espaço de
soluções, análise do problema real e análise da memória de
busca; modelos de ativação das regras; combinação de regras;
aplicações em segmentação de imagens.
· Tópico 5 - Algoritmos genéticos (e outros baseados em população): princípios
fundamentais, populações, funções de avaliação, operadores
genéticos, reprodução, cruzamento, mutação,
paralelização de algoritmos genéticos,
caracterização como uma organização de agentes independentes,
agentes, memórias, comunicação assíncrona, fluxo de dados
cíclico, parametrização, tamanho das memórias (quantidade de conhecimentos armazenados),
políticas de eliminação, critérios de seleção,
frequência de ativação dos agentes, ambientes de execução,
arquiteturas e paralelização, aplicações.
· Tópico 6 - Busca em Vizinhanças Muito Grandes (VLNS):
caracterização da vizinhança, definição do problema implícito, técnicas de resolução
recorrente, aplicações.
· Tópico 7 - Heurísticas Matemáticas:
modelos e formulações, técnicas básicas: exploração de vizinhanças, local branching,
vizinhanças estendidas, reconexão de caminhos, arredondamentos sucessivos, aplicações.
This document was translated from LATEX by HEVEA.