SubteBA Path es una aplicación web que permite calcular y visualizar la ruta óptima entre dos estaciones del sistema de metro (Subte) de Buenos Aires utilizando el algoritmo A*. La aplicación considera diversos factores como transbordos, longitud del recorrido y accesibilidad para proporcionar la mejor ruta posible.
- 🗺️ Visualización interactiva del mapa del Subte de Buenos Aires
- 🔍 Búsqueda inteligente de rutas usando el algoritmo A*
- 🔄 Consideración de transbordos y conexiones entre líneas
- ⏱️ Estimación de tiempos de viaje
- ♿ Información sobre accesibilidad de las estaciones
- 📱 Interfaz responsive adaptable a diferentes dispositivos
- React.js
- Tailwind CSS
- Google Maps API (para visualización de mapas)
- Python (FastAPI)
- Vite (bundling y desarrollo frontend)
- Git (control de versiones)
subte-ba-path/
├── frontend/ # Aplicación React
│ ├── src/
│ ├── public/
│ └── package.json
├── backend/ # API FastAPI
│ ├── app/
│ │ ├── algorithms/ # Implementación A*
│ │ ├── config/
│ │ ├── data/
│ │ ├── repositories/
│ │ ├── routers/
│ │ └── services/
│ ├── main.py
└── requirements.txt
- Python 3.8 o superior
- Node.js 16 o superior
git clone https://github.com/sgarnica1/subteBA-path.gitgit clone git@github.com:sgarnica1/subteBA-path.gitcd backendpy -m venv venv
venv\Scripts\activatepython3 -m venv venv
source venv/bin/activatepip install -r requirements.txtxcode-select --install
pip install -r requirements.txtsudo apt update && sudo apt install python3-dev build-essential libpq-dev
pip install -r requirements.txtuvicorn app.main:app --host 0.0.0.0 --port 8000curl http://localhost:8000/docscd frontendVITE_GOOGLE_MAPS_API_KEY=<tu_api_key_de_google_maps>
VITE_SUBTE_API_URL=http://localhost:8000npm install -g pnpmpnpm install
pnpm run dev- Acceder a la aplicación web (por defecto en
http://localhost:5173) - Seleccionar estación de origen
- Seleccionar estación de destino
- Visualizar la ruta óptima calculada
graph LR
A[Frontend React] --> B[API FastAPI]
B --> C[Algoritmo A*]
C --> D[Datos]
B --> A
A --> E[Google Maps API]
| Apellidos | Nombre | Matrícula | Grupo | |
|---|---|---|---|---|
| Tahri Jautei Hassan | Mamoun | 220129 | mamoun.t@alumnos.upm.es | 5S2M-B |
| El Fakhouri | Adam | 220107s | adam.elf@alumnos.upm.es | 5S2M-B |
| Blay González | Álvaro | 220469 | alvaro.blay@alumnos.upm.es | 5S1M |
| Anaam | Farid | 210321 | farid.anaam@alumnos.upm.es | 5S2M-B |
| Garnica González | Sergio | 240817 | s.garnica@alumnos.upm.es | 5S1M-B |
Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para más detalles.
- Universidad Politécnica de Madrid
- Profesores y compañeros de la asignatura de Inteligencia Artificial