An Optimization-Based Approach for Continuous Map Generalization - - PowerPoint PPT Presentation

an optimization based approach for continuous map
SMART_READER_LITE
LIVE PREVIEW

An Optimization-Based Approach for Continuous Map Generalization - - PowerPoint PPT Presentation

An Optimization-Based Approach for Continuous Map Generalization Dongliang Peng Chair of Computer Science I, University of W urzburg, Germany 1 Marienkapelle [source: Wikipedia] [Google Maps] 2-1 scroll Marienkapelle [source:


slide-1
SLIDE 1

1

An Optimization-Based Approach for Continuous Map Generalization

Dongliang Peng

Chair of Computer Science I, University of W¨ urzburg, Germany

slide-2
SLIDE 2

2-1 [Google Maps] Marienkapelle [source: Wikipedia]

slide-3
SLIDE 3

2-2 [Google Maps] Marienkapelle [source: Wikipedia] scroll

slide-4
SLIDE 4

2-3 [Google Maps] Marienkapelle [source: Wikipedia] scroll scroll

slide-5
SLIDE 5

2-4 [Google Maps] Marienkapelle [source: Wikipedia] scroll scroll scroll

slide-6
SLIDE 6

2-5 [Google Maps] Marienkapelle [source: Wikipedia] Buildings disappear suddenly! scroll scroll scroll

slide-7
SLIDE 7

2-6 [Google Maps] Marienkapelle [source: Wikipedia] Buildings disappear suddenly! scroll scroll scroll Smooth changes provide better experience!

slide-8
SLIDE 8

3-1

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map.

slide-9
SLIDE 9

3-2

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]:

slide-10
SLIDE 10

3-3

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]: Elimination

slide-11
SLIDE 11

3-4

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]: Elimination Simplification

slide-12
SLIDE 12

3-5

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]: Elimination Simplification Aggregation

slide-13
SLIDE 13

3-6

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]: Elimination Simplification Aggregation

  • Classifi. & Symboli.
slide-14
SLIDE 14

3-7

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]: Elimination Simplification Aggregation Exaggeration

  • Classifi. & Symboli.
slide-15
SLIDE 15

3-8

Map Generalization. . .

. . . is about deriving a smaller-scale map from an existing map. Typical generalization operators [ESRI 1996]: Elimination Simplification Aggregation Collapse Typification Exaggeration

  • Classifi. & Symboli.

Displacement Refinement

slide-16
SLIDE 16

4-1

Continuous Map Generalization...

t = 0 t = 1 . . . is to derive a series of maps with smooth changes. input input

slide-17
SLIDE 17

4-2

Continuous Map Generalization...

t = 0 t = 0.2 t = 1 . . . is to derive a series of maps with smooth changes. input input

slide-18
SLIDE 18

4-3

Continuous Map Generalization...

t = 0 t = 0.2 t = 0.4 t = 1 . . . is to derive a series of maps with smooth changes. input input

slide-19
SLIDE 19

4-4

Continuous Map Generalization...

t = 0 t = 0.6 t = 0.2 t = 0.4 t = 1 . . . is to derive a series of maps with smooth changes. input input

slide-20
SLIDE 20

4-5

Continuous Map Generalization...

t = 0 t = 0.6 t = 0.2 t = 0.8 t = 0.4 t = 1 . . . is to derive a series of maps with smooth changes. input input

slide-21
SLIDE 21

5-1

Related Work

  • Morph between polylines

[N¨

  • llenburg et al. 2008]
slide-22
SLIDE 22

5-2

Related Work

  • Morph between polylines

[N¨

  • llenburg et al. 2008]
  • Generate a good sequence of maps

[Chimani et al. 2014]

slide-23
SLIDE 23

5-3

Related Work

  • Morph between polylines

[N¨

  • llenburg et al. 2008]
  • Generate a good sequence of maps

[Chimani et al. 2014]

  • Data structure for continuous generalization

[van Oosterom et al. 2014]

space scale cube (SSC)

slide-24
SLIDE 24

5-4

Related Work

  • Morph between polylines

[N¨

  • llenburg et al. 2008]
  • Generate a good sequence of maps

[Chimani et al. 2014]

  • Data structure for continuous generalization

[van Oosterom et al. 2014]

export space scale cube (SSC) zoom

  • ut
slide-25
SLIDE 25

6-1 Contents of Thesis Optim. Related Generalization

slide-26
SLIDE 26

6-2 Contents of Thesis Optim.

Optimal sequence for aggregation

Related Generalization

slide-27
SLIDE 27

6-3 Contents of Thesis Optim.

A

ILP Optimal sequence for aggregation

Related Generalization

slide-28
SLIDE 28

6-4 Contents of Thesis Optim.

A

ILP Optimal sequence for aggregation

Related Generalization

Aggregation Classification

slide-29
SLIDE 29

6-5 Contents of Thesis Optim.

A

ILP Optimal sequence for aggregation Administrative boundaires

Related Generalization

Aggregation Classification

slide-30
SLIDE 30

6-6 Contents of Thesis Optim.

DP A

ILP Optimal sequence for aggregation Administrative boundaires

Related Generalization

Aggregation Classification

slide-31
SLIDE 31

6-7 Contents of Thesis Optim.

DP A

ILP Optimal sequence for aggregation Administrative boundaires Elimination Simplification

Related Generalization

Aggregation Classification

slide-32
SLIDE 32

6-8 Contents of Thesis Optim.

DP A

ILP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Elimination Simplification

Related Generalization

Aggregation Classification

slide-33
SLIDE 33

6-9 Contents of Thesis Optim.

DP MST A

ILP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Elimination Simplification

Related Generalization

Aggregation Classification

slide-34
SLIDE 34

6-10 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Elimination Simplification Exaggeration

Related Generalization

Aggregation Classification

slide-35
SLIDE 35

6-11 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Elimination Simplification Exaggeration

Related Generalization

Aggregation Classification

slide-36
SLIDE 36

6-12 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Elimination Simplification Exaggeration

Related Generalization

Aggregation Classification

slide-37
SLIDE 37

6-13 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Elimination Simplification Exaggeration Simplification

Related Generalization

Aggregation Classification

slide-38
SLIDE 38

6-14 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Choosing right data structures Elimination Simplification Exaggeration Simplification

Related Generalization

2ε p Aggregation Classification SortedDictionary, SortedSet, . . .

slide-39
SLIDE 39

6-15 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Choosing right data structures Elimination Simplification Exaggeration Simplification

Related Generalization

2ε p Aggregation Classification SortedDictionary, SortedSet, . . .

slide-40
SLIDE 40

6-16 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Choosing right data structures Elimination Simplification Exaggeration Simplification

Related Generalization

2ε p Aggregation Classification SortedDictionary, SortedSet, . . .

slide-41
SLIDE 41

7-1

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-42
SLIDE 42

7-2

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-43
SLIDE 43

7-3

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-44
SLIDE 44

7-4

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-45
SLIDE 45

7-5

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-46
SLIDE 46

7-6

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-47
SLIDE 47

7-7

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-48
SLIDE 48

7-8

Research Problem

input input village, town, city ly sport facility ly swamp ly

slide-49
SLIDE 49

7-9

Research Problem

Given aggregation costs:

What is an optimal sequence?

input input village, town, city ly sport facility ly swamp ly

slide-50
SLIDE 50

8-1

Preliminaries

start map goal map

slide-51
SLIDE 51

8-2

Preliminaries

p3 Polygon pi start map goal map p1 p2 p4 p5 : area on start map

slide-52
SLIDE 52

8-3

Preliminaries

Patch ui u1 u5 u6 u7 u6 Polygon pi start map goal map u3 u1 u2 u4 u5 : connected set of areas : area on start map

slide-53
SLIDE 53

8-4

Preliminaries

Patch ui Region Ri R1 R2 Polygon pi start map goal map R1 R2 R1 R2 : connected set of areas : area on start map : area on the goal map

slide-54
SLIDE 54

8-5

Preliminaries

Patch ui Region Ri R1 R2 Aggregate the smallest patch with its neighbour Polygon pi start map goal map R1 R2 R1 R2 : connected set of areas : area on start map : area on the goal map

slide-55
SLIDE 55

9-1

Interleave Aggregation Sequences

input input

slide-56
SLIDE 56

9-2

Interleave Aggregation Sequences

input input input input

  • utput

input input

  • utput

Compute a sequence for each region

slide-57
SLIDE 57

9-3

Interleave Aggregation Sequences

Interleave according to order of smallest areas (as merge sort)

input input

  • utput
  • utput
  • utput

input input

  • utput

input input

  • utput

Compute a sequence for each region

slide-58
SLIDE 58

9-4

Interleave Aggregation Sequences

Interleave according to order of smallest areas (as merge sort)

input input

  • utput
  • utput
  • utput

input input

  • utput

input input

  • utput

Compute a sequence for each region

slide-59
SLIDE 59

10-1

Subdivision

Subdivision Pt,i

P2,2 P2,1 P2,3 P3,2 P3,1 P3,3 P3,4 P3,5 Pgoal = P4,1 Pstart = P1,1 P2,4

: patches subdividing a region

slide-60
SLIDE 60

10-2

Subdivision

Subdivision Pt,i

P2,2 P2,1 P2,3 P3,2 P3,1 P3,3 P3,4 P3,5 Pgoal = P4,1 Pstart = P1,1 P2,4

Size n : patches subdividing a region : #polygons on start map n = 4

slide-61
SLIDE 61

10-3

Subdivision

Subdivision Pt,i

P2,2 P2,1 P2,3 P3,2 P3,1 P3,3 P3,4 P3,5 Pgoal = P4,1 Pstart = P1,1 P2,4

Size n #subdivions is exponential in n. : patches subdividing a region : #polygons on start map n = 4

slide-62
SLIDE 62

11-1

Formalizing a Pathfinding Problem

start goal

slide-63
SLIDE 63

11-2

Formalizing a Pathfinding Problem

  • Each subdivision is represented as a node

start goal

slide-64
SLIDE 64

11-3

Formalizing a Pathfinding Problem

  • Each subdivision is represented as a node
  • Find a shortest path w.r.t. cost functions

start goal

slide-65
SLIDE 65

12-1

Cost Function

  • Type change: ftype(Ps,i, Ps+1,j)

We wish to aggregate patches with similar types Ps,i Ps+1,j u v village, town, city ly sport facility ly swamp ly lake, pond

slide-66
SLIDE 66

12-2

Cost Function

  • Type change: ftype(Ps,i, Ps+1,j)

We wish to aggregate patches with similar types Ps,i Ps+1,j u v village, town, city ly sport facility ly swamp ly lake, pond

slide-67
SLIDE 67

12-3

Cost Function

  • Type change: ftype(Ps,i, Ps+1,j)

We wish to aggregate patches with similar types Ps,i Ps+1,j u v village, town, city ly sport facility ly swamp ly lake, pond ℓint(Ps,k) = 19.5

6.2 3.9 2.8 3.7 2.9

  • Interior length: flength(Ps,k)

Less length, easier to perceive

slide-68
SLIDE 68

12-4

Cost Function

  • Type change: ftype(Ps,i, Ps+1,j)

We wish to aggregate patches with similar types Ps,i Ps+1,j u v village, town, city ly sport facility ly swamp ly lake, pond ℓint(Ps,k) = 19.5

6.2 3.9 2.8 3.7 2.9

  • Interior length: flength(Ps,k)

Less length, easier to perceive

slide-69
SLIDE 69

13-1

Cost Function

  • Path Π = (P1,i1, P2,i2, . . . , Pt,it)
slide-70
SLIDE 70

13-2

Cost Function

  • Path Π = (P1,i1, P2,i2, . . . , Pt,it)

gtype(Π) =

t−1

  • s=1

ftype(Ps,is, Ps+1,is+1) glength(Π) =

t−1

  • s=2

flength(Ps,is)

slide-71
SLIDE 71

13-3

Cost Function

  • Path Π = (P1,i1, P2,i2, . . . , Pt,it)
  • Combination of the two costs:

g(Π) = (1 − λ)gtype(Π) + λglength(Π) gtype(Π) =

t−1

  • s=1

ftype(Ps,is, Ps+1,is+1) glength(Π) =

t−1

  • s=2

flength(Ps,is)

slide-72
SLIDE 72

13-4

Cost Function

  • Path Π = (P1,i1, P2,i2, . . . , Pt,it)
  • Combination of the two costs:

g(Π) = (1 − λ)gtype(Π) + λglength(Π)

λ = 0.5

gtype(Π) =

t−1

  • s=1

ftype(Ps,is, Ps+1,is+1) glength(Π) =

t−1

  • s=2

flength(Ps,is)

slide-73
SLIDE 73

14-1

A

⋆ Algorithm

  • A best-first search algorithm. Find a path from s to t

s t

slide-74
SLIDE 74

14-2

A

⋆ Algorithm

  • A best-first search algorithm. Find a path from s to t
  • Cost function: F(u) = g(u) + h(u)

– g(u): exact cost of s-u path – h(u): estimated cost of shortest u-t path s u t g(u) h(u)

slide-75
SLIDE 75

14-3

A

⋆ Algorithm

  • A best-first search algorithm. Find a path from s to t
  • Cost function: F(u) = g(u) + h(u)

– g(u): exact cost of s-u path – h(u): estimated cost of shortest u-t path

  • Guarantees a shortest path if

h(u) is smaller than real cost s u t g(u) h(u)

slide-76
SLIDE 76

14-4

A

⋆ Algorithm

  • A best-first search algorithm. Find a path from s to t
  • Cost function: F(u) = g(u) + h(u)

– g(u): exact cost of s-u path – h(u): estimated cost of shortest u-t path

  • Guarantees a shortest path if

h(u) is smaller than real cost s u t g(u) h(u)

  • Helps ignore some paths
slide-77
SLIDE 77

15-1

Estimating Cost

  • htype(Pt,i) = n−1

s=t ftype(Ps,is, Ps+1,is+1)

We assume: Each patch immediately gets the target type.

P2,i2 P3,i3 P4,i4 P5,i5

s u t g(u) h(u)

slide-78
SLIDE 78

15-2

Estimating Cost

  • hlength(Pt,i)
  • htype(Pt,i) = n−1

s=t ftype(Ps,is, Ps+1,is+1)

We assume: Each patch immediately gets the target type.

P2,i2 P3,i3 P4,i4 P5,i5

s u t g(u) h(u)

slide-79
SLIDE 79

16-1

Overestimation

  • Try finding a path by exploring at most M = 200,000
  • nodes. If fail, try again but increasing estimated costs.

start goal

slide-80
SLIDE 80

16-2

Overestimation

  • Try finding a path by exploring at most M = 200,000
  • nodes. If fail, try again but increasing estimated costs.
  • A path seems more expensive, thus may be ignored

start goal

slide-81
SLIDE 81

16-3

Overestimation

  • Try finding a path by exploring at most M = 200,000
  • nodes. If fail, try again but increasing estimated costs.
  • Not optimal anymore
  • nce increasing estimated costs
  • A path seems more expensive, thus may be ignored

start goal

slide-82
SLIDE 82

17-1

Integer Linear Programming

Form of an integer linear program (ILP) minimize C Tx subject to Ex ≤ H, x ≥ 0 0, and x ∈ ZI,

slide-83
SLIDE 83

17-2

Integer Linear Programming

Form of an integer linear program (ILP) minimize C Tx subject to Ex ≤ H, x ≥ 0 0, and x ∈ ZI, Given variables x, minimize a cost subject to some constraints.

slide-84
SLIDE 84

17-3

Integer Linear Programming

Form of an integer linear program (ILP) minimize C Tx subject to Ex ≤ H, x ≥ 0 0, and x ∈ ZI, Given variables x, minimize a cost subject to some constraints.

slide-85
SLIDE 85

18-1

Using Integer Linear Programming

start goal

  • Model complete graph by setting variables and constraints
slide-86
SLIDE 86

18-2

Using Integer Linear Programming

start goal

  • Model complete graph by setting variables and constraints
  • Solve ILP with minimizing total cost
slide-87
SLIDE 87

18-3

Using Integer Linear Programming

start goal

  • Model complete graph by setting variables and constraints
  • Solve ILP with minimizing total cost
  • Define path according to values of variables, known from

solution

slide-88
SLIDE 88

19-1

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3

p r q p r q p r q

slide-89
SLIDE 89

19-2

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3 x1,p,r = 0 x1,r,r = 1

p r q

x1,q,r = 0

p r q p r q

slide-90
SLIDE 90

19-3

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3 x1,p,r = 0 x1,r,r = 1

p r q

x2,p,r = 1 x2,r,r = 1 x1,q,r = 0 x2,q,r = 0

p r q p r q

slide-91
SLIDE 91

19-4

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3 x1,p,r = 0 x1,r,r = 1

p r q

x2,p,r = 1 x2,r,r = 1 x3,p,r = 1 x3,r,r = 1 x1,q,r = 0 x2,q,r = 0 x3,q,r = 1

p r q p r q

slide-92
SLIDE 92

19-5

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3 x1,p,r = 0 x1,r,r = 1

p r q

x2,p,r = 1 x2,r,r = 1 x3,p,r = 1 x3,r,r = 1 x1,q,r = 0 x2,q,r = 0 x3,q,r = 1

p r q p r q

  • Constraints:

p is assigned to only one polygon:

r∈P xt,p,r = 1

slide-93
SLIDE 93

19-6

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3 x1,p,r = 0 x1,r,r = 1

p r q

x2,p,r = 1 x2,r,r = 1 x3,p,r = 1 x3,r,r = 1 x1,q,r = 0 x2,q,r = 0 x3,q,r = 1

p r q p r q

  • Constraints:

p is assigned to only one polygon: Enforce aggregation:

  • r∈P xt,p,r = 1
  • r∈P xt,r,r = n − t + 1
slide-94
SLIDE 94

19-7

Example Variable and Constraints

  • Variable: xt,p,r ∈ {0, 1}

∀t ∈ T, ∀p, r ∈ P xt,p,r = 1 ⇔ p is assigned to r at time t.

t = 1 t = 2 t = 3 x1,p,r = 0 x1,r,r = 1

p r q

x2,p,r = 1 x2,r,r = 1 x3,p,r = 1 x3,r,r = 1 x1,q,r = 0 x2,q,r = 0 x3,q,r = 1

p r q p r q

  • Constraints:

p is assigned to only one polygon: Enforce aggregation:

  • r∈P xt,p,r = 1
  • r∈P xt,r,r = n − t + 1
  • In total,

5 sets of variables 17 sets of constraints

slide-95
SLIDE 95

20-1

Case Study

  • Environment: C#, CPLEX
slide-96
SLIDE 96

20-2

Case Study

  • Environment: C#, CPLEX

5,448 patches scale 1 : 50 k 734 patches (regions) scale 1 : 250 k

  • Data
slide-97
SLIDE 97

21

Comparison of A

⋆ and ILP 1–5 6–10 11–15 16–20 21–25 26–36 25 50 75 100 n: number of polygons percent (%) A

ILP160 s ILP600 s percentage of regions that were found optimal solutions

slide-98
SLIDE 98

22-1

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-99
SLIDE 99

22-2

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-100
SLIDE 100

22-3

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-101
SLIDE 101

22-4

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-102
SLIDE 102

22-5

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-103
SLIDE 103

22-6

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-104
SLIDE 104

22-7

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-105
SLIDE 105

22-8

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-106
SLIDE 106

22-9

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-107
SLIDE 107

22-10

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-108
SLIDE 108

22-11

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-109
SLIDE 109

22-12

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-110
SLIDE 110

22-13

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-111
SLIDE 111

22-14

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-112
SLIDE 112

22-15

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-113
SLIDE 113

22-16

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-114
SLIDE 114

22-17

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-115
SLIDE 115

22-18

An Optimal Sequence by A

⋆ 300 m start (n = 17) goal

slide-116
SLIDE 116

23 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Choosing right data structures Elimination Simplification Exaggeration Simplification

Related Generalization

2ε p Aggregation Classification SortedDictionary, SortedSet, . . .

slide-117
SLIDE 117

24-1

Generalizing Buildings to Built-up Areas

400 m Input: buildings

slide-118
SLIDE 118

24-2

Generalizing Buildings to Built-up Areas

400 m Input: buildings

slide-119
SLIDE 119

25-1

Aggregate and Grow

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out
slide-120
SLIDE 120

25-2

Aggregate and Grow

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out
  • Bridges and buildings constitute

a minimum spanning tree (MST)

slide-121
SLIDE 121

25-3

Aggregate and Grow

t = 0

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

slide-122
SLIDE 122

25-4

Aggregate and Grow

grow t = 0 t = 0.4

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

add bridge

slide-123
SLIDE 123

25-5

Aggregate and Grow

grow t = 0 t = 0.4

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

add bridge

slide-124
SLIDE 124

25-6

Aggregate and Grow

grow grow t = 0 t = 0.4 t = 0.6

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

add bridge add bridge

slide-125
SLIDE 125

25-7

Aggregate and Grow

grow grow t = 0 t = 0.4 t = 0.6

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

add bridge add bridge

slide-126
SLIDE 126

25-8

Aggregate and Grow

grow grow grow t = 0 t = 0.4 t = 0.6 t = 1

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

add bridge add bridge add bridge

slide-127
SLIDE 127

25-9

Aggregate and Grow

grow grow grow t = 0 t = 0.4 t = 0.6 t = 1

  • riginal buildings
  • Aggregate buildings that are too close, when zooming out

zoom out: t increases

  • Bridges and buildings constitute

a minimum spanning tree (MST)

add bridge add bridge add bridge

slide-128
SLIDE 128

26-1

Three Join Types of Buffering

building

slide-129
SLIDE 129

26-2

Three Join Types of Buffering

building miter: keep right angles

slide-130
SLIDE 130

26-3

Three Join Types of Buffering

building miter: keep right angles dG

slide-131
SLIDE 131

26-4

Three Join Types of Buffering

building square: avoid long spikes miter: keep right angles dG

slide-132
SLIDE 132

26-5

Three Join Types of Buffering

building square: avoid long spikes miter: keep right angles dG dG dG dG

slide-133
SLIDE 133

26-6

Three Join Types of Buffering

building square: avoid long spikes miter: keep right angles dG round: detect if two buildings are too close dG dG dG

slide-134
SLIDE 134

27-1

Simpifying Based on Dilation and Erosion

polygon d

slide-135
SLIDE 135

27-2

Simpifying Based on Dilation and Erosion

polygon dilate with d: remove dents d

slide-136
SLIDE 136

27-3

Simpifying Based on Dilation and Erosion

polygon dilate with d: remove dents erode with 2d: remove bumps d

slide-137
SLIDE 137

27-4

Simpifying Based on Dilation and Erosion

polygon dilate with d: remove dents erode with 2d: remove bumps dilate with d d

slide-138
SLIDE 138

28-1

Case Study

  • Runtime: O(n3),

n: total number of edges over all input buildings

slide-139
SLIDE 139

28-2

Case Study

  • Environment

C#, Clipper (for buffering, dilation, erosion, and merge)

  • Runtime: O(n3),

n: total number of edges over all input buildings

slide-140
SLIDE 140

28-3

Case Study

  • Environment

C#, Clipper (for buffering, dilation, erosion, and merge)

  • Runtime: O(n3),

n: total number of edges over all input buildings

  • Data: 2.5 k buildings, n = 19 k edges, 1 : 15 k,

dG = 25 m (IGN)

slide-141
SLIDE 141

28-4

Case Study

  • Environment

C#, Clipper (for buffering, dilation, erosion, and merge)

  • Runtime: O(n3),

n: total number of edges over all input buildings

  • Data: 2.5 k buildings, n = 19 k edges, 1 : 15 k,

dG = 25 m (IGN)

  • 12 min for computing a sequence of 10 maps
slide-142
SLIDE 142

29-1

Animation

400 m zooming out

slide-143
SLIDE 143

29-2

Animation

400 m zooming out

slide-144
SLIDE 144

29-3

Animation

400 m zooming out

slide-145
SLIDE 145

29-4

Animation

400 m zooming out

slide-146
SLIDE 146

29-5

Animation

400 m zooming out

slide-147
SLIDE 147

29-6

Animation

400 m zooming out

slide-148
SLIDE 148

29-7

Animation

400 m zooming out

slide-149
SLIDE 149

29-8

Animation

400 m zooming out

slide-150
SLIDE 150

29-9

Animation

400 m zooming out

slide-151
SLIDE 151

29-10

Animation

400 m zooming out

slide-152
SLIDE 152

29-11

Animation

400 m zooming out

slide-153
SLIDE 153

30 Contents of Thesis

Aggregation, Simplification, Elimination

Optim.

DP MST A

ILP LSA DP Optimal sequence for aggregation Administrative boundaires Buildings to built-up areas Morphing polylines Choosing right data structures Elimination Simplification Exaggeration Simplification

Related Generalization

2ε p Aggregation Classification SortedDictionary, SortedSet, . . .

slide-154
SLIDE 154

31-1

Conclusion

  • Studied four topics of continuous generalization
slide-155
SLIDE 155

31-2

Conclusion

  • Studied four topics of continuous generalization
  • Used optimization methods to attain good results
slide-156
SLIDE 156

31-3

Conclusion

  • Studied four topics of continuous generalization
  • Used optimization methods to attain good results
  • Shared experience of using right data structures
slide-157
SLIDE 157

31-4

Conclusion

  • Studied four topics of continuous generalization
  • Used optimization methods to attain good results
  • Shared experience of using right data structures

Future work

  • Improve our methods
slide-158
SLIDE 158

31-5

Conclusion

  • Studied four topics of continuous generalization
  • Used optimization methods to attain good results
  • Shared experience of using right data structures

Future work

  • Improve our methods
  • Usability testing
slide-159
SLIDE 159

31-6

Conclusion

  • Studied four topics of continuous generalization
  • Used optimization methods to attain good results
  • Shared experience of using right data structures

Future work

  • Improve our methods
  • Usability testing
  • Work on complete maps

(with roads, buildings, ...) scroll

slide-160
SLIDE 160

31-7

Conclusion

Thank you!

  • Studied four topics of continuous generalization
  • Used optimization methods to attain good results
  • Shared experience of using right data structures

Future work

  • Improve our methods
  • Usability testing
  • Work on complete maps

(with roads, buildings, ...) scroll