Faculty of
Economics and Business
KU LEUVEN
NEW MODELS AND METHODS FOR SEQUENCING AND PROJECT SCHEDULING
Dissertation presented to obtain the degree of Doctor of Philosophy in Business Economics
by
Salim Rostami
Doctoral committee
Advisor:
Prof. dr. Roel Leus KU Leuven
Co-Advisor:
Prof. dr. Stefan Creemers IESEG School of Management
Members:
Prof. dr. Alessandro Agnetis University of Siena Prof. dr. Jeroen Belien KU Leuven
Prof. dr. Erik Demeulemeester KU Leuven Prof. dr. Frits C.R. Spieksma TU Eindhoven
Since the dissertations in the Faculty of Economics and Business are the personal work of their authors, only the latter are responsible for the content.
Daar de proefschriften in de reeks van de Faculteit Economie en Bedrijfswetenschappen het persoonlijk werk zijn van hun auteurs, zijn alleen
deze laatsten daarvoor verantwoordelijk.
Acknowledgments
If I have been able to see further, it was only because I stood on the shoulders of giants
Isaac Newton
Dear reader, if you are reading this, it means that I made it, and that would not have been possible without the direct or indirect help and support of my friends, family and colleagues. It is my honor to express my most sincere gratitude to these wonderful people.
First and foremost, I would like to thank my two PhD advisors, Roel Leus and Stefan Creemers, for this incredible adventure. I truly believe I never could have asked for a better pair of advisors. You were always there for me, not only for the academic part, but also as two very good friends. I am looking forward to many more years of productive collaboration with you. I cannot finish this paragraph without mentioning our many memorable evenings in Leuven and the next-day hangovers.
Roel, as my Master thesis supervisor, you set the bar so high that after two years of doing a PhD elsewhere, I decided to come back to Leuven and start a new PhD. You never lowered your quality expectations for the sake of quantity or time. I remember times when I was frustrated with some details of my research, and you encouraged (i.e., forced) me to try harder, and to not give up; you were right! Also, my office being across yours, I could always rely on your professional consultation. Thank you Sir.
viii
Stefan, I have learned so much from you about research and teaching. You are the most supportive advisor I could ask for. I will never forget our fruitful brainstorms (as well as discussions about our personal lives) during the many car trips to/from Lille. My advisor, colleague, and friend, thank you.
Besides my advisors, I would like to thank the rest of my thesis committee, Alessandro Agnetis, Jeroen Belien, Erik Demeulemeester, and Frits Spieksma, for their insightful comments and encourage-ment, but also for the hard questions that pushed me to broaden my research from various perspectives. My special thanks go to Alessandro, who invited me to visit the university of Siena in the spring of 2019. I believe our productive meetings were the start of a successful collaboration. Thank you for your hospitality. I also gratefully acknowledge the chair of my public defense, Robert Boute.
During my PhD, I concurrently worked at IESEG School of Management in Lille, France, as a research and teaching assistant. I greatly appreciate their support. My special thanks to the former and current heads of the Management department, Alejandra Duenas and Frank Goethals, and the head of the OPS track, Tanja Mlinar, for their help and encouragement.
I would also like to extend gratitude to my Bachelor project supervisor, Mohammad Ranjbar, who encouraged me to pursue my Master studies at KU Leuven.
ix
Arno, Christina, Christine, David, Frank G, Helen, Jenny, Karina, Khoi, Kristine, Libo, Lies, Linda, Majid, Marion, Maud, Minh, Mohammad, Nicolas, Oveis, Steven, Stijn, Susana, Tanja, and Violette, at IESEG. Je tiens aussi à remercier mon prof de français à l’IESEG, Anne Chounavelle.
Moving to a new city is always exciting and challenging, moving to a new country even more. Being far from family, I spent most of my spare time with friends, many of which currently live in very different parts of the world. I would like to thank all of them, especially Shahab, Arezoo, Milad, Javid, Amir, Yasamin, Farah, Moein (Iran), Mohsen, Farid (Canada), Ali J (US), Dr. Khalesi (Ireland), Morteza, Amir Hossein, Mahoor the geek, Ali Ch, Ashkan, Saeed V, and their partners, Zahra, Minoo, Silke aka Blondie, Mastaneh, the Mafia groups (Belgium), Arya, Saeed M (UK), Shahin (Netherlands), Yeganeh (Norway), and Julia (Germany). My special
thanks to Armita, for the reasons that she knows and I know. A substantial part of the writing of this work has been done dur-ing my periodic commute between Leuven and Lille. I acknowledge Eurostar for their punctuality. In that sense, I am not grateful to TGV at all.
In case the thesis contains any remaining flaws, I blame Leuven’s Oude Markt and its Friday nights. I particularly wish to denounce Barvista, Ambiorix, De Rector, Giraffe, and The Seven Oaks.
Finally, I dedicate this thesis to my Family: Fatemeh, Amin (my parents), Sadjad, and Ali (my brothers). I owe you my life, and everything good that has ever happened in it. Dad, growing up in your small library, surrounded by your books, I always dreamed of reading as much as you did; I still have to catch up. Mom, your unconditional love, no matter what I did and said, and which path I chose, has always been the biggest support. Without the help of you both, I would have never been here. I love you with all my heart.
Salim Rostami
Contents
Doctoral committee iii
Acknowledgments vii
1 Introduction 1
I Sequencing problems 7
2 The single-machine weighted tardiness problem 9
2.1 Introduction . . . 9
2.2 Precedence theorems . . . 11
2.2.1 Precedence theorems for E = ∅ . . . . 12
2.2.2 Extended precedence theorems for general E 13 2.2.3 Algorithmic application of the precedence the-orems . . . 18 2.3 DP algorithm . . . 19 2.3.1 DP recursion . . . 20 2.3.2 DP memory management . . . 21 2.4 Computational results . . . 24 2.4.1 Instances . . . 24
2.4.2 Memory gain of partitioning the state space . 26 2.4.3 Computational gain of Kanet’s theorems . . . 28
2.4.4 Comparing algorithms . . . 29
xii CONTENTS
Appendix . . . 33
3 Sequential testing of n-out-of-n systems 35 3.1 Introduction and related work . . . 35
3.2 Problem statement . . . 38 3.3 Precedence theorems . . . 42 3.4 DP algorithm . . . 51 3.4.1 DP recursion . . . 51 3.4.2 DP memory management . . . 53 3.5 Column generation . . . 56
3.5.1 The pricing problem . . . 57
3.5.2 Branch-and-price . . . 61
3.6 Computational results . . . 62
3.6.1 Experimental setup . . . 62
3.6.2 Implementation details . . . 63
3.6.3 Comparing the results . . . 64
3.7 Conclusions . . . 69
II Stochastic project scheduling 73 4 Stochastic resource-constrained project scheduling 75 4.1 Introduction . . . 75
4.2 Definitions . . . 80
4.2.1 The deterministic case . . . 80
4.2.2 The stochastic RCPSP . . . 83
4.2.3 Scheduling policies . . . 85
4.2.4 Elementary policies are not globally optimal . 90 4.3 Generalized preprocessor policies . . . 92
4.3.1 Definition . . . 92
4.3.2 Hierarchy . . . 94
4.3.3 Illustration and discussion . . . 95
4.4 Solution evaluation . . . 99
4.5 A two-phase metaheuristic algorithm for CGP . . . . 101
CONTENTS xiii
4.5.2 Phase 1: activity lists . . . 103
4.5.3 Phase 2: additional precedence constraints . 106 4.6 Computational results . . . 109
4.6.1 Experimental setup . . . 109
4.6.2 Policy evaluation . . . 110
4.6.3 Comparison with other policies . . . 113
4.6.4 Runtimes . . . 115
4.6.5 Makespan as a function of computational effort116 4.7 Summary and conclusions . . . 117
Appendix . . . 118
5 Max-npv project scheduling under uncertainty 123 5.1 Introduction and literature review . . . 123
5.1.1 Deterministic problem . . . 124 5.1.2 Stochastic problem . . . 126 5.2 Problem definition . . . 128 5.3 Scheduling policies . . . 130 5.3.1 Static policies . . . 130 5.3.2 Dynamic policies . . . 136 5.4 Solution method . . . 138 5.4.1 Optimal AD policies . . . 138
5.4.2 Dynamic policies: A heuristic method . . . . 139
5.5 Computational results . . . 142
5.5.1 Settings . . . 143
5.5.2 Results: Correlated jobs in Ω1 . . . 144
5.5.3 Results: Independent jobs in Ω2 . . . 148
5.6 Conclusions . . . 149
List of Figures 151
List of Tables 153
Bibliography 155
Dissertations from the Faculty of Economics and
Chapter 1
Introduction
Our everyday life is a collection of different scheduling problems. One simple example is how we order the weekend tasks such as family time, grocery shopping, cooking, doing laundry, running, getting a haircut, etc., and assign them to specific timeslots. There are always some practical constraints: the market is only open on Saturdays, or the barbershop is busy in the afternoons. Some of the tasks can be done in parallel, while some need our undivided attention. The objective can be to minimize the total duration, or to spread the tasks as evenly as possible over the weekend. Two examples of more complicated scheduling problems are the planning of a construction project, and production scheduling in a manufacturing company.
More formally, scheduling is a decision-making process that is used on a regular basis in many manufacturing and services indus-tries. It deals with the allocation of resources to tasks over given time periods and its goal is to optimize one or more objectives (Pinedo, 2016). A scheduling study models and defines the
prob-lem, elaborates its relevance and practical importance, reviews the existing literature on the problem, presents theoretical results to
2
facilitate solution methods, designs and implements computational algorithms for solving the problem, and proves the efficiency of the algorithms.
In this thesis we study two specific categories of scheduling problems. Part one deals with two sequencing problems: single machine scheduling, and sequential testing. Two suggested references on sequencing and machine scheduling problems are Brucker (2007) and Pinedo (2016). In the second part, we look at two stochastic project scheduling problems: minimization of the project duration under resource constraints, and maximization of the project’s net present value. For good starting points in the literature, we refer to the handbooks by Demeulemeester and Herroelen (2006), Neumann et al. (2012), and Schwindt and Zimmermann (2015).
Below we provide a short overview of the different parts and chapters of this thesis.
Part I: Sequencing problems
Chapter 2: The single-machine weighted tardiness prob-lem
CHAPTER 1. INTRODUCTION 3
We develop a framework for applying the precedence theorems to the precedence-constrained problem to tighten the search space, and we propose an exact DP algorithm that utilizes a new efficient memory management technique. Our procedure outperforms the state-of-the-art algorithm for instances with medium to high network density. We also empirically verify the computational gain of using different sets of precedence theorems.
Chapter 3: Sequential testing of n-out-of-n systems
4
Part II: Stochastic project scheduling
Chapter 4: Stochastic resource-constrained project schedul-ing
We study the stochastic resource-constrained project scheduling problem or SRCPSP, where project activities have stochastic dura-tions. A solution is a scheduling policy, and we propose a new class of policies that is a generalization of most of the classes described in the literature. A policy in this new class makes a number of a-priori decisions in a preprocessing phase while the remaining scheduling decisions are made online. A two-phase local search algorithm is pro-posed to optimize within the class. Our computational results show that the algorithm has been efficiently tuned towards finding high-quality solutions, and that it outperforms all existing algorithms for large instances. The results also indicate that the optimality gap even within the larger class of elementary policies is very small. Chapter 5: Max-npv project scheduling under uncer-tainty
CHAPTER 1. INTRODUCTION 5
Part I
Sequencing problems
Chapter 2
Precedence theorems and
dynamic programming for the
single-machine weighted
tardiness problem
2.1
Introduction
We consider a set N = {1, . . . , n} of jobs (activities) and a set E of precedence constraints: for any i, j ∈ N , if (i, j) ∈ E then job
i should be scheduled before job j. More specifically, E is a strict
partial order on N , i.e., it is irreflexive (pairs (j, j) /∈ E), asymmetric (if (i, j) ∈ E then (j, i) /∈ E), and transitive (if (i, j), (j, k) ∈ E then (i, k) ∈ E). Associated with each job i ∈ N is a processing time pi ∈ The content of this chapter has been published in European Journal of Operational Research (Rostami et al., 2019a).
10 2.1. INTRODUCTION
N0, a due date di ∈ N and a tardiness weight wi ∈ N0. All jobs are
available at time 0 to be processed on a single continuously available machine. The problem is to find a sequence s = (s1, s2, . . . , sn) of
the jobs that minimizes the total weighted tardiness
T (s) = X i∈N
wimax{0, Ci− di},
where Ci =P`
j=1psjis the earliest completion time of job i, and s`=
i. We define BiE = {j ∈ N |(j, i) ∈ E} and AEi = {j ∈ N |(i, j) ∈ E} as the job sets that should be processed before and after i according to E, respectively. Using the notation of Graham et al. (1979), this problem is denoted by 1|prec|P
wjTj. The problem is strongly
NP-hard (Lawler, 1977).
Two related problems have received quite some attention in the scheduling literature. The single-machine scheduling problem to minimize total weighted tardiness, 1||P
wjTj, has been surveyed
by Abdul-Razaq et al. (1990), who describe various dynamic pro-gramming (DP) and branch-and-bound (B&B) algorithms. Potts and Van Wassenhove (1985) propose a B&B algorithm that solves instances with up to 50 jobs to optimality within practical time and memory limits. Tanaka et al. (2009) extend the Successive Sublima-tion DP (SSDP) of Ibaraki and Nakamura (1994) and solve relatively large instances with up to 300 jobs. The precedence-constrained single-machine scheduling problem to minimize total weighted com-pletion time, 1|prec|P
wjCj, has been studied by, among others,
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 11
In contrast to the two aforementioned problems, the literature on 1|prec|Pw
jTj, which is a generalization, is rather scarce. Schrage
and Baker (1978) propose a DP method, the performance of which is very limited mainly due to memory insufficiency. Tanaka and Sato (2013) propose an extension of the algorithm of Tanaka et al. (2009) for the precedence-constrained problem that solves instances with up to 100 jobs (within practical time and memory limits) when the density of the precedence network is very low or very high. Davari et al. (2016) also report computational results for this problem, although their algorithm is developed for a generalized variant with release dates and deadlines; their algorithm solves instances with up to 50 activities.
2.2
Precedence theorems
12 2.2. PRECEDENCE THEOREMS
2.2.1 Precedence theorems for E = ∅
The three precedence theorems that Emmons (1969) proposes, are arguably some of the most fruitful results for 1||P
Tj; most of the
exact approaches rely on these theorems. Later on, Rinnooy Kan et al. (1975) and Rachamadugu (1987) have extended Emmons’ results to the weighted tardiness case 1||P
wjTj. These theorems
distinguish dominant precedence constraints for a job pool with E = ∅. Starting from S = ∅ and using Emmons’ theorems, one can add job pairs to S in an iterative fashion. Next, by solving the problem instance with precedence constraints S to optimality, an optimal solution to the original instance with E = ∅ can be found. In line with Emmons (1969) and Rinnooy Kan et al. (1975), for any X ⊆ N , we define P (X) =P
i∈Xpi and ¯X = N \ X. Similar to BEi and AEi ,
we define BiS and ASi based on S instead of E. Given a dominant S, and i, j ∈ N , Emmons’ conditions are as follows:
E1. pi≤ pj and wi≥ wj and di≤ max{dj, P (BjS) + pj}.
E2. wi ≥ wj and dj ≥ max{di, P ( ¯ASi) − pj}.
E3. dj ≥ P ( ¯ASi).
Emmons (1969) proves that when E = ∅, any of these conditions is sufficient to conclude (i, j) ∈ D. More recently, Kanet (2007) has generalized Emmons’ results with seven new conditions (K1 to K7). These are stated in the appendix. Emmons (1969) and Kanet (2007) show that combining the dominant constraints that are identified by these theorems iteratively does not remove all optimal solutions, i.e., any thus-obtained S is dominant iff it is acyclic.
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED TARDINESS PROBLEM 13 1 2 3 4
Figure 2.1: A project instance: Initial network
i pi wi di
1 9 4 5
2 2 1 1
3 2 8 6
4 2 7 2
Table 2.1: A project instance: Job parameters
when E = ∅, I(S, i, j) = 1 implies (i, j) ∈ D. We also define
C(S) = E ∪ {(i, j)|I(S, i, j) = 1}. When E = ∅ then C(S) ⊆ D,
but C(S) is not necessarily acyclic. Moreover, extending S iteratively can only improve the theorem conditions for other job pairs to be identified as dominant. Hence, for given dominant S1 and S2 the following result is intuitive.
Proposition 2.1. If S1 ⊂ S2 then C(S1) ⊆ C(S2).
2.2.2 Extended precedence theorems for general E With a general set E and for any (i, j), the acyclicity of E ∪ {(i, j)} becomes a necessary condition for the dominance of (i, j). Further-more, the precedence theorems that were discussed in Section 2.2.1 may not be applicable as is. Consider the example depicted in Figures 2.1-2.2, and Table 2.1 with E = {(1, 3), (2, 4)} and S = E.
14 2.2. PRECEDENCE THEOREMS
1
2 3
4
Figure 2.2: A project instance: Transitive closure of E ∪ {(3, 2)}
From: job j M job i To: βi job i γij job j αj
Figure 2.3: Swap strategy when E 6= ∅
to job 2. Since I(E, 3, 2) = 1 (based on K1, K4 and K5), we add the pair (3, 2) to S. As depicted in Figure 2.2, (3, 2) implies the transitive edges (1, 2), (1, 4) and (3, 4). Thus, we end up with the sequence s1 = (1, 3, 2, 4) with T (s1) = 159, while for the optimal sequence s∗ = (2, 4, 1, 3), T (s∗) = 119. The two transitive edges (1, 2) and (1, 4) are not dominant, and consequently remove the optimal solutions. This counterexample shows that with general E, Kanet’s and Emmons’ conditions cannot be directly invoked, i.e.,
I(S, i, j) = 1 is not sufficient to conclude (i, j) ∈ D. Hence, if E 6= ∅
then C(S) is not necessarily a subset of D.
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 15
From: job j M job i To: M \ αj job i job j αj
Figure 2.4: Insert-after strategy when E 6= ∅
An illustration of the swap and insert-after strategies for gen-eral E and a given dominant S is provided in Figures 2.3 and 2.4, where βi = (M ∩ BiE), αj = (M ∩ AEj ) and γij = M \ (αj ∪ βi). The symbol M represents the set of intermediate jobs between i and j. “From” representsany sequence that respects S, and “To” is the resulting sequence after swapping j and i or inserting j after i. The latter sequence respects E but not necessarily S, i.e., a number of dominant precedence constraints in S \ E might be violated. A sufficient condition for the dominance of (i, j) has the structure
LB(TI(i)) ≥ UB(TD(j)) + UB(TD(γij)) + UB(TD(αj)), (2.1)
where LB(·) and UB(·) are lower and upper bound functions, re-spectively, TI(i) is the tardiness improvement of job i, and TD(i) the tardiness degradation. Note that TD(βi) = 0.
16 2.2. PRECEDENCE THEOREMS
if the “To” sequence does not respect S, then by a finite number of swaps and insert-afters, it can be transformed into a sequence that respects S, such that the final sequence is at least as good as the intermediate sequences. Given an instance G(N, E), let V ⊆ D be the set of all activity pairs that satisfy Condition (2.1). We conclude:
Proposition 2.2. Any S ⊇ E for which (S \ E) ⊆ V is dominant
iff S is acyclic.
Hence, we search for an inclusion-maximal acyclic S ⊇ E such that (S \ E) ⊆ V .
In Condition (2.1), the completion times of jobs i and j depend on P (αj) and P (βi), so TI(i) and TD(j) depend on βiand αj. Also, TD(αj) can be positive in both strategies. Finally, even if pi≤ pj,
the value TD(γij) can still be positive in the swap strategy. We
therefore extend Emmons’ and Kanet’s theorems under the extra requirement that αj = βi = ∅.
Proposition 2.3. AEj ⊆ AS
i is a sufficient condition for αj = ∅. Proof. Proof. Remember that αj = M ∩ AEj . The requirement
that αj is empty means all jobs in AE
j are scheduled after job i.
Intuitively, the condition AEj ⊆ AE
i is sufficient to ensure αj = ∅.
Since the “From” sequence is feasible not only to E but also to S, the condition AEj ⊆ AS
i is also sufficient.
Analogously, we can prove:
Proposition 2.4. BiE ⊆ BS
j is a sufficient condition for βi = ∅.
The conditions AEj ⊆ AE
i , ASj ⊆ AEi and ASj ⊆ ASi are also
sufficient for αj = ∅ and BiE ⊆ BE
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 17
also sufficient for βi= ∅, but AEj ⊆ AS
i and BiE ⊆ BjS are easier to
fulfill compared to the other alternatives, since E ⊆ S.
When αj = βi = ∅, a sufficient condition for the dominance of (i, j) takes the form
LB(TI(i)) ≥ UB(TD(j)) + UB(TD(M )). (2.2) Kanet (2007) proves that given a dominant S and (i, j) ∈ N × N , if I(S, i, j) = 1 then (i, j) satisfies Condition (2.2). We summarize our findings with the following formal statements.
Proposition 2.5. When E 6= ∅ then each of Conditions E1 and
K1–3 together with AE
j ⊆ ASi and BiE ⊆ BjS imply (i, j) ∈ D.
Proposition 2.6. When E 6= ∅ then each of Conditions E2–3 and
K4–7 together with AE
j ⊆ ASi imply (i, j) ∈ D.
In the instance of Figure 2.1 and Table 2.1, (3, 2) /∈ D because
AE2 * AS3 and BE3 * B2S.
Given a dominant S ⊇ E, and a pair (i, j) such that S ∪ {(i, j)} is acyclic, we define
Γ(S, i, j) = {(k, l) ∈ N ×N |k ∈ (BiE\BjS)∪{i}, l ∈ (AEj \ASi )∪{j}} (2.3) as the set of all transitive pairs associated with (i, j) that are not yet included in S.
Proposition 2.7. If Γ(S, i, j) ⊆ C(S) then (i, j) ∈ D.
Proof. Proof. Given a set X of pairs, let X+be the transitive closure
18 2.2. PRECEDENCE THEOREMS
that S1+∩ (Γ(S, i, j) \ S1) = ∅. In other words, adding (k1, l1) to
S does not imply any transitive pairs within Γ(S, i, j). For such a
pair (k1, l1) we have AEl1 ⊆ A S k1 and B E k1 ⊆ B S l1. Consequently, based
on Proposition 2.5-2.6, (k1, l1) ∈ D. Analogously, in step q > 1,
there exist (kq, lq) ∈ Γ(S, i, j) and Sq = Sq−1∪ {(kq, lq)} such that Sq+∩ (Γ(S, i, j) \ Sq) = ∅. Thus, (kq, lq) ∈ D. We conclude that if
Γ(S, i, j) ⊆ C(S) then all the pairs in Γ(S, i, j) including (i, j) can be verified to be dominant and S ∪ {(i, j)} is a dominant set.
2.2.3 Algorithmic application of the precedence the-orems
In this section, we illustrate the algorithmic application of Propos-ition 2.7. Given a dominant partial order S that extends E, we propose a framework, Frame1, for evaluating the dominance of a given pair (i, j) without generating C(S) explicitly.
The idea of Frame1 is to sequentially add the pairs in Γ(S, i, j) to
S such that each addition entails no transitive pair within Γ(S, i, j)
(as in the proof of Proposition 2.7). To this end, for each (k, l) ∈ Γ(S, i, j) we determine the longest path between k and l in the transitive reduction of the graph G(N, S ∪ {(i, j)}). We assume unit length (weight) for all the edges (activity pairs). The Floyd-Warshall algorithm, for instance, can be used to calculate these longest paths efficiently. We define L(S, i, j) as a sequence of the pairs in Γ(S, i, j) in non-increasing order of their corresponding longest path length. Next, Frame1 checks the pairs in L(S, i, j) sequentially. Let (kq, lq) be the qth element of L(S, i, j). In the first step, we check
(k1, l1): if I(S, k1, l1) = 1 then we define S1 = S ∪ {(k1, l1)} and we
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED TARDINESS PROBLEM 19 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Figure 2.5: An example of the application of Frame1
I(Sq−1, kq, lq) = 1 then we construct Sq = Sq−1∪ {(kq, lq)}. Note
that by considering the pairs in Γ(S, i, j) in the order of L(S, i, j), based on Proposition 2.1, we benefit most from possible improve-ments in the theorem conditions for identifying the dominance of (kq, lq). If all the activity pairs in L(S, i, j) are successfully added to S, then the framework ends with a dominant S0⊃ E that includes (i, j).
Figure 2.5 provides an illustration of the application of Frame1 to the instance depicted in Figure 2.1. At each step, the dashed arc represents the pair whose dominance is being evaluated, while the dotted arcs are the added pairs in the previous steps. For this example we have L(E, 3, 2) = ((1, 4), (1, 2), (3, 4), (3, 2)) for the corresponding longest path lengths 3, 2, 2 and 1 in the transitive reduction of G(N, E ∪ {(3, 2)}). Given the parameters in Figure 2.1, the framework terminates after the test for (1, 4) as I(E, 1, 4) = 0, by concluding that (3, 2) /∈ D. For other parameter values, if (3, 2) ∈ D then the framework iteratively adds further pairs ((1, 2), (3, 4), and (3, 2)) as depicted in Figures 2.5.
2.3
DP algorithm
In this section, we propose a DP algorithm for solving 1|prec|P
wjTj.
20 2.3. DP ALGORITHM
(1978), but our DP utilizes a more efficient memory management technique (Section 2.3.2) that enables us to solve larger instances with the same memory limit. In order to decrease the size of the state space, we replace E by the inclusion-maximal dominant selection
S ⊇ E that was discussed in Section 2.2.
2.3.1 DP recursion
Each DP state Y ⊆ N represents a subproblem with |Y | to-be-scheduled jobs, where the first n − |Y | positions of the sequence are filled and we decide the job in the (n − |Y | + 1)th position. The state space Φ contains all feasible states. A state Y is feasible if it respects the precedence constraints, that is, ∀i ∈ Y : ASi ⊂ Y .
Given a state Y ∈ Φ, let Q(Y ) = {i ∈ Y | BiS∩ Y = ∅} be the set of tasks that are eligible to be scheduled. Hence, Q(Y ) contains all the possible decisions to be made in Y . Selecting job
i ∈ Q(Y ) results in a transition to state Y \{i}. The value function F
computes the minimum total cost for the subproblem corresponding to Y . Defining Ci = P ( ¯Y ) + pi, the value function can be computed
via the backward recursion
F (Y ) = min
i∈Q(Y ){wimax{0, Ci− di} + F (Y \ {i})}. (2.4)
Starting from the unique final state Y = ∅ with F (∅) = 0, the recursion iteratively calculates the objective value for the preceding states by (2.4).
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 21
management technique in order to reduce the memory requirement of the DP algorithm.
2.3.2 DP memory management
Schrage and Baker (1978) generate Φ in increasing (lexicographic) order of the binary representation τ (Y ) =P
i∈Y 2i−1of the states Y .
The main drawback of this approach is that it requires the storage of the entire state space. We propose a novel memory management technique that drastically reduces the number of states that are stored in memory simultaneously. In the recursion, any state that immediately follows an arbitrary Y consists of |Y | − 1 jobs. For any f ≤ n, let Υf ⊂ Φ denote the set of all feasible states Y with |Y | = f . Also, for a given Y ∈ Φ, let H(Y ) = {i ∈ ¯Y | ASi ⊆ Y } be the set of jobs in ¯Y with all successors in Y . Hence, for any i ∈ H(Y ), Y ∪ {i} is a feasible state. For a given f (0 < f ≤ n) we
have
Υf = [
Y ∈Υf −1
{Y ∪ {i} | i ∈ H(Y )} (2.5)
and Υ0 = {∅}. Thus, for any f ≤ n, the generation of Υf depends only on Υf −1. In the example of Figure 2.1, from Υ0 = {Y0}
with Y0 = ∅ we have H(Y0) = {3, 4}, and Υ1 = {Y1, Y2} with
Y1 = {4} and Y2 = {3}. Moreover, according to (2.4), for any state
22 2.3. DP ALGORITHM
were not solvable (within practical memory limits) before.
Next, we elaborate an algorithm that generates Υf from Υf −1. The elements of the resulting Υf are generated in decreasing order of their binary representation if the states in Υf −1 are processed in
decreasing binary order, and for each state Y ∈ Υf −1, the activities in H(Y ) are scanned in decreasing index order (i precedes j if
i > j). In the previous example, we consider the states in Υ1 (with
τ (Y1) = 8 and τ (Y2) = 4) in decreasing binary order (Y1 precedes
Y2), and the elements of H(Y1) = {2, 3} and H(Y2) = {1, 4} in
decreasing index order (e.g., for Y1, 3 precedes 2). Consequently,
the first generated state is Y3 = {3, 4}, which is obtained by adding job 3 to Y1. The next generated states are Y4 = {2, 4}, Y5= {3, 4}
and Y6 = {1, 3}, respectively. Since Y5 = Y3, the resulting Υ2 is
generated in decreasing binary order.
To check whether a newly generated state Y0 already exists in Υf i.e., Y0 ∈ Υf, one straight-forward way is to employ binary search in
Υf, with time complexity O(log |Υf|). However, the binary-ordered
generation of the states in Υf allows us to perform this check in O(1). The algorithmic description of this subroutine is provided in Algorithm 0, where H(Y )[i] is defined as the ith element in H(Y ). Moreover, let Υfi be the ith element of Υf, and u be counter of the states of Υf that are already generated by Algorithm 0. Assuming that the job indices form a topological order of G(N, S), we prove:
Theorem 2.1. In Algorithm 0, Any newly generated state Y0 has
not been generated before iff τ(Y0) < τ (Υf u).
Proof. Proof. Given Υf −1, we intend to obtain Υf. We assume
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 23
Algorithm 1 Υf generation subroutine
Input: Υf −1 in decreasing binary order and ∀Y ∈ Υf −1: H(Y )
in decreasing index order
Output: Υf in decreasing binary order
u = 1 Υf1 = Υf −11 ∪ H(Υf −11 )[1] for i = 1to |Υf −1| do for j = 1to |H(Υf −1i )| do Y0 = Υf −1i ∪ H(Υf −1i )[j] if τ (Y0) < τ (Υfu) then u = u + 1 Υf u = Y0 return Υf
that for each Y ∈ Υf −1 the jobs in H(Y ) are in decreasing index order, i.e., for 2 ≤ i ≤ |H(Y )| we have H(Y )[i − 1] > H(Y )[i]. In the first step, Υf1 is produced by adding H(Υf −11 )[1] to Υf −11 . This state is obviously unique. In any step q > 1, a state Y0 is generated. If Y0 is created from the same state in Υf −1 as for Υfu then we have τ (Y0) < τ (Υfu), because a job with smaller index is added to the same state. Next, we assume that Υfu and Y0 are produced from Υf −1a and Υf −1b , respectively, with a < b. Let
g = min{i ∈ Ybf −1} and h = max{i ∈ Υf −1
a \Υ
f −1
b }. Since g ∈ Y f −1 b
while h /∈ Ybf −1, we have h 6= g. If h < g then Υf −1a < Υf −1b , which contradicts the decreasing order of the states in Υf −1. Therefore,
h > g. We have τ (Y0) ≥ τ (Υfu) only if H(Υf −1b )[1] ≥ h. In this case, since the job indices form a topological order of G(N, S), we know that BgS ∩ Υf −1b = ∅ and g /∈ AS
H(Υf −1b )[1]. Consequently,
Y∗= Υf −1b \ {g} ∪ {H(Υf −1b )[1]} is a feasible state with cardinality
24 2.4. COMPUTATIONAL RESULTS
state Υf −1c = Y∗. Knowing that Y0 = Y∗∪ {g}, we conclude that
Y0has already been generated. If τ (Y0) < τ (Υfu), on the other hand, then Y0 is new. In conclusion, Y0 has already been generated iff
τ (Y0) ≥ τ (Υfu).
In the previous example we have τ (Y5) > τ (Y4), so Y5 is not stored.
Proposition 2.8. For each f (0 ≤ f ≤ n), Υf generated by
Al-gorithm 0 includes all the states Y ∈ Φ with |Y | = f, and con-sequently,S
0≤f ≤nΥf = Φ.
Proof. Proof. Given Υf −1, and at each iteration corresponding to
the loop counter i, Algorithm 0 considers all the jobs in H(Υf −1i ). Therefore, it generates all the feasible states that can be obtained from Υf −1i . Although the algorithm stores only the states Y0 with
τ (Y0) < τ (Υfu), Theorem 2.1 proves that all the discarded states were already generated and stored by the algorithm in the previous iterations. Hence, the resulting Υf includes all the feasible states Y with |Y | = f , and consequently S
0≤f ≤nΥf = Φ.
2.4
Computational results
All the experiments are performed on an Intel Core i5-4590, 3.3 GHz computer with 32 GB RAM. The memory consumption and CPU times are limited to 8 GB and 5400 seconds, respectively.
2.4.1 Instances
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 25
instances of 1||P
wjTj with 40, 50 and 100 jobs1. Tanaka and
Sato (2013) then add precedence constraints to the instances as in Potts and Van Wassenhove (1985) and Hoogeveen and van de Velde (1995): for any i, j ∈ N, i < j, the precedence constraint (i, j) is imposed with a specified probability ρ, which is chosen from {0.005, 0.01, 0.02, 0.05, 0.1, 0.2}. We refer to this dataset as the
Tanaka dataset2.
In our experiments we have observed that the probability ρ is not a suitable predictor for the difficulty of an instance (required runtime and memory), and that the the order strength (OS) is far more informative. The value OS measures the density of the precedence network, and is defined as the number of precedence-related activity pairs divided by the maximum possible number of such pairs. Demeulemeester et al. (2003) propose the random network generator RanGen, which takes OS as input parameter for the generation. Below, we denote the OS of the generated instance before and after applying precedence theorems by OS1 and OS2, respectively.
In Table 2.2 we report the minimum (min) and average (avg) OS1 of Tanaka’s instances. The table shows that very low OS values are over-represented, i.e., 57% of the instances (ρ ∈ {0, 0.005, 0.01, 0.02}) have very low densities (OS1 ≤ 0.04), and consequently they will have very similar runtime and memory requirements. Moreover, each ρ value results in instances with various OS values, and so instances of different difficulty levels would be categorized within the same setting (n and ρ). We therefore use RanGen to generate a second set of instances where OS1 ∈ {0, 0.2, 0.4, 0.6, 0.8} and
1
http://people.brunel.ac.uk/~mastjjb/jeb/orlib/wtinfo.html
26 2.4. COMPUTATIONAL RESULTS
ρ
n
40 50 100
min avg min avg min avg
0.2 0.43 0.63 0.56 0.68 0.77 0.82 0.1 0.15 0.28 0.21 0.35 0.49 0.57 0.05 0.04 0.10 0.06 0.11 0.14 0.23 0.02 0.01 0.03 0.01 0.03 0.02 0.04 0.01 < 0.01 0.01 < 0.01 0.01 < 0.01 0.01 0.005 0.00 0.01 < 0.01 0.01 < 0.01 0.01 0 0.00 0.00 0.00 0.00 0.00 0.00
Table 2.2: OS1 of the Tanaka dataset
n ∈ {20, 40, 60, 80, 100, 120}. We will refer to this dataset as the standard dataset. The same method and parameters are used as in
Potts and Van Wassenhove (1985) to generate job durations, due dates and tardiness weights. Hence, for each setting (each n and OS1), we generate 125 instances, which adds up to 3750 instances in total.
2.4.2 Memory gain of partitioning the state space Table 2.3 provides details on the efficiency of the memory manage-ment technique proposed in Section 2.3.2. We define
∆ = max0<f ≤n{Υ
f −1+ Υf}
|Φ| × 100
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED TARDINESS PROBLEM 27 OS1 n 20 40 60 # ∆ # ∆ # ∆ 0.8 125 21.24 125 16.55 125 13.11 0.6 125 25.00 125 17.01 125 14.29 0.4 125 26.02 125 16.66 125 13.26 0.2 125 26.43 125 17.05 125 12.61 0 125 30.66 125 21.04 125 16.13 OS1 n 80 100 120 # ∆ # ∆ # ∆ 0.8 125 10.87 125 10.45 125 8.93 0.6 125 11.37 125 10.40 125 10.32 0.4 125 13.01 112 9.92 33 10.33 0.2 37 10.49 20 12.85 11 9.61 0 98 12.72 72 13.35 56 9.47
Table 2.3: Partitioning Φ: improvements in memory requirement
n 20 40 60 80 100 120
∆ 33.64 24.48 20.18 17.57 15.76 14.42 Table 2.4: Partitioning Φ when S = E = ∅
storing the entire state space (as done by Schrage and Baker (1978)). The difference is higher for larger instances, for which memory management is of higher importance.
For the instances without precedence constraints (S = E = ∅), we can express the memory gain of our proposed technique in closed form. Given an instance of size n, we have |Φ| =P
0≤f ≤n n f , and max0<f ≤n{Υf −1+Υf} = n n/2−1 + n/2n
28 2.4. COMPUTATIONAL RESULTS
n OS1 Kanet Emmons None OS2 # CPU OS2 # CPU # CPU 40 0.8 0.91 125 0.00 0.90 125 0.00 125 0.00 0.6 0.78 125 0.00 0.77 125 0.00 125 0.00 0.4 0.63 125 0.01 0.62 125 0.01 125 0.09 0.2 0.48 125 0.26 0.46 125 0.28 125 7.77 0 0.65 125 0.35 0.60 125 0.50 0 -60 0.8 0.90 125 0.00 0.89 125 0.00 125 0.00 0.6 0.77 125 0.01 0.76 125 0.01 125 0.08 0.4 0.61 125 0.46 0.60 125 0.51 125 10.82 0.2 0.45 125 90.36 0.44 125 96.64 80 3,654.03 0 0.63 125 59.13 0.61 125 78.04 0 -80 0.8 0.90 125 0.00 0.89 125 0.00 125 0.00 0.6 0.76 125 0.08 0.75 125 0.10 125 1.33 0.4 0.60 125 44.00 0.59 125 48.52 123 735.57 0.2 0.43 37 469.77 0.43 36 412.28 0 -0 0.63 98 225.63 0.61 97 234.97 0 -100 0.8 0.89 125 0.00 0.89 125 0.00 125 0.03 0.6 0.75 125 1.09 0.75 125 1.42 125 23.18 0.4 0.59 112 970.52 0.59 111 894.18 0 -0.2 0.42 20 332.99 0.41 20 403.56 0 -0 0.64 72 233.10 0.62 71 256.95 0
-Table 2.5: Computational gain of precedence theorems
the memory requirement up to 85.58% (for n = 120).
2.4.3 Computational gain of Kanet’s theorems
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 29
precedence graphs via the dominance rules significantly improves the performance of the DP. The improvement of Kanet’s theorems over Emmons’ theorems, on the other hand, is less significant. With these observations, we address Kanet’s concluding suggestion in his 2007 article to conduct a full-scale computational study to test the utility of his theorems.
2.4.4 Comparing algorithms
Tables 2.6 and 2.7 compares the performance of our DP algorithm with the state-of-the-art algorithm proposed by Tanaka and Sato (2013) (denoted by Tan in the tables). We apply Kanet’s theorems to each instance before solving it via DP. For Tan, on the other hand, we have observed that tightening the precedence graphs consistently increases the CPU requirements, and we therefore apply Tan to the instances with the original (untightened) precedence graph. As before, CPU is the average runtime of the instances solved to optimality, and # denotes the number of solved instances (out of 125). For each setting, the best algorithm is indicated in bold, where the best performance is decided first based on # and then on CPU. In search for a second benchmark algorithm, we have also tested the use of ILOG CP Optimizer 12.8 (after tightening the networks with the precedence theorems), but this led to results that were consistently (far) inferior to DP and Tan, and so the results are not reported.
30 2.4. COMPUTATIONAL RESULTS
n OS1 OS2 DP Tan
# CPU # CPU 20 0.8 0.94 125 0.00 125 0.05 0.6 0.82 125 0.00 125 0.03 0.4 0.68 125 0.00 125 0.06 0.2 0.54 125 0.00 125 0.09 0 0.68 125 0.00 125 0.02 40 0.8 0.91 125 0.00 125 0.17 0.6 0.78 125 0.00 125 2.20 0.4 0.63 125 0.01 125 7.37 0.2 0.48 125 0.26 125 10.93 0 0.65 125 0.35 125 0.15 60 0.8 0.9 125 0.00 125 2.28 0.6 0.77 125 0.01 125 18.57 0.4 0.61 125 0.46 125 116.21 0.2 0.45 125 90.36 120 360.75 0 0.63 125 59.13 125 0.47 80 0.8 0.9 125 0.00 125 8.26 0.6 0.76 125 0.08 125 142.31 0.4 0.6 125 44.00 83 1,014.55 0.2 0.43 37 469.77 51 770.89 0 0.63 98 225.63 125 1.10 100 0.8 0.89 125 0.00 125 22.81 0.6 0.75 125 1.09 118 1,005.92 0.4 0.59 112 970.52 25 835.34 0.2 0.42 20 332.99 23 299.45 0 0.64 72 233.10 125 2.85 120 0.8 0.89 125 0.01 125 70.08 0.6 0.75 125 14.13 44 1,272.65 0.4 0.59 33 713.29 15 665.01 0.2 0.41 11 658.58 17 583.52 0 0.62 56 418.16 125 5.98
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 31
extension of the algorithm of Tanaka et al. (2009) for the scheduling problem without precedence constraints and hence, can be expected to perform well especially for low OS. In total, our DP outperforms Tan in 22 out of the 30 settings. Note that in some settings, our DP is faster than Tan by orders of magnitude. When n = 100 and OS = 0.6, for instance, our DP is at least 922 times faster than Tan. In all the instances that our DP cannot solve, the algorithm is interrupted due to insufficient memory; in other words, memory is the main bottleneck of our algorithm. For the unsolved instances of Tanaka and Sato’s algorithm, either memory or CPU limits are reached first, depending on the instance.
Table 2.7 compares our DP and Tan on the Tanaka dataset. As discussed in Section 2.4.1, most of Tanaka’s instances have very low network densities, where Tan performs better. Hence, this dataset is not a suitable choice for a fair comparison between the two algorithms. Nevertheless, for the instances with medium to high density, our DP outperforms Tan both on CPU time and in number of solved instances. In the setting with n = 100 and ρ = 0.1, for instance, our DP is on average at least 557 times faster than Tan. Again, for all the instances that our DP cannot solve, the memory limit is reached, while both memory and time limits were attained for the instances that were not solved by Tanaka and Sato’s algorithm.
2.5
Conclusions
In this chapter, we have extended the results of Emmons (1969) and Kanet (2007) for 1||P
wjTj to allow for precedence constraints.
32 2.5. CONCLUSIONS ρ n 40 OS1 DP Tan # CPU # CPU 0.2 0.63 125 0.00 125 1.22 0.1 0.28 125 0.06 125 8.69 0.05 0.10 125 1.69 125 4.60 0.02 0.03 125 2.19 125 1.41 0.01 0.01 125 1.22 125 0.38 0.005 0.01 125 0.56 125 0.32 0 0.00 125 0.22 125 0.02 ρ n 50 OS1 DP Tan # CPU # CPU 0.2 0.68 125 0.00 125 3.06 0.1 0.35 125 0.23 125 27.49 0.05 0.11 125 42.07 125 28.56 0.02 0.03 121 128.43 125 5.38 0.01 0.01 124 58.92 125 1.54 0.005 0.01 125 27.56 125 0.63 0 0.00 125 3.38 125 0.05 ρ n 100 OS1 DP Tan # CPU # CPU 0.2 0.68 125 0.00 125 3.06 0.1 0.35 125 0.23 125 27.49 0.05 0.11 125 42.07 125 28.56 0.02 0.03 121 128.43 125 5.38 0.01 0.01 124 58.92 125 1.54 0.005 0.01 125 27.56 125 0.63 0 0.00 125 3.38 125 0.05
CHAPTER 2. THE SINGLE-MACHINE WEIGHTED
TARDINESS PROBLEM 33
for the DP algorithm of Schrage and Baker (1978). Combining these contributions, we have proposed an exact method for solving 1|prec|P
wjTj. We have empirically shown that our method
outper-forms the state-of-the-art algorithm of Tanaka and Sato (2013) for instances with medium to high density. Thus, our DP complements Tanaka and Sato’s algorithm, which performs better for instances without precedence constraints or with very low network density. Finally, we have also addressed Kanet’s concluding suggestion in his 2007 article to conduct a full-scale computational study to test the utility of his theorems.
APPENDIX: Kanet’s Conditions
Kanet’s Conditions K1-K7 follow. For a dominant S and a pair (i, j) ∈ N × N :
K1. pi ≤ pj and wi ≥ wj and (di ≤ max{dj, (wi− wj)(P (BiS ∪
Chapter 3
Sequential testing of n-out-of-n
systems: Precedence theorems
and exact approaches
3.1
Introduction and related work
A multi-component machine, e.g., a missile radar set, that is inactive except during a state of military alert, undergoes periodic checkups. The state of the machine (working or failing) depends on the state of its components. The components need to be tested in a specific order to detect the state of the machine with minimum cost or time. With these challenges in mind for preventive and corrective maintenance, the importance of sequential testing was highlighted by the U.S. Air Force more than sixty years ago (Johnson, 1956). The goal of
The content of this chapter has been published in European Journal of Operational Research (Rostami et al., 2019b).
36 3.1. INTRODUCTION AND RELATED WORK
sequential testing is to discover the state of a system by testing its components one by one. The testing continues until the system state is identified. Each test has a cost and a success probability. The objective is to find a sequence of tests that minimizes the total expected cost of the diagnosis.
As equipment becomes more complex and expensive, the number of required tests and the inspection costs increase, and consequently, the sequential diagnosis becomes more costly. From another per-spective, as automated robotic machines replace human mechanics and quality control operators, it becomes vital to be able to prescribe a desirable sequence of inspections for machines (Johnson, 1956). In many practical applications, including rapid diagnosis in time-critical situations, e.g., toxic chemical identification (Bellala et al., 2012), R&D project scheduling (Creemers et al., 2015; De Reyck and Leus, 2008), quality control of manufactured products (Duffuaa and Raouf, 1990), container inspection operations at borders (Madigan et al., 2011), and so on, the underlying problem incorporates se-quential testing. Different tests may require different resources (e.g., manpower, electricity, etc.), or may entail other costs (e.g., pain to a patient). Therefore, examiners may try to postpone the more costly tests. Moreover, the tests are subject to precedence constraints. In pharmaceutical drug testing, for instance, animal (preclinical) tests precede human (clinical) tests.
CHAPTER 3. SEQUENTIAL TESTING OF N -OUT-OF-N
SYSTEMS 37
with success probabilities pi is also optimal to an n:n system with success probabilites 1 − pi (Ünlüyurt, 2004). A k:n system is up if
at least k tests are successful, and is down if (n − k + 1) tests fail. Sequential testing of k:n systems is studied by Wei et al. (2013). The state of a modular system, where each module represents a multi-part component, is up if all its modules are functional. A module is working if at least one of its parts functions. The modules and the tests within each module are precedence-related. Coolen et al. (2014) and Creemers et al. (2015) consider modular systems in project scheduling.
Various exact approaches have been proposed for special cases of sequential testing. It is shown that serial and parallel systems without precedence constraints are polynomially solvable (Johnson, 1956; Gluss, 1959; Mitten, 1960; Boothroyd, 1960; Butterworth, 1972). A polynomial algorithm also exists for k:n systems with arbitrary k, and without precedence constraints (Salloum, 1979; Ben-Dov, 1981; Chang et al., 1990; Salloum and Breuer, 1997; Boros and Ünlüyurt, 1999). Serial systems are polynomially solvable when the precedence graph is a forest (Garey, 1973) or series-parallel (Monma and Sidney, 1979). An optimal diagnosis procedure is provided in Chiu et al. (1999) for k:n systems with parallel-chain precedence constraints. Wagner and Davis (2001) propose an integer-linear formulation for a single-item discrete sequential search problem, which is in fact a serial system known to be down. For an extensive literature review on sequential testing we refer to Ünlüyurt (2004). More recently, Daldal et al. (2016) have offered approximation algorithms for sequential batch-testing of serial systems.
38 3.2. PROBLEM STATEMENT
NP-hard (Kelly, 1982). To the best of our knowledge, no research has been specifically devoted to developing exact algorithms for this problem. The main contributions of this work are the following. (1) We show how to strengthen the precedence graph in a pre-processing step. (2) We develop a linear formulation for the problem obtained via Dantzig—Wolfe decomposition (Martin, 2012) of a compact nonlinear formulation. (3) A dynamic-programming (DP) and a branch-and-price (B&P) algorithm are devised as solution methods. The computational results indicate that the DP procedure is faster than B&P. Compared to the existing algorithms, our method significantly increases (by up to 100%) the size of the instances that can be solved to optimality within given limits on runtime and memory. (4) In the process, we show that a relaxation of the pricing problem of our B&P can be solved in polynomial time. We use this result to solve the pricing problem more efficiently.
Below, we first formally define the problem in Section 3.2. Sec-tion 3.3 is devoted to three precedence theorems for strengthening the precedence graph. We propose a DP and a B&P algorithm in Sections 3.4 and 3.5, respectively. Computational results are provided in Section 3.6. We conclude in Section 3.7.
3.2
Problem statement
We consider a set N of n tests (or inspections) with pre-specified testing costs ci ≥ 0, i ∈ N , and success probabilities pi ∈ [0, 1].
CHAPTER 3. SEQUENTIAL TESTING OF N -OUT-OF-N SYSTEMS 39 1 0.9 5 2 0.5 8 3 0.9 40 4 0.1 1 i pi ci Figure 3.1: A problem instance
iff (i, j) ∈ E. A test can be performed only if all its predecessors are done, where j ∈ N is said to be a predecessor of i ∈ N if (j, i) ∈ E. In a sequential diagnosis, tests are performed one at a time until the correct state of the system is identified. The system is functioning when all the n tests are successful, and it is known to be down when the first failure is revealed.
A solution to the sequential testing problem is a decision policy that decides which test should be started next, given a history of previously performed tests and their results. For serial and parallel systems, there is a full order (sequence) of tests that is optimal (Wei et al., 2013). This does not necessarily hold for k:n systems. A full order is feasible iff it extends E. The objective is to find one sequence (list) L = (l1, l2, ..., ln) of the tests that minimizes the total
expected cost of the diagnosisPn
j=1(
Qj−1
i=1pli)clj, where
Q
ipi over
an empty set equals 1.
Example 3.1. Consider the instance depicted in Figure 3.1 with
the set N of tests {1, 2, 3, 4}, and the set of precedence constraints
40 3.2. PROBLEM STATEMENT
Following Potts (1980), we describe a compact formulation (CF) based on “linear ordering” variables xij, i, j ∈ N , where xij = 1 if
test i precedes test j, and xij = 0 otherwise.
(CF) min n X j=1 cj n Y i=1 [(pi− 1)xij+ 1] (3.1) s.t. xij + xji= 1 ∀{i, j} ⊂ N (3.2) xji+ xik− xjk ≤ 1 ∀{i, j, k} ⊂ N (3.3) xij = 1 ∀(i, j) ∈ E (3.4) xij ∈ {0, 1} ∀i, j ∈ N (3.5)
Constraint (3.2) imposes anti-symmetry. Wagner and Davis (2001) show that Constraint (3.3) is sufficient to enforce the transitivity property, and to eliminate cycles of any size. Constraint (3.4) enforces the precedence constraints in E.
Although correct, formulation CF is not practical due to its non-linear objective. Following, we employ Dantzig-Wolfe decomposition (DW) (Martin, 2012) to linearize CF. DW as applied to integer programs entails a reformulation to express the integral solutions of a bounded convex polyhedron as integer convex combination of a finite set of points. The reformulation gives rise to another integer problem that typically has a tighter linear programming relaxation because it amounts to implicitly describing the convex hull of the integer polyhedron (Vanderbeck, 2000).
For any i ∈ N , let Γi = {xmi ∈ {0, 1}n| xmji = 1, ∀(j, i) ∈ E}
be the set of ρi points xmi = {xm1i, xm2i, . . . , xmni} that satisfy (3.4) and (3.5). Every xm
i corresponds to a set Cim ⊂ N of candidate
CHAPTER 3. SEQUENTIAL TESTING OF N -OUT-OF-N SYSTEMS 41 Cim, and i /∈ Cm i . We define Pim = Q j∈Cm
i pj as the joint success probability of Cim.
Example 3.2 (continued). Considering the previous example, for
test 4, there are four different subsets, namely C41 = {1}, C42 = {1, 2}, C3
4 = {1, 3}, and C44 = {1, 2, 3}. The corresponding joint
probabilities are P41 = 0.9, P42 = 0.45, P43 = 0.81, and P44 = 0.41. We observe that Cim= ∅ can also occur; for test 1, for instance, we have C11 = ∅ with P11= 1.
Constraints (3.4) and (3.5) can be dropped from CF if we restrict the solution space to the sets Γi, i.e., if we impose
∀i ∈ N : xi = ρi X m=1 zmi xmi , with ρi X m=1 zim = 1 and zim∈ {0, 1},
where the decision variable zm
i is 1 if the tests in Cim precede i, and
0 otherwise. Using this transformation, and by replacingQn
i=1[(pi−
42 3.3. PRECEDENCE THEOREMS
the following integer linear formulation (ILF).
(ILF) min n X i=1 ci ρi X m=1 Pimzim (3.6) s.t. ρj X m=1 zjmxmij + ρi X m=1 zimxmji = 1 ∀{i, j} ⊂ N (3.7) ρj X m=1 zimxmji + ρk X m=1 zkmxmik − ρk X m=1 zmkxmjk ≤ 1 ∀{i, j, k} ∈ N (3.8) ρi X m=1 zim= 1 ∀i ∈ N (3.9) zim ∈ {0, 1} ∀i ∈ N, m ∈ {1, . . . , ρi} (3.10) The linear objective function of ILF comes at the cost of a high num-ber of variables zim (exponential in n). To overcome this difficulty, in Section 3.5, we propose an exact algorithm based on column generation for solving ILF.
3.3
Precedence theorems
CHAPTER 3. SEQUENTIAL TESTING OF N -OUT-OF-N SYSTEMS 43 1 0.9 5 2 0.5 8 3 0.9 40 4 0.1 1 i pi ci
Figure 3.2: Adding (4, 2) to the network in Figure 3.1
1
2 3 4
Figure 3.3: Adding (2, 1) to the network in Figure 3.1
1
2 3 4
44 3.3. PRECEDENCE THEOREMS
We know that when E = ∅, a sequence L = (l1, l2, . . . , ln) is
optimal (Ünlüyurt, 2004) if cl1 1 − pl1 ≤ cl2 1 − pl2 ≤ · · · ≤ cln 1 − pln. (3.11) The condition is intuitive: for a series system, it is advantageous to perform tests with low cost and high failure probability first. If
ci/(1 − pi) ≤ cj/(1 − pj), then if j precedes i in a given sequence,
we can swap the two tests, and the thus-obtained sequence cannot have a higher objective value than the initial sequence. We say the second sequence dominates the original.
Example 3.3 (continued). For the previous example, we have
c1 1−p1 = 50, c2 1−p2 = 16, c3 1−p3 = 400, and c4 1−p4 = 1.11. Since c4 1−p4 < c2 1−p2 < c1 1−p1 < c3
1−p3, if we ignore the precedence constraints in E,
then the sequence (4,2,1,3) is optimal, with associated expected cost 3.85. This sequence violates the precedence constraint (1, 4) ∈ E, however. In Figure 3.2, although c4
1−p4 <
c2
1−p2, since (1, 4) ∈ E (the
solid edge), addition of the constraint (4, 2) (the dashed edge) implies the transitive constraint (1, 2) (the dotted edge), while c2
1−p2 <
c1
1−p1.
Moreover, Figure 3.3 shows that although c2
1−p2 <
c1
1−p1, adding the
constraint (2, 1) also gives rise to the transitive constraint (2, 4), whereas c4
1−p4 <
c2
1−p2. Therefore, neither (4, 2) nor (2, 1) can be
confirmed to be dominant. For (4, 3) in Figure 3.4, on the other hand, we have c4 1−p4 < c3 1−p3 and c1 1−p1 < c3 1−p3. Consequently, the
pair (4, 3) and the implied transitive edge (1, 3) are both dominant. The previous example suggest an immediate extension of this rule for general E: if for an activity pair (i, j) we have ci
1−pi <
cj
CHAPTER 3. SEQUENTIAL TESTING OF N -OUT-OF-N
SYSTEMS 45
N | (i, j) ∈ E} be the sets of tests that according to E should be
done before and after test i, respectively. For any {i, j} ⊂ N with (i, j), (j, i) /∈ E, we prove the following three theorems. Remark that
for such a pair, G(N, E ∪ {(i, j)}) is acyclic.
Theorem 3.1. If for any k ∈ {i} ∪ Bi\ Bj and q ∈ {j} ∪ Aj \ Ai
we have ck/(1 − pk) ≤ cq/(1 − pq), then (i, j) ∈ D.
Proof. We need to show that not only (i, j) but also the associated
transitive constraints are dominant. Consider the set {(k, q) | k ∈
Bi, q ∈ Aj} of the pairs that are related to (i, j). For general E,
and for any k ∈ Bi∩ Bj and q ∈ Ai∩ Aj, the pair (k, q) ∈ E, and
consequently, is respected by every feasible solution. Therefore, we only need to check the condition ck/(1 − pk) ≤ cq/(1 − pq) for any k ∈ {i} ∪ Bi\ Bj and q ∈ {j} ∪ Aj\ Ai. If the condition holds for
every such pair, then the pair (i, j) and its corresponding transitive pairs are dominant.
In the previous example, we saw that although c4
1−p4 <
c2
1−p2,
constraint (4, 2) could not be identified as dominant because it also implies (1, 2), and c2
1−p2 <
c1
1−p1. Yet, it may be that the ratio
c4
1−p4
is low enough that despite c2
1−p2 <
c1
1−p1, (4, 2) is still dominant. To
46 3.3. PRECEDENCE THEOREMS
From: M0 j M i
To: M0 βi i γij j αj
Figure 3.5: Swap strategy when E 6= ∅
From: M0 j M i
To: M0 j i j αj
Figure 3.6: Insert-after strategy when E 6= ∅
and 3.6, where βi = (M ∩Bi), αj = (M ∩Aj), γij = M \(αj∪βi) and j = M \ αj, with M the set of intermediate tests between i and j.
“From” represents any feasible sequence, and “To” is the resulting sequence after swapping j and i, or inserting j after i. Following the Swap strategy, a sufficient condition for the dominance of (i, j) has the structure
LB(OI(j)) ≥ UB(OD(i)) + UB(OD(γij)) + UB(OD(βi)), (3.12)
where LB(·) and UB(·) are lower and upper bound functions. For any
X ⊆ N , we define OI(X) =P
l∈Xmax{0, clQk≺Tolpk−cl
Q
k≺Fromlpk}
as the objective improvement of the tests in X after the changes, and OD(X) = P
l∈Xmax{0, clQk≺Fromlpk− cl
Q
k≺Tolpk} as their
objective degradation, where i ≺Lj indicates that i precedes j in L.
For simplicity of notation, we use OI(k) instead of OI({k}) for all singleton sets X = {k}, with k ∈ N . Note that UB(OD(αi)) and LB(OI(αi)) are set to 0. A variant of Condition (3.12) can be used
CHAPTER 3. SEQUENTIAL TESTING OF N -OUT-OF-N
SYSTEMS 47
by UB(OD(j)).
One may wonder if the addition of a dominant pair (i, j), alone, or in combination with other identified pairs, may eliminate all the optimal solutions. Assume that a pair (i, j) of tests satisfies Condition (3.12) forevery feasible M, and that G(N, E ∪ {(i, j)}) is acyclic. If j precedes i in a given schedule, we can swap the two tests without increasing the cost. Similarly, consider a set of test pairs {(i, j), (k, q), . . . } that each each satisfy one or both of the swap and insert-after dominance conditions. Any optimal schedule that is not compatible with one or more of these pairs cannot be deteriorated by making as many interchanges as necessary to obtain an optimal schedule that respects all the pairs. Let S ⊆ D with S ⊇ E be the acyclic set of dominant precedence constraints that are previously identified. If an optimal sequence (feasible to E) does not respect
S, then by a finite number of (iterative) swaps and insert-afters, it
can be transformed into a sequence that respects S, such that the final sequence is at least as fit as the intermediate sequences. From the foregoing, we conclude that as long as no cycles are created, combining the identified dominant pairs in S does not remove all the optimal solutions.
Proposition 3.1. There is at least one optimal solution that respects
all the precedence constraints in S iff the graph G(N, S) is acyclic.