Comunicación presentada al III Congreso Ciudades Inteligentes:
Autores
- Inés Huertas, Data Scientist & Co-founder, Datatons
- David Carrasco, Data Scientist, Datatons
- Manuel Lamelas, Solutions Arquitect, Datatons
Resumen
El objetivo de la propuesta es mostrar cómo se puede desplegar un sistema de autogestión de transporte público en una Smart City como Madrid, en este caso en concreto veremos cómo articularlo con el servicio de autobuses de una forma eficiente que permita optimizar los recursos y adaptarse a la dinámica de las ciudades. Para ello usaremos imágenes de cámaras sobre las que aplicaremos técnicas de machine learning para automatizar los intervalos de tiempo necesarios para cubrir las necesidades de transporte publico de autobuses sobre la zona. Dicho sistema se implementa con tecnologías compatibles con arquitecturas Big Data que permitan almacenar toda la información relativa a distintas áreas.
Palabras clave
Machine Learning, Deep Learning, Tratamiento de Imágenes, Big Data, Autogestión de Ciudades Inteligentes
Introducción
La gestión de servicios de transporte en grandes ciudades es un problema complejo que depende de los flujos de ciudadanos que transiten diferentes áreas de la ciudad, ¿Pero estos servicios están bien dimensionados? Debemos pensar que en el entorno de una smart city no solo se trata de realizar inversiones en sistemas sensorización y monitorización, si o también en el buen uso de los recursos disponibles.
Este último caso es el que se muestra en el presente trabajo, como a partir de servicios ya operativos como es el de sistema de transporte de autobuses y mediante el análisis de imágenes se podría reajustar de forma automática las rutas y lineas de transporte de autobuses en una ciudad como Madrid sin demasiada inversión en infraestructura adicional.
Presentaremos un diseño global de monitorización de ocupación de espacios y como hemos pilotado este sistema para un punto concreto de Madrid, así como el proceso que hemos seguido y los resultados obtenidos.
Sistema de autogestión de transporte en las smart cities
El presente trabajo tiene como objetivo modelar de forma global una forma automática la gestión de los recursos de los autobuses de un área determinada. Parte de la complejidad reside en la interconexión e interacción entre diferentes zonas de una cuidad, es decir, como afecta por ejemplo una manifestación en el centro de Madrid a línea de autobuses cuyo recorrido pasa cerca y termina en Chamartín.
Por otro lado, este tipo de contextos requieren de un componente de tiempo real que les permita ser ágiles en la detección de diferentes situaciones e incluso tener capacidades predictivas para poder adelantarse, por ejemplo si sabemos determinadas calles están cortadas por festivos locales todos los años en una fecha en concreto y además sabemos que va a llover podemos preveer cómo se comportará el tráfico respecto a años anteriores y días de lluvia para planificar rutas o recorridos más óptimos acordes con dichas necesidades utilizando técnicas de machine learning.
Además existe una añadido de capacidad tecnológica que a día de hoy necesitamos para converger este sistema, y es que existen multitud de parámetros que pueden afectar no solo en la regulación de tráfico si no también la justificación de más o menos ocupación de gente en un área concreta como puede ser suspensión del sistema de metro, el tiempo, manifestaciones, etc, todos estas componentes pueden estar monitorizadas en un futuro y vamos a querer recopilar estos datos en un único sitio para incluirlo dentro de nuestra algoritmia, por lo que debemos articular un sistema que permita su integración con sistema de Big Data como Hadoop, que no solo permite el almacenamiento del dato, si no que provea de herramientas para procesar de una forma eficiente ese dato e integración con sistemas en tiempo real escalando de una forma cómoda y eficiente.
La idea global del sistema parte de monitorizar mediante fotos áreas determinadas de una ciudad cercanas a estaciones de autobuses para determinar mediante técnicas de tratamiento de imágenes la densidad de ocupación de personas que se muestra en dicha área a través de un módulo de reconocimiento de porcentaje de ocupación, una vez obtenido el porcentaje de ocupación el sistema correlaría dicha información con la disponible por parte de la EMT a través de su API, como por ejemplo cuando es el siguiente autobús/es que pasan por la zona notificando si se trata de un volumen de ocupación fuera de lo común y lo contextualizaría respecto a otras zonas.
En este punto entraría el módulo de gestión de transporte, que aplicaría un modelo de forecast sobre los puntos de ruta afectados (y otras variables que se pudieran añadir como calendarios, meteorología, semáforos, tráfico, etc) y en base a los recursos disponibles en el sistema de transporte realizaría una llamada a un punto de API de la EMT realizando una recomendación de reajuste de ruta o de número de autobuses por línea.
Gestión de recursos de autobuses
Para estudiar la viabilidad del sistema en este caso hemos abordado una prueba de concepto para evaluar las capacidades en la parte del módulo de automatización de detección de ocupación en un área, para ello hemos elegido una de las zonas más transitadas de Madrid como es la Plaza de Callao. Para el trabajo hemos obtenido imágenes de esta plaza cada 45 minutos en un periodo de 1 mes para el estudio.
Una vez recopiladas las imágenes debemos etiquetarlas en base al porcentaje de ocupación que aparece en las mismas y lo hemos comparado con la frecuencia de la línea de autobús más cercana en dicha área (línea 146):
En la Figura 3 se muestra un mapa de calor con la frecuencia de los autobuses asociados a la línea 146, se observa que la mayor frecuencia (tonos más rojos) se centra en un amplio margen entre las 8.00-9.00 horas y las 21.00-22.00 horas, esta franja supone una meseta de más o menos la misma frecuencia de autobuses.
Se ha realizado el mismo ejercicio con las imágenes etiquetadas respecto al porcentaje de ocupación y en base a día de la semana y horas de día:
Como muestra la Figura 4 podemos observar las zonas más rojizas aquellas en las que se tiene un mayor porcentaje de ocupación de gente en la plaza, se aprecia una franja de altos porcentajes de ocupación más estrecha en cuanto a frecuencia de autobuses y más rica en cuanto a diferentes volúmenes de personas, al contrario que en el caso de las frecuencias de autobuses se apreciaba una meseta plana de similares frecuencias en una horquilla muy ancha de horas.
Es decir, apreciamos que existe una alta frecuencia cuando se detectan altos porcentajes de ocupación de la plaza, pero cuando esta ocupación disminuye o no es tan alta sigue existiendo la misma alta frecuencia de autobuses en la línea, lo que puede indicar una afluencia excesiva de autobuses en la zona.
Modelo de detección de ocupación de espacios basado en imágenes
Para poder desplegar un sistema autogestionado se necesita en primer lugar ser capaz de reconocer el porcentaje de gente que aparece en una imagen de forma automática.
El objetivo es conseguir una modelo de deep learning que a partir de las imágenes sea capaz de indicar la ocupación de gente presente en dicha área, para ello se necesitaba un conjunto de entrenamiento de imágenes de la zona con los porcentajes de ocupación etiquetados para proporcionarlo al algoritmo como entrada. El etiquetado de las imágenes se realizó en base a 4 factores de porcentaje:
- 0%-25%: Poca o nula ocupación de personas en la plaza
- 25%-50%: Media-baja ocupación de personas en la plaza
- 50%-75%: Media-alta ocupación de personas en la plaza
- 75%-100%: Alta o total ocupación de personas en la plaza
En este caso aplicamos como técnica de machine learning una red neuronal, la complejidad de la técnica asociada a precisión de los resultados en este caso se encuentra limitada por la muestra de datos, es decir, la cantidad de imágenes disponibles es de alrededor de 1000 imágenes.
El modelo obtenido como resultado de la analítica nos permite diferenciar con una precisión cercana al 80% (79,41%) en la identificación del porcentaje de ocupación en la zona:
Ya tenemos el modelo base para clasificar de forma automática y con cierta precisión el % de ocupación en una determinada área. Indicar que para el modelo en concreto además de utilizar las imágenes se ha incluido las variables de la hora del día y el día de la semana.
Discusión y conclusiones
El trabajo realizado indica que se pueden utilizar técnicas de deep learning sobre imágenes para la gestión organizada y optimizada de las ciudades, permitiendo clasificar si en una determinada área hay más o menos concentración de personas.
En el trabajo descrito se han utilizado imágenes que apuntan a espacios abiertos, una buena línea a seguir sería plantear este mismo caso utilizando cámaras en las paradas de los autobuses de bajo consumo, permitiendo extraer imágenes que se procesarían para inferir el número de personas en las paradas de cada línea.
Este sistema está abierto a integración con cualquier dato concentrándolo sobre una infraestructura Big Data que permita enriquecer y obtener más información sobre cómo se mueven e interactúan los ciudadanos en las ciudades.
Dentro de estas infraestructuras de convergencia de datos posibles líneas futuras irían también de la mano de técnicas de machine learning que permitieran realizar análisis predictivos que permitan anticiparnos y hacer una gestión anticipada de rutas, autobuses, etc.