All those statements assume that the reader is familiar with the concept �computer simulation�. However, that is not always the case. In this post, I will explain briefly in plain English what computer simulation is, and will briefly describe the different types of simulation.
1. Modeling a complex system
When working in complex systems, managers often need to plan operations, forecast results, and test �what if� scenarios to maximize outcomes and increase efficiency. Usually, making changes to the real system is impossible or too expensive. In other situations (as in feasibility studies) there is no such �real system� to test or modify. Therefore, managers can use models to aid these tasks.
Reality is complex, no doubt. Let�s think of a copper mine or a Hospital. Operations in both places are complex. Moreover, the duration of real processes (e.g. loading a truck in a mine or providing care to a hospitalized patient) are stochastic in nature.
As Dr. George E.P. Box said, �All models are wrong, but some are useful�. Therefore, the degree of usefulness of a model depends on its accuracy to replicate: i) processes, ii) decision making rules, and iii) relationships between the system components.
2. The advent of computers
When I was 12 years old my father bought me a simple calculator. I was amazed with how this tiny machine could perform simple mathematical operations so quickly and reliably. When I was 20, I bought my first programmable CASIO calculator. Once again, I was amazed about how, through a simple BASIC program, complex mathematical and statistical operations could be accurately performed. As a university student, I bought my first �very expensive� laptop computer (12Ghz clock speed, 20MB hard drive, and 800Kb RAM) and learned how to program in Pascal, FORTRAN, and C++.
Nowadays computers are accessible to almost everybody. They are incredibly powerful and cheap in comparison with the one that I used at the university!
Unfortunately not all companies have in-house knowledge and resources to develop computer programs and to model complex systems. What companies normally have is one spreadsheet software (e.g. Excel) originally designed for accounting purposes.
Managers, employees, and even engineers, tend to modify their way of thinking based on available tools and end up modelling complex systems using the spreadsheet software.
The �evil� combination of spreadsheet software, averages, and simplified mathematical models, totally ignores the inherent variability of complex systems and therefore generate poor and potentially misleading results (see one of my previous posts).
3. So, What is computer simulation?
In simple words, computer simulation consists in digitally mimicking real systems using computers and specialized software. The idea is to represent the real system as closely as possible to replicate its behavior and outcomes.
Computers are very useful to model complex systems using algorithms, statistical functions and random generated numbers. Nowadays specialized software (e.g. ExtendSim and ARENA) allow us to model complex systems in a very efficient way.
This virtuous combination of accessible computer power and specialized software, has changed the way we model complex systems. The scale of problems that could be simulated using computers surpasses every imaginable paper-and-pencil mathematical modeling capabilities!
To date, computer simulation is successfully used in logistics, weather forecasting, games, traffic, economy, engineering, aerospace, etc.
Normally, a simulation process consists of:
I am pretty sure that you have heard the term �Montecarlo Simulation�. This type of simulation refers to a broad class of mathematical modeling algorithms that rely in random generated numbers. By running the simulation many times using different random numbers as input, different results will be obtained allowing the modeler to perform a statistical analysis on them. Montecarlo Simulation is typically used in engineering (e.g. fluids dynamics, solids), business (e.g. risk analysis), and mathematics.
Another type of simulation is called Continuous Simulation (CS). These deterministic simulations use complex differential equations to represent relationships among the different components of the modeled system. In these simulations, time varies continuously and the variation in the state of the system components is also continuous. Results are normally real numbers represented in continuous graphs. Typical use of CS are: population growth estimations, disease transmission analyses, and large systems� behavior studies.
On the other hand, Discrete Event Simulations (DES) represents real systems composed by entities and a discrete sequence of events.
Entities (e.g. trucks in open pit mining or patients in hospitals) are �processed� in different stations (e.g. crusher or hospital beds). Processing times are normally stochastic and therefore the modeler represent these times through a theoretical or empirical probability distribution.
Events occur when an entity enters or leaves the processing station and constitutes a �change of state� in the system.
Time in DES is not continuous and therefore the simulation clock jumps from one event to the next one allowing the simulation to run faster than in CS.
A special type of DES is the �agent-based simulation� (more information can be found HERE).
5. What type simulation is the most appropriate for me?
This is not a simple question and depends on your objective. Let�s analyze some examples:
First, mining operations have a finite and discrete number of entities (e.g. trucks) that have a certain number of characteristics (e.g. capacity, speed, availability). Using DES we can simulate trucks as entities and assign to them different attributes. During the simulation, these attributes will be used to modify the entity behavior and to set the processing times in some processing stations. Also, each entity (truck) could have associated a certain probability of failure to represent unplanned maintenance events. These parameters could vary on each of the simulated entities as happens in the reality.
Second, for each simulation run we are interested in recording the behavior of these entities. For example we would like to know how many kilometers a certain truck covered during one shift. DES can record, analyze and present in graphs, a huge amount of information generated during each run.
Third, we would like to simulate a certain finite time (e.g. one shift or one year) as fast as possible. Since the simulation clock in DES jumps from one event to the next one, one can simulate extended periods of time in seconds.
Forth, DES is able to represent real stochastic processes through probability distributions.
Fifth, DES can run the same scenario multiple times generating different results (e.g. total ore produced in a year). These results vary in each run following a certain unknown probability distribution. As explained in one of my previous posts, it is not possible to estimate the aggregate variability of the whole process using analytic methods. Therefore, by analyzing the results generated in multiple DES runs, we can estimate this aggregate variability and establish a confidence interval for the expected result (i.e. expected production level).
Sixth, complex transportation networks can also be simulated accurately using DES. Roads can be divided in segments with certain individual characteristics (e.g. capacity, longitudinal distance, elevation). A decision point can be added at the entrance of each segment to accurately represent traffic rules.
6. DES require lots of data to model a complex system. Where can I find it?
The good news is that most mines have a dispatching system that collects tons of information. This facilitates the distribution fitting and the calibration of the model.
In those situations where the dispatching system does not collect information (e.g. the time spent by the rock breaker in breaking big rocks that occasionally jam the crusher) one can perform time-studies to estimate the approximate probability distribution of the process.
7. OK, I got it. DES is the appropriate tool to simulate complex systems. So what? I still need to optimize their performance . . .
Simulation and optimization are not synonymous. As mentioned before, simulation mimics the real system as close as possible. On the other hand, optimization techniques are intended to find an optimum.
The good news is that we can use both simulation and optimization techniques together to find the optimum operational scheme. There are some very interesting techniques to test different scenarios and find the best one (e.g. Design of Experiments). On the other hand, some simulation software (e.g. ExtendSim) have optimization capabilities that can be efficiently used to find the optimum.
8. Is there a simulation software that I can use to model and optimize open pit mining operations?
Indeed there is!
MineSimulator 3.0 is the perfect tool to simulate these complex operations and to find the optimum operational scheme!
More information about computer simulation can be found in the ExtendSim website.
Rene Alvarez, IE, MEng
www.SmartSimulation.ca
Managers, employees, and even engineers, tend to modify their way of thinking based on available tools and end up modelling complex systems using the spreadsheet software.
The �evil� combination of spreadsheet software, averages, and simplified mathematical models, totally ignores the inherent variability of complex systems and therefore generate poor and potentially misleading results (see one of my previous posts).
3. So, What is computer simulation?
In simple words, computer simulation consists in digitally mimicking real systems using computers and specialized software. The idea is to represent the real system as closely as possible to replicate its behavior and outcomes.
Computers are very useful to model complex systems using algorithms, statistical functions and random generated numbers. Nowadays specialized software (e.g. ExtendSim and ARENA) allow us to model complex systems in a very efficient way.
This virtuous combination of accessible computer power and specialized software, has changed the way we model complex systems. The scale of problems that could be simulated using computers surpasses every imaginable paper-and-pencil mathematical modeling capabilities!
To date, computer simulation is successfully used in logistics, weather forecasting, games, traffic, economy, engineering, aerospace, etc.
Normally, a simulation process consists of:
- Analysis and study of the real system (i.e. components, relationships, decision rules),
- Data collection and analysis (e.g. probability distribution fitting),
- Model design,
- Model validation,
- Model calibration,
- Simulation runs, and
- Analysis of the results.
I am pretty sure that you have heard the term �Montecarlo Simulation�. This type of simulation refers to a broad class of mathematical modeling algorithms that rely in random generated numbers. By running the simulation many times using different random numbers as input, different results will be obtained allowing the modeler to perform a statistical analysis on them. Montecarlo Simulation is typically used in engineering (e.g. fluids dynamics, solids), business (e.g. risk analysis), and mathematics.
Another type of simulation is called Continuous Simulation (CS). These deterministic simulations use complex differential equations to represent relationships among the different components of the modeled system. In these simulations, time varies continuously and the variation in the state of the system components is also continuous. Results are normally real numbers represented in continuous graphs. Typical use of CS are: population growth estimations, disease transmission analyses, and large systems� behavior studies.
On the other hand, Discrete Event Simulations (DES) represents real systems composed by entities and a discrete sequence of events.
Entities (e.g. trucks in open pit mining or patients in hospitals) are �processed� in different stations (e.g. crusher or hospital beds). Processing times are normally stochastic and therefore the modeler represent these times through a theoretical or empirical probability distribution.
Events occur when an entity enters or leaves the processing station and constitutes a �change of state� in the system.
Time in DES is not continuous and therefore the simulation clock jumps from one event to the next one allowing the simulation to run faster than in CS.
A special type of DES is the �agent-based simulation� (more information can be found HERE).
5. What type simulation is the most appropriate for me?
This is not a simple question and depends on your objective. Let�s analyze some examples:
- If you want to simulate how the rock fractures in blasting, a Montecarlo Simulation in junction with complex mathematical models (e.g. using finite elements) are appropriate.
- If you want to simulate the long term behavior of Chile�s copper production given certain changing environmental, political, and economical factors, Continuous Simulation is the appropriate tool,
- If you want to simulate material transportation and ore production in an open pit mine to evaluate different operational schemes, Discrete Event Simulation is the appropriate tool,
- If you would like to right size the fleet of trucks (capacity planning) for a given production scheme, also discrete event simulation is the appropriate tool, and finally
- If you would like to right size the number of beds in a hospital, Discrete Event Simulation is the right tool.
First, mining operations have a finite and discrete number of entities (e.g. trucks) that have a certain number of characteristics (e.g. capacity, speed, availability). Using DES we can simulate trucks as entities and assign to them different attributes. During the simulation, these attributes will be used to modify the entity behavior and to set the processing times in some processing stations. Also, each entity (truck) could have associated a certain probability of failure to represent unplanned maintenance events. These parameters could vary on each of the simulated entities as happens in the reality.
Second, for each simulation run we are interested in recording the behavior of these entities. For example we would like to know how many kilometers a certain truck covered during one shift. DES can record, analyze and present in graphs, a huge amount of information generated during each run.
Third, we would like to simulate a certain finite time (e.g. one shift or one year) as fast as possible. Since the simulation clock in DES jumps from one event to the next one, one can simulate extended periods of time in seconds.
Forth, DES is able to represent real stochastic processes through probability distributions.
Fifth, DES can run the same scenario multiple times generating different results (e.g. total ore produced in a year). These results vary in each run following a certain unknown probability distribution. As explained in one of my previous posts, it is not possible to estimate the aggregate variability of the whole process using analytic methods. Therefore, by analyzing the results generated in multiple DES runs, we can estimate this aggregate variability and establish a confidence interval for the expected result (i.e. expected production level).
Sixth, complex transportation networks can also be simulated accurately using DES. Roads can be divided in segments with certain individual characteristics (e.g. capacity, longitudinal distance, elevation). A decision point can be added at the entrance of each segment to accurately represent traffic rules.
6. DES require lots of data to model a complex system. Where can I find it?
The good news is that most mines have a dispatching system that collects tons of information. This facilitates the distribution fitting and the calibration of the model.
In those situations where the dispatching system does not collect information (e.g. the time spent by the rock breaker in breaking big rocks that occasionally jam the crusher) one can perform time-studies to estimate the approximate probability distribution of the process.
7. OK, I got it. DES is the appropriate tool to simulate complex systems. So what? I still need to optimize their performance . . .
Simulation and optimization are not synonymous. As mentioned before, simulation mimics the real system as close as possible. On the other hand, optimization techniques are intended to find an optimum.
The good news is that we can use both simulation and optimization techniques together to find the optimum operational scheme. There are some very interesting techniques to test different scenarios and find the best one (e.g. Design of Experiments). On the other hand, some simulation software (e.g. ExtendSim) have optimization capabilities that can be efficiently used to find the optimum.
8. Is there a simulation software that I can use to model and optimize open pit mining operations?
Indeed there is!
MineSimulator 3.0 is the perfect tool to simulate these complex operations and to find the optimum operational scheme!
More information about computer simulation can be found in the ExtendSim website.
Rene Alvarez, IE, MEng
www.SmartSimulation.ca
0 comments:
Post a Comment