Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the...
Transcript of Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the...
![Page 1: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/1.jpg)
Simulation
![Page 2: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/2.jpg)
What is simulation?
Simple synonym: imitationWe are interested in studying a systemInstead of experimenting with the system
itself we experiment with a model of the system
![Page 3: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/3.jpg)
Ways to study a system
SystemExperiment with the
actual systemExperiment with a model of the system
Experiment with a physical model
A conceptual model
Analytical solution Simulation
![Page 4: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/4.jpg)
Why not experiment with the system itself?
• It might be dangerous (control system in a nuclear power plant)
• The system does not exist yet• It is expensive to experiment with the
system• It is impossible to experiment with a system
![Page 5: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/5.jpg)
Different kinds of systems
• Continuous systems– Examples: temperature in an engine, air
pressure around an aeroplane etc– Are usually modelled by differential equations
• Discrete systems– Examples: systems described by queues
• Hybrid systems – Both continuous and discrete
![Page 6: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/6.jpg)
Application areas• Communication systems • Computer systems performance• Transportation• Manufacturing and material handling• Health systems• Public services• Military systems• ,,,,,
![Page 7: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/7.jpg)
Advantages of simulation
• Makes it possible to predict impact of changes• Makes it possible to look at detailed behaviour• Can give a good understanding of a system• Can visualize a system• Find bottlenecks in a system• Gives a possibility to train a team
![Page 8: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/8.jpg)
Disadvantages of simulation
• Model building requires special training• Time consuming and expensive• Limitations of accuracy (rare events)
![Page 9: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/9.jpg)
Modelling concepts
• A model is an abstract representation of a system
• A discrete model has– State variables – Events that change the state– Rules that describes what shall happen at an
event
![Page 10: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/10.jpg)
Two approaches to simulation
• Event-scheduling method• Process-interaction method
![Page 11: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/11.jpg)
Event-scheduling method
The following is needed:• A description of the state• The events that can occur• Rules describing what will happen if an
event occurs
![Page 12: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/12.jpg)
The event list
Keeps track of when events shall happen
T1
E1
A1
T2
E2
A2
T3
E3
A3
T4
E4
A4
Ti = time when event Ei will take placeAi = attributes to event IThe list is sorted: T1 < T2 < T3 < T4
![Page 13: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/13.jpg)
How a simulation is performed
1. Extract the first element in the event list2. Set Time = the time of the extracted event3. Update the state of the system and insert
new events if needed4. If not finished, Go to 1
![Page 14: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/14.jpg)
An example: a queuing system
Queue
Server
DeparturesArrivals
Blocked
It might be of interest to find the probability of rejection mean time spent in the system mean number of customers in the system
![Page 15: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/15.jpg)
The state description
Assume that we want to find the mean number of customers in the queue.
N = number of customers in the system
The appropriate state description depends on the results we desire
![Page 16: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/16.jpg)
Events that may take place
Arrival (new customer come) Departure (when service is ready) Measurement (does not change the state)
![Page 17: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/17.jpg)
What we also need to know
Assume the following:
• The mean time between arrivals is exponentially distributed (exp(a))
• The service time is exponentially distributed (exp(s))
• The number of slots in the queue is infinite
![Page 18: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/18.jpg)
Rule at arrival
N := N + 1;
If N = 1 then
add departure to event list;
Add a new arrival to event list;
When we add an arrival event we have to draw a random number (exponentially distributed)
![Page 19: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/19.jpg)
Rule at departure
N := N - 1;
If N > 0 then
add departure to event list;
![Page 20: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/20.jpg)
Rule at measurement
Write(N);Add a new measurement to event list;
![Page 21: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/21.jpg)
When the simulation is initiated
Time and state:Time = 0N = 0
Event list (time, event):
3 Arrival5 Measurement
(One “arrival event” and one “measurement event” has to be put into the list to initiate the simulation.)
![Page 22: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/22.jpg)
Step 1
Time and state:Time = 3N = 1
Event list:4 Arrival5 Measurement9 Departure
![Page 23: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/23.jpg)
Step 2
Time and state:Time = 4N = 2
Event list:5 Measurement9 Departure10 Arrival
![Page 24: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/24.jpg)
Step 3
Time and state:Time = 5N = 2
Event list:9 Departure10 Arrival14 Measurement
![Page 25: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/25.jpg)
Step 4
Time and state:Time = 9N = 1
Event list:10 Arrival12 Departure14 Measurement
![Page 26: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/26.jpg)
beginsimulationlength := 1000;No_in_queue := 0;time := 0;insert_event(measurement, Random(m));insert_event(arrival, Exp(a));while time < simulationlength dobegin
dummy := FirstInQueue(eventlist);time := dummy.eventtime;case dummy.eventkind of
arrival: arrive;departure: depart;measurement: measure;
end;end;
end.
Detta är pseudokod
![Page 27: Experiment with the actual system A conceptual model ...f6rel%e4sning7.pdfSystem Experiment with the . actual system. Experiment with a . model of the system. Experiment with a . physical](https://reader036.fdocuments.net/reader036/viewer/2022070215/61178819127ba3122f16b63b/html5/thumbnails/27.jpg)
procedure arrive;begin
if No_in_queue = 0 theninsert_event(departure, Exp(s));
No_in_queue := No_in_queue + 1;insert_event(arrival, Exp(a));
end;
procedure depart;begin
No_in_queue := No_in_queue - 1;if No_in_queue > 0 then
insert_event(departure, Exp(s));end;
procedure measure;begin
write(utfil, No_in_queue);insert_event(measurement, Random(m));
end;