{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T01:11:54Z","timestamp":1760058714500,"version":"build-2065373602"},"reference-count":62,"publisher":"MDPI AG","issue":"5","license":[{"start":{"date-parts":[[2025,4,26]],"date-time":"2025-04-26T00:00:00Z","timestamp":1745625600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Computation"],"abstract":"<jats:p>Modern computational models tend to become more and more complex, especially in fields like computational biology, physical modeling, social simulation, and others. With the increasing complexity of simulations, modern computational architectures demand efficient parallel execution strategies. This paper proposes a novel approach leveraging the reactive stream paradigm as a general-purpose synchronization protocol for parallel simulation. We introduce a method to construct simulation graphs from predefined transition functions, ensuring modularity and reusability. Additionally, we outline strategies for graph optimization and interactive simulation through push and pull patterns. The resulting computational graph, implemented using reactive streams, offers a scalable framework for parallel computation. Through theoretical analysis and practical implementation, we demonstrate the feasibility of this approach, highlighting its advantages over traditional parallel simulation methods. Finally, we discuss future challenges, including automatic graph construction, fault tolerance, and optimization strategies, as key areas for further research.<\/jats:p>","DOI":"10.3390\/computation13050103","type":"journal-article","created":{"date-parts":[[2025,4,28]],"date-time":"2025-04-28T04:25:50Z","timestamp":1745814350000},"page":"103","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Parallel Simulation Using Reactive Streams: Graph-Based Approach for Dynamic Modeling and Optimization"],"prefix":"10.3390","volume":"13","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-6330-6096","authenticated-orcid":false,"given":"Oleksii","family":"Sirotkin","sequence":"first","affiliation":[{"name":"Department of Mathematical and Computer Modeling, G.E. Pukhov Institute for Modelling in Energy Engineering of the NAS of Ukraine, 15 General Naumov Str., 03164 Kyiv, Ukraine"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0270-0425","authenticated-orcid":false,"given":"Arsentii","family":"Prymushko","sequence":"additional","affiliation":[{"name":"Department of Mathematical and Computer Modeling, G.E. Pukhov Institute for Modelling in Energy Engineering of the NAS of Ukraine, 15 General Naumov Str., 03164 Kyiv, Ukraine"}]},{"ORCID":"https:\/\/orcid.org\/0009-0002-9293-6764","authenticated-orcid":false,"given":"Ivan","family":"Puchko","sequence":"additional","affiliation":[{"name":"Department of Mathematical and Computer Modeling, G.E. Pukhov Institute for Modelling in Energy Engineering of the NAS of Ukraine, 15 General Naumov Str., 03164 Kyiv, Ukraine"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-1915-4897","authenticated-orcid":false,"given":"Hryhoriy","family":"Kravtsov","sequence":"additional","affiliation":[{"name":"Department of Mathematical and Computer Modeling, G.E. Pukhov Institute for Modelling in Energy Engineering of the NAS of Ukraine, 15 General Naumov Str., 03164 Kyiv, Ukraine"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6381-8588","authenticated-orcid":false,"given":"Mykola","family":"Yaroshynskyi","sequence":"additional","affiliation":[{"name":"Department of Mathematical and Computer Modeling, G.E. Pukhov Institute for Modelling in Energy Engineering of the NAS of Ukraine, 15 General Naumov Str., 03164 Kyiv, Ukraine"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8819-4564","authenticated-orcid":false,"given":"Volodymyr","family":"Artemchuk","sequence":"additional","affiliation":[{"name":"Department of Mathematical and Computer Modeling, G.E. Pukhov Institute for Modelling in Energy Engineering of the NAS of Ukraine, 15 General Naumov Str., 03164 Kyiv, Ukraine"},{"name":"Department of Environmental Protection Technologies and Radiation Safety, Center for Information-Analytical and Technical Support of Nuclear Power Facilities Monitoring of the NAS of Ukraine, 34a Palladin Ave., 03142 Kyiv, Ukraine"},{"name":"Department of Information Systems in Economics, Kyiv National Economic University Named After Vadym Hetman, 54\/1 Peremohy Ave., 03057 Kyiv, Ukraine"},{"name":"Department of Intellectual Cybernetic Systems, State Non-Profit Enterprise State University \u201cKyiv Aviation Institute\u201d, 1 Liubomyra Huzara Ave., 03058 Kyiv, Ukraine"}]}],"member":"1968","published-online":{"date-parts":[[2025,4,26]]},"reference":[{"key":"ref_1","unstructured":"Jeerson, D.R., and Sowizral, H.A. (1982). Fast Concurrent Simulation Using the Time Warp Mechanism, Rand Corp. Part I: Local Control."},{"key":"ref_2","unstructured":"Richard, R., and Fujimoto, M. (2000). Parallel and Distributed Simulation Systems, Wiley."},{"key":"ref_3","first-page":"13","article-title":"An Object-Oriented, Time Warp Simulation Kernel","volume":"Volume 1505","author":"Caromel","year":"1998","journal-title":"Proceeding of the International Symposium on Computing in Object-Oriented Parallel Environments (ISCOPE\u201998), Santa Fe, NM, USA, 8\u201311 December 1998"},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Jefferson, D., Beckman, B., Wieland, F., Blume, L., and Diloreto, M. (1987, January 8\u201311). Time warp operating system. Proceedings of the eleventh ACM Symposium on Operating systems principles, Austin, TX, USA.","DOI":"10.1145\/41457.37508"},{"key":"ref_5","doi-asserted-by":"crossref","first-page":"495","DOI":"10.1093\/bioinformatics\/17.6.495","article-title":"Aligning gene expression time series with time warping algorithms","volume":"17","author":"Aach","year":"2001","journal-title":"Bioinformatics"},{"key":"ref_6","doi-asserted-by":"crossref","first-page":"249","DOI":"10.1007\/BF02136831","article-title":"Parallel simulation today","volume":"53","author":"Nicol","year":"1994","journal-title":"Ann. Oper. Res."},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Falcone, A., and Garro, A. (2018, January 15\u201317). Reactive HLA-based distributed simulation systems with rxhla. Proceedings of the 2018 IEEE\/ACM 22nd International Symposium on Distributed Simulation and Real Time Applications (DS-RT), Madrid, Spain.","DOI":"10.1109\/DISTRA.2018.8600936"},{"key":"ref_8","unstructured":"Debski, A., Szczepanik, B., Malawski, M., and Spahr, S. (2016). In Search for a scalable & reactive architecture of a cloud application: CQRS and event sourcing case study. IEEE Software, 99."},{"key":"ref_9","doi-asserted-by":"crossref","first-page":"70","DOI":"10.1016\/j.jocs.2018.09.004","article-title":"High-performance computing framework with desynchronized information propagation for large-scale simulations","volume":"32","author":"Bujas","year":"2019","journal-title":"J. Comp. Sci."},{"key":"ref_10","unstructured":"(2025, April 15). Reactive Stream Initiative. Available online: https:\/\/www.reactive-streams.org."},{"key":"ref_11","doi-asserted-by":"crossref","unstructured":"Davis, A.L. (2018). Reactive Streams in Java: Concurrency with RxJava, Reactor, and Akka Streams, Apress.","DOI":"10.1007\/978-1-4842-4176-9"},{"key":"ref_12","unstructured":"Curasma, H.P., and Estrella, J.C. (2023, January 6\u201310). Reactive Software Architectures in IoT: A Literature Review. Proceedings of the 2023 International Conference on Research in Adaptive and Convergent Systems (RACS \u201823), Association for Computing Machinery, New York, NY, USA. Article 25."},{"key":"ref_13","unstructured":"(2025, April 15). The Implementation of Reactive Streams in AKKA. Available online: https:\/\/doc.akka.io\/docs\/akka\/current\/stream\/stream-introduction.html."},{"key":"ref_14","doi-asserted-by":"crossref","unstructured":"Oeyen, B., De Koster, J., and De Meuter, W. (2022, January 7). A Graph-Based Formal Semantics of Reactive Programming from First Principles. Proceedings of the 24th ACM International Workshop on Formal Techniques for Java-like Programs (FTfJP \u201822), Association for Computing Machinery, New York, NY, USA.","DOI":"10.1145\/3611096.3611101"},{"key":"ref_15","unstructured":"Posa, R. (2018). Scala Reactive Programming: Build Scalable, Functional Reactive Microservices with Akka, Play, and Lagom, Packt Publishing."},{"key":"ref_16","unstructured":"Baxter, C. (2016). Mastering Akka, Packt Publishing."},{"key":"ref_17","doi-asserted-by":"crossref","first-page":"33","DOI":"10.1063\/1.3397041","article-title":"The tangled tale of phase space","volume":"63","author":"Nolte","year":"2010","journal-title":"Phys. Today"},{"key":"ref_18","first-page":"9","article-title":"Classification of applied mathematical models-the main analytical methods of their investigation","volume":"9","author":"Myshkis","year":"2007","journal-title":"Elem. Theory Math. Models"},{"key":"ref_19","doi-asserted-by":"crossref","first-page":"963","DOI":"10.1109\/32.965338","article-title":"Modeling development effort in object-oriented systems using design properties","volume":"27","author":"Briand","year":"2001","journal-title":"IEEE Trans. Softw. Eng."},{"key":"ref_20","doi-asserted-by":"crossref","first-page":"91","DOI":"10.1109\/32.748920","article-title":"A unified framework for coupling measurement in object-oriented systems","volume":"25","author":"Briand","year":"1999","journal-title":"IEEE Trans. Softw. Eng."},{"key":"ref_21","doi-asserted-by":"crossref","unstructured":"Shibanai, K., and Watanabe, T. (2018, January 5). Distributed functional reactive programming on actor-based runtime. Proceedings of the 8th ACM SIGPLAN International Workshop on Programming Based on Actors, Agents, and Decentralized Control, Boston, MA, USA.","DOI":"10.1145\/3281366.3281370"},{"key":"ref_22","doi-asserted-by":"crossref","unstructured":"Lohstroh, M., Romeo, I.I., Goens, A., Derler, P., Castrillon, J., Lee, E.A., and Sangiovanni-Vincentelli, A. (2019). Reactors: A deterministic model for composable reactive systems. Cyber Physical Systems. Model-Based Design, Springer.","DOI":"10.1007\/978-3-030-41131-2_4"},{"key":"ref_23","unstructured":"Mogk, R., Baumg\u00e4rtner, L., Salvaneschi, G., Freisleben, B., and Mezini, M. (2018, January 19\u201321). Fault-tolerant distributed reactive programming. Proceedings of the 32nd European Conference on Object-Oriented Programming (ECOOP 2018), Amsterdam, The Netherlands."},{"key":"ref_24","unstructured":"(2025, April 15). About the Graphs in AKKA Streams. Available online: https:\/\/doc.akka.io\/docs\/akka\/2.5\/stream\/stream-graphs.html."},{"key":"ref_25","unstructured":"Kurima-Blough, Z., Lewis, M.C., and Lacher, L. (2017, January 17\u201320). Modern parallelization for a dataflow programming environment. Proceedings of the International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA), The Steering Committee of the World Congress in Computer Science, Computer Engineering and Applied Computing (WorldComp), Las Vegas, NV, USA."},{"key":"ref_26","doi-asserted-by":"crossref","unstructured":"Kirushanth, S., and Kabaso, B. (2019, January 2\u20134). Designing a cloud-native weigh-in-motion. Proceedings of the 2019 Open Innovations (OI), Cape Town, South Africa.","DOI":"10.1109\/OI.2019.8908183"},{"key":"ref_27","doi-asserted-by":"crossref","unstructured":"Prymushko, A., Puchko, I., Yaroshynskyi, M., Sinko, D., Kravtsov, H., and Artemchuk, V. (2025). Efficient State Synchronization in Distributed Electrical Grid Systems Using Conflict-Free Replicated Data Types. IoT, 6.","DOI":"10.3390\/iot6010006"},{"key":"ref_28","doi-asserted-by":"crossref","unstructured":"Oeyen, B., De Koster, J., and De Meuter, W. (2024). Reactive Programming without Functions. arXiv.","DOI":"10.22152\/programming-journal.org\/2024\/8\/11"},{"key":"ref_29","doi-asserted-by":"crossref","unstructured":"Babaei, M., Bagherzadeh, M., and Dingel, J. (2020, January 16\u201323). Efficient reordering and replay of execution traces of distributed reactive systems in the context of model-driven development. Proceedings of the 23rd ACM\/IEEE International Conference on Model Driven Engineering Languages and Systems, Virtual Event.","DOI":"10.1145\/3365438.3410939"},{"key":"ref_30","unstructured":"(2025, April 15). Simulink. Available online: https:\/\/www.mathworks.com\/help\/simulink\/index.html?s_tid=CRUX_lftnav."},{"key":"ref_31","unstructured":"Karris, S.T. (2006). Introduction to Simulink with Engineering Applications, Orchard Publications."},{"key":"ref_32","doi-asserted-by":"crossref","first-page":"1252","DOI":"10.1109\/41.808019","article-title":"A power system simulation tool based on Simulink","volume":"46","author":"Dessaint","year":"1999","journal-title":"IEEE Trans. Ind. Electron."},{"key":"ref_33","doi-asserted-by":"crossref","unstructured":"Kuraj, I., and Solar-Lezama, A. (2020, January 27). Aspect-oriented language for reactive distributed applications at the edge. Proceedings of the Third ACM International Workshop on Edge Systems, Analytics and Networking 2020, (EdgeSys \u201820), Association for Computing Machinery, New York, NY, USA.","DOI":"10.1145\/3378679.3394531"},{"key":"ref_34","unstructured":"Babbie, E.R. (2009). The Practice of Social Research, Wadsworth Publishing."},{"key":"ref_35","unstructured":"Zoph, B., and Le, Q.V. (2016). Neural Architecture Search with Reinforcement Learning. arXiv."},{"key":"ref_36","doi-asserted-by":"crossref","first-page":"5","DOI":"10.1007\/s44227-024-00043-y","article-title":"Enhancing Personalized Service Development with Virtual Agents and Upcycling Techniques","volume":"13","author":"Nakata","year":"2025","journal-title":"Int. J. Netw. Distrib. Comput."},{"key":"ref_37","doi-asserted-by":"crossref","first-page":"225","DOI":"10.1007\/s12273-025-1235-9","article-title":"Large language models for building energy applications: Opportunities and challenges","volume":"18","author":"Liu","year":"2025","journal-title":"Build. Simul."},{"key":"ref_38","unstructured":"Kipf, T.N., and Welling, M. (2017). Semi-Supervised Classification with Graph Convolutional Networks. International Conference on Learning Representations (ICLR). arXiv."},{"key":"ref_39","doi-asserted-by":"crossref","first-page":"113023","DOI":"10.1016\/j.knosys.2025.113023","article-title":"AutoMTNAS: Automated meta-reinforcement learning on graph tokenization for graph neural architecture search","volume":"310","author":"Nie","year":"2025","journal-title":"Knowl.-Based Syst."},{"key":"ref_40","doi-asserted-by":"crossref","first-page":"103064","DOI":"10.1016\/j.artmed.2024.103064","article-title":"Neural Architecture Search for biomedical image classification: A comparative study across data modalities","volume":"160","author":"Aydin","year":"2025","journal-title":"Artif. Intell. Med."},{"key":"ref_41","doi-asserted-by":"crossref","unstructured":"Chaturvedi, D.K. (2017). Modeling and Simulation of Systems Using MATLAB and Simulink, CRC Press.","DOI":"10.1201\/9781315218335"},{"key":"ref_42","unstructured":"Lewis, M.C., and Lacher, L.L. (August, January 30). Swiftvis2: Plotting with spark using scala. Proceedings of the International Conference on Data Science (ICDATA\u201918), Las Vegas, NV, USA."},{"key":"ref_43","unstructured":"Yoshitaka, S., and Watanabe, T. (2019, January 21). Towards a statically scheduled parallel execution of an FRP language for embedded systems. Proceedings of the 6th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems, Athens, Greece."},{"key":"ref_44","doi-asserted-by":"crossref","unstructured":"Bassen, J., Balaji, B., Schaarschmidt, M., Thille, C., Painter, J., Zimmaro, D., Games, A., Fast, E., and Mitchell, J.C. (2020, January 25\u201330). Reinforcement learning for the adaptive scheduling of educational activities. Proceedings of the 2020 CHI Conference on Human Factors in Computing Systems, CHI \u201820, Honolulu, HI, USA.","DOI":"10.1145\/3313831.3376518"},{"key":"ref_45","doi-asserted-by":"crossref","first-page":"110021","DOI":"10.1016\/j.engappai.2025.110021","article-title":"Optimizing quay crane scheduling using deep reinforcement learning with hybrid metaheuristic algorithm","volume":"143","author":"Long","year":"2025","journal-title":"Eng. Appl. Artif. Intell."},{"key":"ref_46","unstructured":"Pietarinen, A., Senden, Y., Sharpless, S., Shepperson, A., and Vehkavaara, T. (2025, April 15). The Commens Dictionary of Piece\u2019s Terms, \u201cObject,\u201d 2009-03-19. Available online: https:\/\/web.archive.org\/web\/20090214004523\/http:\/www.helsinki.fi\/science\/commens\/terms\/object.html."},{"key":"ref_47","doi-asserted-by":"crossref","first-page":"247","DOI":"10.1017\/S0269889700003409","article-title":"Models, Simulations, and Their Objects","volume":"12","author":"Sismondo","year":"1999","journal-title":"Sci. Context"},{"key":"ref_48","doi-asserted-by":"crossref","first-page":"102","DOI":"10.1093\/bjps\/XVI.62.102","article-title":"Theoretical models","volume":"16","author":"Achinstein","year":"1965","journal-title":"Br. J. Philos. Sci."},{"key":"ref_49","unstructured":"Banks, J., Carson, J., Nelson, B., and Nicol, D. (2001). Discrete-Event System Simulation, Prentice Hall."},{"key":"ref_50","doi-asserted-by":"crossref","unstructured":"Br\u00e9zillon, P., and Gonzalez, A.J. (2014). Context in Computing: A Cross-Disciplinary Approach for Modeling the Real World, Springer.","DOI":"10.1007\/978-1-4939-1887-4"},{"key":"ref_51","unstructured":"Varga, A. (2001, January 6\u20139). Discrete event simulation system. Proceedings of the European Simulation Multiconference (ESM2001), Prague, Czech Republic."},{"key":"ref_52","doi-asserted-by":"crossref","unstructured":"Choi, B.K., and Kang, D. (2013). Modeling and Simulation of Discrete Event Systems, John Wiley & Sons.","DOI":"10.1002\/9781118732793"},{"key":"ref_53","doi-asserted-by":"crossref","unstructured":"Goldsman, D., and Goldsman, P. (2015). Discrete-event simulation. Modeling and Simulation in the Systems Engineering Life Cycle: Core Concepts and Accompanying Lectures, Springer London.","DOI":"10.1007\/978-1-4471-5634-5_10"},{"key":"ref_54","doi-asserted-by":"crossref","unstructured":"Robinson, S. (2013). Conceptual modeling for simulation. Winter Simulations Conference (WSC), IEEE.","DOI":"10.1109\/WSC.2013.6721435"},{"key":"ref_55","doi-asserted-by":"crossref","unstructured":"Robinson, S. (2015). A tutorial on conceptual modeling for simulation. Winter Simulation Conference (WSC), IEEE.","DOI":"10.1109\/WSC.2015.7408298"},{"key":"ref_56","doi-asserted-by":"crossref","unstructured":"Abdelmegid, M.A., Gonzales, V.A., Naraghi, A.M., O\u2019Sullivan, M., Walker, C.G., and Poshdar, M. (2017). Towards a conceptual modeling framework for construction simulation. Winter Simulation Conference (WSC), IEEE.","DOI":"10.1109\/WSC.2017.8247967"},{"key":"ref_57","doi-asserted-by":"crossref","first-page":"37","DOI":"10.1142\/S2251158X12000069","article-title":"Quantum mechanics in phase space","volume":"1","author":"Curtright","year":"2012","journal-title":"Asia Pac. Phys. Newsl."},{"key":"ref_58","doi-asserted-by":"crossref","first-page":"644","DOI":"10.1021\/acs.jpclett.3c03385","article-title":"Nonadiabatic field on quantum phase space: A century after Ehrenfest","volume":"15","author":"Wu","year":"2024","journal-title":"J. Phys. Chem. Lett."},{"key":"ref_59","unstructured":"Hastings, N.B. (1998). Workshop Calculus: Guided Exploration with Review, Springer Science & Business Media."},{"key":"ref_60","doi-asserted-by":"crossref","first-page":"371","DOI":"10.1145\/360248.360251","article-title":"Formal verification of parallel programs","volume":"19","author":"Keller","year":"1976","journal-title":"Commun. ACM"},{"key":"ref_61","doi-asserted-by":"crossref","first-page":"21","DOI":"10.1017\/S0956796805005721","article-title":"Functional pearls: Probabilistic functional programming in Haskell","volume":"16","author":"Erwig","year":"2006","journal-title":"J. Funct. Program."},{"key":"ref_62","doi-asserted-by":"crossref","first-page":"10526","DOI":"10.1016\/j.ifacol.2017.08.1299","article-title":"Functional programming for business process modeling","volume":"50","author":"Saini","year":"2017","journal-title":"IFAC-PapersOnLine"}],"container-title":["Computation"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2079-3197\/13\/5\/103\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,9]],"date-time":"2025-10-09T17:22:05Z","timestamp":1760030525000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2079-3197\/13\/5\/103"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,4,26]]},"references-count":62,"journal-issue":{"issue":"5","published-online":{"date-parts":[[2025,5]]}},"alternative-id":["computation13050103"],"URL":"https:\/\/doi.org\/10.3390\/computation13050103","relation":{},"ISSN":["2079-3197"],"issn-type":[{"type":"electronic","value":"2079-3197"}],"subject":[],"published":{"date-parts":[[2025,4,26]]}}}