The Bi-objective Multi-Vehicle Covering Tour Problem (BOMCTP): - - PowerPoint PPT Presentation

the bi objective multi vehicle covering tour problem
SMART_READER_LITE
LIVE PREVIEW

The Bi-objective Multi-Vehicle Covering Tour Problem (BOMCTP): - - PowerPoint PPT Presentation

The Bi-objective Multi-Vehicle Covering Tour Problem (BOMCTP): formulation and lower-bound computation B.M. SARPONG C. ARTIGUES N. JOZEFOWIEZ LAAS-CNRS 13/04/2012 Outline 1 Introduction 2 Mathematical formulation of the BOMCTP 3 Column


slide-1
SLIDE 1

The Bi-objective Multi-Vehicle Covering Tour Problem (BOMCTP): formulation and lower-bound computation

B.M. SARPONG

  • C. ARTIGUES
  • N. JOZEFOWIEZ

LAAS-CNRS 13/04/2012

slide-2
SLIDE 2

Outline

1 Introduction 2 Mathematical formulation of the BOMCTP 3 Column generation for a bi-objective integer

problem

4 Lower bound for the BOMCTP 5 Conclusions and perspectives

1 / 18

slide-3
SLIDE 3

The Covering Tour Problem [Gendreau et al., 1997]

Find a minimal-length tour on V ′ ⊆ V such that the nodes of W are covered by those of V ′.

Vehicle route May be visited MUST be visited : T V MUST be covered : W Cover

2 / 18

slide-4
SLIDE 4

The Multi-Vehicle CTP [Hachicha et al., 2000]

Find a set of at most m tours on V ′ ⊆ V , having minimum total length and such that the nodes of W are covered by those of V ′. The length of each route cannot exceed a preset value p. The number of vertices on each route cannot exceed a preset value q. Vehicle routes May be visited MUST be visited : T V MUST be covered : W Cover distance

3 / 18

slide-5
SLIDE 5

Description of the BOMCTP Problem

Given a graph G = (V ∪ W , E) with T ⊆ V , design a set of vehicle routes on V ′ ⊆ V .

Objectives

Minimize the total length of the set of routes. Minimize the cover distance induced by the set of routes.

Constraints

Each vertex of T must belong to a vehicle route. Each vertex of W must be covered. The length of each route cannot exceed a preset value p. The number of vertices on each route cannot exceed a preset value q.

4 / 18

slide-6
SLIDE 6

A set-covering model for the BOMCTP Variables

Ω : set of all feasible routes rk ∈ Ω : feasible route k ck : cost of route rk θk : 1 if route rk is selected in solution and 0 otherwise zij : 1 if vertex vj ∈ V is used to cover vertex wi ∈ W and 0

  • therwise

aik : 1 if rk uses vertex vi ∈ V and 0 otherwise Covmax : cover distance induced by a set of routes

Objective functions

minimize

  • rk∈Ω

ckθk minimize Covmax

5 / 18

slide-7
SLIDE 7

A set-covering model for the BOMCTP Constraints

− zij +

  • rk∈Ω

ajkθk ≥ 0 (wi ∈ W , vj ∈ V )

  • rk∈Ω

ajkθk ≥ 1 (vj ∈ T) Covmax − cijzij ≥ 0 (wi ∈ W , vj ∈ V )

  • vj∈V

zij ≥ 1 (wi ∈ W ) Covmax ≥ 0 zij ∈ {0, 1} (wi ∈ W , vj ∈ V ) θk ∈ {0, 1} (rk ∈ Ω)

6 / 18

slide-8
SLIDE 8

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2 f1

7 / 18

slide-9
SLIDE 9

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2 f1

lb1

7 / 18

slide-10
SLIDE 10

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2 f1

lb1

7 / 18

slide-11
SLIDE 11

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2 f1

lb1 lb2

7 / 18

slide-12
SLIDE 12

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2 f1

lb1 lb2

7 / 18

slide-13
SLIDE 13

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2

ideal point

f1

lb1 lb2

7 / 18

slide-14
SLIDE 14

Lower bound of a MOIP [Villarreal and Karwan, 1981]

f2

ideal point

f1

lb1 lb2

7 / 18

slide-15
SLIDE 15

Column generation for a bi-objective integer problem Problem

minimize (c1x, c2x) Ax ≥ b x ≥ 0 and integer

Procedure

Transform bi-objective problem into a single-objective one by means of ε-constraint scalarization. Solve the linear relaxation of the problem obtained for different values of ε by means of column generation.

8 / 18

slide-16
SLIDE 16

Scalarization by ε-constraint Master Problem

minimize c1x Ax ≥ b −c2x ≥ −ε x ≥ 0

Dual

maximize by1 − εy2 Ay1 − c2y2 ≤ c1 y1, y2 ≥ 0

9 / 18

slide-17
SLIDE 17

Approach 1: point-by-point search

f2 f1

ε0

10 / 18

slide-18
SLIDE 18

Approach 1: point-by-point search

f2 f1

ε0

10 / 18

slide-19
SLIDE 19

Approach 1: point-by-point search

f2 f1

ε0

10 / 18

slide-20
SLIDE 20

Approach 1: point-by-point search

f2 f1

ε0

10 / 18

slide-21
SLIDE 21

Approach 1: point-by-point search

f2 f1

ε0 ε1

10 / 18

slide-22
SLIDE 22

Approach 1: point-by-point search

f2 f1

ε0 ε1

10 / 18

slide-23
SLIDE 23

Approach 1: point-by-point search

f2 f1

ε0 ε1

10 / 18

slide-24
SLIDE 24

Approach 1: point-by-point search

f2 f1

ε0 ε1

10 / 18

slide-25
SLIDE 25

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2

10 / 18

slide-26
SLIDE 26

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2

10 / 18

slide-27
SLIDE 27

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2

10 / 18

slide-28
SLIDE 28

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2

10 / 18

slide-29
SLIDE 29

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2 εk-1

10 / 18

slide-30
SLIDE 30

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2 εk-1

10 / 18

slide-31
SLIDE 31

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2 εk-1

10 / 18

slide-32
SLIDE 32

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2 εk-1

10 / 18

slide-33
SLIDE 33

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2 εk-1

10 / 18

slide-34
SLIDE 34

Approach 1: point-by-point search

f2 f1

ε0 ε1 ε2 εk-1 εk

10 / 18

slide-35
SLIDE 35

Approach 2: parallel search 1

f2 f1

ε0

11 / 18

slide-36
SLIDE 36

Approach 2: parallel search 1

f2 f1

ε0 ε1

11 / 18

slide-37
SLIDE 37

Approach 2: parallel search 1

f2 f1

ε0 ε2 ε1

11 / 18

slide-38
SLIDE 38

Approach 2: parallel search 1

f2 f1

ε0 ε2 ε1 ε3

11 / 18

slide-39
SLIDE 39

Approach 2: parallel search 1

f2 f1

ε0 εk εk-1 ε2 ε1 ε3

11 / 18

slide-40
SLIDE 40

Approach 2: parallel search 1

f2 f1

ε0 εk εk-1 ε2 ε1 ε3

generate m/k columns for RMP generate m/k columns for RMP generate m/k columns for RMP generate m/k columns for RMP generate m/k columns for RMP generate m/k columns for RMP

11 / 18

slide-41
SLIDE 41

Approach 2: parallel search 1

f2 f1

ε0 εk

11 / 18

slide-42
SLIDE 42

Approach 2: parallel search 1

f2 f1

ε0 εk

11 / 18

slide-43
SLIDE 43

Approach 2: parallel search 1

f2 f1

ε0 εk ε1

1

11 / 18

slide-44
SLIDE 44

Approach 2: parallel search 1

f2 f1

ε0 εk ε2 ε1

1 1

11 / 18

slide-45
SLIDE 45

Approach 2: parallel search 1

f2 f1

ε0 εk εk-1 ε2 ε1 ε3

1 1 1 1

11 / 18

slide-46
SLIDE 46

Approach 3: parallel search 2

f2 f1

ε0

12 / 18

slide-47
SLIDE 47

Approach 3: parallel search 2

f2 f1

ε0

generate m columns for RMP

12 / 18

slide-48
SLIDE 48

Approach 3: parallel search 2

f2 f1

ε0

12 / 18

slide-49
SLIDE 49

Approach 3: parallel search 2

f2 f1

ε0 ε1

12 / 18

slide-50
SLIDE 50

Approach 3: parallel search 2

f2 f1

ε0 ε1

generate m columns for RMP

12 / 18

slide-51
SLIDE 51

Approach 3: parallel search 2

f2 f1

ε0 ε1

12 / 18

slide-52
SLIDE 52

Approach 3: parallel search 2

f2 f1

ε0 ε1 ε2

12 / 18

slide-53
SLIDE 53

Approach 3: parallel search 2

f2 f1

ε0 ε1 ε2

generate m columns for RMP

12 / 18

slide-54
SLIDE 54

Approach 3: parallel search 2

f2 f1

ε0 ε1 ε2

12 / 18

slide-55
SLIDE 55

Approach 3: parallel search 2

f2 f1

ε0 ε1 ε2 εk εk-1

12 / 18

slide-56
SLIDE 56

The Restricted Master Problem (RMP)

minimize

  • rk∈Ω1

ckθk

Constraints

− zij +

  • rk∈Ω1

ajkθk ≥ 0 (wi ∈ W , vj ∈ V )

  • rk∈Ω1

ajkθk ≥ 1 (vj ∈ T) Covmax − cijzij ≥ 0 (wi ∈ W , vj ∈ V )

  • vj∈V

zij ≥ 1 (wi ∈ W ) −Covmax ≥ −ε

13 / 18

slide-57
SLIDE 57

The Restricted Master Problem (RMP)

minimize

  • rk∈Ω1

ckθk

Constraints

dual variables − zij +

  • rk∈Ω1

ajkθk ≥ 0 (wi ∈ W , vj ∈ V ) αij

  • rk∈Ω1

ajkθk ≥ 1 (vj ∈ T) ϕj Covmax − cijzij ≥ 0 (wi ∈ W , vj ∈ V ) γij

  • vj∈V

zij ≥ 1 (wi ∈ W ) βi −Covmax ≥ −ε λ

13 / 18

slide-58
SLIDE 58

Dual of RMP

maximize − ελ +

  • wi∈W

βi +

  • vj∈T

ϕj subject to:

  • wi∈W

vj∈V

ajkαij +

  • vj∈T

ajkϕj ≤ ck (rk ∈ Ω1) −λ +

  • wi∈W

vj∈V

γij ≤ 0 − cijγij + βi − αij ≤ 0 (wi ∈ W , vj ∈ V )

14 / 18

slide-59
SLIDE 59

Definition of sub-problem

Find routes such that ck −

  • wi∈W

vj∈V

ajkαij −

  • vj∈T

ajkϕj < 0. Let α∗

hj = αhj if vj ∈ V , wh ∈ W and 0 otherwise.

Let ϕ∗

j = ϕj if vj ∈ T and 0 otherwise.

Let A be the set of arcs formed between two nodes of V . Let xijk = 1 if route rk uses arc (vi, vj) and 0 otherwise. Note : ck =

  • (vi,vj)∈A

xijkcij and ajk =

  • {vi∈V |(vi,vj)∈A}

xijk So

  • (vi,vj)∈A

cijxijk −

  • (vi,vj)∈A
  • vh∈W

α∗

hjxijk −

  • (vi,vj)∈A

ϕ∗

j xijk < 0.

15 / 18

slide-60
SLIDE 60

Definition of sub-problem

  • (vi,vj)∈A
  • cij − ϕ∗

j −

  • vh∈W

α∗

hj

  • xijk < 0.

Sub-problem

Find elementary paths from the depot to the depot with a negative cost, satisfying the constraints of length and maximum number of vertices on a path. Costs are set to cij − ϕ∗

j −

  • vh∈W

α∗

hj.

An elementary shortest path problem with resource constraints Solved by the Decremental State Space Relaxation (DSSR) algorithm [Righini and Salani, 2008].

16 / 18

slide-61
SLIDE 61

Computational results

Instances:

120 random points generated in the [0, 100] x [0, 100] square Set V taken as first |V | points; W taken as remaining points

RMP coded in C++ and solved with CPLEX 12.2 Computer: Intel Core 2 Duo, 2.93 GHz, 2 GB RAM

Table: Averages over 10 random instances for |T| = 1, and q = +∞.

Point-by-point Parallel 1 Parallel 2 |V | p time

  • Nb. cols Nb. solved time Nb. cols Nb. solved time Nb. cols Nb. solved

(sec) Gen master (sec) Gen master (sec) Gen master 6 5.93 16.7 34.5 46.41 18.7 917.8 4.35 16.8 35.0 40 8 11.76 18.0 34.6 48.61 20.1 925.5 5.49 18.3 35.1 12 25.01 20.7 34.9 57.21 23.3 947.0 7.12 20.6 35.4 6 10.94 18.2 38.9 60.87 20.5 1099.7 8.19 22.1 40.6 50 8 22.01 19.6 38.4 64.74 24.0 1115.2 8.99 19.7 38.9 12 41.74 22.1 37.1 75.85 26.9 1107.8 11.93 22.6 37.5 6 19.13 19.9 42.7 40.22 20.9 1017.4 9.45 20.4 43.1 60 8 44.56 19.3 42.3 52.78 22.5 1240.1 14.02 21.1 43.4 12 128.98 23.4 42.6 68.66 26.9 1258.1 22.55 25.8 44.0

17 / 18

slide-62
SLIDE 62

Conclusions and perspectives Conclusions

Possible to have several (and efficient) ways of applying column generation to bi-objective integer problems. Model for BOMCTP has a weak linear relaxation.

Work in progress

Investigate other intelligent ways of generating columns for a bi-objective integer problem. Test developed approaches on different problems (including another model for the BOMCTP with a stronger linear relaxation). Efficiently solve the BOMCTP by a multi-objective branch-and-price algorithm.

18 / 18

slide-63
SLIDE 63

THANK YOU FOR YOUR ATTENTION.