The objective of this paper is to develop a practical optimization framework for ..... current production scheduling optimization tools that mining industry uses.
Block Cave Production Scheduling Optimization Using Mathematical Programming Yashar Pourrahimian University of Alberta, AB, Canada Hooman Askari-Nasab University of Alberta, AB, Canada Dwayne Tannant University of British Columbia, BC, Canada
Abstract Planning of caving operations poses complexities in different areas such as safety, environment, ground control, and production scheduling. As the mining industry is faced with more marginal resources, it is becoming essential to generate production schedules which will provide optimal operating strategies while meeting practical, technical, and environmental constraints. Production scheduling of any mining system has an enormous effect on the economics of the operation. The scheduling problems are complex due to the nature and variety of the constraints acting upon the system. Relying only on manual planning methods or computer software based on heuristic algorithms, will lead to mine schedules that are not the global optimal solution. The objective of this paper is to develop a practical optimization framework for production scheduling for caving operations. A mixed integer linear programming (MILP) formulation is developed, implemented and verified in TOMLAB/CPLEX environment. The production scheduler aims to maximize the net present value of the mining operation while the mine planner has control over the: production rate per drawpoint, rate of opening new drawpoints, mining capacity, maximum number of active drawpoints, and advancement direction. The production scheduler defines: the opening and closing time of each drawpoint, the draw rate from each drawpoint, the number of new drawpoints that need to be constructed, and the sequence of extraction from the drawpoints to support a given production target. Application of the model for production scheduling of 102 drawpoints over ten periods is also presented.
Biography Yashar Pourrahimian is a PhD candidate at the University of Alberta and is a researcher at the Mining Optimization Laboratory (MOL). He obtained his bachelor degree in Mining Engineering (mine exploitation) from Sahand University of Technology, Tabriz, Iran. He holds a M.Sc. in Rock mechanics from University of Tehran, Tehran, Iran. He was an instructor at Sahand University of Technology from 2004 to 2008. His research interest is in the area of mine planning and mine production scheduling. Hooman Askari-Nasab is an assistant professor of mining engineering at the University of Alberta, Canada. He teaches and conducts research into risk-based mine planning and simulation of mining systems. He is the director of industrial research consortium, “Mining Optimization Laboratory" (MOL) at the University of Alberta. He is a registered Professional Engineer in Alberta and is a member of APEGGA, CIM and SME. Dwayne Tannant has conducted mining-related research since 1989 and has taught engineering students since 1991. Dr. Tannant joined the School of Engineering at the University of British Columbia as a professor in 2008. Prior to working at UBC, he was a mining professor at the University of Alberta for 10 years and worked for 10 years as a senior research engineer at the Geomechanics Research Centre in Sudbury. Dr. Tannant has a B.A.Sc. in geological engineering from UBC and a Ph.D. in civil (geotechnical) engineering from the University of Alberta.
1. Introduction The goal of long-term mine production scheduling is to determine the mining sequence, which optimizes the company’s strategic objective, while honouring the operational limitations over the mine life. An optimal plan in mining projects will result in cost reduction, increasing equipment utilization, optimum recovery of marginal ores, steady production rates, and consistent product quality. Underground mining is more complex in nature than surface mining (Kuchta, Newman, & Topal, 2004). Also, it is less flexible than surface mining due to the geotechnical, equipment, and space constraints (Topal, 2008). One of the techniques currently used to generate production schedules in block cave mines is heuristic methods. Heuristic methods refer to experience-based techniques for problem solving, learning, and discovery. Where an exhaustive search is impractical, heuristic methods are used to speed up the process of finding a satisfactory solution. Another technique is exact methods. Exact algorithms are guaranteed to find an optimal solution and to prove its optimality for every instance of an optimization problem. Mixed Integer Linear Programming (MILP) models have the capability to model complex real world problems and hence various researchers have used it to model mine production scheduling. In spite of the difficulties associated with applying mathematical programming to production scheduling in underground mines, authors have attempted to develop methodologies to optimize production schedules in block cave mines (Chanda, 1990; Diering, 2004; Guest, VanHout, Von, & Scheepers, 2000; Rahal, 2008; Rahal, Smith, Van Hout, & Von Johannides, 2003; E Rubio, 2002; E. Rubio & Diering, 2004). This study’s objective is to develop, implement, and verify a theoretical framework to address the longterm production scheduling problem of block cave mines. The objective of the theoretical framework is to maximize the net present value (NPV) of the mining operation, while controlling the planning parameters. The planning parameters considered in this study are: (i) mining capacity, (ii) draw rate, (iii) mining precedence, (iv) maximum number of active drawpoints, (v) number of new drawpoints in each period, (vi) continuous mining, and (vii) reserves.
2. Problem definition and assumptions, and notation In the case of a block cave mine, the production schedule mainly defines the amount of the material to be mined from the drawpoints in every period of production to achieve a given planning objective. The mine plan also defines the number of new drawpoints that need to be constructed and their sequence to support a given production target. The production schedule is subject to a variety of physical and economic constraints. The constraints enforce the production target, draw rate, mining precedence, maximum number of active drawpoints, number of new drawpoints in each period, and continuous mining. Several assumptions are used in the proposed MILP formulation. The orebody is represented by a geological block model, which is a three-dimensional array of rectangular or cubical blocks. The column of rock above each drawpoint, which is referred to as a draw column, is simulated and stored in a slice file. The draw columns, which are vertical, are created based on the block model. The total column is divided into slices which match the vertical spacing of the geological block model. Numerical data are used to represent each attribute of the orebody, such as tonnage, density, grade of elements, elevation, percentage of dilution, and economic data for each slice. It is assumed that the physical layout of the production level is offset herringbone (Brown, 2003). The source model is assumed to be static with time. All stages before scheduling, from creating a block model to converting slice files, and estimation of the best height of draw (BHOD) are done using GEMS and PCBC (GemcomSoftwareInternational, 2011). After applying the BHOD, the final height of draw is obtained, but there is the assumption of selective mining, meaning that based on the existing conditions either all the material in the draw column or some part of it can be extracted. To solve the problem, four decision variables are employed, one continuous decision variable and three binary integer variables. Two of them are used in controlling slice level and two in controlling drawpoint
level. This formulation is implemented for different advancement directions (Figure 1a) to maximize the NPV. In the offset herringbone layout, each drawpoint is surrounded by a maximum of seven drawpoints. According to the advancement direction for each drawpoint, d , there is a set S d which defines the predecessor drawpoints among adjacent drawpoints that must be started prior to extraction of drawpoint d. Based on the advancement direction, up to eight different predecessor data sets can be defined for each drawpoint. For instance, Figure 1b shows that adjacent drawpoints for drawpoint d4 include d1, d2, d3, d5, d6, d7, and d8. In the advancement direction of southwest to northeast (SW to NE), extraction of drawpoints d1, d6, and d7 have to be started prior to drawpoint d4.
Figure 1. Alternative advancement directions and determination method of members for set
Sd
2.1. Notation The notation of decision variables, parameters, sets, and constraints are as follows: 2.1.1 Sets
Sd
For each drawpoint, d, there is a set S d defining the predecessor drawpoints that must be started prior to extraction of drawpoint d.
S ds
For each drawpoint, d, there is a set S d s defining the slices in draw column associated with drawpoint d.
Ss
For each slice, s, there is a set S s defining the predecessor slice that must be extracted prior to extraction of slice s.
S dls
For each drawpoint, d, there is a set S d l s defining the lowest slice within the draw column associated with drawpoint d.
2.1.2 Indices
t ∈{1,...., T } d ∈{1,..., D} s ∈{1,..., S} e ∈{1,..., E}
Index for scheduling periods.
m
Index for a slice belonging to one of the sets S s or S d l s
j
Index for a drawpoint belonging to one of the sets S d or S d s
Index for drawpoints. Index for slices. Index for elements of interest in each slice.
2.1.3 Parameters
SEVs
Economic value of slice s.
i
The discount rate. Maximum number of drawpoints in the model. Maximum number of slices in the model.
D
S Nsd
Number of slices within the draw column associated with drawpoint d.
Nat
Maximum number of active drawpoints in period t.
N nt
Upper limit of number of new drawpoints in period t.
N nt
Lower limit of number of new drawpoints in period t.
Tons
Total tonnage of material in slice s.
Tond
Total tonnage of material in draw column associated with drawpoint d.
Get
Upper limit of acceptable average head grade of element e in period t.
Get
Lower limit of acceptable average head grade of element e in period t.
Ge s
Average grade of element e in ore portion of slice s.
Mt
Upper limit of mining capacity in period t.
Mt
Lower limit of mining capacity in period t.
DRd t
Maximum possible draw rate of drawpoint d in period t.
DRd t
Minimum possible draw rate of drawpoint d in period t.
2.1.4 Decision variables
X st ∈[0,1] Ed t ∈{0,1}
Cd t ∈{0,1}
Bst ∈{0,1}
Continuous variable, representing the portion of slice s to be extracted in period t. Binary integer variable controlling the starting period of drawpoints and the precedence of extraction of drawpoints. Ed t is equal to one if extraction of drawpoint d has started by or in period t, otherwise it is zero. Binary integer variable controlling the closing period of drawpoints. Cd t is equal to one if extraction of drawpoint d has finished by or in period t, otherwise it is zero. Binary integer variable controlling the precedence of extraction of slices. It is equal to one if extraction of slice s has started by or in period t, otherwise it is zero.
3. Mathematical model A mixed integer linear programming (MILP) problem contains both integer and continuous variables and there are no quadratic terms in the objective function. The objective function of the MILP formulation is to maximize the net present value of the mining operation. The profit from mining a drawpoint depends on the value of the slices and the costs incurred in mining. The objective function, Eq.(1), is composed of the slice economic value (SEV), discount rate, and a continuous decision variable that indicates the portion of
a slice which is extracted in each period. The most profitable slices will be chosen to be part of the production call in order to optimize the NPV. The objective function is subject to the several constraints. Mining capacity constraint, Eq.(2), forces mining system to achieve desired mining capacity. It ensures that the total tonnage of material extracted from drawpoints in each period is within the acceptable range that allows flexibility for potential operational variations. Grade blending is applied using inequalities in Eq.(3). This constraint forces the mining system to achieve the desired grade. It ensures that the average grade of the element of interest is within the acceptable range for each period. Extraction of drawpoint d is started by extraction of the relevant lowest slice of the draw column associated with drawpoint d. When extraction of the last portion of a slice is finished in period t, extraction of the above slice can be started in the period t or t+1. In other words, extraction of a slice can be started if the below slice is totally extracted. If extraction of a slice is not started after finishing the extraction of the below slice in period t or t+1, the relevant drawpoint must be closed. The mentioned concept is applied using inequalities in Eqs.(4),(5), (6), and (7). Eq.(6) ensures that when drawpoint d is open, at least a portion of one of the slices within the draw column associated with drawpoint d is extracted otherwise the drawpoint must be closed. This means extraction must be continuous otherwise the drawpoint will be closed. Parameter L in Eq.(6) must be a big enough number which is determined based on the minimum acceptable draw rate. Eqs.(5) and (7) ensure that when variables Ed t and Cd t change to one, they remain one until the end of the mine life. This helps us to recognize the periods when the drawpoint is active. In each period, we need to know the number of active drawpoints because this number must not exceed the allowable number. Eq. (8) controls the maximum number of active drawpoints in each period. Nat should be given as an input to the algorithm. For each drawpoint, Eq.(9) checks the set of immediate predecessors drawpoints that must be extracted prior to the extracting drawpoint. This set can be empty, which means the considered drawpoint can be extracted in any time period in the schedule. Extraction of slice, s, can be started if the slice below it has been extracted totally. For each slice within the draw column except the lowest, there is a set defining the predecessor slice that must be extracted prior to extraction of the slice. The extraction precedence of slice within each draw column is controlled by Eqs.(10), (11) and (12). Eqs.(10) and (11) ensure that extraction s
of slice belonging to the relevant set, S , has been finished prior to extraction of slice s. Eq.(13) ensures that slice s is extracted when the relevant drawpoint is active. Another constraint is the number of new drawpoints that can be opened in each period. This constraint defines the maximum feasible number of drawpoints to be opened at any given time within the scheduled horizon. This constraint is usually based on the footprint geometry, the geotechnical behavior of the rock mass and the existing infrastructure of the mine. Eq.(14) ensures that the number of new drawpoints which are opening in each period except period one is within the acceptable range. In period one the number of new drawpoints is equal to the number of active drawpoints. Eq.(16) guarantees that there is selective mining for the slices, and thereby based on the existing conditions either all the material in the draw column or some part of that can be extracted. Draw rate from each drawpoint should be fast enough to avoid compaction and slow enough to avoid air gaps. Eq.(17) imposes upper and lower bounds for the draw rate. When drawpoint d is not active, variable Ed t − Cd t is equal to zero and this relaxes the lower
(
)
bound of Eq.(17). T
Maximize
∑∑ ⎜⎜ (1 + i ) t =1
Subject to:
⎛ SEV ⎞ s ⎟ ×X t ⎟ st s =1 ⎝ ⎠ S
(1)
S
∀t ∈{1,..., T }
(2)
∀t ∈{1,..., T }, e ∈{1,..., E}
(3)
X st − Ed t ≤ 0
∀t ∈ {1,..., T }, d ∈{1,..., D}, s ∈ S dls
(4)
Ed t − Ed (t +1) ≤ 0
∀t ∈{1,..., T }, d ∈{1,..., D}
(5)
∀t ∈ {1,..., T }, d ∈{1,..., D}, m ∈ S d s
(6)
∀t ∈{1,..., T }, d ∈{1,..., D}
(7)
Mt ≤
∑ (Ton ) × X s
st
≤ Mt
s =1 S
∑ G × (Ton ) × X es
s
s =1
Get ≤
S
∑ (Ton ) × X s
st
≤ Get
st
s =1
Ed t − Cd t ≤ L ×
∑X
mt
Cd t − Cd (t +1) ≤ 0 D
∑ (E
dt
∀t ∈{1,..., T }
− Cd t ) ≤ N at
d =1
∀d ∈{1,..., D}, t ∈ {1,..., T } , j ∈S d
E j t − Ed t ≤ 0 t
Bs t −
∑X
mi
≤0
(8) (9)
∀s ∈{1,..., S}, t ∈ {1,..., T } , m ∈ S s
(10)
∀s ∈{1,..., S}, t ∈{1,..., T }
(11)
i =1
t
∑X
− Bst ≤ 0
si
i =1
∀s ∈{1,..., S}, t ∈{1,..., T }
Bst − Bs (t +1) ≤ 0
∑X
mt
D
N nt ≤
∀d ∈{1,..., D}, t ∈ {1,..., T } , m ∈ S d s
≤ Ed t − Cd t
Nsd
∑
(12) (13)
D
Ed t −
d =1
∑E
d ( t −1)
∀t ∈{2,..., T }
≤ N nt
(14)
d =1
D
∑E
d1
(15)
≤ N a1
d =1 T
∑X
st
≤1
t =1
(E
dt
)
− Cd t . DRd t ≤
∑ (Ton ). X m
mt
≤ DRd t
∀s ∈{1,..., S}
(16)
∀d ∈{1,..., D}, t ∈ {1,..., T } , m ∈ S d s
(17)
4. Results and discussion We have developed, implemented, and tested the proposed MILP model in the TOMLAB/CPLEX environment (Holmstrom, 2011). TOMLAB/CPLEX integrates the solver package CPLEX with the
MATLAB environment (MathWorksInc, 2011). The algorithms are also coded in MATLAB. We have used the gap tolerance (EPGAP) as an optimization termination criterion. The gap tolerance sets an absolute tolerance on the gap between the best integer objective and the objective of the best node remaining. The model was tested on a Dell Precision T7500 computer at 2.8 GHz, with 24 GB of RAM. The goal is to maximize the NPV at a discount rate of 12%, while assuring that all constraints are satisfied during the mine life. The performance of the proposed formulations is analyzed based on NPV, satisfaction of constraints, and practicality of the generated schedules from the mining point of view in four main directions. The models are verified by numerical experiments on a data set containing 102 drawpoints and 3470 slices over 10 periods. The number of slices was reduced to 2058 after applying the BHOD. The element of interest is copper and the boundaries for average grade of production are set to 0.7% and 1.8%. The total tonnage of material which can be extracted is almost 13.5 Mt. A capacity of 1.35Mt/yr was considered as the upper bound on the mining capacity for formulation. The maximum number of active drawpoints in each period is set to 40. The maximum number of new drawpoints which can be opened in each period is 15. The lower bound and upper bound of the draw rate for drawpoints are set to 55 and 220 mm/day, respectively. The number of working days per year is 350 days. The formulation has 61580-decision variable in which 20580 are continuous variables. Figure 2 illustrates a plan view of the drawpoints’ configuration based on the relevant coordinates. Table 1 shows the value of NPV, CPU time, and optimality gap for the formulation in the four different advancement directions. A relative tolerance of 5% on the gap between the best integer objective and the feasible integer solution was set for optimization. It is obvious that the optimal gaps are less than 5%. The maximum NPV is gained from the west to east direction, but there is no significant difference between NPVs. It should be mentioned that each direction is a different problem. All constraints are same except the drawpoints precedence which is defined based on the advancement direction. The results show that all assumed constraints have been satisfied for all the considered directions..
Table 1. Numerical results for MILP formulation Direction
CPU time (hr:min:sec)
Optimality GAP(%)
NPV($M)
W→E
06:08:59
3.72
24.87
E→W
08:26:05
4.92
24.34
N→S
09:14:12
4.63
24.26
S→N
07:10:09
4.52
24.56
Figure 2. Plan view of drawpoints’ configuration
Figure 3(a) shows that the model tries to reach the maximum possible tonnage in each period. During periods 9 and 10 because of the defined selective mining concept, some of the slices are not extracted and the production tonnage is less than upper bound. The model intends to maximize the NPV; hence it extracts only 12.1 Mt of materials which is roughly equivalent to 90% of the available material. Figure 3(b) shows the average grade of production for each period. It is obvious that the average grade has a downward trend over the mine life. Figure 3(c) shows that from period 2 to 8, the mine works with maximum allowable number of drawpoints. Based on the Figure 3(d) after period 8 there is no new drawpoint, and extraction continues from drawpoints which have been opened in the previous periods. Figure 3(e) illustrates the draw rate for drawpoint 20 during its life. It can be seen that because of selective
mining concept, 97% of the materials within the draw column associated with drawpoint 20 is only extracted. Figure 3(f) illustrates the starting period of each drawpoint over the mine life.
(a)
(c)
(e)
(b)
(d)
(f)
Figure 3. Obtained results for the west to east direction: (a) Production, (b) Average garde, (c) Number of active drawpoints, (d) Number of new drawpoints, (e) Draw rate of drwpoint 20, and (f) Starting period
5. Conclusion This paper investigated the development of a mixed integer linear programming (MILP) formulation for block cave production scheduling optimization. We developed, implemented, and tested MILP formulation for block cave production scheduling in the TOMLAB/CPLEX environment. The formulation maximizes the NPV subject to several constraints. Production scheduling optimization techniques are still not widely used in the mining industry. There is a need to improve the practicality and performance of the current production scheduling optimization tools that mining industry uses. Further focused research is underway to add new capabilities to the model. These capabilities include production rate curve instead of lower and upper bounds for draw rate and new constraints for handling multiple-lift and multiple-mine scenarios. Also, in order to generate a global optimal large-scale life-of-mine production schedule within a reasonable CPU time, a new clustering procedure based on Hierarchical clustering will be developed and added to the models.
6. References Brown, E. T. (2003). Block caving geomechanics: Indooroopilly, Queensland : Julius Kruttschnitt Mineral Researh Centre, The University of Queensland. Chanda, E. C. K. (1990). An application of integer programming and simulation to production planning for a stratiform ore body. Mining Science and Technology, 11(2), 165-172. Diering, T. (2004). Computational considerations for production scheduling of block cave mines. Paper presented at the MassMin 2004, Santiago, Chile. GemcomSoftwareInternational. (2011) (Version 6.2.4). Vancouver, BC, CANADA. Guest, A., VanHout, G. J., Von, J. A., & Scheepers, L. F. (2000). An application of linear programming for block cave draw control. Paper presented at the Massmin2000, Brisbane. Holmstrom, K. (2011). TOMLAB/CPLEX, ver. 11.2. Pullman, WA, USA: Tomlab Optimization. Kuchta, M., Newman, A., & Topal, E. (2004). Implementing a Production Schedule at LKAB 's Kiruna Mine. Interfaces, 34(2), 124-134. MathWorksInc. (2011). MATLAB (R2011b) (Version 7.13.0.564). MathWorks, Inc. Rahal, D. (2008). The use of mixed integer linear programming for long-term scheduling in block caving mines. The University of Queensland, Brisbane, Queensland, Australia. Rahal, D., Smith, M., Van Hout, G. J., & Von Johannides, A. (2003). The use of mixed integer linear programming for long-term scheduling in block caving mines. Paper presented at the 31st International Symposium on the Application of Computers and operations Research in the Minerals Industries (APCOM), Cape Town, South Africa. Rubio, E. (2002). Long-term planning of block caving operations using mathematical programming tools. MSc, University of British Columbia, Vancouver, Canada. Rubio, E., & Diering, T. (2004). Block cave production planning using operations research tools. Paper presented at the MassMin 2004, Santiago, Chile. Topal, E. (2008). Early start and late start algorithms to improve the solution time for long-term underground mine production scheduling. Journal of The South African Institute of Mining and Metallurgy, 108(2), 99-107.