Toward a Simulation Model Complexity Measure
Abstract
:1. Introduction
2. Many Facets of Complexity
2.1. Defining Complexity
“System is simply the name given to an object studied in some field and might be abstract or concrete; elementary or composite; linear or non-linear; simple or complicated; complex or chaotic. Complex systems are highly composite ones, built up from very large numbers of mutually interacting subunits (that are often composites themselves) whose repeated interactions result in rich, collective behavior that feeds back into the behavior of the individual parts. Chaotic systems can have very few interacting subunits, but they interact in such a way as to produce very intricate dynamics. Simple systems have very few parts that behave according to very simple laws. Complicated systems can have very many parts too, but they play specific functional roles and are guided by very simple rules. Complex systems can survive the removal of parts by adapting to the change; to be robust, other systems must build redundancy into the system (e.g., by containing multiple copies of a part)”[8]
2.2. Complexity in Computer Science
2.3. Information Theory Views of Complexity
2.4. Kolmogorov Complexity
3. Simulation Model Complexity, Abstraction, and Model Families
3.1. Defining Simulation Model Complexity
- Entity: Modeled agents are individuals or aggregated as groups.
- Attribute: Account for specific component performance or overall system performance/effectiveness.
- Logical dependency: Do (or do not) place constraints on attributes and their interdependence.
- Process: State changes computed at different entity/attribute resolutions.
- Spatial and temporal: Finer or coarser scales of space and time [42].
3.2. Model Family Archetypes
- A performance model emphasizes resolution in a small area of scope, for example, a computational fluid dynamics model of airflow over a wing. While not true in all cases, simulations with performance models typically occur over a short duration (perhaps on the order of seconds or milliseconds), or may even be static in time.
- An effectiveness model trades away some of the resolution to consider broader scope. The flight dynamics models described below in Section 4.1 can be used for effectiveness analysis, in many cases, particularly when assessing the effectiveness of mission systems and payloads on an air vehicle. Effectiveness simulations typically span minutes to hours of simulated time.
- A utility model generally treats most components of a system with the lowest resolution in order to investigate the system in its most broad scope. For assessing an air vehicle’s utility to meet strategic and operational objectives, its movement may be characterized very simply, such as with an average cruising speed to compute the time it takes to travel to its destination. Utility simulations cover many hours, days, or an even longer duration.
4. Investigating Complexity Measures
4.1. Flight Dynamics Simulation Models
4.1.1. Static Analysis Tools and Methodology
4.1.2. Results and Interpretation
5. Measuring Kolmogorov Complexity of Simulation Models
5.1. Case Study 1: Kolmogorov Complexity of the Simple Air Vehicle Models
5.2. Case Study 2: Normalized Compression Distance of a Family of AFSIM Models
6. Challenges and Future Research
- How far afield can this approach be used for valid comparison? It is well documented that there is a wide range in the complexity of source code written by different programmers, or written in different languages. The invariance theorem of Kolmogorov complexity (see Chapter 2 of Li and Vitányi [53]) implies that these differences can be accounted for with an additive constant, but how often does the constant dominate, washing out any observability of complexity differences due to changes in model detail?
- What gets measured? What gets included on the scale? To interpret an increase in KC as an increase in model detail and complexity, one would need confidence that all model details are included in the measurement, and irrelevant data are not included. However, how does one draw a line to encapsulate a model? Formal modeling specifications, such as discrete event system specification (DEVS), can provide a clear boundary. Research into M&S ontology can help to parse semantics. More work should be conducted to investigate tying these other areas of M&S research into model complexity.
- How does using KC compare to the approach defined by Cappochi, et al., [28] in using activity as the base metric for simulation complexity? Can KC of a DEVS model’s event transition functions be substituted for activity in Cappochi’s methodology?
- Is the textual representation of the model source code and input data the right representation for this type of analysis? Other representations may be better, such as intermediate representations, such as LLVM used in the code compilation process [54]. This can take advantage of the automatic code optimization that compilers perform.
- How to measure? How should the compression program be configured? The 7zip program, used in the above demonstrations, allows a user to select from a number of parameters, including compression algorithm, level of compression, dictionary size, word size, and solid block size.
- How should the measurement be calculated? These demonstrations use the size of the compressed data, sometimes scaling by log.
- How is complexity related to model accuracy and precision? Can the complexity analysis be paired with verification, validation, and uncertainty quantification (VVUQ) approaches to inform model selection?
- How can resolution and scope be measured independently? Is it possible to treat them as separate dimensions of complexity?
7. Conclusions
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
Disclaimer
Abbreviations
- The following abbreviations are used in this manuscript:
2DOF | Two degree-of-freedom movement model |
2DOF-TRC | Two degree-of-freedom movement model with a turn rate constraint |
3DOF | Three degree-of-freedom movement model |
AFSIM | Advanced Framework for Simulation, Integration, and Modeling |
DoD | Department of Defense |
CKC | Conditional Kolmogorov complexity |
CoC | Cognitive complexity (of source code) |
CyC | Cyclomatic complexity (of source code) |
KC | Kolmogorov complexity |
LZMA | Lempel–Ziv–Markov chain algorithm |
LZW | Lempel–Ziv–Welch algorithm |
MoE | Measure of effectiveness |
MoO | Measure of objective |
MoP | Measure of performance |
MBSE | Model-based systems engineering |
M&S | Modeling and simulation |
MS&A | Modeling, simulation, and analysis |
NCD | Normalized compression distance |
P6DOF | Pseudo six degree-of-freedom movement model |
RCA | Rust-code-analysis library |
SoS | System-of-systems |
TRC | Turn rate constraint |
USAF | United States Air Force |
VVUQ | Verification, validation, and uncertainty quantification |
References
- Zeigler, B.P.; Muzy, A.; Kofman, E. Chapter 16—Abstraction: Constructing Model Families. In Theory of Modeling and Simulation, 3rd ed.; Zeigler, B.P., Muzy, A., Kofman, E., Eds.; Academic Press: Cambridge, MA, USA, 2019; pp. 405–443. [Google Scholar]
- Thorburn, W.M. Occam’s Razor. Mind 1915, 24, 287–288. [Google Scholar] [CrossRef]
- Box, G.E.P. Science and Statistics. J. Am. Stat. Assoc. 1976, 71, 791–799. [Google Scholar] [CrossRef]
- Hofmann, M.; Palii, J.; Mihelcic, G. Epistemic and normative aspects of ontologies in modelling and simulation. J. Simul. 2011, 5, 135–146. [Google Scholar] [CrossRef]
- Feher, J. The Core Principles of Physiology. In Quantitative Human Physiology; Feher, J., Ed.; Academic Press: Boston, MA, USA, 2012; pp. 3–11. [Google Scholar]
- Hankey, A. The ontological status of western science and medicine. J. Ayurveda Integr. Med. 2012, 3, 119–123. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Moon, K.; Blackman, D. A guide to understanding social science research for natural scientists. Conserv. Biol. 2014, 28, 1167–1177. [Google Scholar] [CrossRef]
- Rickles, D.; Hawe, P.; Shiell, A. A simple guide to chaos and complexity. J. Epidemiol. Community Health 2007, 61, 933–937. [Google Scholar] [CrossRef]
- King, D.W. (Air Force Institute of Technology, Department of Electrical & Computer Engineering, Wright-Patterson AFB, OH, USA); Peterson, G.L. (Air Force Institute of Technology, Department of Electrical & Computer Engineering, Wright-Patterson AFB, OH, USA) Classifying Emergence. 2020, Unpublished manuscript.
- Wehrl, A. General properties of entropy. Rev. Mod. Phys. 1978, 50, 221–260. [Google Scholar] [CrossRef]
- Ebeling, W.; Molgedey, L.; Kurths, J.; Schwarz, U. Entropy, Complexity, Predictability, and Data Analysis of Time Series and Letter Sequences. In The Science of Disasters: Climate Disruptions, Heart Attacks, and Market Crashes; Bunde, A., Kropp, J., Schellnhuber, H.J., Eds.; Springer: Berlin/Heidelberg, Germany, 2002; pp. 2–25. [Google Scholar]
- Snowden, D.J.; Boone, M.E. A Leader’s Framework for Decision Making. Harv. Bus. Rev. 2007, 85, 68. [Google Scholar]
- Beer, S. The Heart of Enterprise; John Wiley & Sons Ltd.: Bath, UK, 1979. [Google Scholar]
- Raadt, J.D.R.d. Ashby’s Law of Requisite Variety: An Empirical Study. Cybern. Syst. 1987, 18, 517–536. [Google Scholar] [CrossRef]
- Ashby, W.R.; Goldstein, J. Variety, Constraint, and the Law of Requisite Variety. Emerg. Complex. Organ. 2011, 13, 190–207. [Google Scholar]
- Valckenaers, P.; Van Brussel, H. Chapter Two—On the Design of Complex Systems. In Design for the Unexpected; Valckenaers, P., Van Brussel, H., Eds.; Butterworth-Heinemann: Oxford, UK, 2016; pp. 9–18. [Google Scholar]
- Johnson, B.; Hernandez, A. Exploring Engineered Complex Adaptive Systems of Systems. Procedia Comput. Sci. 2016, 95, 58–65. [Google Scholar] [CrossRef] [Green Version]
- Koestler, A. The Ghost in the Machine; Macmillan: Oxford, England, 1968; Volume 384. [Google Scholar]
- Boehm, B.W. Software Engineering Economics. IEEE Trans. Software Eng. 1984, SE-10, 4–21. [Google Scholar] [CrossRef]
- McConnell, S. Code Complete: A Practical Handbook of Software Construction, 2nd ed.; Microsoft Press: Redmond, WA, USA, 2004. [Google Scholar]
- Arora, S.; Barak, B. Computational Complexity: A Modern Approach; Cambridge University Press: Cambridge, UK, 2007. [Google Scholar]
- Ebert, C.; Cain, J.; Antoniol, G.; Counsell, S.; Laplante, P. Cyclomatic Complexity. IEEE Softw. 2016, 33, 27–29. [Google Scholar] [CrossRef]
- Campbell, G.A. A New Way of Measuring Understandability; Technical Report; SonarSource: Geneva, Switzerland, 2021. [Google Scholar]
- Graham, S.L.; Kessler, P.B.; McKusick, M.K. gprof: A call graph execution profiler. SIGPLAN Not. 2004, 39, 49–57. [Google Scholar] [CrossRef]
- Buxton, J.N.; Laski, J.G. Control and Simulation Language. Comput. J. 1962, 5, 194–199. [Google Scholar] [CrossRef] [Green Version]
- Balci, O. The implementation of four conceptual frameworks for simulation modeling in high-level languages. In Proceedings of the 1988 Winter Simulation Conference Proceedings, San Diego, CA, USA, 12–14 December 1988; pp. 287–295. [Google Scholar]
- Muzy, A.; Touraille, L.; Vangheluwe, H.; Michel, O.; Traoré, M.K.; Hill, D.R.C. Activity regions for the specification of discrete event systems. In Proceedings of the 2010 Spring Simulation Multiconference, Orlando, FL, USA, 11–15 April 2010; Society for Computer Simulation International: San Diego, CA, USA, 2010. Number Article 136 in SpringSim ’10. pp. 1–7. [Google Scholar]
- Capocchi, L.; Santucci, J.F.; Pawletta, T.; Folkerts, H.; Zeigler, B.P. Discrete-Event Simulation Model Generation based on Activity Metrics. Simul. Model. Pract. Theory 2020, 103, 102122. [Google Scholar] [CrossRef]
- Lemberger, P.; Morel, M. Complexity, Simplicity, and Abstraction. In Managing Complexity of Information Systems: The Value of Simplicity; ISTE Ltd: London, UK; John Wiley & Sons: London, UK, 2011; pp. 18–75. [Google Scholar]
- Solomonoff, R.J. A formal theory of inductive inference. Part I. Inf. Control 1964, 7, 1–22. [Google Scholar] [CrossRef] [Green Version]
- Solomonoff, R.J. A formal theory of inductive inference. Part II. Inf. Control 1964, 7, 224–254. [Google Scholar] [CrossRef] [Green Version]
- Kolmogorov, A.N. Three approaches to the definition of the concept ‘quantity of information’. Probl. Peredachi Inf. 1965, 1, 3–11. (In Russian) [Google Scholar]
- Kolmogorov, A.N. Three approaches to the quantitative definition of information. Int. J. Comput. Math. 1968, 2, 157–168. [Google Scholar] [CrossRef]
- Chaitin, G.J. On the Length of Programs for Computing Finite Binary Sequences. J. ACM 1966, 13, 547–569. [Google Scholar] [CrossRef]
- Cilibrasi, R.L.; Vitányi, P.M.B. The Google Similarity Distance. IEEE Trans. Knowl. Data Eng. 2007, 19, 370–383. [Google Scholar] [CrossRef]
- Cilibrasi, R.L.; Vitányi, P.M.B. Clustering by compression. IEEE Trans. Inf. Theory 2005, 51, 1523–1545. [Google Scholar] [CrossRef] [Green Version]
- Welch, T.A. A Technique for High-Performance Data Compression. IEEE Comp 1984, 17, 8–19. [Google Scholar] [CrossRef]
- Pavlov, I. LZMA Software Development Kit. 2022. Available online: https://www.7-zip.org/sdk.html (accessed on 9 November 2022).
- Nutaro, J.; Zeigler, B.P. Towards a theory of economic value for modeling and simulation: Incremental cost of parallel simulation (wip). In Proceedings of the 4th ACM International Conference of Computing for Engineering and Sciences, Baltimore, MD, USA, 15–18 April 2018; Association for Computing Machinery: New York, NY, USA, 2018. Number Article 9 in ICCES’18. pp. 1–11. [Google Scholar]
- Kobren, E.; Oswalt, I.; Cooley, T.; Waite, W.; Waite, E.; Gordon, S.; Severinghaus, R.; Feinberg, J.; Lightner, G. Calculating Return on Investment for U.S. Department of Defense Modeling and Simulation. 2011. Available online: https://apps.dtic.mil/sti/pdfs/ADA539717.pdf (accessed on 27 October 2022).
- Friel, J. Air Battle Models. In Military Modeling; Hughes, W.P., Jr., Ed.; The Military Operations Research Society: Alexandria, VA, USA, 1984; pp. 127–145. [Google Scholar]
- Davis, P.K.; Hillestad, R. Aggregation, disaggregation, and the challenge of crossing levels of resolution when designing and connecting models. In Proceedings of the 1993 4th Annual Conference on AI, Simulation and Planning in High Autonomy Systems, Tucson, AZ, USA, 20–22 September 1993; pp. 180–188. [Google Scholar]
- Davis, P.K.; Hillestad, R. Families of Models that Cross Levels of Resolution: Issues for Design, Calibration and Management. In Proceedings of the 1993 Winter Simulation Conference-(WSC ’93), Los Angeles, CA, USA, 12–15 December 1993; pp. 1003–1012. [Google Scholar]
- Trevisani, D.A.; Sisti, A.F. Air Force hierarchy of models: A look inside the great pyramid. In Proceedings of the Enabling Technology for Simulation Science IV, Orlando, FL, USA, 25–27 April 2000; pp. 150–159. [Google Scholar]
- Gallagher, M.A.; Caswell, D.J.; Hanlon, B.; Hill, J.M. Rethinking the Hierarchy of Analytic Models and Simulations for Conflicts. Mil. Oper. Res. 2014, 19, 15–24. [Google Scholar] [CrossRef]
- LiCausi, A. MS&A of MOPs, MOEs, and MOOs: The Analysis Pyramid Reimagined. Phalanx 2019, 52, 46–51. [Google Scholar]
- Palmer, G. Physics for Game Programmers; Apress: New York, NY, USA, 2005. [Google Scholar]
- Weintraub, I.E. Various Air Platform Models; Technical Report; Air Force Research Laboratory, Aerospace Systems Directorate, Wright-Patterson AFB: Dayton, OH, USA, 2019. [Google Scholar]
- rust-lang. Rust-Clippy: A Bunch of Lints to Catch Common Mistakes and Improve Your Rust Code. 2022. Available online: https://github.com/rust-lang/rust-clippy (accessed on 26 April 2022).
- Ardito, L.; Barbato, L.; Castelluccio, M.; Coppola, R.; Denizet, C.; Ledru, S.; Valsesia, M. rust-code-analysis: A Rust library to analyze and extract maintainability information from source codes. SoftwareX 2020, 12, 100635. [Google Scholar] [CrossRef]
- Clive, P.D.; Johnson, J.A.; Moss, M.J.; Zeh, J.M.; Birkmire, B.M.; Hodson, D.D. Advanced Framework for simulation, integration and modeling (AFSIM). In Proceedings of the 2015 International Conference on Scientific Computing, Las Vegas, NV, USA, 27–30 July 2015; pp. 73–77. [Google Scholar]
- AFSIM Product Management Team. Advanced Framework for Simulation, Integration, and Modeling (AFSIM) v2.7.1 Basic User Training Presentation; Air Force Research Laboratory, Wright-Patterson AFB: Dayton, OH, USA, 2020. [Google Scholar]
- Li, M.; Vitányi, P. An Introduction to Kolmogorov Complexity and Its Applications; Texts in Computer Science; Springer: Cham, Switzerland, 2019. [Google Scholar]
- Lattner, C.A. LLVM: An Infrastructure for Multi-Stage Optimization. Master’s Thesis, University of Illinois at Urbana-Champaign, Champaign, IL, USA, 2002. [Google Scholar]
Term | Definition |
---|---|
Scope | The breadth of the model; how much of reality is represented, particularly the number of components and parameters encoded as model variables to represent those components |
Resolution | The depth of the model; the precision, granularity, quantization, and/or discretization of model parameters and structure, including internal interactions and logical dependencies |
Detail | The product or integration of the model’s scope and resolution |
Complexity | The aggregation of a model’s detail, external interactions and logical dependencies, and in many contexts its instantiation (input parameter settings) in a specific simulation scenario execution |
Model | Function | Clippy CoC | RCA CoC | RCA CyC |
---|---|---|---|---|
Palmer | calculate_forces | 6 | 7 | 7 |
Palmer | plane_rhs | 5 | 7 | 6 |
Palmer | eom_rk4 | 3 | 2 | 3 |
2DOF | update_2dof | 0 | 0 | 1 |
2DOF-TRC | update_2dof_trc | 0 | 2 | 2 |
3DOF | update_3dof | 0 | 0 | 1 |
Model | Compressed Size (Bytes) | Kolmogorov Complexity |
---|---|---|
2DOF | 375 | 8.551 |
2DOF-TRC | 448 | 8.807 |
3DOF | 477 | 8.898 |
Name | Description | Modeled Components |
---|---|---|
AirMover | Single-engine light fighter aircraft |
|
FA-LGT | Single-engine light fighter aircraft |
|
FA-LGT + Ext Tanks | Extends FA-LGT, adds external fuel tanks |
|
C-HVY | Four-engine heavy airlift cargo aircraft |
|
Model | Compressed Size (Bytes) | KC | NCD |
---|---|---|---|
AirMover | 63,421 | 15.9527 | N/A |
FA-LGT | 21,258,004 | 24.3415 | N/A |
FA-LGT + ext tanks | 22,078,546 | 24.3961 | N/A |
C-HVY | 20,867,455 | 24.3078 | N/A |
FA-LGT and FA-LGT + ext tanks | 22,114,939 | 24.3985 | 0.038813 |
FA-LGT and C-HVY | 23,697,162 | 24.4982 | 0.128165 |
FA-LGT and AirMover | 21,322,768 | 24.3459 | 1.0 |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Thompson, J.S.; Hodson, D.D.; Grimaila, M.R.; Hanlon, N.; Dill, R. Toward a Simulation Model Complexity Measure. Information 2023, 14, 202. https://doi.org/10.3390/info14040202
Thompson JS, Hodson DD, Grimaila MR, Hanlon N, Dill R. Toward a Simulation Model Complexity Measure. Information. 2023; 14(4):202. https://doi.org/10.3390/info14040202
Chicago/Turabian StyleThompson, J. Scott, Douglas D. Hodson, Michael R. Grimaila, Nicholas Hanlon, and Richard Dill. 2023. "Toward a Simulation Model Complexity Measure" Information 14, no. 4: 202. https://doi.org/10.3390/info14040202
APA StyleThompson, J. S., Hodson, D. D., Grimaila, M. R., Hanlon, N., & Dill, R. (2023). Toward a Simulation Model Complexity Measure. Information, 14(4), 202. https://doi.org/10.3390/info14040202