Research Article
Open Access Peer-reviewed

Temporal Analysis of an IoT Distributed Ledger Simulation using NetLogo and Agents.jl

Peter Kimemiah Mwangi1,, Stephen T. Njenga1, Gabriel Ndung’u Kamau1

1School of Computing Information Technology, Murang’a University of Technology, Murang’a County, Kenya

Journal of Computer Sciences and Applications. 2025, 13(1), 16-28. DOI: 10.12691/jcsa-13-1-2
Received May 16, 2025; Revised June 18, 2025; Accepted June 26, 2025

Abstract

Agent-Based Modelling (ABM) tools provide a cost-effective way to simulate complex systems like an Internet of Things Distributed Ledger Technology (IoT-DLT) networks, where nodes operate as autonomous agents. While physical testbeds are expensive, ABMs offer scalable and efficient alternatives. However, few studies compare ABM performance on standard consumer hardware. In this research, we evaluate NetLogo 6.3 and Agents.jl (Julia 1.9) by simulating an IoT-DLT model across two laptop configurations. Results show that Agents.jl runs up to 9× faster on newer hardware and 4× faster on older hardware compared to NetLogo, though it requires more setup. NetLogo remains user-friendly but underutilises system resources like GPU and multicore processing. The research uses inferential analysis tools, such as regression analysis, to rigorously evaluate the performance differences between the ABM tools and hardware configurations. This research helps researchers choose efficient ABM tools for large-scale simulations on personal computers, demonstrating that emerging tools like Agents.jl are promising candidates for future simulations.

Keywords:

Agent Based Modelling, Distributed Ledger Technology, Internet of Things, Julia, NetLogo, Performance, Simulation
[1]  Michael Wooldridge., An Introduction to MultiAgent Systems, 1st Edition | Wiley, 1st ed. 2002. Accessed: Jan. 17, 2022. [Online]. Available: https://www.wiley.com/en-sg/ An+ Introduction+ to+MultiAgent+Systems%2C+2nd+Edition-p-9780470519462.
 
[2]  J. M. Epstein, ‘Agent-based computational models and generative social science’, Complexity, vol. 4, no. 5, pp. 41–60, May 1999.View Article
 
[3]  K. Batool and M. A. Niazi, ‘Modeling the internet of things: a hybrid modeling approach using complex networks and agent-based models’, Complex Adapt. Syst. Model., vol. 5, no. 1, p. 4, Mar. 2017.View Article
 
[4]  M. Brumbulli and E. Gaudin, ‘Towards Model-Driven Simulation of the Internet of Things’, in Complex Systems Design & Management Asia, M.-A. Cardin, S. H. Fong, D. Krob, P. C. Lui, and Y. H. Tan, Eds., Cham: Springer International Publishing, 2016, pp. 17–29.View Article
 
[5]  S. Abar, G. K. Theodoropoulos, P. Lemarinier, and G. M. P. O’Hare, ‘Agent Based Modelling and Simulation tools: A review of the state-of-art software’, Comput. Sci. Rev., vol. 24, pp. 13–33, May 2017.View Article
 
[6]  Cynthia Nikolai and Gregory Madey, ‘Tools of the Trade: A Survey of Various Agent Based Modeling Platforms’, J. Artif. Soc. Soc. Simul. Vol 12 No 2 2, vol. 12, Mar. 2009, [Online]. Available: https://www.jasss.org/12/2/2.html.
 
[7]  Z. Wrona et al., ‘Overview of Software Agent Platforms Available in 2023’, Information, vol. 14, no. 6, p. 348, Jun. 2023.View Article
 
[8]  Modeling Emergent Phenomena with NetLogo’. 2001. [Online]. Available: http://ccl.northwestern.edu/papers/MEE/.
 
[9]  S. Luke, C. Cioffi-Revilla, L. Panait, K. Sullivan, and G. Balan, ‘MASON: A Multiagent Simulation Environment’, SIMULATION, vol. 81, no. 7, pp. 517–527, Jul. 2005.View Article
 
[10]  J. Kazil, D. Masad, and A. Crooks, ‘Utilizing Python for Agent-Based Modeling: The Mesa Framework’, in Social, Cultural, and Behavioral Modeling, R. Thomson, H. Bisgin, C. Dancy, A. Hyder, and M. Hussain, Eds., Cham: Springer International Publishing, 2020, pp. 308–317.View Article
 
[11]  P. Richmond, R. Chisholm, P. Heywood, M. K. Chimeh, and M. Leach, ‘FLAME GPU 2: A framework for flexible and performant agent based simulation on GPUs’, Softw. Pract. Exp., vol. 53, no. 8, pp. 1659–1680, Aug. 2023.View Article
 
[12]  G. Datseris, A. R. Vahdati, and T. C. DuBois, ‘Agents.jl: A performant and feature-full agent based modelling software of minimal code complexity’, SIMULATION, p. 003754972110688, Jan. 2022.View Article
 
[13]  M. Jelasity, ‘Gossip-based Protocols for Large-scale Distributed Systems’, Doctorial, University of Szeged, Szeged, 2013.
 
[14]  R. Albert and A.-L. Barabási, ‘Statistical mechanics of complex networks’’’, Rev Mod Phys, vol. 74, no. 1, pp. 47-97, Jan. 2002.View Article
 
[15]  T. Alsboui, Y. Qin, R. Hill, and H. Al-Aqrabi, ‘Towards a Scalable IOTA Tangle-Based Distributed Intelligence Approach for the Internet of Things’, in Intelligent Computing, K. Arai, S. Kapoor, and R. Bhatia, Eds., in Advances in Intelligent Systems and Computing, vol. 2. Cham: Springer International Publishing, 2020, pp. 487–501.View Article
 
[16]  M. S. Alaslani, ‘Toward Improving the Internet of Things: Quality of Service and Fault Tolerance Perspectives’, Doctorial, King Abdullah University of Science and Technology, Thuwal, Kingdom of Saudi Arabia, 2021. [Online]. Available: https://repository.kaust.edu.sa/handle/10754/668723.
 
[17]  R. Albert and A.-L. Barabási, ‘Statistical mechanics of complex networks’’, Rev Mod Phys, vol. 74, no. 1, pp. 47-97, Jan. 2002.View Article
 
[18]  E. Beeker and M. Koehler, ‘NetLogo Meets Discrete Event Simulation’, in Proceedings of the 2018 Conference of the Computational Social Science Society of the Americas, T. Carmichael and Z. Yang, Eds., in Springer Proceedings in Complexity. Cham: Springer International Publishing, 2020, pp. 145–164.View Article
 
[19]  M. Bouchet-Valat and B. Kamiński, ‘DataFrames.jl : Flexible and Fast Tabular Data in Julia’, J. Stat. Softw., vol. 107, no. 4, 2023.View Article
 
[20]  ‘Getting Started StatsBase.jl’. Accessed: Jan. 09, 2025. [Online]. Available: https://juliastats.org/StatsBase.jl/stable/.
 
[21]  Simon Kornblith, ‘HypothesisTests.jl a Julia package that implements a wide range of hypothesis tests.’ Accessed: Apr. 27, 2025. [Online]. Available: https:// juliastats.org/ HypothesisTests.jl/dev/.
 
[22]  Douglas Bates, ‘GLM.jl: Linear and generalized linear models in Julia’. Accessed: Apr. 27, 2025. [Online]. Available: https://juliastats.org/GLM.jl/stable/.
 
[23]  Thomas Breloff, ‘Plots.jl: powerful convenience for visualization in Julia’. Accessed: Apr. 27, 2025. [Online]. Available: https://docs.juliaplots.org/stable/.
 
[24]  Paulo Jabardo, ‘CurveFit.jl:A package that implements a few curve fitting functions.’, GitHub. Accessed: Apr. 27, 2025. [Online]. Available: https:// github.com/ pjabardo/ CurveFit.jl/blob/master/README.md.
 
[25]  Jason Bertsche, Seth Tisue, Robert G, and Jeremy B, ‘NetLogo Profiler Extension: Improve Code Tune Performance’. Accessed: Apr. 27, 2025. [Online]. Available: https:// ccl.northwestern.edu/ netlogo/4.0/docs/profiler.html.
 
[26]  Cameron Davidson-Pilon; et al., ‘Jupyter Notebook Viewer’. Accessed: Jan. 18, 2021. [Online]. Available: https:// nbviewer.jupyter.org/github/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers/ blob/ master/ Prologue/ Prologue.ipynb.
 
[27]  S. Danisch and J. Krumbiegel, ‘Makie.jl: Flexible high-performance data visualization for Julia’, J. Open Source Softw., vol. 6, no. 65, p. 3349, Sep. 2021.View Article
 
[28]  Jeff Bezanson, Stefan Karpinski, and Viral B. Shah, ‘Profiling.jl: Performance Profiling to identify performance bottlenecks’. Accessed: Apr. 27, 2025. [Online]. Available: https:// docs.julialang.org/ en/v1/manual/profile/.
 
[29]  M. Madiajagan and S. S. Raj, ‘Parallel Computing, Graphics Processing Unit (GPU) and New Hardware for Deep Learning in Computational Intelligence Research’, in Deep Learning and Parallel Computing Environment for Bioengineering Systems, A. K. Sangaiah, Ed., Academic Press, 2019, pp. 1–15.View Article