Na nossa oitava aula de métodos computacionais discutimos vários problemas clássicos usando o método de busca exaustiva. Nessa aula, vimos nosso primeiro problema com sabor de teoria econômico - o chamado problema Marriage-Matching. A solução apresentada foi uma baseada em busca exaustiva. Obviamente, nas próximas aulas iremos aprender estratégias que produzam algoritmos menos custosos. Esses são os slides usados em sala.
Abaixo temos os exemplos apresentados em sala de aula:
Existem bibliotecas prontas em python para gerar permutações e combinações?
Como implementar uma solução computacional para o problema do caixeiro viajante?
Como implementar uma solução computacional para o problema da mochila?
Como implementar uma solução computacional para o problema do casamento (marriage-matching)?
Referências Adicionais para essa aula:
Introduction to the Design and Analysis of Algorithms - Anany Levitin [Seção 3.4]
Referências Complementares:
In Pursuit of the Traveling Salesman: Mathematics at the Limits of Computation -
William J. Cook
The Art of Computer Programming, Volume 4A: Combinatorial Algorithms - Donald E. Knuth
Solução de exercícios
Questão 5 (a)
Questão 5 (b)
Questão 5 (c)
Questão 5 (f)