Page 1
ModelComplexity
Approximation
Optimizing Active Rangesfor Consistent Dynamic Map Labeling
Ken Been1 Martin Nöllenburg2 Sheung-Hung Poon3
Alexander Wolff4
1Yeshiva University
2Universität Karlsruhe
3National Tsing Hua University
4TU Eindhoven
Been, Nöllenburg, Poon, Wolff 1 19 Dynamic Map Labeling
Page 2
ModelComplexity
Approximation
Outline
Model
Complexity
ApproximationTop-to-bottom sweep algorithmLevel-based algorithm
Been, Nöllenburg, Poon, Wolff 2 19 Dynamic Map Labeling
Page 3
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labels
proximity of feature and labelunambiguitymaximize number of labeled features
A-TownB-VillageC-City
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 4
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labels
proximity of feature and labelunambiguitymaximize number of labeled features
A-TownB-Village
C-City
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 5
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labelsproximity of feature and label
unambiguitymaximize number of labeled features
A-TownB-Village
C-City
airport
train station
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 6
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labelsproximity of feature and label
unambiguitymaximize number of labeled features
A-TownB-Village
C-City
airport
train station
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 7
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labelsproximity of feature and labelunambiguity
maximize number of labeled features
A-TownB-Village
C-City
airport
train station
hotelrestaurant
store
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 8
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labelsproximity of feature and labelunambiguity
maximize number of labeled features
A-TownB-Village
C-City
airport
train station
hotelrestaurant
store
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 9
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labelsproximity of feature and labelunambiguitymaximize number of labeled features
A-TownB-Village
C-City
airport
train station
hotelrestaurant
storecastle monumenthill
museum
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 10
ModelComplexity
Approximation
Requirements in static map labeling
non-overlapping labelsproximity of feature and labelunambiguitymaximize number of labeled features
A-TownB-Village
C-City
airport
train station
hotelrestaurant
storecastle monumenthill
museum opera
Been, Nöllenburg, Poon, Wolff 3 19 Dynamic Map Labeling
Page 11
ModelComplexity
Approximation
Requirements in dynamic map labeling
interactive maps add morerequirements
static map at each scalenon-overlapping labelsfeature–label proximityunambiguitymaximize label number
during zooming & panningno popping of labelsno jumping of labelsmap independent ofnavigation history
Been, Nöllenburg, Poon, Wolff 4 19 Dynamic Map Labeling
Page 12
ModelComplexity
Approximation
Static model
Static selectionBoolean function that selects subset of non-overlapping labels
Static placement1 transform label L to world coordinates
(by translation, rotation, dilation)2 transform world coordinates to screen coordinates with
dilation factor 1/s (define s as the scale of the map)
L L̂
y
x
Been, Nöllenburg, Poon, Wolff 5 19 Dynamic Map Labeling
Page 13
ModelComplexity
Approximation
Our dynamic model ∼[Been, Daiches, Yap 2006]Dynamic selectionBoolean function of scale selects each label Li in at most onescale interval [ai , Ai ], its active range
Dynamic placement
static placement L̂s for each scale scontinuous with stransforms label L to extended world coordinates (x , y , s)L̂s is cross section of extended world coordinates at scale s
Been, Nöllenburg, Poon, Wolff 6 19 Dynamic Map Labeling
Page 14
ModelComplexity
Approximation
Our dynamic model ∼[Been, Daiches, Yap 2006]Dynamic selectionBoolean function of scale selects each label Li in at most onescale interval [ai , Ai ], its active range → no popping
Dynamic placement
static placement L̂s for each scale scontinuous with stransforms label L to extended world coordinates (x , y , s)L̂s is cross section of extended world coordinates at scale s
Been, Nöllenburg, Poon, Wolff 6 19 Dynamic Map Labeling
Page 15
ModelComplexity
Approximation
Our dynamic model ∼[Been, Daiches, Yap 2006]Dynamic selectionBoolean function of scale selects each label Li in at most onescale interval [ai , Ai ], its active range → no popping
Dynamic placement
static placement L̂s for each scale scontinuous with stransforms label L to extended world coordinates (x , y , s)L̂s is cross section of extended world coordinates at scale s
Been, Nöllenburg, Poon, Wolff 6 19 Dynamic Map Labeling
Page 16
ModelComplexity
Approximation
Our dynamic model ∼[Been, Daiches, Yap 2006]Dynamic selectionBoolean function of scale selects each label Li in at most onescale interval [ai , Ai ], its active range → no popping
Dynamic placement
static placement L̂s for each scale scontinuous with s → no jumpingtransforms label L to extended world coordinates (x , y , s)L̂s is cross section of extended world coordinates at scale s
Been, Nöllenburg, Poon, Wolff 6 19 Dynamic Map Labeling
Page 17
ModelComplexity
Approximation
Extended world coordinates
scale as 3rd dimension
union of label shapesover scale: “extrusion”
restriction to active range:“truncated extrusion”
here:axis-aligned rectangular labelsinvariant-point placementproportional dilation
Been, Nöllenburg, Poon, Wolff 7 19 Dynamic Map Labeling
Page 18
ModelComplexity
Approximation
Active-range optimization
Problem
IN: • labels L1, . . . , Ln with dynamic placement,• available ranges [si , Si ] for i = 1, . . . , n.
OUT: active ranges [ai , Ai ] ⊆ [si , Si ] such that
– total active range height H =∑
i(Ai − ai) is max,– truncated extrusions do not overlap.
s
x
Been, Nöllenburg, Poon, Wolff 8 19 Dynamic Map Labeling
Page 19
ModelComplexity
Approximation
Active-range optimization
Problem
IN: • labels L1, . . . , Ln with dynamic placement,• available ranges [si , Si ] for i = 1, . . . , n.
OUT: active ranges [ai , Ai ] ⊆ [si , Si ] such that
– total active range height H =∑
i(Ai − ai) is max,– truncated extrusions do not overlap.
s
x
Been, Nöllenburg, Poon, Wolff 8 19 Dynamic Map Labeling
Page 20
ModelComplexity
Approximation
Active-range optimization
Problem
IN: • labels L1, . . . , Ln with dynamic placement,• available ranges [si , Si ] for i = 1, . . . , n.
OUT: active ranges [ai , Ai ] ⊆ [si , Si ] such that
– total active range height H =∑
i(Ai − ai) is max,– truncated extrusions do not overlap.
Simple problem
All available ranges are [0, Smax].
Been, Nöllenburg, Poon, Wolff 8 19 Dynamic Map Labeling
Page 21
ModelComplexity
Approximation
Outline
Model
Complexity
ApproximationTop-to-bottom sweep algorithmLevel-based algorithm
Been, Nöllenburg, Poon, Wolff 9 19 Dynamic Map Labeling
Page 22
ModelComplexity
Approximation
NP-hardness
TheoremThe active-range optimization problem is NP-hard –even the simple variant.
Sketch of proof
By reduction from PLANAR 3SAT.
Been, Nöllenburg, Poon, Wolff 10 19 Dynamic Map Labeling
Page 23
ModelComplexity
Approximation
NP-hardness
TheoremThe active-range optimization problem is NP-hard –even the simple variant.
Sketch of proof
By reduction from PLANAR 3SAT.
Been, Nöllenburg, Poon, Wolff 10 19 Dynamic Map Labeling
Page 24
ModelComplexity
Approximation
NP-hardness
TheoremThe active-range optimization problem is NP-hard –even the simple variant.
Sketch of proof
By reduction from PLANAR 3SAT.
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
planar 3SAT formula ϕ
Been, Nöllenburg, Poon, Wolff 10 19 Dynamic Map Labeling
Page 25
ModelComplexity
Approximation
NP-hardness
TheoremThe active-range optimization problem is NP-hard –even the simple variant.
Sketch of proof
By reduction from PLANAR 3SAT.
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
planar 3SAT formula ϕ
(set of labels, int k ) s.t.H ≥ k ⇔ ϕ satisfiable
Been, Nöllenburg, Poon, Wolff 10 19 Dynamic Map Labeling
Page 26
ModelComplexity
Approximation
NP-hardness
TheoremThe active-range optimization problem is NP-hard –even the simple variant.
Sketch of proof
By reduction from PLANAR 3SAT.
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
planar 3SAT formula ϕ
(set of labels, int k ) s.t.H ≥ k ⇔ ϕ satisfiable
Been, Nöllenburg, Poon, Wolff 10 19 Dynamic Map Labeling
Page 27
ModelComplexity
Approximation
NP-hardness
TheoremThe active-range optimization problem is NP-hard –even the simple variant.
Sketch of proof
By reduction from PLANAR 3SAT.
x1 ∨ x2 ∨ x3
x1 ∨ x3 ∨ x4
x1 ∨ x2 ∨ x4
x2 ∨ x3 ∨ x4
x1 x2 x3 x4
planar 3SAT formula ϕ
(set of labels, int k ) s.t.H ≥ k ⇔ ϕ satisfiable
Been, Nöllenburg, Poon, Wolff 10 19 Dynamic Map Labeling
Page 28
ModelComplexity
Approximation
Variable gadget
variable is true
Been, Nöllenburg, Poon, Wolff 11 19 Dynamic Map Labeling
Page 29
ModelComplexity
Approximation
Variable gadget
variable is false
Been, Nöllenburg, Poon, Wolff 11 19 Dynamic Map Labeling
Page 30
ModelComplexity
Approximation
Clause gadget
3 literals are true
Been, Nöllenburg, Poon, Wolff 12 19 Dynamic Map Labeling
Page 31
ModelComplexity
Approximation
Clause gadget
3 literals are true → contribution to H: 2 · Smax
Been, Nöllenburg, Poon, Wolff 12 19 Dynamic Map Labeling
Page 32
ModelComplexity
Approximation
Clause gadget
2 literals are true → contribution to H: 2 · Smax
Been, Nöllenburg, Poon, Wolff 12 19 Dynamic Map Labeling
Page 33
ModelComplexity
Approximation
Clause gadget
1 literal is true → contribution to H: 2 · Smax
Been, Nöllenburg, Poon, Wolff 12 19 Dynamic Map Labeling
Page 34
ModelComplexity
Approximation
Clause gadget
0 literals are true → contribution to H: ?
Been, Nöllenburg, Poon, Wolff 12 19 Dynamic Map Labeling
Page 35
ModelComplexity
Approximation
Clause gadget
0 literals are true → contribution to H: 1.5 · Smax
Been, Nöllenburg, Poon, Wolff 12 19 Dynamic Map Labeling
Page 36
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Outline
Model
Complexity
ApproximationTop-to-bottom sweep algorithmLevel-based algorithm
Been, Nöllenburg, Poon, Wolff 13 19 Dynamic Map Labeling
Page 37
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 38
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 39
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 40
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 41
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 42
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 43
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 44
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 45
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 46
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 47
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 48
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 49
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 50
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 51
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 52
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
x
Theorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 53
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Top-to-bottom fill-down sweep
Algorithm1 sweep from top to bottom2 at each event try to fill
available but inactive extru.
Subroutine try to fill extrusion Ei
If Ei doesn’t intersect any activeextrusion at current scale s,
then set [ai , Ai ] = [si , s].
s
xTheorem
For segments of congruent triangles, this is a 12 -approximation.
Been, Nöllenburg, Poon, Wolff 14 19 Dynamic Map Labeling
Page 54
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Approximation
Blocking Lemma
If an extrusion E never blocksmore than c pairwise independent extrusions,
then our algorithm computes a 1/c-approximation.
E blocks F at scale s if E is active and overlaps F at s.F and F ′ are independent at s if they do not overlap at s.
ProofIntegrate if-condition over all scales ⇒ then-statement.
Been, Nöllenburg, Poon, Wolff 15 19 Dynamic Map Labeling
Page 55
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Approximation
Blocking Lemma
If an extrusion E never blocksmore than c pairwise independent extrusions,
then our algorithm computes a 1/c-approximation.
E blocks F at scale s if E is active and overlaps F at s.
F and F ′ are independent at s if they do not overlap at s.
s
E
F F ′
ProofIntegrate if-condition over all scales ⇒ then-statement.
Been, Nöllenburg, Poon, Wolff 15 19 Dynamic Map Labeling
Page 56
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Approximation
Blocking Lemma
If an extrusion E never blocksmore than c pairwise independent extrusions,
then our algorithm computes a 1/c-approximation.
E blocks F at scale s if E is active and overlaps F at s.F and F ′ are independent at s if they do not overlap at s.
s
E
F F ′
ProofIntegrate if-condition over all scales ⇒ then-statement.
Been, Nöllenburg, Poon, Wolff 15 19 Dynamic Map Labeling
Page 57
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Approximation
Blocking Lemma
If an extrusion E never blocksmore than c pairwise independent extrusions,
then our algorithm computes a 1/c-approximation.
E blocks F at scale s if E is active and overlaps F at s.F and F ′ are independent at s if they do not overlap at s.
ProofIntegrate if-condition over all scales ⇒ then-statement.
Been, Nöllenburg, Poon, Wolff 15 19 Dynamic Map Labeling
Page 58
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Example: frustal segments of congruent cones
each label at each scale has the same shapeblocking lemma ⇒ sweep yields 1/4-approximation
Been, Nöllenburg, Poon, Wolff 16 19 Dynamic Map Labeling
Page 59
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm (sketch)
Settingn arbitrary square conesavailable ranges [0, Smax]
use horizontal planes at scales Smax/2i for i = 0, . . . , log n
Been, Nöllenburg, Poon, Wolff 17 19 Dynamic Map Labeling
Page 60
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm
Been, Nöllenburg, Poon, Wolff 18 19 Dynamic Map Labeling
Page 61
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm
Been, Nöllenburg, Poon, Wolff 18 19 Dynamic Map Labeling
Page 62
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm
Been, Nöllenburg, Poon, Wolff 18 19 Dynamic Map Labeling
Page 63
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm
Been, Nöllenburg, Poon, Wolff 18 19 Dynamic Map Labeling
Page 64
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm
Been, Nöllenburg, Poon, Wolff 18 19 Dynamic Map Labeling
Page 65
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Level-based algorithm
Been, Nöllenburg, Poon, Wolff 18 19 Dynamic Map Labeling
Page 66
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Summaryextrusions approx. running time
frustal segm. of congr. cones 1/4 O((n + k) log2 n)
congruent frusta 1/(4W ) O(n4)
arbitrary square cones (simple) 1/24 O(n log3 n)
congruent square cones (simple) 1/8 O(n log3 n)
Open Problems
better approximations, also in 1d(non-) existence of a PTASmore realistic extrusion shapes
Been, Nöllenburg, Poon, Wolff 19 19 Dynamic Map Labeling
Page 67
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Summaryextrusions approx. running time
frustal segm. of congr. cones 1/4 O((n + k) log2 n)
congruent frusta 1/(4W ) O(n4)
arbitrary square cones (simple) 1/24 O(n log3 n)
congruent square cones (simple) 1/8 O(n log3 n)
Open Problems
better approximations, also in 1d(non-) existence of a PTASmore realistic extrusion shapes
Been, Nöllenburg, Poon, Wolff 19 19 Dynamic Map Labeling
Page 68
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Summaryextrusions approx. running time
frustal segm. of congr. cones 1/4 O((n + k) log2 n)
congruent frusta 1/(4W ) O(n4)
arbitrary square cones (simple) 1/24 O(n log3 n)
congruent square cones (simple) 1/8 O(n log3 n)
Open Problems
better approximations, also in 1d(non-) existence of a PTASmore realistic extrusion shapes
Been, Nöllenburg, Poon, Wolff 19 19 Dynamic Map Labeling
Page 69
ModelComplexity
Approximation
Top-to-bottom sweep algorithmLevel-based algorithm
Summaryextrusions approx. running time
frustal segm. of congr. cones 1/4 O((n + k) log2 n)
congruent frusta 1/(4W ) O(n4)
arbitrary square cones (simple) 1/24 O(n log3 n)
congruent square cones (simple) 1/8 O(n log3 n)
Open Problems
better approximations, also in 1d(non-) existence of a PTASmore realistic extrusion shapes ε
Been, Nöllenburg, Poon, Wolff 19 19 Dynamic Map Labeling