Ir al contenido

Descripción

Introducción #

Los Sistemas Cíber Físicos (SCF) o, en inglés, Cyber-Physical Systems, son sistemas que integran computación, redes y procesos físicos, con bucles de realimentación donde procesos físicos impactan sobre procesos de cómputo y viceversa. El desafío principal en estos sistemas es combinar abstracciones que han evolucionado durante siglos para modelar los sistemas físicos (p.e., ecuaciones diferenciales y procesos estocásticos), con abstracciones de las ciencias de la computación (algoritmos y programas), que proveen una “epistemología de procedimientos”, es decir, pasan de la noción del “qué es” de las ciencias experimentales a la del “cómo se hace”.

A partir de la experiencia del grupo de investigación MINA (Instituto de Computación - Facultad de Ingeniería) en esta área y en particular al trabajo en robótica móvil cooperativa llevado a cabo en los últimos años, se ha identificado como una necesidad para el grupo contar con un ambiente de modelado y simulación para los SCF; en particular para sistemas robóticos cooperativos (sistemas de múltiples robots con objetivos compartidos). El surgimiento de esta necesidad es multicausal. Por un lado, contar con modelos y plataformas de simulación para los SCF permite experimentar de manera rigurosa pero simplificada reduciendo costos y tiempo. Por ejemplo, permite realizar pruebas de nuevos desarrollos sin la necesidad de contar con un despliegue en hardware además de disminuir los tiempos de prueba. Permite, además, realizar pruebas de escalabilidad aumentando el tamaño de los escenarios o la cantidad de agentes, aspectos que serían inviables (por espacio o costo) en un ambiente físico de prueba.

Finalmente, un ambiente de modelado y simulación es una parte indispensable del concepto de digital twins. Los digital twins ofrecen una forma novedosa de probar el impacto de diferentes decisiones de control en un entorno virtual simulado sin necesidad de cambios en el sistema físico. De esta manera, se puede calcular y probar varias opciones de control en paralelo a la ejecución del sistema físico.

Poder contar con una plataforma de simulación que pueda modelar correctamente todos los aspectos de un SCF es complejo y presenta varios desafíos. Las capacidades y habilidades necesarias para describir correctamente un SCF son muy variadas y provienen de campos de aplicación diferentes. En el caso de la simulación, cada uno de estos campos en general tienen sus propios modelos y herramientas ya establecidos y confiables. El mayor desafío es, entonces, poder armonizar todos estos puntos de vista heterogéneos e integrar las herramientas y modelos de cada dominio en un único ambiente de simulación.

Es en este contexto que aparece el concepto de co-simulación como una estrategia para resolver estos desafíos. La co-simulación consiste en reutilizar modelos y herramientas implementados en diferentes plataformas de simulación y hacerlos interactuar con el objetivo de obtener una nueva plataforma de simulación que los contenga. Es decir, la co-simulación permite la simulación global de un sistema que integra aspectos físicos, de software y de redes de comunicaciones mediante la composición de diferentes simuladores específicos de cada una de estas áreas. En este sentido, cada simulador individual es visto como una caja negra capaz de implementar un cierto comportamiento, consumir entradas y producir salidas. Para lograr esta composición es necesario gestionar el intercambio de información entre las distintas plataformas así como sincronizar su ejecución.

Este proyecto se propone estudiar el problema de la co-simulación de SCF en general, pero con un foco específico en el problema de co-simulación y los digital twins para sistemas de robots móviles cooperativos con comunicación inalámbrica. Para esto será necesario profundizar tanto en los aspectos teóricos de la simulación de sistemas híbridos (que modelan sistemas físicos y computacionales) como en los aspectos prácticos de implementación de estas plataformas de co-simulación.

Además de los resultados teóricos esperados, se los plasmará en una plataforma de co-simulación que sirva de base común para las investigaciones en robótica móvil cooperativa del grupo postulante. Esto abrirá una nueva línea de investigación en el grupo MINA que le va a permitir avanzar en su plan de investigación en SCF, a la vez que formará nuevos recursos humanos en esta área.

Descripción del problema de investigación #

El problema de investigación de este proyecto surge de la necesidad de contar con una plataforma de simulación para robots cooperativos móviles. Los robots, a los efectos de este proyecto, pueden moverse en, e interactuar con, el mundo físico sin supervisión humana. Para beneficiarse con la utilización de un sistema multi-robot se deben diseñar estrategias de coordinación entre agentes que permitan implementar efectivamente soluciones cooperativas. En tal sentido, la comunicación en red es un factor clave. Para un equipo de robots móviles la red inalámbrica a través de la que se comunican no es sólo una restricción del problema que deben resolver sino un objeto más que el equipo puede manipular y utilizar como herramienta, modificándola según sus necesidades, alterando diversos parámetros de transmisión como suele hacerse pero, sobre todo, modificando la topología de la red según se mueven los robots. Contar con un entorno de simulación, como el de la Figura, que pueda modelar de forma precisa tanto los movimientos y el control del robot así como el comportamiento de las comunicaciones es muy importante en el proceso de investigación y desarrollo de esta disciplina. Más aún, en el contexto de digital twins, esta precisión es fundamental dado que las simulaciones son utilizadas para probar, validar o aprender aspectos del sistema que luego serán utilizados en el entorno físico. Además de la precisión y fiabilidad de los modelos y simulaciones, en el contexto de digital twins, se agregan restricciones de tiempo. Es decir, las herramientas de simulación deben permitir ejecutar los procesos más rápido que en un ambiente real. Para enfrentar este problema de forma viable y escalable, la co-simulación se presenta como una solución posible aunque con una importante lista de desafíos.

El problema de investigación de este proyecto, es en definitiva, resolver la lista de desafíos que presenta la co-simulación híbrida en general en el caso particular de la simulación de robots cooperativos con restricciones de tiempo de ejecución que permitan realizar estudios estadísticamente significativos e integrar el concepto de digital twin a los bucles de control. Los desafíos genéricos de la co-simulación híbrida están resumidos en \cite{Gomes2018Co-Simulation}, a continuación enumeramos aquellos que serán enfrentados en el contexto de este proyecto.

Adaptación semántica y composición de modelos. Cada simulador involucrado en una co-simulación define sus propios modelos de datos, interface y semánticas. A los efectos de hacerlos interoperar, si bien se pueden utilizar envolturas (wrapers) genéricas que los provean de interfaces y modelos comunes, en los hechos, la abstracción necesaria para lograr esto depende del escenario concreto. Sencillamente, no existe una sola opción de adaptación que sea mejor en todos los casos. Incluso a nivel técnico, la manera en que los eventos o señales se envían a (u obtienen de) cada simulador puede necesitar ser adaptada.

Tamaño predictivo de los pasos y localización de eventos. En los enfoques híbridos que consideramos en este proyecto, el avance del tiempo tiene que ser definido explícitamente. Sin embargo, un tamaño de paso temporal inadecuado puede causar pérdidas de eventos de uno u otro simulador. Existen varios acercamientos a este problema en la literatura, pero, hasta este momento, no conocemos una solución adecuada para nuestro escenario y objetivos en particular en el que procesos continuos a nivel de radio-frecuencia o de movimientos físicos en unos simuladores de tiempo continuo deben interactuar con procesos de mensajería y toma de decisiones basados en eventos en simuladores de eventos discretos. Como una restricción adicional a las habituales en la co-simulación híbrida, en el caso de nuestro proyecto se agrega el requerimiento de elegir pasos de un tamaño que permitan realizar simulaciones a una velocidad compatible con el concepto de digital twin.

Identificación y manejo de discontinuidades. En una co-simulación, un simulador de tiempo continuo puede generar, a través de su envoltorio (wraper) una secuencia de eventos de salida correspondiente al muestreo de una determinada señal. Sin embargo, desde el punto de vista de otro de los simuladores involucrados, no es posible discernir si se trata de un muestreo de una señal continua, o de discontinuidades propias de una secuencia de eventos discretos. Este tipo de ambigüedades debe ser resuelto agregando funcionalidades y extendiendo los modelos de información de cada simulador. Una vez identificadas, estas discontinuidades deben ser manejadas correctamente. Los simuladores de tiempo continuo son, en realidad, un mock-up de un sistema continuo y las discontinuidades en las entradas deben ser manejadas de forma que la simulación resultante tenga sentido en el mundo físico que simula, por ejemplo, la energía total debe conservarse, y un robot no debe cruzar una superficie sólida.

Estabilidad. En el caso de una co-simulación híbrida, es posible que una secuencia en particular de eventos cause que el sistema se vuelva inestable, incluso si todos los elementos continuos de la simulación son estables. Se hace necesario identificar, en el caso de los robots cooperativos, si los simuladores de tiempo continuo involucrados pueden inducir trayectorias inestables como resultado de entradas con ruido, el formato, los retardos o frecuencia de la mensajería.