Download presentation
Presentation is loading. Please wait.
1
Covering Uncertain Points in a Tree
Haitao Wang and Jingru Zhang Utah State University WADS 2017, St. Johnβs, Canada
2
An uncertain point in a tree T
An uncertain point π· π has multiple possible locations on T with probabilities π π2 0.2 π π1 0.4 0.3 π π5 π π4 0.1 π π3 0.1
3
An uncertain point The expected distance from π· π to a point x is πΈπ π π ,π₯ = π π β π=1 π π ππ βπ(π₯, π ππ ) π π3 π π3 π π2 x π π5 π π1 π π2 π π5 π π1 π π4 π π4
4
Problem definition T π= π 1 , π 2 π 1 π 2
Input: a tree T a set π· of n uncertain points and each π· π has π π locations a covering range π Goal: Find a set π of a minimum number of centers on T such that max 1β€πβ€π πΈπ( π π ,π)β€π where πΈπ π π ,π = min πβπ πΈπ( π π ,π) T π= π 1 , π 2 π 1 π 2 π π π
5
An application The k-center of uncertain points on a tree
Input: a tree T and a set π· of uncertain points Goal: Find a set π of at most k centers to minimize max 1β€πβ€π πΈπ( π π ,π)
6
Related works Covering certain points in a tree: Time: π π --- O. Kariv and S. Hakimi (1979) The k-center problem of uncertain points on a line: Time: π ππ log ππ +π log π log π --- Wang and Zhang (2014) The one-center problem of uncertain points in a tree: Time: π ππ --- Wang and Zhang (2015)
7
Our result The problem has not been studied before Our result: π( π +π log π 2 ) where π is the number of locations of all uncertain points The k-center problem: O(|T|+n2 log n log M + M log3 M)
8
Problem definition T π= π 1 , π 2 π 1 π 2
Input: a tree T a set π· of n uncertain points and each π· π with π π locations a covering range π Goal: Find a set π of a minimum number of centers on T such that max 1β€πβ€π πΈπ( π π ,π)β€π T π= π 1 , π 2 π 1 π 2 π π π
9
πΈπ π π , π π β€πΈπ π₯, π π for all π₯βπ
The Median π π of π π The median π π of an uncertain point π π is a vertex of T such that πΈπ π₯, π π is minimized for all π₯βπ. π π π1 π π2 π π π π3 π π4 π π5 πΈπ π π , π π β€πΈπ π₯, π π for all π₯βπ Observation: πΈπ π₯, π π is monotonically increasing if x is moving away from pi
10
The medians-spanning tree
The Medians-Spanning Tree π π is the minimum connected subtree of T that spans all medians. π π π 6 π π 3 π 1 π 2 π 4 π 5
11
An observation π π π All centers are in the medians-spanning tree of T
π 1 π 2 π 3 π 1 π 2 π 4 π 5
12
A greedy algorithm π π π 6 π π 7 π 3 π 1 π 2 π 8 π 4 π 5 π 9 π 10
Place centers on π π from bottom to top in the post-order traversal π π π --- root of π π π 6 Initially, all medians are active. π π 7 π 3 π 1 π 2 π 8 π 4 π 5 π 9 π 10 Deactivation: make medians whose uncertain points are covered by π inactive
13
Processing a leaf π π ββββββ π π π π π e π π π π+1
Test whether a center is necessary on e for active π π Compute c on π( π π ,r) with πΈπ π, π i =π π π π π( π π ,r) c is on e? Y N πΈπ π, π i =π π ββββββ Put a center at c for π π π π served by a center not on e π e π π Report all uncertain points covered by π π π π π+1 c --- a candidate center Deactivation
14
Processing an internal node
Test whether a center is necessary on e for active π π1 , π π2 , βββ, π ππ₯ Data Structure π΄ 1 Range-status-query π Check whether π» v has active medians π π π(v,r) Y Data Structure π΄ 2 Compute c on π(v,r) with max π1β€πβ€ππ₯ πΈπ π, π i =π Candidate center π Candidate-center-query π e v c is on e? Data Structure π΄ 3 N Y π» v Coverage-report-query Severed by a center not on e Active medians π π1 , π π2 , βββ, π ππ₯ Report all uncertain points covered by π Deactivation
15
Designing data structures---Major challenge
Preprocessing time Range-status query Deletion π(π) π( log π ) Data Structure π΄ 1 Preprocessing time Candidate-center-query Deletion π(π log π +π log 2 π) π( log π ) Data Structure π΄ 2 Preprocessing time Coverage-report-query Deletion π(π log 2 π) π(π log π + log π log π ) π( π π log π log 2 π) Data Structure π΄ 3 amortized
16
A connector-bounded centroid decomposition
π 2 (π) π 1 (π) π c---the centroid of T maxβ‘{ π 1 π , | π 2 (π)|}β€ 2 π 3 Decomposition Tree π€ T c --- connector of π 1 π and π 2 π π 1 (π) π 2 (π)
17
A connector-bounded centroid decomposition
π 2 ( π 1 ) π 1 (π) π c π 2 (π) π 1 ( π 1 ) Decomposition Tree π€ T π 1 (π) π 2 (π) c, π connectors of π 1 ( π 1 ) π connectors of π 2 ( π 1 ) π 1 ( π 1 ) π 2 ( π 1 )
18
A connector-bounded centroid decomposition
π 1 ( π 1 ) π 13 ( π 4 ) Every subtree of π€ has at most two connectors. π 1 ( π 3 ) π π c π π Decomposition Tree π€ π 11 ( π 4 ) π c c π π T c π 12 ( π 4 ) π 1 (π) π 2 (π) π 2 ( π 3 ) π 4 is the vertex such that π 1 ( π 3 ) can be decomposed to three subtrees that contain c, π 1 , π 3 , respectively. π 1 ( π 1 ) π 2 ( π 1 ) Decompose π 1 ( π 3 ) at π 4 π 11 ( π 4 ) π 12 ( π 4 ) π 13 ( π 4 ) π 2 ( π 3 )
19
The decomposition tree Ξ of T
Each node π’ of Ξ has at most four children π 1 π 2 Each node π’ of Ξ --- A subtree π(π’) of π Every π(π’) has at most two connectors π 3 π 4 π 5 π 6 Height: π( log π ) # of nodes: π(π) π’ π(π’) ββββββ ββββββ
20
Data structure π΄ 3 for coverage-report-query
Decomposition Tree Ξ For every node π’ of Ξ πΏ π’ --- List of all such π π π’β² π(π’β²) πΈπ(π₯,π π ) --- Expected distance functions of all π π βπΏ(π’) with respect to xβπ(π’) π’ π(π’) π‘ π’ = |πΏ π’ | ββββββ Coverage-report-query in π(π’) --- π(π log π‘ π’ + log π‘ π’ ) time For any point xβπ(π’), Report all π π βπΏ(π’) covered by π₯ --- all π π βπΏ π’ with πΈπ(π₯,π π )β€π π π --- no location in π(π’) but in π( π’ β² )
21
Coverage-report-query in π(π’)
π 2 Observation: for each π π βπΏ(π’) πΈπ π₯, π π = π π ( π π₯ + π π π π₯ + π· π ) a plane in β 3 π(π’) π£ π₯ for each π π βπΏ(π’), πΈπ π₯, π π β€π defines a half-plane in the plane z = π π 1 π π₯ π π₯ π₯= π π₯ , π π₯ Report all bounding lines above π₯ --- report all π π βπΏ(π’) with πΈπ π₯, π π β€Ξ» π π₯ --- the distance of π₯ to the closest vertex π£ π₯ on π( π 1 , π 2 ) π π₯ --- the distance of π£ π₯ to π 1 πΈπ π₯, π π1 β€π π π₯ πΈπ π₯, π π2 β€π L --- the set of π‘ π’ bounding lines π₯ πΈπ π₯, π π3 β€π π π₯
22
Coverage-report-query in π(π’)
π 2 π(π’) Report bounding lines of πΏ above π₯ π 1 Build half-plane range reporting data structure on πΏ in π( π π’ + π‘ π’ log π‘ π’ ) time π₯= π π₯ , π π₯ Half-plane range reporting query for π₯ π(π’) 1. Coverage-report-query in π(π’) π(π log π‘ π’ + log π‘ π’ ) time Report all π π βπΏ(π’) with πΈπ π₯, π π β€Ξ» for any π₯βπ π’ 2. Removing any π π from π(π’) π( log π‘ π’ ) time
23
Coverage-report-query on π΄ 3
π(π’), πΏ(π’), π π’ π
Any point π on T A path π
in Ξ₯ π’ π log π nodes --- subtrees π(π’) ββββββ Coverage-report-query at π in every π(π’) π Report all indices i with πΈπ(π₯,π π )β€π --- π(π log π + log π log π ) time
24
Candidate-center-query Coverage-report-query
Data structures Preprocessing time Range-status query Deletion π(π) π( log π ) Data Structure π΄ 1 Preprocessing time Candidate-center-query Deletion π(π log π +π log 2 π) π( log π ) Data Structure π΄ 2 Preprocessing time Coverage-report-query Deletion π(π log 2 π) π(π log π + log π log π ) π( π π log π log π ) Data Structure π΄ 3
25
Thank you! Q&A
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.