Università Degli Studi di Parma D istributed S ystems G roup Discrete Event Simulation of Complex Systems with DEUS Marco Picone , Michele Amoretti, Gianni Conte InfQ 2012 - 5/6 July - Lucca, Italy
Università Degli Studi di Parma D istributed S ystems G roup - DEUS is multi-platform discrete event simulator, being developed with Java language. - It is a Open Source project available on Google Code repository (http://code.google.com/p/ deus/). - Has been used to simulate: ‣ Distributed / Peer-to-Peer Systems ‣ Vehicular Networks ‣ Social Networks ‣ Autonomic & Cloud Computing ‣ Smart Grid 2 Marco Picone - 2012 M. Amoretti, M. Agosti, F. Zanichelli, DEUS: a Discrete Event Universal Simulator, (SIMUTools 2009), Roma, Italy, March 2009.
Università Degli Studi di Parma D istributed S ystems G roup DEUS - Its API allows developers to implement (by subclassing) ‣ nodes : the parts which interact in a complex system, leading to emergent behaviors: humans, pets, cells, robots, intelligent agents, vehicles etc.; ‣ events : e.g. node births/deaths, interactions among nodes, interactions with the environment, logs, etc.; ‣ processes : either stochastic or deterministic ones, constraining the timeliness of events. 3 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup DEUS - The simulation behavior follows the standard model of discrete event simulations: ‣ initialization of system state variables and clock ‣ scheduling of initial events and, until the ending condition is true ‣ calculation of next clock time ‣ processing of the next event in the scheduling queue. - The simulation configuration is defined using an XML file containing declaration of nodes, events and processes and the relationships between them. 4 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Core Packages - Event : the simulation object being scheduled by the Engine - Node : a generic data structure collector - Resource : a generic resource associated to a node - Process : the simulation object responsible of the timing of event scheduling) - Engine : DEUS simulation engine - AutomatorParser : manages the simulation configuration file according to DEUS XML Schema 5 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup P2P Extension - p2p.event subpackage ‣ SingleConnectionEvent ‣ MultipleRandomConnectionEvent ‣ ExpTopologyConnectionEvent ‣ DisconnectionEvent ‣ LogNodeDegreeEvent - p2p.node subpackage ‣ Peer (key, list of neighbors and connection status) 6 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Visual Editor 7 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup DEUS AUTOMATOR 8 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Simulation Automator DEUS Parameters Step Automator Automator Seed 1 N GUI Aggregated Results DEUS Engine Initial Final Value Value [Average, STDEV, ...] 9 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup - Smart cities are envisioned to generate and consume overwhelming amount of data which can be harnessed to provide relevant information about their status so as to enhance the security and lifestyle of their citizens. - Location-Based Service (LBS) is an information or entertainment service, accessible with mobile devices through the mobile network and utilizing the ability to make use of the geographical position of the mobile device. - Discrete event simulation is a powerful means to aid the design of the enabling ICT infrastructure for smart cities and generally location based services, in particular as a tool to predict the impact on user behaviors to the purpose of improving key urban business processes. 10 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Mobility Model - Mobility models (MM) represent the movement of mobile users, and how their location, velocity and acceleration change over time. - MM are crucial for example to test and evaluate vehicle-to-vehicle (V2V) or vehicle-to-infrastructure (V2I) or Smart Cities networking applications in realistic scenario. - Principal characteristics are: ‣ Accurate and realistic topological maps ‣ Obstacles ‣ Node characteristics ‣ Trip and Path motion ‣ Human driving/moving patterns ‣ External influences ‣ Intersection management 11 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Virtual Track & Switch Station Model S1 S2 S5 S4 S3 12 Marco Picone - 2012 B. Zhou, K. Xu, M. Gerla. Group and swarm mobility models for ad hoc network scenarios using virtual tracks, IEEE Military Communications Conference (MILCOM) 2004.
Università Degli Studi di Parma D istributed S ystems G roup Virtual Track & Switch Station Model - First of all the developer need to define the switch stations and virtual tracks. - Switch Stations could be randomly located in the region of interest or their geographic location could be decided by the designer. - A single node or a group of nodes are initially located on a single Switch Station or along a selected Virtual Track. - At the switch station, the group or the single car can randomly select one track from all other tracks at that station for the next movement. 13 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup DEUS & Mobility - IMobilePeer: Interface of DEUS mobile peer ‣ MobilePeer: Provides fundamental implementation for a MobilePeer based on Virtual Tracks and Switch Station. - IMobilityModel: Interface for mobility model . - GeoLocation: Represents geographic point with its latitude and longitude. ‣ SwitchStation & MobilityPathPoint: Extensions of GeoLocation. - MobilityPath: Describes a virtual track with its points and specific characteristics. - MobilityPathIndex: Keeps information about node position on a specific path. - MovePeerEvent: DEUS event used to simulate the move of a peer along a path. - SwitchStationController: Load switch stations and paths from input files. 14 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Mobile Peer - MobilePeer is an extension of Node class of DEUS. It provides a dedicated API with all necessary classes and methods to support mobility. - In detail it has all methods and required callbacks to : ‣ Initialize and configure the Mobility Model ‣ Start or Stop node movements ‣ Schedule the new movement ‣ Notify the developer when the node - changes its geographic location - reaches the end of the current path and should select the new one according to its state or to environment conditions 15 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup 17 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup 18 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup 19 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup 20 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Conclusion and Future Work - DEUS has been successfully used to design and simulate several and heterogeneous scenarios V2V and V2I application, Vertical Handover Analysis and P2P & Network Coding Approach for Information Management in Smart Cities. - Simulation on a single machine reaches a linear density up to 40 Peer/Km and allowed to easily customize the simulation and the associated graphical visualization tool to easily understand the behavior of active nodes. - Future Activities ‣ New DEUS Automator, Examples and Tutorials ‣ Release the firs public version of Distributed DEUS ‣ Integration of Open Street Map to retrieve detailed virtual tracks points and to build an offline monitoring tool ‣ Complete and release the first version 3D visualization module. ‣ Introduce the possibility to simulate and visualize mobility of nodes in indoor scenarios. 21 Marco Picone - 2012
Università Degli Studi di Parma D istributed S ystems G roup Marco Picone http://dsg.ce.unipr.it/picone http://www.mendeley.com/profiles/marco-picone/ InfQ 2012 - 5/6 July - Lucca, Italy
Recommend
More recommend