Expediente del caso
fit-maps
- Periodo
- 2026-03 al 2026-03
- Estado
- completed
- Visibilidad
- private
- Stack
- Flutter, Dart, OSRM, flutter_bloc, Appwrite
Evidencias · FIT-MAPS
Métricas
- 62 commits
Repositorio
- algoritmo propio de calibracion iterativa sobre OSRM Trip API
Expediente del caso
Motivación
Correr o caminar "una ronda" para quemar un objetivo suele acabar en improvisacion: se sale sin saber si la distancia y el desnivel daran para el objetivo. La motivacion fue una app que generara una ruta circular realista sobre OpenStreetMap calibrada para un objetivo calorico concreto.
El reto
El reto era que una ruta no se calibra por distancia sola: depende de la red peatonal real, de donde se enganchan los waypoints y de cuantos cruces o backtracking introduce el recorrido. Ademas, la OSRM Trip API resuelve el orden de visita, pero el radio que produce la distancia deseada hay que encontrarlo.
Enfoque
Se integro la OSRM Trip API con un algoritmo propio de calibracion iterativa: se ajusta el radio en pasos hasta acercarse al objetivo calorico. Los waypoints se enganchan a la red peatonal con OSRM `/nearest`. Una heuristica de puntuacion valora el error de distancia, el ratio de backtracking y penaliza carreteras principales, con fallback a circulo simple. La app se estructura por capas (presentation/services/core/config) con flutter_bloc y get_it, y CI con guardrails Android.
Aprendizaje
Calibrar contra una API real de routing obliga a una heuristica de calidad de ruta, no solo a distancia euclidea. El enganchado a la red peatonal (`/nearest`) es lo que hace que la ruta sea realista. Y la separacion por capas permitio probar el algoritmo de calibracion independiente del render.
Estado actual
Completado. El proyecto cerro con 62 commits, con el algoritmo de calibracion iterativa sobre OSRM Trip API como aportacion propia documentada en el repositorio.