This article was written by Snowden's Global manager, Tarrant Elkington .
“Optimisation – The action of making the best or most effective use of a situation or resource”. – Oxford dictionary.
What a great aspiration - to pursue optimisation! To get the most out of something. If I could spend my career optimising things, then I would be one happy camper. But how does one actually achieve an "optimised" outcome?
“Optimisation” in mining takes many forms. To operators, it often means continuous improvement. For project developers, it might be used with the concept of “value engineering”. For mining engineers, “optimisation” is commonly refers to “open pit enhancements”: “Have you completed the pit optimisation yet?”.
Unlike other overused slogans like analytics, data science, and cloud, given my background I think that “optimisation” distinguishes itself with its implied intent.
Intent is a great start, and the most important component to achieving success. Combine that with experience and instinct, and you’re looking even better. But that powerful combination is not enough to achieve the best outcome. The missing link is a structured approach. A way of thinking that focuses the mind and the efforts of your team on a common understanding of the problem.
To get the best outcome you should spend most of the time defining the problem. Don’t take this from me, but from some of the greatest minds the world has seen. Once you have defined the problem, the solution should be vastly more transparent. Too often we miss this step with our quest for an immediate, over simplified solution.
“If you define the problem correctly, you almost have the solution.” – Steve Jobs
“Give me 6 hours to chop down a tree and I will spend the first four sharpening the axe.” – Abraham Lincoln
Think about your last optimisation exercise. Did you take a structured approach to the problem definition, or did you dive straight into solution mode?
Optimisation Problem Definition
What would a structured approach to optimisation problem definition look like anyways? Surely concepts as diverse as value engineering, continuous improvement and pit optimisation cannot have a standard approach. Well yes, they can.
All optimisation problems are composed of three key building blocks (decisions, objectives and constraints). In short, the best solution to the problem will be the decision or set of decisions that generates the “best” objective value, whilst satisfying all constraints.
Let’s dig a little deeper into each of these features.
Your solution will be made up with a single decision, or set of decisions. Those usually take the form of options selected for each decision.
Articulating decisions can be hard. Often this can be teased out by answering the following questions:
- What can we do?
- What can we control?
- What options do we have?
Defining your options can help identify what decisions need to be made. Modelling decisions can be even harder than defining them. Usually there is a resolution hierarchy of decisions and you will need to select the appropriate resolution for the problem with which you are dealing. Sometimes the decisions need to be manipulated to suit the selected solution methodology, which is a subject for another post.
Often you will have more than one decision to make in an optimisation problem. Typically, decision will be dependent on each other. When you start accruing options, each with a number of preferences, permutations start to grow and quickly. So, it’s important to practice simplicity and remove any unrelated, or unnecessary options from the problem space.
Now, which scenario is “best”? This debate can be subjective and sometimes qualitative. When searching for flights, do you value “lowest cost” or “shortest duration”? For a mining project, are you looking for net present value (NPV), unit cost or some other measure? Objectives drive everything, it is the measure of your success and everything should be orientated around it.
“Tell me how you will measure me, and I will tell you how I will behave”. – Eliyahu M. Goldratt
Objectives can be either minimising or maximising. If you are targeting a specific value, this will become a constraint.
The best objectives are ones you can measure readily. More qualitative objectives (like “happiness” or “risk”) should be able to have some form of ranking applied.
Now, can you have multiple objectives? Of course, you can. But think about whether this is truly efficient? At the end of the day, you can only make one decision (or series of decisions). If the “best” decision is different for each objective, you will need to weight the objectives to come up with a final composite objective based on the relevant importance of each objective. So, to me, you should only have one objective, but that objective can be a weighted result of a number of factors.
Constraints are the considerations that must be satisfied by our solution. A mill is only rated at a certain power level; a digger can only move so much dirt; pit geometry is such that we need to mine blocks in a certain order.
To identify Constraints, you could ask yourself “what is stopping us from achieving more (or less) of our Objective?”. Like me, I’m sure you have had times when you provide a solution and a new stakeholder cuts in and says: “You can’t do that!”. “That” is probably a constraint.
Constraints can either be “binding” or “non-binding”. We only really care for the binding constraints: Constraints that will impact on the solution. For example, in a mine schedule optimisation problem, we might set the maximum mining constraint to 100 Mtpa total movement, but the optimised solution only requires moving 30 Mtpa; this constraint is non- binding.
Constraints might seem simple to identify, often they are only constraints because of a lack of creativity of the modeller. Most physical constraints can be overcome with some form of investment. In the case of searching for flights, we might impose a constraint that we want the cheapest flight that has a maximum of one stop. This is a constraint. However, we could also model this into our objective and say something like, “for every additional stop apply a virtual cost of $500 to cover inconvenience etc”. This is an important point, because constraints ultimately control the solution. The only way to improve the solution is to “release” constraints. So, you should always be questioning whether something is truly a constraint (or just a self-imposed constraint to simplify your life).
Implementation is easy using this stepwise approach:
- Gather your key stakeholders and work through the key aspects.
- Start with the objective. Remember, if there are multiple Objectives it would be good to identify the relative important of each. You will be tempted to defer this discussion until after seeing the results (sometimes we do not know what we want, or don’t want, until we see it). This is OK.
- List the decisions to take and rank them appropriately.
- For each decision, list the options available.
- Brainstorm a constraints list and test whether these are constraints. Often what appears to be a constraint should actually be a decision.
- Quantify the impact of each option on the objective, and the constraints. Ensure this modelling is consistent between options. i.e. don’t use a different fuel price for different options.
A simple example output, for the general strategic mine plan optimisation is shown below. We will explore this problem in later posts.
Remember here, the simpler the better.
In most instances, defining the objective should come first, but you can work in any order and often I start with whichever element is easiest to define. Sometimes your problem might be built around a single decision, but the objective might not be clear. In this case, start with defining the decision and its associated options.
Solving an Optimisation Problem
Once you have defined the problem (decisions, objective and constraints), identified all the options, and determined how each decision will impact on the objective and constraints, you need to find a solution.
If you have been able to quantify all these aspects, you can solve using an optimisation routine. For this you will likely need an applied mathematician in order to solve the problem (assuming the problem is not contemplated in off the shelf software).
All optimisation routines work their way through an evaluation of all the options, in a focused and efficient way. So, if the problem is simple, you can probably work through an evaluation of the options yourself. In reality, we often do all this work in our head. You should be able to quickly identify when solutions require little thought or need a computer to sort.
While computing has come a long way over the years, there are still many problems that we can define clearly but cannot solve efficiently, even with specialist algorithms. If your problem is in this box you might need to simplify, probably when modelling your decisions. Can you move your decisions to a lower degree of resolution?
I will leave you with some final reflections on the topic:
- Our ability to convert the physical environmental into a virtual, mathematical problem will play a large factor when new automation technologies can be implemented. As George Box famously said: “All models are wrong, but some are useful”. Can we make our modelling useful enough to make automation worthwhile? Often this is the roadblock, rather than the technology.
- The ability to articulate an optimisation problem is an important skill as it enables all stakeholders to understand the problem, and work together to find a solution (or at least uncover the options and constraints). Without this, you will often struggle to come to a common understanding and may go around in circles.
- Learning this general form to an optimisation problem changed the way I looked at the world, not just mining. Every decision we make is an optimisation problem. Often subconsciously, we develop a model of options, objectives and constraints, and pick a solution. Sometimes that decision is to not make a decision, but I will talk about this some more in a later post. An awareness of this, means you can use the above framework for your own decision-making processes. In addition, the framework might help to understand why other people make the decisions that they do. If they make a different decision to you, then perhaps they are operating to a different set of objectives, constraints, or simply didn’t realise that a different decision was available. Try it out yourself!
Look out for future posts where I will delve into the world of strategic mine planning and optimisation, apply some of these topics, provide some tools and tricks and identify some of the big unsolved problems you might never have thought of. Please provide feedback, ask questions, and share your own experiences.