120 likes | 255 Views
Distributed mega-scale Agent Management in MASS: diffusion , guarded migration, merger and termination. Cherie Wasous CSS_700 Thesis – Winter 2014 (Jan. 7). MASS v.1 enables two primary types of simulations: A Stand-alone Grid of Stationary Locations
E N D
Distributedmega-scale Agent Managementin MASS:diffusion, guarded migration,merger and termination Cherie Wasous CSS_700 Thesis – Winter 2014 (Jan. 7)
MASS v.1 enables two primary types of simulations: • A Stand-alone Grid of Stationary Locations • A Grid of Stationary Locations with Mobile Units from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java)Places.exchangeBoundary( )”
Overall MASS Framework from: Romanus, css497 summer2013, “Developing and Extending the MASS Library (Java)Places.exchangeBoundary( )” • 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 callMethod( ) {User created functions} callAll( ) callSome( ) exchangeAll( ) exchangeBoundary( ) callAll( ) manageAll( ) migrate( ) spawn( ) kill( ) callMethod( ) {User created functions}
MASS v.2 SupportsNetCDF in Parallel. Facilitates big-data analysis. from: Fukuda, et al, NSF proposal Fall 2013, “Multi-Agent-Based Parallelization of Scientific Data Analysis and Simulation”
MASS v.future Enhance Agent Management. Continue the MASS goals of: • ease adoption • improve performance
“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” 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” 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.
MASS code base known problems: Termination of agents. Fixed in source.new4 . However, many debugging messages remain, so not very usable. Congestion of many agents in manageAll. Started a fix in source.new4 . Not yet complete. Spawn of new agents not working. Appears to put into “immigrants” bag, but not using them later. Re: email 12/3/13 for details & “simple” test code. Agents Object[] callSome() does not have implementation code Currently just return null. This function was desired to be used by agent code of bionetworks & climate in Fall 2013.