Motivation
Strategic open pit mine planning decides which parts of an ore body are excavated, when, and where each block of material is sent. Rivera Letelier, Espinoza, Goycoolea, Moreno and Muñoz (Operations Research 68(5), 2020) model the problem as a mixed-integer program, the precedence-constrained production scheduling problem with clusters (PCPSP-C), generalising the formulation of Bienstock and Zuckerberg (2010). Its integer versions have large integrality gaps on production scheduling instances, so the authors derive several families of cutting planes. This mission concerns the first family, the extraction cuts of §5.1: early start cuts, diamond cuts, and clique and lifted clique cuts. They exploit only the mining capacity of each period and the precedence structure, and they are valid both under full integrality and under the partial integrality used in commercial mine planning software.
Clique inequalities for precedence-constrained knapsack problems go back to Boyd (1993); early start cuts to Gaupp (2008, doctoral dissertation, Colorado School of Mines); the diamond cuts resemble cuts of Zhu, Bard and Yu (2006) for multimode project scheduling. The paper's contribution is their extension to the multi-period clustered model and to partial integrality.
All page references are journal pages of the published Operations Research article.
Setting
An instance has finite sets B of blocks, D of destinations and C of clusters, the latter a partition of B, and periods T={1,…,T}. Block b lies in cluster c(b) and has weight qb≥0. A precedence relation b1≺b2 on blocks induces one on clusters (c1≺c2 if some block of c1 precedes some block of c2), assumed to be a strict partial order. The arc set A is its transitive reduction: (c,c′)∈A when c′ is an immediate predecessor of c. The closure is cl(c)={c}∪{c′:c′≺c}, the reverse closure rcl(c)={c}∪{c′:c≺c′}, and for a set S of clusters q(S)=∑c∈S∑b∈cqb, with qc=q({c}).
Variables xc,t give the fraction of cluster c extracted in period t and yb,d,t the fraction of block b sent to destination d in period t. The constraints (2)–(7) of p. 1427 are
xc(b),t=d∑yb,d,t,t∑xc,t≤1,t′≤t∑xc,t′≤t′≤t∑xc′,t′ ((c,c′)∈A),Gy≤g,y≥0,
together with an integrality condition: full integrality (10) xc,t∈{0,1} defines the PCPSP-F, and partial integrality (11), "∑t′≤txc,t′>0 implies ∑t′≤txc′,t′=1 for (c,c′)∈A", defines the PCPSP-P. The general rows Gy≤g include the mining capacity rows (8), ∑b∑dqbyb,d,t≤Ut.
The cuts are written in the cumulative variables wc,t=∑t′=1txc,t′ (17), and with Qt=∑t′=1tUt′. Two clusters c1,c2, neither preceding the other, are f-incompatible in time t if q(cl({c1,c2}))>Qt, and p-incompatible if q(cl({c1,c2})∖{c1,c2})>Qt.
Formalization targets
Goal: Theorem 4 (clique and lifted clique cuts), p. 1433
For a set {c1,…,ck} of clusters and t∈T, the clique inequality
i=1∑kwci,t≤1(23)
is valid for the PCPSP-F if the ci are pairwise f-incompatible, and for the PCPSP-P if they are pairwise p-incompatible. If moreover c≺ci for every i, the lifted inequality ∑i=1kwci,t≤wc,t is valid under the same conditions. The goal is the conjunction of these four validity claims.
Milestones
- (18)–(20), p. 1432: wc,t≤wc,t+1, wc,t≤wc′,t for (c,c′)∈A, and ∑cqcwc,t≤Qt at every feasible point satisfying (8).
- (21), p. 1432: under full integrality, wc,t∈{0,1}. Its partial counterpart (22), "wc,t>0 implies wc′,t=1 for (c,c′)∈A", is condition (11) verbatim in this formalization, which writes (11) in cumulative form, so it has no item of its own.
- Theorem 2 (early start cuts), p. 1432: if q(cl(c))>Qt, then wc,t=0 is valid for the PCPSP-F, and if qc>0, wc,t≤(Qt−q(cl(c)∖{c}))+/qc is valid for the PCPSP-P.
- Theorem 3 (diamond cuts), p. 1433: for t1≤t2 and c1≺c2, wc2,t2≤wc1,t1 is valid for the PCPSP-F if q(cl(c2)∩rcl(c1))>Qt1,t2=∑t′=t1t2Ut′, and for the PCPSP-P if q((cl(c2)∩rcl(c1))∖{c1,c2})>Qt1,t2.
Significance
Each of these inequalities cuts off fractional points of the linear relaxation while keeping every integer (or partially integer) schedule, and early start cuts can fix variables to zero before the solve. The paper motivates them by the large integrality gaps it observes on production scheduling instances (§5, p. 1432) and evaluates them, with its production cuts, in the computational study of §8. Because they use only the precedence order and the mining capacity, the extraction cuts apply to any multi-period precedence-constrained knapsack structure, beyond mining.
The results are proved in the paper, by short contradiction arguments. None of them has a machine-checked proof. Formalizing them yields a reusable model of the PCPSP-C with its two integrality regimes, and a checked account of exactly which rows of the formulation each cut relies on: in particular that validity needs the capacity rows (8) and the integrality condition, and fails for the LP relaxation.
Difficulty
The arguments rely on facts the paper uses in one line. Under partial integrality, wc,t>0 forces wc′,t=1 for every predecessor c′ of c, not only for the immediate ones of A; this requires chaining condition (11) along covering arcs of a finite strict order, and showing that every precedence is a chain of immediate ones. The counting step needs x≥0, which is not a constraint of the formulation but follows from xc(b),t=∑dyb,d,t, y≥0 and the nonemptiness of clusters. The diamond cut further splits the capacity Qt1,t2 between periods and uses monotonicity of w in time. A natural first attempt, arguing directly from the closure of ≺, does not apply: the formulation constrains only the arcs of A.
Formalization scope
Blocks, destinations and clusters are finite types; periods are Fin T, index t standing for period t+1. An instance carries the block-to-cluster map, the block precedence, values, discount rate, weights, capacities and m side rows Gy≤g. Cluster precedence is derived from block precedence; A is its covering relation, and constraints (4) and (11) range over A only. The closure of a pair, which the page does not define, is cl(c1)∪cl(c2). Incompatibility includes incomparability of the two clusters, as on the page; "pairwise" ranges over distinct members of a finite set, which may be empty or a singleton.
The standing assumptions of §2.1 are hypotheses of every statement: clusters cover B (so each is nonempty), ≺ is a strict partial order on clusters, r>0, and qb≥0. A cut "valid for the PCPSP-F (PCPSP-P)" is stated as: at every point feasible for the formulation with full (partial) integrality whose mining capacity rows (8) hold, the inequality holds. The capacity rows enter as an explicit hypothesis because the paper assumes they are among the rows of Gy≤g; without them every cut is false. Validity is never asserted for the LP relaxation, where the cuts do not hold, so the integrality condition cannot be dropped. In Theorem 2 the division by qc is guarded by qc>0, as on the page.
The development needs only finite sums, finite sets and orders from Mathlib. Contributions are welcome on the chaining lemma for covering relations of finite strict orders and on the nonnegativity and monotonicity of w, which every milestone shares.
Selected references
- O. Rivera Letelier, D. Espinoza, M. Goycoolea, E. Moreno, G. Muñoz, Production Scheduling for Strategic Open Pit Mine Planning: A Mixed-Integer Programming Approach, Operations Research 68(5):1425–1444, 2020. https://doi.org/10.1287/opre.2019.1965
- D. Bienstock, M. Zuckerberg, Solving LP Relaxations of Large-Scale Precedence Constrained Problems, Proc. 14th Conf. Integer Programming and Combinatorial Optimization (IPCO), 2010, pp. 1–14.
- E. A. Boyd, Polyhedral results for the precedence-constrained knapsack problem, Discrete Applied Mathematics 41(3):185–201, 1993.
- G. Zhu, J. F. Bard, G. Yu, A Branch-and-Cut Procedure for the Multimode Resource-Constrained Project-Scheduling Problem, INFORMS Journal on Computing 18(3):377–390, 2006.