On a Railway Maintenance Scheduling Problem with Customer Costs and MultiDepots


 Regina Harris
 2 years ago
 Views:
Transcription
1 Als Manuskript gedruckt Technische Universität Dresden Herausgeber: Der Rektor On a Railway Maintenance Scheduling Problem with Customer Costs and MultiDepots 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. MATHNM Januar 2014
2 Contents 1 Introduction Background Modelling as Vehicle Routing Problem The Routine Maintenance Scheduling Problem 5 3 Mathematical Modelling of the VRPCC The Basic ThreeIndex Model Alternative Linearisations of the Time Constraints The bigm linearisation Time flow model Another Splitting of the Execution Time Alternative Route Formulations: TwoIndex 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 MultiDepots 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 multidepot vehicle routing problem with customer costs, different mixedinteger 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 tampingperiod 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 shorttermed a few weeks or months and the schedule defines explicitly the execution time of small tamping works. On the other hand, timedependent 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 multidepots. 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 timedependent 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 multidepot 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 VRPCC. 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 VRPCC 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 metaheuristics to solve VRPs are introduced, for example, the wellknown 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 multidepots and the timedependent customer costs, there are less dominance criteria for a sequential composition of routes and the evaluation is more timeconsuming in VRPCC than in common VRPs. Hence, we decide against set partition models. The paper is organised as follows: At first the VRPCC is described and different mixedinteger 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 nonnegative 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 VRPCC 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 VRPCC In this section, different MILP formulation of the VRPCC are presented. At first, the VRPCC is introduced by a nonlinear mixedinteger problem with a threeindex route model. Then, three linearisations of the time constraints are given. At last, models using twoindex binary variables to define the routes of the machines are presented. 3.1 The Basic ThreeIndex Model The basic threeindex model of the VRPCC is a nonlinear mixedinteger program. The decision variables are the binary threeindex 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 nonlinear 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 bigm linearisation A common way to linearise ifconditions is the bigm 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 bigm 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 bigm term leads to the trivial compliance if M sup y Y f(y) b. Using the bigm linearisation leads to our first linear model for VRPCC. It equates to (NLP) but the nonlinear condition (12) is replaced by its bigm 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 bigm 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 bigm 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 bigm 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 nonlinear 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 bigm 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: TwoIndex 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 twoindex 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 twoindex 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 threeindex 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 twoindex 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 twoindex variables MTZ constraints One possibility for a welldefined large route with twoindex 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 bigm 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 bigm 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 nonclustered 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 ycoordinates 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 nonzero 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 nonzero 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 nonzero) 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 nonzero 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 nonzero 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 VRPCC, 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 stepbystep 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 twoindex 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 VRPCC 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 VRPCC # 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 VRPCC 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 DFJconstraints 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 QuadCore, 8GB RAM and Windows 7 (64bit). The 64bit 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 bigm formulation (LP1) the bigm 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 bigm 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 threeindex 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 bigm 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 twoindex 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 twoindex route formulations (LP4) (LP7). The twoindex 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 bigm time formulation. The results show that the performance of the twoindex 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 bigm formulation. The results are similar to the case of the time constraint as bigm 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 bigm 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 bigm time formulation. The results presented in Table 4 show the benefit from strengthen the addi 22
23 tional constraints of the twoindex 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 twoindex formulations are better than the threeindex 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 xcoordinate 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
BranchandPrice Approach to the Vehicle Routing Problem with Time Windows
TECHNISCHE UNIVERSITEIT EINDHOVEN BranchandPrice 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 informationPolitecnico di Torino. Porto Institutional Repository
Politecnico di Torino Porto Institutional Repository [Proceeding] Job order assignment at optimal costs in railway maintenance Original Citation: Heinicke F., Simroth A., Tadei R., Baldi M.M. (2013). Job
More informationmax cx s.t. Ax c where the matrix A, cost vector c and right hand side b are given and x is a vector of variables. For this example we have x
Linear Programming Linear programming refers to problems stated as maximization or minimization of a linear function subject to constraints that are linear equalities and inequalities. Although the study
More information5 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 informationInteger Linear Programming Formulation of the. Generalized Vehicle Routing Problem
Integer Linear Programming Formulation of the Generalized Vehicle Routing Problem Imdat Kara, Tolga Bektas Baskent University, Dept. of Industrial Engineering, Baglica Kampusu, Eskisehir Yolu 20. km.,
More informationDiscrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131
Discrete (and Continuous) Optimization Solutions of Exercises 1 WI4 131 Kees Roos Technische Universiteit Delft Faculteit Informatietechnologie en Systemen Afdeling Informatie, Systemen en Algoritmiek
More informationINTEGER 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 informationResearch 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 informationTwo 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 informationDynamic 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 informationMinimizing the Number of Machines in a UnitTime Scheduling Problem
Minimizing the Number of Machines in a UnitTime Scheduling Problem Svetlana A. Kravchenko 1 United Institute of Informatics Problems, Surganova St. 6, 220012 Minsk, Belarus kravch@newman.basnet.by Frank
More informationA 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 informationA clusterbased optimization approach for the multidepot heterogeneous fleet vehicle routing problem with time windows
European Journal of Operational Research 176 (2007) 1478 1507 Discrete Optimization A clusterbased optimization approach for the multidepot heterogeneous fleet vehicle routing problem with time windows
More informationModeling and Solution Methods for the EnergyEfficient Train Timetables Problem
Modeling and Solution Methods for the EnergyEfficient Train Timetables Problem Team: Sodor Diesels Jørgen Thorlund Haahr Martin Philip Kidd July 22, 2015 Abstract Timely recuperation of energy through
More information2.3 Scheduling jobs on identical parallel machines
2.3 Scheduling jobs on identical parallel machines There are jobs to be processed, and there are identical machines (running in parallel) to which each job may be assigned Each job = 1,,, must be processed
More informationModeling 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 informationChapter 13: Binary and MixedInteger Programming
Chapter 3: Binary and MixedInteger 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 informationSOLVE THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS VIA A GENETIC ALGORITHM. Yaw Chang and Lin Chen
DISCRETE AND CONTINUOUS Website: www.aimsciences.org DYNAMICAL SYSTEMS SUPPLEMENT 2007 pp. 240 249 SOLVE THE VEHICLE ROUTING PROBLEM WITH TIME WINDOWS VIA A GENETIC ALGORITHM Yaw Chang and Lin Chen Mathematics
More informationChap 4 The Simplex Method
The Essence of the Simplex Method Recall the Wyndor problem Max Z = 3x 1 + 5x 2 S.T. x 1 4 2x 2 12 3x 1 + 2x 2 18 x 1, x 2 0 Chap 4 The Simplex Method 8 corner point solutions. 5 out of them are CPF solutions.
More informationScheduling and (Integer) Linear Programming
Scheduling and (Integer) Linear Programming Christian Artigues LAAS  CNRS & Université de Toulouse, France artigues@laas.fr Master Class CPAIOR 2012  Nantes Christian Artigues Scheduling and (Integer)
More informationThe TSP is a special case of VRP, which means VRP is NPhard.
49 6. ROUTING PROBLEMS 6.1. VEHICLE ROUTING PROBLEMS Vehicle Routing Problem, VRP: Customers i=1,...,n with demands of a product must be served using a fleet of vehicles for the deliveries. The vehicles,
More information! Solve problem to optimality. ! Solve problem in polytime. ! Solve arbitrary instances of the problem. !approximation algorithm.
Approximation Algorithms Chapter Approximation Algorithms Q Suppose I need to solve an NPhard problem What should I do? A Theory says you're unlikely to find a polytime algorithm Must sacrifice one of
More informationApplied 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 informationProximal mapping via network optimization
L. Vandenberghe EE236C (Spring 234) Proximal mapping via network optimization minimum cut and maximum flow problems parametric minimum cut problem application to proximal mapping Introduction this lecture:
More informationRecovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branchandbound approach
MASTER S THESIS Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branchandbound approach PAULINE ALDENVIK MIRJAM SCHIERSCHER Department of Mathematical
More informationBranch and Bound Methods
Branch and Bound Methods basic ideas and attributes unconstrained nonconvex optimization mixed convexboolean optimization Prof. S. Boyd, EE364b, Stanford University Methods for nonconvex optimization
More informationLINEAR PROGRAMMING THE SIMPLEX METHOD
LINEAR PROGRAMMING THE SIMPLE METHOD () Problems involving both slack and surplus variables A linear programming model has to be extended to comply with the requirements of the simplex procedure, that
More informationLINEAR PROGRAMMING P V Ram B. Sc., ACA, ACMA Hyderabad
LINEAR PROGRAMMING P V Ram B. Sc., ACA, ACMA 98481 85073 Hyderabad Page 1 of 19 Question: Explain LPP. Answer: Linear programming is a mathematical technique for determining the optimal allocation of resources
More informationExtended Period Vehicle Routing Problem Balancing the week of merchandisers in beverage industry
Extended Period Vehicle Routing Problem Balancing the week of merchandisers in beverage industry by Yvonne van de Meerendonk (s560360) A thesis submitted in partial fulfillment of the requirements for
More informationStrategic 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 informationChapter 15 Introduction to Linear Programming
Chapter 15 Introduction to Linear Programming An Introduction to Optimization Spring, 2014 WeiTa Chu 1 Brief History of Linear Programming The goal of linear programming is to determine the values of
More informationChapter 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 NPhard problem. What should I do? A. Theory says you're unlikely to find a polytime algorithm. Must sacrifice one
More informationA Branch and Bound Algorithm for Solving the Binary Bilevel Linear Programming Problem
A Branch and Bound Algorithm for Solving the Binary Bilevel Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,
More informationLinear Programming: Introduction
Linear Programming: Introduction Frédéric Giroire F. Giroire LP  Introduction 1/28 Course Schedule Session 1: Introduction to optimization. Modelling and Solving simple problems. Modelling combinatorial
More informationScheduling Home Hospice Care with Logicbased Benders Decomposition
Scheduling Home Hospice Care with Logicbased Benders Decomposition Aliza Heching Compassionate Care Hospice John Hooker Carnegie Mellon University CPAIOR 2016 Banff, Canada Home hospice care The Problem
More informationThe Time Window Assignment Vehicle Routing Problem
The Time Window Assignment Vehicle Routing Problem Remy Spliet, Adriana F. Gabor Econometric Institute Erasumus University Rotterdam P.O. Box 1738, 3000 DR Rotterdam, The Netherlands EI2012 07 April 20,
More informationQoS optimization for an. ondemand transportation system via a fractional linear objective function
QoS optimization for an Load charge ratio ondemand transportation system via a fractional linear objective function Thierry Garaix, University of Avignon (France) Column Generation 2008 QoS optimization
More informationDiscrete Optimization
Discrete Optimization [Chen, Batson, Dang: Applied integer Programming] Chapter 3 and 4.14.3 by Johan Högdahl and Victoria Svedberg Seminar 2, 20150331 Todays presentation Chapter 3 Transforms using
More informationApproximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NPCompleteness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
More information! Solve problem to optimality. ! Solve problem in polytime. ! Solve arbitrary instances of the problem. #approximation algorithm.
Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NPhard problem What should I do? A Theory says you're unlikely to find a polytime algorithm Must sacrifice one of three
More informationScheduling 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 informationAn Exact Algorithm for Steiner Tree Problem on Graphs
International Journal of Computers, Communications & Control Vol. I (2006), No. 1, pp. 4146 An Exact Algorithm for Steiner Tree Problem on Graphs Milan Stanojević, Mirko Vujošević Abstract: The paper
More informationCost Models for Vehicle Routing Problems. 8850 Stanford Boulevard, Suite 260 R. H. Smith School of Business
0769514359/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 informationDynamic Programming.S1 Sequencing Problems
Dynamic Programming.S1 Sequencing Problems Operations Research Models and Methods Paul A. Jensen and Jonathan F. Bard Many operational problems in manufacturing, service and distribution require the sequencing
More informationPractical 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 informationChapter 5: Solving General Linear Programs
Chapter 5: Solving General Linear Programs So far we have concentrated on linear programs that are in standard form, which have a maximization objective, all constraints of type, all of the right hand
More informationMath 407A: Linear Optimization
Math 407A: Linear Optimization Lecture 4: LP Standard Form 1 1 Author: James Burke, University of Washington LPs in Standard Form Minimization maximization Linear equations to linear inequalities Lower
More informationCharles 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 informationNew Lower Bounds for the Vehicle Routing Problem with Simultaneous Pickup and Delivery
New Lower Bounds for the Vehicle Routing Problem with Simultaneous Pickup and Delivery Anand Subramanian, Luiz Satoru Ochi Instituto de Computação Universidade Federal Fluminense {anand, satoru}@ic.uff.br
More informationGood luck, veel succes!
Final exam Advanced Linear Programming, May 7, 13.0016.00 Switch off your mobile phone, PDA and any other mobile device and put it far away. No books or other reading materials are allowed. This exam
More informationLecture 6: Approximation via LP Rounding
Lecture 6: Approximation via LP Rounding Let G = (V, E) be an (undirected) graph. A subset C V is called a vertex cover for G if for every edge (v i, v j ) E we have v i C or v j C (or both). In other
More informationMincost flow problems and network simplex algorithm
Mincost flow problems and network simplex algorithm The particular structure of some LP problems can be sometimes used for the design of solution techniques more efficient than the simplex algorithm.
More informationHet 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 informationMinimizing 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 information1 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 informationNew 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 informationOptimal 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 informationCHAPTER 17. Linear Programming: Simplex Method
CHAPTER 17 Linear Programming: Simplex Method CONTENTS 17.1 AN ALGEBRAIC OVERVIEW OF THE SIMPLEX METHOD Algebraic Properties of the Simplex Method Determining a Basic Solution Basic Feasible Solution 17.2
More informationScheduling 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 informationRouting in Line Planning for Public Transport
KonradZuseZentrum für Informationstechnik Berlin Takustraße 7 D14195 BerlinDahlem Germany MARC E. PFETSCH RALF BORNDÖRFER Routing in Line Planning for Public Transport Supported by the DFG Research
More informationWeek 5 Integral Polyhedra
Week 5 Integral Polyhedra We have seen some examples 1 of linear programming formulation that are integral, meaning that every basic feasible solution is an integral vector. This week we develop a theory
More informationBatch 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 informationTSP 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 informationUsing the Simplex Method in Mixed Integer Linear Programming
Integer Using the Simplex Method in Mixed Integer UTFSM Nancy, 17 december 2015 Using the Simplex Method in Mixed Integer Outline Mathematical Programming Integer 1 Mathematical Programming Optimisation
More informationA 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 informationScheduling 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 informationLinear 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 informationR 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 32011, February 21, 2011 RUTCOR Rutgers
More informationLinear 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 informationAlgorithm 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 informationA Hybrid Monte Carlo Local Branching Algorithm for the Single Vehicle Routing Problem with Stochastic Demands
A Hybrid Monte Carlo Local Branching Algorithm for the Single Vehicle Routing Problem with Stochastic Demands Michel GENDREAU Interuniversity Research Centre on Enterprise Networks, Logistics and Transportation
More informationInteger programming solution methods  introduction
Integer programming solution methods  introduction J E Beasley Capital budgeting There are four possible projects, which each run for 3 years and have the following characteristics. Capital requirements
More informationRandomization 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 informationSolving Mixed Integer Linear Programs Using Branch and Cut Algorithm
1 Solving Mixed Integer Linear Programs Using Branch and Cut Algorithm by Shon Albert A Project Submitted to the Graduate Faculty of North Carolina State University in Partial Fulfillment of the Requirements
More informationIBM Research Report. A Pricing Problem under Monge Property
RC23823 (W0512010) 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 informationProject and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi
Project and Production Management Prof. Arun Kanda Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture  15 Limited Resource Allocation Today we are going to be talking about
More informationResource Allocation and Scheduling
Lesson 3: Resource Allocation and Scheduling DEIS, University of Bologna Outline Main Objective: joint resource allocation and scheduling problems In particular, an overview of: Part 1: Introduction and
More informationComparison of Optimization Techniques in Large Scale Transportation Problems
Journal of Undergraduate Research at Minnesota State University, Mankato Volume 4 Article 10 2004 Comparison of Optimization Techniques in Large Scale Transportation Problems Tapojit Kumar Minnesota State
More informationLoad Balancing of Telecommunication Networks based on Multiple Spanning Trees
Load Balancing of Telecommunication Networks based on Multiple Spanning Trees Dorabella Santos Amaro de Sousa Filipe Alvelos Instituto de Telecomunicações 3810193 Aveiro, Portugal dorabella@av.it.pt Instituto
More informationApproximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques. My T. Thai
Approximation Algorithms: LP Relaxation, Rounding, and Randomized Rounding Techniques My T. Thai 1 Overview An overview of LP relaxation and rounding method is as follows: 1. Formulate an optimization
More informationClustering and scheduling maintenance tasks over time
Clustering and scheduling maintenance tasks over time Per Kreuger 20080429 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating
More information24. 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 NPcomplete. Then one can conclude according to the present state of science that no
More informationSolving 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 information4.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 informationTimeConstrained Project Scheduling
TimeConstrained Project Scheduling T.A. Guldemond ORTEC bv, PO Box 490, 2800 AL Gouda, The Netherlands J.L. Hurink, J.J. Paulus, and J.M.J. Schutten University of Twente, PO Box 217, 7500 AE Enschede,
More informationLecture 3: Linear Programming Relaxations and Rounding
Lecture 3: Linear Programming Relaxations and Rounding 1 Approximation Algorithms and Linear Relaxations For the time being, suppose we have a minimization problem. Many times, the problem at hand can
More informationScheduling Single Machine Scheduling. Tim Nieberg
Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for nonpreemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe
More informationIntegrating 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 informationRobust Geometric Programming is conp hard
Robust Geometric Programming is conp hard André Chassein and Marc Goerigk Fachbereich Mathematik, Technische Universität Kaiserslautern, Germany Abstract Geometric Programming is a useful tool with a
More informationSensitivity 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 informationJUSTINTIME SCHEDULING WITH PERIODIC TIME SLOTS. Received December May 12, 2003; revised February 5, 2004
Scientiae Mathematicae Japonicae Online, Vol. 10, (2004), 431 437 431 JUSTINTIME SCHEDULING WITH PERIODIC TIME SLOTS Ondřej Čepeka and Shao Chin Sung b Received December May 12, 2003; revised February
More informationLinear 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 informationOptimising Patient Transportation in Hospitals
Optimising Patient Transportation in Hospitals Thomas Hanne 1 Fraunhofer Institute for Industrial Mathematics (ITWM), FraunhoferPlatz 1, 67663 Kaiserslautern, Germany, hanne@itwm.fhg.de 1 Introduction
More informationOnline vehicle routing and scheduling with continuous vehicle tracking
Online vehicle routing and scheduling with continuous vehicle tracking Jean Respen, Nicolas Zufferey, JeanYves Potvin To cite this version: Jean Respen, Nicolas Zufferey, JeanYves Potvin. Online vehicle
More informationFairness 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 informationThe Vehicle Routing Problem with Discrete Split Delivery and Time Windows. Ilaria Vacca Matteo Salani
The Vehicle Routing Problem with Discrete Split Delivery and Time Windows Ilaria Vacca Matteo Salani STRC 2009 September 2009 STRC 2009 The Vehicle Routing Problem with Discrete Split Delivery and Time
More informationIn this paper we present a branchandcut algorithm for
SOLVING A TRUCK DISPATCHING SCHEDULING PROBLEM USING BRANCHANDCUT ROBERT E. BIXBY Rice University, Houston, Texas EVA K. LEE Georgia Institute of Technology, Atlanta, Georgia (Received September 1994;
More informationOffline 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 informationSecurityAware Beacon Based Network Monitoring
SecurityAware Beacon Based Network Monitoring Masahiro Sasaki, Liang Zhao, Hiroshi Nagamochi Graduate School of Informatics, Kyoto University, Kyoto, Japan Email: {sasaki, liang, nag}@amp.i.kyotou.ac.jp
More informationChapter 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