A fork of the Opportunistic Network Environment simulator (the ONE) featuring crisis crowd movement.
Generated Javadoc can be found at : https://davidsan.github.io/one or can be generated using doc/create_docs.sh script.
Repository can be found at : https://github.com/davidsan/one.
For more information on the ONE, visit http://www.netlab.tkk.fi/tutkimus/dtn/theone.
Crowd movement is implemented with the DangerMovement class and his sub-models (EvacuationCenterMovement, HomeMovement, RandomPathMapBasedMovement, ShortestPathMapBasedPoiMovement, SosMovement).
Closed roads are implemented using AccidentGenerator which generate AccidentEvent. Those events make changes to the MapNode's instances by calling the close() method.
This fork is based on version 1.5.1 RC2 of the ONE simulator.
core.DTNHost: added known positions, known accidents, warned and stucked states...core.NetworkInterface: disable interface when node is at evacuation centercore.SimScenario: store the time at which the number of nodes to save has been reached
movement.DangerMovement: danger movement modelmovement.EvacuationCenterMovement: movement model for nodes at evacuation centersmovement.HomeMovement: movement model for nodes at homemovement.RandomPathMapBasedMovement: movement model for node walking randomlymovement.ShortestPathMapBasedPoiMovement: movement model for node walking to an evacuation centermovement.SosMovement: movement model for stranded nodesmovement.map.PointsOfInterestEvac: POI for evacuation centersmovement.map.DijkstraPathFinder: Dijkstra path finder with accidents discoverymovement.map.DijkstraPathFinderOptimal: same as DijkstraPathFinder but only compute when necessarymovement.HotspotMovement: movement model for hotspot nodes
routing.DirectDelivery2: direct delivery router with explicit removal of delivered messsagesapplications.DangerApplication: send alert message with known locations of other hosts and known accidents, and process received messagesapplications.HotspotApplication: application for hotspot, only process received messages created from DangerApplication
input.EmptyEvent: an empty event doing nothinginput.AccidentEvent: an event for closing randomly selected junctionsinput.AccidentGenerator: generator of accidents
movement.map.MapNode: added new property for closed map nodemovement.map.SimMap: added evacuation centers' locationsgui.playfield.NodeGraphic: for coloring the node according to the movement modelgui.playfield.MapGraphic: for coloring the road closedgui.GUIControls: raised default speed in GUI mode
db.Database: handling database connectionsdb.Queries: reader for queries properties filedb/queries.properties: properties files for SQL requestreport.ReportDB: generic class for report into SQL databasereport.MovementReportDB: movement report into databasereport.LocationReportDB: location report into databasereport.TimeReportDB: various time report into databasereport.ReportCSV: generic class for report into CSV filereport.LocationReportCSV: location report into CSV file
tools/computeWorldSize.sh: compute MovementModel.worldSize given a WKT map filetools/pretty_print_db.sh: shortcut to display a SQLite databasetest.AllWorkingTests: JUnit tests for passing tests as of v1.5.1 RC2 of the ONE simulator.travis.yml: Travis-CI filebuild.xml: Ant file
bench/build-project.sh: compile the project in a cluster's nodebench/csv2db.sh: convert CSV file into SQLite databasebench/launch-jobs.sh: submit multiple ONE simulation jobs to the OAR batch schedulerbench/process-csv.sh: convert multiple CSV files into SQLite databases using cluster's nodesbench/task.sh: single job submitted by launch-jobs.sh
santiago.wkt: surface : unknown, population : unknownHelsinkiMedium/roads.wkt: surface : 60 km^2, population : 124K, population 16-74 years old using a smartphone : 60Kusantiago.wkt: surface : 2,5 km^2, population : 26Kusantiago2.wkt: surface : 2,5 km^2, population : 26K (cropped roads)usach.wkt: surface : 0.8 km^2, population : 6Ksantiago_center.wkt: surface : 30 km^2, population 437K
Associated POI files can be found with the map name suffixed with _pois (eg. santiago_center_pois.wkt)
usantiago2 (1 POI) and santiago_center (3 POI) have their POIs located at various hospitals' location.
An example of scenario can be found in the danger_settings.txt file.
- Virginie Collombon (
virginie.collombon {at} gmail.com) - David San (
davidsanfr {at} gmail.com)