Evolution and Evaluation of the Penalty Method for Alternative - - PowerPoint PPT Presentation

evolution and evaluation of the penalty method for
SMART_READER_LITE
LIVE PREVIEW

Evolution and Evaluation of the Penalty Method for Alternative - - PowerPoint PPT Presentation

Evolution and Evaluation of the Penalty Method for Alternative Graphs Moritz Kobitzsch, Marcel Radermacher, and Dennis Schieferdecker {kobitzsch,schieferdecker}@kit.edu, marcel.radermacher@student.kit.edu Institute of Theoretical Informatics -


slide-1
SLIDE 1

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

Institute of Theoretical Informatics - Algorithmics

Evolution and Evaluation of the Penalty Method for Alternative Graphs

Moritz Kobitzsch, Marcel Radermacher, and Dennis Schieferdecker

{kobitzsch,schieferdecker}@kit.edu, marcel.radermacher@student.kit.edu

KIT – University of the State of Baden-Wuerttemberg and National Laboratory of the Helmholtz Association

www.kit.edu

slide-2
SLIDE 2

Motivation

advanced route planning

1

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

shortest paths multitude of speed-up techniques

(AF , CH, HL, . . . ; sub-microsecond queries)

alternative routes non-optimal routes

(heuristiccs; quality ⇐ ⇒ speed)

speed-up techniques do not work well

(algorithms do not use or relax them)

slide-3
SLIDE 3

Motivation

advanced route planning

1

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

shortest paths multitude of speed-up techniques

(AF , CH, HL, . . . ; sub-microsecond queries)

alternative routes non-optimal routes

(heuristiccs; quality ⇐ ⇒ speed)

speed-up techniques do not work well

(algorithms do not use or relax them)

slide-4
SLIDE 4

Motivation

advanced route planning

1

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

shortest paths multitude of speed-up techniques

(AF , CH, HL, . . . ; sub-microsecond queries)

alternative routes non-optimal routes

(heuristiccs; quality ⇐ ⇒ speed)

speed-up techniques do not work well

(algorithms do not use or relax them)

slide-5
SLIDE 5

Motivation

advanced route planning

1

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

shortest paths multitude of speed-up techniques

(AF , CH, HL, . . . ; sub-microsecond queries)

alternative routes non-optimal routes

(heuristiccs; quality ⇐ ⇒ speed)

speed-up techniques do not work well

(algorithms do not use or relax them)

slide-6
SLIDE 6

Motivation

what are alternative graphs?

2

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

alternative graph (AG) extension to alternative routes

⇒ encode multiple (good) alternative routes

(between one source and one target)

⇒ interaction between alternative routes ⇒ compact representation of options

intermediate data structure

⇒ sparse, directed graph ⇒ usable with expensive algorithms

(stochastic routing, traffic simulation)

slide-7
SLIDE 7

Motivation

what are alternative graphs?

2

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

alternative graph (AG) extension to alternative routes

⇒ encode multiple (good) alternative routes

(between one source and one target)

⇒ interaction between alternative routes ⇒ compact representation of options

intermediate data structure

⇒ sparse, directed graph ⇒ usable with expensive algorithms

(stochastic routing, traffic simulation)

slide-8
SLIDE 8

Motivation

what are alternative graphs?

2

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

alternative graph (AG) extension to alternative routes

⇒ encode multiple (good) alternative routes

(between one source and one target)

⇒ interaction between alternative routes ⇒ compact representation of options

intermediate data structure

⇒ sparse, directed graph ⇒ usable with expensive algorithms

(stochastic routing, traffic simulation)

slide-9
SLIDE 9

Related Work

what has been done before? (1)

3

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Routes in Road Networks"

[ABRAHAM ET AL. 10]

via-node approach (plateau method)

→ concatenation of two shortest paths → variants: X-BDV (sec.), X-CHV (millisec.)

quality measures not too much longer

(stretch)

sufficiently different

(sharing)

reasonable

(local optimality)

slide-10
SLIDE 10

Related Work

what has been done before? (1)

3

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Routes in Road Networks"

[ABRAHAM ET AL. 10]

via-node approach (plateau method)

→ concatenation of two shortest paths → variants: X-BDV (sec.), X-CHV (millisec.)

quality measures not too much longer

(stretch)

sufficiently different

(sharing)

reasonable

(local optimality)

slide-11
SLIDE 11

Related Work

what has been done before? (1)

3

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Routes in Road Networks"

[ABRAHAM ET AL. 10]

via-node approach (plateau method)

→ concatenation of two shortest paths → variants: X-BDV (sec.), X-CHV (millisec.)

quality measures not too much longer

(stretch)

sufficiently different

(sharing)

reasonable

(local optimality)

slide-12
SLIDE 12

Related Work

what has been done before? (1)

3

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Routes in Road Networks"

[ABRAHAM ET AL. 10]

via-node approach (plateau method)

→ concatenation of two shortest paths → variants: X-BDV (sec.), X-CHV (millisec.)

quality measures not too much longer

(stretch)

sufficiently different

(sharing)

reasonable

(local optimality)

slide-13
SLIDE 13

Related Work

what has been done before? (1)

3

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Routes in Road Networks"

[ABRAHAM ET AL. 10]

via-node approach (plateau method)

→ concatenation of two shortest paths → variants: X-BDV (sec.), X-CHV (millisec.)

quality measures not too much longer

(stretch)

sufficiently different

(sharing)

reasonable

(local optimality)

slide-14
SLIDE 14

Related Work

what has been done before? (1)

3

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Routes in Road Networks"

[ABRAHAM ET AL. 10]

via-node approach (plateau method)

→ concatenation of two shortest paths → variants: X-BDV (sec.), X-CHV (millisec.)

quality measures not too much longer

(stretch)

sufficiently different

(sharing)

reasonable

(local optimality)

slide-15
SLIDE 15

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-16
SLIDE 16

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-17
SLIDE 17

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-18
SLIDE 18

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-19
SLIDE 19

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-20
SLIDE 20

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-21
SLIDE 21

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

slide-22
SLIDE 22

Related Work

what has been done before? (2)

4

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

"Alternative Route Graphs in Road Networks"

[BADER ET AL. 11]

penalty method (classical method)

→ putting penalties on arc costs → based on Dijkstra (sec.)

no alternative route extraction quality measures numeric values hard to gauge do not directly translate to quality of alternative routes

totalDist :=

  • a=(u,v)∈AH

c(a) DH(s, u) + c(a) + DH(v, t) averageDist :=

  • a∈AH c(a)

D(s, t) · totalDist maximize totalDist − (averageDist − 1) s.t.: averageDist ≤ 1.1 decisionArcs ≤ 10

slide-23
SLIDE 23

Optimization Potential

what can we do better?

5

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

current state-of-the-art fast "one-hop" alternative routes slow alternative graphs goal fast alternatives with diverse structure approach focus on penalty method

⇒ improve for interactive use (speed-up techniques) ⇒ extract alternative routes (quality criteria similar to via-node approach) ⇒ analyze quality & structure of results

slide-24
SLIDE 24

Penalty Method

generic workflow

6

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 while { termination

condition false} do

2 3

{compute shortest path}

4 5

{add penalties to graph}

6 7 end 8 9 {select

shortest paths + combine to alternative graph}

10 11 {extract

alternative routes}

path selection penalization (not covered today)

(modified from previous work)

fast computation alternative route extraction

(not in previous work)

slide-25
SLIDE 25

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-26
SLIDE 26

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-27
SLIDE 27

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-28
SLIDE 28

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-29
SLIDE 29

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-30
SLIDE 30

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-31
SLIDE 31

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-32
SLIDE 32

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-33
SLIDE 33

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-34
SLIDE 34

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-35
SLIDE 35

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-36
SLIDE 36

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-37
SLIDE 37

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-38
SLIDE 38

Penalty Method

path selection

7

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

basic approach (classical method) perform "enough" iterations

⇒ generate set of shortest paths

select good subset for AG

(implementation details left open)

when query times matter... (our approach) exploit quality measures

⇒ terminate as paths become too long

(allow maximum stretch w.r.t. original metric)

⇒ select path for AG after each iteration

(w.r.t. stretch, sharing measures)

slide-39
SLIDE 39

Penalty Method

computing shortest paths (1)

8

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

challenges compute many shortest paths

⇒ Dijkstra’s algorithm [DIJKSTRA 59]

→ used by previous work (takes seconds on random queries)

⇒ static speed-up techniques

(AF , CH, HL, . . . → costly preprocessing)

arc costs change

⇒ Customizable Route Planning (CRP) [DELLING ET AL. 13]

→ used by our approach (takes milliseconds on random queries)

slide-40
SLIDE 40

Penalty Method

computing shortest paths (1)

8

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

challenges compute many shortest paths

⇒ Dijkstra’s algorithm [DIJKSTRA 59]

→ used by previous work (takes seconds on random queries)

⇒ static speed-up techniques

(AF , CH, HL, . . . → costly preprocessing)

arc costs change

⇒ Customizable Route Planning (CRP) [DELLING ET AL. 13]

→ used by our approach (takes milliseconds on random queries)

⇒ but still requires some kind of preprocessing

slide-41
SLIDE 41

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-42
SLIDE 42

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-43
SLIDE 43

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-44
SLIDE 44

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-45
SLIDE 45

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-46
SLIDE 46

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-47
SLIDE 47

Penalty Method

computing shortest paths (2)

9

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

CRP preprocessing structural preprocessing

takes minutes to hours

(required once, can be done offline)

multi-level partitioning adding shortcut arcs

(boundary nodes of each cell become cliques)

metric customization

compute shortcut costs

(required when arc costs change)

takes seconds1 / tenths of a second2

(using multiple cores and vector units) [DELLING ET AL. 13]1 [DELLING&WERNECK 13]2

slide-48
SLIDE 48

Penalty Method

computing shortest paths (3)

10

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

adaptive customization

  • nly update cells with changes
  • nly update k levels

⇒ restrict query algorithm to k levels ⇒ preprocessing times ⇐ ⇒ query times ⇒ beneficial for short queries (less overhead)

dynamic level selection

(depending on hop count, optimized on different query set)

slide-49
SLIDE 49

Penalty Method

computing shortest paths (3)

10

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

adaptive customization

  • nly update cells with changes
  • nly update k levels

⇒ restrict query algorithm to k levels ⇒ preprocessing times ⇐ ⇒ query times ⇒ beneficial for short queries (less overhead)

dynamic level selection

(depending on hop count, optimized on different query set)

slide-50
SLIDE 50

Penalty Method

computing shortest paths (3)

10

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

adaptive customization

  • nly update cells with changes
  • nly update k levels

⇒ restrict query algorithm to k levels ⇒ preprocessing times ⇐ ⇒ query times ⇒ beneficial for short queries (less overhead)

dynamic level selection

(depending on hop count, optimized on different query set)

slide-51
SLIDE 51

Penalty Method

computing shortest paths (3)

10

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

adaptive customization

  • nly update cells with changes
  • nly update k levels

⇒ restrict query algorithm to k levels ⇒ preprocessing times ⇐ ⇒ query times ⇒ beneficial for short queries (less overhead)

dynamic level selection

(depending on hop count, optimized on different query set)

slide-52
SLIDE 52

Penalty Method

computing shortest paths (3)

10

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

adaptive customization

  • nly update cells with changes
  • nly update k levels

⇒ restrict query algorithm to k levels ⇒ preprocessing times ⇐ ⇒ query times ⇒ beneficial for short queries (less overhead)

dynamic level selection

(depending on hop count, optimized on different query set)

⇒ tens of milliseconds for query and customization

slide-53
SLIDE 53

Penalty Method

alternative route extraction (1)

11

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

how to extract alternative routes? take constituting routes?

⇒ misses synergy effects

take any route?

⇒ arbitrarily bad

  • ur approach: CRP-π

two-step procedure

(via-node & penalty methods)

extraction on small graph

(expensive methods become feasible)

slide-54
SLIDE 54

Penalty Method

alternative route extraction (1)

11

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

how to extract alternative routes? take constituting routes?

⇒ misses synergy effects

take any route?

⇒ arbitrarily bad

  • ur approach: CRP-π

two-step procedure

(via-node & penalty methods)

extraction on small graph

(expensive methods become feasible)

slide-55
SLIDE 55

Penalty Method

alternative route extraction (1)

11

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

how to extract alternative routes? take constituting routes?

⇒ misses synergy effects

take any route?

⇒ arbitrarily bad

  • ur approach: CRP-π

two-step procedure

(via-node & penalty methods)

extraction on small graph

(expensive methods become feasible)

slide-56
SLIDE 56

Penalty Method

alternative route extraction (1)

11

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

how to extract alternative routes? take constituting routes?

⇒ misses synergy effects

take any route?

⇒ arbitrarily bad

  • ur approach: CRP-π

two-step procedure

(via-node & penalty methods)

extraction on small graph

(expensive methods become feasible)

slide-57
SLIDE 57

Penalty Method

alternative route extraction (1)

11

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

how to extract alternative routes? take constituting routes?

⇒ misses synergy effects

take any route?

⇒ arbitrarily bad

  • ur approach: CRP-π

two-step procedure

(via-node & penalty methods)

extraction on small graph

(expensive methods become feasible)

slide-58
SLIDE 58

Penalty Method

alternative route extraction (1)

11

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

how to extract alternative routes? take constituting routes?

⇒ misses synergy effects

take any route?

⇒ arbitrarily bad

  • ur approach: CRP-π

two-step procedure

(via-node & penalty methods)

extraction on small graph

(expensive methods become feasible)

slide-59
SLIDE 59

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-60
SLIDE 60

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-61
SLIDE 61

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-62
SLIDE 62

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-63
SLIDE 63

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-64
SLIDE 64

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-65
SLIDE 65

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-66
SLIDE 66

Penalty Method

alternative route extraction (2)

12

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

procedure

  • 1. via-node approach

based on X-BDV → local optimality disabled (not applicable in AG) exhaustively compute routes keep all routes

  • 2. penalty method

based on classical penalty method → initialize with X-BDV routes fixed number of iterations (stretch no good termination criterion) keep good routes (w.r.t. quality measures)

slide-67
SLIDE 67

Experimental Setup

13

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

hardware/software 4 Intel Xeon E5-4640 @ 2.4 GHz, 512 GiB RAM (32 cores, total) Ubuntu 12.04, gcc 4.6.1 (full optimizations) data road network of Western Europe (provided by PTV AG)

directed, weighted graph, single SCC 18 million vertices, 24 million arcs

(degree two vertices removed)

travel-time metric

1 000 queries at random / data point

(of random Dijkstra rank / of fixed Dijkstra rank)

slide-68
SLIDE 68

Runtime Analysis

iterations of penalty method

14

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 5 10 15 20 Dijkstra Rank Iterations [#] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical

  • ur approach
slide-69
SLIDE 69

Runtime Analysis

engineering impact

15

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000 Dijkstra Rank Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical

slide-70
SLIDE 70

Runtime Analysis

engineering impact

15

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical +new selection & penalties

slide-71
SLIDE 71

Runtime Analysis

engineering impact

15

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical +new selection & penalties +crp

slide-72
SLIDE 72

Runtime Analysis

engineering impact

15

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical +new selection & penalties +crp +both

slide-73
SLIDE 73

Runtime Analysis

engineering impact

15

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical +new selection & penalties +crp +both +both +adaptive customization = CRP−π

slide-74
SLIDE 74

Runtime Analysis

engineering impact – multi-cores

15

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 1 2 4 8 12 16

cores

slide-75
SLIDE 75

Quality Analysis

alternative graph quality

16

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

algorithm rating queries decision arcs

[BADER ET AL. 11]

3.21 100 ≤ 10.0

[RADERMACHER 12]

2.89 1 000 7.0 CRP-π 3.32 1 000

(unfiltered) 17.4

CRP-π 2.89 1 000

(filtered) 9.5

comparable results to previous penalty methods

best previous work only considered tiny test set

filtering to reduce decision arcs (≈100µs)

  • nly for comparison to previous penalty methods

reduces potential for extracting multiple alternative routes

(not applied in subsequent alternative route analysis)

slide-76
SLIDE 76

Quality Analysis

alternative route quality

17

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

# algorithm success [%] stretch [%] sharing [%]

  • ptimality [%]

1st X-BDV 96.0 10.0 41.8 75.4 X-CHV 89.6 80.4 40.6 68.1 CRP-π 96.3 42.9 31.9 26.9 2nd X-BDV 87.6 13.8 59.5 65.1 X-CHV 72.5 269.0 57.6 57.2 CRP-π 84.0 47.6 45.9 22.1 3rd X-BDV 75.5 17.2 65.6 54.6 X-CHV 51.4 214.0 63.6 46.8 CRP-π 62.9 67.4 51.8 15.9 comparable success rates (corresponds to runtimes) reasonable path quality measures (lower stretch ⇐

⇒ higher sharing)

limited similarity to via-node alternativs (77.9% | 72.7% | 65.5%)

slide-77
SLIDE 77

Quality Analysis

alternative route quality

17

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

# algorithm success [%] stretch [%] sharing [%]

  • ptimality [%]

1st X-BDV 96.0 10.0 41.8 75.4 X-CHV 89.6 80.4 40.6 68.1 CRP-π 96.3 42.9 31.9 26.9 2nd X-BDV 87.6 13.8 59.5 65.1 X-CHV 72.5 269.0 57.6 57.2 CRP-π 84.0 47.6 45.9 22.1 3rd X-BDV 75.5 17.2 65.6 54.6 X-CHV 51.4 214.0 63.6 46.8 CRP-π 62.9 67.4 51.8 15.9 comparable success rates (corresponds to runtimes) reasonable path quality measures (lower stretch ⇐

⇒ higher sharing)

limited similarity to via-node alternativs (77.9% | 72.7% | 65.5%)

slide-78
SLIDE 78

Quality Analysis

alternative route quality

17

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

# algorithm success [%] stretch [%] sharing [%]

  • ptimality [%]

1st X-BDV 96.0 10.0 41.8 75.4 X-CHV 89.6 80.4 40.6 68.1 CRP-π 96.3 42.9 31.9 26.9 2nd X-BDV 87.6 13.8 59.5 65.1 X-CHV 72.5 269.0 57.6 57.2 CRP-π 84.0 47.6 45.9 22.1 3rd X-BDV 75.5 17.2 65.6 54.6 X-CHV 51.4 214.0 63.6 46.8 CRP-π 62.9 67.4 51.8 15.9 comparable success rates (corresponds to runtimes) reasonable path quality measures (lower stretch ⇐

⇒ higher sharing)

limited similarity to via-node alternativs (77.9% | 72.7% | 65.5%)

slide-79
SLIDE 79

Quality Analysis

alternative route quality

17

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

# algorithm success [%] stretch [%] sharing [%]

  • ptimality [%]

1st X-BDV 96.0 10.0 41.8 75.4 X-CHV 89.6 80.4 40.6 68.1 CRP-π 96.3 42.9 31.9 26.9 2nd X-BDV 87.6 13.8 59.5 65.1 X-CHV 72.5 269.0 57.6 57.2 CRP-π 84.0 47.6 45.9 22.1 3rd X-BDV 75.5 17.2 65.6 54.6 X-CHV 51.4 214.0 63.6 46.8 CRP-π 62.9 67.4 51.8 15.9 comparable success rates (corresponds to runtimes) reasonable path quality measures (lower stretch ⇐

⇒ higher sharing)

limited similarity to via-node alternativs (77.9% | 72.7% | 65.5%)

slide-80
SLIDE 80

Conclusion

18

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

Summary first fast implemenation of penalty method, suited for interactive use

(utilizing vector units and multi-core capabilities of modern CPUs)

extracted routes of high quality, and distinct from via-node approach

(first quantitative analysis of extracted routes from alternative graphs)

Open Problems general classification scheme for good alternatives

(set of criteria, not tailored to a specific approach)

improve runtime to compete with via-node approach

(combination with [PARASKEVOPOULOS&ZAROLIAGIS 13] seems promising)

slide-81
SLIDE 81

Thank you for your attention!

19

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

Time for questions!

slide-82
SLIDE 82

References

20

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

[DIJKSTRA 59]

A Note on Two Problems in Connexion with Graphs

[ABRAHAM ET AL. 10]

Alternative Routes in Road Networks

[BADER ET AL. 11]

Alternative Route Graphs in Road Networks

[DELLING ET AL. 13]

Customizable Route Planning

[DELLING&WERNECK 13]

Faster Customization of Road Networks

[PARASKEVOPOULOS&ZAROLIAGIS 13]

Improved Alternative Route Planning

[RADERMACHER 12]

Schnelle Berechnung von Alternativgraphen

slide-83
SLIDE 83

Appendix

21

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

backup slides

slide-84
SLIDE 84

Motivation

why consider alternative routes?

22

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

business perspective provide options

(users have varied preferences)

  • vercome flaws in model and data

(shortest paths need not be best in reality)

research perspective building blocks

(traffic simulation, stochastic routing)

hard optimization problems

(quality guarantees)

slide-85
SLIDE 85

Motivation

why consider alternative routes?

22

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

business perspective provide options

(users have varied preferences)

  • vercome flaws in model and data

(shortest paths need not be best in reality)

research perspective building blocks

(traffic simulation, stochastic routing)

hard optimization problems

(quality guarantees)

slide-86
SLIDE 86

Motivation

why consider alternative routes?

22

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

business perspective provide options

(users have varied preferences)

  • vercome flaws in model and data

(shortest paths need not be best in reality)

research perspective building blocks

(traffic simulation, stochastic routing)

hard optimization problems

(quality guarantees)

slide-87
SLIDE 87

Motivation

why consider alternative routes?

22

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

business perspective provide options

(users have varied preferences)

  • vercome flaws in model and data

(shortest paths need not be best in reality)

research perspective building blocks

(traffic simulation, stochastic routing)

hard optimization problems

(quality guarantees)

slide-88
SLIDE 88

Related Work

peering into the distant past...

23

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

simple approaches to find distinct routes k-shortest path

(meaningful alternatives only for large k)

multi-criteria optimization

(distance ⇐ ⇒ difference)

time-dependent routes

(alternatives not guaranteed, limited data)

slide-89
SLIDE 89

Related Work

peering into the distant past...

23

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

simple approaches to find distinct routes k-shortest path

(meaningful alternatives only for large k)

multi-criteria optimization

(distance ⇐ ⇒ difference)

time-dependent routes

(alternatives not guaranteed, limited data)

slide-90
SLIDE 90

Related Work

peering into the distant past...

23

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

simple approaches to find distinct routes k-shortest path

(meaningful alternatives only for large k)

multi-criteria optimization

(distance ⇐ ⇒ difference)

time-dependent routes

(alternatives not guaranteed, limited data)

slide-91
SLIDE 91

Related Work

peering into the distant past...

23

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

simple approaches to find distinct routes k-shortest path

(meaningful alternatives only for large k)

multi-criteria optimization

(distance ⇐ ⇒ difference)

time-dependent routes

(alternatives not guaranteed, limited data)

slide-92
SLIDE 92

Related Work

peering into the distant past...

23

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

simple approaches to find distinct routes k-shortest path

(meaningful alternatives only for large k)

multi-criteria optimization

(distance ⇐ ⇒ difference)

time-dependent routes

(alternatives not guaranteed, limited data)

slide-93
SLIDE 93

Related Work

peering into the distant past...

23

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

simple approaches to find distinct routes k-shortest path

(meaningful alternatives only for large k)

multi-criteria optimization

(distance ⇐ ⇒ difference)

time-dependent routes

(alternatives not guaranteed, limited data)

insufficient solutions to the problem

slide-94
SLIDE 94

Penalty Method

penalization (1)

24

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

requirements enable discovery of diverse routes

⇒ penalties on arcs of current route

(discourage previous routes)

⇒ penalties on adjoined arcs

(discourage meandering)

quick discovery of diverse routes

⇒ generate lots of new information in each iteration ⇒ speed ⇐ ⇒ quality

slide-95
SLIDE 95

Penalty Method

penalization (1)

24

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

requirements enable discovery of diverse routes

⇒ penalties on arcs of current route

(discourage previous routes)

⇒ penalties on adjoined arcs

(discourage meandering)

quick discovery of diverse routes

⇒ generate lots of new information in each iteration ⇒ speed ⇐ ⇒ quality

slide-96
SLIDE 96

Penalty Method

penalization (1)

24

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

requirements enable discovery of diverse routes

⇒ penalties on arcs of current route

(discourage previous routes)

⇒ penalties on adjoined arcs

(discourage meandering)

quick discovery of diverse routes

⇒ generate lots of new information in each iteration ⇒ speed ⇐ ⇒ quality

slide-97
SLIDE 97

Penalty Method

penalization (1)

24

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

requirements enable discovery of diverse routes

⇒ penalties on arcs of current route

(discourage previous routes)

⇒ penalties on adjoined arcs

(discourage meandering)

quick discovery of diverse routes

⇒ generate lots of new information in each iteration ⇒ speed ⇐ ⇒ quality

slide-98
SLIDE 98

Penalty Method

penalization (1)

24

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

requirements enable discovery of diverse routes

⇒ penalties on arcs of current route

(discourage previous routes)

⇒ penalties on adjoined arcs

(discourage meandering)

quick discovery of diverse routes

⇒ generate lots of new information in each iteration ⇒ speed ⇐ ⇒ quality

⇒ how to choose penalty values?

slide-99
SLIDE 99

Penalty Method

penalization (2)

25

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

additive penalties (classical method) add fraction of arc/path costs (w.r.t. original metric)

⇒ shortest paths only change slowly

geometrically growing penalties (our approach) multiply arc costs on current route by small factor

⇒ often used paths quickly become undesirable

add 1

2

  • (current route cost) to adjoined arc costs

⇒ discourages short detours on long routes

slide-100
SLIDE 100

Penalty Method

penalization (2)

25

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

additive penalties (classical method) add fraction of arc/path costs (w.r.t. original metric)

⇒ shortest paths only change slowly

geometrically growing penalties (our approach) multiply arc costs on current route by small factor

⇒ often used paths quickly become undesirable

add 1

2

  • (current route cost) to adjoined arc costs

⇒ discourages short detours on long routes

slide-101
SLIDE 101

Penalty Method

penalization (2)

25

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

additive penalties (classical method) add fraction of arc/path costs (w.r.t. original metric)

⇒ shortest paths only change slowly

geometrically growing penalties (our approach) multiply arc costs on current route by small factor

⇒ often used paths quickly become undesirable

add 1

2

  • (current route cost) to adjoined arc costs

⇒ discourages short detours on long routes

slide-102
SLIDE 102

Penalty Method

penalization (2)

25

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

additive penalties (classical method) add fraction of arc/path costs (w.r.t. original metric)

⇒ shortest paths only change slowly

geometrically growing penalties (our approach) multiply arc costs on current route by small factor

⇒ often used paths quickly become undesirable

add 1

2

  • (current route cost) to adjoined arc costs

⇒ discourages short detours on long routes

slide-103
SLIDE 103

Penalty Method

penalization (2)

25

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

additive penalties (classical method) add fraction of arc/path costs (w.r.t. original metric)

⇒ shortest paths only change slowly

geometrically growing penalties (our approach) multiply arc costs on current route by small factor

⇒ often used paths quickly become undesirable

add 1

2

  • (current route cost) to adjoined arc costs

⇒ discourages short detours on long routes

slide-104
SLIDE 104

Runtime Analysis

restriction of maximum crp level

26

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000 Dijkstra Rank Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 5

max lvl

slide-105
SLIDE 105

Runtime Analysis

restriction of maximum crp level

26

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 5 4

max lvl

slide-106
SLIDE 106

Runtime Analysis

restriction of maximum crp level

26

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 5 4 3

max lvl

slide-107
SLIDE 107

Runtime Analysis

restriction of maximum crp level

26

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 5 4 3 2

max lvl

slide-108
SLIDE 108

Runtime Analysis

restriction of maximum crp level

26

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 5 4 3 2 1

max lvl

slide-109
SLIDE 109

Runtime Analysis

restriction of maximum crp level

26

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000

  • Dijkstra Rank

Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 5 4 3 2 1 d

max lvl

slide-110
SLIDE 110

Runtime Analysis

  • ptimal selection of maximum crp level

27

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

1 10 100 1000 10000 Dijkstra Rank Query Time [ms] 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 classical CRP−π (dynamic level selection), 16 cores CRP−π (rank best selection), 16 cores

slide-111
SLIDE 111

Quality Analysis

alternative route structure

28

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

differences between penalty & via-node alternatives procedure

consider all CRP-π routes for each, find via-node alternative with most overlap

(test each vertex on CRP-π route as via-node)

average maximum overlap

77.9% | 72.7% | 65.5% (1st – 3rd alternative) higher order alternatives increasingly distinct

(first routes likely extracted by via-node approach)

slide-112
SLIDE 112

Quality Analysis

alternative route structure

28

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

differences between penalty & via-node alternatives procedure

consider all CRP-π routes for each, find via-node alternative with most overlap

(test each vertex on CRP-π route as via-node)

average maximum overlap

77.9% | 72.7% | 65.5% (1st – 3rd alternative) higher order alternatives increasingly distinct

(first routes likely extracted by via-node approach)

slide-113
SLIDE 113

Quality Analysis

alternative route structure

28

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

differences between penalty & via-node alternatives procedure

consider all CRP-π routes for each, find via-node alternative with most overlap

(test each vertex on CRP-π route as via-node)

average maximum overlap

77.9% | 72.7% | 65.5% (1st – 3rd alternative) higher order alternatives increasingly distinct

(first routes likely extracted by via-node approach)

slide-114
SLIDE 114

Quality Analysis

alternative route structure

28

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

differences between penalty & via-node alternatives procedure

consider all CRP-π routes for each, find via-node alternative with most overlap

(test each vertex on CRP-π route as via-node)

average maximum overlap

77.9% | 72.7% | 65.5% (1st – 3rd alternative) higher order alternatives increasingly distinct

(first routes likely extracted by via-node approach)

slide-115
SLIDE 115

Quality Analysis

alternative route structure

28

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

differences between penalty & via-node alternatives procedure

consider all CRP-π routes for each, find via-node alternative with most overlap

(test each vertex on CRP-π route as via-node)

average maximum overlap

77.9% | 72.7% | 65.5% (1st – 3rd alternative) higher order alternatives increasingly distinct

(first routes likely extracted by via-node approach)

slide-116
SLIDE 116

Quality Analysis

alternative route structure

28

Kobitzsch, Radermacher, Schieferdecker: Evolution and Evaluation of the Penalty Method for Alternative Graphs Institute of Theoretical Informatics Algorithmics

differences between penalty & via-node alternatives procedure

consider all CRP-π routes for each, find via-node alternative with most overlap

(test each vertex on CRP-π route as via-node)

average maximum overlap

77.9% | 72.7% | 65.5% (1st – 3rd alternative) higher order alternatives increasingly distinct

(first routes likely extracted by via-node approach)

⇒ CRP-π provides distinct routes a via-node approach cannot find