<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>Computing Shortest Paths in the Plane with Removable Obstacles</title></titleStmt>
			<publicationStmt>
				<publisher></publisher>
				<date>2018 Summer</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10107031</idno>
					<idno type="doi"></idno>
					<title level='j'>16th Scandinavian Symposium and Workshops on Algorithm Theory (</title>
<idno></idno>
<biblScope unit="volume"></biblScope>
<biblScope unit="issue"></biblScope>					

					<author>P Agarwal</author><author>N Kumar</author><author>S Sintos</author><author>S. Suri</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[We consider the problem of computing a Euclidean shortest path in the presence of removable obstacles in the plane. In particular, we have a collection of pairwise-disjoint polygonal obstacles, each of which may be removed at some cost c i > 0. Given a cost budget C > 0, and a pair of points s, t, which obstacles should be removed to minimize the path length from s to t in the remaining workspace? We show that this problem is N P -hard even if the obstacles are vertical line segments. Our main result is a fully-polynomial time approximation scheme (FPTAS) for the case of convex polygons. Specifically, we compute an (1 + ǫ)-approximate shortest path in time O nh ǫ 2 log n log n ǫ with removal cost at most (1 + ǫ)C, where h is the number of obstacles, n is the total number of obstacle vertices, and ǫ ∈ (0, 1) is a user-specified parameter. Our approximation scheme also solves a shortest path problem for a stochastic model of obstacles, where each obstacle's presence is an independent event with a known probability. Finally, we also present a data structure that can answer s-t path queries in polylogarithmic time, for any pair of points s, t in the plane.]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>We consider a variant of the classical shortest-path problem in the presence of polygonal obstacles, in which the motion planner has the ability to remove some of the obstacles to reduce the s-t path length. Formally, let P = {P 1 , . . . , P h } be a set of h pairwise-disjoint polygonal obstacles in R 2 with n vertices, and let c i &gt; 0 be the cost of removing the obstacle</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>5:2</head><p>Computing Shortest Paths in the Plane with Removable Obstacles P i for i = 1, . . . , h. For a path &#960; in R 2 , we define its cost, denoted by c(&#960;), to be the sum of the costs of obstacles intersecting &#960;, and its length, denoted by &#960; , to be its Euclidean length. Given two points s, t &#8712; R 2 and a budget C &gt; 0, we wish to compute a path from s to t of minimum length whose cost is at most C. This obstacle-removing shortest path generalizes the classical obstacle-avoiding shortest path problem, by giving the planner an option of essentially "tunneling" through obstacles at some cost. Besides an interesting problem in its own right, it is also a natural formulation of tradeoffs in some motion planning settings. For instance, it might be beneficial to remove a few critical blockages in a workspace to significantly shorten an often traveled path, just as an urban commuter may strategically pay money to use certain toll roads or bridges to avoid traffic obstacles. In general, our model with removable obstacles is useful for applications where one can adapt the environment to enable better paths such as urban planning or robot motion planning in a warehouse setting. The problem also generalizes the recent work on obstacle-violating paths <ref type="bibr">[18,</ref><ref type="bibr">25]</ref>, in which the planner is allowed to enter the forbidden space (obstacles) a fixed number of time. For instance, in <ref type="bibr">[25]</ref>, a shortest s-t path inside a simple polygon is desired, but the path is allowed to travel outside the polygon once. In <ref type="bibr">[18]</ref>, a shortest path among disjoint convex polygonal obstacles is desired, but is allowed to travel through at most k obstacles. The latter problem is also an obstacle-removing shortest path where at most k obstacles can be removed, namely, each obstacle removal has cost 1 and planner's budget is k. We will call this the cardinality version of the obstacle-removal to distinguish it from our cost-based model of obstacle removal.</p><p>The obstacle removal problem also has a natural connection to path planning under uncertainty. Imagine, for instance, a workspace with n obstacles, the presence of each obstacle is a random event. That is, the presence of the ith obstacle is determined by a Bernoulli trial with (independent) probability &#946; i . A natural approach to planning a s-t path in such a workspace is to search for a path that is both short and obstacle-free with high probability. Given a desired probability of success &#946;, we can ask: what is the shortest path from s to t that is obstacle free with probability at least &#946;. This problem is easily transformed into our obstacle removal problem where the obstacle probabilities are mapped to obstacle removal cost, and &#946; is mapped to the cost budget C.</p><p>Our results. We first show that the obstacle-removing shortest path problem is NP-hard for polygonal obstacles in the plane, even if obstacles are vertical line segments by reducing the well-known Partition problem to it. This is in contrast with the cardinality version of the problem, which can be solved exactly in O(k 2 n log n) time <ref type="bibr">[18]</ref>.</p><p>Our main result is a fully-polynomial time approximation scheme (FPTAS) when each obstacle is a convex polygon. We first define the notion of the viability graph G, which is an extension of the well-known visibility graph <ref type="bibr">[11,</ref><ref type="bibr">13]</ref>, for geometric paths that can cross obstacles. Using the viability graph, we present a simple algorithm that returns a path with length at most the optimal 1 but cost at most (1 + &#491;)C. The approximation algorithm, while simple, has a worst-case time complexity &#920;( n 3 &#491; polylog(n)). Then, we develop a framework for a more efficient and practical approximation algorithm, which also results in a number of related results. Specifically, for any constant &#491; &gt; 0, we can compute a (1 + &#491;)-approximate shortest path whose total removal cost is at most (1 + &#491;)C in time O nh &#491; 2 log n log n &#491; , where h is the number of obstacles and n is the total number of vertices in the obstacles. The main idea behind the improvement is to construct a sparse viability graph, with only O( n &#491; log n) edges. This approximation scheme immediately gives a corresponding result for the uncertain model of obstacles (see Section 5). The approximation scheme, as a byproduct, also solves the exact L 1 norm shortest path problem in the cardinality model of obstacle removal: that is, in O(kn log 2 n) time, we can decide which k obstacles to remove for the shortest s-t path, which is roughly a factor of k faster than the L 2 -norm result of <ref type="bibr">[18]</ref>. Alternatively, we can also decide which k obstacles to remove so that the shortest s-t path has length at most (1 + &#491;) times optimal in O( kn &#491; log 2 n) time. This is again faster than the result from <ref type="bibr">[18]</ref> for constant &#491;, if k = &#8486;(log n).</p><p>We </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Related work.</head><p>The problem of computing a shortest path in the presence of polygonal obstacles in the plane is a very well studied problem in computational geometry. See the books <ref type="bibr">[16,</ref><ref type="bibr">31]</ref>, survey paper <ref type="bibr">[27]</ref>, recent papers <ref type="bibr">[5,</ref><ref type="bibr">8,</ref><ref type="bibr">9,</ref><ref type="bibr">10,</ref><ref type="bibr">20]</ref>, and references therein for a sample of results. In the classical shortest path problem, obstacles are impenetrable, that is, the shortest path must avoid all the obstacles. Our problem considers a more general scenario where the obstacles can be removed by paying some cost and falls in the broad category of geometric optimization problems where some constraints can be violated <ref type="bibr">[2,</ref><ref type="bibr">17,</ref><ref type="bibr">26,</ref><ref type="bibr">30]</ref>.</p><p>Our problem is also closely related to the problem of computing a shortest path through weighted polygonal regions <ref type="bibr">[23,</ref><ref type="bibr">24,</ref><ref type="bibr">28]</ref> where the length of a path is defined as the weighted sum of Euclidean or L 1 lengths of the subpaths within each region. However, in our setting there is only a one-time fixed cost for passing through a region, and therefore does not depend on the length of the subpath that lies inside the region.</p><p>The stochastic formulation of our problem is also related to some shortest path problems under uncertainty <ref type="bibr">[14,</ref><ref type="bibr">15,</ref><ref type="bibr">22,</ref><ref type="bibr">29]</ref>. However, these results assume existence of a graph whose edges have either an existence probability or a distribution over their lengths. In contrast, our definition is purely geometric where the existence of obstacles is an uncertain event. Our problem can also be seen as a variant of geometric bi-criteria shortest path problem <ref type="bibr">[1,</ref><ref type="bibr">4,</ref><ref type="bibr">33,</ref><ref type="bibr">34,</ref><ref type="bibr">35]</ref>, as our objective is to compute the shortest path with a constraint on the total cost of obstacles that we remove.</p><p>Finally, for most geometric shortest path problems, there are efficient data structures to answer shortest path queries. For instance, the shortest path map <ref type="bibr">[19]</ref> has linear size and can answer Euclidean shortest path queries with a fixed source in O(log n) time. If both s, t are part of the query, quadratic space data structures <ref type="bibr">[7,</ref><ref type="bibr">21]</ref> exist for L 1 shortest path queries and super quadratic space data structures <ref type="bibr">[12]</ref> for L 2 shortest path queries. Similar results exist for rectilinear shortest path queries among disjoint weighted rectilinear and convex obstacles <ref type="bibr">[6,</ref><ref type="bibr">7]</ref>, and for bi-criteria shortest path problems <ref type="bibr">[4,</ref><ref type="bibr">33,</ref><ref type="bibr">35]</ref>.</p><p>Overall, our algorithms entail new techniques because (i) in our problems, paths are allowed to pass through obstacles, (ii) the cost function in our bi-criteria optimization can be quite general and not necessarily a metric. S WAT 2 0 1 8</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>5:5</head><p>uv , where c(u, v) is the cost of the segment uv. In the worst-case G has &#920;(n 2 ) edges. It is important to note that the cost of a path &#960; st in a viability graph is defined as the sum of the costs of its edges, whereas the cost of &#960; st in the plane is defined as sum of costs of all obstacles that it goes through. Moreover, the cost of a path in the plane is at most its cost in the viability graph. If the path crosses each obstacle at most once (which is the case for shortest path among convex obstacles), these two costs are the same.</p><p>The following algorithm shows how to compute an approximately optimal path in this viability graph. The main idea is that we construct copies of the vertices and the edges of G to convert the multi-objective problem to a single-objective problem.</p><p>Let &#954; = min C mini ci , h . To simplify the approximation error analysis, we first scale all the costs by &#954;/C, so that the new target cost is &#954;. We now construct an auxiliary graph</p><p>&#491; edges, whose edges only have the length parameter but not the cost parameter, as follows. We create</p><p>Then, for each edge (u, v) &#8712; E with cost c and for each 0 &#8804; i &#8804; &#8968;2&#954;/&#491;&#8969;, we add the edge (u i &#491; 2 , v j &#491; 2 ), where j &#8804; &#8968;2&#954;/&#491;&#8969; is the maximum integer with j &#491; 2 &#8804; i &#491; 2 + c. All these edge copies have the same length as edge (u, v)-the cost parameter is now implicitly encoded in the edge copies. Finally we add two new vertices s and t in G &#8242; and connect them to all s i and t i respectively with zero length edges, for 0 &#8804; i &#8804; &#8968;2&#954;/&#491;&#8969;. We now find the minimum length path &#960; from s to t in G &#8242; , say, using Dijkstra's algorithm, and argue that &#960; is our approximation path. &#9710; Theorem 3. Let P be a set of h convex obstacles with n vertices, s, t be two obstacle vertices, and C &#8712; R be a parameter. Let L * also be the length of the shortest s-t path with cost at most C, and let G = (V, E) be a viability graph induced by this workspace. If there exists a path &#960; * of length at most &#945;L * with &#945; &#8805; 1 and cost at most C in the graph G, then a s-t path &#960; with length at most &#945;L * and cost at most</p><p>, where &#954; = min C mini ci , h and 0 &lt; &#491; &lt; 1 is a parameter.</p><p>Proof. First, we construct the auxiliary graph G &#8242; as described above. Next, we construct a path &#960; &#8242; in G &#8242; corresponding to the path &#960; * in G by mapping edges of &#960; * to edges in G &#8242; . More precisely, let e = (s, v) be the first edge in &#960; * and let c e be its cost. Now let c = 0 and c &#8242; be the value obtained by rounding down c e to the nearest multiple of &#491; 2 . We map e to the edge (s c , v c &#8242; ) in G &#8242; . Setting c = c &#8242; , we repeat the process for all edges in &#960; * . This gives us the path &#960; &#8242; in G &#8242; that has the length same as that of &#960; * (at most &#945;L * ). Clearly, the s-t path &#960; computed using Dijkstra's algorithm on G &#8242; must also have length at most &#945;L * . Moreover, since (scaled) rounded cost of any s-t path in G &#8242; is at most &#954;, the rounded cost of &#960; is also at most &#954;. Now we only need to bound its original (pre-rounded) cost.</p><p>Let C R be the true (pre-rounded) cost of the path &#960; in the plane and C A its rounded cost in G &#8242; . The approximation error in the cost (due to rounding) is at most &#491;/2 for each obstacle that &#960; passes through, and so if k is the number of obstacles &#960; crosses, we have the</p><p>We can bound k by considering the following two cases. If &#954; = C/ min i c i , the minimum cost of an obstacle is 1, and so for each obstacle crossed, the path &#960; incurs a cost of least 1 -&#491;/2. Therefore,</p><p>Otherwise, we have &#954; = h, which trivially implies k &#8804; &#954; since h is the total number of obstacles.</p><p>In conclusion, we have C R &#8804; (1 + &#491;)&#954;, whose pre-scaled value is If G is the viability graph constructed in this section then it always contains the shortest s-t path with cost at most C, i.e. &#945; = 1. Hence, by applying Theorem 3 to G we get a path of at most the optimum length and cost at most (1 + &#491;)C in &#8486;( n 3 &#491; ) time. In the next section, we show that if we also allow an (1 + &#491;) approximation of the path length, we can improve the running time by roughly an order of magnitude.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">A Faster (1 + &#491;)-Approximation Algorithm</head><p>In this section, we describe our algorithm for sparsifying the graph G = (V, E). We augment the graph by adding some vertices so that the number of viability edges can be sharply reduced, while approximately preserving the path lengths within the cost budget. Throughout the following discussion, we will respect the cost budget C, and only allow the path lengths to increase slightly. With that in mind, we use the notation d G (u, v) to denote the length of the shortest path in G from u to v whose cost is at most C. In this section we only use the definition of the cost of a path with respect to a viability graph. Recall that the cost of a path in a graph is the sum of the costs of the edges in the path.</p><p>Our sparse graph H &#491; = (X &#491; , T &#491; ) is defined for any &#491; &gt; 0, with V &#8838; X &#491; , and satisfies the following two conditions:</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.">The number of vertices and edges is O(</head><p>We construct H &#491; in two stages. In the first stage we construct a graph H = (X, &#915;) with</p><p>Next, we make O(1/&#491;) "copies" of H and combine them to construct H &#491; . Once the graphs H and H &#491; are constructed, we use the machinery of the previous section, namely Theorem 3, to efficiently find the approximately optimal shortest path within the cost budget.</p><p>Recall that all the obstacles in our input are convex, and therefore the shortest path in G does not cross the boundary of an obstacle more than twice. To avoid degenerate cases, we assume that all obstacle vertices are in general position, namely, no three vertices are collinear and all obstacles have non-zero area. We can, therefore, simplify the problem by replacing all the obstacles by their constituent boundary segments, where each obstacle vertex is assigned to its incident segment in the clockwise order. We now allocate the "obstacle removal" cost to these segments as follows: if c i is the removal cost of obstacle i, then we allocate cost c i /2 to each boundary segment of obstacle i. This ensures that any shortest path crossing the ith obstacle incurs a cost of c i , while allowing us to reason about the geometry of just line segment obstacles.</p><p>We describe the construction of the sparse viability graph by explaining how to sparsify the "neighborhood" of an obstacle vertex, say, p. That is, we show which additional vertices are added and which viability edges are incident to p in the final sparse graph H. To simplify the discussion, we assume that p is at the origin, and we only discuss the edges incident to p that lie in the positive (north-east) quadrant; the remaining three quadrants are processed in the same way.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">An O(1)-Approximation Algorithm</head><p>In this subsection we describe the construction of H = (X, &#915;) such that |X|, |&#915;| = O(n log n), and</p><p>For a segment pq we use pq 1 to denote its L 1 -length, i.e., pq 1 = |x p -x q | + |y p -y q |, where p = (x p , y p ) and q = (x q , y q ). For a polygonal path &#960; = p 0 p 1 . . . p k , we use &#960; 1 to clip off the region of R &#8242; pq that lies above l w . More precisely, this gives us the quadrilateral R &#8242;&#8242; pq = R &#8242; pq \ A(l w ), where we use A(s) for the region above segment s. Finally, we define the convex polygon</p><p>, where s &#8242; p , s &#8242; q are the subsegements of s p , s q respectively that lie inside the quadrilateral R &#8242;&#8242; pq . From the set of obstacle vertices that lie inside or on the boundary of T pq , we choose the vertex r to be the one that minimizes the area of the triangle &#8710;prq, or equivalently, be the one that has the minimum distance from the segment pq. Observe that the boundary of region T pq contains the obstacle vertex w, so we will always find one such r. It is easy to see that the triangle &#8710;prq is a subset of T pq and does not contain an obstacle vertex or else it would not have the minimum area. It remains to show that there cannot be an obstacle segment that crosses both pr and rq. To this end, let l r be a line parallel to pq passing through r. Observe that the region T &#8242; pq = T pq \ A(l r ), i.e., the region in T pq that lies below l r , cannot contain an obstacle vertex by the choice of r. So any obstacle segment s j that crosses both pr and rq must intersect &#8706;R &#8242; pq at either the vertical segment between p and s p or the horizontal segment between s q and q which is a contradiction. (See also Figure <ref type="figure">4</ref>.) &#9709; Finally, we prove the main result of this section. &#9710; Lemma 7. Let (p, q) be an edge in G with cost c(p, q). There is a path &#960; pq &#8712; H such that &#960; pq 1 = pq 1 and c(&#960; pq ) &#8804; c(p, q). Moreover, the path &#960; pq lies in the region R pq .</p><p>Proof. We prove this by induction on the number of obstacle vertices in the region R pq . Our base case is when the region R pq does not contain an obstacle vertex. Applying Lemma 5 gives us the desired path &#960; pq in H. For the inductive step, let j be the number of obstacle vertices in the region R pq and assume that the lemma holds for all edges (u, v) such that the region R uv contains i &lt; j obstacle vertices. Using Lemma 6 we find an intermediate vertex r such that pr 1 + rq 1 = pq 1 and c(p, r) + c(r, q) &#8804; c(p, q). This gives us two disjoint subregions R pr &#8834; R pq and R rq &#8834; R pq each with at least one less obstacle vertex than the region R pq . By our induction hypothesis, we get the disjoint subpaths &#960; pr from p to r and &#960; rq from r to q in H. We then join these two paths at vertex r to obtain path &#960; pq that lies within the region R pq . Moreover, we have that &#960; pq 1 = &#960; pr 1 + &#960; rq 1 = pr 1 + rq 1 = pq 1 and c(&#960; pq ) = c(&#960; pr ) + c(&#960; rq ) &#8804; c(p, r) + c(r, q) &#8804; c(p, q). &#9709;</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.3">An (1 + &#491;)-Approximation Algorithm</head><p>We now describe how to use the preceding construction to define our final sparse graph H &#491; .</p><p>A direction in R 2 can be represented as a unit vector u &#8712; S 1 . Let N &#8834; S 1 be a set of O(1/&#491;) unit vectors such that the angle between two consecutive points of N is at most &#491;. For each u &#8712; N, we construct a graph H u by running the algorithm in Section 4.1 but regarding u to be the y axis -i.e., by rotating the plane so that u becomes parallel to the y-axis and measure L 1 -distance in the rotated plane. Set H &#491; = u&#8712;N H u . Notice that the number of vertices and edges in</p><p>The following lemma follows easily by the discussion above.</p><p>From the above lemma, it follows that the graph H &#491; preserves pairwise shortest path distances within a factor of (1 + &#491;) and at most the same cost with graph G. Let L * be the length of the shortest s-t path in the plane that has cost at most C. Since there exists a s-t path of length at most L * and cost at most C in the viability graph G, there exists a s-t path in H &#491; of length (1 + &#491;)L * and the same cost. Applying Theorem 3 with &#945; = (1 + &#491;) on H &#491; gives the following result. &#9710; Theorem 9. Let P be a set of h convex polygonal obstacles with n vertices, s, t be two obstacle vertices and C &#8712; R be a parameter. If L * is the length of the shortest s-t path with cost at most C, a s-t path with length at most (1 + &#491;)L * and cost at most (1 + &#491;)C can be computed in O( nh &#491; 2 log n log n &#491; ) time.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Shortest Path Queries</head><p>We now describe a near-linear space data structure to answer approximate distance queries from a fixed obstacle vertex s subject to the obstacle removal budget in O( 1 &#491; log 2 n) time. The data structure is then extended to handle two-point shortest path queries in O( 1 &#491; 2 log 2 n) time with near-quadratic space.</p><p>The key idea relies on the following observation. Without loss of generality, assume that the points s and t lie in the exterior of all obstacles and let us also assume that s, t were part of the input. Now consider the shortest s-t path in the graph H &#491; and let t &#8242; be the vertex preceding t in this path. It is easy to see that t &#8242; must be a Steiner vertex (projection or bypass) as there are no direct edges in H &#491; between two input vertices that do not lie on the same obstacle. All such edges must cross some split line at Steiner vertices. Therefore, the last edge (t &#8242; , t) in the path is the segment obtained by projecting t on some split line &#8467;. Now, suppose we have precomputed the paths to all Steiner vertices on all split lines, then we can find the shortest path to t by simply finding the neighbor of t &#8242; on &#8467;. Using Lemma 4, we know that t can be projected on O( 1 &#491; log n) split lines, which gives O( 1 &#491; log n) choices for &#8467;.</p><p>Preprocessing. We apply the algorithm preceding Theorem 3 on the graph H &#491; that we constructed in the previous section. More precisely, first we multiply the cost of all obstacles by h/C so that the target cost becomes h. Next we create an auxiliary graph H &#8242; &#491; with O( h &#491; ) copies of each vertex in H &#491; . Running Dijkstra's algorithm on H &#8242; &#491; with source s computes a shortest path to each vertex in H &#8242; &#491; . Now for each vertex v in H &#491; , we maintain arrays dist v , pred v each with size 1 + h &#491; = O( h &#491; ). We store the length of the shortest path found by Dijkstra's algorithm from s to v i&#491; (i-th copy of vertex v) at dist v (i) and its predecessor in pred v (i). In addition, for each direction u &#8712; N that we defined in the previous section we maintain two data structures:</p><p>A segment tree <ref type="bibr">[3]</ref> based data structure S u that we also used in Section 4.1 to compute the cost of an axis aligned segment in O(log n) time.</p><p>A balanced search tree T u over all the vertical (resp. horizontal) split lines, which is basically the recursion tree corresponding to the algorithm from Section 4.1. More precisely, the root of T u is the split line &#8467; m (at the median x-coordinate x m ), and the left and right children are the split lines added during recursive processing of points to the left and right of &#8467; m respectively.</p><p>Moreover, for every split line &#8467;, we maintain a search tree over all the Steiner vertices that lie on &#8467;. Overall, our data structure consists of all arrays dist v , pred v , O( </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="6">Stochastic Shortest Path</head><p>In this section, we consider a stochastic model of obstacles where the existence of each obstacle P i &#8712; P is an independent event with known probability &#946; i . That is, P i is part of the input with probability &#946; i and is not part of the input with probability 1 -&#946; i . We define the probability of path &#960; st as Pi&#8712;S (1 -&#946; i ) where S &#8838; P is the set of obstacles that this path goes through (assuming they did not exist). In such a setting, our goal is to compute the approximate shortest path that has probability more than a given threshold &#946; &#8712; (e -1 , Let L &#946; denote the length of the shortest path from s to t with probability at least &#946;. We convert the multiplicative costs to additive costs by setting c i = -ln(1 -&#946; i ) for each obstacle and setting C = -ln &#946;. Using Theorem 9, we find a path &#960; st with length L(&#960; st ) &#8804; (1 + &#491;)L &#946; and cost c(&#960; st ) &#8804; (1 + &#491;)C. It can be shown that &#960; st has probability at least (1 -&#491;)&#946;. &#9710; Theorem 12. Let P be a set of h convex polygonal obstacles with n vertices, where each obstacle P i &#8712; P exists independently with a probability &#946; i , s, t be two obstacle vertices and &#946; &#8712; (e -1 , 1] be a parameter. If L &#946; is the length of the shortest s-t path with probability at least &#946;, a s-t path with length at most (1 + &#491;)L &#946; and probability at least (1 -&#491;)&#946; can be computed in O( nh &#491; 2 log n log n &#491; ) time.</p><p>Most likely path. We now consider the following question -given a bound L on the length of the path, what is the s-t path with maximum probability? We need a bound on the path length or else there is always a path of probability 1. To answer this question, we can again take negative logarithms of probabilities to transform into an additive cost model and construct the graph H &#491; as before. Now instead of applying Theorem 3 on H &#491; , we construct a new graph H * &#491; that is exactly the same as H &#491; , but with length and cost parameters on edges interchanged. More precisely, for an edge e &#8712; H &#491; with length l e and cost c e , we have an edge e * &#8712; H * &#491; with length c e and cost l e . Next we apply Theorem 3 on the graph H * &#491; with C = (1 + &#491;)L, and scale all costs with a parameter O( n C&#491; log n), such that the target cost is scaled to O( n &#491; log n). We choose this value because a shortest path in H &#491; can have O( n &#491; log n) edges. This gives us the following result. &#9710; Theorem 13. Let P be a set of h convex obstacles with n vertices, s, t be two obstacle vertices, and L &#8712; R be a parameter. If &#946; M is the maximum probability of a path from s to t with length at most L, a path &#960; st with length at most (1 + &#491;)L and probability at least &#946; M can be computed in O( n 2 &#491; 3 log 2 n log n &#491; ) time.</p><p>S WAT 2 0 1 8</p></div><note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="1" xml:id="foot_0"><p>The optimal length is always with respect to the budget C.</p></note>
		</body>
		</text>
</TEI>
