Enunciado del proyecto
Instrucciones
Configuración
Siguiendo las instrucciones de esta documentación y el archivo README.md, instalar y ejecutar localmente el repositorio con el problema de ejemplo.
Fuente de datos
En el sitio web de SIMOVI (Laboratorio de Sistemas Inteligentes de Movilidad) estará disponible un intermediador MQTT, disponible en la siguiente URL:
tcp://mqtt.simovi.org:1883
Cada persona hará solicitudes en broker en el tópico A01234, es decir, su carné universitario (letra mayúscula). Los mensajes devolverán un conjunto de datos con un formato para determinar. Con la recopilación de estos datos inicia el proyecto.
Consejos
- Es posible crear nuevos archivos con scripts para la solución de las preguntas planteadas.
- Lo anterior es recomendable también para "aislar" el trabajo en diferentes archivos cuando varias personas están trabajando en un mismo proyecto en Git, para así editar de forma paralela.
Requisitos
La documentación de la entrega debe cumplir con los requisitos de la siguiente página.
Parte I
-
(1%) Actualizar su perfil de GitHub con nombre, descripción e imagen.
-
(3%) ¡Repartir estrellas! Visitar GitHub con su cuenta y colocar una estrella en todos los siguientes repositorios:
- simovilab/repositories/*
-
Todos los repositorios de SIMOVI.
- kalouk-web
-
Servidor web de Kalouk, donde se encuentran los datos, la API, los WebSockets y otros servicios.
- kalouk-js
-
Componentes web para interactividad con contenidos de matemáticas y programación.
- kalouk-mcp
-
Servidor de contexto para agentes de inteligencia artificial con el protocolo de contexto de modelos (MCP)
- kalouk-cli
-
Interfaz de línea de comandos de Kalouk, donde se pueden hacer solicitudes a la API y otras cosas vía terminal.
- kalouk-xyz
-
Sitio web con presentaciones del curso usando Kalouk y Slidev.
- improbabilidades/improbabilidades
-
Sitio web con la teoría del curso.
- improbabilidades/proyecto
-
Este enunciado del proyecto.
- tropicalizacion/ferias
-
Sitio web de promoción de las ferias del agricultor desarrollado por el TCU "Tropicalización de la tecnología".
- simovilab/repositories/*
-
(3%) ¡Seguir cuentas! Visitar GitHub con su cuenta y dar "Follow" en todas las siguientes cuentas:
- improbabilidades
-
Cuenta de GitHub del curso, donde esta(rá) la teoría del curso.
- tropicalizacion
-
Cuenta de GitHub del TCU "Tropicalización de la tecnología", donde hacemos varios proyectos relacionados con transporte público, ferias del agricultor y talleres educativos, entre otras cosas.
- simovilab
-
Cuenta de GitHub del nuevo Laboratorio de Sistemas Inteligentes de Movilidad, donde hacemos varios proyectos relacionados con la movilidad y el transporte público.
- fabianabarca
-
Cuenta de GitHub del profesor Fabián.
- RamirezSandi
-
Cuenta de GitHub del profesor Sebastián.
-
(3%) Realizar la evaluación docente del profesor de cada grupo respectivo, en el link provisto por la universidad.
Parte II
El objetivo es modelar la distribución de los tiempos de retraso entre un evento y otro, recibidos secuencialmente a través de un tópico de MQTT.
En la documentación web deben presentar:
-
(8%) Modelos de la base de datos (
models.py) y cliente de recolección de datos (client.py), los cuales deben ser diseñados según la estructura de los datos recibidos. -
(10%) Recolección y almacenamiento de datos (al menos 3 horas continuas) en la base de datos.
-
(12%) Análisis exploratorio de los datos.
- (4%) Gráficas descriptivas de las variables (histogramas y otros, cuando aplica).
- (4%) Modelos de probabilidad para los datos cuando aplica y gráfica de la función de densidad sobre el histograma de los datos, junto con sus parámetros.
- (4%) Momentos de los modelos (promedio, varianza, desviación estándar, inclinación, kurtosis).
Ejemplo
- Un evento sucedió en el instante 2025-11-07T12:34:56.69485.
- Otro evento sucedió en el instante 2025-11-07T12:35:09.95763.
- La diferencia temporal es de aproximadamente 13.26278 segundos.
- Un nuevo evento ocurre en 2025-11-07T12:35:26.96319.
- La diferencia con respecto al último evento es de aproximadamente 17.00556 segundos.
- Después de la recolección de muchos eventos, es posible recopilar todas las diferencias temporales entre eventos consecutivos, visualizar su distribución (histograma), obtener momentos estadísticos (media, varianza, inclinación y kurtosis) y encontrar el modelo de probabilidad de mejor ajuste.