Improving the performance of distributed multi-agent based simulation

This research investigates approaches to improve the performance of multi-agent based simulation (MABS) applications executed in distributed computing environments. MABS is a type of micro-level simulation used to study dynamic systems consisting of interacting entities, and in some cases, the numbe...

Full description

Bibliographic Details
Main Author: Mengistu, Dawit
Format: Doctoral Thesis
Language:English
Published: Karlskrona : Blekinge Institute of Technology 2011
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:bth-00485
http://nbn-resolving.de/urn:isbn:978-91-7295-198-3
id ndltd-UPSALLA1-oai-DiVA.org-bth-00485
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-bth-004852015-07-01T04:49:14ZImproving the performance of distributed multi-agent based simulationengMengistu, DawitKarlskrona : Blekinge Institute of Technology2011agent based simulationMABSdistributed systemsapplication performanceThis research investigates approaches to improve the performance of multi-agent based simulation (MABS) applications executed in distributed computing environments. MABS is a type of micro-level simulation used to study dynamic systems consisting of interacting entities, and in some cases, the number of the simulated entities can be very large. Most of the existing publicly available MABS tools are single-threaded desktop applications that are not suited for distributed execution. For this reason, general-purpose multi-agent platforms with multi-threading support are sometimes used for deploying MABS on distributed resources. However, these platforms do not scale well for large simulations due to huge communication overheads. In this research, different strategies to deploy large scale MABS in distributed environments are explored, e.g., tuning existing multi-agent platforms, porting single-threaded MABS tools to distributed environment, and implementing a service oriented architecture (SOA) deployment model. Although the factors affecting the performance of distributed applications are well known, the relative significance of the factors is dependent on the architecture of the application and the behaviour of the execution environment. We developed mathematical performance models to understand the influence of these factors and, to analyze the execution characteristics of MABS. These performance models are then used to formulate algorithms for resource management and application tuning decisions. The most important performance improvement solutions achieved in this thesis include: predictive estimation of optimal resource requirements, heuristics for generation of agent reallocation to reduce communication overhead and, an optimistic synchronization algorithm to minimize time management overhead. Additional application tuning techniques such as agent directory caching and message aggregations for fine-grained simulations are also proposed. These solutions were experimentally validated in different types of distributed computing environments. Another contribution of this research is that all improvement measures proposed in this work are implemented on the application level. It is often the case that the improvement measures should not affect the configuration of the computing and communication resources on which the application runs. Such application level optimizations are useful for application developers and users who have limited access to remote resources and lack authorization to carry out resource level optimizations. Doctoral thesis, comprehensive summaryinfo:eu-repo/semantics/doctoralThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:bth-00485urn:isbn:978-91-7295-198-3Local oai:bth.se:forskinfo81338F6B28BD0664C1257816004261E3Blekinge Institute of Technology Doctoral Dissertation Series, 1653-2090 ; 4application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Doctoral Thesis
sources NDLTD
topic agent based simulation
MABS
distributed systems
application performance
spellingShingle agent based simulation
MABS
distributed systems
application performance
Mengistu, Dawit
Improving the performance of distributed multi-agent based simulation
description This research investigates approaches to improve the performance of multi-agent based simulation (MABS) applications executed in distributed computing environments. MABS is a type of micro-level simulation used to study dynamic systems consisting of interacting entities, and in some cases, the number of the simulated entities can be very large. Most of the existing publicly available MABS tools are single-threaded desktop applications that are not suited for distributed execution. For this reason, general-purpose multi-agent platforms with multi-threading support are sometimes used for deploying MABS on distributed resources. However, these platforms do not scale well for large simulations due to huge communication overheads. In this research, different strategies to deploy large scale MABS in distributed environments are explored, e.g., tuning existing multi-agent platforms, porting single-threaded MABS tools to distributed environment, and implementing a service oriented architecture (SOA) deployment model. Although the factors affecting the performance of distributed applications are well known, the relative significance of the factors is dependent on the architecture of the application and the behaviour of the execution environment. We developed mathematical performance models to understand the influence of these factors and, to analyze the execution characteristics of MABS. These performance models are then used to formulate algorithms for resource management and application tuning decisions. The most important performance improvement solutions achieved in this thesis include: predictive estimation of optimal resource requirements, heuristics for generation of agent reallocation to reduce communication overhead and, an optimistic synchronization algorithm to minimize time management overhead. Additional application tuning techniques such as agent directory caching and message aggregations for fine-grained simulations are also proposed. These solutions were experimentally validated in different types of distributed computing environments. Another contribution of this research is that all improvement measures proposed in this work are implemented on the application level. It is often the case that the improvement measures should not affect the configuration of the computing and communication resources on which the application runs. Such application level optimizations are useful for application developers and users who have limited access to remote resources and lack authorization to carry out resource level optimizations.
author Mengistu, Dawit
author_facet Mengistu, Dawit
author_sort Mengistu, Dawit
title Improving the performance of distributed multi-agent based simulation
title_short Improving the performance of distributed multi-agent based simulation
title_full Improving the performance of distributed multi-agent based simulation
title_fullStr Improving the performance of distributed multi-agent based simulation
title_full_unstemmed Improving the performance of distributed multi-agent based simulation
title_sort improving the performance of distributed multi-agent based simulation
publisher Karlskrona : Blekinge Institute of Technology
publishDate 2011
url http://urn.kb.se/resolve?urn=urn:nbn:se:bth-00485
http://nbn-resolving.de/urn:isbn:978-91-7295-198-3
work_keys_str_mv AT mengistudawit improvingtheperformanceofdistributedmultiagentbasedsimulation
_version_ 1716806907731116032