0LAUK0 2015 01 Simulation: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
No edit summary
Line 48: Line 48:


Hints: Use mouse wheel to switch between charts and click on bars will show detailed data.
Hints: Use mouse wheel to switch between charts and click on bars will show detailed data.
== Simulator Setup ==
The simulator consists of 2 parts, logic and GUI.
==== Logic ====
The logic is implemented upon Discrete Event Simulation Frame by using React.NET and compiled into a dll for later integration.
http://reactnet.sourceforge.net/index.html
The simulation logic has 3 process running.
; Simulator : The simulator process is responsible for spawn all other processes and act as environment by adding passengers to bus stops.
; Passenger : The passenger process is responsible for counting the on/off time.
; Bus : The bus process is responsible to drive alone the destination list provided by the scheduler.
The scheduler is an interface which will be called by the Bus process each iteration for updating the destination list.
==== GUI ====
The GUI is written in C# using WPF for fast demonstration purpose. The data is displayed by using Modern UI Charts library.
http://modernuicharts.codeplex.com/
==== Assumption and Approximations ====
There are three factors we used to calculate the general satisfaction.
; Waiting time : The weight is 8.05.
; Crowdeness : The weight is 7.97.
; Travel time : The weight is 7.29.
These weight are taken from the survey result of people who take bus often.
The crowdness of each passenger is normalized to 0.0 - 1.0 by evaluating <math>\frac {Passenger Number}{Max Passenger Number}</math>


== Result ==
== Result ==

Revision as of 21:40, 11 October 2015

Quick Links
Home
Content Plan Report Simulation
Log Week1 Week2 Week3 Week4 Week5 Week6 Week7

The simulation test several different scheduling strategies and validate the outcome by evaluating the general happiness.

Simulator

Discrete Event Simulation based on React.NET framework.


Source code is available on GitHub under GPL V3 license.

Source Code


Compiled binary is available from dropbox

Executable


Hints: Use mouse wheel to switch between charts and click on bars will show detailed data.

Simulator Setup

The simulator consists of 2 parts, logic and GUI.

Logic

The logic is implemented upon Discrete Event Simulation Frame by using React.NET and compiled into a dll for later integration.

http://reactnet.sourceforge.net/index.html

The simulation logic has 3 process running.

Simulator
The simulator process is responsible for spawn all other processes and act as environment by adding passengers to bus stops.
Passenger
The passenger process is responsible for counting the on/off time.
Bus
The bus process is responsible to drive alone the destination list provided by the scheduler.

The scheduler is an interface which will be called by the Bus process each iteration for updating the destination list.

GUI

The GUI is written in C# using WPF for fast demonstration purpose. The data is displayed by using Modern UI Charts library.

http://modernuicharts.codeplex.com/

Assumption and Approximations

There are three factors we used to calculate the general satisfaction.

Waiting time
The weight is 8.05.
Crowdeness
The weight is 7.97.
Travel time
The weight is 7.29.

These weight are taken from the survey result of people who take bus often.

The crowdness of each passenger is normalized to 0.0 - 1.0 by evaluating [math]\displaystyle{ \frac {Passenger Number}{Max Passenger Number} }[/math]


Result