A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem...

73
A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s thesis in Engineering Mathematics and Computational Science AMIR MUSTEDANAGIC Department of Mathematical Sciences CHALMERS UNIVERSITY OF TECHNOLOGY AND UNIVERSITY OF GOTHENBURG Gothenburg, Sweden 2016

Transcript of A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem...

Page 1: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

A Generalized Vehicle RoutingProblem with Spatial and TemporalSynchronizationMathematical Modelling and Solution

Master’s thesis in Engineering Mathematics and Computational Science

AMIR MUSTEDANAGIC

Department of Mathematical SciencesCHALMERS UNIVERSITY OF TECHNOLOGY AND UNIVERSITY OF GOTHENBURGGothenburg, Sweden 2016

Page 2: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s
Page 3: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

Abstract

This thesis considers the military aircraft mission planning problem where a fleet ofaircraft should visit a number of ground targets. At the visit of each of the targets, twoaircraft must be synchronized in both time and space. Further, there may be precedenceconstraints between targets and capacity constraints on the number of targets an aircraftcan visit. The planning problem is modeled as a mixed integer linear program, in whichthe objective to be maximized is a weighted sum of a gain for each target visit anda time-penalty for being in the air. The problem is classified as a combined price-collecting vehicle routing and scheduling problem with synchronization and precedenceconstraints. Three new heuristic approaches are presented: a constructive heuristicthat is based on the weighted matching problem in general graphs, a global-local searchheuristic formulated as a mixed integer linear program and a column generation heuristic.Numerical results are presented for instances with up to eight targets. Promising resultsare obtained by the global-local search heuristic and the column generation heuristic.

Page 4: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s
Page 5: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

Acknowledgements

I would like to thank my supervisor, Nils-Hassan Quttineh for valuable ideas and scripts.I would also like to thank Ann-Brith Stromberg for insightful comments about the writ-ing of the report. Last but not least I would like to thank Jan-Erik Eriksson for providingme with highly appreciated data.

Page 6: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s
Page 7: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

Contents

1 Introduction 11.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Aim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Problem description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3.1 The target scene . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.2 Tactial mission planning . . . . . . . . . . . . . . . . . . . . . . . . 4

1.4 Limitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.5 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

2 Theory 92.1 Linear optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Dantzig-Wolfe decomposition . . . . . . . . . . . . . . . . . . . . . . . . . 102.3 IP and MIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.4 Related problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.4.1 Vehicle routing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.4.2 Weighted Matching Problem . . . . . . . . . . . . . . . . . . . . . 15

3 Literature Review 17

4 Model 194.1 Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.2 The optimization model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4.2.1 Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.2.2 Model analysis and implementation. . . . . . . . . . . . . . . . . . 24

5 Heuristic approaches 265.1 Constructive Heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

5.1.1 The Weighted Matching Problem . . . . . . . . . . . . . . . . . . 295.1.2 Generalized mTSP . . . . . . . . . . . . . . . . . . . . . . . . . . 305.1.3 Project network . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

i

Page 8: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CONTENTS

5.2 MIP-based Heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325.2.1 Global problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325.2.2 Local problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

5.3 Column generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.3.1 RMP and MRMP . . . . . . . . . . . . . . . . . . . . . . . . . . . 355.3.2 Subproblem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375.3.3 Binary restricted master problem . . . . . . . . . . . . . . . . . . . 39

6 Tests and results 426.1 Implementation and test settings . . . . . . . . . . . . . . . . . . . . . . . 426.2 Problem instances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436.3 Results from the tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

7 Discussion 50

8 Conclusion 61

9 Future Work 62

Bibliography 65

ii

Page 9: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1Introduction

1.1 Background

In general, a military mission may involve various tasks, such as surveillance, backupsupport, rescue assistance, or an attack. Today, military mission planning is a task thatis performed manually. It constitutes a crucial part of a military mission and requiresvarious expert opinions and collaborations. There are many circumstances which a plan-ner must take into account when planning a mission, e.g, purpose of the mission, theaircraft equipment and strategic rules. In addition, the planner must specify a completeroute and schedule for each aircraft. These routes and schedules might involve collabo-ration between different aircraft, such as spatial and temporal synchronization. Due toits complexity, the military mission planning is a time consuming task and the resultingplan often become far from optimal. It is therefore of interest to investigate the optionof a fully automated or semi-automated route planning system which is based on math-ematical modeling and corresponding algorithms.

In some situations, automated route planning is the only option for route planning. Forinstance, suppose that a mission is to be carried out by a set of unmanned aerial vehicles(UAVs), and suddenly one of the aircraft is not able to execute its part of the mission.If the mission requires collaboration, such a failure will affect the schedule for all otheraircraft and the whole mission must then be re-planned. The need of a fully automatedroute planning system is crucial in such situations. The UAV cannot rely on manualplanning since this requires time and would, literally, leave them hanging in the air.

The work presented in this thesis originates from, and has been performed in collabora-tion with, Saab AB. The model developed in this thesis is presented in [1, Chapter 3],and the solution methods developed in [1, Chapter 3] are here extended with new andalternative heuristic approaches.

1

Page 10: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.2. AIM CHAPTER 1. INTRODUCTION

The automated route planning system is modeled as a mixed integer optimization prob-lem and can be summarized as follows: assume that a fleet of aircraft is to visit a numberof targets such that each target is visited once by each of the two aircraft. These twoaircraft must be synchronized in both time and space. Each target is associated withmultiple options for the exact geographical position of the visit. Also, specific constraintsregarding aircraft equipment and capacity should be considered, see section 1.3.

1.2 Aim

The aim of this project is to specify a general optimization model that should be ableto plan various military mission tasks. In the case when the problem might involveparameters that lack a physical interpretation, it might be inconvenient to search foran ”optimal” schedule. Such parameter can i.e. be a penalty for visiting a node. Then,the aim is to find a set of near-optimal schedules, as a support for the manual planning.In other cases, when the parameters have clear physical interpretation, such as time ordistance, the planning system can be fully automated.

The purpose of the optimization model is to produce schedules for each aircraft, butnot determine the exact flight trajectory. The industrial partner wishes to investigatewhether there is an opportunity to use the output of this model, e.g. GPS coordinatesand their corresponding departure and arrival times, to simulate the exact flight trajec-tory for each aircraft. This puts restrictions on the computation time needed to solvethe optimization model, motivating the use of heuristics instead of exact methods. Interms of modeling, this implies that some constraints in the optimization model are ex-cluded. An example is constituted by restrictions regarding the flight altitude, since thisinformation can preferably be taken into account when simulating the flight trajectory.For a further discussion see Section 1.4.

2

Page 11: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.3. PROBLEM DESCRIPTION. CHAPTER 1. INTRODUCTION

1.3 Problem description.

1.3.1 The target scene

The problem description below is similar to the one found in [1, Chapter 3]. The geo-graphic area of interest, in which all targets are located, is referred to as the target scene.It also includes the base position(s) at which the fleet of aircraft is originally positioned.This can be either at a ground station or on a hangar ships located at off-shore. Allthe aircraft should enter the scene through a predefined entry line and visit at least onetarget each before they exit from the scene through a predefined exit line.

The targets at the scene can be protected by so called Surface to air missiles (SAMs),having a scope which is assumed to be circular with a known radius. Anything travelinginside such a circular region may be hit by the SAMs with a probability that increaseswith the time spent inside the circles. A model that estimates these probabilities isdeveloped by the industrial partner.

Nearby each target, there can be located areas that the aircraft are not allowed to visit.This is natural in the case of an attack, since there can be a protected building near thetarget. In such a case the aircraft are not allowed to attack the target from an anglesuch that the protected buildings lie behind the target. An example of a target scenewith three targets is illustrated in Figure 1.1.

Figure 1.1: A target scene with three targets {1,2,3}, nearby SAMs (×) and protectedbuildings (+).

3

Page 12: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.3. PROBLEM DESCRIPTION. CHAPTER 1. INTRODUCTION

1.3.2 Tactial mission planning

As mentioned in Section 1.1, the planning of a military mission is a complex task andhence only the most important features are included in an optimization model. To beable to include spatial and temporal synchronization constraints, each target is dividedinto a set of nodes that are located inside specific sectors. We have chosen to divideeach target into six sectors, each containing two types of nodes, so called support andattack nodes. Each sector consists of two support and an optional number (here chosento be three) attack nodes. The spatial distribution of the sectors and their correspondingattack nodes are illustrated in the left part of Figure 1.2.

When a target is visited, this must be done by two aircraft and within the same sector,of which one must visit exactly one of the attack nodes. The other (supporting) aircraftmust visit the two support nodes, in either clockwise or counterclockwise order in rela-tion to the target. An illustration of this is shown in the right part of Figure 1.2.

Figure 1.2: (left) The spatial distribution of the sectors and their corresponding attacknodes. (right) Illustration of the possible supporting paths for aircraft.

4

Page 13: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.3. PROBLEM DESCRIPTION. CHAPTER 1. INTRODUCTION

The node representation of the targets makes it convenient to represent the target sceneby a network. Except for the attack and support nodes in the targets, the network alsoincludes an origin and a destination node corresponding to the entry and exit line, re-spectively: see Figure 1.1. All the aircraft must start in the origin and each target mustbe visited exactly once by two aircraft, before they all fly to the destination node. Inaddition to the spatial synchronization between an attacking and a supporting aircraftin a sector, the planning system requires a temporal synchronization that ensures thatthe attack node is visited simultaneously as the first support node.

The problem formulation also allows for temporal precedence requirements between tar-gets, meaning that there is an option on which order the visits should take place. If thetarget scene includes three targets, say 1, 2 and 3, it can e.g. demanded that target 1is visited before target 2, which in turn must be visited before target 3. Observe thatthese precedence requirements reduce the number of arcs in the network representing thetarget scene. E.g. target 2 should be visited after target 1, arcs in the network directedfrom target 2 to target 1 will be excluded from the network.

Each aircraft has a capacity in terms of the number of attack nodes it is allowed to visit.This number depends on the mission and the type of aircraft that is used. The objectiveof the optimization model is to find a route and schedule for each of the aircraft, suchthat a weighted sum of a gain for traversing an arc and a (negative) time-penalty forbeing in the air is maximized. The gain parameter measures how favorable it is to travelfrom a certain node to another. For instance, if there are SAMs near the destinationnode, the gain will be lower for the aircraft visiting that node. An example of a networkrepresentation of the target scene together with a feasible solution is shown in Figure 1.3.

5

Page 14: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.3. PROBLEM DESCRIPTION. CHAPTER 1. INTRODUCTION

Figure 1.3: Illustration of the target scene as a network. The numbers represent the targetposition in two dimensions. The green squares mark the positions of protected buildings. Thehollow red circles mark the range of the SAMs. The black dots represent attack nodes thatthe aircraft are allowed to visit while the red dots represent nodes that may not be visiteddue to the protected building locations. The plus marks represent the support nodes. Thetargets are visited in the order specified by the target sequence. The dashed lines representthe path of the aircraft

6

Page 15: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.4. LIMITATION CHAPTER 1. INTRODUCTION

1.4 Limitation

In the heuristic presented in Section 5.1.1 it is assumed that there is at least one moreaircraft than what is required for the problem to become feasible. Assuming that eachaircraft is allowed to visit at most Γ targets, this means that the minimum number ofaircraft needed to execute a mission consisting of |M| targets, is equal to d |M|Γ e + 1,

instead of the d |M|Γ e required in the problem description 1.3.1 For example if Γ = 2 andthere are eight targets, the heuristic requires five aircraft instead of four.

Each aircraft is assumed to travel with constant velocity. It is possible to incorporatemultiple discrete velocities into the model by adding nodes to the targets, or equivalentlya new set of variables. Thus an efficient algorithm for the problem considered in thisthesis would probably still be efficient for the case with multiple velocities. Another rea-son for the exclusion is that it is doubtful if multiple velocities would imply a significantimprovement. The doubt is based on the following argument. It is always possible tochoose the constant velocity to the maximum velocity of the aircraft considered. Thiswould mean that if a better solution exists to the problem including multiple velocities;it is obtained by choosing a lower velocity for some distances. Since the objective par-tially consists of minimizing the total traveling time, it is uncertain to which extend themultiple velocities can improve the optimal value in relation to how much extra compu-tation time the model would require. An alternate is to introduce continuous velocityvariables, but then the model can become a nonlinear mixed integer program.

In this thesis, all aircraft are assumed to fly at the same altitude, which they in realityare not allowed to do. Figure 1.2 illustrates a two-dimensional projection of the feasi-ble flight space above the ground which includes multiple options on altitude. In thesame fashion as multiple velocities, the inclusion of several altitudes in the model wouldcorrespond to the number of variables being multiplied by the corresponding number of(discrete) altitudes (thus corresponding to a new set of nodes in each target). Again,an efficient algorithm for the problem considered would probably still be efficient if newnodes are added. In contrast to multiple velocities, solving the model for a single altitudewill in reality produce solutions that are infeasible, meaning that the multiple choice onaltitude must be added somewhere in the planning system.

Although not being a limitation, it is worth mentioning that the heuristics suggested inthis thesis are meant to solve problem instances for military mission planning (MMP). InMMP, the number of targets are typically low (less than ten), and each target consist ofat least 20 nodes. This means that the instance with e.g, 100 targets with two nodes ineach target the computation time may be very long, especially for the heuristic presentedin Section 5.2.

1d·e denotes the ceiling function. For example d3.013e = 4.

7

Page 16: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

1.5. OUTLINE CHAPTER 1. INTRODUCTION

1.5 Outline

The thesis is organized as follows; in the next Chapter, some of the theory necessaryfor this thesis is presented. In Chapter 3, a literature review is presented with relevantexisting research. The optimization model is presented in Chapter 4 together with noteson implementation and possible extension. Three heuristic approaches are presentedin Chapter 5 and the corresponding results are shown in Chapter 6. The results arediscussed in Chapter 7. The thesis closes with conclusions in Chapter 8 and suggestionon future research in Chapter 9.

8

Page 17: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2Theory

In this section we present some of the theory that forms the basis for the models andmethods developed in this thesis. No proofs are given since they are referred to in theliterature.

2.1 Linear optimization

Linear optimization or linear programming is a technique for the optimization of a linearobjective function, subject to linear equality and inequality constraints. Thus linearprograms are problems that can be expressed, in canonical form as,

maximizex

cTx, (2.1a)

subject to Ax ≤ b, (2.1b)

x ≥ 0, (2.1c)

where A is a n×m coefficient matrix, x is a vector of variables in Rm and b is a vector

Figure 2.1: A polyhedron P defined by linear inequality constraints in two dimensions.The extreme points are marked by the blue dots.

of coefficients in Rm. The feasible region defined by linear constraints is a polyhedron.

9

Page 18: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.2. DANTZIG-WOLFE DECOMPOSITION CHAPTER 2. THEORY

An example of a polyhedron is shown in Figure 2.1. The extreme points of a polyhedronP are defined as those points xk ∈ P for which it holds that for any points x1, x2 ∈ P⊂ R, and any λ ∈ (0,1),

xk = λx1 + (1− λ)x2 ⇔ x1 = x2 = xk. (2.2)

Less formally, the extreme points are the ”corners” of the polyhedron (see Figure 2.1).

An important property of a polyhedron is that it is a convex set. Assume that thepolyhedron is bounded and has p distinct extreme points x1, . . . ,xp. Then, the convexityimplies that any point x ∈ P can be expressed as,

x =

p∑l=1

λlxl, where

p∑l=1

λl = 1 and λl ≥ 0 l = 1, . . . , p. (2.3)

This property will be used in the Dantzig-Wolfte decomposition described in Section2.2. Also note that when the polyhedron is bounded an optimal solution to the program(2.1a)-(2.1c) always exists. This follows directly from the Weierstrass theorem ([2, The-orem 4.6]).

The following theorem is of high importance for the construction of modern algorithmsthat efficiently solves linear optimization problems. It is sometimes referred to as theFundamental theorem of linear programming.Theorem 3.1 Suppose that the feasible region P to a linear program is a non-emptybounded set, i.e., an optimal solution exists. Then the optimal solution x∗ to (2.1a)-(2.1c) is an extreme point to the set defined by the inequalities (2.1b)-(2.1c).

A proof of Theorem 3.1 is found in e.g. [3, Chapter 4]. The simplex algorithm, alsopresented in [3, Chapter 4], utilizes this theorem by including only extreme points aspotential optimal solutions. It searches through these extreme points by computing theso called reduced cost, which represents the improvement of going from one extremepoint to another. Formulas for the reduced cost will be introduced in the context ofDantzig-Wolfte decomposition below. By using the reduced cost to choose extremepoints that improves the objective the most, the algorithm will in practice only haveto search through a relatively small proportion of all the extreme points. A completedescription of the algorithm is given in [3, Chapter 4].

2.2 Dantzig-Wolfe decomposition

Many applications of mathematical optimization need to be represented by a large num-ber of variables and constraints. This is also the case for the model presented in thisthesis, since we have chosen to use an arc based representation. In such cases it might bepossible to decompose the problem into a number of simpler problems. This is exactlywhat is done in the so called Dantzig-Wolfte decomposition, which is a method for solving

10

Page 19: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.2. DANTZIG-WOLFE DECOMPOSITION CHAPTER 2. THEORY

linear programs and not integer or mixed integer programs. The theory and notationpresented below is essentially the same as that used in [3, Chapter 7].

Assume that a linear program is expressed as to,

maximizex

cTx, (2.4a)

subject to Ax ≤ b, (2.4b)

Dx ≤ e, (2.4c)

x ≥ 0, (2.4d)

where D is a k × m coefficient matrix and e is a vector of coefficients in Rm. Thedecomposition method becomes efficient when the matrix D have some kind of structurethat making the program,

maximizex

cTx, (2.5a)

subject to Dx ≤ e, (2.5b)

x ≥ 0, (2.5c)

easy to solve, while the constraints (2.4b) makes the model (2.4a)-(2.4d) complicated tosolve. Assume for simplicity that the set XD = {x ∈ Rm : Dx ≤ e, x ≥ 0} is bounded.Thus XD is a polyhedron with a finite number of extreme points, x1, . . . ,xp. By thesystem (2.3) it is then possible to represent any point x ∈ XD as x =

∑pl=1 λlx

l, where∑pl=1 λl = 1, λl ≥ 0, l = 1, . . . , p. Substituting this into the model (2.4a)–(2.4d) yields

the equivalent model to,

maximizeλl,l=1,...,p

z :=

p∑l=1

(cTxl)λl, (2.6a)

subject to

p∑l=1

(Axl)λl ≤ b, (2.6b)

p∑l=1

λl = 1, (2.6c)

λl ≥ 0 l = 1, . . . , p. (2.6d)

The main difference between the two models, (2.4a)–(2.4d) and (2.6a)-(2.6d), is thatthe latter uses λl as variables and xl are parameter. Note that this problem containsless constraints than the model (2.4a)-(2.4d), but since the number of extreme pointsof the polyhedron XD is usually very large the latter also contains more variables. It istherefore not computationally efficient to generate all the extreme points of XD in orderto solve (2.6a)-(2.6d). Instead one starts by computing a small subset of the extremepoints, x1, . . . ,xq, where q � p, and then defines a restricted version of the problem

11

Page 20: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.2. DANTZIG-WOLFE DECOMPOSITION CHAPTER 2. THEORY

known as the Restricted Master Problem (RMP) which is to,

maximizeλl,l=1,...,q

zq :=

q∑l=1

(cTxl)λl, (2.7a)

subject to

q∑l=1

(Axl)λl ≤ b, (2.7b)

q∑l=1

λl = 1, (2.7c)

λl ≥ 0 l = 1, . . . , q. (2.7d)

It will always hold that zq ≤ z∗, where z∗ denotes the optimal value of the model (2.6a)-(2.6d). The idea is now to expand the restricted set of extreme points in order to findthe optimal solution to (2.6a)-(2.6d). Let v be the dual variables corresponding to theconstraints (2.7b) and u the dual variable corresponding to (2.7c). The reduced cost cjof an extreme point xj of XD, where j ∈ {1, . . . ,p}, defined as

cj = (cT − vA)xj − u. (2.8)

The reduced cost is interpreted as the change in the value of the objective functionin the RMP if xj is included in the restricted set of extreme points, i.e., if the set{xl|l = 1, . . . , q} is extended to {xl|l = 1, . . . , q} ∪ xj (where j = q + 1). It is thereforeconvenient to find and add the extreme point that improves the objective value the most,that is, to solve the so called subproblem (SP),

maximizex

(cT − vA)x− u (2.9a)

subject to Dx ≤ e, (2.9b)

x ≥ 0. (2.9c)

The algorithm continues to add such extreme points as long as an improvement can bemade or stated differently, as long as the reduced cost of the best extreme point of XD

found is non-negative. A summary of the algorithm becomes:

Step 0 Start by finding a restricted set of extreme points, R = {x1, . . . ,xq}.

Step 1 Solve the RMP (2.7a)-(2.7d) in order to find corresponding values of the dualvariables v and u.

Step 2 Solve the subproblem (2.9a)-(2.9c). A solution is xq+1 and the correspondingoptimal objective value is cq+1.

Step 3 Terminate if cq+1 ≤ 0. The optimal solution to the program (2.4a)-(2.4d) isthen x∗ =

∑ql=1 λ

∗l x

l, where λ∗l are the optimal solution to the RMP found inStep 1.

Step 4 Include xq+1 in the set R and introduce a new variable λq+1 in the program(2.7a)-(2.7d) before returning to Step 1.

12

Page 21: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.3. IP AND MIP CHAPTER 2. THEORY

2.3 Integer and mixed integer programming

Integer optimization problems are linear programs with additional constraints that re-strict the variables to be integers. Similarly, mixed integer programs are programs inwhich some of the variables must take integer values while the value of others are allowedto be continuous. The integer requirement implies that the feasible region no longer is apolyhedron, but is now some integer points inside a polyhedron. The region is thereforenot a convex set and as a consequence the fundamental theorem of linear programmingdoes no longer hold [3, Chapter 13].

There are several methods for solving integer programs and some of these involve solvingthe corresponding linear program obtained by relaxing the integer requirement. Thusmethods for solving linear programs are important when solving integer or mixed integerproblems. A well-known algorithm for solving integer programs is the so called Land-Doig-Dakins algorithm which is a branch-and-bound algorithm [3, Chapter 15]. Nextfollows a brief description of the algorithm where the integer requirements are binary. Amore detailed and general version can be found in e.g. [3, Chapter 15].

Suppose that an integer program is given to,

maximizex

cTx, (2.10a)

subject to Ax ≤ b, (2.10b)

x ∈ {0,1}m, (2.10c)

where all parameters and variables have the same dimension as the program (2.1a)-(2.1c). Also suppose that a binary feasible solution to the problem is known, meaningthat a lower bound on its optimal value is available. Note that if the binary constraintsare relaxed an upper bound for the program is given by solving the problem (2.1a)-(2.1c).

The algorithm recursively fixes the value of an element xj in x, such that two branchesare created in a search tree, one in which the variable take on the value xj = 0 andanother in which xj = 1. In each of the branches the algorithm solves the LP-relaxationof the remaining binary program (2.10a)-(2.10c) in order to obtain an upper bound tothe optimal value to the program (2.10a)-(2.10c) (with the value of xj fixed). It thencompares this upper bound with the known lower bound for the program (2.10a)-(2.10c)(without any variable fixed). If the upper bound for the branch is lower than the lowerbound, it is impossible to improve the solution to the program (2.10a)-(2.10c) usingthe corresponding value of xj and there is no need to continue fix variables for thesebranches. Some branches will eventually provide a feasible solution, meaning that allxj , j = 1, . . . ,m have been fixed or that the optimal solution to the linear program is aninteger solution. Hence the lower bound is then updated.

The tree search will be relatively small if the lower and upper bounds are close to theoptimal objective value. The lower bound is updated in the tree search and hence con-

13

Page 22: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.4. RELATED PROBLEMS CHAPTER 2. THEORY

verges to the optimal value. If there is a large gap between the objectives of the binaryproblem and the corresponding continuously relaxed problem, the size of the tree willbecome relatively large since the upper bound will be lower than the lower bound lessfrequently. The upper bound in the Land-Doing-Dakins algorithm does not have to bethe optimal value of the program (2.1a)-(2.1c). An alternative is to use the bounds ob-tained from the Dantzig-Wolfe decomposition of the optimization problem (2.1a)-(2.1c),which is referred to as Branch and Price [3, Chapter 14].

A widely used heuristic approach for solving integer programs is to first relax the inte-ger requirements and solve the corresponding linear (continuous) master problem usingDantzig-Wolfe decomposition [4]. The master problem is then solved once again, but thistime with integer requirements on the variables corresponding to the integer problem.Note that not all optimization models are all suited for column generation as their sub-problem might be computationally hard to solve. An example of the heuristic approachdescribed above is presented in Section 5.3.

2.4 Related problems

We next describe two specific integer linear optimization problems which have beenutilized for the development made in this thesis work.

2.4.1 Vehicle routing

The vehicle routing problem was introduced by Dantzig and Ramser in [5], in whichthey study the so called truck dispatching problem. Since then, the problem has beenextended in many different ways and is sometimes referred to as a class of problemsrather than a single problem. The problem formulation below includes the most impor-tant features and it is similar to the one found in [6], which also presents a survey onexact and heuristic solution methods for the vehicle routing problem.

Let G = (V,A) denote a graph, where V = {1, . . . n} is a set of vertices representingcities, a depot located at vertex 1, and A is the set of arcs. Associate the elements cijof a matrix C to every arc (i,j) ∈ A. An element of the matrix is typically interpretedas travel time/distance or some sort of cost. Consider a fleet of m vehicles available atthe depot. It is often assumed that the vehicles carry a common and limited amount ofgoods. The classical vehicle routing problem (VRP) is to find the most cost-effective wayto visit all the cities such that each city is visited exactly once. All vehicles starts andends at the depot and each city have a demand of goods that needs to be fulfilled. Thereexist a number of common side constraints to the classical VRP. The most common areto bound the length of a route from above, setting time-widows in which the visits musttake place, and/or use precedence relations between cities saying e.g. that city i mustbe visited before city j. Several integer formulations exists, e.g., in [6], in which binarydecision variables are used to determine whether an arc should be used or not. Observe

14

Page 23: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.4. RELATED PROBLEMS CHAPTER 2. THEORY

that the traveling salesman problem is a special case of the vehicle route problem withm = 1, a vehicle capacity of the amount of goods equal to n and cities that have a unitdemand. Thus VRP is NP-hard [7]. An example of a VRP solution is shown in Figure2.2.

Figure 2.2: Illustration of a VRP solution. The black dots represent cities and the whitesquare represents the depot

2.4.2 Weighted Matching Problem

The weighted matching problem is the problem of finding a pairwise matching betweena number of objects. It is defined on a undirected graph G = (N,E) where each nodei ∈ N represents an object and each edge (i,j) ∈ E represents a possible matching. Letcij be the cost for matching object i ∈ N with object j ∈ N and define the decisionvariable xij that equals to one if object i ∈ N is matched with object j ∈ N and zerootherwise. The problem is formulated as to,

maximizexij ,(i,j)∈E

∑(i,j)∈E

cijxij , (2.11a)

subject to∑

j:(i,j)∈E

xij = 1, i ∈ N, (2.11b)

xij ∈ {0,1}, (i,j) ∈ E. (2.11c)

If it is not necessary to demand a perfect matching one can replace the equality con-straint in (2.11b) with an inequality constraint ≤. Figure 2.3 shows an example of amatching between 10 objects. Since the variables are binary the problem can be solvedwith a branch and bound algorithm. An alternative approach is to use the polynomialtime algorithm presented in [8].

15

Page 24: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

2.4. RELATED PROBLEMS CHAPTER 2. THEORY

Figure 2.3: Illustration of a solution to the weighted matching problem in a graph. Theblack dots represents objects. The bold lines represent the matched objects and the thinlines represent the remaining edges in the network.

16

Page 25: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

3Literature Review

Mathematical optimization methods for vehicle routing problems with temporal prece-dence and synchronization constraints has been widely used in applications such as homecare scheduling and aircraft scheduling. Also pure spatial synchronization has been stud-ied. A survey of methods for synchronized VRP can be found in [9]. The review bellowgives a short introduction to some of the most interesting application of the models andmethods developed in this thesis.

To the best of our knowledge, the only literature combining spatial and temporal syn-chronization of clusters can be found in [1], where a three-step constructive heuristicis presented. Their approach is to first relax both the spatial and the temporal syn-chronization and rewrite the remaining vehicle routing problem for the target nodes asa m-TSP, which has a wide range of solution methods. The heuristic continues withsolving another m-TSP. for the support nodes. To achieve a solution that is feasible, thefinal (third) step solves a project network that respects the synchronization and prece-dence constraints. This thesis provides alternative approaches to the heuristic.

The Home care scheduling problem is closely related to our problem. It is the problemof assigning schedules to the home care staff members such that all residents are visitedat their homes. Some of the residents need extra support, e.g, get out of bed or show-ering and must therefore be visited by two staff members simultaneously. The problemcan be formulated with and without time windows at which the visit must take place.Observe that an instance of our problem containing one attack and one support node ineach target and for which Γ = |M| is equivalent to a home care scheduling problem inwhich all residents need extra support and the time windows are relaxed. Therefore theproblem considered in this thesis is a generalization of home care scheduling problemwithout time windows.

17

Page 26: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 3. LITERATURE REVIEW

Both heuristic and exact algorithms exist for Home care scheduling problem. In [10],a MIP heuristic that repeatedly solves a restricted version of the problem is presented.By solving a large number of such problems, eventually a fairly good result is achieved.In [11] an exact branch and price algorithm is presented, but then without the prece-dence constraints. Their Master problem is a set partitioning problem for which boththe binary constraint on the decision variables and the synchronization constraints arerelaxed. Their subproblem then becomes an Elementary shortest path with time windows(ESPPTW). A more recent branch and price approach that incorporates the precedenceconstraints can be found in [12]. In terms of modeling, it is similar to [11], but differs inbranching rules.

Another related problem is the Manpower allocation problem with time windows andjob-teaming constraints. It is the problem of assigning m teams to a number of tasks,where both teams and tasks may be restricted by time windows outside which operationsare not possible. Tasks may also require cooperation between teams which gives rise totemporal synchronization. In [13] a constructive heuristic combined with simulated an-nealing is presented and in [14], a branch and price algorithm is developed for solvingthe problem.

Despite the similarity to above mentioned problems there is a crucial difference betweenthe models. In both the Manpower allocation problem with time windows and job-teaming constraints and the Home care scheduling problem, ground vehicles are usedand it is then natural to minimize the distance traveled. Here the vehicles are aircraftand it is then more convenient to minimize a weighted sum of distance traveled and thetime spend in the air, otherwise (due to synchronization) one risks large gap betweenarrival and departure of the nodes visited. Such gap will force the aircraft to circulatein the air, which is not wanted.

18

Page 27: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4Model

4.1 Notation

Given a fleet of aircraft, denoted by the set R, and a set M of targets that shouldbe visited. Each target m ∈ M is associated with a cluster of attack nodes NAt

m andtheir compatible support nodes N sup

m .An example of the spatial distribution of the nodesaround a target is shown in Figure 1.3. Further, each feasible attack space is dividedinto sectors and we let G denote the set of all sectors for all targets while Gm denotesthe set of sectors that belongs to target m ∈M, Consequently, G = ∪m∈MGm.

Let N denote the set of all nodes in the graph, including the origin, denoted o, and thedestination, denoted d, and let N ∗ := N \ {o,d}. Further, let A denote the set of allarcs in the network and let Ag denote the set of arcs (i,j) such that j ∈ N ∗ is an attackposition in sector g ∈ G. Similarly, let Ig denote the set of arcs (i,j) such that j ∈ N ∗ isan support position in sector g ∈ G. In our problem setting, there are no arcs betweenattacking and supporting nodes within the same target.

Each aircraft r ∈ R has a limited capacity, denoted by Γ, which for the applicationconsidered, has an integer value. Let S denote the precedence set, i.e., the set of orderedpairs (m,n) of targets such that m must be visited before n. The set S is empty when-ever there are no precedence constraints. In the case of precedence constraint, only arcsbetween targets that respect the precedence are included in the graph.

Let the parameter cijr denote the gain aircraft r ∈ R receives for using the arc (i,j) ∈ A1 and let Tijr be the time it takes for aircraft r ∈ R to go from a node i ∈ N to nodej ∈ N . The parameter Tmax represents the maximum amount of time that each aircraftis allowed to use for the mission; it is usually a very large number. The parameters λ,

1The gain for visiting a node in a target is received through the arcs

19

Page 28: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4.1. NOTATION CHAPTER 4. MODEL

µ and σ are weights in the objective function. The solution to the problem dependson these parameters. Unfortunately, due to the long computation time, it would beunpractical to solve the model for a larger set of parameters.

Introduce two types of variable, the binary routing variables xijr, yAtmr, y

Supmr and the

continuous synchronization variables tir, tAtm and tSup

m . The variable xijr equals one if an

aircraft r ∈ R traverse the arc from node i to node j. The variable yAtmr and ySup

mr equalsone if an aircraft r ∈ R visit an attack/support position in target m ∈ M; it equals tozero otherwise.

The variable tir are the time at which node i ∈ N is visited by aircraft r ∈ R. Its valueequals zero if the node is not visited by the aircraft. The time when the last aircraftexits the scene is denoted by tex. The variables tAt

m (tSupm ) denotes the time at which the

attack (support) node in target m ∈M is visited.

Bellow is a list of all sets, parameters, and variables described above.

Sets

R - the set of aircraft

M - the set of targets

NAtm - the set of attack nodes in target m ∈M

N Supm - the set of support nodes in target m ∈M

G - the set of sectors

Gm - the set of sectors in target m ∈M

N - the set of nodes

N ∗ - the set of nodes excluding origin o and destination d

A - the set of arcs between nodes

Ag - the set of arcs (i,j) such that j is an attack position in sector g ∈ G

Ig - the set of arcs (i,j) such that j is an support position in sector g ∈ G

S - the precedence set with the ordered pairs (m,n) of targets such that m mustbe visited before n

20

Page 29: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4.1. NOTATION CHAPTER 4. MODEL

Parameters

Γ - the capacety parameter

cijr - the gain received if aircraft r ∈ R traverse the arc (i,j) ∈ A

Tijr - the time it takes for the aircraft to go from i ∈ N to j ∈ N

Tmax - the maximum amount of time the aircraft are allowed to use for the mission

λ - weight in the objective function

µ - weight in the objective function

σ - weight in the objective function

Variables

xijr=1 - if aircraft r ∈ R traverses the arc from node i ∈ N to node j ∈ N ; =0otherwise

yAtmr=1 if aircraft r ∈ R visit an attack position in target m ∈M; =0 otherwise

ySupmr =1 if aircraft r ∈ R visit an support position in target m ∈M; =0 otherwise

tir - variable at which node i ∈ N is visited by aircraft r ∈ R

tAtm - variable at which attacking nodes in target m ∈M are visited

tSupm - variable at which supporting nodes in target m ∈M are visited

tex - variable at which the last aircraft exits the scene is denoted by tex

21

Page 30: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4.2. THE OPTIMIZATION MODEL CHAPTER 4. MODEL

4.2 The optimization model

The military mission planning problem described in Section 1.3 is here formulated as amixed integer program which maximizes an objective that is a weighted sum of a gaincijr and a (negative) time-penalty for being in the air Tijr and tex. If the weight λ > 0and µ = 0, the model minimizes the sum of travel times of all the aircraft. If insteadλ > 0 and µ > 0 the model minimizes the exit time at which the last aircraft exits the

22

Page 31: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4.2. THE OPTIMIZATION MODEL CHAPTER 4. MODEL

target scene. The model is formulated as to,

maximizexijr,y

Atmr

ySupmr ,tir,tex

σ∑r∈R

∑(i,j)∈A

[cijr − λTijr]xijr − µtex, (4.1a)

subject to∑

(o,j)∈A

xojr = 1, r ∈ R, (4.1b)

∑(i,d)∈A

xidr = 1, r ∈ R, (4.1c)

∑(i,k)∈A

xikr −∑

(k,j)∈A

xkjr = 0, k ∈ N ∗, r ∈ R, (4.1d)

∑g∈Gm

∑(i,j)∈Ag

xijr = yAtmr, m ∈M, r ∈ R, (4.1e)

∑g∈Gm

∑(i,j)∈Ig

xijr = ySupmr , m ∈M, r ∈ R, (4.1f)

∑r∈R

yAtmr = 1, m ∈M, (4.1g)∑

r∈RySupmr = 1, m ∈M, (4.1h)∑

r∈R

∑(i,j)∈Ag

xijr −∑r∈R

∑(i,j)∈Ig

xijr = 0, g ∈ G, (4.1i)

∑m∈M

∑g∈Gm

∑(i,j)∈Ag

xijr,≤ Γ, r ∈ R, (4.1j)

tir + Tijrxijr ≤ tjr + Tmax(1− xijr), (i,j) ∈ A, r ∈ R, (4.1k)

tir ≤ Tmax

∑(i,j)∈A

xijr, i ∈ N , r ∈ R, (4.1l)

0 ≤ tir ≤ tex i ∈ N , r ∈ R, (4.1m)∑r∈R

∑i∈NA

m

tir = tAtm , m ∈M, (4.1n)

∑r∈R

∑i∈N I

m

tir = tSupm , m ∈M, (4.1o)

tAtm = tSup

m , m ∈M, (4.1p)

tAtn ≥ tAt

m , (m,n) ∈ S, (4.1q)

xijr, yAtmr, y

Supmr ∈ {0,1}, (i,j) ∈ A, r ∈ R, m ∈M. (4.1r)

The constraints (4.1b)-(4.1d) ensure that each aircraft enters and leaves the target scenevia the origin and destination nodes, respectively, and that any aircraft that enters anode also must leave it. The constraints (4.1e)-(4.1h) ensure that each target is visitedonce by each of the executing and the supporting aircraft, The constraint (4.1i) ensures

23

Page 32: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4.2. THE OPTIMIZATION MODEL CHAPTER 4. MODEL

that the corresponding nodes that are visited belong to the same sector.

The constraints (4.1j) is the capacity constraints which ensures that aircraft visit at mostΓ attack nodes. The constraints (4.1k) propagate time, making sure that if aircraft rtraverses arc (i,j), node j is visited no earlier than the time of the visit to node i plus thetime required to traverse the arc. Note also that (4.1k) eliminates sub-tours, meaningthat the solution can not contain a cycle (of any length). The constraints (4.1l) makessure that the time is zero for nodes that are not visited.

The constraint (4.1m) defines the exit time tex by making sure that it is greater or equalto all other time variables. Constraint (4.1n)-(4.1q) ensures that the required temporalprecedence and synchronization constraints are fulfilled.

remark In the optimization model (4.1a)-(4.1r), an aircraft should visit only one of thesupport nodes in a sector and not travel between the two support nodes as required inthe description in Section 1.3. Instead, the data given to the model incorporate the visitto both nodes by adding the time required to travel between these two support nodes tothe value of all parameters Tijr.

4.2.1 Data

The data used to evalute the model presented in this thesis is provided by Saab AB. Allaircraft are assumed to have the same velocity and thus the time parameters Tijr areindependent of the subscript r ∈ R. These parameters correspond to the time it takesfor an aircraft to travel from node i ∈ N to j ∈ N , and include the time required for anairplane to change direction. The parameters cijr are also independent of the subscriptr ∈ R and incorporates the threat from the SAMs. Details on how these parametersare estimated are outside the scope of this thesis and can be found in [1, Chapter 3].In general it holds that if an aircraft attacks a target from a node such that there is aSAMs between the node and the target, there is a negative contribution to the objectivevalue. Note that both the gain cijr and the travel time tijr are derived by nonlinearrelationships and it is very unlikely that the triangle inequality will hold for any of theseparameters. Hence it is possible that the value of e.g., the travel times are such thatTijr + Tjkr < Tikr for any r ∈ R.

4.2.2 Model analysis and implementation.

The model (4.1) belongs to the class of Vehicle routing problems where the aircraftfleet is the vehicles and the target corresponds to cities. The model has the followingnon-standard characteristics.

1. The model is generalized in the sense that all aircraft must choose exactly onenode in a cluster of nodes.

2. The spatial synchronization constraint (4.1i) is not a part of the classical VRP.

24

Page 33: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

4.2. THE OPTIMIZATION MODEL CHAPTER 4. MODEL

3. The temporal synchronization and precedence constraints, which ensure that theaircraft visit nodes simultaneously and in a given order is not considered to be astandard VRP constraint.

4. The model contains continuous time variables and the a part of the objectivefunction is to minimize the time spend in the air. Even though this can be foundin classical VRP models the typical case is to minimize the distance traveled.

As mentioned in the literature review, each of these extensions can be found in existingresearch related to the vehicle routing problem. For instance [15] presents an branchand cut algorithm for a generalized (with respect to clusters) VRP, without spatial andtemporal synchronization. A combination of the extensions is however rarely seen in lit-erature and makes it hard to extend heuristics from other, more classical, vehicle routingproblems.

Empirical results show that when solving the optimization problem with CPLEX, theintroduction of the variable tex in the objective in (4.1a) and consequent addition ofthe constraints (4.1m) causes longer computation time then if the variable is dropped.This is perhaps intuitively clear since the problem then becomes a combination of bothvehicle routing and scheduling.

For practical implementation it is possible to tighten the model to achieve a better boundwhen solving its LP-relaxation. In [1, Chapter 3] this is done by adding additional sub-tour elimination constraints. The same approach is used in this thesis and formulas forthe constraints are of the type shown in (5.12). Note also that the vehicles are identi-cal, which implies that there exist multiple optimal solutions to the problem since it isalways possible to switch routes and schedules among the aircraft without changing theobjective value. This issue is solved by using same symmetry breaking constraints asthose presented in [1, Chapter 3].

Due to the minimization of the time at which the last aircraft exits the scene, it ispossible to find solutions in which other aircraft loiters, instead of heading towards thedestination as soon as their mission has been executed. In order to avoid this, thedestination times tdr for all aircraft r ∈ R are included in the objective with a smallpenalty η. The objective then becomes to maximize,

σ∑r∈R

∑(i,j)∈A

[cijr − λTijr]xijr − µtex −∑r∈R

ηtdr. (4.2)

25

Page 34: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5Heuristic approaches

In this Chapter we present three heuristic approaches: a constructive heuristic that isbased on the weighted matching problem in general graphs, a global-local search heuristicformulated as a mixed integer linear program, and a column generation heuristic. Inorder to shorten the computation time, all three heuristic approaches separate the routingpart of the problem from the scheduling part1. The constructive heuristic divides theaircraft fleet into two sets, of which the aircraft in one set will only visit attack nodeswhile those in the other will serve as support. At the last step of the heuristic, a linearprogram is solved in order to set schedules to the routes. The column generation use theDantzig-Wolfe decomposition to generate columns in order to solve the routing part ofthe problem. The scheduling part of the problem is then solved in a binary version of themaster problem. The main idea of the global-local heuristic is that it iteratively solvesthe model (4.1) with only one node in each set NAt

m . Neither the column generationnor the global-local heuristic requires that the aircraft have specified roles, i.e., attackor support.

5.1 Constructive Heuristic

The matching heuristic is a constructive heuristic that quickly finds a feasible route andschedule to the model (4.1). It is similar to the one found in [1, Chapter 3] except thatit also includes capacity restriction for the number of attack nodes that an aircraft canvisit. The capacity is assumed to be Γ = 2, which is relevant in the case of an attackfor the aircraft considered. This implies that the minimum number of aircraft |R| re-

quired in the model is |R| = d |M|Γ e, where |M| is the cardinality of the set of targets.

In our heuristic however, the minimum number of aircraft equals |R| = d |M|Γ e+ 1. Theheuristic also uses the fact that the data used to evaluate the model is independent of

1By scheduling part we mean all time variables and their corresponding constraints.

26

Page 35: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.1. CONSTRUCTIVE HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

the subscript r of the aircraft2.

The idea is to divide the aircraft fleet into two sets, of which the aircraft in one set willonly visit attack nodes while those in the other will serve as support. This is why theheuristic must have a minimum number of aircraft equal to d |M|Γ e+ 1. The heuristic canbe divided into the following steps, which are described in detail in Sections 5.1.1–5.1.3.

1. Remove the time variable tex from the objective (4.1a), relax the constraint (4.1m)and solve the vehicle routing problem for the attack positions using the weightedmatching problem described in Section 5.1.1. The first step will result in a feasibleroute for the attacking aircraft. An example of such a solution is shown in Figure5.1.

2. Add supporting aircraft to the solution obtained in step 1. Due to the spatialsynchronization (4.1i), this problem will be highly restricted in terms of numbersof nodes and arcs. The solution obtained in the second step that corresponds tothe solution presented in Figure 5.1 is shown in Figure 5.2

3. The previous steps provide a route for each aircraft, represented by x∗ijr. In orderto make up for the relaxation in step 1, a project network with fixed routingvariables, x∗ijr is solved and provides a feasible solution to the model (4.1). Ageneral description about project network is presented in [3, Chapter 8].

2This simplification is not done in previous sections since in the general problem (4.1), the costs arenot independent of r.

27

Page 36: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.1. CONSTRUCTIVE HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

Figure 5.1: Illustration of a solution from the first step of the heuristic. The black colorindicates that the aircraft only visit attack nodes.

Figure 5.2: Illustration of a solution from the second step of the heuristic. The blue colorindicates that the aircraft only visit support nodes.

28

Page 37: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.1. CONSTRUCTIVE HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

5.1.1 The Weighted Matching Problem

As mentioned above, the heuristic ignores the time variable tex in the matching problem.The reason is that the matching problem presented in Section 2.4.2 requires that all costsshould be ”put” on the edges. However if λ is nonzero in the objective (4.1a), the model(4.1) will still choose routes that minimize the sum of travel times of all the aircraft.The minimization of the travel times and the constraints (4.1k), makes it possible todecrease the destination times tir. The project network includes the constraint (4.1m)and thus the minimization of the travel times is expected to imply a fairly short exittime tex. The new objective function then becomes,∑

r∈R

∑(i,j)∈A

[cijr − λTijr]xijr. (5.1)

When Γ = 2 the heuristic starts by dividing the fleet of aircraft R into two sets. A setRAt of aircraft that should visit the attacking nodes, and another set RSup, which shouldvisit the supporting nodes. These sets are divided such that |RAt| = d |M ||Γ| e, which wewithout loss of generality, assume is an even number since it is always possible to add adummy target node that increasesM by one and may be visited directly from any othernode in the network.

In this way every vehicle in the attacking set of aircraft must start in the origin, o, andthen visit an attacking node in each of the two targets before it goes to the destination,d. Denote such a route (o,i,j,d) (hence (i,j) belongs to the set {(i,j) : i ∈ NAt

m , j ∈NAtn , m 6= n}). Note that given a pair of targets (m,n) with N nodes in each cluster,

it is possible to find the best (w.r.t. the objective (5.1)) route (o,i,j,d) between thesetwo targets by comparing all N2 routes. Let M be the number of targets the aircraftmust visit; then there are M(M − 1) possible pairs of targets. Thus, to find the bestroute (o,i,j,d) for any of the M(M − 1) pair one can compute the cost for each of theM(M − 1)N2 routes. This is an unpleasant complexity, but since the values of both Nand M are very small for the application considered, it results in a short computationtime.

Denote the cost for the best route (o,i,j,d) for each aircraft r ∈ R and for every pair(m,n), such that m 6= n, by Cmnr. Recall that the data used to evaluate the model isindependent of the subscript r which implies that the best route is independent of r. Inorder to simplify the notation Cmnr is denoted by Cmn. The cost of the best route isgiven by,

Cmn := maxxijr:(i,j)∈NAt

m ×NAtn , m 6=n

{[coir − λToir]− [cijr − λTijr]xijr − [cjdr − λTjdr]} ,

(5.2)where the right hand side uses the same notations as in the model (4.1).

The matching problem defined in Section 2.4.2 is defined on an undirected graph, mean-ing that Cmn = Cnm. This is in general not the case for the problem considered in this

29

Page 38: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.1. CONSTRUCTIVE HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

section. Therefore let cmn = max(m,n)∈B{Cmn,Cnm}, where B = {(m,n) : m ∈ M, n ∈M : n < m}. The matching problem in this heuristic is then equivalently formulated asto,

maximizexmn,(m,n)∈B

∑(m,n)∈B

cmnxmn, (5.3)

subject to∑

n:(m,n)∈B

xmn = 1, m ∈ NAtm , (5.4)

xmn ∈ {0,1}, (m,n) ∈ B, (5.5)

where xmn is a binary variable that equals 1 if target n is matched with target m, whichmeans that an aircraft should travel from o, visit target m and n before it goes to d. Itshould traverse the arc {(i,j) ∈ NAt

m ×NAtn : m 6= n} between target m and n that is a

solution to (5.2).

The matching problem can be efficiently solved by a commercial solver such as CPLEXor by the algorithm presented in [8].

5.1.2 Generalized mTSP

This step provides each attacking aircraft r ∈ RAt with a supporting aircraft from theset RSup. First, note that the spatial synchronization constraint (4.1i) restricts the sup-porting aircraft to visit nodes that lie within the same sector as the selected attacknodes from the previous step. Therefore, all nodes and corresponding arcs that cannotsatisfy the constraints (4.1i), are removed from the network. Also, observe that thereare no limitations on the number of support nodes an aircraft r ∈ RSup can visit. Thusthe remaining problem is to find routes to all |RSup| aircraft that together should visitexactly one of the two supporting nodes in each target m ∈ M . This problem is inknown as the generalized m- traveling salesman problem (GmTSP).

The GmTSP can be transformed into a standard TSP. Details about this transformationcan be found in [1, Chapter 3]. Thus the second step solves a standard TSP and transformthe solution back to a GmTSP. The traveling salesman problem is an NP-hard problem,but there exist successful heuristic approaches for solving the problem. In this thesis wehave chosen to use the Lin-Kernighan heuristic (LKH) with the same implementationas in [1, Chapter 3]. The LKH solver is a generalization of the well-known 2-opt and3-opt algorithms that work by: removing two or three edges in a existing TSP solution,reconnecting them in all other possible ways and then evaluating each reconnection inorder to find the best one. A detailed explanation of the implementation is given in [16].

5.1.3 Project network

The two steps described in subsections 5.1.1 and 5.1.2 solves the routing part of theproblem without considering any time variables that define the scheduling part of the

30

Page 39: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.1. CONSTRUCTIVE HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

problem, which is solved in the third step. Let x∗ijr denote the solution obtained from thesteps described in subsections 5.1.1 and 5.1.2. In order to find the best schedule corre-sponding to the routes defined by the solution x∗ijr, the heuristic solves the optimizationproblem formulated as to,

maximizetir,i∈N ,r∈R,tex

∑r∈R

∑(i,j)∈A

(cijr − λTijr)x∗ijr − µtex, (5.6a)

subject to tir + Tijrx∗ijr ≤ tjr + Tmax(1− x∗ijr), (i,j) ∈ A, r ∈ R, (5.6b)

tir ≤ Tmax

∑(i,j)∈A

x∗ijr, i ∈ N , r ∈ R, (5.6c)

0 ≤ tir ≤ tex, i ∈ N , r ∈ R, (5.6d)∑r∈R

∑i∈NAt

m

tir = tAtm , m ∈M, (5.6e)

∑r∈R

∑i∈NSup

m

tir = tSupm , m ∈M, (5.6f)

tAtm = tSup

m , m ∈M, (5.6g)

tAtn ≥ tAt

m , (m,n) ∈ S. (5.6h)

(5.6i)

All the variables in this model, i.e., tir, tex, and all the constraints are explained in Sec-tions 4.1 and 4.2 since they are a subset of the the variables and constraints presentedin model (4.1). By treating the routing and scheduling part of the model (4.1) as twoseparate problems, the routing problem becomes an integer program and the schedulingproblem becomes a pure linear (continuous) program. This is a computationally efficientway to obtain a constructive heuristic since both the project network and the weightedmatching problem can in practice be solved very fast for problem instances consideredin military mission planning. The solution quality will of course suffer from this separa-tion and other assumptions made. For instance, the first two steps of the heuristic usesa slightly different objective function that minimizes the total traveling time withoutconsidering any temporal synchronization nor precedence constraints. Instead, the thirdstep does this without any guarantees that the optimal solution to the model (4.1) canbe found since the routes defined by the values of the variables x∗ijr might be non-optimal.

Another disadvantage arises when dividing the aircraft into two sets since then is arisks too few supporting aircraft are included in the set RSup. For instance, if there are|M| = 8 targets and |R| = 5 aircraft, the support set RSup will only contain a singlesupporting aircraft. The temporal synchronization constraint (5.6g) together with thetime propagation (5.6b) will probably imply a large exit time tex obtained from theproject network given by the model (5.6).

31

Page 40: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.2. MIP-BASED HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

5.2 MIP-based Heuristic

Even small instances of the model (4.1), results in a large number of variables thatare subjected to complicated constraints. Thus, finding the optimal solution with e.g.,a method such as branch-and-bound would probably result in a relatively large treesearch. The mixed integer heuristic described in this section is based on the idea ofsolving many restricted MIP problems in order to improve the solution to the problem(4.1). The same principle is used in [10] for a slightly different problem. The heuristicis divided into three steps, a global problem, a local problem and a project networkpresented in Sections 5.2.1, 5.2.2 and 5.1.3, respectively. These three steps are iterateduntil a termination criterion is fulfilled.

5.2.1 Global problem

The algorithm starts by randomly choosing a total of |M| attack nodes, one from eachtarget, meaning that exactly one node in each set NAt

m must be chosen. These nodes arereferred to as super-nodes. In order to decrease the number of variables in the model(4.1), the sets NAt

m are redefined such that they only include the chosen super-nodes.We denote these new sets by N Super

m .

The model given in Section 4.2 is then solved for the new sets N Superm (meaning that the

set Nm is replaced with N Superm ). The complicating constraints are still present but the

number of arc variables xijr is now (strongly) reduced to be less than |R|(|M|+ 2)2. Byreducing the size of the problem, a smaller branch-and-bound tree is obtained (if suchmethod is used). An advantage of this first step is that nothing is relaxed and that anoptimal solution is found for the super-nodes. This means that the solution will have afairly good global structure, i.e., the exit time tex will probably not be too large and theprecedence restrictions will be respected in a feasible and convenient way. The solutionquality can however still be poor due to the random choice of super-nodes since thereis no guarantee that the arc used between these nodes can be chosen near optimal. Anexample of a poor solution is when the chosen nodes are all located in sectors with SAMs.

5.2.2 Local problem

A solution from the first step corresponds to a route and a schedule for each aircraftr ∈ R. The so-called local problem will preserve the route in terms of which targetsshould be visited by which aircraft, but they are now given the chance to change fromeach of the super-nodes to other nodes in the corresponding target. More formally, definea set Sr that includes the triple (m,n,r) if the solution from the first step uses an arcfrom target m ∈ M to target n ∈ M by aircraft r ∈ R. Also define a set that containsthe corresponding network arcs given by,

Amnr = {(i,j) ∈ A : i ∈ NAtm ∪N Sup

m , j ∈ NAtn ∪N Sup

n }, (m,n,r) ∈ Sr. (5.7)

32

Page 41: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.2. MIP-BASED HEURISTIC CHAPTER 5. HEURISTIC APPROACHES

The local problem can then be written to,

maximizexijr,(i,j)∈A,r∈R,

∑r∈R

∑(i,j)∈A

(cijr − λTijr)xijr, (5.8a)

subject to∑

(o,j)∈A

xojr = 1, r ∈ R, (5.8b)

∑(i,d)∈A

xidr = 1, r ∈ R, (5.8c)

∑(i,k)∈A

xikr −∑

(k,j)∈A

xkjr = 0, k ∈ N ∗, r ∈ R, (5.8d)

∑g∈Gm

∑(i,j)∈Ag

∑r∈R

xijr = 1, m ∈M, (5.8e)

∑g∈Gm

∑(i,j)∈Ig

∑r∈R

xijr = 1, m ∈M, (5.8f)

∑r∈R

∑(i,j)∈Ag

xijr −∑r∈R

∑(i,j)∈Ig

xijr = 0, g ∈ G, (5.8g)

∑m∈M

∑g∈Gm

∑(i,j)∈Ag

xijr ≤ Γ, r ∈ R, (5.8h)

∑(i,j)∈Amnr

xijr = 1, (m,n,r) ∈ Sr, (5.8i)

xijr ∈ {0,1}, (i,j) ∈ A, r ∈ R. (5.8j)

The constraints (5.8b)-(5.8h) are the same as the constraints (4.1b)-(4.1j). The con-straints (5.8i) make sure that each of the targets are visited in the same sequence andby the same aircraft as in the solution obtained from the global problem. Note that theexit time tex is removed from the objective. Empirical testing, done within the scope ofthis project, shows that the problem is solved faster if the continuous variables (and thecorresponding constraints) are omitted.

The constraints (5.8i) are actually unnecessary if the set of arcs A is redefined to onlyinclude arcs from the set Amnr. The removed constraint is then automatically fulfilledsince the aircraft must visit the destination node d and the only way of doing so is to fol-low the same global path as the solution obtained in the first step. The same motivationmakes it possible to replace the equality constraints in (5.8e) and (5.8f) with inequalityconstraints. In this setting it is easier to see the characteristics of the problem. If it werenot for the constraints (5.8e) and (5.8f) the problem would be a generalized capacitatedshortest path problem. It is generalized in the sense that an aircraft must choose tovisit exactly one node in a cluster of nodes. The non-generalized version can be solvedefficiently by the algorithm presented in [17].

Observe that the second step in the heuristic makes the time variables in the first step

33

Page 42: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

useless. As in the heuristic presented in Section 5.1 the second step provides a solution,x∗ijr to the routing problem and the time variables are obtained by solving the projectnetwork defined in Section 5.1.3.

As for the heuristic described in Section 5.1, the local problem presented in Section5.2.2 ignores the scheduling part of the problem and tries to compensate this using thethird step presented in 5.1.3. As a result, the optimal solution is rarely obtained by thismethod. However, the aim of the heuristic is to find near optimal routes in a limitedamount of computation time and it is therefore necessary to separate the routing problemfrom the scheduling problem. It is possible to solve the local problem simultaneously withthe project network problem, by solving the model (4.1) with the additional constraint(5.8i). This will result in solutions at least as good as those from the global-local heuristicbut it will require a longer computation time.

5.3 Column generation

Next, a column generation heuristic based on the theory given in Section 2.2 is pre-sented. The restricted master problem (RMP) corresponding to the problem given by(4.1) is presented in Section 5.3.1. To ensure that the subproblems are computationallyeasy enough, the scheduling part of the RMP is removed, i.e., all time variables andcorresponding constraints are relaxed. The remaining problem is refered to as the mod-ified restricted master problem (MRMP) and is presented in Section 5.3.1 as well. TheMRMP (not RMP) is solved using the Dantzig-Wolfe algorithm presented in Section2.2. The motivation for solving the MRMP instead of the RMP is given in Section 5.3.2,when presenting and comparing their corresponding subproblems. Once the MRMP issolved, the removed time variables are added together with binary constraints. Thisproblem is referred to as the binary restricted master problem (BRMP) and is presentedin Section 5.3.3. A feasible solution to the BRMP is a feasible solution to the problem(4.1). An overview of the process is shown in Figure 5.3

Figure 5.3: Overwiev of the column generation heuristic.

34

Page 43: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

5.3.1 RMP and MRMP

In the restricted master problem obtained from model (4.1), each column consist of aroute and a schedule. Let p denote the number of columns in the restricted set and letxlr, where l = 1, . . . ,p, denote the route for each aircraft r ∈ R. This route should startat the origin o and choose a path that eventually reaches the destination d. Such a routedoes not have to visit all the targets, unless this is favorable. If it chooses to go via atarget m ∈ M it is not allowed to visit that same target once again. The schedules arethe times at which the nodes are visited in each route (including the exit time tex). TheRMP is to choose the best set of routes and schedules among a restricted set of routesand schedules, such that the objective (4.1a) is maximized.

The modified restricted master problem removes all time variables from the RMP. Thus,the columns (only) consists of routes xlr. Denote the elements of xlr by xlijk, y

A,lmr, y

I,lmr.

The parameters xlijk, yA,lmr, y

I,lmr have the same interpretation as in the model (4.1), ex-

cept for the index l, that indicates that they now are parameters generated from thesubproblems (also referred to as extreme points in Section 2.2). The MRMP is to choosethe best set of routes among a restricted set of routes.

Let λlr denote the binary decision variables that equals 1 if the route defined by xlijk,

35

Page 44: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

yA,lmr, yI,lmr is chosen. The restricted master problem is formulated as to,

maximizeλlr,l=1...,p,r∈R,tAtm ,m∈M,

p∑l=1

∑r∈R

∑(i,j)∈A

[cijr − λTijr]xlijr − µtex

λlr, (5.9a)

subject to

p∑l=1

(∑r∈R

yA,lmr

)λlr = 1, m ∈M, (5.9b)

p∑l=1

(∑r∈R

yI,lmr

)λlr = 1, m ∈M, (5.9c)

p∑l=1

∑r∈R

∑(i,j)∈Ag

xlijr −∑

(i,j)∈Ig

xlijr

λlr = 0, g ∈ G, (5.9d)

p∑l=1

∑r∈R

∑i∈NAt

m

tlir

λlr = tAtm , m ∈M, (5.9e)

p∑l=1

∑r∈R

∑i∈NSup

m

tlir

λlr = tSupm , m ∈M, (5.9f)

tAtm = tSup

m , m ∈M, (5.9g)

tAtn ≥ tAt

m , (m,n) ∈ S, (5.9h)p∑l=1

λlr = 1, r ∈ R, (5.9i)

λlr ∈ [0,1], r ∈ R, l ∈ {1, . . . ,p}. (5.9j)

The objective function is the same as in the optimization problem (4.1). The constraints(5.9b) and (5.9c) ensure that each target is visited once by each of the executing and thesupporting aircraft. The constraint (5.9d) ensures that the corresponding nodes that arevisited belong to the same sector.

Constraints (5.9e)-(5.9h) ensures that the required temporal precedence and synchro-nization constraints are fulfilled and the remaining constraints (5.9i) and (5.9j) are theconvexity constraints required by the theory presented in Section 2.2.

The MRMP is obtained by relaxing the constraints (5.9e)-(5.9h) and removing the termµtex from the objective function. The MRMP corresponds to the optimization problem(2.7) in the Dantzig–Wolfe decomposition algorithm presented in Section 2.2. Both theRMP and the MRMP are set partitioning problems with side constraints (see [3, Chapter13] for a general description of the problem). Observe that the MRMP is not equivalentto the problem (4.1), by lack of time parameters tlir, even if binary constraints on thevariable λlr were added.

36

Page 45: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

5.3.2 Subproblem

As already mentioned, the subproblem corresponding to the RMP and the MRMP gen-erates a route that should start at the origin o and choose a path that eventually reachesthe destination d. Such a route does not have to visit all the targets, unless this isfavorable. If it chooses to go via a target m ∈ M it is not allowed to visit that sametarget any more. The reason for using the MRMP instead of the RMP are due to theconstraints for the subproblem corresponding to the RMP (not MRMP) and are givenby,

∑(o,j)∈A

xojr = 1, r ∈ R, (5.10a)

∑(i,d)∈A

xidr = 1, r ∈ R, (5.10b)

∑(i,k)∈A

xikr −∑

(k,j)∈A

xkjr = 0, k ∈ N ∗, r ∈ R, (5.10c)

∑m∈M

∑g∈Gm

∑(i,j)∈Ag

xijr ≤ Γ, r ∈ R, (5.10d)

tir + Tijrxijr ≤ tjr + Tmax(1− xijr), (i,j) ∈ A, r ∈ R, (5.10e)

0 ≤ tir ≤ tex, i ∈ N , r ∈ R, (5.10f)∑g∈Gm

∑(i,j)∈Ag

xijr = yAtmr, m ∈M, r ∈ R, (5.10g)

∑g∈Gm

∑(i,j)∈Ig

xijr = ySupmr , m ∈M, r ∈ R, (5.10h)

xijr, yAtmr, y

Supmr ∈ {0,1} (i,j) ∈ A, r ∈ R, m ∈M. (5.10i)

The corresponding objective function can be derived using the objective in (2.9a). Thisfuction will consist of e.g., node times, exit time tex and routing variables. The variabletex connects the aircraft r ∈ R such that the problem must be solved simultaneously forall the aircraft.

The MRMP does not contain the scheduling variable tex and thus the constraints (5.10f)becomes redundant. The only contribution of the constraints given by the inequalities(5.10e) is then to eliminate subtours. This can be done in other ways as well, accordingto the following explanation.

Define a set Nm consisting of all nodes in a target m ∈ M. Also define the variables

37

Page 46: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

urmn as

urmn =∑i∈Nm

∑j∈Nn

xijr, (m,n) ∈ (M×M) \ S, r ∈ R. (5.11)

Let K be the number of subsets of the set M. For each such subset, Uk, the subtoureliminating constraint in the variables umn is given by,∑

m∈Uk

∑n∈Uk

urmn ≤ |Uk| − 1, r ∈ R k = 1, . . . ,K. (5.12)

The number of such constraints grows exponentially with the number of targets, moreprecisely it is equal to 2|M| − 1. Recall that a large scenario involves about ten targetswhich implies 210−1 = 1023 subtour elimination constraints. Thus too many constraintswill not be a problem when implementing it.

The subproblems corresponding to the MRMP will now be |R| independent subproblemsthat can be formulated as a integer linear program. The subproblems corresponds tothe model (2.5) in the general theory. Let vAt

m , vSupm , ug and dr be the dual variables

of the constraints given by equations (5.9b),(5.9c),(5.9d) and (5.9i), respectively. Thesubproblem corresponding to the MRMP for a given aircraft r ∈ R is to,

maximizexijr,y

Atmr,y

Supmr ,

(i,j)∈Ig ,m∈M,r∈R,

∑(i,j)∈A

[cijr − λTijr]xijr −∑m∈M

vAtm yAt

mr − vSupm ySup

mr

−∑g∈G

ug

∑(i,j)∈Ag

xijr −∑

(i,j)∈Ig

xijr

− dr, (5.13a)

subject to∑

(o,j)∈A

xojr = 1, (5.13b)

∑(i,d)∈A

xidr = 1, (5.13c)

∑(i,k)∈A

xikr −∑

(k,j)∈A

xkjr = 0, k ∈ N ∗, r ∈ R, (5.13d)

∑m∈M

∑g∈Gm

∑(i,j)∈Ag

xijr ≤ Γ, R, (5.13e)

∑g∈Gm

∑(i,j)∈Ag

xijr = yAtmr, m ∈M, (5.13f)

∑g∈Gm

∑(i,j)∈Ig

xijr = ySupmr , m ∈M, (5.13g)

∑m∈Uk

∑n∈Uk

urmn ≤ |Uk| − 1, r ∈ R, k = 1, . . . ,K, (5.13h)

xijr, yAtmr, y

Supmr ∈ {0,1}, (i,j) ∈ A, m ∈Mr ∈ R. (5.13i)

38

Page 47: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

The model (5.13) is a generalized elementary shortest path problem with resource con-straints (GESPPRC). It is generalized in the sense that the aircraft must choose exactlyone node among a cluster of nodes. Note that an alternative, equivalent decompositionis obtained if one substitute the definitions of yAt

mr and ySupmr from the equations (5.13f)

and (5.13g) into (5.9b) and (5.9c), and changes the subtour elimination constraint toinclude nodes rather than targets. The subproblems will instead become the elementaryshortest path problem with resource constraints (ESPPRC), which can be solved by thelabel setting algorithm presented in [18]. We have chosen not to use the alternativeformulation since it would imply too many subtour elimination constraints in the modelwhen implementing it in a commercial solver.

The ESPPRC is a resource constrained shortest path problem in which cycles are forbid-den. Although the resource constrained shortest path can be solved in pseudo polynomialtime by algorithm [17], a corresponding polynomial algorithm does not exist for the ESP-PRC problem [18].

5.3.3 Binary restricted master problem

The Dantzig-Wolfe decomposition presented in Section 2.2 is particularly good for ourapplication since both Tijr and cijr are independent of r ∈ R, which implies that thesolutions to the |R| independent subproblems (5.13) can be found by solving a singleproblem.

In this heuristic approach, the algorithm continues to solve subproblems given by (5.13),as long as the optimal objective values (i.e., the reduced costs from the solutions to themodel (5.13)) are positive. Observe that the number of iterations until this is achievedcan be different for different aircraft. When this is done one should solve a binaryversion of the restricted master problem (BRMP) with scheduling variables tir and tex.The solutions to the BRMPs are feasible solutions to the model (4.1). The times tir are(still) the times at which node i ∈ N is visited by aircraft r ∈ R and are used to makesure that the temporal synchronization and precedence constraints are respected. TheBRMP is to choose routes and set destination times tir to the chosen routes in order to,

39

Page 48: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

maximizeλlr,l=1...,p,tir,

i∈Nm,r∈R,tAtm ,m∈M,

p∑l=1

∑r∈R

∑(i,j)∈A

[cijr − λTijr]xlijr − µtex

λlr, (5.14a)

subject to

p∑l=1

(∑r∈R

yAtmr

)λlr = 1, m ∈M, (5.14b)

p∑l=1

(∑r∈R

ySupmr

)λlr = 1, m ∈M, (5.14c)

p∑l=1

∑r∈R

∑(i,j)∈Ag

xlijr −∑

(i,j)∈Ig

xlijr

λlr = 0, g ∈ G, (5.14d)

tir + Tij

p∑l=1

xlijrλlr ≤ tjr + Tmax

p∑l=1

(1− xlijr)λlr, (i,j) ∈ A, r ∈ R,

(5.14e)

tir ≤ Tmax

p∑l=1

∑j:(i,j)∈A

xijrλlr, i ∈ N ∗, r ∈ R, (5.14f)

tor = 0, i ∈ R, (5.14g)∑r∈R

∑i∈NAt

m

tir = tAtm , m ∈M, (5.14h)

∑r∈R

∑i∈NSup

m

tir = tSupm , m ∈M, (5.14i)

tAtm = tSup

m , m ∈M, (5.14j)

tAtn ≥ tAt

m , (m,n) ∈ S, (5.14k)p∑l=1

λlr = 1, r ∈ R, (5.14l)

λlr ∈ {0,1}, r ∈ R, l ∈ {1, . . . ,p}. (5.14m)

The constraints (5.14b) and (5.14c) ensure that each target is visited once by each of theattacking and the supporting aircraft. The constraints (5.14d) make sure that the chosenroutes respects the spatial synchronization. The constraints (5.14e) are the time propa-gation constraints and the constraints (5.14f) makes sure that the time at which aircraftr ∈ R visits the node i ∈ N is zero for nodes that are not visited by aircraft r ∈ R.The constraints (5.14h)-(5.14k) are the time synchronization and precedence constraints.

Due to the time variables tir the MIP (5.14) is not pure a set partitioning problem (seee.g. [3, Chapter 13] for formal definition). Besides choosing routes, it must also set

40

Page 49: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

5.3. COLUMN GENERATION CHAPTER 5. HEURISTIC APPROACHES

scheduling times to the chosen routes such that the objective function is maximized.

Even though the MIP (5.14) involves the same objective as the model (4.1), it is stillexpected that the change of the objective function in the subproblem will have an impacton the solution quality. This is since the temporal precedence constraints are removedfrom the RMP, meaning that no dual variables corresponding to these constraints arepresent in the objective function (5.13). Hence, no reward is given for choosing columnsthat respects the precedence in an optimal way.

Example, consider a target scene with eight targets, five aircraft, Γ = 2, and precedenceconstraints saying that the targets should be visited in the order 1 to 8. Suppose thattargets 1 and 8 are geographically very close. The minimization of the total travelingtime could then imply that two aircraft are traveling from the origin to targets 1 and8 before they return to the destination. The remaining targets are then visited by theother three aircraft and suppose this requires more time than it takes to visit the targets1 and 8. Then, due to precedence, the aircraft visiting target 8 must hold their visitwhich in practice means that they must circulate in the air, creating an even longertraveling time. On the other hand, if the waiting time is too long, these columns are notvery likely to be chosen in the last step of the heuristic.

An attempt to solve the above issue might be to generate more than one column ineach iteration, i.e., columns having positive reduced costs. In this way the BRMP willinclude more columns and the chance of finding a column that respects the precedencewill increase. Generating more than one column (in each iteration) is also a widely usedway to speed up the column generation [4] , since the number of iterations are thenlikely to decrease. The latter is not necessarily true for the column generation heuristicpresented in this section since more columns are added to the BRMP (5.14). Empiricaltesting done within the scope of this project shows that adding a very large number ofcolumns in each iteration, i.e., greater then 50, actually increases the computation time.

41

Page 50: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6Tests and results

6.1 Implementation and test settings

The heuristic presented in Section 5.1 was implemented in MATLAB, while the otherheuristics were implemented in AMPL. The solver used was CPLEX 11.0 for the 64-bit environment. The computations were performed on a computer using a dual coreIntel i5 2.50 GHz processor with four threads. The computer has 4 GB of RAM memory.

As mentioned in Section 4.2.2, to avoid solutions in which aircraft loiters, the objectivealso contains the destination times tdr for all aircraft r ∈ R multiplied with a smallpenalty η > 0. The actual objective function used by all three heuristics is thus,

σ∑r∈R

∑(i,j)∈A

[cijr − λTijr]xijr − µtex −∑r∈R

ηtdr, (6.1)

where the term∑

r∈R ηtdr is small enough such that the optimal value obtained fromthe objective functions (4.1a) and (6.1) has (essentially) the same value. The model(4.1) was also implemented using the additional subtour elimination constraints and thesymmetry breaking constraints mentioned in Section 4.2.2.

Recall that |R| is the number of aircraft in the set R. The weights in the objective func-tion (6.1) are chosen set to λ := 0, σ := 10, µ := 0.0475, and η := 0.0025

|R| . Thus, giventhat λ = 0 and η > 0 is small enough, the only variable that strives to minimize the timespent in the air by each aircraft is the exit time tex. To compensate when removing thevariable tex and relaxing the corresponding constraints in (4.1), the heuristic approachesemploy the weight λ = 0.0015 . However, the last step (i.e., the project network andthe binary restricted master problem, respectively) of all heuristic approaches use theobjective (6.1) with λ = 0 and are thus comparable. The value λ = 0.0015 was deter-mined by running a few small instances and choosing the best value for those instances.

42

Page 51: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.2. PROBLEM INSTANCES CHAPTER 6. TESTS AND RESULTS

Increasing the value of λ can be beneficial even if λ is non-zero in the objective (4.1a)since it compensates for the relaxation of tex.

Note that the choice of parameters λ and µ will have a noticeable effect on the optimalsolution of the model (4.1). The results from the heuristic approaches will probablyimprove if the objective weight parameters are set to, for instance, µ = 0 and λ > 0respectively, since the parameters in the objective function do not have to be changedbetween different steps in the heuristics. Thus, the values of the parameters λ and µ arein this thesis chosen to expose the relaxation of tex the most.

Depending on the problem size, the global-local heuristic presented in Section 5.2 runsfor 8− 20 iterations. The results of the computations indicate that for small instances,the solution quality is unlikely to improve after approximately 20 iterations and thecomputation time increases rapidly with the sizes of the instances, motivating the choiceof eight iterations for large instances.

To receive a feasible heuristic to the column generation heuristic presented in Section 5.3,the global-local heuristic was applied with a single iteration and with a time restrictionon the global problem that was set to be between 1− 10 seconds, depending on the sizeof the problem. To speed up the computations in the column generation presented inSection 5.3, each iteration includes five subproblem solutions in the master problem. Thecolumn generation terminates when each of the columns in an iteration has a non-positivereduced cost or if the number of iterations exceeds 100.

6.2 Problem instances

The computations were performed on two test sets. The first test set consists of smalland medium sized test instances. This test set is the same as in [1, Chapter 3] and wasretrieved from the industrial partner. In [1, Chapter 3], an even number of aircraft areused, together with additional constraints that force the aircraft to work in pairs. Thus,the optimal values in [1, Chapter 3] are used here as lower bounds. The optimal solutions(to model (4.1)) to the small test instances will be presented in the form of figures, asit is possible to solve these in CPLEX in a reasonable amount of time (less than fivehours). For the medium sized instances, the best values obtained from the heuristicswill be compared to the optimal values (lower bounds) given in [1, Chapter 3], withoutpresenting the optimal solution graphically1. As shown in Section 6.3, the gap betweenthe optimal solution and the corresponding upper LP-bound is too large to be useful.

The second test set consists of larger instances that requires (significantly) more thanfive hours of computation time for the solver to find an optimal solution. As a conse-

1 In [1, Chapter 3], a significantly faster processor was used for the computations and hence mediumsized instances with the additional ”work in pair (page 229 equation (8).)” constraints was possible tosolve.

43

Page 52: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.3. RESULTS FROM THE TESTS CHAPTER 6. TESTS AND RESULTS

quence, no optimal solution was found and the results obtained from the heuristics arecompared against each other.

As mentioned in the problem description (Section 1.3), the number of sectors was fixedto six and the number of nodes in each sector was fixed to three. The test instanceswere obtained by varying the number of targets |M|, the number of aircraft |R|, andthe precedence relations between the targets. The spatial distribution of each target isthe same for all instances having the same number of targets. This means that all pa-rameters Tijr and cijr are the same for all instances that consists of the same number oftargets. Note that this implies that the optimal value of each instance with precedenceconstraints is a lower bound on the optimal objective value of the corresponding instancewithout precedence constraints. Unfortunately many instances require long computationtime, making this fact useless in practice.

To describe the precedence relations between targets, the following notation is used. Let{1234} denote an instance for which no precedence between targets are given, while forinstance {12|34}, denotes that both targets 1 and 2 should be visited before targets 3and 4 are visited. In the same fashion, {1|2|3|4}, denotes a totally ordered chain of visitsthat demands the targets to be visited in the order 1 to 4.

6.3 Results from the tests

The results are presented in the form of tables and figures. Each of the Tables 6.1, 6.2,and 6.3 shows the results obtained for one of the three heuristics. For each heuristicand each problem instance tested, the following information is provided: The first fivecolumns show an instance label, the number of targets, the number of aircraft, the prece-dence restrictions, and the capacity parameter Γ. It is followed by the LP-bound (LP),the optimal value (MIP), the lower bound (LB) and the objective values obtained byone of the three heuristics (Heur). The CPU times (measured in seconds), required forperforming the heuristic (CPU (Heur)) and for solving the model (4.1) until optimalityis reached (CPU (MIP)), are presented (showing the time used by all solve commandspassed to MATLAB or CPLEX ). The table also shows the exit times obtained fromthe heuristic (tex (H)) and the optimal solutions (tex (O)). In the cases for which theoptimal values were not obtained, the cells corresponding to (MIP) and (CPU (O)) aremarked by ∗. Further, if a lower bound exists, then the cell corresponding to tex (O)contains the exit time obtained by the lower bound solution, otherwise is marked ∗ aswell.

The solutions to some problem instances are presented graphically (e.g. Figure 7.3).Each figure illustrates a target scene. The numbers represent the target position in twodimensions. The green squares mark the positions of protected buildings. The hollowred circles mark the ranges of the SAMs. The black dots represent attack nodes that the

44

Page 53: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.3. RESULTS FROM THE TESTS CHAPTER 6. TESTS AND RESULTS

aircraft are allowed to visit while the red dots represent nodes that may not be visiteddue to the protected buildins location. The plus marks represent the support nodes.The targets are visited in the order specified by the target sequence. The dashed linesrepresent the path of the aircraft. The color of each dashed line specifies whether theaircraft visits only attack nodes (black), only support nodes (blue), or both attack andsupport nodes (magenta).

Tables 6.1, 6.2, and 6.3 show the result obtained from the constructive heuristic basedon solving a weighted matching problem, from the global-local heuristic and from thecolumn generation heuristic, respectively. The results obtained by the three heuristicapproaches are compared in Figure 6.1, which shows the corresponding objective values.The solutions to a number of selected problems are also presented in Figures 7.1-7.12.

It might not be very surprising that for each of the instances, the best results are obtainedby either the column generation or the global-local heuristic. The global-local heuristicis the most robust heuristic, providing good solutions for most of the instances. Eventhough the column generation sometimes provides a better solution, it does not find nearoptimal solutions as consistently as the global-local heuristic, e.g., for the instances P9,P10, and P11. Table 6.3 shows that the constructive heuristic based on the weightedmatching problem sometimes provides poor schedules. However, it also shows that theconstructive heuristic based on the weighted matching problem outperforms the othertwo heuristic approaches in terms of computation time. A further comparison and ananalysis of the result are presented in Chapter 7.

45

Page 54: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.3. RESULTS FROM THE TESTS CHAPTER 6. TESTS AND RESULTS

Table 6.1: The first five columns shows: an instance label, the number of targets, thenumber of aircraft, the precedence relations and the capacity parameter Γ. It is followed bythe LP-bound (LP), the optimal value (MIP), the lower bound (LB) and the objective valuesobtained by the constructive heuristic based on the weighted matching problem (Heur). TheCPU times (measured in seconds), required for performing the heuristic (CPU (Heur)) andfor solving the model (4.1) using CPLEX until optimality is reached (CPU (MIP)), arepresented. The table also shows the exit time obtained from the heuristic (tex (H)) and theoptimal exit time (tex (O)).

# |M| |R| Precedence Γ LP MIP LB Heur CPU (O) CPU (H) tex (O) tex (H)

P12

4 6

{1234} 2 34.33 11.31 10.92 7.93 5239 2 447 495

P13 {12|34} 2 34.26 11.31 10.92 7.93 1752 2 448 495

P14 {1|2|3|4} 2 34.01 10.83 10.48 7.80 218 2 447 495

P20 5 4 {12345} 2 40.44 ∗ 11.84 -5.90 ∗ 2 532 900

P235 6

{12345} 2 42.78 ∗ 16.39 9.60 ∗ 2 492 615

P25 {1|2|3|4|5} 2 42.18 ∗ 16.15 9.37 ∗ 2 492 615

NP28

5 {1|2|3|4|5|6|7|8} 2 149.71 ∗ ∗ -84.20 ∗ 2 ∗ 1706

NP3 6 {1|2|3|4|5|6|7|8} 2 150.85 ∗ ∗ -60.03 ∗ 3 ∗ 1216

46

Page 55: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.3. RESULTS FROM THE TESTS CHAPTER 6. TESTS AND RESULTS

Figure 6.1: Objective values obtained by the model (4.1), the weighted matching heuristic,the global-local heuristic and the column generation. Each objective value, O, computedfor a problem instance has been normalized according to Obest−O

Obest, where Obest is the best

value obtained by either the weighted matching heuristic, the global-local heuristic or thecolumn generation, respectively. The values greater than one are due to negative values ofthe corresponding objective values. Note also that the result from the constructive heuristicbased on the matching problem is only presented for those instances in which there existsa feasible solution. In the same fashion, the optimal solution is presented only when it isknown.

47

Page 56: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.3. RESULTS FROM THE TESTS CHAPTER 6. TESTS AND RESULTS

Table 6.2: The first five columns shows: an instance label, the number of targets, thenumber of aircraft, the precedence relations and the capacity parameter Γ. It is followedby the LP-bound (LP), the optimal value (MIP), the lower bound (LB) and the objectivevalues obtained by the global-local heuristic (Heur). The CPU times (measured in seconds),required for performing the heuristic (CPU (Heur)) and for solving the model (4.1) usingCPLEX until optimality is reached (CPU (MIP)), are presented. The table also shows theexit time obtained from the heuristic (tex (H)) and the optimal exit time (tex (O)).

# |M| |R| Precedence Γ LP MIP LB Heur CPU (O) CPU (H). tex (O) tex (H)

P1

3 2{123} 3 23.18 5.55 5.55 5.55 106 3 333 333

P2 2 23.18 5.25 5.25 4.49 92 3 338 354

P3 {1|23} 3 22.81 3.01 3.01 2.34 38 2 352 399

P5

4 2

{1234} 3 31.93 ∗ 1.36 1.18 ∗ 13 582 586

P6 2 31.92 ∗ 0.92 0.91 ∗ 15 591 591

P7 {12|34} 3 30.60 1.36 1.36 1.18 1327 4 582 636

P8 2 30.60 0.92 0.92 0.67 1133 5 591 596

P9

4 4

{1234} 3 33.28 ∗ 8.41 8.32 ∗ 155 473 471

P10 {12|34} 3 32.91 8.41 8.41 8.32 15599 25 473 471

P11 {1|2|3|4} 3 32.62 7.62 7.62 7.40 4259 10 477 490

P12

4 6

{1234} 2 34.33 11.31 10.92 10.79 5239 24 447 448

P13 {12|34} 2 34.26 11.31 10.92 10.93 1752 14 448 448

P14 {1|2|3|4} 2 34.01 10.83 10.48 10.78 218 6 448 448

P15

5 2

{12345} 3 39.88 ∗ 5.11 2.92 ∗ 537 625 668

P16 {12534} 3 38.99 ∗ 1.36 -0.14 ∗ 14 731 761

P17 {1|2|3|4|5} 3 38.26 ∗ 2.25 1.42 ∗ 3 678 695

P20 5 4 {1|2|3|4|5} 2 40.44 ∗ 11.84 10.96 ∗ 120 532 538

P235 6

{12345} 2 42.78 ∗ 16.39 15.90 ∗ 238 492 497

P25 {1|2|3|4|5} 2 42.18 ∗ 16.15 16.13 ∗ 200 492 492

NP1

8

4 {1|2|3|4|5|6|7|8} 2 148.40 ∗ ∗ -52.61 ∗ 537 ∗ 1057

NP2 5 {1|2|3|4|5|6|7|8} 2 149.71 ∗ ∗ -48.35 ∗ 1928 ∗ 971

NP3 6 {1|2|3|4|5|6|7|8} 2 150.85 ∗ ∗ -49.00 ∗ 1822 ∗ 984

48

Page 57: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

6.3. RESULTS FROM THE TESTS CHAPTER 6. TESTS AND RESULTS

Table 6.3: The first five columns shows: an instance label, the number of targets, thenumber of aircraft, the precedence relations and the capacity parameter Γ. It is followed bythe LP-bound (LP), the optimal value (MIP), the lower bound (LB) and the objective valuesobtained by the column generation heuristic (Heur). The CPU times (measured in seconds),required for performing the heuristic (CPU (Heur)) and for solving the model (4.1) usingCPLEX until optimality is reached (CPU (MIP)), are presented. The table also shows theexit time obtained from the heuristic (tex (H)) and the optimal exit time (tex (O)).

# |M| |R| Precedence Γ LP MIP LB Heur CPU (O) CPU (H). tex (O) tex (H)

P1

3 2{123} 3 23.18 5.55 5.55 2.20 106 10 333 368

P2 2 23.18 5.25 5.25 1.00 92 30 338 426

P3 {1|23} 3 22.81 3.01 3.01 2.78 38 5 352 357

P5

4 2

{1234} 3 31.93 ∗ 1.36 1.18 ∗ 30 582 586

P6 2 31.92 ∗ 0.92 0.91 ∗ 44 591 591

P7 {12|34} 3 30.60 1.36 1.36 1.18 1327 82 582 586

P8 2 30.60 0.92 0.92 0.67 1133 20 591 596

P9

4 4

{1234} 3 33.28 ∗ 8.41 4.53 ∗ 19 473 551

P10 {12|34} 3 32.91 8.41 8.41 4.53 15599 41 473 551

P11 {1|2|3|4} 3 32.62 7.62 7.62 3.56 4259 6 477 490

P12

4 6

{1234} 2 34.33 11.31 10.92 8.53 5239 17 447 485

P13 {12|34} 2 34.26 11.31 10.92 10.86 1752 45 448 448

P14 {1|2|3|4} 2 34.01 10.83 10.48 8.83 218 6 448 448

P15

5 2

{12345} 3 39.88 ∗ 5.11 4.19 ∗ 325 625 644

P16 {12534} 3 38.99 ∗ 1.36 1.36 ∗ 223 731 731

P17 {1|2|3|4|5} 3 38.26 ∗ 2.25 1.42 ∗ 8 678 695

P20 5 4 {1|2|3|4|5} 2 40.44 ∗ 11.84 10.14 ∗ 11 532 574

P235 6

{12345} 2 42.78 ∗ 16.39 13.22 ∗ 142 492 509

P25 {1|2|3|4|5} 2 42.18 ∗ 16.15 12.23 ∗ 11 492 577

NP1

8

4 {1|2|3|4|5|6|7|8} 2 148.40 ∗ ∗ -60.1 ∗ 612 ∗ 1214

NP2 5 {1|2|3|4|5|6|7|8} 2 149.71 ∗ ∗ -57.27 ∗ 352 ∗ 1150

NP3 6 {1|2|3|4|5|6|7|8} 2 150.85 ∗ ∗ -53.93 ∗ 1352 ∗ 1094

49

Page 58: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

7Discussion

Before drawing conclusions from the result obtained, we discuss a couple of probleminstances and their corresponding objective values are compared. This way it is possibleto (literally) see how much a unit difference in the objective value changes the route andthe schedule. We compare e.g., the two heuristic solutions to the instance P15 presentedin Figures 7.1 and 7.2. The corresponding objective values are 2.92 and 4.19, respec-tively. The routing part of these solutions are very similar, the only differences are thedirection of the support at target 3 and a switch of roles at target 5. The main partof the difference of objective values occurs in the scheduling part: for the global-localmethod tex = 688 while for the column generation method tex = 644. Hence, for thisinstances a relative difference of (4.19− 2.92)/2.92 ∗ 100 = 43.5% between the objectivevalues ”only” corresponds to a 4% improvement of the exit time.

50

Page 59: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Figure 7.1: The solution obtained by the global-local heuristic for the problem instanceP15. |M| = 5, |R| = 2, Precedence = {12345} and Γ = 3.

Figure 7.2: The solution obtained by the column generation heuristic for the probleminstance P15. |M| = 5, |R| = 2, Precedence = {12345} and Γ = 3.

Another interesting case occurs when the optimal solution to the instance P3, as pre-sented in Figure 7.3, is compared to the solution obtained by the global-local heuristicpresented in Figure 7.4. The optimal solution has 6% shorter exit time. Despite thisfact, it is shown in Figure 6.1 that the objective values are relatively close (compared toother instances), since the heuristic solution chooses a better route. The trajectory of a

51

Page 60: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

potential weapon spends less time in the SAM range at target 2 in Figure 7.4, than ifthe aircraft chooses the route presented in Figure 7.3.

Figure 7.3: The optimal solution obtained by the model (4.1) for the problem instance P3.|M| = 3, |R| = 2, Precedence = {1|23} and Γ = 3.

Figure 7.4: The solution obtained by the global-local heuristic model for the probleminstance P3. |M| = 3, |R| = 2, Precedence = {1|23} and Γ = 3.

52

Page 61: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Table 6.2 shows that the global-local heuristic consistently finds near optimal schedules.Due to the global step, this occurs even if precedence constraints are present. Unfor-tunately the global-local heuristic also requires significant computation time, especiallyfor large instances (such that |M| ≥ 6) (see Table 6.2). Optimal solution for instanceswith |M| ≥ 6 are rarely obtained. The reason for this is that the limited amount ofcomputation time restricts the number of times that the global problem can be solved.Surprisingly, our tests also show that even if the correct global route is found, the localsearch procedure fails to find the optimal route. An example of such situation is shownin Figures 7.3 and 7.4. Perhaps another value of the parameter λ in the objective (5.8a)of the local problem would imply that the optimal route is found. To iteratively varythis parameter is not an opportunity for large instances, since it would require too muchcomputation time.

Another disadvantage of the global-local heuristic is that it does not guarantee any con-vergence properties. It instead relies on the fact that the probability of improving a bestknown solution increases with the number of global-local iterations solved. Hence theonly natural terminations criterion is a limitation on the computation time.

The column generation finds near optimal (or sufficiently good) solutions to many of thetest instances and it does this in sufficiently short computation time for the applicationconsidered. This is mainly due to the formulation of the problem that enables the algo-rithm to solve only one subproblem in each iteration. Other advantages of the columngeneration is that the formulation of the subproblem results in an integer program, whichdoes not require a label setting algorithm similar to the one presented in [19] since itcan be solved using a commercial solver.

The main disadvantage of the column generation appears when precedence constraintsare present. The reason is the relaxation of the precedence constraint (5.9h) and theremoval of the exit time tex along with the constraints (5.9e)-(5.9h). An example ofsuch a solution is shown in Figure 7.6. Instead of helping the other two aircraft withthe remaining targets, the four aircraft, visiting targets 2, 3, 4, and 5, respectively, leavethe target scene as soon as each of them has executed its part of the mission. A visitto, e.g., target 6 or 7 would probably not imply a positive reduced cost in the sub-problem due to the increase in the total distance traveled. A much more sophisticatedsolution is obtained by the global-local heuristic, as shown in Figure 7.5. In contrastto the subproblems in the column generation heuristic, the global problem minimizesthe exit time, and hence some aircraft travel from, e.g., target 2 or 3 to target 6 or 7even if this implies a longer travel time. An even worse solution is obtained by the con-structive heuristic based on the weighted matching problem; it is presented in Figure 7.7.

53

Page 62: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Figure 7.5: The solution obtained by the global-local heuristic for the problem instancesNP3. |M| = 8, |R| = 6, Precedence = {1|2|3|4|5|6|7|8} and Γ = 2.

Figure 7.6: The solution obtained by the column generation heuristic for the probleminstance NP3. |M| = 8, |R| = 6, Precedence = {1|2|3|4|5|6|7|8} and Γ = 2.

54

Page 63: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Figure 7.7: The Solution obtained by the weighted matching based heuristic for the prob-lem instance NP3. |M| = 8, |R| = 6, Precedence = {1|2|3|4|5|6|7|8} and Γ = 2.

The relaxation of the precedence constraints and the exit times in the column generationalgorithm does not always imply a poor solution. An example is constituted by the in-stance P17, for which the spatial distribution of the targets is equivalent to the solutionpresented in Figure 7.1. The explanation for the good solution is that the precedencerelation, {1|2|3|4|5}, ”follows” the path that minimizes the total distance traveled.

As mentioned above, the column generation sometimes performs better than the global-local heuristic; compare Figures 7.1 and 7.2. The total distance traveled is shorter in thesolution obtained by the global-local heuristic, but due to the temporal synchronizationit provides a later exit time. Note that the subproblems also minimize the total distancetraveled, but since more than one column is included in the binary master problem(5.14), the restricted set of columns actually includes routes that are slightly longer butthat can be scheduled to have a shorter exit time. Thus the removed variable tex andits corresponding constraints are actually compensated a bit in this last step of columngeneration.

The compensation is however limited. Compare the solution obtained by the global-localheuristic presented in Figure 7.8 with the solution obtained by the column generationpresented in Figure 7.9. It is clear that the column generation chooses shorter routes,but not the earliest exit time. When comparing the five columns generated in each it-eration of the Dantzig-Wolfe decomposition, we noted that the routes often differ in thechoice of the direction of the support or in the choice of attack nodes within the samesector. Thus, the binary master problem (5.14) cannot improve the solution any furthersince columns such as those used in the solution presented in Figure 7.8 have a too long

55

Page 64: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

distance to be generated. This explains whay the binary version of the master problemcould improve problem P15 but not problem P9. The reason for the similarity of thefive columns generated is due to the implementation and decomposition of the problem.Note that the dual variables correspond to sectors or targets. The implementation ofthe column generation adds the five best columns found in each iteration (including thefinal optimal one) 1. Hence, e.g., a change in the direction of the support is natural sincethe dual variable is independent of such a change and the corresponding total distancetraveled is often close to the one found in the optimal solution of the subproblem (dueto the spatial distribution of the nodes).

1Note the difference between the five best columns and the five best columns found by CPLEX.

56

Page 65: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Figure 7.8: The solution obtained by the global-local heuristic for the problem instanceP9. |M| = 4, |R| = 4, Precedence = {1234} and Γ = 3.

Figure 7.9: The solution obtained by the column generation heuristic for the probleminstance P9. |M| = 4, |R| = 4, Precedence = {1234} and Γ = 3.

Worth mentioning is that the relaxation of the synchronization constraints (5.9g) in thecolumn generation did not significantly contribute to a decrease in the final objectivevalue for the test instances. The relaxation makes it possible to find a solution in which,e.g., an aircraft must hold a visit to an attack node because the corresponding supportingaircraft visits several other targets, and as a consequence the exit time increases signif-

57

Page 66: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

icantly. No such solutions have been found by the column generation heuristic for thetest set considered. The reason might be that such columns are not generated or thatthe binary master problem does not choose such columns, since it has better alternatives.

Recall that the most important property of the constructive heuristic is that it quicklyfinds a feasible solution. The instances NP2 and NP3 were both solved in less than threeseconds, an impressing result when comparing with the other two heuristic approaches.As pointed out in Section 5.1, its limitations are known in advance. The constructiveheuristic performs badly if a single aircraft supplies all the targets with support. This isillustrated in Figure 7.12 where the exit time is almost twice the exit time given by theoptimal solution. The solution of the same instance obtained by the global-local heuristicand the column generation heuristic is shown in Figures 7.10 and 7.11, respectively.

58

Page 67: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Figure 7.10: The solution obtained by the global-local heuristic for the problem instanceP20. |M| = 5, |R| = 4, Precedence = {1|2|3|4|5} and Γ = 2.

Figure 7.11: The solution obtained by the column generation heuristic for the probleminstance P20. |M| = 5, |R| = 4, Precedence = {1|2|3|4|5} and Γ = 2.

59

Page 68: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 7. DISCUSSION

Figure 7.12: The solution obtained by the weighted matching based heuristic for theproblem instance P20. |M| = 5, |R| = 4, Precedence = {1|2|3|4|5} and Γ = 2.

60

Page 69: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

8Conclusion

Each of our three heuristic approaches for the vehicle routing problem with spatial andtemporal synchronization separates the routing problem from the scheduling problem inorder to obtain one integer program and one linear program, instead of a mixed-integerproblem. This was shown to be an efficient strategy in terms of computation time,while it decreases the solution quality. The global-local heuristic consistently finds near-optimal solutions in a reasonable amount of computation time. The column generationheuristic sometimes fails to find good solutions due to the precedence constraints. Oth-erwise, the results are nearly as good as for the global-local heuristic. The constructiveheuristic does not provide as good results as the two former heuristic approaches but ituses significantly less computation time.

61

Page 70: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

9Future Work

As mentioned in the limitations (Section 1.4), the model (4.1) is infeasible since it doesnot include multiple choices of flight altitude. The global-local heuristic will probablystill be efficient even if multiple altitudes are added to the model (4.1). The reason isthat the global problem, which requires a clear majority of the computation time, willnot increase in size. As already discussed in Section 5.2.2, the local problem is a gener-alized shortest path problem with side constraints given by (5.8e) and (5.8f). Althoughthe local problem will increase in size, the number of side constraints will remain thesame. Thus, adding a altitude layers will increase the number of possible paths by afactor of ≈ |R|a|M| (compared to a single layer). The exact number of layers that canbe added before the computation time for the local problem becomes to large should beinvestigated in future work.

Since the subproblem is solved in each iteration, even a small increase in the computa-tion time required for solving a subproblem can imply a large total computation time.Therefore it is interesting to investigate the exact impact on the computation time ofthe subproblems when adding multiple choices of flight altitude.

Finding the optimal solution to the global problem tends to be a too slow procedure forlarge instances. A suggestion is to investigate the possibility to use a different approachfor solving the global problem. As pointed out in the literature review, the global prob-lem equals the home-care scheduling problem without time windows. Thus it may beinteresting to investigate if the heuristic approach presented in [10] is more time efficientthan the approach used here. Perhaps even the branch-and-price framework in [11] maybe interesting.

As pointed out in the discussion, the global local-heuristic can for some instances beimproved by changing the direction of the support for one or more targets. A sugges-

62

Page 71: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

CHAPTER 9. FUTURE WORK

tion is therefore to add a local search similar to the one found in [1, Chapter 3] whichiteratively tries different support directions.

Our results suggest that the Dantzig-Wolfe decomposition should take into considerationthe precedence constraint, e.g., use the RMP instead of the MRMP in the heuristic de-scribed in Section 5.3. This is perhaps easier said than done, since the computation timewhen solving the subproblems, which requires a clear majority of the total computationtime, is limited. It should be possible to develop an efficient label setting algorithmsimilar to the one found in [19]. Another possibility is to develop a heuristic that findsnear-optimal solutions to the subproblems. Whenever this heuristic fails to find columnswith a positive reduced cost, the subproblems should be solved by an exact method.

63

Page 72: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

Bibliography

[1] N.-H. Quttineh, Models and Methods for Costly Global Optimization and MilitaryDecision Support Systems, Linkoping Studies in Science and Technology. Disserta-tions No. 1450, Linkoping University, Sweden (2012).

[2] M. Patriksson, N. Andreasson, A. Evgrafov, E. Gustavsson, M. Onnheim, Introduc-tion to Continuous Optimization, Studentlitteratur, Lund, 2013.

[3] J. Lundgren, M. Ronnqvist, P. Varbrand, Optimization, Studentlitteratur, Lund,2010.

[4] M. E. Lubbecke, Column Generation, John Wiley & Sons, Inc., 2010.

[5] G. B. Dantzig, J. H. Ramser, The truck dispatching problem, Management Science6 (1) (1959) 80–91.

[6] G. Laporte, The vehicle routing problem: An overview of exact and approximatealgorithms, European Journal of Operational Research 59 (3) (1992) 345–358.

[7] J. K. Lenstra, A. H. G. Rinnooy Kan, Complexity of vehicle routing and schedulingproblems, Networks 11 (2) (1981) 221–227.

[8] H. Gabow, Data structures for weighted matching and nearest common ancestorswith linking, ACM Computing Surveys (CSUR) (1986) 23–38.

[9] M. Drexl, Synchronization in vehicle routing—a survey of VRPs with multiple syn-chronization constraints, Transportation Science 46 (3) (2012) 297–316.

[10] D. Bredstrom, M. Ronnqvist, Combined vehicle routing and scheduling with tem-poral precedence and synchronization constraints, European Journal of OperationalResearch 191 (1) (2008) 19–31.

[11] D. Bredstrom, M. Ronnqvist, A branch and price algorithm for the combined vehi-cle routing and scheduling problem with synchronization constraint, Social ScienceResearch Network (7) (2007).

64

Page 73: A Generalized Vehicle Routing Problem with Spatial and … · A Generalized Vehicle Routing Problem with Spatial and Temporal Synchronization Mathematical Modelling and Solution Master’s

BIBLIOGRAPHY

[12] M. S. Rasmussen, T. Justesen, A. Dohn, J. Larsen, The home care crew schedulingproblem: Preference-based visit clustering and temporal dependencies, EuropeanJournal of Operational Research 219 (3) (2012) 598 – 610.

[13] Y. Li, A. Lim, B. Rodrigues, Manpower allocation with time windows and job-teaming constraints, Naval Research Logistics (NRL) 52 (4) (2005) 302–311.

[14] A. Dohn, E. Kolind, J. Clausen, The manpower allocation problem with time win-dows and job-teaming constraints: A branch-and-price approach, Computers andOperations Research 36 (4) (2009) 1145–1157.

[15] T. Bektas, G. Erdogan, Formulations and branch-and-cut algorithms for the gener-alized vehicle routing problem, Transportation science 45 (3) (2011) 299–316.

[16] K. Helsgaun, An effective implementation of the Lin–Kernighan traveling salesmanheuristic, European Journal of Operational Research 126 (1) (2000) 106–130.

[17] M. Desrochers, J. Desrosiers, M. Solomon, A new optimization algorithm for thevehicle routing problem with time windows, Operations research 40 (2) (1992) 342–354.

[18] D. Feillet, P. Dejax, M. Gendreau, C. Gueguen, An exact algorithm for the elemen-tary shortest path problem with resource constraints: Application to some vehiclerouting problems, Networks 44 (3) (2004) 216–229.

[19] W. J. Guerrero, N. Velasco, C. Prodhon, C. A. Amaya, On the generalized ele-mentary shortest path problem: A heuristic approach, Electronic Notes in DiscreteMathematics 41 (2013) 503.

65