ABSTRACT. and a binary integer programming (BIP) model. Due to the strong N P-hardness of the

Size: px
Start display at page:

Download "ABSTRACT. and a binary integer programming (BIP) model. Due to the strong N P-hardness of the"

Transcription

1 ABSTRACT RAJNEESH, RAJNEESH. Scheduling Precedence-Constrained Jobs on Two Resources to Minimize the Total Weighted Completion Time. (Under the direction of Salah E. Elmaghraby.) We study a problem of scheduling precedence-constrained jobs on two pre-specified resources with the objective of minimizing the weighted completion time. We present two mathematical formulations of the problem: a dynamic programming (DP) model and a binary integer programming (BIP) model. Due to the strong N P-hardness of the problem, even for two resources with chain-type precedence constraints among the jobs with weight and processing times of 1, we restrict our analysis to the case when the precedence constraints result in a series-parallel (s/p) graph. We focus on reducing the state space in the DP model to obtain an optimal, or near optimal, solution. We compare, through a number of experiments with varying number of jobs, resource requirements, and topology of the precedence among the jobs, the performance of the DP and the BIP models relative to the quality of the final result and the time taken to reach a conclusion.

2 Copyright 2012 by Rajneesh Rajneesh All Rights Reserved

3 Scheduling Precedence-Constrained Jobs on Two Resources to Minimize the Total Weighted Completion Time by Rajneesh Rajneesh A thesis submitted to the Graduate Faculty of North Carolina State University in partial fulfillment of the requirements for the degree of Master of Science Operations Research Raleigh, North Carolina 2012 APPROVED BY: Yahya Fathi Matthias F. Stallmann Salah E. Elmaghraby Chair of Advisory Committee

4 DEDICATION To my parents. ii

5 BIOGRAPHY Rajneesh was born in Ranchi, India. He attended Ranchi University, India and graduated in 2002 with a Bachelor of Science in Mathematics as an honors subject. He continued his studies further for Master of Science (M.Sc.) in Mathematics and Computing from Indian School of Mines (ISM), Dhanbad, India and received M.Sc. degree in After graduating from ISM, he received the opportunity to work in a sponsored research from the Department of Science and Technology, India, to study the seismic activities in Eastern India. In 2005, he accepted an offer as a teaching assistant at the Indian Institute of Management, Ahmedabad (IIMA). He received a Junior Research Fellowship in 2006 from the Indian Space Research Organization (ISRO) and worked on the numerical weather forecasting models. He accepted a position at the Indian School of Business (ISB), Hyderabad in 2007 to work on a research project and as a teaching assistant. He joined North Carolina State University in 2008 to pursue graduate studies in Operations Research. He taught undergraduate Mathematics courses in the Fall of 2008 and the Spring of He was teaching assistant for graduate level OR courses during the Fall of 2009, the Spring of 2010 and the Spring of 2011 semesters. He received a full-time internship at the JMP development group at SAS Institute Inc., Cary, in the Summer of 2010 and the Fall of 2010 semesters. He continued to work part-time at SAS from the Spring of 2011 and onwards, while doing his thesis research. iii

6 ACKNOWLEDGEMENTS Foremost, I would like to thank my advisor, Dr. Salah E. Elmaghraby, who made this work possible by introducing me to the research problem. I greatly appreciate his kind and wise guidance throughout my research. Dr. Elmaghraby s Dynamic Programming (DP) class stimulated my interest in DP modeling approach and was very helpful in my research formulation. I am particularly grateful to him for the patience he showed in me, teaching me how to become a good researcher and a better person in life. Working with him has been my best learning experience at NCSU and I will forever be grateful to him. I am thankful to my committee members, Dr. Yahya Fathi and Dr. Matthias F. Stallmann, for their suggestions and valuable comments that helped in making this thesis better. Dr. Fathi s Linear Programming and Integer Programming classes helped me a lot in the formulation of my research problem. Dr. Stallmann s feedback on the experiments to perform helped me to improve the discussion in the results section of my thesis. I am also thankful to all the faculty members of the Graduate Program in Operations Research, who have had a direct or indirect influence on my graduate studies and research work. I would like to thank the current co-directors of the Department of Operations Research, Dr. Thom Hodgson and Dr. Negash Medhin, for always being available to listen and give advice. I give my special thanks to the current OR program assistant, Ms. Linda Smith for helping me during my graduate studies in taking care of all the academic and administrative affairs with great efficiency. I would also like to thank Ms. Barbara Walls, for providing me the administrative guidance during my first arrival in the US. I am thankful to all the staff members of the Department of Industrial and Systems Engineering, and the Department of Mathematics at NCSU. I am thankful to several past and present colleagues in the Graduate Program in iv

7 Operations Research, and in the Department of Industrial and Systems Engineering at NCSU for their help during my graduate studies. It was a pleasure to know them individually and work with them during our problem solving sessions. My stay in Raleigh has been memorable, thanks to all my friends with whom I shared my apartment. I am also thankful to my friends in the US whom I visited several times during holidays. I am grateful to the financial support I received from the Department of Operations Research during my graduate studies. My special thanks to the Department of Mathematics at NCSU, for giving me an opportunity to teach undergraduate classes. I would like to thank the JMP Development group at SAS Institute Inc., Cary, for the internship from the Summer of 2010 to the Spring of 2012 semesters, which was a productive and learning experience for me. I am very grateful to my two elder brothers, who were always encouraging in my career goals and helped me in all possible ways to achieve them. Lastly, I would not be who I am without the loving and everlasting support of my parents. They instilled in me the value of knowledge, without which my research motivation would have been incomplete. Thank you very much to all! Your right is to work only, but never to the fruit thereof. Be not instrumental in making your actions bear fruit, nor let your attachment be to inaction. Ch. 2, verse 47, Bhagavad Gita v

8 TABLE OF CONTENTS List of Tables viii List of Figures ix Chapter 1 Introduction Background Statement of the Problem Problem Complexity Literature Review Organization and Outline Chapter 2 The Mathematical Models A Dynamic Programming (DP) Formulation The elements of Dynamic Programming New lower and upper bounds on resource availability The Re-sequencing Procedure A Binary Integer Programming (BIP) Formulation Chapter 3 The Heuristic-DP Algorithm The Procedure Based on the BDT Series Composition Parallel Composition The Heuristic-DP (H-DP) Algorithm An Example of the H-DP Algorithm Comparison with Balisetti s Approach Results Chapter 4 Conclusion and Future Research Conclusion Future Research References Appendices Appendix A Figures A.1 Figures Appendix B Example Appendix C Codes C.1 Code vi

9 C.1.1 Python Code C.1.2 CPLEX Code vii

10 LIST OF TABLES Table 2.1 Comparison between the BIP and alt-bip formulations Table 3.1 Start time (s j ) for 22-job network Table 3.2 Start time (s j ) for 22-job network after the packing procedure Table 3.3 Experiment I Table 3.4 Experiment II viii

11 LIST OF FIGURES Figure job network Figure 2.1 The system at stage I k Figure 2.2 At stage I k with a decision to process job j [1] Figure 2.3 At stage I k with a decision to process job j [2] [ j [1] ] Figure 2.4 At stage I k with a decision to process compatible jobs j [2] Figure 2.5 At stage I k with a decision to process job j [1,2] Figure 2.6 An example of initial set for 22-job network (Figure 1.1) Figure 2.7 An example of Re-sequencing procedure Figure 3.1 Series composition procedure flowchart Figure 3.2 Heuristic-DP (H-DP) algorithm flowchart Figure 3.3 Binary decomposition tree (BDT) of 22-job network (Figure 1.1). 43 Figure 3.4 Final schedule of jobs on resources for 22-job network (Figure 1.1). 48 Figure 3.5 Jobs requiring resource R 1 for 22-job network (Figure 1.1) Figure 3.6 Jobs requiring resource R 2 for 22-job network (Figure 1.1) Figure 3.7 Jobs requiring resources (R 1, R 2 ) for 22-job network (Figure 1.1). 51 Figure A.1 6-job network Figure A.2 9-job network Figure A.3 11-job network Figure A.4 13-job network Figure A.5 17-job network Figure A.6 22-job network Figure A.7 25-job network Figure A.8 30-job network Figure A.9 40-Job network ix

12 Chapter 1 Introduction 1.1 Background Scheduling problems are the class of optimization problems that deals with the allocation of scarce resources (for example, processors or machines) to jobs, or tasks, over time. These jobs may be related to each other by precedence relationships; that is, a job can be processed only if all its predecessor jobs have completed their processing on their respective resources, and the required resources are available for the current job. Scheduling problems, especially those that require the simultaneous use of more than one resource, arise in various areas such as manufacturing, production, service operations, health care systems, and transportation, among others. Because of their importance, scheduling problems have been extensively studied from the theoretical point of view as well as their practical implementation. These problems are ubiquitous in the various fields of engineering and management today, and indeed in everyday life experiences. For example, ˆ In the microprocessor systems industry, scheduling problems are very common 1

13 where a task needs to be processed by several processors simultaneously in order to find a fault. ˆ In the berth allocation problems at maritime ports, a large vessel (representing a task) may occupy several berths (representing a machine) for loading and/or unloading. ˆ In the planning of semiconductor circuit design workforce, a modular task is usually assigned to a team of people (representing a resources) to process the task (or jobs) simultaneously. ˆ In the car repair shops, a car has several broken parts that need to be repaired by one or more mechanics in the shop. These mechanics have to work on different parts of the car in the order of their precedence; some parts need only one mechanic, whereas others require more than one working simultaneously on the broken parts. The car will leave the shop only when every broken part has been fixed. A large number of practical problems similar to those mentioned above may be found in different contexts; which existence motivated this research. Similar to the other optimization problems, a scheduling problem also has two parts: ˆ The first is the objective function that one tries to optimize. In scheduling problems, typical objective functions are: minimize the weighted completion time of the jobs, or the mean flow time, or the makespan (schedule length), or the total lateness of the jobs (which presumes the existence of a due date for each job); and so forth. The objective function is also called the performance measure. ˆ The second is the set of constraints which define the permissible solutions for the scheduling problem, also called the feasible set, or the set of feasible solutions. 2

14 In the scheduling literature, the single resource scheduling problem is one of the most extensively studied problems. There is a substantial body of work done on the scheduling problem on a single resource, with or without precedence relations among the jobs, to minimize the total weighted completion time ([4], [7], [14], [20], [21], [26]). However, much less is known for more than one resource; only within the past two decades have researchers addressed the multiple resource case. As expected, some of the work on the single resource give valuable insights into the treatment of problems of more than one resource. Scheduling problems with precedence constraints are among the most difficult problems in the area of machine scheduling because of the impossibility of solving them to optimality; either in polynomial time or with a known performance guarantee of an approximate algorithm, which spills over to the difficulty in the design of good approximation algorithms. The understanding of the structure of these problems and the search for their optimal or near-optimal solutions are continuing unabated in the operations research field. Historically, scheduling problems were the first problems to be analyzed for the study of approximation algorithms. Garey et al [10] and later Johnson [16] formalized the concept of an approximation algorithm. An approximation algorithm is evaluated by its worst-case possible relative error over all possible instances of the problem, and is necessarily executed in polynomial time. Formally an approximation algorithm for minimization, or maximization, of an objective function is defined as follows: ˆ For minimization problems, an algorithm A is said to be a δ approximation algorithm to problem P if for every instance I of P it delivers a solution that is at most δ times the optimum. Clearly, δ > 1, and the closer it is to 1, the better. 3

15 ˆ For maximization problems, a δ approximation algorithm delivers for every instance I of P a solution that is at least δ times the optimum. In this case δ < 1, and the closer it is to 1, the better. In the literature for the minimization problem, δ is referred as the approximation ratio, or performance guarantee, or worst case ratio, or worst case error bound, or approximation factor. Similarly, for the maximization problem 1/δ is referred to by any of these names. The following points highlight the complexity of these problems and their solution procedures. ˆ The first approximation algorithm by Graham [12] for a single machine problem with precedence constraints to minimize the makespan (the completion time of the last job), is still used for solving this problem. ˆ The complexity of a problem of m ( 3) identical parallel machines with each job requiring a processing time of one time unit and the jobs are arranged by precedence for the objective of minimizing the makespan is still an open problem as listed by Garey et al [11]. ˆ For the problem of a single machine or m > 1 identical parallel machines with the objective of minimizing the weighted completion time, the constant-factor approximation algorithms were only developed over the last two decades ([18], [26] etc.). 1.2 Statement of the Problem There are n jobs from a set N ; N = {1,..., n}; that need to be processed on r resources (or machines) from a set R, R = {1,..., r}. No setup is required if a resource (machine) 4

16 switches over from one job to another and preemption is not allowed. A job j N, has one or more precedence relations; for example, j 1, j 2, and j 3 are three jobs from the set N such that j 2 j 1 and j 2 j 3 ; where denotes precedence. The precedence relations constitute a series-parallel (s/p) digraph (definition 2.2 or [30]). The processing time of job j N, is a positive number p j > 0. Let C j be the completion time of job j N. The objective is to find a feasible schedule that minimizes the total weighted completion time, that is, min w j C j, j N where w j 0 is the weight of job j N. Figure 1.1 gives an illustrative example for a series-parallel digraph of 22 jobs with resource requirement for each job shown next to each node, the weight and processing time of each job are given in the table. Let j 2 = 8, j 1 = 16 and j 3 = 9; then j 2 j 1 and j 3 j 1 shows an example of precedence relations for j 1, j 2, and j Problem Complexity Hoogeveen et al [15] investigated the computational complexity of scheduling multiprocessor (or multi-resource) tasks (or jobs) with pre-specified processor (or resource) requirements. They investigated the complexity of a problem with the objective of minimizing the sum of the task (or job) completion times (i.e., w j = 1, j N in the objective function stated above), in the presence of precedence constraints. In their paper the standard notation scheme of α β γ ([19]) was used to represent scheduling problem structure, where ˆ α specifies the processor (or resource) environment; in other words, α denotes the 5

17 (R 2 ) (R 1, R 2 ) (R 1 ) (R 1, R 2 ) (R 1 ) (R 2 ) (R 2 ) (R 1, R 2 ) (R 2 ) (R 1 ) (R 1 ) (R 1 ) (R 1, R 2 ) (R 1, R 2 ) (R 2 ) (R 1, R 2 ) (R 1, R 2 ) (R 1 ) (R 2 ) (R 1 ) (R 2 ) (R 1, R 2 ) j w j p j Figure 1.1: 22-job network number of resources (or processors). For example, α P 3 refers to three processors (or resources). ˆ β is the task (or job) characteristics. The notation β may denote either processing time of task (or job); or task (or job) requirements (that is, job j require resource R 1 for processing, etc.); or the precedence relationship among jobs (that is, series-parallel or no precedence, etc.); or any combination of processing time, job requirements and precedence relationship. For example, β s/p, p j = 1 refers to series-parallel (s/p) relationship among jobs and processing time of all job is one 6

18 time unit. ˆ γ represent the objective function; for example, γ C j, where C j is the completion time of job j, is the total of completion time. For instance, P m chain, fix j, p j = 1 w j C j refers to a scheduling problem with m processors (or resources, denoted by P m) to minimize the total weighted completion time (represented as w j C j ); where the processing time of job j is one time unit (that is, p j = 1); the processor (or resource) allocated to job j is pre-specified (denoted by fix j ; for example, job j require resource R 1 for processing, etc.); and each job has at most one predecessor and at most one successor (referred to as chain). They proposed a total of 15 theorems; the two most important theorems, Theorem 3.3 and Theorem 3.6, given below are closely related to this thesis. Theorem 1.1 (Theorem 3.3 from Hoogeveen et al [15]). The P 2 fix j w j C j problem is N P hard in the strong sense. Theorem 1.2 (Theorem 3.6 from Hoogeveen et al [15]). The P 2 chain, fix j, p j = 1 Cj problem is N P hard in the strong sense. Both the Theorems 1.1 and 1.2 were proved based upon a reduction from 3 partition. Combining both theorems, we get Theorem 1.3. The P 2 chain, fix j, p j = 1 w j C j problem is N P hard in the strong sense. The problem of concern to us in this thesis, P 2 s/p, fix j, p j w j C j, is a generalization of the problem considered in the Theorem 1.3; hence, the problem P 2 s/p, fix j, p j wj C j is also N P hard in the strong sense. 7

19 1.4 Literature Review Since we focus on the objective of the total weighted completion time, we present here what is known about this problem and what we consider to be the most relevant models. For readers interested in scheduling theory in general, the book by Pinedo [22] is an excellent recent text to consult. We have limited our studies to the objective of the total weighted completion time because w j may represent either a holding cost per unit time or the value already added to job j, both of which are of concern to management. In deterministic scheduling theory, it has been typically assumed that each task is processed by only one processor at a time. For the unconstrained single-machine problem to minimize the sum of the weighted completion time, a simple interchange argument proves that ordering the jobs according to non-decreasing p j /w j ratio is optimal; this policy is known as Smith s Rule as described in Smith s paper [29]. When w j = 1, j; so that the objective is to minimize the sum of the (unweighted) completion times, Smith s rule says simply to process the jobs in the order of non-decreasing processing times (this is the well-known SPT-rule). The precedence constrained single-machine scheduling problem has attracted much attention in the Operations Research community since Sidney s [28] pioneering work in Sidney proposed a decomposition theorem (this is known as Sidney s decomposition theorem) that partitions the set N of jobs into subsets or modules M 1, M 2,..., M k (by using a generalization of Smith s rule [29]); such that there exists an optimal schedule where jobs from M i were processed before jobs from M i+1, for any i = 1,..., k 1. Lawler [17] studied the problem of sequencing a set of n jobs on a single machine subject to precedence constraints with the objective to minimize the total weighted completion time. He has reduced the linear arrangement problem [11] (i.e., given an arbitrary 8

20 undirected graph G = (N, A), the nodes of G were assigned to integer points 1, 2,..., n on the real line to minimize the sum of arc lengths) into various versions of the sequencing problems. He proved the N P completeness of the special cases of the problem under the arbitrary precedence: (i) when all job weights, w j = 1 and the processing time of job j, p j {1, 2, 3}; and (ii) when the processing time of job j, p j = 1 and the weight of job j, w j {k, k + 1, k + 2}, for any integer k. He also provided an elegant procedure of O(n log n) for achieving the optimal sequence when the precedence relations result in a series-parallel (s/p) graph. It is very easy to find good feasible solutions; i.e., to obtain good upper bound on the optimal value, to single machine scheduling problems, but it is very difficult to obtain the tightest lower bound. The difficulty in finding optimal solutions, and the recent advances in solving various combinatorial optimization problems via integer or mixed integer programming (MIP), has encouraged many to study formulation of scheduling problems as MIP modeling. Several MIP models and linear programming relaxations have been proposed for this problem; which can be divided into three main groups based on the decision variables used: ˆ Dyer et al [8] exploit time-indexed variables, which are binary variables indicating when a job is completed. They derived various valid inequalities using time-indexed variables in an MIP model to describe the convex hull of set of feasible solutions, both in the absence of precedence constraints and in the presence of release dates of jobs. ˆ Balas [1] directly used the completion time variables in the presence of precedence constraints to obtain tight bounds for the Linear Programming (LP) relaxation. ˆ Wolsey [31] considered the sequence-determining binary decision variables, which 9

21 indicate the order of job sequence, to obtain tight valid inequalities. As mentioned above, LP relaxation in these three treatments has been applied to obtain the constant-factor approximation algorithms. Hall et al [13] proposed time-indexed LP relaxations that have (4 + ɛ)-worst case error bound approximation algorithms. A weaker LP relaxations in completion time variables obtains 2-worst case error bound approximation algorithm as shown by Schulz [27]. A LP relaxation in linear ordering variables as suggested by Potts [23] can be used to obtain another 2-worst case error bound approximation algorithm. Chudak et al [6] proposed a relaxation of Pott s linear program showing that the weaker linear program can be solved by one min-cut computation, which yields a combinatorial 2-worst case error bound approximation algorithms. Chekuri et al [5] used Sidney s decomposition theory to give an entire family of combinatorial 2-worst case error bound approximation algorithm. Correa et al [7] discussed the problem of sequencing precedence-constrained jobs on a single machine to minimize the total weighted completion time. They looked at the problem from the polyhedral perspective, and presented a generalization of Sidney s results which leads to the conclusion that virtually all known 2-approximation algorithms are consistent with Sidney s decomposition theorem and belong to the class of algorithms described by Chekuri et al [5]. They proved that the single-machine scheduling problem with s/p precedence constraints is a special case of the vertex cover problem (given an undirected graph G = (N, A), a subset C N of nodes that minimizes the total weight w(c) = j C w j, for node weights w j 0, j N ). In the last two decades, a great deal of work has been published in the scheduling area that involves several resources working simultaneously to process jobs; and most of the work considered the two machine problem. Lee et al [18] studied a two-processor 10

22 scheduling problem in which some jobs were processed by one machine while others were processed by both machines simultaneously. They considered the objective of minimizing the sum of the weighted completion times in the absence of precedence relationships. The contribution of this paper are several. Regarding the complexity of the problem, they use the 3-partition problem [11] (i.e., given a set S of 3n integers such that it can be partitioned into n disjoint subsets, each with 3 elements so that every subset has exactly the same sum) to show that it is N P complete in the strong sense. Optimality properties and a dynamic programming (DP) algorithm for the case of one two-processor were presented. The DP algorithm finds the optimal solution in pseudo-polynomial time, O(nT 4 ) where T is the sum of all processing times and n is the number of jobs. They also claimed that the DP algorithm has a time complexity O(nT 3n 2+1 ); where n 2 ( 1) denotes the number of jobs that require two-processors simultaneously. Heuristics methods that can find approximate solutions efficiently were also proposed with 3 -worst case error 2 bound. Queyranne et al [26] considered the scheduling problem to minimize the sum of the weighted completion times of n jobs on m identical parallel machines; where any job j can be processed on any one of the machines, and a machine can process only one job at-a-time. They considered both the precedence constraints and precedence delay (i.e., if job i precede job j then job j can start after a delay, say d ij time units, after job j is finished) between jobs. They presented the best polynomial-time approximation bounds for various scheduling problem; of which the most relevant to our problem are the following: P m prec. w j C j ; P m prec., p j = p w j C j ; P m prec., delay d ij wj C j ; P m prec., delay d ij, p j = p w j C j ; and 1 prec., delay d ij w j C j has worst case performance bounds of (4 2/m), (3 1/m), 4, 3 and 3; respectively. Balisetti [2] in his thesis considered the problem of sequencing generalized precedence 11

23 related jobs on two resources to minimize the sum of the weighted completion times. He used Elmaghraby s procedure ([9]) to transform the non-s/p graph to a s/p graph. The procedure introduce the artificial precedence relations (a.p.r.) into the precedence graph to make it s/p graph and then reverse the relations to obtain the final sequence. Since the reversal of the a.p.r. s is of complexity 2 m, where m is the number of a.p.r. s; which makes it N P hard, a branch-and-bound approach was proposed to search in the solution space. 1.5 Organization and Outline This thesis addresses the scheduling of precedence-constrained jobs on two resources (or machines) in which a job may require either resource (or machine) or both, with the objective of minimizing the total weighted completion time. In this chapter we have presented a brief introduction to the scheduling problem of concern to us, the problem description, the complexity of the problem and a concise review of the most relevant prior contributions to our problem. The remainder of the work presented in this thesis is organized as follows. In Chapter 2 we present the dynamic programming (DP) and the binary integer programming (BIP) models while introducing the basic definitions and notation. We, first, develop and discuss the DP model of the problem; then, formulate two BIP models of the problem, which we label as the BIP and alternative-bip (alt-bip) formulations, and compare the time taken by both the BIP and alt-bip formulations to give an optimal solution. In Chapter 3, we present the Heuristic-DP (H-DP) algorithm that uses the DP model, discussed in Chapter 2, to obtain feasible solutions, and illustrate H-DP algorithm with a 22-job network example. We solve various instances of job network of different sizes by the H- 12

24 DP algorithm and use the BIP formulation to compare the results obtained. Chapter 4 summarizes the work presented in this thesis and presents the opportunities of future work in the area of machine scheduling. 13

25 Chapter 2 The Mathematical Models In this chapter we present the two mathematical programming formulations that we propose for the research problem of concern to us, namely, 1. the dynamic programming (DP) model, and 2. the binary integer programming (BIP) model. We consider only the case of two resources (or machines), which are referred to as R 1 and R 2 ; the three or more resources case may be approached in a similar fashion but their practical solution is well beyond the capabilities of the models discussed here. In discrete optimization problems oftentimes DP is used to obtain the solution. Since DP is an enumerative algorithm, so in almost all cases the computational and data storage requirements are overwhelming as the size of the problem increases, the size of the state space becomes well beyond the capabilities of current computers (this is known as the curse of dimensionality). In general, the number of states in the DP approach grows exponentially in the number of input parameters, and a large memory space is necessary to store the associated 14

26 information. In truth, the curse of dimensionality in DP does not occur only due to the state space; but also due to the output space and the action space; see the recent edition of the book by Bellman [3] for further understanding the benefits and limitations of using DP. Thus, generally speaking, direct application of DP is not a practical methodology particularly for large-scale optimization problems. Hence, despite its mathematical elegance and clarity, very few combinatorial optimization problems can be solved by the direct application of the DP effectively. We shall first present the DP formulation and then describe a method to reduce the size of the state space. Many ingenious approaches such as Lagrange multipliers, successive approximation, function approximation methods (e.g. neural networks, radial basis representation, and polynomial representation) have been proposed to break the curse of dimensionality, thus contributing diverse approximation DP methodologies to the field of DP. Motivated by the need to address this curse of dimensionality several researches have proposed approximations in DP. An excellent reference to learn more about approximate dynamic programming (ADP) is the book by Powell [24]. Before presenting the DP formulation, we need to introduce some definitions and notations, which we proceed to do. We are given a directed acyclic digraph (dag), G = (N, A); in which each node j N is identified as a job, and (i, j) A specifies the precedence relation between jobs i and j; in particular, it implies that job i must be completed before job j can start, or in other words, the directed path from job i to job j in G represents i j, i, j N, that is, job i precedes job j. Definition 2.1 (Transitive series-parallel; definition 1 in Valdes et al [30]): Given digraphs G = (N, A), G 1 = (N 1, A 1 ) and G 2 = (N 2, A 2 ), where N 1 N 2 = φ. 15

27 The class of transitive series-parallel digraphs is defined recursively by a finite number of applications of rules as follows: 1. A digraph G consisting of a single node, for instance, G = ({i}, φ) is transitive series-parallel. 2. If G 1 and G 2 are transitive series-parallel then G = G 1 G 2 is also transitive seriesparallel; where N = N 1 N 2, A = A 1 A 2 N 1 N 2. In G, i j, i N 1, j N 2 ; that is, all nodes in G 1 precedes every node of G 2 ; and N 1 N 2 refers to the directed arcs joining the terminal nodes of G 1 with the start nodes of G 2. G is said to be formed by the series composition of G 1 and G If G 1 and G 2 are transitive series-parallel then G = G 1 G 2 is also transitive seriesparallel; where N = N 1 N 2, A = A 1 A 2. G is said to be formed by the parallel composition of G 1 and G 2. There is no precedence relationship between nodes of G 1 and G 2 in G. Definition 2.2 (Series-parallel (s/p) digraph; definition 2 in Valdes et al [30]): A digraph G is said to be series-parallel digraph, if and only if its transitive closure is transitive series-parallel (as described in definition 2.1). So, the series-parallel precedence constraints are defined recursively with the base elements as the individual jobs. Given series-parallel precedence relations by two digraphs G 1 = (N 1, A 1 ) and G 2 = (N 2, A 2 ) such that N 1 N 2 = φ. The parallel composition of G 1 and G 2 results in a partial order on N 1 N 2 that maintains A 1 and A 2, but does not introduce any additional precedence relationships. The series composition of G 1 and G 2 leads to a partial order on N 1 N 2 that maintains A 1 and A 2 ; moreover, if i N 1 and j N 2, then i precedes j in the new partial order. 16

28 Definition 2.3 (Initial set): The set of initial jobs, that is, those jobs with no predecessors, is called an initial set; denoted by I N. Definition 2.4 (Eligible set): The subset of jobs in initial set I available to be processed immediately on their required resources is called the eligible set; denoted by E I N. For example, let I = {1, 2} and 1 2; the only job that is available for processing is job number 2, so E = {2}. Definition 2.5 (Marginal cost): The marginal cost of a set I, denoted by ρ(i), is defined as ρ(i) = j I w j j I p j (2.1) where w j 0 is the weight, or value and p j > 0 is the processing time of job j, j. Clearly, ρ(i) is well-defined because p j > 0, j. Definition 2.6 (Compatible job pairs): Two jobs are said to be a compatible job pairs if each of them requires a different resource and can be processed concurrently (they have no precedence relationship). The jobs in a compatible job pair may be processed in parallel (because they have no precedence relationship) and can be considered as one job that requires more than one resource at the same time. In particular, if jobs j [1] and j [2] require resources R 1 and R 2 [ j [1] ] respectively, then the compatible job pair, denoted by will have a marginal cost j [2] 17

29 given by ([ j [1] ]) ρ j [2] = w j [1] + w j[2] max{p j[1], p j[2] } (2.2) This approach of forming a compatible job pair is found useful, as is explained in chapter 3, since it helps in reducing the state space of the DP. Definition 2.7 (Compatible set): The set of job pairs formed from the eligible set E, by pairing all possible compatible jobs (obtained by following definition 2.6) is called the compatible set; denoted by C. For example, suppose that the eligible set is E = {j [1], j [2], k [2] }, where job j [1] requires resource R 1 ; job j [2] and job k [2] require resource R 2 each. Then, the compatible set {[ j [1] ] [ j [1] ]} is C =, ; where the marginal cost of each compatible job pair can be j [2] k [2] calculated by Eq Definition 2.8 (Composite job): Two or more jobs may be grouped together to constitute a composite job if they are precedence related consecutively in series and they share at least one resource among them. Their marginal cost is evaluated following Eq For example, suppose that we have two jobs: j (1) and j (2), where job j (1) requires resource R 1, written as j (1) [1] and job j (2) requires both resources R 1 and R 2, written as ( ) j (2) [1,2] ; then the composite job, denoted by k j (1) [1], j(2) [1,2], will have a marginal cost (using definition 2.5) given by, ρ(k) = w (1) j [1] p (1) j [1] + w j (2) [1,2] + p j (2) [1,2] (2.3) 18

30 Definition 2.9 (Directed cut, definition from Provan et al [25]): A directed cut in a directed network; G = (N, A) with a source node s N and sink note t N, is a set of arcs of the form (N 1, N 2 ) = {(n 1, n 2 ) : n 1 N 1, n 2 N 2 }; where s N 1 and t N 2 = N N 1. Definition 2.10 (Uniformly directed cut (udc), definition from Provan et al [25]): A uniformly directed cut is a directed cut (N 1, N 2 ) for which (N 2, N 1 ) is empty. In words, a uniformly directed cutset is a set of arcs such that each path in the network contains exactly one arc in it. 0 A 1 R 1 j [1,2] j [1] R 2 j [1,2] j [2] 0 A 2 Figure 2.1: The system at stage I k 2.1 A Dynamic Programming (DP) Formulation The elements of Dynamic Programming ˆ Stage: The stage of the system is the initial set I k (definition 2.3), in which the subscript k identifies the stage number. For example, Figure 2.1 exhibits one such stage I k of the system; where j [1], j [2] and j [1,2] are the jobs that needs resource R 1, resource R 2, and both resources (R 1, R 2 ), respectively. ˆ State: At stage I k, let s(i k ) = (A 1, A 2 ) denote the state of the system. In Figure 2.1, A 1 and A 2 are the (time) availabilities of resource R 1 and R 2 ; that is, A 1 19

31 and A 2 represents the total time taken by all the jobs in the initial set I k to be processed on resources R 1 and R 2, respectively. We need to enumerate both A 1 and A 2 over all possible values of their availabilities. They are bounded by a lower bound (l.b.) and an upper bound (u.b.) as follows: p j[1] A 1 p j[.] (2.4) j [1] I k j [.] I k p j[2] A 2 p j[.] (2.5) j [2] I k j [.] I k where j [.] denotes those jobs that need either resource R 1, or resource R 2, or both resources R 1 and R 2 ; j [1] and j [2] are jobs that need resource R 1 and R 2 respectively. ˆ Decision: From the eligible set E k (which is a subset of the initial set I k ), there may be four different possibilities of jobs immediately available to process; they are, 1. jobs, j [1], that require only resource R 1, 2. jobs, j [2], that require only resource R 2, [ j [1] ] 3. compatible jobs that require resources R 1 and R 2, j [2] 4. jobs, j [1,2], that require both resources R 1 and R 2. The decision at the stage I k is generically designated by d k, which implies to schedule the job(s) specified by d k. ˆ Extremal Equations: Let f{i k, (A 1, A 2 )} denote the minimal cost when in stage I k (the initial set I k ) is scheduled to terminate at (A 1, A 2 ). Since, there may be four possible decisions at the stage I k, as described above in the definition of decisions; the cost of each decision is given as follows: 20

32 1. If the decision is to process job j [1] E k I k on resource R 1 that would terminate (that is, finish) at time A 1, as shown in Figure 2.2, giving the stage reward of w j[1] A 1 for stage I k ; then the cost in stage I k is f{i k, (A 1, A 2 )} = min {w j[1] A 1 + f{i k \{j [1] }, (A j [1] E k I k 1, A 2 )}}; where A 1 = A 1 p j[1]. 0 A 1 A 1 R 1 j [1] R 2 0 A 2 Figure 2.2: At stage I k with a decision to process job j [1] 0 A 1 R 1 R 2 j [2] 0 A 2 A 2 Figure 2.3: At stage I k with a decision to process job j [2] 2. If the decision is to process job j [2] E k I k on resource R 2 that would terminate (that is, finish) at time A 2, as shown in Figure 2.3, giving the stage reward of w j[2] A 2 for stage I k ; then the cost in stage I k is f{i k, (A 1, A 2 )} = min {w j[2] A 2 + f{i k \{j [2] }, (A 1, A j [2] E k I k 2)}}; 21

33 where A 2 = A 2 p j[2]. 3. If the decision is to process compatible jobs [ j [1] ] j [2] on resources R 1 and R 2 that would terminate (that is, finish) job j [1] and job j [2] at time A 1 and A 2 respectively, as shown in the Figure 2.4, giving the stage reward of w j[1] A 1 + w j[2] A 2 for stage I k ; then the cost in stage I k is f{i k, (A 1, A 2 )} = min [ ] j [1] j [2] C k {w j[1] A 1 + w j[2] A 2 + f{i k \{j [1], j [2] }, (A 1, A 2)}}; where A 1 = A 1 p j[1] and A 2 = A 2 p j[2]. 0 A 1 A 1 R 1 j [1] R 2 j [2] Figure 2.4: 0 A 2 A 2 [ At stage I k with a decision to process compatible jobs j [1] ] j [2] 0 A 1 A 1 A max R 1 j [1, 2] R 2 j [1, 2] 0 A 2 A 2 Figure 2.5: At stage I k with a decision to process job j [1,2] 4. If the decision is to process job j [1,2] E k I k on both resources R 1 and R 2 that would terminate (that is, finish) at time A max = max{a 1, A 2 }, as shown in the Figure 2.5, giving the stage reward of w j[1,2] A max for stage I k ; then the 22

34 cost in stage I k is f{i k, (A 1, A 2 )} = min {w j[1,2] A max + f{i k \{j [1,2] }, (A j [1,2] E k I k max, A max)}}; where A max = max{a 1, A 2 } and A max = A max p j[1,2]. Hence, the minimal cost, f{i k, (A 1, A 2 )}, in stage I k scheduled to terminate at (A 1, A 2 ) is given by the extremal equations given below: w j[1] A 1 + f{i k \{j [1] }, (A 1, A 2 )}, (2.6) w j[2] A 2 + f{i k \{j [2] }, (A 1, A 2)}, (2.7) f{i k, (A 1, A 2 )} = min w j[1] A 1 + w j[2] A 2 + f{i k \{j [1], j [2] }, (A 1, A 2)}, (2.8) w j[1,2] A max + f{i k \{j [1,2] }, (A max, A max)} (2.9) with f{φ, (A 1, A 2 )} = 0 where A 1 = A 1 p j[1], A 2 = A 2 p j[2], A max = max{a 1, A 2 }, and A max = A max p j[1,2]. Given a digraph G = (N, A), it is easy to find the initial set, I k N k, by generating all possible uniformly directed cuts (udc s). Once an I k is identified, the availability vector (A 1, A 2 ) can be calculated using Eq. 2.4 and Eq The computational challenge encountered here is the problem of dimensionality of the state variable, s(i k ) = (A 1, A 2 ), since we need to enumerate all feasible values of the vector (A 1, A 2 ) of each initial set I k. For the 22-job network given in Figure 1.1, we exhibit one such initial set with 13 jobs to get the initial set I = {1, 2, 3, 4, 5, 6, 8, 9, 10, 15, 16, 18, 19}, as shown in Figure 2.6. Using Eq. 2.4 and Eq. 2.5 to calculate the l.b. and u.b., as shown in the Figure 2.6, it is clear that there are = 312 different availability (state) vectors that need to be 23

35 enumerated for this stage of the DP procedure. Evaluating all possible values of availability vector (A 1, A 2 ) becomes computationally burdensome to the point of intractability; so we need to explore a systematic procedure to reduce (or better bounding) the availability vector (A 1, A 2 ). (R 2 ) (R 1, R 2 ) (R 1 ) (R 1, R 2 ) (R 1 ) (R 2 ) (R 1, R 2 ) (R 2 ) (R 1 ) 4 (R 1 ) 8 (R 1 ) 16 (R 1, R 2 ) 9 (R 1, R 2 ) Lower Bound, l.b.(a i ) Upper Bound, u.b.(a i ) Cardinality of A i, A i = u.b.(a i ) l.b.(a i ) + 1 A A = 312 different vectors of (A 1, A 2 ). Figure 2.6: An example of initial set for 22-job network (Figure 1.1) 24

36 2.2 New lower and upper bounds on resource availability Let the availability of resources R 1 and R 2 obtained by solving the DP for I k 1 be denoted by A (k 1) 1 and A (k 1) 2 respectively. Then the new lower bound (nlb) and the new upper bound (nub) of A i s required to solve the DP from initial set I k are given by: nlb(a i ) = A (k 1) i + nub(a i ) = A (k 1) i + j [i] I k \I k 1 p j[i], i (2.10) j [.] I k \I k 1 p j[.], i (2.11) where, j [i] is the job that requires resource R i, i = 1, 2; and j [.] is the job that require one or both resources taking precedence and compatible jobs into account. Clearly, this should reduce the vector space of resource availability (A 1, A 2 ) by a significant amount as we are using availability information from a previously solved DP stage. 2.3 The Re-sequencing Procedure The objective of this procedure is to correct the case in which the DP results in the scheduling of a compatible jobs that violates some precedence relation. Suppose that at stage I k, the availability of resources R 1 and R 2 are A 1 and A 2, respectively. Suppose, further, that the only decision is to process the compatible [ j [1] ] jobs from the eligible set E k (definition 2.4). Then, in the next stage k + 1; the availabilities are A j [1] = A 1 p j[1] and A j [2] = A 2 p j[2] on resources R 1 and R 2, respectively, as shown in Figure 2.7(a). If the next decision in the stage I k+1 is to process the compatible jobs j [2] 25

37 [ k [1] ] k [2] from the eligible set E k+1 ( I k+1 ); the application of the DP procedure will result in the sequence shown in the Figure 2.7(b). Clearly, this is not a feasible solution because job k [1] precedes job j [2] ; so j [2] cannot be processed on resource R 2 before job k [1] has finished processing on resource R 1. It is at this point that the re-sequencing procedure is invoked. The precise statement of the re-sequencing procedure is as follows. 26

38 0 A j [1] A j[1] R 1 j [1] R 2 j [2] 0 A j [2] A j[2] (a) The compatible job pairs j [1] j [2] are allocated. 0 A k [1] A j [1] A j[1] R 1 k [1] j [1] R 2 k [2] j [2] 0 A k [2] A j [2] A j[2] (b) The compatible job pairs k [1] k[2] are allocated; but k [1] j [2] 0 A k [1] A j [1] A j[1] R 1 k [1] j [1] R 2 k [2] j [2] 0 A k [2] A k[2] A j [2] A j[2] (c) Applying re-sequencing procedure on the sequence in (b). Figure 2.7: An example of Re-sequencing procedure 27

39 Let the final sequence of jobs generated after the completion of the DP procedure be denoted by Υ, which is used as an input to the re-sequencing procedure to get a feasible and better solution. 1. Initialize a sequence, denoted by Ω, with no jobs; that is, Ω = {φ}. The corresponding availability vector on resources R 1 and R 2 is (A 1, A 2 ) = (0, 0). 2. Allocate one-by-one jobs (this include jobs that require only one resource R i, i = 1, 2 or both resources (R 1, R 2 )) or compatible jobs as sequenced in Υ to resources R 1 and R 2 by considering precedence relationship, and append those job(s) to the sequence Ω accordingly. At each step, calculate the availability vector (A 1, A 2 ) based on the precedence relationship. 3. Use the availability vector (A 1, A 2 ) to calculate the completion time of each job j, denoted by C j ; which is the sum of starting time and processing time of job. The completion time, C j, is used to obtain the total weighted completion time. For example, suppose the final sequence (Υ) of jobs generated after the completion of the DP procedure is shown in Figure 2.7 (b). By applying the re-sequencing procedure to Figure 2.7 (b), in the final feasible sequence (Ω), job j [2] starts on resource R 2 only after job k [1] has finished processing on R 1, as shown in Figure 2.7 (c). 2.4 A Binary Integer Programming (BIP) Formulation Let A = {< j, j > j, j N } be the set of pairs of jobs related by immediate predecessorsuccessor relationship. Let the set of jobs that require R 1, R 2 and (R 1, R 2 ) be N [1] 28

40 N, N [2] N and N [1,2] N respectively. Also, let the upper bound of completion time of the last job be T max, which is the sum of processing time of all jobs, that is, T max = j N p j. The minimum processing time of all jobs in N is denoted by p min = min j N {p j }. Let x jt be a binary variables, for j N and t [0, T max p min ], such that 1 if job j starts at time t, x jt = 0 otherwise. (2.12) Also, let C j be the completion time of job j, j N. The binary integer programming (BIP) formulation for the problem is as follows: z = min j N w j C j (2.13) subject to 1. a job j N must start at some time t [0, T max p min ]: T max p min t=0 x jt = 1 (2.14) 2. the completion time of job j is the sum of its start time at t and the processing time p j : C j = T max p min t=0 (t + p j ) x jt (2.15) 3. for every immediate predecessor-successor job pair, < j 1, j 2 > A, job j 2 starts 29

41 only after job j 1 is finished: C j1 C j2 p j2 (2.16) 4. for all pairs, < j 1, j 2 > / A and < j 2, j 1 > / A, j 1 N [1,2] and j 2 N (j 1 j 2 ) : Either, a job j 1 requiring both resources (R 1, R 2 ) must be finished before job j 2 can be processed: C j1 C j2 p j2 (2.17) Or, a job j 2 must be finished before job j 1 that require both resources (R 1, R 2 ) can be processed: C j2 C j1 p j1 (2.18) 5. for all pairs, < j 1, j 2 > / A and < j 2, j 1 > / A, j 1, j 2 N [i] (j 1 j 2 ) : Either, a job j 1 requiring resource R i must be finished before any job j 2 can be processed on the same resource R i : C j1 C j2 p j2 (2.19) Or, a job j 2 must be finished before job j 1 requiring resource R i can be processed: C j2 C j1 p j1 (2.20) 6. binary variable conditions: x jt {0, 1} (2.21) Note. CPLEX gives the functionality to model Either-Or constraints; for example, either Equations (2.17) or (2.18) (either Equations (2.19) or (2.20)) in the BIP model 30

Single Machine Scheduling: Comparison of MIP Formulations and Heuristics for. Interfering Job Sets. Ketan Khowala

Single Machine Scheduling: Comparison of MIP Formulations and Heuristics for. Interfering Job Sets. Ketan Khowala Single Machine Scheduling: Comparison of MIP Formulations and Heuristics for Interfering Job Sets by Ketan Khowala A Dissertation Presented in Partial Fulfillment of the Requirements for the Degree Doctor

More information

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling. Algorithm Design Scheduling Algorithms Part 2 Parallel machines. Open-shop Scheduling. Job-shop Scheduling. 1 Parallel Machines n jobs need to be scheduled on m machines, M 1,M 2,,M m. Each machine can

More information

Recoverable Robustness in Scheduling Problems

Recoverable Robustness in Scheduling Problems Master Thesis Computing Science Recoverable Robustness in Scheduling Problems Author: J.M.J. Stoef (3470997) J.M.J.Stoef@uu.nl Supervisors: dr. J.A. Hoogeveen J.A.Hoogeveen@uu.nl dr. ir. J.M. van den Akker

More information

Decision Diagrams for Discrete Optimization

Decision Diagrams for Discrete Optimization Decision Diagrams for Discrete Optimization Willem Jan van Hoeve Tepper School of Business Carnegie Mellon University www.andrew.cmu.edu/user/vanhoeve/mdd/ Acknowledgments: David Bergman, Andre Cire, Samid

More information

Complexity analysis of the discrete sequential search problem with group activities

Complexity analysis of the discrete sequential search problem with group activities Complexity analysis of the discrete sequential search problem with group activities Coolen K, Talla Nobibon F, Leus R. KBI_1313 Complexity analysis of the discrete sequential search problem with group

More information

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling Department of Mathematics, Linköping University Jessika Boberg LiTH-MAT-EX 2017/18 SE Credits: Level:

More information

Batch delivery scheduling with simple linear deterioration on a single machine 1

Batch delivery scheduling with simple linear deterioration on a single machine 1 Acta Technica 61, No. 4A/2016, 281 290 c 2017 Institute of Thermomechanics CAS, v.v.i. Batch delivery scheduling with simple linear deterioration on a single machine 1 Juan Zou 2,3 Abstract. Several single

More information

Computational complexity theory

Computational complexity theory Computational complexity theory Introduction to computational complexity theory Complexity (computability) theory deals with two aspects: Algorithm s complexity. Problem s complexity. References S. Cook,

More information

P C max. NP-complete from partition. Example j p j What is the makespan on 2 machines? 3 machines? 4 machines?

P C max. NP-complete from partition. Example j p j What is the makespan on 2 machines? 3 machines? 4 machines? Multiple Machines Model Multiple Available resources people time slots queues networks of computers Now concerned with both allocation to a machine and ordering on that machine. P C max NP-complete from

More information

Disconnecting Networks via Node Deletions

Disconnecting Networks via Node Deletions 1 / 27 Disconnecting Networks via Node Deletions Exact Interdiction Models and Algorithms Siqian Shen 1 J. Cole Smith 2 R. Goli 2 1 IOE, University of Michigan 2 ISE, University of Florida 2012 INFORMS

More information

Introduction to Bin Packing Problems

Introduction to Bin Packing Problems Introduction to Bin Packing Problems Fabio Furini March 13, 2015 Outline Origins and applications Applications: Definition: Bin Packing Problem (BPP) Solution techniques for the BPP Heuristic Algorithms

More information

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard I. Minimizing Cmax (Nonpreemptive) a. P2 C max is NP-hard. Partition is reducible to P2 C max b. P Pj = 1, intree Cmax P Pj = 1, outtree Cmax are both solvable in polynomial time. c. P2 Pj = 1, prec Cmax

More information

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

Minimizing Mean Flowtime and Makespan on Master-Slave Systems Minimizing Mean Flowtime and Makespan on Master-Slave Systems Joseph Y-T. Leung,1 and Hairong Zhao 2 Department of Computer Science New Jersey Institute of Technology Newark, NJ 07102, USA Abstract The

More information

Computational complexity theory

Computational complexity theory Computational complexity theory Introduction to computational complexity theory Complexity (computability) theory deals with two aspects: Algorithm s complexity. Problem s complexity. References S. Cook,

More information

Single processor scheduling with time restrictions

Single processor scheduling with time restrictions Single processor scheduling with time restrictions Oliver Braun Fan Chung Ron Graham Abstract We consider the following scheduling problem 1. We are given a set S of jobs which are to be scheduled sequentially

More information

Scheduling jobs on two uniform parallel machines to minimize the makespan

Scheduling jobs on two uniform parallel machines to minimize the makespan UNLV Theses, Dissertations, Professional Papers, and Capstones 5-1-2013 Scheduling jobs on two uniform parallel machines to minimize the makespan Sandhya Kodimala University of Nevada, Las Vegas, kodimalasandhya@gmail.com

More information

Event Operators: Formalization, Algorithms, and Implementation Using Interval- Based Semantics

Event Operators: Formalization, Algorithms, and Implementation Using Interval- Based Semantics Department of Computer Science and Engineering University of Texas at Arlington Arlington, TX 76019 Event Operators: Formalization, Algorithms, and Implementation Using Interval- Based Semantics Raman

More information

This means that we can assume each list ) is

This means that we can assume each list ) is This means that we can assume each list ) is of the form ),, ( )with < and Since the sizes of the items are integers, there are at most +1pairs in each list Furthermore, if we let = be the maximum possible

More information

Improved Bounds for Flow Shop Scheduling

Improved Bounds for Flow Shop Scheduling Improved Bounds for Flow Shop Scheduling Monaldo Mastrolilli and Ola Svensson IDSIA - Switzerland. {monaldo,ola}@idsia.ch Abstract. We resolve an open question raised by Feige & Scheideler by showing that

More information

How to deal with uncertainties and dynamicity?

How to deal with uncertainties and dynamicity? How to deal with uncertainties and dynamicity? http://graal.ens-lyon.fr/ lmarchal/scheduling/ 19 novembre 2012 1/ 37 Outline 1 Sensitivity and Robustness 2 Analyzing the sensitivity : the case of Backfilling

More information

RCPSP Single Machine Problems

RCPSP Single Machine Problems DM204 Spring 2011 Scheduling, Timetabling and Routing Lecture 3 Single Machine Problems Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Resource

More information

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Website: http://home.deib.polimi.it/amaldi/opt-16-17.shtml Academic year 2016-17

More information

The Maximum Flow Problem with Disjunctive Constraints

The Maximum Flow Problem with Disjunctive Constraints The Maximum Flow Problem with Disjunctive Constraints Ulrich Pferschy Joachim Schauer Abstract We study the maximum flow problem subject to binary disjunctive constraints in a directed graph: A negative

More information

Marjan van den Akker. Han Hoogeveen Jules van Kempen

Marjan van den Akker. Han Hoogeveen Jules van Kempen Parallel machine scheduling through column generation: minimax objective functions, release dates, deadlines, and/or generalized precedence constraints Marjan van den Akker Han Hoogeveen Jules van Kempen

More information

Lecture 2: Scheduling on Parallel Machines

Lecture 2: Scheduling on Parallel Machines Lecture 2: Scheduling on Parallel Machines Loris Marchal October 17, 2012 Parallel environment alpha in Graham s notation): P parallel identical Q uniform machines: each machine has a given speed speed

More information

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint Joachim Breit Department of Information and Technology Management, Saarland University,

More information

Scheduling Markovian PERT networks to maximize the net present value: new results

Scheduling Markovian PERT networks to maximize the net present value: new results Scheduling Markovian PERT networks to maximize the net present value: new results Hermans B, Leus R. KBI_1709 Scheduling Markovian PERT networks to maximize the net present value: New results Ben Hermans,a

More information

Computers and Intractability. The Bandersnatch problem. The Bandersnatch problem. The Bandersnatch problem. A Guide to the Theory of NP-Completeness

Computers and Intractability. The Bandersnatch problem. The Bandersnatch problem. The Bandersnatch problem. A Guide to the Theory of NP-Completeness Computers and Intractability A Guide to the Theory of NP-Completeness The Bible of complexity theory Background: Find a good method for determining whether or not any given set of specifications for a

More information

Computers and Intractability

Computers and Intractability Computers and Intractability A Guide to the Theory of NP-Completeness The Bible of complexity theory M. R. Garey and D. S. Johnson W. H. Freeman and Company, 1979 The Bandersnatch problem Background: Find

More information

Single Machine Problems Polynomial Cases

Single Machine Problems Polynomial Cases DM204, 2011 SCHEDULING, TIMETABLING AND ROUTING Lecture 2 Single Machine Problems Polynomial Cases Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline

More information

Using column generation to solve parallel machine scheduling problems with minmax objective functions

Using column generation to solve parallel machine scheduling problems with minmax objective functions Using column generation to solve parallel machine scheduling problems with minmax objective functions J.M. van den Akker J.A. Hoogeveen Department of Information and Computing Sciences Utrecht University

More information

Stochastic Decision Diagrams

Stochastic Decision Diagrams Stochastic Decision Diagrams John Hooker CORS/INFORMS Montréal June 2015 Objective Relaxed decision diagrams provide an generalpurpose method for discrete optimization. When the problem has a dynamic programming

More information

Instructor N.Sadagopan Scribe: P.Renjith. Lecture- Complexity Class- P and NP

Instructor N.Sadagopan Scribe: P.Renjith. Lecture- Complexity Class- P and NP Indian Institute of Information Technology Design and Manufacturing, Kancheepuram Chennai 600 127, India An Autonomous Institute under MHRD, Govt of India http://www.iiitdm.ac.in COM 501 Advanced Data

More information

On improving matchings in trees, via bounded-length augmentations 1

On improving matchings in trees, via bounded-length augmentations 1 On improving matchings in trees, via bounded-length augmentations 1 Julien Bensmail a, Valentin Garnero a, Nicolas Nisse a a Université Côte d Azur, CNRS, Inria, I3S, France Abstract Due to a classical

More information

Distributed Optimization. Song Chong EE, KAIST

Distributed Optimization. Song Chong EE, KAIST Distributed Optimization Song Chong EE, KAIST songchong@kaist.edu Dynamic Programming for Path Planning A path-planning problem consists of a weighted directed graph with a set of n nodes N, directed links

More information

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs Integer Programming ISE 418 Lecture 8 Dr. Ted Ralphs ISE 418 Lecture 8 1 Reading for This Lecture Wolsey Chapter 2 Nemhauser and Wolsey Sections II.3.1, II.3.6, II.4.1, II.4.2, II.5.4 Duality for Mixed-Integer

More information

Single Machine Models

Single Machine Models Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 8 Single Machine Models 1. Dispatching Rules 2. Single Machine Models Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Dispatching

More information

APTAS for Bin Packing

APTAS for Bin Packing APTAS for Bin Packing Bin Packing has an asymptotic PTAS (APTAS) [de la Vega and Leuker, 1980] For every fixed ε > 0 algorithm outputs a solution of size (1+ε)OPT + 1 in time polynomial in n APTAS for

More information

Projection in Logic, CP, and Optimization

Projection in Logic, CP, and Optimization Projection in Logic, CP, and Optimization John Hooker Carnegie Mellon University Workshop on Logic and Search Melbourne, 2017 Projection as a Unifying Concept Projection is a fundamental concept in logic,

More information

Modular Monochromatic Colorings, Spectra and Frames in Graphs

Modular Monochromatic Colorings, Spectra and Frames in Graphs Western Michigan University ScholarWorks at WMU Dissertations Graduate College 12-2014 Modular Monochromatic Colorings, Spectra and Frames in Graphs Chira Lumduanhom Western Michigan University, chira@swu.ac.th

More information

ESTIMATING STATISTICAL CHARACTERISTICS UNDER INTERVAL UNCERTAINTY AND CONSTRAINTS: MEAN, VARIANCE, COVARIANCE, AND CORRELATION ALI JALAL-KAMALI

ESTIMATING STATISTICAL CHARACTERISTICS UNDER INTERVAL UNCERTAINTY AND CONSTRAINTS: MEAN, VARIANCE, COVARIANCE, AND CORRELATION ALI JALAL-KAMALI ESTIMATING STATISTICAL CHARACTERISTICS UNDER INTERVAL UNCERTAINTY AND CONSTRAINTS: MEAN, VARIANCE, COVARIANCE, AND CORRELATION ALI JALAL-KAMALI Department of Computer Science APPROVED: Vladik Kreinovich,

More information

Flow Shop and Job Shop Models

Flow Shop and Job Shop Models Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 11 Flow Shop and Job Shop Models 1. Flow Shop 2. Job Shop Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Outline Resume Permutation

More information

Introduction column generation

Introduction column generation Introduction column generation Han Hoogeveen Institute of Information and Computing Sciences University Utrecht The Netherlands May 28, 2018 Contents Shadow prices Reduced cost Column generation Example:

More information

The Power of Preemption on Unrelated Machines and Applications to Scheduling Orders

The Power of Preemption on Unrelated Machines and Applications to Scheduling Orders MATHEMATICS OF OPERATIONS RESEARCH Vol. 37, No. 2, May 2012, pp. 379 398 ISSN 0364-765X (print) ISSN 1526-5471 (online) http://dx.doi.org/10.1287/moor.1110.0520 2012 INFORMS The Power of Preemption on

More information

Introduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs

Introduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2 IE406 Lecture 21 2 Branch and Bound Branch

More information

Machine Minimization for Scheduling Jobs with Interval Constraints

Machine Minimization for Scheduling Jobs with Interval Constraints Machine Minimization for Scheduling Jobs with Interval Constraints Julia Chuzhoy Sudipto Guha Sanjeev Khanna Joseph (Seffi) Naor Abstract The problem of scheduling jobs with interval constraints is a well-studied

More information

Bi-criteria Scheduling Problems on Parallel Machines

Bi-criteria Scheduling Problems on Parallel Machines Bi-criteria Scheduling Problems on Parallel Machines by Divya Prakash Thesis submitted to the Faculty of the Virginia Polytechnic Institute and State University in partial fulfillment of the requirements

More information

Minimizing total weighted tardiness on a single machine with release dates and equal-length jobs

Minimizing total weighted tardiness on a single machine with release dates and equal-length jobs Minimizing total weighted tardiness on a single machine with release dates and equal-length jobs G. Diepen J.M. van den Akker J.A. Hoogeveen institute of information and computing sciences, utrecht university

More information

Throughput Optimization in Single and Dual-Gripper Robotic Cells

Throughput Optimization in Single and Dual-Gripper Robotic Cells Throughput Optimization in Single and Dual-Gripper Robotic Cells U.V. Manoj; manojuv@tamu.edu College of Engineering, Texas A&M University, College Station, TX Chelliah Sriskandarajah Mays Business School,

More information

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs

Computational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs Computational Integer Programming Lecture 2: Modeling and Formulation Dr. Ted Ralphs Computational MILP Lecture 2 1 Reading for This Lecture N&W Sections I.1.1-I.1.6 Wolsey Chapter 1 CCZ Chapter 2 Computational

More information

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării Metode şi Algoritmi de Planificare (MAP) 2009-2010 Curs 2 Introducere în problematica planificării 20.10.2009 Metode si Algoritmi de Planificare Curs 2 1 Introduction to scheduling Scheduling problem definition

More information

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved.

Chapter 11. Approximation Algorithms. Slides by Kevin Wayne Pearson-Addison Wesley. All rights reserved. Chapter 11 Approximation Algorithms Slides by Kevin Wayne. Copyright @ 2005 Pearson-Addison Wesley. All rights reserved. 1 Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should

More information

Divisible Load Scheduling

Divisible Load Scheduling Divisible Load Scheduling Henri Casanova 1,2 1 Associate Professor Department of Information and Computer Science University of Hawai i at Manoa, U.S.A. 2 Visiting Associate Professor National Institute

More information

On Machine Dependency in Shop Scheduling

On Machine Dependency in Shop Scheduling On Machine Dependency in Shop Scheduling Evgeny Shchepin Nodari Vakhania Abstract One of the main restrictions in scheduling problems are the machine (resource) restrictions: each machine can perform at

More information

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs

- Well-characterized problems, min-max relations, approximate certificates. - LP problems in the standard form, primal and dual linear programs LP-Duality ( Approximation Algorithms by V. Vazirani, Chapter 12) - Well-characterized problems, min-max relations, approximate certificates - LP problems in the standard form, primal and dual linear programs

More information

Embedded Systems 14. Overview of embedded systems design

Embedded Systems 14. Overview of embedded systems design Embedded Systems 14-1 - Overview of embedded systems design - 2-1 Point of departure: Scheduling general IT systems In general IT systems, not much is known about the computational processes a priori The

More information

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i Embedded Systems 15-1 - REVIEW: Aperiodic scheduling C i J i 0 a i s i f i d i Given: A set of non-periodic tasks {J 1,, J n } with arrival times a i, deadlines d i, computation times C i precedence constraints

More information

Branching Rules for Minimum Congestion Multi- Commodity Flow Problems

Branching Rules for Minimum Congestion Multi- Commodity Flow Problems Clemson University TigerPrints All Theses Theses 8-2012 Branching Rules for Minimum Congestion Multi- Commodity Flow Problems Cameron Megaw Clemson University, cmegaw@clemson.edu Follow this and additional

More information

The Constrained Minimum Weighted Sum of Job Completion Times Problem 1

The Constrained Minimum Weighted Sum of Job Completion Times Problem 1 The Constrained Minimum Weighted Sum of Job Completion Times Problem 1 Asaf Levin 2 and Gerhard J. Woeginger 34 Abstract We consider the problem of minimizing the weighted sum of job completion times on

More information

Branch-and-Bound for the Travelling Salesman Problem

Branch-and-Bound for the Travelling Salesman Problem Branch-and-Bound for the Travelling Salesman Problem Leo Liberti LIX, École Polytechnique, F-91128 Palaiseau, France Email:liberti@lix.polytechnique.fr March 15, 2011 Contents 1 The setting 1 1.1 Graphs...............................................

More information

SOME RESOURCE ALLOCATION PROBLEMS

SOME RESOURCE ALLOCATION PROBLEMS SOME RESOURCE ALLOCATION PROBLEMS A Dissertation Presented to the Faculty of the Graduate School of Cornell University in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy

More information

Introduction to Integer Linear Programming

Introduction to Integer Linear Programming Lecture 7/12/2006 p. 1/30 Introduction to Integer Linear Programming Leo Liberti, Ruslan Sadykov LIX, École Polytechnique liberti@lix.polytechnique.fr sadykov@lix.polytechnique.fr Lecture 7/12/2006 p.

More information

More Approximation Algorithms

More Approximation Algorithms CS 473: Algorithms, Spring 2018 More Approximation Algorithms Lecture 25 April 26, 2018 Most slides are courtesy Prof. Chekuri Ruta (UIUC) CS473 1 Spring 2018 1 / 28 Formal definition of approximation

More information

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg MVE165/MMG630, Integer linear programming: models and applications; complexity Ann-Brith Strömberg 2011 04 01 Modelling with integer variables (Ch. 13.1) Variables Linear programming (LP) uses continuous

More information

Deterministic Models: Preliminaries

Deterministic Models: Preliminaries Chapter 2 Deterministic Models: Preliminaries 2.1 Framework and Notation......................... 13 2.2 Examples... 20 2.3 Classes of Schedules... 21 2.4 Complexity Hierarchy... 25 Over the last fifty

More information

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms Anne Benoit, Fanny Dufossé and Yves Robert LIP, École Normale Supérieure de Lyon, France {Anne.Benoit Fanny.Dufosse

More information

CO759: Algorithmic Game Theory Spring 2015

CO759: Algorithmic Game Theory Spring 2015 CO759: Algorithmic Game Theory Spring 2015 Instructor: Chaitanya Swamy Assignment 1 Due: By Jun 25, 2015 You may use anything proved in class directly. I will maintain a FAQ about the assignment on the

More information

Instructor N.Sadagopan Scribe: P.Renjith

Instructor N.Sadagopan Scribe: P.Renjith Indian Institute of Information Technology Design and Manufacturing, Kancheepuram Chennai 600 127, India An Autonomous Institute under MHRD, Govt of India http://www.iiitdm.ac.in COM 501 Advanced Data

More information

Heuristics for two-machine flowshop scheduling with setup times and an availability constraint

Heuristics for two-machine flowshop scheduling with setup times and an availability constraint Heuristics for two-machine flowshop scheduling with setup times and an availability constraint Wei Cheng A Thesis Submitted to the University of North Carolina Wilmington in Partial Fulfillment Of the

More information

Polynomially solvable and NP-hard special cases for scheduling with heads and tails

Polynomially solvable and NP-hard special cases for scheduling with heads and tails Polynomially solvable and NP-hard special cases for scheduling with heads and tails Elisa Chinos, Nodari Vakhania Centro de Investigación en Ciencias, UAEMor, Mexico Abstract We consider a basic single-machine

More information

THESIS. Presented in Partial Fulfillment of the Requirements for the Degree Master of Science in the Graduate School of The Ohio State University

THESIS. Presented in Partial Fulfillment of the Requirements for the Degree Master of Science in the Graduate School of The Ohio State University The Hasse-Minkowski Theorem in Two and Three Variables THESIS Presented in Partial Fulfillment of the Requirements for the Degree Master of Science in the Graduate School of The Ohio State University By

More information

SUPPLY CHAIN SCHEDULING: ASSEMBLY SYSTEMS. Zhi-Long Chen. Nicholas G. Hall

SUPPLY CHAIN SCHEDULING: ASSEMBLY SYSTEMS. Zhi-Long Chen. Nicholas G. Hall SUPPLY CHAIN SCHEDULING: ASSEMBLY SYSTEMS Zhi-Long Chen Nicholas G. Hall University of Pennsylvania The Ohio State University December 27, 2000 Abstract We study the issue of cooperation in supply chain

More information

Integer Linear Programming (ILP)

Integer Linear Programming (ILP) Integer Linear Programming (ILP) Zdeněk Hanzálek, Přemysl Šůcha hanzalek@fel.cvut.cz CTU in Prague March 8, 2017 Z. Hanzálek (CTU) Integer Linear Programming (ILP) March 8, 2017 1 / 43 Table of contents

More information

Research Article Batch Scheduling on Two-Machine Flowshop with Machine-Dependent Setup Times

Research Article Batch Scheduling on Two-Machine Flowshop with Machine-Dependent Setup Times Advances in Operations Research Volume 2009, Article ID 153910, 10 pages doi:10.1155/2009/153910 Research Article Batch Scheduling on Two-Machine Flowshop with Machine-Dependent Setup Times Lika Ben-Dati,

More information

Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1

Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1 Scheduling Linear Deteriorating Jobs with an Availability Constraint on a Single Machine 1 Min Ji a, b, 2 Yong He b, 3 T.C.E. Cheng c, 4 a College of Computer Science & Information Engineering, Zhejiang

More information

Scheduling Coflows in Datacenter Networks: Improved Bound for Total Weighted Completion Time

Scheduling Coflows in Datacenter Networks: Improved Bound for Total Weighted Completion Time 1 1 2 Scheduling Coflows in Datacenter Networs: Improved Bound for Total Weighted Completion Time Mehrnoosh Shafiee and Javad Ghaderi Abstract Coflow is a recently proposed networing abstraction to capture

More information

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University Algorithms NP -Complete Problems Dong Kyue Kim Hanyang University dqkim@hanyang.ac.kr The Class P Definition 13.2 Polynomially bounded An algorithm is said to be polynomially bounded if its worst-case

More information

THE EXISTENCE AND USEFULNESS OF EQUALITY CUTS IN THE MULTI-DEMAND MULTIDIMENSIONAL KNAPSACK PROBLEM LEVI DELISSA. B.S., Kansas State University, 2014

THE EXISTENCE AND USEFULNESS OF EQUALITY CUTS IN THE MULTI-DEMAND MULTIDIMENSIONAL KNAPSACK PROBLEM LEVI DELISSA. B.S., Kansas State University, 2014 THE EXISTENCE AND USEFULNESS OF EQUALITY CUTS IN THE MULTI-DEMAND MULTIDIMENSIONAL KNAPSACK PROBLEM by LEVI DELISSA B.S., Kansas State University, 2014 A THESIS submitted in partial fulfillment of the

More information

Single machine scheduling with forbidden start times

Single machine scheduling with forbidden start times 4OR manuscript No. (will be inserted by the editor) Single machine scheduling with forbidden start times Jean-Charles Billaut 1 and Francis Sourd 2 1 Laboratoire d Informatique Université François-Rabelais

More information

Chapter 9: Relations Relations

Chapter 9: Relations Relations Chapter 9: Relations 9.1 - Relations Definition 1 (Relation). Let A and B be sets. A binary relation from A to B is a subset R A B, i.e., R is a set of ordered pairs where the first element from each pair

More information

Robust Network Codes for Unicast Connections: A Case Study

Robust Network Codes for Unicast Connections: A Case Study Robust Network Codes for Unicast Connections: A Case Study Salim Y. El Rouayheb, Alex Sprintson, and Costas Georghiades Department of Electrical and Computer Engineering Texas A&M University College Station,

More information

On-line Bin-Stretching. Yossi Azar y Oded Regev z. Abstract. We are given a sequence of items that can be packed into m unit size bins.

On-line Bin-Stretching. Yossi Azar y Oded Regev z. Abstract. We are given a sequence of items that can be packed into m unit size bins. On-line Bin-Stretching Yossi Azar y Oded Regev z Abstract We are given a sequence of items that can be packed into m unit size bins. In the classical bin packing problem we x the size of the bins and try

More information

APPROXIMATION ALGORITHMS FOR SCHEDULING ORDERS ON PARALLEL MACHINES

APPROXIMATION ALGORITHMS FOR SCHEDULING ORDERS ON PARALLEL MACHINES UNIVERSIDAD DE CHILE FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS DEPARTAMENTO DE INGENIERÍA MATEMÁTICA APPROXIMATION ALGORITHMS FOR SCHEDULING ORDERS ON PARALLEL MACHINES SUBMITTED IN PARTIAL FULFILLMENT

More information

c 2011 Nisha Somnath

c 2011 Nisha Somnath c 2011 Nisha Somnath HIERARCHICAL SUPERVISORY CONTROL OF COMPLEX PETRI NETS BY NISHA SOMNATH THESIS Submitted in partial fulfillment of the requirements for the degree of Master of Science in Aerospace

More information

Using column generation to solve parallel machine scheduling problems with minmax objective functions

Using column generation to solve parallel machine scheduling problems with minmax objective functions J Sched (2012) 15:801 810 DOI 10.1007/s10951-010-0191-z Using column generation to solve parallel machine scheduling problems with minmax objective functions J.M. van den Akker J.A. Hoogeveen J.W. van

More information

Scheduling Lecture 1: Scheduling on One Machine

Scheduling Lecture 1: Scheduling on One Machine Scheduling Lecture 1: Scheduling on One Machine Loris Marchal 1 Generalities 1.1 Definition of scheduling allocation of limited resources to activities over time activities: tasks in computer environment,

More information

Contents college 5 and 6 Branch and Bound; Beam Search (Chapter , book)! general introduction

Contents college 5 and 6 Branch and Bound; Beam Search (Chapter , book)! general introduction Contents college 5 and 6 Branch and Bound; Beam Search (Chapter 3.4-3.5, book)! general introduction Job Shop Scheduling (Chapter 5.1-5.3, book) ffl branch and bound (5.2) ffl shifting bottleneck heuristic

More information

1 Ordinary Load Balancing

1 Ordinary Load Balancing Comp 260: Advanced Algorithms Prof. Lenore Cowen Tufts University, Spring 208 Scribe: Emily Davis Lecture 8: Scheduling Ordinary Load Balancing Suppose we have a set of jobs each with their own finite

More information

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms

CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms CS264: Beyond Worst-Case Analysis Lecture #18: Smoothed Complexity and Pseudopolynomial-Time Algorithms Tim Roughgarden March 9, 2017 1 Preamble Our first lecture on smoothed analysis sought a better theoretical

More information

Partial job order for solving the two-machine flow-shop minimum-length problem with uncertain processing times

Partial job order for solving the two-machine flow-shop minimum-length problem with uncertain processing times Preprints of the 13th IFAC Symposium on Information Control Problems in Manufacturing, Moscow, Russia, June 3-5, 2009 Fr-A2.3 Partial job order for solving the two-machine flow-shop minimum-length problem

More information

ON COST MATRICES WITH TWO AND THREE DISTINCT VALUES OF HAMILTONIAN PATHS AND CYCLES

ON COST MATRICES WITH TWO AND THREE DISTINCT VALUES OF HAMILTONIAN PATHS AND CYCLES ON COST MATRICES WITH TWO AND THREE DISTINCT VALUES OF HAMILTONIAN PATHS AND CYCLES SANTOSH N. KABADI AND ABRAHAM P. PUNNEN Abstract. Polynomially testable characterization of cost matrices associated

More information

Chapter 3: Discrete Optimization Integer Programming

Chapter 3: Discrete Optimization Integer Programming Chapter 3: Discrete Optimization Integer Programming Edoardo Amaldi DEIB Politecnico di Milano edoardo.amaldi@polimi.it Sito web: http://home.deib.polimi.it/amaldi/ott-13-14.shtml A.A. 2013-14 Edoardo

More information

On the Generation of Circuits and Minimal Forbidden Sets

On the Generation of Circuits and Minimal Forbidden Sets Mathematical Programming manuscript No. (will be inserted by the editor) Frederik Stork Marc Uetz On the Generation of Circuits and Minimal Forbidden Sets January 31, 2004 Abstract We present several complexity

More information

Aditya Bhaskara CS 5968/6968, Lecture 1: Introduction and Review 12 January 2016

Aditya Bhaskara CS 5968/6968, Lecture 1: Introduction and Review 12 January 2016 Lecture 1: Introduction and Review We begin with a short introduction to the course, and logistics. We then survey some basics about approximation algorithms and probability. We also introduce some of

More information

Logic, Optimization and Data Analytics

Logic, Optimization and Data Analytics Logic, Optimization and Data Analytics John Hooker Carnegie Mellon University United Technologies Research Center, Cork, Ireland August 2015 Thesis Logic and optimization have an underlying unity. Ideas

More information

Scheduling Lecture 1: Scheduling on One Machine

Scheduling Lecture 1: Scheduling on One Machine Scheduling Lecture 1: Scheduling on One Machine Loris Marchal October 16, 2012 1 Generalities 1.1 Definition of scheduling allocation of limited resources to activities over time activities: tasks in computer

More information

In complexity theory, algorithms and problems are classified by the growth order of computation time as a function of instance size.

In complexity theory, algorithms and problems are classified by the growth order of computation time as a function of instance size. 10 2.2. CLASSES OF COMPUTATIONAL COMPLEXITY An optimization problem is defined as a class of similar problems with different input parameters. Each individual case with fixed parameter values is called

More information

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms

CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms CS264: Beyond Worst-Case Analysis Lecture #15: Smoothed Complexity and Pseudopolynomial-Time Algorithms Tim Roughgarden November 5, 2014 1 Preamble Previous lectures on smoothed analysis sought a better

More information

The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles

The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles The Multiple Traveling Salesman Problem with Time Windows: Bounds for the Minimum Number of Vehicles Snežana Mitrović-Minić Ramesh Krishnamurti School of Computing Science, Simon Fraser University, Burnaby,

More information

On bilevel machine scheduling problems

On bilevel machine scheduling problems Noname manuscript No. (will be inserted by the editor) On bilevel machine scheduling problems Tamás Kis András Kovács Abstract Bilevel scheduling problems constitute a hardly studied area of scheduling

More information