Agent based simulation using graph processing frameworks
Agent-Based Simulations have become a powerful tool for modeling complex systems with interacting agents, especially in the fields of Economics, Biology, and the Social Sciences. However, a key limitation of Agent-Based Simulation frameworks used today, is its inefficiency in handling large-scale...
Saved in:
Main Author: | |
---|---|
Other Authors: | |
Format: | Final Year Project |
Language: | English |
Published: |
Nanyang Technological University
2024
|
Subjects: | |
Online Access: | https://hdl.handle.net/10356/181060 |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Nanyang Technological University |
Language: | English |
Summary: | Agent-Based Simulations have become a powerful tool for modeling complex systems
with interacting agents, especially in the fields of Economics, Biology, and the Social
Sciences. However, a key limitation of Agent-Based Simulation frameworks used
today, is its inefficiency in handling large-scale simulations. Traditional Agent-Based
Simulation often struggle with performance issues, particularly when simulating large
networks or populations. For instance, traffic simulations with thousands of vehicles or
social network simulations with millions of agents can result in extensive running times
and resource consumption. One of the main reasons for these performance bottlenecks
is the lack of optimization in managing the dynamic and interconnected nature of
agent interactions. In many Agent-Based Simulation implementations, agents and their
interactions are treated as discrete events, leading to inefficiencies when scaling to
larger systems. These inefficiencies are worsened by scenarios that require frequent
updates. An example would be contagion models in epidemiology, where interactions
change rapidly over time.
On the flip side, Graph processing frameworks provide a promising solution to opti-
mize Agent-Based Simulations. By representing agents as nodes and interactions as
edges in a graph, these frameworks can leverage advanced graph algorithms and the
power of parallel processing to significantly reduce computational overhead. Graph-
based Agent-Based Simulation enables efficient querying, updating, and processing of
complex networks, leading to significant performance improvements. Thus, the shift
to graph-based Agent-Based Simulation is critical for up-scaling simulations to han-
dle real-world applications involving millions of agents. By harnessing the power of
distributed computing and graph processing techniques, Agent-Based Simulations can
i
reach greater heights and in turn, become viable in modeling real-world applications
across various domains.
In light of these observations, this report aims to explore methods to improve the
performance of Agent-Based Simulations and to provide insights on the difference
in performance between the generic Agent-Based Simulation approach and a graph
processing approach. To accomplish this, a couple of common agent based simulation
applications were implemented using both approaches. The performance of these
approaches were analysed in terms of time taken across various input sizes. |
---|