Inspiration
La gestión de inventario para vuelos es un proceso que, a menudo, depende de conteos manuales y estimaciones históricas poco precisas, lo que resulta en un alto índice de mermas (productos que caducan o se sobre-stockean) y pérdidas operacionales. Nuestra inspiración fue transformar esta operación manual en un sistema basado en datos de alta precisión que no solo registre lo que sucede, sino que prediga de manera inteligente las necesidades futuras.
What it does
AirTrace implementa un sistema de trazabilidad total:
Etiquetado Unitario: Se asigna un código QR único (UUID) a cada producto al ingresar a la planta, registrando sus detalles (nombre, caducidad, lote).
Contabilización Precisa: El personal escanea los productos uno por uno antes y después de cada vuelo, generando datos de consumo en tiempo real de máxima granularidad.
Motor de Predicción: Utilizamos estos datos para alimentar nuestro modelo de machine learning, que ofrece dos tipos de predicciones:
Inventario a 28 días: Cantidad de producto necesaria para un periodo de casi un mes.
Demanda por Vuelo: Cantidad sugerida que se debería cargar para un vuelo específico, considerando la ruta, fecha y tipo de vuelo.
Cantidad de producto para X día en un periodo de 28 días hacia aldentante
Cantidad de producto para X día en base al vuelo y el día
How we built it
Utilizamos una arquitectura robusta y escalable:
- Aplicación Híbrida: Desarrollada con React Native para el front-end (uso en planta) que permite un escaneo rápido y consulta de datos.
- Back-end REST en AWS: El servidor principal se aloja en una instancia EC2 de AWS, manejando la lógica de negocio y sirviendo la API REST.
- Gestión de Datos:
- Firestore: Se utiliza para la gestión en tiempo real de los códigos QR (UUIDs).
- MySQL: Almacena la data histórica de consumo y las salidas del modelo de predicción.
- Modelo de ML: Los modelos de predicción se implementaron utilizando Flask, optimizando su ejecución mediante la precarga en background y caching para asegurar que la consulta de la cantidad sugerida tenga una latencia menor a 2 segundos.
Challenges we ran into
El principal desafío fue hacer funcionar los servicios, específicamente la integración de los modelos de predicción (Flask). El reto técnico fue asegurar una latencia mínima (máx. 2 segundos) al procesar la nueva data (el payload 'x') en el modelo más complejo, lo cual resolvimos precargando la petición y guardándola en caché.
Accomplishments that we're proud of
Trazabilidad 1 a 1: Implementar con éxito un sistema que traza cada unidad de producto desde la llegada hasta el consumo.
Modelo Funcional y Rápido: Lograr que los modelos de machine learning funcionen en un entorno productivo con los requisitos de baja latencia necesarios para la operación en planta.
Integración de Datos: Crear un sistema robusto que maneja múltiples bases de datos (Firestore y MySQL) para garantizar la rapidez de la aplicación y la integridad del data lake para el entrenamiento del modelo.
What we learned
El proyecto nos enseñó el valor de implementar soluciones innovadoras para resolver problemas complejos de una manera creativa y sencilla. Nos desafió a balancear la precisión con la velocidad (baja latencia), demostrando que la mejor tecnología es aquella que se adapta eficientemente a la necesidad operativa.
What's next for AirTrace
Retroalimentación del Modelo: Esperar un par de meses de recolección de datos para re-entrenar y retroalimentar el modelo. Nuestro objetivo inicial de precisión (MAE – Error Absoluto Medio) es alcanzar un umbral de confiabilidad en producción antes de la integración total.
Integración Completa: Lograr la integración completa en los sistemas de gategroup, iniciando con API REST para la consulta de la cantidad sugerida y, posteriormente, migrando a Webhooks para ofrecer reportes y alertas en tiempo real más eficientes.
Optimización del Modelo: Incorporar nuevas variables críticas como el tipo de vuelo y la ruta específica (e.g., México Sur a México Norte) para hacer las predicciones más robustas.
Built With
- amazon-ec2
- amazon-web-services
- firestore
- flask
- java
- javascript
- matplotlib
- pandas
- ploty
- python
- react-native
- sklearn
- spring-bot

Log in or sign up for Devpost to join the conversation.