Software library for agent-based modeling and simulation of active shooter events

Authors

DOI:

https://doi.org/10.5055/jem.0556

Keywords:

active shooter, agent-based model, AnyLogic, software library, Run.Hide.Fight, Columbine, school resource officer

Abstract

Software libraries have been used for decades to produce code in a quick and cost-effective manner. The use of well-designed libraries permits software developers and other professionals to create applications due in part to code reusability. Also, good libraries grant lesser skilled developers the opportunity to make high-quality applications they otherwise could not produce. In the field of active shooting incident (ASI) research, various tools have been used for years that give researchers the ability to conduct exploratory research. However, as good as these tools might be, there has been little thought about reusability of these models and associated code. This has hindered the proper advancement of the research field given that researchers must often start from nothing when building a new model. Constant repetition of the same basic tasks has not enabled researchers to expand model fidelity and has limited time to dedicate toward the problem set. This paper proposes the creation of a new agent-based ASI library, made for the AnyLogic® system. The library assists researchers in quickly creating models using a well-defined application programming interface. It also abstracts away implementation details so that the library user does not get waylaid in development. The authors also recreated parts of a large and powerful AnyLogic model to observe the resultant library employment. It was determined that a significant amount of time can be saved building new models, even with the initial version of the library implementation.

 

Author Biographies

Braiden Frantz, PhD

Assistant Professor, Naval Science & Marine Officer Instructor, Purdue University, West Lafayette, Indiana

Robert Bott, MS

Purdue Homeland Security Institute, Purdue University, West Lafayette, Indiana

J. Eric Dietz, PhD, PE

Director, Purdue Homeland Security Institute, West Lafayette, Indiana; Professor, Computer and Information Technology, Purdue University, West Lafayette, Indiana

References

AnyLogic: AnyLogic: Simulation Modeling Software Tools & Solutions for Business. Chicago: The AnyLogic Company.

City of Houston: RUN.HIDE.FIGHT. Run.Hide.Fight | Ready Houston. 2012. Available at https://readyhouston.wpengine.com/suspicious-activity/run-hide-fight/. Accessed October 10, 2020.

Chaikalis T, Chatzigeorgiou A, Ampatzoglou A, et al.: Assessing the evolution of quality in Java libraries. In Proceedings of the 7th Balkan Conference on Informatics Conference—BCI’15, Craiova, Romania, 2015: 1–4, DOI: 10.1145/2801081.2801097.

Google: Communicating with backend services using HTTP. Angular. Available at https://angular.io/guide/http. Accessed October 8, 2020.

Christian N: 17 Angular libraries you should know about. 2019. Available at https://www.telerik.com/blogs/17-angular-librariesyou-should-know-about. Accessed October 8, 2020.

Salsita Software: JavaScripting. 2014. Available at https://www.javascripting.com/. Accessed October 7, 2020.

w3schools.com: JavaScript tutorial. Available at https://www.w3schools.com/js/default.asp. Accessed October 9, 2020.

Bloch J: How to design a good API and why it matters. In Companion to the 21st ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages, and Applications—OOPSLA’06, Portland, Oregon, USA, 2006: 506. DOI: 10.1145/1176617.1176622.

geeksforgeeks: Object oriented programming (OOPs) concept in Java. 2019. Available at https://www.geeksforgeeks.org/object-orientedprogramming-oops-concept-in-java/. Accessed October 10, 2020.

Indeed, What are the four basics of object-oriented programming? 2020. Available at https://www.indeed.com/career-advice/career-development/what-is-object-oriented-programming. Accessed October 7, 2020.

Wirth N: A brief history of software engineering. IEEE Annals Hist Comput. 2008; 30(3): 32-39. DOI: 10.1109/MAHC.2008.33.

Sumo Logic: What is encapsulation? Available at https://www.sumologic.com/glossary/encapsulation/. Accessed October 7, 2020.

Lau K-K, Taweel FM: Data encapsulation in software components. In Schmidt HW, Crnkovic I, Heineman GT, et al. (eds.): Component-Based Software Engineering, vol. 4608. Berlin, Heidelberg: Springer Berlin Heidelberg, 2007: 1-16.

Gharehyazie M, Ray B, Filkov V: Some from here, some from there: Cross-project code reuse in GitHub. In 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR), Buenos Aires, Argentina, May 2017: 291-301. DOI: 10.1109/MSR.2017.15.

Larios-Vargas E, Aniche M, Treude C, et al.: Selecting third-party libraries: The practitioners’ perspective. ArXiv200512574 Cs, 2020. DOI: 10.1145/3368089.3409711.

Abdalkareem R, Shihab E, Rilling J: On code reuse from StackOverflow: An exploratory study on android apps. Inf Softw Technol. 2017; 88: 148-158. DOI: 10.1016/j.infsof.2017.04.005.

Mojica IJ, Adams B, Nagappan M, et al.: A large-scale empirical study on software reuse in mobile apps. IEEE Softw. 2014; 31(2): 78-86. DOI: 10.1109/MS.2013.142.

Stack Overflow: Stack overflow. Available at https://stackoverflow.com/. Accessed October 8, 2020.

github. Available at https://github.com/. Accessed October 8, 2020.

Angular: Angular on GitHub. Available at https://github.com/angular. Accessed October 8, 2020.

Qiu D, Li B, Leung H: Understanding the API usage in Java. Inf Softw Technol. 2016; 73: 81-100. DOI: 10.1016/j.infsof.2016.01.011.

Raemaekers S, van Deursen A, Visser J: Measuring software library stability through historical version analysis. In 2012 28th IEEE International Conference on Software Maintenance (ICSM), Trento, Italy, September 2012: 378-387. DOI: 10.1109/ICSM.2012.6405296.

Savga I, Rudolf M, Sliwerski J, et al.: API changes—How FarWould You Go? In 11th European Conference on Software Maintenance and Reengineering (CSMR’07), Amsterdam, March 2007: 329-330. DOI: 10.1109/CSMR.2007.13.

Goldwater M: An abbreviated history of JavaScript package managers. 2019. Available at https://medium.com/javascriptin-plain-english/an-abbreviated-history-of-javascript-package-managers-f9797be7cf0e. Accessed October 9, 2020.

Goldstein A: Open source licenses explained. 2019. Available at https://resources.whitesourcesoftware.com/blog-whitesource/opensource-licenses-explained. Accessed October 8, 2020.

Leroux S: Open source licenses comparison [guide]. 2019. Available at https://itsfoss.com/open-source-licenses-explained/. Accessed October 8, 2020.

Sojer M, Alexy O, Kleinknecht S, et al.: Understanding the drivers of unethical programming behavior: The inappropriate reuse of internet-accessible code. J Manag Inf Syst. 2014; 31(3): 287-325. DOI: 10.1080/07421222.2014.995563.

Russo D: Benefits of open source software in defense environments. In Ciancarini P, Sillitti A, Succi G, et al. (eds.): Proceedings of 4th International Conference in Software Engineering for Defence Applications, vol. 422. Cham: Springer International Publishing, 2016: 123-131.

Lee JY: Agent-based modeling to assess the effectiveness of run hide fight. Thesis, Purdue University Graduate School, 2019.

Windrum P, Fagiolo G, Moneta A: Empirical validation of agent-based models: Alternatives and prospects. J Artif Soc Soc Simul. 2007; 10(2): 8.

Polyvyanyy A, Smirnov S, Weske M: Process Model Abstraction: A Slider Approach. Munich, Germany: IEEE, 2008: 325-331.

Available at https://ieeexplore.ieee.org/document/4634784. Accessed October 14, 2020.

Gross D: Fidelity implementation study group. In Simulation Interoperability Standards Organization, Orlando, Florida, Workshop 99S-SIW-167, March 1999. Available at https://www.sisostds.org/DesktopModules/Bring2mind/DMX/API/Entries/Download?Command=Core_Download&EntryId=32793&PortalId=0&TabId=105. Accessed October 14, 2020.

Kirby A, Anklam CE, Dietz JE: Active shooter mitigation for gun-free zones. In 2016 IEEE Symposium on Technologies for Homeland Security (HST), Waltham, MA, USA, May 2016: 1–6. DOI: 10.1109/THS.2016.7568957.

Bott RE, Frantz B, Koontz N, et al.: Active shooter mitigation techniques. Unpublished, 30.

Kirby A: Comparing Policy Decisions for Active Shooters Using Simulation Modeling. West Lafayette, IN: Purdue University, 2016.

Published

03/01/2022

How to Cite

Frantz, PhD, B., R. Bott, MS, and J. E. Dietz, PhD, PE. “Software Library for Agent-Based Modeling and Simulation of Active Shooter Events”. Journal of Emergency Management, vol. 20, no. 2, Mar. 2022, pp. 127-41, doi:10.5055/jem.0556.