Skip to main content
Log in

Verification and synthesis of co-simulation algorithms subject to algebraic loops and adaptive steps

  • General
  • Special Issue: FMICS 2021
  • Published:
International Journal on Software Tools for Technology Transfer Aims and scope Submit manuscript

Abstract

Simulation-based analyses are becoming increasingly vital for the development of cyber-physical systems. Co-simulation is one such technique, enabling the coupling of specialized simulation tools through an orchestration algorithm. The orchestrator describes how to coordinate the simulation of multiple simulation tools. The simulation result depends on the orchestration algorithm that must stabilize algebraic loops, choose the simulation resolution, and adhere to each simulation tool’s implementation. This paper describes how to verify that an orchestration algorithm respects all contracts related to the simulation tool’s implementation and how to synthesize such tailored orchestration algorithms. The approaches work for complex and adaptive co-simulation scenarios and have been applied to several real-world case studies.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17

Similar content being viewed by others

Notes

  1. The model is available online: https://github.com/INTO-CPS-Association/Scenario-Verifier.

References

  1. Lee, E.A.: UNKNOWN (ed.) Cyber physical systems: Design challenges. (ed.UNKNOWN) International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC). IEEE, Los Alamitos, CA, USA (2008)

  2. Blockwitz, T., et al.: Functional Mockup Interface 2.0: The Standard for Tool independent Exchange of Simulation Models. In: Otter, M., Zimmer, D. (eds.) Proceedings of 9th International Modelica Conference, pp. 173–184. Linköping University Electronic Press, Linköping (2012)

  3. Kübler, R., Schiehlen, W.: Two methods of simulator coupling. Math. Comput. Model. Dyn. Syst. 6(2), (2000)

  4. Gomes, C., Broman, D., Vangheluwe, H., Thule, C. & Larsen, P. G. Co-simulation: a survey. ACM Computing Surveys 51 (3): (2018)

  5. FMI. Functional mock-up interface tools (2014). https://fmi-standard.org/tools/

  6. Arnold, M., Clauß, C., Schierz, T.: Error analysis and error estimates for co-simulation in FMI for model exchange and co-simulation v2.0. In: Schops, S., Bartel, A., Gunther, M., ter Maten, E.J.W., Muller, P.C. (eds.) Progress in Differential-Algebraic Equations. Springer, Berlin, Heidelberg (2014)

    MATH  Google Scholar 

  7. Gomes, C., et al.: HintCO—hint-based configuration of co-simulations. In: Obaidat, M.S., Ören, T.I., Szczerbicka, H. (eds.) Proc. Simultech’19. SciTePress, Setubal, Portugal (2019)

  8. Oakes, B.J., et al.: Hint-based configuration of co-simulations with algebraic loops. In: Obaidat, M., Obaidat, M., Obaidat, M., Ören, T., Szczerbicka, H. (eds.) Proc. Simultech’19, Vol. 1260 of Advances in intelligent systems and computing. Springer, Setubal, Portugal (2020)

  9. Gomes, C., Thule, C., Lausdahl, K., Larsen, P.G., Vangheluwe, H., Mazzara, M., Ober, I., Salaün, G. (eds).: Stabilization technique in INTO-CPS. Mazzara, M., Ober, I., Salaün, G. (eds.), Proc. 2nd Workshop on Formal Co-Simulation of Cyber-Physical Systems, Vol. 11176 of LNCS, Springer, Cham (2018)

  10. Schweizer, B., Li, P., Lu, D.: Explicit and implicit cosimulation methods: stability and convergence analysis for different solver coupling approaches. J. Comput. Nonlinear Dyn. 10(5), 051007 (2015)

    Article  Google Scholar 

  11. Gomes, C., et al.: Semantic adaptation for FMI co-simulation with hierarchical simulators. J. Simul. 95(3), 241–269 (2019)

    Article  Google Scholar 

  12. Cavalcanti, A., Woodcock, J., Amálio, N. Sampaio, A., Wang, F. (eds.), Behavioural models for FMI co-simulations. (eds Sampaio, A. & Wang, F.) Proc. ICTAC’16, Vol. 9965 of LNCS Springer, Cham (2016)

  13. Hansen, S.T., Gomes, C., Larsen, P.G., van de Pol, J., Martin, C.R., Blas, M.J., Inostrosa-Psijas, A. (eds.), Synthesizing co-simulation algorithms with step negotiation and algebraic loop handling. In: Martin, C.R., Blas, M.J., Inostrosa-Psijas, A., (eds.), Proc. Annual Modeling and Simulation Conference (ANNSIM’21), IEEE, Virginia, USA, (2021)

  14. Hansen, S.T., et al.: Verification of co-simulation algorithms subject to algebraic loops and adaptive steps. In: Lluch Lafuente, A., Mavridou, A. (eds.) Proc. FMICS’21, Vol. 12863 of LNCS. Springer, Cham (2021)

  15. Thule, C., Lausdahl, K., Gomes, C., Meisl, G., Larsen, P.G. Maestro: The INTO-CPS co-simulation framework. Simulatio Modelling Practice and Theory 92 (2019). https://www.sciencedirect.com/science/article/pii/S1569190X1830193X

  16. Broman, D. et al.: Determinate composition of FMUs for co-simulation. In: Ernst, R., Sokolsky, O. (eds.), Proc. EMSOFT’13, IEEE, (2013)

  17. Gomes, C., Thule, C., Lúcio, L., Vangheluwe, H., Larsen, P.G., Camara, J., Steffen, M. (eds): Generation of co-simulation algorithms subject to simulator contracts. In: Camara, J., Steffen, M. (ed.), Proc. SEFM’19 Collocated Workshops, Vol. 12226 of LNCS, Springer, Cham (2020)

  18. Clarke, E.M., Jr., Grumberg, O., Peled, D.A.: Model Checking. MIT Press, Cambridge, MA, USA (1999)

    MATH  Google Scholar 

  19. Baier, C., Katoen, J.-P.: Principles of Model Checking. The MIT Press, Cambridge, Mass (2008)

    MATH  Google Scholar 

  20. Behrmann, G. et al.: UNKNOWN (ed.) UPPAAL 4.0. (ed.UNKNOWN) Third International Conference on Quantitative Evaluation of Systems (QEST 2006), Springer, (2006)

  21. Alur, R., Dill, D.L.: A theory of timed automata. Theor. Comput. Sci. 126(2), (1994)

  22. Bérard, B., et al.: UPPAAL—Timed systems. In: Bérard, B., et al. (eds.) Systems and Software Verification: Model-Checking Techniques and Tools. Springer, Berlin, Heidelberg (2001)

    Chapter  MATH  Google Scholar 

  23. Hansen, S.T., Thule, C., Gomes, C. Cleophas, L., Massink, M. (eds.), An FMI-Based Initialization Plugin for INTO-CPS Maestro 2. In: Cleophas, L., Massink, M. (eds.), Proc. SEFM’20 Collocated Workshops, Vol. 12524, Springer, Cham (2020)

  24. Dijkstra, E.W.: Guarded commands, nondeterminacy and formal derivation of programs. Communications of the ACM 18(8), (1975)

  25. Cellier, F.E., Kofman, E.: Continuous System Simulation. Springer, New York (2010)

    MATH  Google Scholar 

  26. Inci, E.O. et al.: The effect and selection of solution sequence in co-simulation. In: Martin, C.R., Blas, M.J., Inostrosa-Psijas, A. (eds.), Proc. Annual Modeling and Simulation Conference (ANNSIM’21), IEEE, Virginia, USA (2021)

  27. Tarjan, R.E.: Depth-first search and linear graph algorithms. SIAM J. Comput. 1(2), 146–160 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  28. Alfonso, J. et al.: Distributed simulation and testing for the design of a smart suspension. SAE International Journal of Connected and Automated Vehicles 3(2), (2020)

  29. Gomes, C., Lucio, L., Vangheluwe, H., Burgueño, L. et al.: (eds) Semantics of co-simulation algorithms with simulator contracts. In: Burgueño, L. et al. (eds.), Proc. ACM/IEEE MODELS’19, IEEE (2019)

  30. Thule, C., et al.: Towards the verification of hybrid co-simulation algorithms. In: Mazzara, M., Ober, I., Salaün, G. (eds.) Proc. STAF’18 Collocated Workshops, Vol. 11176 of LNCS. Springer, Cham (2018)

  31. Amálio, N., Payne, R.J., Cavalcanti, A., Woodcock, J. Ogata, K., Lawford, M., Liu, S.: Checking SysML models for co-simulation. In: Ogata, K., Lawford, M., Liu, S. (eds.), Proc. ICFEM’16, Vol. 10009 of LNCS Springer, Cham (2016)

  32. Zeyda, F., Ouy, J., Foster, S., Cavalcanti, A. Cerone, A., Roveri, M.: Formalising cosimulation models. In: Cerone, A., Roveri, M. (eds.), Proc. SEFM’17 Collocated Workshops, Vol. 10729 of LNCS Springer, Cham (2017)

  33. Jensen, P.G., Larsen, K.G., Legay, A., Nyman, U. UNKNOWN (ed.): Integrating tools: Co-simulation in UPPAAL using FMI-FMU. (ed.UNKNOWN) Proc. ICECCS’17, IEEE, Fukuoka (2017)

  34. Palmieri, M., Bernardeschi, C., Masci, P.: A framework for FMI-based co-simulation of human-machine interfaces. Softw. Syst. Model. 19(3), (2020)

  35. Tire size calculator (2021). https://tiresize.com/calculator/

Download references

Acknowledgements

We are grateful to the Poul Due Jensen Foundation, which has supported the establishment of a new Centre for Digital Twin Technology at Aarhus University. We are would also like to thank the anonymous reviewers of the paper, who have provided valuable feedback on the paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Simon Thrane Hansen.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendices

Appendix A: Table of conventions

This appendix contains a table describing the notation used throughout the paper. Capitalized letters refer to sets, while lower case letters refer to a variable belonging to the set represented by the capitalized letter.

Convention

Description

\(U\)

All Inputs of the Scenario

\(U_{c}\)

Inputs of the SU c

\(Y\)

All Outputs of the Scenario

\(U_{c}\)

Outputs of the SU c

\(S_{}\)

States

\(s_{c}^{(t)}\)

State of SU c at time t

\(\mathcal {V_{T}}{}\)

Time stamped values of the type \(\mathcal {V}\times \mathbb {R}_{\ge 0}\)

\(s^{R}_{c}\)

The abstract state of SU c

t

Time t (\(t \in \mathbb {R}_{\ge 0}\))

H

Step duration H (\(H \in \mathbb {R}_{> 0}\))

\(L\)

Couplings between SUs

\(F\)

Feed-through constraints

\(R\)

Reactivity constraints

\(C\)

A set of SU identifiers

\(\mathcal {A}\)

Adaptations

\(M\)

A set of SUs that may reject a step duration

\(B\)

A set of SUs that must be backtracked

Appendix B: BNF grammar

The section presents the domain-specific language where user can describe co-simulation algorithms and scenarios for both simple, complex, and adaptive co-simulation scenario.

Examples of algorithms and scenarios described using the DSL are available online https://github.com/INTO-CPS-Association/Scenario-Verifier/tree/master/src/test/resources.

figure e
figure f

Appendix C: Algorithm of nested complex scenario

The co-simulation step of the scenario in Fig. 8a on page 26.

figure g

Appendix D: Parameters of the full vehicle model

Table 1 Parameters of the longitudinal vehicle model
Table 2 Torque profile
Table 3 Parameters of the vertical vehicle model

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Hansen, S.T., Thule, C., Gomes, C. et al. Verification and synthesis of co-simulation algorithms subject to algebraic loops and adaptive steps. Int J Softw Tools Technol Transfer 24, 999–1024 (2022). https://doi.org/10.1007/s10009-022-00686-8

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10009-022-00686-8

Keywords

Navigation