Date post: | 26-Dec-2015 |
Category: |
Documents |
Upload: | allan-smith |
View: | 215 times |
Download: | 2 times |
Distributed Multi-Agent Managementin a parallel-programming
simulation and analysis environment:
diffusion, guarded migration,merger and termination
Cherie WasousCSS_700 Thesis Research – Autumn 2013
“parallel-programming simulation and analysis environment”
MASS (Multi-Agent Spatial Simulation ) parallel computing software library
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
“parallel-programming simulation and analysis environment”
MASS (Multi-Agent Spatial Simulation ) parallel computing software library
Simplifies the task of creating and running parallel applications across multiple computers and CPU cores.
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
“parallel-programming simulation and analysis environment”
MASS (Multi-Agent Spatial Simulation ) parallel computing software library
Simplifies the task of creating and running parallel applications across multiple computers and CPU cores.
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
“parallel-programming simulation and analysis environment”
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
MASS v.1 enables two primary types of simulations:
1. A Stand-alone Grid of Stationary Locations Example: A map and its grid of sub-locations
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
MASS v.1 enables two primary types of simulations:
1. A Stand-alone Grid of Stationary Locations Example: A map and its grid of sub-locations
2. A Grid of Stationary Locations with Mobile UnitsExample: A map, its grid of sub-locations, and mobile units
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
MASS Library1. Stand-alone Grid of Stationary Locations
Composed of:
The Grid of Locationsreferred to as Places in MASS
contains the grid of stationary locations
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
MASS Library1. Stand-alone Grid of Stationary Locations
Composed of:
The Grid of Locationsreferred to as Places in MASS
contains the grid of stationary locations
Single Stationary Location referred to as a Place object in MASS
contains basic information about the local placeExample: local Temperature
( 4, 2 )
Temp = #
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
MASS Library2. Grid of Stationary Locations with Mobile Units
Composed of:
Collection of Mobile Unitsreferred to as “Bag of” Agents in MASS
each Place location has a “Bag of” Agents
contains the mobile units for the Place location
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
MASS Library2. Grid of Stationary Locations with Mobile Units
Composed of:
Collection of Mobile Unitsreferred to as “Bag of” Agents in MASS
each Place location has a “Bag of” Agents
contains the mobile units for the Place location
Mobile Unitreferred to as Agent in MASS
contains basic information about the mobile unitExample: Amount of sugar an ant (agent) has consumed
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
Overall MASS Framework
Places
• Maintain & manages the Place locations
• Manages exchange
between the Place
locations
callAll( ) callSome( )exchangeAll( )exchangeBoundary( )
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
Overall MASS Framework
Places
• Maintain & manages the Place locations
• Manages exchange
between the Place
locations
Place
• Maintains Place location data
• Provides a user software interface
callAll( ) callSome( )exchangeAll( )exchangeBoundary( )
callMethod( )
{User created functions}
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
Overall MASS Framework
Places
• Maintain & Manages the Place locations
• Manages exchange
between the Place
locations
Place
• Maintains Place location data
• Provides a user software interface
Agents
• Maintains & Manages the Agent units
• Manages the exchange and migration of Agent unitscallAll( ) callSome( )
exchangeAll( )exchangeBoundary( )
callMethod( )
{User created functions}callAll( ) manageAll( )migrate( ) spawn( ) kill( )
from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java) Places.exchangeBoundary( )”
Overall MASS Framework
Places
• Maintain & Manages the Place locations
• Manages exchange
between the Place
locations
Place
• Maintains Place location data
• Provides a user software interface
Agents
• Maintains & Manages the Agent units
• Manages the exchange and migration of Agent units
Agent
• Maintains the Agent data
• Provides a user software interface
callAll( ) callSome( )exchangeAll( )exchangeBoundary( )
callMethod( )
{User created functions}callAll( ) manageAll( )migrate( ) spawn( ) kill( )
callMethod( )
{User created functions}
MASS execution model
from: Chuang, MS Thesis, “Design and Qualitative/Quantative Analysis of Multi-Agent Spatial Simulation Library”
from: Fukuda, et al, NSF proposal Fall 2013, “Multi-Agent-Based Parallelization of Scientific Data Analysis and Simulation”
MASS v.2 Supports NetCDF in Parallel.Facilitates big-data analysis.
MASS v.future
Enhance Multi-Agent Management.
Eases adoption and improves performance for scientific data analysis and simulation.
“diffusion, guarded migration, merger, and termination”
Diffusion• MASS currently can:
• Create an agent at every place element• Create an agent at specified place elements• Create a large number of agents and spread across the place elements
“diffusion, guarded migration, merger, and termination”
Diffusion• MASS currently can:
• Create an agent at every place element• Create an agent at specified place elements• Create a large number of agents and spread across the place elements
• MASS future enhancements:• Improve efficiency of creation
• more local ; reducing communication between nodes and between threads
• “Diffusion” option – where a few agents are spread across the place elements at each thread, and they efficiently clone themselves locally
• to all adjacent place elements ; leaving a footprint where visited
“diffusion, guarded migration, merger, and termination”
Diffusion• MASS currently can:
• Create an agent at every place element• Create an agent at specified place elements• Create a large number of agents and spread across the place elements
• MASS future enhancements:• Improve efficiency of creation
• more local ; reducing communication between nodes and between threads
• “Diffusion” option – where a few agents are spread across the place elements at each thread, and they efficiently clone themselves locally
• to all adjacent place elements ; leaving a footprint where visited
• Continue Focus on User Interface: Keep it Simple, Powerful and Efficient.
“diffusion, guarded migration, merger, and termination”
Guarded Migration• MASS currently does not limit the number of agents migrating into a single
place element. However,• Traffic Simulation – limit just one car in a space• Epidemic Simulations – limit each household to X number of people
“diffusion, guarded migration, merger, and termination”
Guarded Migration• MASS currently does not limit the number of agents migrating into a single
place element. However,• Traffic Simulation – limit just one car in a space• Epidemic Simulations – limit each household to X number of people
• MASS future enhancements:• Allow user to specify maximum agents per single place element• Guarded Migration – using a fair, deterministic, distributed arbitration technique
“diffusion, guarded migration, merger, and termination”
Guarded Migration• MASS currently does not limit the number of agents migrating into a single
place element. However,• Traffic Simulation – limit just one car in a space• Epidemic Simulations – limit each household to X number of people
• MASS future enhancements:• Allow user to specify maximum agents per single place element• Guarded Migration – using a fair, deterministic, distributed arbitration technique
• Continue Focus on User Interface: Keep it Simple, Powerful and Efficient.
“diffusion, guarded migration, merger, and termination”
Merger, and Termination• MASS currently does not support agent merge command.
• Cumbersome for user to write code for this.
• MASS currently only supports kill command for single agent. • Cumbersome and inefficient for user to kill each agent.
“diffusion, guarded migration, merger, and termination”
Merger, and Termination• MASS currently does not support agent merge command.
• Cumbersome for user to write code for this.
• MASS currently only supports kill command for single agent. • Cumbersome and inefficient for user to kill each agent.
• Continue Focus on User Interface: Keep it Simple, Powerful and Efficient.
Questions ???