SIMULATION ASSIGNMENT THE UITHOFLIJN: Workplan
(from www.uithoflijn.nl)
General
- Work in groups of 3 persons (recommended!) or 2 persons.
- The deliverables consist of (an) implemented simulation model(s) and
a report in PDF.
- You have to implement a discrete-event simulation
- The simulation has to be implemented in a standard imperative programming
language such as Java or C#.
- The devil is in the detail: Experience has learned that programming simulations is prone to nasty bugs; solving these may take a very large amount of time. Therefore pair-programming is strongly advised.
- You have to fully implement the simulation by yourself and are not allowed
to use any simulation libraries or frameworks.
- You have to use probability distributions for driving and dwell times of the tram. The number of passengers entering and exiting the tram has to be stochastic as well.
- You may use libraries for random number generation, i.e. for driving times, dwell times, passengers entering and exiting the tram.
- The report has to be between 10 and 20 pages of 11 pt A4 . This excludes
pictures and tables.
The report contains at least:
- Problem description
- Assumptions
- Explanation of the models:
- Events and event handlers
- Performance measures
- State
- Input analysis:
- modelling of input data from the given data files.
- choice and motivation for applied probability distributions
- Output analysis: experimental results from your own model:
- Questions to be answered by the experiments
- Description of the investigated scenarios including all
relevant parameter settings and performance measures
- Number of runs
- Tables (at least the most interesting ones)
- Graphs
- Observations from your tables and graphs
- Statistical analysis. The minimum requirement is to find confidence intervals for comparing two different scenarios. You can make a selection of the most interesting combinations (select at least 10). Additional analyis such as Comparisons with a standard', All pairwise comparisons, or Ranking and selection are optional (will improve your grade).
- Table with results from the artificial input model (see below).
- Reflection on the content and the working process.
- Conclusions
- Statement of the contributions in the individual group members.
- Note that a complete report of the assignment is required to pass the course, in particular you have to include output analysis and results for the validation files.
- For reporting the standard academic rules with respect to references and plagiarism hold.
- The deadline and hand-in instructions given in the week schedule.
- The report has to be in PDF-format.
- We compare the work that is handed in (including code) to deliverables of previous years to prevent fraud.
-
You have a mandatory feedback discussion on the Simulation Assignment
in which you can clarify some parts your work that we have questions about. The grade will be decided after the discussion.
See week schedule for the form to make an appointment.
- There is no unique solution leading to the perfect grade. Note that different assumptions in your model may lead to different results. In an educational setting, this is OK. If you clearly describe your assumptions, they are reasonable and match your computational results, this in general hardly has consequences for your grade. Disclaimer: Assumptions which are obviously wrong, very impractical or make the assignment extremely easy do have a negative impact.
- The different parts are graded as follows:
- Model and performance measures: 4 points
- Code quality: 0.5 point
- Input analysis: 2 points
- Output analysis: 2.5 points
- Optional items: 2 points
- In most cases, all groups members get the same grade. However, exceptions are possible if there are large differences in quality or quantity of the individual contributions.
- For questions you can contact practicum supervisor Roel van den Broek.
Milestones
There are 2 intermediate milestones.
At each milestone you have a feedback discussion and/or demo with a practicum supervisor.
You not have to hand-in stuff. You should bring written material and your laptop and explain to the practicum supervisor what you have done.
The supervisor marks if you obtain a `pass' for the milestone. A `pass' for both milestones is required for additional examination.
You only obtain a pass if you attended the milestone meeting in person. The milestones
are as follows:
- You should have finished:
- your simulation model including assumptions
- You should have finished:
- the implementation of your simulation model
- input analysis
Please make an appointment through the forms in the
week schedule.
Results for output validation
Consider the following scenario:
- Passengers arrive according to Poisson process based on artificial file 3 (see next section, 9:00-16:00: 4000 passengers per hour in both directions)
- Driving times come from the FAKE discrete distribution with r the average driving time:
- 40% chance of 0.8 * r
- 30% chance of r
- 20% chance of 1.2 * r
- 10% chance of 1.4 * r
- A frequency of 12 trams per hour.
With model 1) i.e., if crossing the switch hardly takes time but a tram can only enter the switch after it has been empty for 1 minute, we obtained the following results for the time interval 7AM-7PM:
-
Average waiting time of the passengers = 163.3 seconds
- Percentage of trams with more than 1 minute departure delay = 5.1
With model 2) i.e., if crossing the switch takes 1 minute, we obtained the following results for the time interval 7AM-7PM:
-
Average waiting time of the passengers =366.9 seconds
- Percentage of trams with more than 1 minute departure delay =81.9
Artificial input files for validation
-
In this assignment you design your own realistic passenger arrival model on the
basis of the real data of line 12 and the given forecast. This is the model on which you base your computational experiments and output analysis.
In this model the arrival rate can fluctuate per 15 minutes.
- Besides that there are artificial passenger arrival models. These are for validation purposes only and therefore are simpler than the realistic model. (Of course you also have to
do your own input analysis and define a realistic model.)
- The artificial input model derived from our csv files.
In the artificial input model, in each of the periods 7-9, 9-16, 16-18,
18-21.30 the average number of passengers per time unit (i.e. the
rate of the Poisson proces) is constant. For each of these periods the
file gives for each stop and each direction the average TOTAL number of
passenger the enter and exit during this period, respectively.
For example, in file 01, between 7.00-9.00 at stop WKZ on average 302 passengers enter the tram. Hence the strong fluctuations in the data of line 12
do not apply here.Here the passenger flow is more stable.
The files can be found in the set of data files.
- For these data files, you have to run the simulation with a frequency of 16 per hour from 6.00-21.30 and a turn around time q=4. You have to report the performance from 7:00-19:00 and include the results
in your report in the following table.
File |
Average waiting time (s) |
Punctuality ( percentage with a departure delay > 1 min) |
File 1 |
|
|
File 2 |
|
|
File 3 |
|
|
File 4 |
|
|
File 5 |
|
|