Está en la página 1de 14

European Journal of Operational Research 177 (2007) 11531166 www.elsevier.

com/locate/ejor

O.R. Applications

The new Fundamental Tree Algorithm for production scheduling of open pit mines
Salih Ramazan
Rio Tinto, GPO Box A42, 152158 St. Georges Tce, Perth, WA 6000, Australia Received 10 July 2005; accepted 31 December 2005 Available online 20 March 2006

Abstract The problem of annual production scheduling in surface mining consists of determining an optimal sequence of extracting the mineralized material from the ground. The main objective of the optimization process is usually to maximize the total Net Present Value of the operation. Production scheduling is typically a mixed integer programming (MIP) type problem. However, the large number of integer variables required in formulating the problem makes it impossible to solve. To overcome this obstacle, a new algorithm termed Fundamental Tree Algorithm is developed based on linear programming to aggregate blocks of material and decrease the number of integer variables and the number of constraints required within the MIP formulation. This paper proposes the new Fundamental Tree Algorithm in optimizing production scheduling in surface mining. A case study on a large copper deposit summarized in the paper shows substantial economic benet of the proposed algorithm compared to existing methods. 2006 Elsevier B.V. All rights reserved.
Keywords: Large scale optimization; Fundamental Tree Algorithm; Production scheduling; Open pit mine optimization

1. Introduction Solving the annual production scheduling problem is crucially important for surface mining since it determines the rate and quality of the production involving large cash ows, which can be hundreds of millions of dollars in magnitude. The scheduling problem is determining the optimal sequence of extracting the mineralized material from the ground, so that the total net present value (NPV) from the operation will be maximized, subject to a set of operational and physical constraints.
E-mail address: salih.ramazan@riotinto.com

In mining operations, a mineralized zone is rst identied through exploration which involves drilling, mapping and geological interpretation. An orebody model is then developed to numerically represent the mineral deposit by dividing the eld into representative three dimensional rectangular blocks. Each block is assigned attributes of the deposits such as the grades of elements that are estimated using information obtained by sampling drill cores. These attributes are used to estimate the economic value of each block, which is the revenue expected to be generated from selling the metal contained, minus the cost of mining and processing.

0377-2217/$ - see front matter 2006 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2005.12.035

1154

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

Subsequently, the orebody model containing the deposit attributes and economic expected value are used to determine nal pit limits, which are the limits of the deposit up to which it is economic to mine. Hochbaum and Chen (2000) provide detailed discussion of commonly used methods in nding ultimate pit limits. Annual production scheduling is a decision problem, that is; which blocks within the nal pit limits should be mined in which year to maximize the total NPV within a set of dened constraints. The mining blocks are aggregated into larger volumes that each of them can be mined out in a year. The problem is nding the best way to aggregate these blocks so that NPV can be maximized when these volumes are mined. The main physical constraint in open pit mining is the slope requirement; all the blocks on top preventing mining of a given block must be mined. Fig. 1 shows a cross-sectional view of a hypothetical 2D orebody model containing eight blocks which are square in shape. The block identication numbers are written on the left-top corner and expected economic values are written in the center. If the safe slope angles are assumed to be 45, blocks 1, 2 and 3 would have to be excavated, or mined, before excavating block 6, or blocks 2, 3 and 4 have to be mined before block 7. In actual mining operations, the blocks that have to be mined before mining a given block are identied by using a cone template whose side angles are equal to the required slope angles for the deposit. If a deposit has dierent slopes at dierent regions, multiple cone templates are used. Further discussions and illustrations of the slope angles on a cone can be found in Ramazan (2001). There are often too many blocks, over 100,000, within the nal pit limits to determine the optimum annual production schedule. To reduce the size of the problem, it is a common implementation to partition the material within the nal pit limits into smaller volumes called pushbacks using one of the existing methods including Ramazan (1996), Seymour (1995) and Whittle (1988). The pushbacks

Level 1

-1

2 6

-2 +6

3 7

-2 +3

4 8

-2 +4

-2

Level 2

Fig. 1. A cross-sectional view of a small 2D block model.

are used as a guide in determining annual production scheduling for the duration mine life. Mixed integer and linear programming models are recognized as having signicant potential for optimizing production scheduling in open pit mines, in which the objective is to maximize total discounted prot. However, MIP formulation of the production scheduling problem for open pit mines requires too many binary variables making it very dicult or impossible to solve. For example, if there are 10,000 mining blocks in a pushback to be scheduled over 3 years, it will require 30,000 binary variables to generate the MIP formulation. This would make it very dicult or even impossible to solve the MIP formulation. Recognizing the strength of operations research techniques in optimization process, Johnson (1968) developed an LP scheduling model. He applied Dantzig and Wolfe (1960) decomposition principles to decompose the model into a master problem and a set of subproblems, which are solved using a maximum network ow (maxow) algorithm developed by Johnson (1968). However, this LP approach uses linear variables and leads to the mining of fractional blocks. Dagdelen (1985) used the Lagrangian decomposition method to decompose and solve a large MIP problem. The drawback of the approach is that the Lagrangian method might not always converge to an optimum solution if the Lagrange multipliers cannot result in a feasible solution. Gershon (1983) presented an LP approach together with MIP models for optimizing mine scheduling, which allowed partial block mining on the condition to that the entire block preceding it has been mined. The author suggests that the models for optimizing production scheduling of open pit mines require too many binary variables and cannot be solved. Alternative ecient methodologies for long-term production scheduling that reduce the required number of binary variables are presented in Ramazan and Dimitrakopoulos (2004). The maximum reduction of the binary variables with the proposed methods is down to the number of ore blocks, or positive economic value blocks, in the model times the production periods minus one. However, this reduction may not be sucient for some large open pit mines. Tolwinski (1998) proposes a method that combines the blocks on the same bench, termed atoms, and uses the Lerchs and Grossmann (LG) method (Lerchs and Grossmann, 1965) to generate pushbacks combining these atoms. The approach generates a production schedule using

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

1155

dynamic programming. However, combining blocks into atoms may strongly reduce any possibility of the optimal solution depending on the size of the atoms which is not mentioned. The Milawa algorithm discussed in Whittle (2000) considers a few benches at each pushback as a variable and uses a search technique called the step and stride algorithm discussed in Warton (2000) to identify the regions of high value, rather than identifying individual mining blocks. This is a heuristic approach and does not guarantee an optimal solution. Godoy and Dimitrakopoulos (2004) applied simulated annealing optimization method for scheduling a large gold mine. Although the method seems promising, it does not explicitly include grade blending constraints in their model for application to mines with blending problems. Dimitrakopoulos and Ramazan (2004) developed an LP model that considers maximizing the chance of grade blending requirements and the feasibility of mining operations providing equipment access to the blocks. This LP model needs more testing in terms of satisfying the sequencing constraints for the open pit mines that have signicant depth, or multiple blocks vertically. In this paper, a new algorithm called Fundamental Tree Algorithm is proposed to reduce the number of binary variables required in MIP formulations and the number of constraints within MIP for optimizing annual production scheduling in open pit mines. The algorithm involves a newly developed linear programming model formulation to combine blocks into Fundamental Trees. A set of combined blocks is termed a Fundamental Tree if the combined blocks have the three properties: (i) can be mined without violating the slope constraints; (ii) the total economic value of the combined blocks as a fundamental tree must be positive; and (iii) a Fundamental Tree (FT) cannot be partitioned into smaller trees without violating (i) and (ii). It should be noted that all the blocks within the pushback considered for optimization must belong to a Fundamental Tree. It is shown in this paper why the LP model generates the Fundamental Trees (FTs) with the dened properties. After generating the FTs for a given mineral deposit, an MIP model modied from traditionally known MIP formulations is used to generate annual production schedules for mining. 2. Fundamental Tree Algorithm

Fig. 2. The FT Algorithm is implemented to the blocks within a pushback that has to be determined using one of the true optimizing methods such as Lerchs and Grossmanns method as implemented by Whittle (1988), or Maxow Algorithm by Johnson (1968). If the pushback is designed using a heuristic method such as implementations of the oating cone method by Lemieux (1979), as presented in Ramazan (1996) or Wang and Sevim (1993), the LP model formulations in Step 3, which is discussed in the next section, would be infeasible as discussed in Section 4. The economic value of a block i (Vi) is calculated based on the expected net revenue (NRi) to be gained from selling the contained metal within block i. If PCi is the processing cost, the value of the block is   NRi MCi PCi if NRi > PCi Vi ; 1 MCi if NRi 6 PCi where MCi is the cost of mining block i. Some denitions and explanations are provided here to contribute clarication of the proceeding sections in the paper. If Vi > 0, the block i is said to be a positive value block. Otherwise, it is said to be a negative value block. If a negative value

Start from the ultimate pit limits or a pushback

Step 1

Generate a starting network

Step 2

Find the cone value for all the positive blocks

Step 3

Assign coefficients to all the positive blocks

Step 4

Set up and solve the LP formulation

Step 5
Yes

Current Solution = Previous Solution?

No

Step 6
Generate the solution network

Step 7 Stop

The proposed Fundamental Tree Algorithm consists of ve steps that are schematically illustrated in

Fig. 2. Steps of the Fundamental Tree Algorithm.

1156

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

block, say j, preventing mining two positive value blocks, say i and k, under j and neither of the positive value blocks have enough value to mine j (Vi + Vj < 0, and Vk + Vj < 0), revenue from both of the blocks i and k may need to support the cost of mining j if Vi + Vk + Vj > 0. When more than one positive value block supports the mining cost of a negative value block, it is called joint support in mining. If there is a block, say j, that is located on top of another block, say i, preventing block i to be mined, j is said to be an overlying block of i and i is said to be an underlying block of j. The blocks that are sent to the processing plant to extract the metal from the rock, NRi > PCi, are called ore blocks and otherwise waste blocks. It should be noted that there are more complex methods for classifying a block as ore or waste, but this denition is used herein during scheduling process for simplicity. 2.1. Steps of the FT Algorithm The steps of the FT Algorithm illustrated schematically in Fig. 2 are discussed below: Step 4. Step 1. Generate a network for the blocks within a pushback. In the network, the blocks are represented by nodes and the mining slope requirement is represented by the arcs. The arcs in the network represent the node precedence relationship within the pit. An arc is set from each positive value node to all the overlying negative value nodes on the upper levels that have to be removed before accessing the underlying positive value node considered for removal. This node precedence relationship within the network is determined by using one or more cone templates as discussed previously. Step 2. Find the cone value CVi for each node i having positive value within the network. The economic values of all the nodes connected to node i with an arc set from node i are summed. This total economic value of the nodes is said to be the cone value of node i. Step 3. Assign coecients to the positive value nodes according to their cone value. This may also be considered as ranking of these nodes by elevation, or level. On the top most level where one or more positive value nodes exist, the node with the highest cone

Step 5.

Step 6.

Step 7.

value is assigned to 1, and the second highest cone value node is assigned to 2, and so on. For instance, if there are 3 positive value nodes on that level, the node with the smallest cone value is assigned to 3. Then, the ranking process moves down one level. If there are some positive value nodes on that level, the node with the highest cone value is assigned to 4. Otherwise, a lower level is searched for positive value nodes. The process is performed for all the positive value nodes within the network. If two or more positive value nodes on the same level have the same cone value (tie condition), the coecients are assigned randomly; two nodes must not be assigned the same coecient. For example, nodes i and j are on the same level, have the same cone value and Cmax is the highest coecient assigned previously, Ci is set to Cmax + 1 and Cj is set to Ci + 1. Since nodes i and j have exactly the same cone values, the results would be the same if coecients of i and j are exchanged. Set up the linear programming formulation as discussed in Section 3. After the problem formulation is ready, it can be solved using a commercially available solver. If the number of trees obtained is the same as the number of the trees obtained from the previous solution, go to Step 7 as the problem is considered to be at optimal, and the algorithm is stopped. If the number of trees is higher than the previous solution, keep the currently found connections between nodes and go to Step 6 to generate a new network to be used for iterating the algorithm. Initially, one can assume that whole network is 1 tree. Usually, two or three iterations are required for convergence. After obtaining a solution from LP model in Step 5, a new network is generated for this new solution. To generate the new network, rst the arcs in the previous network having no ow in the LP solution are deleted. After arc deletion, the nodes that are connected to each other are identied. The deleted arcs that exist in the previous network between the connected nodes are added again to the network. After generating the network, go back to Step 2. Stop.

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

1157

2.2. Application of steps of the FT Algorithm Application of the Fundamental Tree Algorithm is discussed using an example that can be considered as a cross-sectional view of some blocks on two consecutive elevations, or levels, given in Fig. 1. The node numbers are written on the left top corner of each block and the expected economic value from mining and processing a block is written at the center of each block. Step 1. A network is generated as shown in Fig. 3. Since nodes 6, 7 and 8 have positive economic values, the arcs are set from these nodes to the nodes on the upper level. For simplicity of the illustration, it is assumed that the blocks are the same in size and have to be mined with 45 slope angle in all directions. The arcs in the gure show the node precedence relationships based on the slope angle requirement. For example, in order to mine block 6, blocks 1, 2 and 3 must be mined, or to mine block 7, blocks 2, 3 and 4 must be mined, and so on. Step 2. If the economic value of node i is Vi, then CV6 = V6 + V1 + V2 + V3 = +6 1 2 2 CV6 = +1. Similarly, CV7 = 3, CV8 = 2. Step 3. Coecients Ci are assigned to positive value nodes according to CVi value and the levels where nodes are located. Since CV6 is greater than CV7 and CV8, C6 is set to 1; and since CV8 > CV7 C7 is set to 3 and C8 is 2.

Step 4. The initial problem formulation and its solution are given in Fig. 4a and the network representation of the solution is in Fig. 4b. The LP formulation, terms and notations used on the gure are explained in the next section. Fig. 4b shows that there are now two trees, which is greater than the initial one tree considering the initial assumption that starting network is a tree. Now the algorithm moves to Step 6. Step 6. After obtaining a solution from the LP model in Step 5, a new network (see Fig. 4b) is generated. To generate the new network, rst the arcs in the previous network having no ow in the LP solution are deleted. After arc deletion, the nodes that are connected to each other are identied. The deleted arcs that exist in the previous network between the connected nodes are added again to the network. For example, in Fig. 4b, if node 3 were connected to node 7 by an arc, all the arcs in the initial network would have to be kept since all the nodes would belong to the same tree. That means although there is no ow on

Minimise

f61+f62+f63+3f72+3f73+3f74 +2f83+2f84+2f85 Variable fS6 fS7 fS8 f1t f2t f3t f4t f5t f61 f62 f63 f72 f73 f74 f83 f84 f85 Value 5.003000 0.002000 4.000000 1.001000 2.001000 2.001000 2.001000 2.001000 1.001000 2.001000 2.001000 0.000000 0.000000 0.002000 0.000000 1.999000 2.001000

-1 1

-2 2

-2 3

-2 4

-2 5

6 6

3 7

4 8

Subject To fs6 <= 6 fs7 <= 3 fs8 <= 4 f1t = 1.001 f2t = 2.001 f3t = 2.001 f4t = 2.001 f5t = 2.001 f61-f1t = 0 f62+f72-f2t = 0 f63+f73+f83-f3t = 0 f74+f84-f4t = 0 f85-f5t = 0 fs6-f61-f62-f63 = 0 fs7-f72-f73-f74 = 0 fs8-f83-f84-f85 = 0

s
Fig. 3. Network representation of the 2D block model in Fig. 1. A source node s and a sink node t are added. Fig. 4a. The LP fundamental tree problem formulation on the left-hand side in the rst iteration and the solution on the righthand side.

1158

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

t -2 4 5

Minimise

f61+f62+f63+2f74 +3f84+3f85 Variable fS6 fS7 fS8 f1t f2t f3t f4t f5t f61 f62 f63 f74 f84 f85 Value 5.003000 2.001000 2.001000 1.001000 2.001000 2.001000 2.001000 2.001000 1.001000 2.001000 2.001000 2.001000 0.000000 2.001000

-1 1

-2 2

-2 3

-2

6 6 Tree I 7

4 8 Tree II

s
Fig. 4b. The network representation of the initial solution containing two trees surrounded by dashed lines.

Step 2.

Step 3.

Step 4.

Step 5.

Step 7.

the arc from node 8 to node 3 in the current solution, the arc would still be kept since nodes 3 and 8 would be members of the same tree. After generating the network, go to Step 2. The cone value of node 6 CV6 is unchanged, 1. Since node 2 and 3 belong to dierent tree than node 7, there is no arc between node 7 and nodes 2 and 3 in the current network. So, the value of nodes 2 and 3 are not considered in calculating the cone value of node 7. Since there is an arc from node 7 to only node 2, CV7 = +3 2 = +1, CV8 = +4 2 2 = 0. Coecients Ci are assigned to positive value nodes according to new CVi values. C6 is set to 1; and since CV7 > CV8 C7 is set to 2 and C8 is 3. The iterated problem formulation and its solution are given in Fig. 5a and the network representation of the solution is in Fig. 5b. The iterated LP formulation is explained in the next section. Since the number of trees from the current solution 3 is greater than the previous number of trees 2, the algorithm should normally move to Step 6. However, since there is no tree containing more than one positive value node in the results, it is impossible for any tree to be partitioned into sub-trees and repetition can be skipped in this case by going to Step 7. Stop the algorithm.

Subject To fs6 <= 6 fs7 <= 3 fs8 <= 4 f1t = 1.001 f2t = 2.001 f3t = 2.001 f4t = 2.001 f5t = 2.001 f61-f1t = 0 f62 -f2t= 0 f63 -f3t = 0 f74+f84-f4t = 0 f85-f5t = 0 fs6-f61-f62-f63 = 0 fs7 -f74 = 0 fs8 -f84-f85 = 0

Fig. 5a. The LP fundamental tree problem formulation on the left-hand side in the rst iteration and the solution on the righthand side.

t -1 1 -2 4 5 4 8 Tree III

-2 2

-2 3 3 6 7 Tree II s

-2

6 Tree I

Fig. 5b. The network representation of the solution containing three fundamental trees surrounded by dashed lines.

In the nal solution, the trees have the three dened properties of the fundamental trees as discussed in Section 1. Each of the trees has positive total economic value; trees can be removed without violating the slope constraints starting from the rst tree, then second tree and nally third tree; and none of the trees can be partitioned into sub-trees without violating the slope requirement and con-

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

1159

taining a total positive value. It is noted that tree numbers do not necessarily correspond to the sequence in which trees should be mined although it is the case in this small example. The mining sequence of the trees is determined using an MIP production scheduling model that will be discussed in Section 5. 3. The LP formulation to generate fundamental trees This section discusses the LP formulation of the Fundamental Tree Algorithm. The objective function is minimization of arc connections in the network weighted by the assigned ranks. The objective function is expressed as Min
n X w X i j

Fundamental Trees are generated in a way that higher value blocks become feasible for mining before the lower value blocks for the MIP scheduling model. This is a desirable condition for NPV maximization objective of annual production scheduling. A positive value node is limited in ow capacity to its value, which is constrained from source node, s, to positive nodes. The physical meaning of these constraints for mining is that the expected revenue from mining an ore block cannot support the mining waste where the cost is higher than the revenue. The constraint formulation is expressed as below: fsi 6 V i for all is, 3

C i fij ;

where Ci is the coecient for node i, which is for n positive value nodes discussed in the previous section; fij is the ow from node i to node j; j is the index for the negative value nodes connected to node i with an arc coming from i. If there is a ow over an arc, the arc is kept on the network to be generated from the output of this LP model. If there is one or more positive value nodes on level 1, there is no need to include them in the formulation because there are no arcs formed from these nodes. Since they already possess the dened properties of the fundamental tree, they are only considered in calculating cone values at Step 2, but not in the LP formulation. The objective function is constructed in a way that the arcs will be set from high cone value nodes to support the negative nodes above them. In a given level, it is considered that the highest cone value node, say node i, has the highest chance of supporting all the negative value nodes above node I, preventing node i from being mined. Therefore, if the arcs to be constructed are started from the highest cone value node (lowest objective coecient), considering the model constraints, the number of joint supports for negative value nodes will be minimized. This ranking, or coecients, in the objective function together with the model constraints has the most eect in establishing the third property of FT, which an FT cannot be partitioned into sub FTs. The coecients also have some role in making the FTs obey slope constraints although the eect is not as direct as in Eq. (4). Since the arc connections are prioritized from higher cone value nodes, the

where fsi is the ow sent from source node, s to node i, vi is the economic value of block i, which is set for only positive value nodes. Constraints are imposed on the arcs going from negative valued nodes to sink node t to ensure that the cost of mining waste blocks are justied by the income to be generated from mining the ore blocks. A small extra value n is also applied to negative value nodes to ensure that precedence relationship will not be violated by the trees. n is set to a very small number that will not be ignored by the solver such as 0.001. These constraints ensure that minimum economic value of a tree is greater than, or equal to n, which is strictly positive. This is the rst pre-dened property of a Fundamental Tree. Without using n value, if an overlying negative node is fully supported by an underlying positive value node, the total value of negative and positive nodes could be zero without requiring a joint support. That would not only generate zero value trees violating the dened property of Fundamental Trees for being strictly positive, but also cause violation in slope requirements, which is further discussed in Section 4. Note that if n is set to a number too high, the LP model may not produce fundamental trees with the dened properties. The total of the added n values for all the overlying connected nodes should be kept below 1. Otherwise, some trees may violate the last pre-dened property of a Fundamental Tree; one or more trees may be partitioned into sub-trees having the rst two pre-dened properties of fundamental trees if n value is set too high. Since the economic values in mining are suciently large, thousands in magnitude, they are rounded to integer values.

1160

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

The functionality of this rounding is discussed in Section 4, Property II. This constraint formulation is expressed as fjt V j n; 4

where n is a small positive decimal number; Vj is the value of the negative value node j; and t is the sink node. The total ow coming to a negative value node must be equal to the ows leaving that node. If the number of positive value nodes that arcs are set from towards the negative value node j is Oj, then the mass balance constraints around each negative value node is expressed as
Oj X i1

Property 1. A tree obtained by the FT Algorithm always has a total cumulative value greater than zero. Eq. (3) ensures that the positive value nodes cannot send more ow to the overlying negative value nodes than their own value. Eq. (4) ensures that all the negative value nodes are totally supported by underlying positive value nodes. For a given tree, constraints in Eqs. (3) and (4) can be written as follows: X X Vi P fsi ; X
j i i

V j n

X
i

fsi .

fij fjt 0.

Therefore, X X Vi P V j n;
i j

The total ow coming to a positive value node i from the source node must be equal to the total ow leaving that ore block. If the number of waste blocks overlying positive node i is Wi, the mass balance constraints for the positive value nodes are expressed as fsi
wi X j 1

fij 0.

The initial LP formulation and solution for the example network model given in Fig. 3 are illustrated in Fig. 4a. Fig. 4b is generated by deleting the arcs that are not used by the LP model from the initial network. The iterative LP formulation is generated using the current network of the system as stated in Section 2.1 shown in Fig. 4b. The LP model and the solution are given in Fig. 5a. The solution network in Fig. 5b is generated by deleting the arcs with no ow on them from the previous network. In the example, the number of binaries required is reduced from 8 to 3 by the use of FT. After generating the fundamental trees for a given orebody model, the annual production scheduling can be formulated as an MIP model treating each tree as a block having certain attributes discussed in Section 5. 4. Properties of the Fundamental Trees generated by the FT Algorithm The Fundamental Trees have three major properties by denition as given earlier in Section 1. These properties are discussed in this section.

the sum of all the positive value nodes where i V i isP in a tree, and j V j n is the sum of all the negative value nodes in the tree plus the small epsilon assigned to those nodes. Therefore, the minimum value of a tree is the sum of all the epsilons assigned to the negative value nodes within the tree. Since n is always a positive number, the total economic value of a tree generated by the FT Algorithm is always greater than zero. In the given example, the rst and second trees both have a cumulative value of +1 and the third tree has a value of +2. The property of the trees to be positive may raise the question: what happens if a tree has negative value. It is stated in Section 2 that the FT Algorithm is implemented to the blocks within a pushback that has to be determined using one of the true optimizing methods. This means that the total value of all the blocks, or nodes, considered must be positive. If all the blocks are connected to each other, forming one tree, the total value is positive and the entire pushback forms a feasible solution for the LP formulation. Therefore, there is at least one feasible solution to the LP formulation although it is not the optimal solution in most cases. Property 2. Slope constraints are not violated when fundamental trees are removed from the network one at a time respecting the sequencing between them. It is shown in Property 1 that all the overlying negative value nodes connected to positive value nodes in the initial network must be supported by underlying positive value nodes having arcs towards the negative value nodes, due to the model constraints. Since

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

1161

Property 1 provides a feasible solution to the Fundamental Tree LP problem, all the overlying negative value nodes will be supported. The arcs in the initial network are set from each positive value node to all its overlying negative value nodes which are forced to be fully supported. In a situation where a positive value node, say i, cannot fully support all its connected overlying nodes, the overlying node currently considered for support will require extra support from another positive value node, say k. Due to the small n, the ow capacity of the positive value node i cannot be fully consumed for supporting overlying negative nodes without requiring support from another positive value node k. It is because of the fact that the ow capacities (economic values of blocks) of the nodes are rounded to integers before setting the LP formulations whilst n is a small decimal number. Therefore, either the positive value node i will have to be able to support all the overlying negative nodes, or it will have to require support from another positive value node k to the same overlying negative value node where the ow capacity of the node i is fully consumed. This characteristic of n makes the resultant trees always obey the slope constraints. Property 3. A tree found by the FT Algorithm cannot contain a subset of trees that also can be a fundamental tree. If a sub-tree exists that is also a fundamental tree, it means there is a set of one or more positive value nodes in the sub-tree that has sufcient ow capacity to support all its overlying waste. If this were so, the LP solution would have identied the sub-tree as a fundamental tree due to the optimality of the objective function. It is always better to send the ows from the smaller coefcient node in the objective function than sending some of the ows from a higher coefcient node since each coefcient in the objective function is unique.

cantly. Traditionally, sequencing constraints are written for all the blocks below the rst level in the model whilst they are written only for FTs that are substantially less than the number of blocks with the proposed method. The substantial reduction in MIP problem size by applying FT Algorithm reduces the required solution time signicantly and that makes it possible to apply MIP model to large open pit mines. 5.1. MIP production scheduling formulation with Fundamental Trees The optimization model is maximization of the NPV, or discounted economic value, to be generated from the mining operation and hence for scheduling N Fundamental Trees over Y years, the objective function can be expressed as Max
Y X N X fDEVpi Oip DWCpi W ip g; p 1 i1

where Oip is dened as a binary variable for p < Y, valued 1 if the ore ton in FT i is scheduled for period p, and 0 otherwise; when p = Y, Oip is the percentage of the block scheduled in year p; Wip is a linear variable representing the tons of the waste to be mined at period p from fundamental tree i; DEVpi discounted economic value to be generated from mining and processing all the ore tons in year p from FT i; DWCip discounted average cost of mining one ton waste from FT i in year p. If the schedule of the mine until the last year is optimized using binary variables, the last years variables do not need to be dened as binary since the slope requirement will be satised from the previous years. Further discussions on this issue can be found in Ramazan and Dimitrakopoulos (2004). If the economic discount rate is d, discounting factor in year p, DFp, can be calculated by DFp 1=1:0 d .
p

5. Optimization of annual production scheduling using fundamental trees MIP scheduling formulations of the trees are done by treating each FT as a block having certain amount of ore tons with average grade of commodities and possibly some waste tons. Since binary variables are assigned to the FTs instead of blocks, the number of sequencing constraints, given in Eqs. (8) and (9) in Section 5.1, are also reduced signi-

7a

The economic value to be generated by processing all the ore tonnage at time 0 from FT i, DEV0i, can be determined by X DEV0i V j;
j

where j is the index for all the ore blocks that belongs to FT i. The objective function coecient DEVpi can be found by

1162

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

DEVpi DEV0i DFp .

7b

Similarly, the cost of mining the waste material can be calculated using Eq. (1) and DWCip is determined by DWCip DWCi0 DFp ; 7c

tons of waste material within tree i, these constraints can be set as follows: T Wi Oip
p X t 1

W it 6 0.

P where DWCi0 h V h =T Wi , which is the cost of mining one ton of waste material; h is the index for waste blocks that belongs to FT i and TWi is the total tons of waste material within FT i. The number of binary variables (NB) required for the MIP model using FTs is equal to the number of FTs multiplied by one less the total time period to be scheduled, which can be expressed as, NB = N * (Y 1). It is very important to maintain correct slope angles for the walls surrounding mined out areas in open pit mines. The slope cannot be too steep to prevent the side walls collapsing towards the zones of mining activity and it cannot be too shallow so as to avoid extracting too much waste material which can substantially increase the mining cost. Precedence of the FTs in mining operations can be identied using cone templates as in moving cone method (Lemieux, 1979). If j is the index for the fundamental trees that have to be removed before being able to remove tree i in period p, the sequencing formulations is written for each j as follows: Oip
p X t 1

To achieve a possible low cost at the processing plants, the ore material sent to the processing plant is sometimes constrained to have a grade (gram per ton, ounce per ton, or % metal contained) within a range of values. Assume that Gi is the average grade of FT i, and TOi is the total ore tonnage in FT i, Gmin and Gmax are the periodical minimum and maximum grade range requirements at the processing plant. Then, the constraint formulations for n-fundamental trees and a period p is expressed as PN i1 Gi T Oi Oip P Gmin ; T Oi Oip which can be expressed in linear form as
N X Gi Gmin T Oi Oip P 0; i1 N X Gi Gmax T Oi Oip 6 0. i1

10a 10b

Ojt 6 0.

8a

The sequencing formulation can also be written as in Eq. (8b), which is 1 constraint for all overlying FTs instead of one constraint for each overlying FT. However, this type of formulation containing fewer constraints in this way does not always reduce solution time compared to Eq. (8a). The two types of formulations are discussed in Ramazan and Dimitrakopoulos (2004) in terms of solution times. If Ni is the number of overlying FTs for FT i, Eq. (8b) is expressed as N i Oip
p Ni X X j t 1

The processing plant is limited by the amount of ore material it can process during a time period. A lower bound may also be applied in some cases to ensure that the processing plant will not be idle, and to avoid or reduce undesirable uctuations in the production. For n-FTs and a period p, the limitations of the processing mill capacity as lower and upper bounds can be written as follows:
N X ii N X ii

T Oi Oip P PCmin ; T Oi Oip P PCmax ;

11a 11b

Ojt 6 0.

8b

Another set of constraints that may also be considered as sequencing is that before mining the ore tonnages from a given FT, all the waste tonnages must be mined out in that FT. If TWi is the total

where PCmin and PCmax are the minimum and maximum capacity of mill. Since the production scheduling is performed within the nal pit, or a pushback, constraints are needed to ensure that all the material considered in optimization will be mined out. These constraints ensure that ore tons in each FT must be mined in a single period:
Y X p 1

Oip 1.

12

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

1163

Stripping ratio is dened as the ratio of total amount of waste material mined to the amount of ore produced. At some mining operation, stripping ratio is also limited at a maximum value. If the stripping ratio is SR, for a period p considering n-FT, the constraints not to exceed a given stripping ratio limit is dened as PN W ip SR PN i1 . i1 T Oi Oip Then
N X i 1

Total Ore Value ($) Total Waste Cost ($) Ore Tons Waste Tons Grade (%)

FT1 6 5 18 30 4.4

FT2 3 2 10 10 3.8

FT3 4 2 10 10 4.5

FT I FT II FT III

Fig. 6. Fundamental trees for the example block model with the given attributes.

W ip SRmax

N X i1

T Oi Oip 6 0;

13

Table 1 Production scheduling requirements for the example mining problem Description Total mining capacity Minimum ore input for processing plant (mill) Maximum ore input for processing plant (mill) Maximum stripping ratio (waste/ore) Minimum average grade at the mill plant Maximum average grade at the mill plant Values 50 tons 10 tons 20 tons 2.0:1.0 4.0% 4.5%

where SRmax is the maximum stripping ratio allowed during any year. The total amount of material mined during a year cannot be more than the total mining capacity of all the equipments, MCap. This requirement in open pit mining operations is expressed by
N X i 1

W ip T Oi Oip 6 MCap.

14

each time period p can be calculated by Eq. (7b) as below: DEV11 DEV10 DF1 6 0:91 5:46 for FT 1; p 1; DEV12 DEV10 DF2 6 0:83 4:98 for FT 1; p 2; DEV21 DEV20 DF1 3 0:91 2:73 for FT 2; p 1; DEV22 DEV20 DF2 3 0:83 2:49 for FT 2; p 2; DEV31 DEV30 DF1 4 0:91 3:64 for FT 3; p 1; DEV32 DEV30 DF2 4 0:83 3:32 for FT 3; p 2. Discounted cost of mining one ton of waste material for the example problem is calculated as follows: DWC01 5=30 0:167; and Using Eq. (7c), DWC11 0:167 0:91 0:152; DWC02 2=10 0:2 DWC03 2=10 0:2.

In some of the mining operations, the total tonnage of waste to be stripped out in a period is restricted not to exceed a waste stripping amount WCmax. For n-FTs and a given period p, the formulation is
N X i 1

W ip 6 WCmax .

15

6. Application of the MIP model with fundamental trees The application of MIP model in annual production scheduling of open pit mines is shown using the example containing three FTs. Although some of the constraints in this application may seem redundant, or the result may also be obvious, all the constraints assumed to exist in this case are written for illustration. The FTs determined previously are illustrated in Fig. 6 representing them as blocks. The scheduling requirements for the mine are set out in Table 1. Assuming a 10% economic discount rate, discount factors for the two years are found as shown in Eq. (7a); DF1 = 1/(1.10)1 = 0.91 and DF2 = 1/(1.10)2 = 0.83. Using these factors, discounted economic values for each FT and

1164

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

and similarly, DWC12 0:138; DWC22 0:166; DWC32 0:166. By inserting the calculated values to the objective function in Eq. (7), the following objective function is obtained for the example problem: Max 5:46O11 4:98O12 2:73O21 2:49O22 3:64O31 3:32O32 0:152W 11 0:138W 12 0:182W 21 0:166W 22 0:182W 31 0:166W 32 . The sequencing constraints between the second tree and the rst tree given in Eq. (8a) for the example are expressed as O21 O11 6 0, that means if the ore from tree 2 is taken in period 1, the ore from tree 1 must also be taken in period 1. The same constraint for the second period is written as O22 O11 O12 6 0, that means if the ore from tree 2 is excavated in period 2, the ore from tree 1 must be excavated in period 1, or period 2. Similarly, the constraints for the third tree is written as O31 O21 6 0 and O32 O21 O22 6 0. Since the constraints from second tree to rst tree are written, the constraints between the third tree and rst tree are not necessary. The constraints in Eq. (9) to represent the requirement of mining waste material within each tree before being able to mine ore material are written for the example problem as 30 * O11 W11 6 0, which means if the ore within FT1 is mined in the rst period (O11 = 1), then, the waste variable of the rst tree in the rst period, W11, must be equal to the waste tons in that tree, which is 30 tons. The same constraint for the second period is written as 30 * O12 W12 W11 6 0, which means if the ore material in the rst tree is mined in the second period, waste material in that tree can be mined in the rst period, or second period. The same constraints for the 2nd and 3rd FTs can be written similarly as follows: 10 O21 W 21 6 0; 10 O22 W 21 W 22 6 0; 10 O31 W 31 6 0; 10 O32 W 31 W 32 6 0. The grade constraints given in Eqs. (10a) and (10b) are illustrated for the problem as below: DWC21 0:182; DWC31 0:182 and

4:4 4:0 18 O11 3:8 4:0 10 O21 4:5 4:0 10 O31 P 0; 4:4 4:0 18 O12 3:8 4:0 10 O22 4:5 4:0 10 O32 P 0; 4:4 4:5 18 O11 3:8 4:5 10 O21 4:5 4:5 10 O31 6 0; 4:4 4:5 18 O12 3:8 4:5 10 O22 4:5 4:5 10 O32 6 0. The processing capacity is assumed to be limited with an upper and lower bound in this model. The requirements for this processing plant can be expressed using Eqs. (11a) and (11b) as 18O11 10O21 10O31 P 10; 18O12 10O22 10O32 P 10; 18O11 10O21 10O31 6 20; 18O12 10O22 10O32 6 20. The constraints in Eq. (12) ensures that an FT must be mined in one of the periods. We suggest these equality constraints be written before other constraints due to eciency of the problem although we are following a dierent order in this example to follow the equations given in Section 5.1. The constraints are applied for the example problem as O11 O12 1; O21 O22 1; O31 O32 1. Eq. (13) representing the limit on the stripping ratio in each period is applied to the example problem as W 11 W 21 W 31 2 18 O11 2 10 O21 2 10 O31 6 0; W 12 W 22 W 32 2 18 O12 2 10 O22 2 10 O32 6 0. The total capacity of the equipments in removing ore and waste material are limited during a given year at a maximum of 50 tons. This requirement given in Eq. (14), written for the example problem as W 11 W 21 W 31 18 O11 10 O21 10 O31 6 50; W 12 W 22 W 32 18 O12 10 O22 10 O32 6 50.

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166

1165

Solving the MIP problem results in mining FT 1 during the rst year (O11 = 1 and W11 = 30), and FT 2 and FT 3 are mined during the second year (O22 = 1, O32 = 1, W22 = 10 and W32 = 10). The objective value of the MIP is 3.39, which is the optimal NPV that can be generated from mining the example orebody model. Using the FT Algorithm, the number of binaries is reduced from 16 to 6. 7. Case study One of the case studies is performed on a large copper mine in Southern Peru that contains about 1 million blocks in the orebody model and has two ore processors, leaching process and mill plant. The proposed Fundamental Tree Algorithm reduced the number of blocks within the ultimate pit limits from 38,457 to 5512 fundamental trees. The MIP scheduling model is applied to develop a production schedule over 8 years for the mine. This was impossible to perform without applying the Fundamental Tree Algorithm due to large number of binary variables and large number of sequencing constraints required in formulating the problem. In one of the pushbacks scheduled over 4 years, the number of blocks were about 12,600. This would normally require 37,800 binary variables in the traditional MIP formulations, but FTA combined the blocks into 1640 trees, resulting the MIP scheduling model containing 4920 binary variables being solved in about 36 minutes with 5% gap. The number of constraints is also signicantly reduced by using FTs instead of blocks in the MIP formulation. Traditionally, sequencing constraints would be required for about 12,350 blocks excluding the top level. The proposed LP algorithm requires the sequencing constraints for only 1640 FTs, which is about 7.5 times fewer constraints. In mining, a gap less than 10% is often accepted as a good solution considering the uncertainty in estimated block grades used as input to the model. For this single project, the method produced $25M ($7%) higher NPV than the best NPV generating schedule obtained among three commonly used traditional software packages including MINTECs M821V, Earthworks NPV scheduler, and Whittles Milawa schedulers in the Four-X program. The NPV values are calculated after designing the haul roads and smoothing the pits that makes the prot achievable through the actual mining operation. A detail description of the proposed scheduling process, calculations and various maps

can be found in Ramazan (2001) and the three traditional scheduling details are given in Bernabe (2001). 8. Conclusions In this paper, a mathematical programming model is developed using linear variables to produce Fundamental Trees for any given orebody model for open pit mines. This model does not include any integer variables so that it solves large problems without running into time constraints. The number of integer variables required for the MIP scheduling formulation is decreased substantially using the fundamental trees. Since the number of FTs produced is signicantly less than the number of blocks in the model, the number of constraints are also substantially less than the traditional MIP scheduling formulations. Therefore, large open pit production scheduling can be optimized by MIP modelling for any objective such as maximizing NPV of a given mine project, or to solve hard ore quality and grade blending problems. It should be noted that alternative solutions may be available to nd the fundamental trees, which means the same number of fundamental trees may be determined with dierent congurations of connected blocks. However, determining all the possible congurations of the trees and measuring their eect on the scheduling are not performed. A significant dierence in the scheduling results for dierent block conguration of fundamental trees is not expected due to the structure of the FTA that makes the higher cone value blocks feasible to mine before the other blocks. Acknowledgements The author express special thanks to Prof. Roussos Dimitrakopoulos for reviewing this paper. The project was partly sponsored by Natural Resources Research Institute of Minnesota. References
Bernabe, D., 2001. Comparative analysis of open pit mine scheduling techniques for strategic mine planning of a copper mine in Southern Peru. M.Sc. Thesis, Colorado School of Mines, Golden CO. Dagdelen, K., 1985. Optimum multi-period open pit mine production scheduling by Lagrangian parameterization. Ph.D. Thesis, Colorado School of Mines, Golden, CO. Dantzig, G.B., Wolfe, P., 1960. Decomposition principle for linear programs. Operations Research 8 (1), 101111.

1166

S. Ramazan / European Journal of Operational Research 177 (2007) 11531166 Seymour, F., 1995. Pit limit parameterization from modied 3D LerchsGrossmann algorithm. SME Preprint Number: 95-96. Tolwinski, B., 1998. Scheduling production for open pit mines. In: Proc. 27th Internat. APCOM Symp., pp. 651662. Wang, Q., Sevim, H., 1993. An alternative to parameterization in nding a series of maximum-metal pits for production planning. In: Proc. 24th Internat. APCOM Symp., pp. 168 175. Warton, C., 2000. Add value to your mine through improved long term scheduling. In: Whittle North American Mine Planning Conference, CO. Whittle, J., 1988. Beyond optimisation in open pit design. In: Proc. Canadian Conf. on Computer Applications in the Mineral Industries, Rotterdam, pp. 331337. Whittle, D., 2000. Proteus environment: Sensitivity work made easy. In: Whittle North American Mine Planning Conference, CO. Salih Ramazan holds a PhD degree in mining engineering with a minor in computer science and mathematics, and MSc degree in mining engineering from Colorado School of Mines, USA, and rieure des ME degree in Geostatistics from Ecole Nationale Supe Mines de Paris, France. He is specialized in operations research methods especially development of ecient large size mixed integer and stochastic programming models and applications to production scheduling of large open pit mines. He has worked as a research scientist for 4 years in developments of new stochastic optimization methods and algorithms at the University of Queensland, Australia, and is currently a mine planning engineer at Kalgoorlie Consolidated Gold Mines, Australia.

Dimitrakopoulos, R., Ramazan, S., 2004. Uncertainty based production scheduling in open pit mining. SME Transactions 316. Gershon, M.E., 1983. Optimal mine production scheduling evaluation of large scale mathematical programming approaches. International Journal of Mining Engineering 1, 315329. Godoy, M., Dimitrakopoulos, R., 2004. Managing risk and waste mining in long-term production scheduling. SME Transactions 316. Hochbaum, D.S., Chen, A., 2000. Performance analysis and best implementations of old and new algorithms for the open-pit mining problem. Operations Research 48, 894913. Johnson, T.B., 1968. Optimum open pit mine production scheduling. Ph.D. Dissertation, University of California, Berkeley, CA. Lemieux, M., 1979. Moving Cone Optimizing Algorithm. Computer methods for the 80s in the mineral industry. In: Weiss A. (Ed.), SME-AIME, pp. 329345. Lerchs, H., Grossmann, I.F., 1965. Optimum design of open-pit mines. Transactions on CIM LXVII, 4754. Ramazan, S., 1996. A new push back design algorithm in open pit mining. M.Sc. Thesis, Colorado School of Mines, Golden, CO. Ramazan, S., 2001. Open pit mine scheduling based on fundamental tree algorithm. Ph.D. Thesis, Colorado School of Mines, Golden, CO. Ramazan, S., Dimitrakopoulos, R., 2004. Recent applications of operations research and ecient MIP formulations in open pit mining. SME Transactions 316.