Presentation is loading. Please wait.

Presentation is loading. Please wait.

Concurrent & Distributed Systems Lecture 6: Simulation (WWCH) What? –The use of an abstract model of a real engineering system, which can be implemented.

Similar presentations


Presentation on theme: "Concurrent & Distributed Systems Lecture 6: Simulation (WWCH) What? –The use of an abstract model of a real engineering system, which can be implemented."— Presentation transcript:

1 Concurrent & Distributed Systems Lecture 6: Simulation (WWCH) What? –The use of an abstract model of a real engineering system, which can be implemented in software, to mimic as closely as possible the system’s behaviour. –A complete set of ‘test scenarios’ to feed into the computer model, to evaluate different design possibilities for the system –An essential part of modern engineering QA –Essentially a prototype in software Why? –For many complex engineering systems, simulation is the only feasible way to run tests. ‘one off’ designs, eg a Mars lander, or the new Wembley roof Very expensive designs, eg a new Pentium processor –Expense – even if real prototypes can be built, they will probably be more expensive than a computer simulation. –Tools have been developed to make simulation easier (Matlab, Labview, Simulink can all be seen as simulation tools. –Scale – small protypes can be built (some very modern tools exist), but big ones would be very difficult. –Some prototypes don’t scale up properly

2 Concurrent & Distributed Systems Lecture 6: Simulation (WWCH), continued Context –Simulation is also very important in other fields Computer games – a $billion industry, where big technical advances are made (especially in graphics) Safely training humans to do things – eg flight simulators (the Apollo moon landing simulator was one of the first) In the retail world, eg providing a walk through of a new kitchen –Non-computer simulation (ie working with real prototypes) is still done, eg testing model wings in wind tunnels (where the mathematical model of a simulation might be too hard, or too slow) How? To make a good simulator, we need –A good abstract model 1.Needs deep theoretical and special knowledge of the system type, which needs experience and training. 2.Needs to be complete, with all the essential features of the system, but no trivial ones – again this needs experience and judgement. NB Computer games are not like this – features like the colour and appearance of things really do matter in games. 3.Needs to be unambiguous and self consistent.

3 Concurrent & Distributed Systems Lecture 6: Simulation (WWCH), continued –A clear definition of the boundary between the simulation and the rest of the world. Real systems interact with and are embedded in, the real world, so we have to be clear what we are simulating and what we are not. Once the simulation boundary is drawn, we need to be clear about any inputs or outputs connecting it to the real world, and any other assumptions made about how the simulation fits in with its surroundings. –A good and appropriate human interface Humans will be in charge of running the test scenarios, so they need to be able to monitor the progress of the simulation. The interface could be simple, or complex. It might have to be in real time (as in gaming or flight simulators), or it could be a slowed down model

4 Concurrent & Distributed Systems Simulation: a Simple Production Line Build Case process Repeat Get raw materials Build case Wait(case_space) Put case into holding area Signal(case) Forever Build Circuit process Repeat Get raw materials Build circuit Wait(circuit_space) Put circuit into holding area Signal(circuit) Forever Final assembly process Repeat wait(case) Get case from holding area signal(case_space) wait(circuit) Get circuit from holding area signal(circuit_space) assemble product deliver finished product Forever


Download ppt "Concurrent & Distributed Systems Lecture 6: Simulation (WWCH) What? –The use of an abstract model of a real engineering system, which can be implemented."

Similar presentations


Ads by Google