In our previous post, we introduced the Advanced Simultaneous Optimization, detailing its benefits compared to traditional methods by optimizing separate steps to build an optimal mining schedule. Today, we will introduce the first 2 steps: aggregation to "blend bins" and finding an optimal solution.
By D. Place, G. Whittle, and N. Baxter.
STEP 1: AGGREGATION TO “BLEND BINS”
The description of this scheduling problem into a system of equations is far too large for any computer to solve. To reduce the system size, GEOVIA Whittle uses “blend bins” as an aggregation methodology. Since blocks having similar grades of material will have a similar outcome, aggregating those blocks together will reduce the size of the problem significantly without impacting the results (at the expense of additional input from the user to specify the blend-bins). Pits are subdivided into pushbacks, and into benches. A panel designates a specific bench within a pushback (see Figure 2), and the blocks of a specific pushback and bench are assigned to a panel. The definition of blend bins will allow grouping of the blocks of a panel that have similar grade characteristics into a one bin (Figure 3).
The user defines blend bins by specifying the grade range for each bin. Note that the bin grade ranges, if incorrectly chosen, will have a significant impact on the optimization. Providing enough blend bins around the sensitive cut-offs is critical to the process. Users generally start off with a higher number of blend bins in order to determine where the ore or waste boundary sits, what groups of bins are processed, stockpiled or reclaimed together, and then consolidate them so that bins become material classes for scheduling. Once the blocks have been aggregated to pushback, panel and bins, the size of the system is now reduced to an acceptable size. The added benefit in subdividing by pushback and panel is that the structure can now follow implicitly the mining constraints related to slope profile and block precedence.
STEP 2: FINDING AN OPTIMAL SOLUTION
To describe the approach let’s have a look first at the case without stockpiles.
Case without stockpile
A schedule can be expressed by a vector Xi,j which specifies the total depth mined for pushback i and period j, so that for every period of a schedule, one can know how much of each pushback is mined. For instance, in a simple case of a pit with one pushback, six benches, and three periods, the vector X = (0.5, 3.2, 5.8) indicates that at end of period 1, half of the first bench (bench 0) is mined; at end of period 2 mining reached 20% of the 4th bench (bench 3); and end of Period 3 only 20% of the last bench is left. If the schedule problem is expressed using the above principle while adding mining, blending and processing constraints, solving for Xi,j will provide the optimal solution for the problem. However, the system cannot be solved as it is. It must be linear to be solvable using traditional LP solvers. If the benches and pushbacks to be mined within each period are fixed, one can make the system linear and find the optimal schedule for this specific case using a LP solver. The LP solver will then be able calculate what is the optimum fraction of the bench to mine. In our previous example, if (0.5, 3.2, 5.8) was an optimum schedule, that solution would have been found when we would fix bench 0 f or period 1, bench 3 f or period 2 and bench 5 for period 3. In other words, by providing the initial value X = (0, 3, 5) the solver will be able to find the optimum solution (0.5, 3.2, 5.8) for that case. Fixing the benches and pushbacks to mine in each period is a serious constraint, and it is not practical nor useful to request that information from the user. Since the user does not know a priori which benches and pushbacks to mine within each period, one would have to iterate through all the combinations of benches and pushbacks that can be mined in all periods to find the optimal solution. In the previous example with one pushback, five benches and three periods, the software would need to iterate through 56 combinations.2 That number will grow exponentially as more pushback, benches and periods are added. With just 10 benches, 10 periods and 5 pushbacks the number of combinations are close to 6.7×10 24.Hence, for a normal problem size, this yields too many combinations to evaluate. To solve this problem, an iterative approach analogous to Newton’s Method (Numerical Recipes. The Art of Scientific Computing, 3rd Edition, 2007) is used to find a local optimal (see Figure 4).
As shown in Figure 4, starting from any initial feasible solution (the fixed set of benches and pushbacks to mine for each period), the LP solver calculates the optimal schedule; if the solution is within the bounds of the initial schedule (i.e. it has not reached the limits of benches and pushbacks that were fixed) then the program has found a local maximum; if not, the program restarts the process using this last solution as an initial feasible solution for the next iteration. This process can start from any initial feasible solution, allowing a local maximum to be found in the solution space.
Stockpiles
The use of stockpiles adds a level of complexity to the overall algorithm. Namely, the system of equations described previously is once again non-linear. The added input variables that are needed for the stockpiles will require changing the grade and tonnage constraints, and will need to be expressed as a product of two variables (e.g., ax1x2 + … = k, where x1 and x2 represent the grade of the stockpile and the amount of material going out of the stockpile, respectively). The system is now non-convex quadratic and cannot be solved with a LP solver. Then the approach taken is to separately solve the stockpile grades and the stockpile movements. First, the grades of the stockpile (x1 ) are iteratively estimated; then the stockpile grade is fixed to enable the LP solver to solve the schedule. Note that this approach does not optimize the stockpile grades and the schedule together, so the stockpile grades may not be optimal for the schedule. However, since many blocks contribute to the stockpiles, the stockpile grade does not tend to change significantly with the schedule. This approach is a significant improvement compared to SPCO which only optimizes the cut-off grades. Here the stockpile material movement and stockpile grades are optimized to deliver the best possible NPV.
In our next post, we will explain the 3rd and last step on how to iterate semi-randomly through the solution space to ensure the schedule obtained is close to the optimal solution. Stay tuned!
Access all the best practices already available in English:
GEOVIA Whittle best practice