A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Algoritmos com Tempo Exponencial E. G. M. de Lacerda UFRN/DCA Maio de 2006.

Apresentações semelhantes


Apresentação em tema: "Algoritmos com Tempo Exponencial E. G. M. de Lacerda UFRN/DCA Maio de 2006."— Transcrição da apresentação:

1 Algoritmos com Tempo Exponencial E. G. M. de Lacerda UFRN/DCA Maio de 2006

2 O Problema do Caixeiro Viajante Dado N cidades, achar a caminho mais curto passando por todas as cidades uma única vez.

3 O Problema do Caixeiro Viajante Matriz distância Fonte: Devlin, K. Problemas do Milênio. Record, 2004.

4 O Problema do Caixeiro Viajante Há um total de 3 x 2 x 1 = 6 rotas.

5 O Problema do Caixeiro Viajante Para N cidades há (N-1)! rotas. Para 11 cidades, há 10! = 3.628.800 rotas. Para 12 cidades, há 11! = 39.916.800 rotas. Para 26 cidades, há 25! = 15.511.210.043.330.985.984.000.000 rotas.

6 Número de Passos para Resolver um Problema. A complexidade de um algoritmo é medido pela quantidade de operações básicas (e.g., comparação de dois números) necessárias para resolver o problema. Exemplos Examinar todas as possibilidades do PCV, requer visitar N cidades em (N-1)! rotas. Logo requer N x (N-1) = N! operações básicas. Ordenar um vetor de tamanho N (usando o algoritmo da bolha) requer: N 2 - 2N + 1 operações básicas.

7 A Explosão Combinatória Obs: usando um computador capaz de realizar um milhão de operações aritméticas básicas por segundo.

8 Problemas com Tempo Exponencial Muitos problemas de engenharia são problemas de otimização combinatória que não podem ser resolvidos com um algoritmo de tempo polinominal. Estes problemas são computacionalmente intratáveis. NP-completude é a teoria que estuda estes problemas. Esta teoria chama alguns desses problemas de NP- Difícil (do inglês, NP-hard).

9 Algoritmos Exatos e Heurísticas Duas classes de algoritmos são usados para resolver problemas de otimização combinatória: Algoritmos exatos. Técnicas heurísticas (ou algoritmos aproximados).

10 Algoritmos Exatos e Heurísticas Algoritmos Exatos: Garante a solução exata. Tempo exponencial. Incapaz de resolver grandes instâncias de problemas NP- Díficil. Exemplos: Branch-and-bound; Programação dinâmica.

11 Algoritmos Exatos e Heurísticas Técnica Heurística (ou simplesmente, heurística) É um método que procura uma boa solução com um custo computacional aceitável sem garantia de encontrar a solução ótima (ou a factibilidade). Há heurísticas que também não informam o quão próximo a solução encontrada está do ótimo. Muitas heurísticas, contudo, fornecem soluções de alta qualidade.

12 Algoritmos Exatos e Heurísticas Heurísticas: Há duas abordagens básicas: Busca local; Algoritmos construtivos.


Carregar ppt "Algoritmos com Tempo Exponencial E. G. M. de Lacerda UFRN/DCA Maio de 2006."

Apresentações semelhantes


Anúncios Google