On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots

Size: px
Start display at page:

Download "On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots"

Transcription

1 Als Manuskript gedruckt Technische Universität Dresden Herausgeber: Der Rektor On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots F. Heinicke (1), A. Simroth (1), G. Scheithauer (2) and A. Fischer (2) (1) Fraunhofer IVI, Zeunerstrae 38, Dresden, Germany. (2) TU Dresden, Dresden, Germany. MATH-NM Januar 2014

2 Contents 1 Introduction Background Modelling as Vehicle Routing Problem The Routine Maintenance Scheduling Problem 5 3 Mathematical Modelling of the VRP-CC The Basic Three-Index Model Alternative Linearisations of the Time Constraints The big-m linearisation Time flow model Another Splitting of the Execution Time Alternative Route Formulations: Two-Index Models MTZ constraints Flow formulation of the MTZ constraints Binary machine allocation Integer machine allocation Benchmarks 17 5 Solving Method 17 6 Results Time Formulations Route Models Benchmark characteristics Conclusion 24

3 On a Railway Maintenance Scheduling Problem with Customer Costs and Multi-Depots Franziska Heinicke, Axel Simroth, Guntram Scheithauer and Andreas Fischer Abstract An important aspect of infrastructure management is the scheduling of maintenance tasks. That implies the allocation of tasks to different crews or machines and the determination of an execution order. To this end, different aspects have to be considered. On the one hand, the maintenance operator is interested in reducing the direct maintenance costs. On the other hand, priorities must be considered by scheduling maintenance tasks. Often, this is done by urgency rules, an inflexible method that resolves prioritised tasks first. In this paper, another approach is discussed. Instead of urgency rules, the maintenance tasks are afflicted with penalty costs that have to be paid for every day until the task is resolved. Then, the later the resolving time of such a job, the higher are the penalty costs. By minimising penalty costs and travel costs in one objective function, a solution with small travel costs and also small penalty costs can be found. For the resulting scheduling problem, a multi-depot vehicle routing problem with customer costs, different mixed-integer linear programming models are developed and compared in respect of their runtime in a solving method using CPLEX. Keyword: Integer Programming, Railway Infrastructure Maintenance Scheduling, VRP, Mathematical Modelling 1 Introduction 1.1 Background An important issue of railway infrastructure maintenance is ballast tamping because a good tamped track bed stabilises the whole track line. Dependent on geometry and traffic volume, the tamping period differs from track section to track section. So, it is impractical to have one big plan that is repeated every tamping-period because then some sections are tamped too late and other sections are tamped not necessarily. Instead, the tamping machines have to be routed regarding actual requirements. If the track bed is in a bad condition, the train speed has to be decreased or the axle load has to be reduced in order to prevent damage and accidents. These limitations in railway service lead to penalty costs for the maintenance operator that have to be paid until the track is maintained so that the limitations can be removed. By scheduling the tamping tasks, these penalty costs can be reduced by resolving the corresponding tasks earlier. However, this may lead to increased travel costs. In order to reduce the 3

4 overall maintenance costs, the aim of ballast tamping scheduling is to compute of a maintenance plan that minimises the sum of travel and penalty costs. In (Miwa, 2002; Oyama and Miwa, 2006), an integer programming model for scheduling a multiple tie tamper is shown. The objective is to maximise the improvement of track condition subject to bounded maintenance costs. The resulting schedule defines for each 10 day term where to locate the tamper and which lots have to be maintained. An integer programming model to minimise the tamping effort is presented by Vale et al. (2012). The optimal time allocation for 90 day terms is determined such that the track quality does not fall below a given level. The authors take into account four aspects of tamping: the time dependent deterioration process, the track layout, the imperfect track quality after maintenance, and the track quality limits that depend on the maximal permissible train speed. In (Quiroga and Schnieder, 2010), a heuristic approach for the tamping scheduling problem is presented. The aim is to find a set of N interventions, one per night, which maximise a defined objective function, e.g., the expected track condition one year later. An intervention is defined by a start depot, the tamping works, and an end depot. The model presented here is different. On the one hand, the planning horizon is short-termed a few weeks or months and the schedule defines explicitly the execution time of small tamping works. On the other hand, time-dependent customer costs penalty costs for restrictions in railway services caused by the untamped track are considered in the decision process and will be minimised together with the costs for travelling between the tamping works. For the case of tamping with a single maintenance machine, we already developed a greedy heuristic (Heinicke et al., 2013) and an application of simulated annealing (Heinicke and Simroth, 2013). 1.2 Modelling as Vehicle Routing Problem The scheduling of railway tamping tasks to different machines is modelled as a vehicle routing problem (VRP) with time constraints and multi-depots. But the problem differs from common VRPs. Usually, the aim of VRPs is to minimise the travel costs or the waiting times of the customers. In our VRP model, both are considered. The classical travel costs have to be minimised, and also the time-dependent customer costs are part of the objective function. Minimising customer costs is equivalent to minimising the waiting time of the corresponding customers. Due to the different customer costs, the waiting times of some customers are more weighted and they should be allocated to the beginning of the order. But the detours that may occur should be as small as possible. All in all, this leads to a new objective function with contrary aims. Also the time constraints are different. In a common VRP with time windows, every customer has one time window for delivery or execution. In our case, execution is possible in a daily time window and travelling is possible always. This is covered through splitting the execution time in an execution day and an execution minute. The last one is limited by the time window. The multi-depot feature is rarely part 4

5 of VRP models. Usually, all machines start and end in the same depot. In our case, for each machine an own start and end depot is given. Since the main difference to a common VRP are the customer costs, we call the problem VRP with customer costs, shortly VRP-CC. The presented model can be adapted to similar problems with direct and indirect costs. The direct costs are the costs occurring for execution (in our case the travel costs). The indirect costs occur for do nothing and depend on the execution time (these are the penalty costs that have to be paid until the track is tamped). Both kind of costs are summed and minimised together. Problems similar to VRP-CC are routing and scheduling problems with penalty costs for delays, and maintenance planning problems with maintenance costs increasing over time. Recent research on VRPs is reviewed by Eksioglu et al. (2009). In (Laporte, 2007) and (Kumar and Panneerselvam, 2012), different models, methods and variants are presented. In the literature, many heuristics and meta-heuristics to solve VRPs are introduced, for example, the well-known saving algorithm from Clarke and Wright (1964), the sweep algorithm from Gillett and Miller (1974), and more complex approaches as presented by Tan et al. (2001). Also methods to solve smaller VRPs exactly exists, e.g., the methods proposed by Macedo (2011) and Baldacci (2007). Both are based on a set partition model. Thereby, from a set of predefined routes one route is selected for each machine such that each job is contained in exactly one route. The crux of this model is the large number of routes that have to be created and evaluated in advance. Because of the multi-depots and the time-dependent customer costs, there are less dominance criteria for a sequential composition of routes and the evaluation is more time-consuming in VRP-CC than in common VRPs. Hence, we decide against set partition models. The paper is organised as follows: At first the VRP-CC is described and different mixed-integer linear programs (MILPs) are derived. Then, the solution method to solve the different MILP formulations by the help of the commercial solver CPLEX of IBM is explained. Finally, the performance of all MILP formulations is compared by means of 100 randomly generated benchmarks. 2 The Routine Maintenance Scheduling Problem Given is a set of jobs N = {1, 2,..., n}. The jobs have to be scheduled to a set of machines M = {1, 2,..., m}. Each machine k M has a start depot s k and an end depot z k modelled as artificial jobs. Hence, N c := N {s k, z k : k M} contains all jobs and the jobs representing the depots, and n c := N c = n + 2m denotes its cardinality. Each job i N c is characterised by its customer costs c i, its working duration a i, 5

6 the travel costs d ij from job i N c to job j N c, j i, and the travel time r ij from job i N c to job j N c, j i. For the depots, we have c sk = c zk = 0 and a sk = a zk = 0, for all k M. All values are assumed to be non-negative integers. We assume that some jobs have zero customer costs and that for all jobs j N is a j > 0. A solution of the VRP-CC is a set of m routes describing the execution order of the jobs. The route of machine k M starts in the depot s k and ends in the depot z k. Each job has to be contained exactly once in exactly one of the m routes. Based on these routes, the execution times of the jobs are calculated starting in the start depots at time t 0. The execution of job i cannot start before the previous job is finished and the machine has travelled to the location of i. A special feature of tamping scheduling is that job resolving is only possible during an eight hour working shift in the night, but travelling is possible all the day. Each day, the working shift starts at minute 0 and ends at minute u = 480. So, the execution of job i cannot start if the machine reaches the location after minute u i = 480 a i of any day. In this case, the job has to be postponed to the next day. To model that condition and determine the execution time correctly, the execution time is split into two components: t i = (t d i, tm i ). The first component represents the execution day and is the base for calculating the customer costs. The second component is the execution minute on day t d i that is restricted through the working shift, thus it is 0 t m i u i. Naturally, it is essential that the working duration of job i holds a i 480, for all i N c. Since travel time and working duration are in minutes, the execution time also has to be converted into minutes to calculate the correct time allocation. The execution time in minutes is t e i := h td i + tm i, with h = 1440, the minutes per day. The costs of the so defined schedule are the sum of the travel costs plus the sum of the customer costs paid for every day until the job is resolved. 3 Mathematical Modelling of the VRP-CC In this section, different MILP formulation of the VRP-CC are presented. At first, the VRP-CC is introduced by a non-linear mixed-integer problem with a three-index route model. Then, three linearisations of the time constraints are given. At last, models using two-index binary variables to define the routes of the machines are presented. 3.1 The Basic Three-Index Model The basic three-index model of the VRP-CC is a non-linear mixed-integer program. The decision variables are the binary three-index variables x k ij and the variables t d i and tm i for the execution time. The variable x k ij is 1 if and only if machine k M travels from job i N c to job j N c, i j, and resolves both jobs. 6

7 (NLP) min s.t. c i t d i (1) k M i N c k M d ij x k ij + i N x k ij = 1 i N (2) x k ji x k ij = 0 i N, k M (3) x k s k i = 1 k M (4) i N x l s k i = 0 k, l M : k l, i N c (5) x l is k = 0 k, l M, i N c (6) x k iz k = 1 k M (7) i N x l iz k = 0 k, l M : k l, i N c (8) x l z k i = 0 k, l M, i N c (9) x k ij {0, 1} i, j N c, k M (10) t sk = t 0 k M (11) h t d j + t m j h t d i + t m i + a i + r ij i, j N c : k M : x k ij = 1 (12) t d 0 t d i d max, t d i N i N c (13) 0 t m i u i, t m i R + i N c (14) Equation (1) is the objective function, the sum of the travel costs and the customer costs that have to be minimised. The travel costs depend on the order of the jobs and the customer costs depend on the execution time. By means of conditions (2) (10) is ensured that with the binary variables x k ij for each machine a route is defined. Equations (2) and (3) control that each job i N is covered by one machine and that the same machine enters and leaves job i. Constraints (4) (9) define that machine k starts in the depot s k, visits at least one job, and ends in the depot z k. The definition of the execution times of the jobs is regulated by constraints (11) (14). Equation (11) defines the start times of the machines through the definition of the execution time of the start depot as t 0 = (t d 0, t m 0 ). Condition 7

8 (12) is non-linear and ensures that job j does not start before the previous job i is finished and the machine has travelled to j. It is not a linear condition because it only occurs for i, j N c with x k ij = 1 for any k M. By (13), the execution day is required to be an integer not larger than d max. We assume that the bound d max is chosen high enough to allow a correct time schedule for each route feasible in respect of (2) (10). Thus, it is not forbidden that one machine serves n m + 1 jobs and each other machine resolves only one job. Finally, the execution minute is bounded by u i (14) to ensure that the execution of job i is completed during the working shift. Additional subtour elimination constraints are not necessary since the execution times do not allow the occurrence of cycles. The reason is that it is impossible to assign time variables that fulfil (12) if by means of the route variables x k ij a subtour is defined, as the following lemma shows. Lemma 1. All solutions feasible to (2) (14) cannot contain subtours. Proof. Assuming, C = (i 1, i 2,..., i l ) is a cycle defined by (2) (10). Then, for some k M, we have x k i pi p+1 = 1, for all p = 1, 2..., l 1, and x k i l i 1 = 1. According to (6) and (9), C cannot contain a depot. From (12) results that t e i p+1 t e i p + α ipi p+1, for all j = 1, 2..., l 1, and t e i 1 t e i l + α il i 1, with α ij := a i + r ij > 0, for all i, j N. This leads to the contradiction Thus, a cycle cannot exist. t e i 1 < t e i 2 <... < t e i l < t e i Alternative Linearisations of the Time Constraints To use a MILP solver, it is necessary to linearise the model by reformulating the time constraints (11) (14). This will be done in different ways The big-m linearisation A common way to linearise if-conditions is the big-m linearisation. Given a constraint x = 1 f(y) b for a decision variable y Y R r, a bounded linear function f : Y R, b R, and a binary variable x. By linearising this condition with the big-m method, a sufficient high value M is added if x = 0 through f(y) b + (1 x) M. Then, if x is 1, M is multiplied with zero and the constraint has to be hold. Contrariwise, if x = 0, the big-m term leads to the trivial compliance if M sup y Y f(y) b. Using the big-m linearisation leads to our first linear model for VRP-CC. It equates to (NLP) but the non-linear condition (12) is replaced by its big-m linearisation. 8

9 (LP1) min k M i N c d ij x k ij + i N c i t d i s.t. (2) (11), (13), (14) h t d i + t m i h t d j t m j + (M + a i + r ij ) k M x k ij M i, j N c, i j (15) Constraint (15) is the big-m linearisation of (12). If k M x ij = 1, it is ensured that j not starts before the previous job i is finished and the machine has travelled to j. Contrariwise, k M x ij = 0 leads to h t d i +tm i h td j tm j M that does not restrict the execution times. So, it is ensured that each job j N c has the correct allocation time. The advantage of this method is that the number of variables does not increase. But the big-m linearisation is known to lead to weak LP relaxations and also to be able to cause numerical problems if M is chosen too large. So we set M := (d max + 1) h that is close to the greatest possible execution time. Since the customer cost function is monotonically increasing with the execution day, the minimal value for the execution time of a job j N c can be chosen. Therewith condition (15) can be strengthened through adding an upper bound for the execution time. If the machine reaches job j outside the time window, the execution has to be postponed at most by one day, thus h minutes. Therewith if for i N c, k M xk ij = 1, then the execution time of j N c can be bounded by h t d i + t m i + a i + r ij h t d j + t m j h t d i + t m i + a i + r ij + h. So, constraint (15) can be augmented by h t d i + t m i h t d j t m j + (M + a i + r ij ) k M x k ij +(M a j r ji h) x k ji M i, j N c (16) because if k M xk ji = 0, (16) equals (15). Contrariwise, from k M xk ji = 1 follows k M xk ij = 0 and with it h td i +tm i h t d j tm j +(M a j r ji h) M. That equals to h t d i + tm i h t d j + tm j + a j + r ji + h and means that if job i is resolved immediately after job j, job i is executed not later than one day after the machine has finished j and has travelled to the location of i. In essence, (16) is not a valid inequality of (LP1), since it is not stipulated to use a small execution time. But if the customer costs monotonically increase with t d i, for all i N, there is an optimal solution of (LP1) that also fulfils (16) Time flow model Another possibility to linearise condition (12) is the substitution of the time variables t i by the flow variables t ij, with i, j N c, as proposed by van Eijl k M 9

10 (1995). These variables are always zero if x k ij = 0, for all k M. Contrariwise, if any machine travels from job i to j, the pair t ij := (t d ij, tm ij ) is the execution time of job i. The corresponding linear model is (LP2) min d ij x k ij + c i t d ij (17) k M i N j N c i N c s.t. (2) (10) t d 0 x k ij t d ij d max x k ij i, j N c (18) k M k M 0 t m ij u i x k ij i, j N c (19) k M t sk i = t 0 k M (20) i N c (h t d ij + t m ij ) (h t d ji + t m ji + (a j + r ji ) k M i N (21) t d ij N, t m ij R + i, j N c (22) x k ji) In the objective function, t d i is replaced by j N c t d ij that represents the execution day of job i. The route conditions are the same as in the basic threeindex model (NLP), see constraints (2) (10). By means of conditions (18) and (19), it is ensured that t d ij = tm ij = 0 if j is not the successor of i, thus if k M xk ij = 0 with i, j N c. Contrariwise, the execution day is bounded by the start day t d 0 and the maximally allowed day d max, and the execution minute is bounded by 0 and u i. Equation (20) defines the execution time of the start depots. By condition (21), the correctness of the execution times is guaranteed. The left side is the execution time of job i. The right side gives the execution time of the job resolved before i, because this is the only one where a k M exists such that x k ji = 1 and, hence, the only one with time variables t d ji and tm ji representing the execution time of the predecessor of i. Condition (21) cannot be required for the depots, because a start depot has no predecessor and its execution time is fixed, and an end depot has no successor so that t zk i = (0, 0), for all i N c and k M, as follows from (18) and (19). Since the customer costs of the depots are zero, the execution time of the end depot must not be determined. If necessary, the definition of an execution time for the end depots can be realised through small changes in the route definition, e.g., adding an artificial travel from the end depot back to the start depot. The advantage of formulation (LP2) is that no big-m term is needed. But the number of time variables increases drastically. Instead of 2n c time variables, this model requires 2n 2 c. Also the number of constraints is increased, even though 10

11 the most of them are less complex Another Splitting of the Execution Time To reduce the number of variables of the time flow model, the execution time in minutes t e i = h td i + tm i can be used instead of calculating it from the execution day and minute. With it, one flow variable t e ij is sufficient to determine the execution time. The execution day t d i, necessary to calculate the customer costs, is the integer between 1 h j N te ij 1 and 1 h j N te ij. Since the execution minute is bounded, the remainder of the division 1 h j N te ij has to be at most u i, for all i N c. Therewith, the number of time variables is n 2 c + n c, a reduction compared to (LP2), but some additional constraints are necessary to calculate the execution day. (LP3) min k M i N c s.t. (2) (10) (h t d 0 + t m 0 ) d ij x k ij + i N k M c i t d i x k ij t e ij (h d max + u i ) k M x k ij i, j N c (23) t e s k i = h t d 0 + t m 0 k M (24) i N c t e ij (t e ji + (a j + r ji ) x k ji) k M i N (25) 1 h ( j N c t e ij u i) t d i 1 h j N c t e ij i N c (26) t e ij R + i, j N c (27) t d i N i N c (28) The objective function is equal to the objective function of (LP1). The execution time in minutes t e ij is bounded by the start time in minutes h td 0 + t m 0 and h d max + u i if any machine travels from job i to j, with i, j N c. Contrariwise, t e ij = 0. These bounds are given by (23). By means of equation (24), the execution times of the start depots are defined. Constraint (25) represents the time condition (12) of the non-linear model (NLP). The execution of job i N cannot start before the execution of the previous job is finished and the machine has travelled to the location of i. The execution day is defined by (26). Also the com- 11

12 pliance of the working shift is ensure. If the remainder of 1 h j N c t e ij is greater than u i, there is no integer in the interval [ 1 h ( j N c t e ij u i), 1 h j N c t e ij ]. At last, the execution time in minutes t e ij are real numbers and the execution days t d i are integers as defined by (27) and (28). Further formulations of the execution time are possible. For example the second kind of splitting the execution time can also be used for the big-m model of the time constraint. Another possibility to model the execution day is the usage of binary variables d ip that define that job i N c is resolved on day p {t d 0, t d 0 +1,..., d max }. That allows some additional constraints to the execution times, e.g., if a i + min{r ij, r ji } + a j > 480, then the jobs i and j cannot be executed at the same day by the same machine. That can be defined by d ip + d jp 2 k M (xk ij + xk ji ), for all p {td 0, t d 0 + 1,..., d max }. But for the defined benchmarks, the working durations and travel times are too small to formulate such constraints. 3.3 Alternative Route Formulations: Two-Index Models To reduce the number of variables, the m routes of the m machines can be formulated as one large route through all depots with two-index binary variables. The variables x ij code whether a machine travels from job i to job j. Additionally, there are artificial travels from end depot z k to start depot s k+1, for all k = 1, 2,..., m 1, and from z m to s 1. Then the routing constraints can be written as follows: (LP4) min s.t. i N c c i t d i (29) d ij x ij + i N x ij = 1 i N c (30) x ji = 1 i N c (31) x zms 1 = 1 (32) x zk s k+1 = 1 k M \ {m} (33) x sk z l = 0 k, l M (34) x ij {0, 1} i, j N c, k M (35) 12

13 v i n c 1 i N c (36) v s1 = 0 (37) v i v j + (n c 1) x ij n c 2 i, j N c \ {s 1 } (38) v sk v sk k M \ {1} (39) v i N i N c (40) h t d j + t m j h t d i + t m i + a i + r ij (11),(13),(14) i N c, j N \ {s k : k M} : x ij = 1 (41) The equations (30) and (31) ensure that each job is visited and leaved exactly once. The artificial travellings between the depots are defined with (32) and (33). Empty routes are forbidden through (34). In the two-index route formulation, the start depots have a predecessor in the route. Therewith the start depots have to be excluded from the time constraints, see (41). But constraints (30) (35) are not sufficient to define a correct route through all the depots in the correct order. Two problems occur: The first problem is the order of the depots. It is possible to start in depot s 1, visit some jobs and go to z k, k 1, without visiting z 1 or s k. Then the first machine starts in s 1 but does not end in z 1. And it is no problem to close the cycle, e.g. the depot order s 1... z 2 s 3... z 1 s 2... z 3 fulfils all constraints but is not allowed. The second problem is that subtours are not avoided. In difference to the three-index models (LP1) (LP3), the cycle C = {i 1, i 2,..., i l } can contain depots. In the threeindex models, this is impossible because start depots are only leaved and end depots are only arrived. But in the two-index formulation, also the depots are arrived and leaved exactly once and therewith a subtour with depots is possible. Since the execution time of the start depots is fixed, the time constraint (41) must not be met and the contradiction t e i 1 <... < t e i l < t e i 1 of Lemma 1 is resolved in the start depot t e i 1 <... < t e z k t e s k+1 <... < t e i l < t e i 1. So, additional constraints are necessary to exclude subtours and guarantee the correct order of the depots in the large route generated by the two-index variables MTZ constraints One possibility for a well-defined large route with two-index variables is the usage of the subtour elimination constraints from Miller, Tucker and Zemlin 13

14 (1960), see constraints (36) (38), (40). The additional decision variable v i is the position of job i N c in the large route with s 1 in position 0. By means of condition (38) is ensured that job j has a larger position than job i if x ij = 1. If the route contains subtours, this condition leads to a contradiction and the solution is infeasible. The chosen linearisation equals to a big-m formulation with M = n c 1. With the position variables v i can also be ensured that the start depots are visited in the correct order, see constraint (39). Then the first depot reached after s k is the corresponding end depot z k and all jobs between s k and z k are executed with machine k. This route model can be combined with the time constraints of the three models (LP1) (LP3) by replacing k M xk ij with x ij and excluding the start depots from constraint (15) when using (LP1). In Desrochers (1991), an improved formulation of the MTZ constraint is given: v i v j + (n c 1) x ij + (n c 3) x ji n c 2 i, j N c \ {s 1 } (42) With it, two inequalities have to be considered if x ij = 1, and it is v i v j 1 and v j v i + 1, thus v j = v i Flow formulation of the MTZ constraints Also the formulation of the MTZ constraints can be transformed in a flow model to avoid the big-m term. Therefore the variables v i are replaced by the flow variables v ij with v ij = 0 if x ij = 0, and v ij is the position of i (equals v i ) if x ij = 1. (LP5) min i N c s.t. (30) (35) d ij x ij + i N c i t d i v s1i = 0 i N c (43) v ij (n c 1) x ij i, j N c \ {s 1 } (44) i N c v sk i v ij = (v ji + x ji ) i N c \ {s 1 } (45) i N c v sk 1 i + 3 k M \ {1} (46) v ij N i, j N c (47) (11), (41), (13), (14) Equation (43) sets s 1 as start of the job sequence. By means of constraint (44) is ensured that the position variable v ij is zero if x ij = 0. Otherwise, v ij is 14

15 bounded by n c 1. Equation (45) sets the position of job i by one greater than the position of the previous job. And (46) ensures the correct order of the start depots. As stated previously, the advantage of the flow formulation is that the big- M term is avoided at the expense of an increased number of variables and constraints Binary machine allocation Another possibility to avoid subtours and to guarantee the correct order of the depots is the allocation of jobs to machines. The binary variable y ik is 1 if job i is resolved by machine k, and 0 otherwise. Then, the problem can be modelled as (LP6) min i N c d ij x ij + i N c i t d i s.t. (30) (35) y ik = 1 i N c (48) k M y sk k = 1 k M (49) y zk k = 1 k M (50) y ik y jk 1 x ij k M, i N {s k }, j N {z k } (51) y ik {0, 1} i N c, k M (52) (11), (41), (13), (14) Condition (48) ensures that each job is resolved by exactly one machine. The start and end depot of machine k are allocated to machine k, as defined with (49) and (50). By constraint (51) is ensured that two successive resolved jobs are resolved with the same machine. Therewith is guaranteed that all jobs allocated between the start depot s k and the end depot z k are resolved with machine k. Thus it is excluded to visit another depot before reaching z k. Also the occurrence of subtours is avoided: Assuming C := {i 1, i 2,..., i l } is a cycle defined by the route variables. Because of the time constraints, C must contain depots (compare Lemma 1). Let i q 1 := z k 1 and i q := s k be the depots. Then follows from (49), y sk k := y iqk = 1 and from (51) that y iqk = y iq+1k =... = y il k = y i1k =... = y iq 1k =: y zk 1 k = 1. But (50) defines y zk 1 k 1 = 1. Together with (48), this leads to a contradiction. 15

16 Condition (51) can also be formulated in a stronger way by y ik y jk 1 x ij x ji k M, i N {s k }, j N {z k }. (53) Integer machine allocation Instead of binary variables, also integer variables y i can be used to represent the machine allocation of job i N c. (LP7) min d ij x ij + c i t d i i N i N c s.t. (30) (35) y sk = k k M (54) y zk = k k M (55) y i y j (1 x ij ) m i N {s k : k M}, j N {z k : k M} (56) y i {1, 2,..., m} i N c (57) (11), (41), (13), (14) Similar to (LP6), the depots s k and z k are resolved by machine k, defined with constraints (54) and (55). Through (56) is ensured that each job is resolved with a machine that has the same or a larger value than its predecessor. Therewith all jobs between s k and z k are resolved with the same machine k. Constraint (57) defines that y i is an integer with 1 y i m, for all i N c. As proposed in the binary machine allocation formulation, constraint (56) can be strengthened by y i y j (1 x ij x ji ) m i N {s k : k M}, j N {z k : k M} (58). Then, it is necessary to allocate each job to the same machine as the predecessor since if x ij = 1 two inequalities are considered and it follows y i y j 0 and y j y i 0, i.e. y j = y i. Compared to (LP6), the number of variables and constraints is reduced, but integer variables are a bit more difficult because they can produce probably more branching nodes. 16

17 4 Benchmarks To test the performance of the different MILP formulations, 100 random benchmarks are created and solved. On request, these benchmark can be provided. Each benchmark contains 20 jobs randomly and non-clustered allocated in a square of 100x100 points. The coordinates are given by uniformly distributed integers in the interval [0, 100].The number of machines is selected from {2, 3, 4} and the execution starts with the working shift on the next day, so t 0 := (1, 0). The x- and y-coordinates of the depots are chosen randomly in [25, 75]. Therewith, the depots are allocated in an inner square of the map. All coordinates are integers. The travel costs are the Euclidean distance multiplied with 10 and rounded. The number of jobs afflicted with non-zero customer costs is r n n for a given random value r n [0.25, 0.75]. The amount of customer costs is also chosen by random for each job that has non-zero customer costs, regulated by a given random value r c. Therewith the map contains jobs with high customer costs, but also jobs with low (and non-zero) customer costs. Thus, by means of r n and r c very different benchmarks can be created. It is not possible, to know in advance how big the influence of the customer costs is, but in general, a high value for r n leads to more jobs with non-zero customer costs and a high value for r c results in higher customer costs of the jobs. But the hardness of a benchmark does not only depend on the number of jobs afflicted with customer costs and their values, but also on the allocation of the jobs and the depots on the map. If the jobs with high customer costs are far away from the start depots, them preference leads to a long detour and the optimal solution differs more from the optimal solution of the problem without customer costs. Contrariwise, if the jobs close to the start depots are afflicted with non-zero customer costs, the influence of the customer costs on the solution is small. The reason is that also in the problem without customer costs, these jobs are scheduled at the beginning of the planning process. 5 Solving Method In order to tight the MILP formulations of the VRP-CC, we use an approach known from solving the Travelling Salesmen Problem (TSP), which is very close to VRPs. It has been shown, that the subtour elimination constraints from Dantzig, Fulkerson and Johnson (1954), in the following called DFJ constraints, are better than the subtour elimination constraints from Miller, Tucker and Zemlin (1960) used in (LP4) and similar to the time constraints. The DFJ constraints are formulated as follows: x ij S 1 S N c, S > 1 (59) i,j S Constraint (59) guarantees that S is not a subtour, since, if S is a subtour, then for all i S, and q N c \ S is x iq = 0. Consequentially j S x ij = 1, for all i S, and therewith i,j S x ij = S. The DFJ constraints lead to a stronger 17

18 formulation than the MTZ constraints; they are even facets of the polytope of the TSP (Nemhauser, 1988). The disadvantage of the DFJ constraints is the high number of subsets S that have to be probed. Even it is sufficient to test all subsets with 2 S nc 2, since if S is a subtour, then also N c \ S, the number of subsets is exponentially in the number of jobs. An elementary approach to tighten the TSP formulation with MTZ constraints is the step-by-step inclusion of DFJ constraints for occurring subsets (Pataki, 2003). At first, the TSP is solved without any subtour elimination constraints. The obtained solution normally contains subtours (if not, it is an optimal solution and the solving process can be stopped). Based on these subtours, DFJ constraints are generated in order to avoid their occurrence in further solving steps. With this small selection of DFJ constraints, the integer problem is solved again. The steps solving and adding DFJ constraints are repeated β-times (or until the obtained solution does not contain subtours). If in the β runs no solution without subtours was found, the MTZ constraints are added. The problem containing the MTZ constraints and also the generated set of DFJ constraints is solved to obtain an optimal solution. As computational tests have shown, using such a small set of DFJ constraints leads to better running times than solving the problem without any DFJ constraints. To use this approach, the time constraints have to be relaxed because they work as MTZ constraints and does not allow any subtours (see Lemma 1). Therefore, the time constraints are only added for a small subset of jobs with high customer costs N T N with c i c j, i N T, j N c \ N T and N T = (n + m) α with α [0, 1] a chosen value. So, in (LP1) the time constraints (15) are limited to h t d j + t m j h t d i + t m i + (M + a i + r ij ) x k ij M i N c, j N T. The other time formulation variants are relaxed in the same way, only for the jobs j N T is stipulated that its execution starts not before the previous job is finished and the machine reaches j. In the two-index route formulation, the additional part to avoid subtours and to guarantee the correct depot order is also omitted, thus the variables v respectively y do not occur. The relaxed problem is solved β-times. The occurring subtours are the base of the DFJ constraints. The DFJ constraints are generated for the union of at most γ subtours of the current solution and added before the relaxed problem is solved again. Therewith, in every run new subtours occur and new DFJ constraints are formulated. After at most β runs or if the solution of the relaxed problem do not contain further subtours, the VRP-CC formulation is augmented by the generated DFJ constraints and solved. The solution method is shown as pseudo code in Algorithm 1. The procedure of generating DFJ constraints is called preprocess. Different tests were necessary to get suitable values for α, β and γ. Clear is that the higher α, the smaller is the number of occurring subtours since each subtour must contain at least one job without time constraints. If β and γ are k M 18

19 Algorithm 1: Base solving framework Input: MILP formulation of VRP-CC # Define N T N T N c with c i c j, i N T, j N c \ N T and N T = n α # Store the subsets for DFJ constraints S := Do β-times Solve relaxed problem with DFJ constraints i,j S x ij S 1 S S Let S 1, S 2,..., S l be the subtours of the solution if l=1 then return else forall the P P({1, 2,..., l}) with 1 P min{γ, l 1} do S := S { p P S p} end end end Solve the MILP formulation of the VRP-CC with the additional DFJ constraints i,j S x ij S 1 S S chosen small, only less runs are made to generate DFJ constraints, and based on a given set of subtours only less DFJ constraints are included. Therewith the final problem contains only less additional DFJ constraints that leads to a smaller improvement in the running time. Contrariwise, if β is chosen high, only less DFJ constraints are generated in the last runs since only less subtours occur and mostly subtours similar to the previous runs. Therewith similar DFJ constraints are generated that could not further tight the LP relaxation but increases the number of constraints. Also a high value for γ leads to an increase in the calculation effort. DFJ constraints of large subsets S seem to have a worse performance. To show the advantage of adding DFJ constraints, the average results of solving the 100 random benchmarks are presented in Table 1 for different values of α. For the calculation we used β = γ = 3 and (LP1). Shown is the average running time for the whole solving process, the preprocessing time that is the time to generate the DFJ constraints, the number of obtained DFJ constraints and the number of runs therefore, and at last the number of optimal solved problems during the time limit of 15 minutes. In the case α = 1, no runs to generate DFJ constraints are necessary since the time constraints prohibit the occurrence of subtours. Thus β = 0. The results show the high profit of adding DFJ constraints. Comparing the running time of α = 0.75, where only less DFJ constraints are generated, and α = 1, a small improvement in the running time and a significant increasing 19

20 α Solving Time (sec) Preprocessing Time (sec) DFJ Constraints Solved problems Table 1: Average results of 100 random benchmarks for different α. in the number of solved problems can be seen. So, even this very small set of DFJ constraints strengthened the formulation to improve the performance in CPLEX. The performance can be further improved by decreasing α because of two reasons: On the one hand, a smaller α leads to a smaller preprocessing time, thus less time is necessary to solve the relaxed problems to create DFJ constraints. And on the other hand, a small α leads to more subtours and with it more DFJ-constraints are generated. And the more DFJ constraints, the stronger is the LP relaxation. But more constraints can also lead to more calculation effort. With α = 0 and α = 0.25, the performance is similar, even the number of DFJ constraints differs. Since with α = 0.25, one more benchmark was solved, we decide to use this value in further calculations. 6 Results The tests were executed on a PC with an Intel 2.8Ghz Quad-Core, 8GB RAM and Windows 7 (64-bit). The 64-bit version of CPLEX 12.5 was used as MILP solver with its default settings. The solving time was limited to 15 minutes in all benchmarks. 6.1 Time Formulations At first, the different formulations of the time constraints are compared: the big-m formulation (LP1) the big-m formulation with strengthened constraints, see (LP1) and (16) the flow model (LP2) with execution day and execution minute the flow model (LP3) with execution time in minutes and resultant execution day Table 2 shows the average solving time, the average number of CPLEX nodes and iterations, the number of optimal solved problems, and the quality of the LP bound that is the average distance of the LP bound to the optimal value in per cent. For the test, we used the preprocessing parameters α = 0.25 and β = γ = 3. The results show that the big-m formulation with 2n c time variables has the best performance in CPLEX. The average solving time is significant smaller than the average solving times of the other variants to formulate the time conditions, and 92 of the 100 benchmarks are solved optimally during the time limit of 15 minutes. 20

21 (LP1) (LP1) (LP2) (LP3) strength. Solving Time (sec) Nodes (in th.) Iterations (in th.) Solved problems Quality of LP bound Table 2: Average results of 100 random benchmarks for the three-index model with different time formulations. The strengthened variant of (LP1), with a more limited execution time, leads to a better LP bound and to a small reduction in the number of analysed branching nodes. But in each branching node, the linear relaxation has more constraints that leads to a higher solving effort. This can be seen in the higher number of iterations and the greater average solving time. The both variants (LP2) and (LP3) with the flow formulation of the time constraints are also less successful than (LP1). The advantage was to avoid the big-m formulation because it leads to weak LP relaxations. But the increase in variables and constraints leads to greater problem sizes in the LP relaxation and therewith to more calculation effort. That can be seen in the high numbers of iterations compared to the smallish number of branching nodes. The reduction of branching nodes is an indicator for better LP bounds, even if the initial bound is similar to the bound from (LP1). The high increasing in iterations show the high computational effort to solve the LP relaxations. All in all, the performance in CPLEX of the flow formulations is worse than the performance of (LP1). To ensure that (LP1) has the best performance not only because the preprocessing parameters were obtained with this formulation, we made some tests with other preprocessing parameters; all showed similar results. 6.2 Route Models After the best formulation for the time constraint was found, the different route formulations were compared against each other. Based on the high difference in the route definition, the two-index route formulation leads to more subtours using the parameters obtained with (LP1). But different tests have shown that α = 0.25 and β = γ = 3 are also suitable for the two-index route formulations (LP4) (LP7). The two-index formulations are completed with the time formulation of (LP1). In Table 3, the route formulations (LP4) (LP7) are compared with the threeindex model (LP1). Table 4 contains the results of the strengthened variants if exist. Thus in (LP4), constraint (38) is replaced by (42), and in (LP6) and (LP7) the constraints (53) and (58) are used instead of (51) and (56). Shown are the average solving time in seconds, the number of analysed branching nodes and 21

22 the number of iterations in thousands, the number of optimal solved problems during 15 minutes, and the quality of the LP bound that is the average distance of the LP bound and the optimal value in per cent. (LP1) (LP4) (LP5) (LP6) (LP7) Solving Time (sec) Nodes (in th.) Iterations (in th.) Solved problems Quality of LP Bound Table 3: Average results of 100 random benchmarks for different route formulations with the big-m time formulation. The results show that the performance of the two-index formulations heavily depends on the selected variant to avoid subtours and to ensure the correct order of the depots even all of them have nearly the same LP bound quality. Comparing the average values of two variants of the MTZ constraints, it can be seen that the flow formulation of (LP5) is not better than the common variant (LP4) with the big-m formulation. The results are similar to the case of the time constraint as big-m formulation and flow formulation. In both, with the flow formulation less branching nodes are analysed, but the effort to solve the problem of a branching node is higher. Overall, the solution effort is higher and the big-m formulation should be preferred. The machine allocation variants (LP6) and (LP7) have nearly the same running time. Using binary machine allocation variables results in a higher number of variables and constraints; and therewith in more rows and columns of the LP relaxation. Using integer variables reduces the problem size, but often more branchings are necessary to define an integer variable and therefore the number of branching nodes increases. These effects can be seen when comparing the number of nodes and iterations. By solving the problem with the (LP7) formulation, more branching nodes are analysed. But the LP relaxations are solved faster. So, (LP7) with integer variables has a better performance than (LP6) with binary variables. (LP1) (LP4) (LP5) (LP6) (LP7) strength. strength. strength. Solving Time (sec) Nodes (in th.) Iterations (in th.) Solved problems Quality of LP Bound Table 4: Average results of 100 random benchmarks for different strengthened route formulations with the big-m time formulation. The results presented in Table 4 show the benefit from strengthen the addi- 22

23 tional constraints of the two-index formulations. Looking to (LP4) and its strengthened variant shows that the solving time, number of analysed branching nodes and number of iterations are increased although the LP bound of the root problem is much better. But with the strengthened variant, two more benchmarks are solved during the 15 minute time limit. Overall, both seem to have a similar performance. The machine allocation variants show very different impacts of strengthen constraint (53) or (58), although the strengthening is very similar. Strengthen (LP6) does not improve the LP bound and the time required for solving. In contrast, (LP7) is much improved through strengthening. The solving time is reduced significantly, less branching nodes are analysed, less iterations were necessary to solve the relaxed problems and the LP bound of the root is better. With it, the integer variant of the machine allocation formulation is much better than the variant with binary variables. All in all, the best results are obtained with the integer machine allocation formulation (LP7). In general, the two-index formulations are better than the three-index formulation. 6.3 Benchmark characteristics At last, we want to show the influence of benchmark characteristics to the performance. Therefore, the 100 random benchmarks were clustered dependent on the ratio of customer costs in the optimal solution value and dependent on the detour length that is the increase in travel costs of the optimal value compared to the optimal value of the same benchmark without customer costs. The results are shown in Figure 1 for the three MILP formulations (LP1), (LP4) and the strengthened variant of (LP7). On the left side, the average solving time of the benchmarks that belong to the different customer cost groups are pictured, and the right side shows the average running times of the benchmarks that belong to different groups of the detour length. To get the groups for the ratio of customer costs, the benchmarks were sorted by the ratio of customer costs in the optimal solution. Then, the benchmarks of the first group are the first fifth of the sorted benchmarks, the benchmarks of the second group are the second fifth, and so on. In the same way, with a sorting based on the length of the detour, the groups that belongs to the detour length are generated. The bars represent the average running time of the MILP formulation. They are plotted on the x-coordinate that is the average ratio of costumer costs or the average detour length of the group. It can be seen that with increasing ratio of customer costs the benchmarks are harder to solve. All three MILP formulations requires more time to solve the benchmarks of the last two customer cost groups. The results of (LP4) in Figure 1 show that (LP4) is worse than (LP1) in the benchmarks with a low ratio of customer costs. In contrast, (LP1) needs more time than (LP4) to solve benchmarks with a high ratio of customer costs. In each group, the strengthened variant of (LP7) has the smallest average running time. Grouping the benchmarks by the detour length leads to similar results, 23

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents

More information

Dynamic TCP Acknowledgement: Penalizing Long Delays

Dynamic TCP Acknowledgement: Penalizing Long Delays Dynamic TCP Acknowledgement: Penalizing Long Delays Karousatou Christina Network Algorithms June 8, 2010 Karousatou Christina (Network Algorithms) Dynamic TCP Acknowledgement June 8, 2010 1 / 63 Layout

More information

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition

More information

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems

A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Abstract A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Fang He and Rong Qu The Automated Scheduling, Optimisation and Planning (ASAP) Group School of Computer Science,

More information

Research Paper Business Analytics. Applications for the Vehicle Routing Problem. Jelmer Blok

Research Paper Business Analytics. Applications for the Vehicle Routing Problem. Jelmer Blok Research Paper Business Analytics Applications for the Vehicle Routing Problem Jelmer Blok Applications for the Vehicle Routing Problem Jelmer Blok Research Paper Vrije Universiteit Amsterdam Faculteit

More information

Two objective functions for a real life Split Delivery Vehicle Routing Problem

Two objective functions for a real life Split Delivery Vehicle Routing Problem International Conference on Industrial Engineering and Systems Management IESM 2011 May 25 - May 27 METZ - FRANCE Two objective functions for a real life Split Delivery Vehicle Routing Problem Marc Uldry

More information

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models

INTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models Integer Programming INTEGER PROGRAMMING In many problems the decision variables must have integer values. Example: assign people, machines, and vehicles to activities in integer quantities. If this is

More information

Modeling and Solving the Capacitated Vehicle Routing Problem on Trees

Modeling and Solving the Capacitated Vehicle Routing Problem on Trees in The Vehicle Routing Problem: Latest Advances and New Challenges Modeling and Solving the Capacitated Vehicle Routing Problem on Trees Bala Chandran 1 and S. Raghavan 2 1 Department of Industrial Engineering

More information

Applied Algorithm Design Lecture 5

Applied Algorithm Design Lecture 5 Applied Algorithm Design Lecture 5 Pietro Michiardi Eurecom Pietro Michiardi (Eurecom) Applied Algorithm Design Lecture 5 1 / 86 Approximation Algorithms Pietro Michiardi (Eurecom) Applied Algorithm Design

More information

Minimizing the Number of Machines in a Unit-Time Scheduling Problem

Minimizing the Number of Machines in a Unit-Time Scheduling Problem Minimizing the Number of Machines in a Unit-Time Scheduling Problem Svetlana A. Kravchenko 1 United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarus kravch@newman.bas-net.by Frank

More information

Practical Guide to the Simplex Method of Linear Programming

Practical Guide to the Simplex Method of Linear Programming Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear

More information

Chapter 13: Binary and Mixed-Integer Programming

Chapter 13: Binary and Mixed-Integer Programming Chapter 3: Binary and Mixed-Integer Programming The general branch and bound approach described in the previous chapter can be customized for special situations. This chapter addresses two special situations:

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. !-approximation algorithm. Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of

More information

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach

Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach MASTER S THESIS Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach PAULINE ALDENVIK MIRJAM SCHIERSCHER Department of Mathematical

More information

A cluster-based optimization approach for the multi-depot heterogeneous fleet vehicle routing problem with time windows

A cluster-based optimization approach for the multi-depot heterogeneous fleet vehicle routing problem with time windows European Journal of Operational Research 176 (2007) 1478 1507 Discrete Optimization A cluster-based optimization approach for the multi-depot heterogeneous fleet vehicle routing problem with time windows

More information

Approximation Algorithms

Approximation Algorithms Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms

More information

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling

Chapter 11. 11.1 Load Balancing. Approximation Algorithms. Load Balancing. Load Balancing on 2 Machines. Load Balancing: Greedy Scheduling Approximation Algorithms Chapter Approximation Algorithms Q. Suppose I need to solve an NP-hard problem. What should I do? A. Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one

More information

Proximal mapping via network optimization

Proximal mapping via network optimization L. Vandenberghe EE236C (Spring 23-4) Proximal mapping via network optimization minimum cut and maximum flow problems parametric minimum cut problem application to proximal mapping Introduction this lecture:

More information

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.

! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm. Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three

More information

New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem

New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem New Exact Solution Approaches for the Split Delivery Vehicle Routing Problem Gizem Ozbaygin, Oya Karasan and Hande Yaman Department of Industrial Engineering, Bilkent University, Ankara, Turkey ozbaygin,

More information

Strategic planning in LTL logistics increasing the capacity utilization of trucks

Strategic planning in LTL logistics increasing the capacity utilization of trucks Strategic planning in LTL logistics increasing the capacity utilization of trucks J. Fabian Meier 1,2 Institute of Transport Logistics TU Dortmund, Germany Uwe Clausen 3 Fraunhofer Institute for Material

More information

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem

A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,

More information

Batch Production Scheduling in the Process Industries. By Prashanthi Ravi

Batch Production Scheduling in the Process Industries. By Prashanthi Ravi Batch Production Scheduling in the Process Industries By Prashanthi Ravi INTRODUCTION Batch production - where a batch means a task together with the quantity produced. The processing of a batch is called

More information

Cost Models for Vehicle Routing Problems. 8850 Stanford Boulevard, Suite 260 R. H. Smith School of Business

Cost Models for Vehicle Routing Problems. 8850 Stanford Boulevard, Suite 260 R. H. Smith School of Business 0-7695-1435-9/02 $17.00 (c) 2002 IEEE 1 Cost Models for Vehicle Routing Problems John Sniezek Lawerence Bodin RouteSmart Technologies Decision and Information Technologies 8850 Stanford Boulevard, Suite

More information

Scheduling Algorithm with Optimization of Employee Satisfaction

Scheduling Algorithm with Optimization of Employee Satisfaction Washington University in St. Louis Scheduling Algorithm with Optimization of Employee Satisfaction by Philip I. Thomas Senior Design Project http : //students.cec.wustl.edu/ pit1/ Advised By Associate

More information

Scheduling Shop Scheduling. Tim Nieberg

Scheduling Shop Scheduling. Tim Nieberg Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations

More information

QoS optimization for an. on-demand transportation system via a fractional linear objective function

QoS optimization for an. on-demand transportation system via a fractional linear objective function QoS optimization for an Load charge ratio on-demand transportation system via a fractional linear objective function Thierry Garaix, University of Avignon (France) Column Generation 2008 QoS optimization

More information

Discrete Optimization

Discrete Optimization Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.1-4.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 2015-03-31 Todays presentation Chapter 3 Transforms using

More information

TSP in Spreadsheets a Guided Tour

TSP in Spreadsheets a Guided Tour TSP in Spreadsheets a Guided Tour Rasmus Rasmussen Abstract The travelling salesman problem (TSP) is a well known business problem, and variants like the maximum benefit TSP or the price collecting TSP

More information

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where.

1 Introduction. Linear Programming. Questions. A general optimization problem is of the form: choose x to. max f(x) subject to x S. where. Introduction Linear Programming Neil Laws TT 00 A general optimization problem is of the form: choose x to maximise f(x) subject to x S where x = (x,..., x n ) T, f : R n R is the objective function, S

More information

Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen

Minimizing costs for transport buyers using integer programming and column generation. Eser Esirgen MASTER STHESIS Minimizing costs for transport buyers using integer programming and column generation Eser Esirgen DepartmentofMathematicalSciences CHALMERS UNIVERSITY OF TECHNOLOGY UNIVERSITY OF GOTHENBURG

More information

24. The Branch and Bound Method

24. The Branch and Bound Method 24. The Branch and Bound Method It has serious practical consequences if it is known that a combinatorial problem is NP-complete. Then one can conclude according to the present state of science that no

More information

Randomization Approaches for Network Revenue Management with Customer Choice Behavior

Randomization Approaches for Network Revenue Management with Customer Choice Behavior Randomization Approaches for Network Revenue Management with Customer Choice Behavior Sumit Kunnumkal Indian School of Business, Gachibowli, Hyderabad, 500032, India sumit kunnumkal@isb.edu March 9, 2011

More information

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc.

Linear Programming for Optimization. Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1. Introduction Linear Programming for Optimization Mark A. Schulze, Ph.D. Perceptive Scientific Instruments, Inc. 1.1 Definition Linear programming is the name of a branch of applied mathematics that

More information

Linear Programming. March 14, 2014

Linear Programming. March 14, 2014 Linear Programming March 1, 01 Parts of this introduction to linear programming were adapted from Chapter 9 of Introduction to Algorithms, Second Edition, by Cormen, Leiserson, Rivest and Stein [1]. 1

More information

Het inplannen van besteld ambulancevervoer (Engelse titel: Scheduling elected ambulance transportation)

Het inplannen van besteld ambulancevervoer (Engelse titel: Scheduling elected ambulance transportation) Technische Universiteit Delft Faculteit Elektrotechniek, Wiskunde en Informatica Delft Institute of Applied Mathematics Het inplannen van besteld ambulancevervoer (Engelse titel: Scheduling elected ambulance

More information

Charles Fleurent Director - Optimization algorithms

Charles Fleurent Director - Optimization algorithms Software Tools for Transit Scheduling and Routing at GIRO Charles Fleurent Director - Optimization algorithms Objectives Provide an overview of software tools and optimization algorithms offered by GIRO

More information

A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem

A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem A Scatter Search Algorithm for the Split Delivery Vehicle Routing Problem Campos,V., Corberán, A., Mota, E. Dep. Estadística i Investigació Operativa. Universitat de València. Spain Corresponding author:

More information

R u t c o r Research R e p o r t. A Method to Schedule Both Transportation and Production at the Same Time in a Special FMS.

R u t c o r Research R e p o r t. A Method to Schedule Both Transportation and Production at the Same Time in a Special FMS. R u t c o r Research R e p o r t A Method to Schedule Both Transportation and Production at the Same Time in a Special FMS Navid Hashemian a Béla Vizvári b RRR 3-2011, February 21, 2011 RUTCOR Rutgers

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;

More information

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams

Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery

More information

IBM Research Report. A Pricing Problem under Monge Property

IBM Research Report. A Pricing Problem under Monge Property RC23823 (W0512-010) December 2, 2005 Mathematics IBM Research Report A Pricing Problem under Monge Property Oktay Günlük IBM Research Division Thomas J. Watson Research Center P.O. Box 218 Yorktown Heights,

More information

1 Solving LPs: The Simplex Algorithm of George Dantzig

1 Solving LPs: The Simplex Algorithm of George Dantzig Solving LPs: The Simplex Algorithm of George Dantzig. Simplex Pivoting: Dictionary Format We illustrate a general solution procedure, called the simplex algorithm, by implementing it on a very simple example.

More information

Routing in Line Planning for Public Transport

Routing in Line Planning for Public Transport Konrad-Zuse-Zentrum für Informationstechnik Berlin Takustraße 7 D-14195 Berlin-Dahlem Germany MARC E. PFETSCH RALF BORNDÖRFER Routing in Line Planning for Public Transport Supported by the DFG Research

More information

Multiple Spanning Tree Protocol (MSTP), Multi Spreading And Network Optimization Model

Multiple Spanning Tree Protocol (MSTP), Multi Spreading And Network Optimization Model Load Balancing of Telecommunication Networks based on Multiple Spanning Trees Dorabella Santos Amaro de Sousa Filipe Alvelos Instituto de Telecomunicações 3810-193 Aveiro, Portugal dorabella@av.it.pt Instituto

More information

Linear Programming I

Linear Programming I Linear Programming I November 30, 2003 1 Introduction In the VCR/guns/nuclear bombs/napkins/star wars/professors/butter/mice problem, the benevolent dictator, Bigus Piguinus, of south Antarctica penguins

More information

Largest Fixed-Aspect, Axis-Aligned Rectangle

Largest Fixed-Aspect, Axis-Aligned Rectangle Largest Fixed-Aspect, Axis-Aligned Rectangle David Eberly Geometric Tools, LLC http://www.geometrictools.com/ Copyright c 1998-2016. All Rights Reserved. Created: February 21, 2004 Last Modified: February

More information

INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS

INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS INDISTINGUISHABILITY OF ABSOLUTELY CONTINUOUS AND SINGULAR DISTRIBUTIONS STEVEN P. LALLEY AND ANDREW NOBEL Abstract. It is shown that there are no consistent decision rules for the hypothesis testing problem

More information

Chapter 11 Monte Carlo Simulation

Chapter 11 Monte Carlo Simulation Chapter 11 Monte Carlo Simulation 11.1 Introduction The basic idea of simulation is to build an experimental device, or simulator, that will act like (simulate) the system of interest in certain important

More information

Sensitivity Analysis 3.1 AN EXAMPLE FOR ANALYSIS

Sensitivity Analysis 3.1 AN EXAMPLE FOR ANALYSIS Sensitivity Analysis 3 We have already been introduced to sensitivity analysis in Chapter via the geometry of a simple example. We saw that the values of the decision variables and those of the slack and

More information

Chapter 6. Linear Programming: The Simplex Method. Introduction to the Big M Method. Section 4 Maximization and Minimization with Problem Constraints

Chapter 6. Linear Programming: The Simplex Method. Introduction to the Big M Method. Section 4 Maximization and Minimization with Problem Constraints Chapter 6 Linear Programming: The Simplex Method Introduction to the Big M Method In this section, we will present a generalized version of the simplex method that t will solve both maximization i and

More information

A Maximal Covering Model for Helicopter Emergency Medical Systems

A Maximal Covering Model for Helicopter Emergency Medical Systems The Ninth International Symposium on Operations Research and Its Applications (ISORA 10) Chengdu-Jiuzhaigou, China, August 19 23, 2010 Copyright 2010 ORSC & APORC, pp. 324 331 A Maximal Covering Model

More information

Optimal Scheduling for Dependent Details Processing Using MS Excel Solver

Optimal Scheduling for Dependent Details Processing Using MS Excel Solver BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 8, No 2 Sofia 2008 Optimal Scheduling for Dependent Details Processing Using MS Excel Solver Daniela Borissova Institute of

More information

Solving convex MINLP problems with AIMMS

Solving convex MINLP problems with AIMMS Solving convex MINLP problems with AIMMS By Marcel Hunting Paragon Decision Technology BV An AIMMS White Paper August, 2012 Abstract This document describes the Quesada and Grossman algorithm that is implemented

More information

Offline sorting buffers on Line

Offline sorting buffers on Line Offline sorting buffers on Line Rohit Khandekar 1 and Vinayaka Pandit 2 1 University of Waterloo, ON, Canada. email: rkhandekar@gmail.com 2 IBM India Research Lab, New Delhi. email: pvinayak@in.ibm.com

More information

Linear Programming Notes V Problem Transformations

Linear Programming Notes V Problem Transformations Linear Programming Notes V Problem Transformations 1 Introduction Any linear programming problem can be rewritten in either of two standard forms. In the first form, the objective is to maximize, the material

More information

Metric Spaces. Chapter 7. 7.1. Metrics

Metric Spaces. Chapter 7. 7.1. Metrics Chapter 7 Metric Spaces A metric space is a set X that has a notion of the distance d(x, y) between every pair of points x, y X. The purpose of this chapter is to introduce metric spaces and give some

More information

Scheduling Single Machine Scheduling. Tim Nieberg

Scheduling Single Machine Scheduling. Tim Nieberg Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for non-preemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe

More information

4.6 Linear Programming duality

4.6 Linear Programming duality 4.6 Linear Programming duality To any minimization (maximization) LP we can associate a closely related maximization (minimization) LP. Different spaces and objective functions but in general same optimal

More information

Robust Geometric Programming is co-np hard

Robust Geometric Programming is co-np hard Robust Geometric Programming is co-np hard André Chassein and Marc Goerigk Fachbereich Mathematik, Technische Universität Kaiserslautern, Germany Abstract Geometric Programming is a useful tool with a

More information

On the Interaction and Competition among Internet Service Providers

On the Interaction and Competition among Internet Service Providers On the Interaction and Competition among Internet Service Providers Sam C.M. Lee John C.S. Lui + Abstract The current Internet architecture comprises of different privately owned Internet service providers

More information

Systems of Linear Equations

Systems of Linear Equations Systems of Linear Equations Beifang Chen Systems of linear equations Linear systems A linear equation in variables x, x,, x n is an equation of the form a x + a x + + a n x n = b, where a, a,, a n and

More information

Integer Programming: Algorithms - 3

Integer Programming: Algorithms - 3 Week 9 Integer Programming: Algorithms - 3 OPR 992 Applied Mathematical Programming OPR 992 - Applied Mathematical Programming - p. 1/12 Dantzig-Wolfe Reformulation Example Strength of the Linear Programming

More information

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004

JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004 Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUST-IN-TIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February

More information

A Note on the Bertsimas & Sim Algorithm for Robust Combinatorial Optimization Problems

A Note on the Bertsimas & Sim Algorithm for Robust Combinatorial Optimization Problems myjournal manuscript No. (will be inserted by the editor) A Note on the Bertsimas & Sim Algorithm for Robust Combinatorial Optimization Problems Eduardo Álvarez-Miranda Ivana Ljubić Paolo Toth Received:

More information

Optimal shift scheduling with a global service level constraint

Optimal shift scheduling with a global service level constraint Optimal shift scheduling with a global service level constraint Ger Koole & Erik van der Sluis Vrije Universiteit Division of Mathematics and Computer Science De Boelelaan 1081a, 1081 HV Amsterdam The

More information

What is Linear Programming?

What is Linear Programming? Chapter 1 What is Linear Programming? An optimization problem usually has three essential ingredients: a variable vector x consisting of a set of unknowns to be determined, an objective function of x to

More information

Online vehicle routing and scheduling with continuous vehicle tracking

Online vehicle routing and scheduling with continuous vehicle tracking Online vehicle routing and scheduling with continuous vehicle tracking Jean Respen, Nicolas Zufferey, Jean-Yves Potvin To cite this version: Jean Respen, Nicolas Zufferey, Jean-Yves Potvin. Online vehicle

More information

Security-Aware Beacon Based Network Monitoring

Security-Aware Beacon Based Network Monitoring Security-Aware Beacon Based Network Monitoring Masahiro Sasaki, Liang Zhao, Hiroshi Nagamochi Graduate School of Informatics, Kyoto University, Kyoto, Japan Email: {sasaki, liang, nag}@amp.i.kyoto-u.ac.jp

More information

The Goldberg Rao Algorithm for the Maximum Flow Problem

The Goldberg Rao Algorithm for the Maximum Flow Problem The Goldberg Rao Algorithm for the Maximum Flow Problem COS 528 class notes October 18, 2006 Scribe: Dávid Papp Main idea: use of the blocking flow paradigm to achieve essentially O(min{m 2/3, n 1/2 }

More information

Using Ant Colony Optimization for Infrastructure Maintenance Scheduling

Using Ant Colony Optimization for Infrastructure Maintenance Scheduling Using Ant Colony Optimization for Infrastructure Maintenance Scheduling K. Lukas, A. Borrmann & E. Rank Chair for Computation in Engineering, Technische Universität München ABSTRACT: For the optimal planning

More information

A hierarchical multicriteria routing model with traffic splitting for MPLS networks

A hierarchical multicriteria routing model with traffic splitting for MPLS networks A hierarchical multicriteria routing model with traffic splitting for MPLS networks João Clímaco, José Craveirinha, Marta Pascoal jclimaco@inesccpt, jcrav@deecucpt, marta@matucpt University of Coimbra

More information

CHAPTER 9. Integer Programming

CHAPTER 9. Integer Programming CHAPTER 9 Integer Programming An integer linear program (ILP) is, by definition, a linear program with the additional constraint that all variables take integer values: (9.1) max c T x s t Ax b and x integral

More information

11. APPROXIMATION ALGORITHMS

11. APPROXIMATION ALGORITHMS 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: vertex cover LP rounding: vertex cover generalized load balancing knapsack problem Lecture slides by Kevin Wayne Copyright 2005

More information

5.1 Bipartite Matching

5.1 Bipartite Matching CS787: Advanced Algorithms Lecture 5: Applications of Network Flow In the last lecture, we looked at the problem of finding the maximum flow in a graph, and how it can be efficiently solved using the Ford-Fulkerson

More information

Optimising Patient Transportation in Hospitals

Optimising Patient Transportation in Hospitals Optimising Patient Transportation in Hospitals Thomas Hanne 1 Fraunhofer Institute for Industrial Mathematics (ITWM), Fraunhofer-Platz 1, 67663 Kaiserslautern, Germany, hanne@itwm.fhg.de 1 Introduction

More information

Some Polynomial Theorems. John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.

Some Polynomial Theorems. John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom. Some Polynomial Theorems by John Kennedy Mathematics Department Santa Monica College 1900 Pico Blvd. Santa Monica, CA 90405 rkennedy@ix.netcom.com This paper contains a collection of 31 theorems, lemmas,

More information

In this paper we present a branch-and-cut algorithm for

In this paper we present a branch-and-cut algorithm for SOLVING A TRUCK DISPATCHING SCHEDULING PROBLEM USING BRANCH-AND-CUT ROBERT E. BIXBY Rice University, Houston, Texas EVA K. LEE Georgia Institute of Technology, Atlanta, Georgia (Received September 1994;

More information

Integrating Benders decomposition within Constraint Programming

Integrating Benders decomposition within Constraint Programming Integrating Benders decomposition within Constraint Programming Hadrien Cambazard, Narendra Jussien email: {hcambaza,jussien}@emn.fr École des Mines de Nantes, LINA CNRS FRE 2729 4 rue Alfred Kastler BP

More information

Math 55: Discrete Mathematics

Math 55: Discrete Mathematics Math 55: Discrete Mathematics UC Berkeley, Fall 2011 Homework # 5, due Wednesday, February 22 5.1.4 Let P (n) be the statement that 1 3 + 2 3 + + n 3 = (n(n + 1)/2) 2 for the positive integer n. a) What

More information

2.3 Convex Constrained Optimization Problems

2.3 Convex Constrained Optimization Problems 42 CHAPTER 2. FUNDAMENTAL CONCEPTS IN CONVEX OPTIMIZATION Theorem 15 Let f : R n R and h : R R. Consider g(x) = h(f(x)) for all x R n. The function g is convex if either of the following two conditions

More information

Fairness in Routing and Load Balancing

Fairness in Routing and Load Balancing Fairness in Routing and Load Balancing Jon Kleinberg Yuval Rabani Éva Tardos Abstract We consider the issue of network routing subject to explicit fairness conditions. The optimization of fairness criteria

More information

Integer Factorization using the Quadratic Sieve

Integer Factorization using the Quadratic Sieve Integer Factorization using the Quadratic Sieve Chad Seibert* Division of Science and Mathematics University of Minnesota, Morris Morris, MN 56567 seib0060@morris.umn.edu March 16, 2011 Abstract We give

More information

THE SCHEDULING OF MAINTENANCE SERVICE

THE SCHEDULING OF MAINTENANCE SERVICE THE SCHEDULING OF MAINTENANCE SERVICE Shoshana Anily Celia A. Glass Refael Hassin Abstract We study a discrete problem of scheduling activities of several types under the constraint that at most a single

More information

Adaptive Memory Programming for the Vehicle Routing Problem with Multiple Trips

Adaptive Memory Programming for the Vehicle Routing Problem with Multiple Trips Adaptive Memory Programming for the Vehicle Routing Problem with Multiple Trips Alfredo Olivera, Omar Viera Instituto de Computación, Facultad de Ingeniería, Universidad de la República, Herrera y Reissig

More information

Solving polynomial least squares problems via semidefinite programming relaxations

Solving polynomial least squares problems via semidefinite programming relaxations Solving polynomial least squares problems via semidefinite programming relaxations Sunyoung Kim and Masakazu Kojima August 2007, revised in November, 2007 Abstract. A polynomial optimization problem whose

More information

Vector and Matrix Norms

Vector and Matrix Norms Chapter 1 Vector and Matrix Norms 11 Vector Spaces Let F be a field (such as the real numbers, R, or complex numbers, C) with elements called scalars A Vector Space, V, over the field F is a non-empty

More information

BIG DATA PROBLEMS AND LARGE-SCALE OPTIMIZATION: A DISTRIBUTED ALGORITHM FOR MATRIX FACTORIZATION

BIG DATA PROBLEMS AND LARGE-SCALE OPTIMIZATION: A DISTRIBUTED ALGORITHM FOR MATRIX FACTORIZATION BIG DATA PROBLEMS AND LARGE-SCALE OPTIMIZATION: A DISTRIBUTED ALGORITHM FOR MATRIX FACTORIZATION Ş. İlker Birbil Sabancı University Ali Taylan Cemgil 1, Hazal Koptagel 1, Figen Öztoprak 2, Umut Şimşekli

More information

A Note on Maximum Independent Sets in Rectangle Intersection Graphs

A Note on Maximum Independent Sets in Rectangle Intersection Graphs A Note on Maximum Independent Sets in Rectangle Intersection Graphs Timothy M. Chan School of Computer Science University of Waterloo Waterloo, Ontario N2L 3G1, Canada tmchan@uwaterloo.ca September 12,

More information

1.2 Solving a System of Linear Equations

1.2 Solving a System of Linear Equations 1.. SOLVING A SYSTEM OF LINEAR EQUATIONS 1. Solving a System of Linear Equations 1..1 Simple Systems - Basic De nitions As noticed above, the general form of a linear system of m equations in n variables

More information

A Linear Programming Based Method for Job Shop Scheduling

A Linear Programming Based Method for Job Shop Scheduling A Linear Programming Based Method for Job Shop Scheduling Kerem Bülbül Sabancı University, Manufacturing Systems and Industrial Engineering, Orhanlı-Tuzla, 34956 Istanbul, Turkey bulbul@sabanciuniv.edu

More information

Continued Fractions and the Euclidean Algorithm

Continued Fractions and the Euclidean Algorithm Continued Fractions and the Euclidean Algorithm Lecture notes prepared for MATH 326, Spring 997 Department of Mathematics and Statistics University at Albany William F Hammond Table of Contents Introduction

More information

Maximum Utility Product Pricing Models and Algorithms Based on Reservation Prices

Maximum Utility Product Pricing Models and Algorithms Based on Reservation Prices Maximum Utility Product Pricing Models and Algorithms Based on Reservation Prices R. Shioda L. Tunçel T. G. J. Myklebust April 15, 2007 Abstract We consider a revenue management model for pricing a product

More information

No: 10 04. Bilkent University. Monotonic Extension. Farhad Husseinov. Discussion Papers. Department of Economics

No: 10 04. Bilkent University. Monotonic Extension. Farhad Husseinov. Discussion Papers. Department of Economics No: 10 04 Bilkent University Monotonic Extension Farhad Husseinov Discussion Papers Department of Economics The Discussion Papers of the Department of Economics are intended to make the initial results

More information

1. Prove that the empty set is a subset of every set.

1. Prove that the empty set is a subset of every set. 1. Prove that the empty set is a subset of every set. Basic Topology Written by Men-Gen Tsai email: b89902089@ntu.edu.tw Proof: For any element x of the empty set, x is also an element of every set since

More information

MATHEMATICAL ENGINEERING TECHNICAL REPORTS. An Iterated Local Search Algorithm for the Vehicle Routing Problem with Convex Time Penalty Functions

MATHEMATICAL ENGINEERING TECHNICAL REPORTS. An Iterated Local Search Algorithm for the Vehicle Routing Problem with Convex Time Penalty Functions MATHEMATICAL ENGINEERING TECHNICAL REPORTS An Iterated Local Search Algorithm for the Vehicle Routing Problem with Convex Time Penalty Functions Toshihide Ibaraki, Shinji Imahori, Koji Nonobe, Kensuke

More information

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company

The Problem of Scheduling Technicians and Interventions in a Telecommunications Company The Problem of Scheduling Technicians and Interventions in a Telecommunications Company Sérgio Garcia Panzo Dongala November 2008 Abstract In 2007 the challenge organized by the French Society of Operational

More information

A Branch-Cut-and-Price Approach to the Bus Evacuation Problem with Integrated Collection Point and Shelter Decisions

A Branch-Cut-and-Price Approach to the Bus Evacuation Problem with Integrated Collection Point and Shelter Decisions A Branch-Cut-and-Price Approach to the Bus Evacuation Problem with Integrated Collection Point and Shelter Decisions Marc Goerigk, Bob Grün, and Philipp Heßler Fachbereich Mathematik, Technische Universität

More information

Clustering and scheduling maintenance tasks over time

Clustering and scheduling maintenance tasks over time Clustering and scheduling maintenance tasks over time Per Kreuger 2008-04-29 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating

More information

Linear Programming. April 12, 2005

Linear Programming. April 12, 2005 Linear Programming April 1, 005 Parts of this were adapted from Chapter 9 of i Introduction to Algorithms (Second Edition) /i by Cormen, Leiserson, Rivest and Stein. 1 What is linear programming? The first

More information