abstract - marcos goycooleamgoycool.uai.cl/papers/19hill_submitted.pdf · 48 in (44), (45), and...
TRANSCRIPT
Abstract
Effective computational methods are important for practitioners and researchersworking in strategic underground mine planning. We consider a class of prob-lems that can be modeled as a variant of the resource-constrained project schedul-ing problem with optional activities (or jobs) and generalized precedence con-straints; the objective maximizes net present value. We provide a computationalreview of math programming and constraint programming, describe and implementnovel problem-size reductions, and develop linear programming- and constraintprogramming-based hybrid techniques to significantly expand the number of com-putationally tractable problem instances. We analyze the efficacy of the methodsapplied to instances both from the literature and derived from real-world mines.These practical, large-scale planning problems cannot even be processed using stan-dard optimization approaches. However, our reduction and hybrid strategies allowus to solve them to within less than 5% of optimality in ten minutes and to withinless than 3.5% of optimality within a day.
1
Hybrid Optimization Strategies forResource-Constrained Project Scheduling
Problems in Underground Mining
Alessandro Hill1, Andrea Brickey2, Marcos Goycoolea3, andAlexandra Newman4
1California Polytechnic State University2South Dakota School of Mines
3Universidad Adolfo Ibanez4Colorado School of Mines
April 16, 2019
1 Introduction and Literature Review1
Production scheduling problems seek to optimally sequence jobs (or activities) over2
time in such a way as to comply with precedence and resource-capacity constraints.3
The models we study assume the form of a resource-constrained project scheduling4
problem (RCPSP) in which each activity is associated with a duration, a profit, and5
a lag (or delay) between the activity’s completion and the start of a subsequent6
activity. The duration is constant, regardless of when an activity is executed, and7
is directly related to the effort required to execute the corresponding activity, which8
consumes a certain amount of one or more given, limited resources, e.g., haulage9
or mill capacity. Precedence relationships arise from geometric and geotechnical10
rules specific to the mining method(s) being employed to construct access to and11
extract ore from the deposit. The goal is to determine start (or end) times for the12
activities such that net present value or some similar utility function is maximized.13
Constraints consist of (i) precedence between selected pairs of activities subject14
to lags, and (ii) per-time-period limits on the amount of resources that can be15
consumed by the activities.16
In strategic underground mine planning, a long-term, e.g., multiple-decade,17
schedule manages the extraction of ore during the lifetime of a mine. To this end,18
the ore body of interest containing economic concentrations of, for instance, cop-19
per and/or gold, is subdivided into smaller, notional, three-dimensional rectangular20
units (constituting a block model), for which extraction times are determined. Not21
all activities must be completed over the given time horizon (6), counter to what22
many project scheduling problems require. In addition to activities that are related23
to extraction (e.g., stoping or hauling), those corresponding to backfilling are nec-24
essary to guarantee stability within the mine. Moreover, the installation of infras-25
tructure and ventilation components significantly complicates underground mine26
2
planning. In this context, mine managers are increasingly relying on computer-27
based decision support, yielding optimization models that are difficult to solve,28
especially for large instances.29
1.1 Related Work30
Resource-constrained project scheduling problems have been studied in parallel,31
but separately – in mine planning, and, more generally, without a specific applica-32
tion. In the former case, the focus is on determining open pit mine schedules in33
which each activity, in this case, the extraction of a block, requires a single time34
period to complete and there are precedence restrictions but no time lags between35
activities. This special case arises because blocks are usually homogeneous in their36
extraction requirements. The more general manufacturing case possesses hetero-37
geneous activities whose durations and lags (or delays) vary. The general RCPSP38
was first introduced in (27) and in (38) and has been receiving notable attention in39
the literature since the late 1990’s. Its variants have applications in logistics, man-40
ufacturing, service operations, and transportation. An overview of existing models41
can be found in (23) and the latest methodological advances are given in (41). The42
most common objective in these applications is to minimize project makespan, i.e.,43
the time required to perform all activities. Instances with just 90 activities given in44
the PSPlib (30) are notoriously difficult to solve. For example, at the time of this45
writing, some of these larger instances cannot be solved at all, while others require46
hours to obtain a solution within approximately 10% of optimality.47
In (44), (45), and (32), scheduling heuristics for the RCPSP with discounted48
cash flows are proposed, while an exact algorithm is suggested in (46). (13) present49
an optimization-based heuristic for an RCPSP in an open-pit mine planning setting.50
(36) propose such a heuristic to solve an underground mine planning problem with51
a complex set of precedence constraints, inter alia, while (29) implement reformula-52
tions and a decomposition approach to yield solutions to the problem of scheduling53
both open pit and underground operations subject to a transition between the54
two at some (non-predetermined) stage during the mine plan. For comprehen-55
sive reviews of RCPSP variants and corresponding methodologies, we refer to (23)56
and (41).57
1.2 Contribution and Paper Organization58
We evaluate and extend state-of-the-art optimization approaches to the RCPSP, rel-59
evant in underground mine planning models with real-world datasets. We show how60
the integration of constraint programming (CP) and mathematical programming-61
based approaches can be used to obtain practical schedules and tight bounds on62
the corresponding optimal objective function value. Our main contributions are:63
(i) we describe reduction techniques that enable us to optimize large-scale problems64
in practice; (ii) we develop constraint programming-based hybrid scheduling tech-65
niques and assess their efficacy on industry data; and, (iii) we use these techniques66
to solve real-world mining production-scheduling instances in an operationally fea-67
sible amount of time.68
The remainder of this paper is structured as follows: Section 2 provides rele-69
vant definitions and notation. Section 3 discusses preprocessing strategies to reduce70
problem instance size. Section 4 explains the algorithms we use to solve the opti-71
mization problems. Section 5 demonstrates our strategies on a variety of industry72
datasets, and Section 6 concludes.73
3
2 Problem Formulation and Current Solution74
Approaches75
General resource-constrained production scheduling problems seek a minimum-76
makespan sequence of activities such that it contains the entire set of activities.77
By contrast, the RCPSP variant considered in underground mine planning maxi-78
mizes net present value, or discounted cashflows, but also allows optional activities.79
Both the general and the underground-mining-specific variant possess sequencing80
(or precedence) constraints between the activities. We next provide a mathematical81
formulation.82
2.1 Notation and Problem Definition83
Let T be a discrete time horizon, T = {0, 1, ..., T}. We are given a set of activities84
(i.e., jobs) J and a set of resources R available in each time period, i.e., so-called85
“renewable resources” in the scheduling literature. The accomplishment of activity86
(job) j ∈ J is associated with a monetary value pj ∈ R, a duration dj ∈ Z+,87
and a per-period resource utilization ujr ∈ R+ ∀ r ∈ R. Each resource r ∈ R88
has a constant availability Ur ∈ R+ per time period. Furthermore, we are given89
an activity-on-node network represented by an acyclic digraph H with node set90
J corresponding to the set of activities, and arc set A, representing generalized91
precedence relationships (see Figure 1, left), which require that if arc (i, j) ∈ A,92
and if activity j is scheduled then activity i must be scheduled as well. Each arc93
(i, j) ∈ A is associated with a lag lij ∈ Z+0 which is used to model the amount of94
time that must lapse between the end of activity i and the start of activity j. In95
other words, if activity j starts at time t, then activity i has to be finished at time96
t− lij or before.97
We write i ≺ j if there exists a directed path from node i to node j in H.98
Furthermore, if i ≺ j, let d(i, j) represent the length of the longest path from i to j99
(as measured in cumulative lags). For i ≺ j, we say that i is a predecessor of j, and100
j is a successor of i, respectively. A predecessor (successor) i is direct with respect101
to j if (i, j) ∈ A ((j, i) ∈ A).102
A feasible schedule S for the RCPSP is a set of scheduled activities J S ⊆ J103
and activity start times tSj ∈ T ∀j ∈ J S (or activity end times tSj ∈ T ∀j ∈ J S)104
such that:105
(i) if activity j is scheduled, then each direct predecessor i is scheduled and ends106
at least lij time units before the start time of j, and107
(ii) the consumption of each resource in each time period does not exceed its108
availability.109
For a given discount factor δ ∈ (0, 1], the net present value of schedule S is defined110
as the sum of the discounted profits of the scheduled activities:∑j∈J S
e−(1+δ)tSj pj .111
Our variant of the RCPSP accepts the empty schedule as feasible, and corre-112
sponds to PS|prec|∑CFj β
Cj according to the classification scheme in (7). This113
problem is known to be NP-hard (4).114
The following time-indexed formulation for the RCPSP, called a by-formulationor step-formulation, is known to yield the best linear programming-based bounds (2).We define the following variables representing the time by which each activity ends,
4
Figure 1: The activity-on-node network for an RCPSP literature instance (j301-1from (30)) with 30 activities (left) and an optimal schedule in Gantt chart representation(right).
i.e., the activity ends in time t or before:
yjt =
{1, if activity j ends by time t,
0, otherwise
Then, the RCPSP can be written as follows:
(F) min∑j∈J
∑t∈T
e−δtpj(yjt − yj,t−1) (1a)
yjt ≤yj,t+1 j ∈ J , t ∈ T (1b)∑j∈J
ujr∑
t<t′≤t+dj
(yjt′ − yj,t′−1) ≤Ur r ∈ R, t ∈ T (1c)
yj,t+dj+lij ≤yit (i, j) ∈ A, t ∈ T (1d)
yjt ∈{0, 1} j ∈ J , t ∈ T (1e)
The objective given in (1a) maximizes the net present value using discount rate115
δ. Without loss of generality, we consider end times when discounting profits.116
Variable linking inequalities (1b) ensure that if an activity ends by time t, it con-117
sequently ends by all the subsequent time periods. Resource-feasibility is enforced118
through knapsack inequalities (1c) in each period for each resource. Disaggregated119
generalized precedence inequalities (1d) ensure that the sequence and lag informa-120
tion given in A are appropriately considered; these collapse to ordinary precedence121
inequalities without lags if lij = 0. The bounds obtained by formulation (F) can122
be replicated with a strengthened “at” formulation, also called pulse-formulation123
(12, 17).124
2.2 Current Solution Approaches125
To solve the continuous relaxation of formulation (F), which in and of itself can be126
difficult, it is possible to use a decomposition algorithm that reduces the problem127
to that of solving a sequence of maximum-closure or minimum-cut problems. In128
fact, this follows directly from the “by” formulation, since it suffices to dualize the129
resource capacity constraints to obtain such a problem. (27), in the context of min-130
ing, was the first to attempt such an approach with Dantzig-Wolfe decomposition.131
Shortly after, (18), in the context of scheduling, proposed a Lagrangian relaxation132
decomposition approach. A number of similar approaches include (14), (12) and133
(34) in which the resource constraints are dualized.134
5
It is possible to strengthen the linear programming relaxation by using pre-135
processing and cutting planes and via a reformulation of the constraints. (43), and,136
independently, (5) and (19), strengthen the time-indexed formulation by incorpo-137
rating bounds on the earliest and latest possible time an activity can be started.138
For the RCPSP with release dates and due dates, pre-processing has been used139
to further strengthen the formulation through constraint programming techniques140
(see (15)). (12) and (5) develop and apply cutting planes based on clique and cover141
inequalities. In the context of mining, or more generally, when it is not necessary142
to schedule all activities, it is possible to excise activities from consideration (8).143
Given a solution to the linear programming relaxation of formulation (F), it is144
possible to use a list-scheduling heuristic to derive high-quality solutions for RCPSP.145
(37) and (22) propose using an α-points procedure that creates a topological or-146
dering of the activities, and schedules them as early as possible using said ordering147
as a priority list. Ties are broken using the time period after which α percent148
of an activity is scheduled in the linear programming relaxation; this time period149
corresponds to the one in which the activity is executed in the integer-feasible solu-150
tion. Their methods not only perform well in practice but also provide theoretical151
performance guarantees. (34) employ this type of algorithm in challenging com-152
putational tests with excellent results. Independently, and in a mining context,153
(11) develop the TopoSort heuristic, which also relies on the linear-programming154
relaxation solution as a starting point but breaks ties regarding when activities are155
scheduled with the first time period in which a fraction of an activity is scheduled156
as the time at which the activity is executed in the integer-feasible solution. For157
a survey, see (42). Properly branching can significantly improve performance, e.g.,158
as in (16) under criteria such as a “cut-set dominance” rule. However, little work159
with branching rules has been done in the context of mining.160
Local search heuristics that employ optimization as a sub-routine have proven161
effective, e.g., sliding time window heuristics (13) and local search heuristics (1, 11)162
which fix the values, or relax the integrality, of some of the variables in the formu-163
lation; both the relaxed and integer variables are optimized over, with (some subset164
of) the values of the integer variables being permanently fixed, and (some subset165
of) the relaxed variables being made integer in the next iteration; this procedure166
continues until an integer-feasible solution has been established. We refer to (23)167
and (41) for a survey on heuristic solution approaches for RCPSP variants.168
3 Reduction Techniques169
Model instance size significantly affects solvability because it is inextricably in-170
tertwined with the number of variables and constraints in (F). To this end, we171
introduce a variety of techniques to reduce the number of activities |J | and arcs172
|A|.173
3.1 Earliest Activity Start Times174
For each activity j ∈ J , we can compute a lower bound es(j) on the earliest time175
it would be possible to start its execution, as follows:176
es(j) = max{d(i, j) : i ∈ J : i ≺ j}.
Because H is acyclic, this value can be computed in linear time using a topological177
sorting of the nodes, and allows us to eliminate variables. Moreover, if j ∈ J is178
6
such that es(j) + dj > T , then activity j can be removed, because it is impossible179
to complete it during the given time horizon. To translate these early start times180
to the variables in (F) that represent when an activity ends, we offset them by the181
duration of activity j, dj182
3.2 Weighted Transitive Reduction183
We generalize the notion of the ultimate pit, or envelope of blocks which are eco-184
nomical to remove in the context of open pit mine planning, to eliminate variables.185
For a background on this technique, see (8) and (21).186
Consider the following relaxation of formulation (F), which can be obtained byeliminating inequalities (1c):
(F) min∑j∈J
∑t∈T
e−δtpj(yjt − yj,t−1) (2a)
yjt ≤yj,t+1 j ∈ J , t ∈ T (2b)
yj,t+dj+lij ≤yit (i, j) ∈ A, t ∈ T (2c)
yjt ∈{0, 1} j ∈ J , t ∈ T (2d)
Observe that formulation (F) takes the form of a maximum closure problem. That187
is, by renaming the indices, objective function, and precedences, it can be written188
as:189
max{cw : wi ≤ wj ∀(i, j) ∈ A, wi ∈ {0, 1}}. (3)
If we relax all knapsack constraints related to resource consumption, we obtain190
an integral optimal solution (9). Moreover, the resulting optimization problem191
reduces to a maximum closure, or minimum cut problem (33, 34), which (i) can be192
efficiently solved in polynomial time, and (ii) admits a unique minimal and optimal193
solution w1, in the sense that all other optimal solutions w∗ satisfy w1 ≤ w∗. For194
background on the maximum closure problem and a description of an algorithm195
that effectively solves it in practice, see (20), (10), and (24).196
Proposition. Let y1 be an optimal and minimal solution of (1a)-(1e), and y2197
any optimal solution of (2a)− (2d). For i = 1, 2, let J i = {j ∈ J : yijT = 1}. If T198
is sufficiently large, then, J 1 ⊆ J 2.199
Proof. Suppose not, and consider the non-empty set J∆ = J 1 \ J 2.200
For each j ∈ J , and t ≥ 1, define:201
wkj,t+k =
{y1jt if j ∈ J∆ and t+ k ∈ T
0 otherwise.
Observe that since J∆ is non-empty, the optimality and minimality of y1 implies202
that, for all k ≥ 0:203 ∑j∈J
∑t≥1
e−δtpj(wkjt − wkj,t−1) > 0.
Given that T is assumed to be large, we can also assume there exists k such that204
y2 +wk is feasible for (2a)− (2d). This, however, contradicts the optimality of y2,205
and so we conclude that J∆ must be empty. �206
This proposition implies that we can compute y2 and use it to eliminate each207
activity j ∈ J \ J 2 from the problem. Computing y2 is tractable, as mentioned208
above.209
7
3.3 Transitivity Closure210
Consider an arc (i, j) ∈ A. If d(i, j) > lij , then arc (i, j) can be removed from A211
without affecting the set of feasible solutions to the problem. All such redundant212
arcs can be identified efficiently with complexity O(|J ||A|), as follows:213
214
1. Compute a topological ordering of the nodes J , which can be accomplished215
in O(|J |+ |A|), as first shown by (28).216
2. For each activity i ∈ J , let A+(i) be the set of all arcs with tail i. Test the217
redundancy of all arcs (i, j) ∈ A+(i) as follows: By traversing the set of nodes218
in J in topological order, starting from i, compute the distance d(i, j) for all219
j � i. This can be done in O(|A|). Then, compare each distance d(i, j) to lij220
to determine redundancy, which can be done in O(|J ||A|).221
222
We refer to the resulting precedence graph as the weighted transitive reduction of223
the original precedence graph.224
3.4 Sub-Makespan Arcs225
Consider two activities i, j ∈ J such that i ≺ j. Assume that these two activities226
are such that they cannot be processed simultaneously due to the fact that together227
they consume more resources than is available in any time period. Assume that for228
some r ∈ R, uir + ujr > Ur. Then, if d(i, j) < di, add arc (i, j) with lag lij = di.229
That is, add a lag forcing j to start after i is finished, i.e., (i, j) with lij = di. Note230
that if arc (i, j) already exists, redefine lij = max(lij ,di) instead.231
This idea can be generalized as follows. Consider the set of activities J ij =232
{k ∈ J : i ≺ k ≺ j}. Solve the minimum makespan problem (considering resource233
limitations) in the subgraph induced by J ij , and let mij be the optimal value.234
Then, if d(i, j) < mij , add arc (i, j) with lag lij = mij . Note that if arc (i, j)235
already exists, redefine lij = mij , instead of adding a redundant arc.236
3.5 Elimination of Trivial Activities237
We can eliminate each zero-profit activity j ∈ J (i.e., pj = 0) if ujr = 0 for all238
r ∈ R. These types of activities are commonly added by mine planning schedulers239
as markers. When eliminating an activity j ∈ J , it is important to add an arc240
connecting each direct predecessor of j to each direct successor of j with the corre-241
sponding lags. That is, for every pair of arcs (i, j) and (j, k) in A, add an arc (i, k)242
with lag lij + ljk.243
4 Hybrid Optimization Algorithm244
In this section, we describe a hybrid algorithm combining both linear programming245
(LP) and constraint programming (CP). We execute the preprocessing steps de-246
scribed in Section 3 until no further reductions can be made. Then, we solve the247
LP to obtain an upper bound on the optimal objective function value; addition-248
ally, through a rounding technique on the resulting, fractional solution, we obtain249
an initial integer-feasible solution. CP is then used to improve upon the starting250
solution. We next explain the algorithm in more detail.251
8
1. Solving the LP relaxation252
It is well known that solving the LP relaxation of problem (1a) - (1e) can253
be difficult due to problem instance size. In fact, time-indexed formulations254
of the RCPSP grow linearly with the number of time periods, of which real-255
world problems tend to possess copious amounts, easily in the thousands.256
Decomposition algorithms address this difficulty; see, for example, (12), who257
use Lagrangian relaxation for the makespan version of RCPSP. In order to258
solve the LP relaxation, we use the decomposition algorithm proposed by259
(35), which is an extended version of the Bienstock-Zuckerberg algorithm260
(3) incorporating auxiliary variables and algorithmic speed-ups; however, we261
update the version in that reference to IBM ILOG CPLEX, Version 12.8 (26)262
for optimizing our master problems. Solving the LP relaxation provides an263
upper bound on the objective function of maximizing net present value, and264
can be used to estimate the quality of schedules obtained in later steps.265
2. Rounding the LP relaxation solution266
To obtain an integer-feasible solution to problem (1a) - (1e) we use a gen-267
eralized version of the TopoSort heuristic, which was originally proposed by268
(11) in the context of scheduling problems in open pit mine planning. The269
generalized TopoSort heuristic is described in Algorithm 1, and differs from270
its open pit variant by considering arc lags. Note that as long as coefficients271
ljt are non-negative for all j ∈ J and t ∈ T , the TopoSort algorithm is guar-272
anteed to produce a feasible solution. After running the TopoSort algorithm,273
we run the α-points procedure for one hundred different values of parameter274
α, evenly discretized between zero and one (37, 22).275
We call the combination of 1. and 2. the mathematical programming method-276
ology.277
3. Using constraint programming278
CP has been shown in a number of recent studies to be the most effective tech-279
nique for solving small and difficult instances of the RCPSP for both makespan280
minimization and net present value maximization; see, for example, (40, 39).281
Little has been published, however, on the effectiveness of CP for larger in-282
stances of the RCPSP. In the context of this study, we note that CP can be283
used both as an alternative means of generating an initial feasible solution to284
an instance of RCPSP and as a means to improve a solution produced by some285
other method. We use the IBM ILOG CP Optimizer Version 12.8 (ILOG CP)286
on an appropriate CP model (31) for both of these purposes, which iterates287
between using constraint programming and other techniques to compute a se-288
quence of improving upper and lower bounds to the RCPSP until optimality289
can be proven, or until a solution with a desired gap is found. Although the290
solver is effective at generating and improving the quality of feasible solutions,291
it is usually very slow to generate upper bounds (via a technique that is not292
entirely transparent to the user) stronger than those from the LP relaxation.293
Since ILOG CP does not allow the user to import externally computed upper294
bounds, we configure it to stop each time it generates a new and improving295
feasible solution. We then compare the quality of this solution against the up-296
per bound provided by the LP solution. If the gap is below a pre-established297
value, we stop. Otherwise, ILOG CP continues attempting to improve the298
solution, or attains the desired gap with its own computed upper bounds.299
9
Algorithm 1: The TopoSort Heuristic.
Input: An instance of RCPSP, as defined by (1a)-(1e), and a feasible solution y∗ of
the LP relaxation.
Output: A feasible solution y of the RCPSP instance, satisfying the integrality
constraint.
1 For each j ∈ J define:
δ(j) = |{i ∈ J : (i, j) ∈ A}|,Sj = {k ∈ J : (j, k) ∈ A},y∗j,0 = 0, y∗j,T+1 = 1,
es(j) = min{t ∈ 1, . . . , T + 1 : y∗jt > 0},
E(j) =
T+1∑t=1
t(y∗jt − y∗j,t−1).
2 y ← 0.
3 while J 6= ∅ do4 Choose ∈ J that solves min{E(j) : δ(j) = 0, es(j) ≤ T} (break ties choosing an
activity with the highest objective value).
5 for t = 1, . . . , T do
6 yt ← 1, ∀t ≥ t.
7 if
(∑j∈J
ujr(yjτ − yj,τ−dj ) ≤ Ur, ∀r ∈ R, τ ∈ T
)then
8 break.
9 else yt ← 0, ∀t ≥ t.
10 if yt = 1 then
11 for k ∈ S do
12 δ(k)← δ(k)− 1.
13 es(k)← max{es(k), t+ ljk}.
14 J ← J \ {}.
15 return y
5 Computational Study300
We conduct our computational experiments using Linux 2.6.32 as the operating301
system and an x86 64 architecture, with four eight-core Intel Xeon E5-2670 pro-302
cessors and 128 GB of RAM. All mining instances follow an underground method303
similar to the one displayed in Figure 2, in which ore is extracted one vertical level304
at a time from the highest to the lowest. Extraction of sections of ore on each level305
represent activities which result in profit (as the recovered ore is processed and306
sold), while development and backfilling activities incur a cost but are necessary to307
access the ore. Labor capacity, as well as equipment availability, limit the mining308
rate and constitute the resource constraints.309
We evaluate our approach by applying it to five groups of instances from different310
mines: A-1 through C-5 are academic (17), and D and E are based on real-world311
10
Figure 2: A sublevel stoping mining operation, consisting of activities such as developmentand drilling, in which ore is extracted from vertical levels (25)
data sets with a five- and ten-year time horizon at daily fidelity, respectively. We312
make slight modifications to the real-world data sets to disguise the data without313
altering the underlying structure. The complexity of the precedence constraints314
can be seen in Figure 3 where (A) highlights the development, e.g., decline, needed315
to access the deposit, (B) the ventilation development required to ensure proper316
airflow for safety and comfort of miners, (C) the production drifts used to access317
the mining areas, and (D) the stopes extracted. Geotechnical requirements may318
create additional precedence between different areas or levels within the mine.319
We conduct two types of numerical experiments: (i) those showing the effec-320
tiveness of the preprocessing techniques from §3 and the corresponding solution321
times and optimality gaps resulting from the implementation of the Bienstock-322
Zuckerberg algorithm and the TopoSort heuristic, i.e., the mathematical program-323
ming approach, to obtain an integer-feasible solution (see Table 1); and (ii) those324
contrasting the implementation of constraint programming alone with the hybrid325
strategies of either upper-bounding techniques only, or upper-bounding techniques326
and the TopoSort heuristic that yields an integer-feasible solution (see Table 2).327
We report preprocessing reductions only in terms of the number of variables as328
there are confounding effects related to the reduction in the number of constraints.329
While some instances benefit very little from the preprocessing techniques that330
eliminate fewer than 1% of the variables in a given problem instance, others see331
as much as a 26% reduction, depending on the geology of the orebody, the mining332
method employed, and how the block model was constructed. Solution times for333
most instances using just the mathematical programming methodology are fewer334
than three minutes, but the most computationally expensive instance requires more335
than 15.5 hours before the algorithm terminates. Correspondingly, most of the336
fast solving instances result in optimality gaps of less than 3%; the more difficult337
instances possess gaps in the 10-20% range.338
11
Figure 3: (A) Each design element is divided into activities (jobs) and each activityis associated with other activities through precedence. For example, in Quadrant A,decline segment 2 can only begin once segment 1 has been completed. (B) To ensurea safe working environment, all working areas need to be ventilated in an undergroundmine. In Quadrant B, the decline is constrained from advancing until its previous sectionhas been connected to the ventilation circuit through the ventilation access and raise. (C)The mine is divided into different levels used to access extraction areas, i.e., stopes, viaproduction drifts that are excavated from the main decline. As depicted in Quadrant C,stope extraction at a given level can only begin once the production drifts have been fullycompleted. (D) In Quadrant D, the stopes on the lower level can only be extracted whenstopes directly above them have been extracted to conform to precedences associatedwith a top-down mining method.
Therefore, we seek to reduce both the solution times and the gaps by introducing339
constraint programming. In and of itself, constraint programming performs signifi-340
cantly more poorly on all instances (third through fifth columns of Table 2) than the341
mathematical programming approach (second column of Table 2, which reiterates342
the last column of Table 1), even if the constraint programming algorithm is given343
more time. This is also the case when the code associated with the mathematical344
programming approach (whose solution times are almost completely attributable345
to the time required to solve the linear-programming relaxation) is slow. We at-346
tribute this performance to the structure of some of the instances which are not347
very constrained; as such, the constraint programming techniques cannot propa-348
gate the domain nearly as effectively. By contrast, the mathematical programming349
approach generates faster solutions with smaller optimality gaps due to its ability350
to exploit the precedence-constrained knapsack structure and the efficacy of the351
TopoSort heuristic.352
Providing the constraint programming solver with an upper bound produces353
tighter gaps more quickly; for example, after six hours of run time, gaps that av-354
12
erage approximately 37% with CP alone decrease to under 10% with the bound.355
In the majority of our instances, the linear-programming bound that the math-356
ematical programming approach provides is good (within 3% of the best integer357
solution found overall), suggesting that such a bound is helpful information for the358
constraint-programming solver. However, the hybrid strategy of providing the con-359
straint programming solver both with the integer-feasible solution from TopoSort360
as a lower bound and with the linear programming relaxation solution from the361
Bienstock-Zuckerberg algorithm as an upper bound unequivocally result in the best362
performance. Within ten minutes of solution time, the average gap across all in-363
stances reduces to less than 5%. The gap is further tightened to less than 3.5% after364
24 hours. Because the TopoSort heuristic is terminated when an integer-feasible so-365
lution is found, longer solution time resulting from the mathematical programming366
approach does not result in an improved optimality gap. By contrast, integer-367
feasible solutions generated by the mathematical programming approach can serve368
as initial-feasible solutions to the ILOG CP solver, and reduce the gap by an ad-369
ditional 50%, on average, even with a total of six hours of runtime (see Table 2).370
In some cases, constraint programming does not improve over the solution from371
the mathematical programming approach, but these cases generally correspond to372
those for which the mathematical programming approach determines a good solu-373
tion. For the more difficult cases, in particular, those for which the gap is between374
10 and 20% at the termination of the mathematical programming run, constraint375
programming reduces the gap, sometimes by an order of magnitude.376
While it is apparent that a hybrid strategy consisting of intertwining constraint377
programming with the mathematical programming approach provides the provably378
best solutions in the shortest amount of time for the instances we test, increased379
run time (beyond the 10-minute – and certainly six-hour – limit) has limited ability380
in most cases to significantly further reduce the gap. This implies that the con-381
sequences of determining good-quality solutions early in the search procedure are382
paramount to finding a good solution overall.383
13
Tab
le1:
Pro
ble
mC
har
acte
rist
ics,
Pre
pro
cess
ing
Eff
ecti
venes
s,an
dSol
uti
onT
ime
and
Qual
ity
usi
ng
just
the
Mat
hem
atic
alP
rogr
amm
ing
Met
hodol
ogy
Pro
blem
Chara
cteristics
Pre
pro
cessing
Resu
lts
#of
#of
#of
tim
e#
ofre
new
able
#of
#of
pre
ced
ence
Vari
ab
les
BZ
solv
eG
ap
aft
erIn
stance
acti
vit
ies
pre
ced
ence
sp
erio
ds
reso
urc
esva
riab
les
con
stra
ints
elim
inate
d(%
)ti
me
(sec
.)T
op
oS
ort
(%)
A-1
1,59
838
,016
602
87,2
6025
8,87
918.4
12.9
71.0
0A
-21,
881
65,6
2160
210
1,62
131
4,16
122.1
72.5
31.3
4A
-31,
944
67,8
9860
210
4,63
232
3,89
423.5
41.8
61.5
6A
-41,
961
94,5
0860
210
8,76
637
5,17
921.3
95.4
72.7
6A
-52,
140
71,5
8360
211
8,22
940
9,22
524.2
66.0
62.5
3A
-62,
453
111,
065
602
135,
204
481,
108
26.3
58.3
62.5
5B
-11,
157
104,
754
302
24,4
1997
,189
0.5
40.8
34.0
5B
-21,
160
103,
624
302
24,7
1499
,745
0.3
70.7
42.8
9B
-31,
176
110,
801
302
25,3
3910
4,34
70.1
80.9
32.3
9C
-11,
920
1,95
690
798
,865
136,
322
23.0
044.3
813.3
0C
-23,
322
3,78
918
08
336,
178
513,
065
19.8
893.0
311.6
4C
-33,
322
3,78
918
07
336,
178
535,
818
16.1
2152.2
613.5
7C
-45,
937
8,04
436
57
1,20
4,12
32,
121,
401
10.8
13,3
93.4
311.5
0C
-510
,083
15,2
4873
07
4,18
8,78
77,
954,
316
6.0
339,5
32.1
814.6
9D
7,55
312
,874
1,82
68
6,66
8,93
412
,679
,465
17.6
911,9
84.6
28.7
0E
10,0
9411
,703
3,65
34
20,9
82,7
1736
,238
,496
13.3
556,0
21.0
620.6
0
14
Tab
le2:
Gap
Impro
vem
ents
thro
ugh
Con
stra
int
Pro
gram
min
gw
her
eU
BD
eriv
esth
rough
the
BZ
Alg
orit
hm
and
LB
thro
ugh
Top
oSor
t
CP
Alo
ne
CP
with
UB
CP
with
UB
and
LB
Instance
TopoG
ap
Gap
at
Gap
at
Gap
at
Gap
at
Gap
at
Gap
at
Gap
at
Gap
at
Gap
at
(%)
600
sec.(%
)21,600
sec.(%
)86,400
(%)
600
sec.(%
)21,600
sec.(%
)86,400
(%)
600
sec.(%
)21,600
sec.(%
)86,400
(%)
A-1
1.00
21.65
20.99
20.99
1.10
1.00
1.00
1.00
1.00
1.00
A-2
1.34
23.67
23.07
22.99
1.72
1.00
1.00
1.13
1.00
1.00
A-3
1.6
26.42
22.85
22.83
1.91
1.00
1.00
1.34
1.00
1.00
A-4
2.80
32.51
29.92
29.79
3.73
2.46
2.28
2.01
1.55
1.54
A-5
2.53
40.46
38.20
38.00
3.46
2.19
1.88
2.03
1.67
1.59
A-6
2.60
42.00
41.03
41.00
3.00
1.40
1.34
2.10
1.40
1.40
B-1
4.05
72.26
72.11
72.06
15.44
15.00
14.82
2.44
2.10
2.02
B-2
2.89
71.03
70.80
70.80
14.66
13.89
13.85
2.00
2.00
2.00
B-3
2.40
67.60
67.41
67.41
7.78
7.60
7.60
2.40
2.40
2.40
C-1
13.30
16.35
4.84
4.10
12.00
9.53
8.82
1.00
1.00
1.00
C-2
11.64
25.89
23.77
23.29
21.37
19.12
18.61
7.34
5.92
5.89
C-3
13.57
23.25
21.24
21.10
13.72
11.47
11.31
7.62
5.36
5.06
C-4
11.50
57.78
53.50
52.93
27.87
20.58
19.58
9.56
6.85
6.12
C-5
14.69
58.28
55.38
54.83
27.14
22.08
21.12
13.14
10.80
9.94
D8.70
16.15
13.51
13.23
8.94
6.07
5.78
7.60
5.88
5.88
E20.60
36.96
35.73
35.28
13.28
11.65
11.02
8.44
7.88
7.69
Lin
earAvera
ge(%
)7.20
39.52
37.15
36.91
11.07
9.13
8.81
4.45
3.61
3.47
15
6 Conclusion384
Many strategic underground mine planning models possess a similar structure, that385
of a resource-constrained precedence problem, which we exploit in our mathemat-386
ical programming approach. Constraint-programming techniques can also be used387
to help find good, feasible solutions. Using both, combined with problem-size re-388
duction methods, we can significantly improve solution quality while simultaneously389
reducing solution times for real-life mining instances. Specifically, for the instances390
we test, with preprocessing and the hybrid strategy, the instances can be solved391
to within less than 5% of optimality in ten minutes and to within less than 3.5%392
of optimality within a day. These instances would otherwise be intractable with a393
state-of-the-art general-purpose solver such as CPLEX employing either its math-394
programming or constraint-programming algorithm. Even an algorithm specially395
tailored to provide fast solutions to the resource-constrained project scheduling396
problem fails to close the gap below 1% for six of the 17 instances; adding constraint397
programming to the quiver of algorithmic tactics results in an effective technique398
on all instances we test.399
Acknowledgements400
We acknowledge funding from Alford Mining Systems in partial support of this401
project, and the Center for Mathematical Modeling (Basal) of the University of402
Chile. We thank Akshay Chowdu of the South Dakota School of Mining and Tech-403
nology for his help in creating some of the instances and Levente Sipeki for per-404
forming preliminary computation.405
References406
[1] J. Amaya, D. Espinoza, M. Goycoolea, E. Moreno, T. Prevost, and E. Ru-407
bio. A scalable approach to optimal block scheduling. In Proceedings of AP-408
COM 2009, pages 567–575. The Canadian Institute of Mining, Metallurgy and409
Petroleum, 2009.410
[2] C. Artigues. On the strength of time-indexed formulations for the resource-411
constrained project scheduling problem. Operations Research Letters,412
45(2):154–159, 2017.413
[3] D. Bienstock and M. Zuckerberg. Solving LP relaxations of large-scale prece-414
dence constrained problems. In International Conference on Integer Program-415
ming and Combinatorial Optimization, pages 1–14. Springer, 2010.416
[4] J. Blazewicz, J. K. Lenstra, and A. R. Kan. Scheduling subject to resource con-417
straints: classification and complexity. Discrete Applied Mathematics, 5(1):11–418
24, 1983.419
[5] N. Boland, C. Fricke, and G. Froyland. A strengthened formulation and cutting420
planes for the open pit mine production scheduling problem. Computers and421
Operations Research, 37:1641–1647, 2010.422
[6] A. J. Brickey. Underground production scheduling optimization with ventilation423
constraints. PhD thesis, Colorado School of Mines, 2015.424
[7] P. Brucker, A. Drexl, R. Mohring, K. Neumann, and E. Pesch. Resource-425
constrained project scheduling: Notation, classification, models, and methods.426
European Journal of Operational Research, 112(1):3–41, 1999.427
16
[8] L. Caccetta and S. P. Hill. An application of branch and cut to open pit mine428
scheduling. Journal of Global Optimization, 27(2-3):349–365, 2003.429
[9] S. Chaudhuri, R. Walker, and J. Mitchell. Analyzing and exploiting the struc-430
ture of the constraints in the ILP approach to the scheduling problem. Very431
Large Scale Integration (VLSI) Systems, IEEE Transactions on, 2(4):456–471,432
1994.433
[10] B. Cherkassky and A. Goldberg. On implementing the push—relabel method434
for the maximum flow problem. Algorithmica, 19(4):390–410, 1997.435
[11] R. Chicoisne, D. Espinoza, M. Goycoolea, E. Moreno, and E. Rubio. A new436
algorithm for the open-pit mine production scheduling problem. Operations437
Research, 60(3):517–528, 2012.438
[12] N. Christofides, R. Alvarez-Valdes, and J. Tamarit. Project scheduling with439
resource constraints: A branch and bound approach. European Journal of440
Operational Research, 29(3):262–273, 1987.441
[13] C. Cullenbine, R. K. Wood, and A. Newman. A sliding time window heuristic442
for open pit mine block sequencing. Optimization Letters, 5(3):365–377, 2011.443
[14] K. Dagdelen and T. Johnson. Optimum open pit mine production scheduling444
by Lagrangian parameterization. In Proceedings of APCOM 2009, 1986.445
[15] S. Demassey, C. Artigues, and P. Michelon. Constraint-propagation-based446
cutting planes: An application to the resource-constrained project scheduling447
problem. INFORMS Journal on Computing, 17(1):52–65, 2005.448
[16] E. Demeulemeester and W. Herroelen. New benchmark results for the resource-449
constrained project scheduling problem. Management Science, 43(11):1485–450
1492, 1997.451
[17] D. Espinoza, M. Goycoolea, E. Moreno, and A. Newman. Minelib: A library of452
open pit mining problems. Annals of Operations Research, 206:93–114, 2013.453
[18] M. Fisher. Optimal solution of scheduling problems using Lagrange multipliers:454
Part I. Operations Research, 21(5):1114–1127, 1973.455
[19] M. Gaupp. Methods for improving the tractability of the block sequencing prob-456
lem for an open pit mine. PhD thesis, Division of Economics and Business,457
Colorado School of Mines, June 2008.458
[20] A. Goldberg and R. Tarjan. A new approach to the maximum-flow problem.459
Journal of the ACM, 35(4):921–940, 1988.460
[21] M. Goycoolea, D. Espinoza, E. Moreno, and O. Rivera. Comparing new and461
traditional methodologies for production scheduling in open pit mining. In462
Proceedings of APCOM, pages 352–359, 2015.463
[22] L. Hall, A. Schulz, D. Shmoys, and J. Wein. Scheduling to minimize average464
completion time: off-line and on-line approximation algorithms. Mathematics465
of Operations Research, 22(3):513–544, 1997.466
[23] S. Hartmann and D. Briskorn. A survey of variants and extensions of the467
resource-constrained project scheduling problem. European Journal of Opera-468
tional Research, 207(1):1–14, 2010.469
[24] D. S. Hochbaum. The pseudoflow algorithm: A new algorithm for the470
maximum-flow problem. Operations Research, 56(4):992–1009, 2008.471
[25] W. Hustrulid and R. Bullock. Underground mining methods: Engineering472
fundamentals and international case studies. SME, 2001.473
[26] IBM. IBM ILOG AMPL Version 12.8 User’s Guide: Standard (Command-line)474
Version including CPLEX Directives, May 2018.475
17
[27] T. J. R. Johnson. An algorithm for the resource constrained project scheduling476
problem. PhD thesis, Massachusetts Institute of Technology, 1967.477
[28] A. B. Kahn. Topological sorting of large networks. Communications of the478
ACM, 5(11):558–562, 1962.479
[29] B. King, M. Goycoolea, and A. Newman. Optimizing the open pit-to-480
underground mining transition. European Journal of Operational Research,481
257(1):297–309, 2017.482
[30] R. Kolisch and A. Sprecher. PSPLIB-a project scheduling problem library.483
European Journal of Operational Research, 96(1):205–216, 1997.484
[31] P. Laborie, J. Rogerie, P. Shaw, and P. Vilım. IBM ILOG CP Optimizer for485
scheduling. Constraints, 23(2):210–250, 2018.486
[32] P. Leyman and M. Vanhoucke. A new scheduling technique for the resource—487
constrained project scheduling problem with discounted cash flows. Interna-488
tional Journal of Production Research, 53(9):2771–2786, 2015.489
[33] R. Mohring, A. Schulz, F. Stork, and M. Uetz. On project scheduling with490
irregular starting time costs. Operations Research Letters, 28(4):149–154, 2001.491
[34] R. Mohring, A. Schulz, F. Stork, and M. Uetz. Solving project scheduling492
problems by minimum cut computations. Management Science, 49(3):330–493
350, 2003.494
[35] G. Munoz, D. Espinoza, M. Goycoolea, E. Moreno, M. Queyranne, and O. R.495
Letelier. A study of the Bienstock–Zuckerberg algorithm: applications in min-496
ing and resource constrained project scheduling. Computational Optimization497
and Applications, 69(2):501–534, 2018.498
[36] D. O’Sullivan and A. Newman. Optimization-based heuristics for underground499
mine scheduling. European Journal of Operational Research, 241(1):248–259,500
2015.501
[37] C. Phillips, C. Stein, and J. Wein. Minimizing average completion time in the502
presence of release dates. Mathematical Programming, 82(1-2):199–223, 1998.503
[38] A. A. B. Pritsker, L. J. Waiters, and P. M. Wolfe. Multiproject scheduling with504
limited resources: A zero-one programming approach. Management Science,505
16(1):93–108, 1969.506
[39] A. Schutt, G. Chu, P. Stuckey, and M. Wallace. Maximising the net present507
value for resource-constrained project scheduling. Integration of AI and OR508
Techniques in Contraint Programming for Combinatorial Optimzation Prob-509
lems, pages 362–378, 2012.510
[40] A. Schutt, T. Feydy, P. J. Stuckey, and M. G. Wallace. Explaining the cumu-511
lative propagator. Constraints, 16(3):250–282, 2011.512
[41] C. Schwindt and J. Zimmermann. Handbook on Project Management and513
Scheduling. International Handbooks on Information Systems. Springer Inter-514
national Publishing, 2015.515
[42] M. Skutella. List scheduling in order of α-points on a single machine. In Effi-516
cient Approximation and Online Algorithms, pages 250–291. Springer, 2006.517
[43] J. Stinson, E. Davis, and B. Khumawala. Multiple resource–constrained518
scheduling using branch and bound. AIIE Transactions, 10(3):252–259, 1978.519
[44] M. Vanhoucke. A genetic algorithm for net present value maximization for re-520
source constrained projects. In C. Cotta and P. Cowling, editors, Evolutionary521
Computation in Combinatorial Optimization, pages 13–24, Berlin, Heidelberg,522
2009. Springer Berlin Heidelberg.523
18
[45] M. Vanhoucke. A scatter search heuristic for maximising the net present value524
of a resource-constrained project with fixed activity cash flows. International525
Journal of Production Research, 48(7):1983–2001, 2010.526
[46] M. Vanhoucke, E. Demeulemeester, and W. Herroelen. On maximizing the net527
present value of a project under renewable resource constraints. Management528
Science, 47(8):1113–1121, 2001.529
19