Co-simulación


En la cosimulación se modelan y simulan de forma distribuida los diferentes subsistemas que forman un problema acoplado . Por lo tanto, el modelado se realiza a nivel de subsistema sin tener en cuenta el problema acoplado. Además, la simulación acoplada se lleva a cabo ejecutando los subsistemas en forma de caja negra . Durante la simulación, los subsistemas intercambiarán datos . La co-simulación puede considerarse como la simulación conjunta de herramientas y semánticas ya bien establecidas ; cuando se simulan con sus solucionadores adecuados . [1]La cosimulación demuestra su ventaja en la validación de sistemas físicos cibernéticos y multidominio al ofrecer una solución flexible que permite la consideración de múltiples dominios con diferentes pasos de tiempo, al mismo tiempo. Dado que la carga de cálculo se comparte entre los simuladores, la cosimulación también permite la posibilidad de una evaluación del sistema a gran escala. [2]

Establecer un marco de co-simulación puede ser una tarea desafiante y compleja, porque requiere una fuerte interoperabilidad entre los elementos participantes, especialmente en el caso de co-simulación de formalismo múltiple . Es necesario llevar a cabo la armonización , la adaptación y, finalmente, los cambios de los estándares y protocolos empleados en los modelos individuales para poder integrarlos en el marco holístico . La estructuración genérica en capas del marco de co-simulación [3]destaca la intersección de dominios y los problemas que deben resolverse en el proceso de diseño de un marco de cosimulación. En general, un marco de cosimulación consta de cinco capas de abstracción :

A partir de la estructuración conceptual, se define la arquitectura sobre la que se desarrolla el marco de cosimulación y las relaciones semánticas formales/formulación sintáctica. Las técnicas detalladas de implementación técnica y sincronización están cubiertas en capas dinámicas y técnicas.

El procedimiento de particionamiento identifica el proceso de separación espacial del problema acoplado en múltiples subsistemas particionados. La información se intercambia a través de interfaces ad-hoc oa través de un búfer intermedio gobernado por un algoritmo maestro. El algoritmo maestro (si existe) es responsable de instanciar los simuladores y de orquestar el intercambio de información (simulador-simulador o simulador-orquestador). [3]

Los métodos de acoplamiento de cosimulación se pueden clasificar en integración operativa e integración formal, según las capas de abstracción. En general, la integración operativa se utiliza en la cosimulación de un problema específico y tiene como objetivo la interoperabilidad en las capas dinámica y técnica (es decir, el intercambio de señales). Por otro lado, la integración formal permite la interoperabilidad a nivel semántico y sintáctico mediante el acoplamiento de modelos o el acoplamiento de simuladores. La integración formal a menudo implica un maestro federado para orquestar la semántica y la sintaxis de la interacción entre los simuladores.

Desde un punto de vista dinámico y técnico, es necesario considerar las técnicas de sincronización y los patrones de comunicación en el proceso de implementación.


Secuencia de Gauss-Seidel para dos subsistemas
Secuencia de Jacobi para dos subsistemas