Programación III - Trabajo Práctico 1
Tecnicatura Universitaria en Inteligencia Artificial (Universidad Nacional de Rosario)
Máximo Alva
2024
Este proyecto es un visualizador interactivo de resolución de laberintos. El objetivo principal fue implementar la lógica de los algoritmos de búsqueda más clásicos de la Inteligencia Artificial para encontrar el camino óptimo desde un punto de inicio hasta una meta.
Se utilizó la versión de búsqueda en grafos para todos los algoritmos, manteniendo en memoria los estados ya explorados para evitar procesar caminos redundantes y optimizar el rendimiento.
La interfaz gráfica (GUI) base fue provista por la cátedra, mientras que el desarrollo se centró en la implementación desde cero de los siguientes algoritmos de resolución:
- BFS (Breadth-First Search): Búsqueda en anchura.
- DFS (Depth-First Search): Búsqueda en profundidad.
- UCS (Uniform Cost Search): Búsqueda de costo uniforme.
- GBFS (Greedy Best-First Search): Búsqueda avara primero el mejor.
- A-Star: Búsqueda heurística óptima.
- Python (3.10 o superior)
- Pygame
- Clonar el repositorio:
git clone https://github.com/maximoalva/pathfinding-graph-search-algorithms.git
- Crear y activar un entorno virtual (opcional):
python -m venv venv
# En Windows: venv\Scripts\activate # En Linux/Mac: source venv/bin/activate
- Instalar los paquetes requeridos:
pip install -r requirements.txt
- ¡Todo listo para ejecutar el programa!
python3 run.pyw
This project is licensed under the MIT License.