Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MAC5739 - MAC415
2014
Exerccio Programa 1
Algoritmos de Busca
1 Objetivo
Anlise comparativa dos algoritmos de busca para o jogo rgua-puzzle e para um
problema extra que ser anunciado em breve.
2 O jogo: rgua-puzzle
Considere um jogo onde 2N blocos so alinhados em uma rgua com 2N+1 posies.
Existem N blocos brancos (B), N blocos azuis (A) e uma posio vazia. Uma rgua
pode ser representada por um vetor R com posies que variam [1 .. 2N+1].
B A
O objetivo do jogo colocar todos os blocos brancos do lado esquerdo dos blocos
azuis, ou seja, para todo i, se R[i] = B ento R[j] A, para todo 0 < j < i.
Uma soluo tima para esse jogo seria a de menor nmero de movimentos. Ou ento,
uma soluo com o menor custo, adotando o custo de movimentos conforme definido
na prxima Seo.
B A
B A
sendo que os dois primeiros movimentos tem custo 1 e os dois ltimos, custo 2.
Existem cinco estados meta possveis:
B B
B B
B B
Obs.: Podemos considerar apenas um estado meta assumindo, por exemplo, que a
posio do espao em branco seja a primeira posio da rgua. Porm, isso no
garante encontrar a soluo tima para o jogo original.
Nesse problema, podemos especificar dois tipos de critrios de otimalidade: (1) a
soluo tima a de menor nmero de movimentos ou (2) a soluo tima a de
menor custo.
5 Linguagem de programao
Voc poder usar as seguintes linguagens de programao: C, C++, Java ou Python. A
entrega ser eletrnica atravs do sistema PACA.
7 Instrues gerais