-
Approximating the discrete and continuous median line segments in $d$ dimensions
Authors:
Ovidiu Daescu,
Ka Yaw Teo
Abstract:
Consider a set $P$ of $n$ points in $\mathbb{R}^d$. In the discrete median line segment problem, the objective is to find a line segment bounded by a pair of points in $P$ such that the sum of the Euclidean distances from $P$ to the line segment is minimized. In the continuous median line segment problem, a real number $\ell>0$ is given, and the goal is to locate a line segment of length $\ell$ in…
▽ More
Consider a set $P$ of $n$ points in $\mathbb{R}^d$. In the discrete median line segment problem, the objective is to find a line segment bounded by a pair of points in $P$ such that the sum of the Euclidean distances from $P$ to the line segment is minimized. In the continuous median line segment problem, a real number $\ell>0$ is given, and the goal is to locate a line segment of length $\ell$ in $\mathbb{R}^d$ such that the sum of the Euclidean distances between $P$ and the line segment is minimized.
We show how to compute $(1+εΔ)$- and $(1+ε)$-approximations to a discrete median line segment in time $O(nε^{-2d}\log n)$ and $O(n^2ε^{-d})$, respectively, where $Δ$ is the spread of line segments spanned by pairs of points. While develo** our algorithms, by using the principle of pair decomposition, we derive new data structures that allow us to quickly approximate the sum of the distances from a set of points to a given line segment or point. To our knowledge, our utilization of pair decompositions for solving minsum facility location problems is the first of its kind; it is versatile and easily implementable.
We prove that it is impossible to construct a continuous median line segment for $n\geq3$ non-collinear points in the plane by using only ruler and compass. In view of this, we present an $O(n^dε^{-d})$-time algorithm for approximating a continuous median line segment in $\mathbb{R}^d$ within a factor of $1+ε$. The algorithm is based upon generalizing the point-segment pair decomposition from the discrete to the continuous domain. Last but not least, we give an $(1+ε)$-approximation algorithm, whose time complexity is sub-quadratic in $n$, for solving the constrained median line segment problem in $\mathbb{R}^2$ where an endpoint or the slope of the median line segment is given at input.
△ Less
Submitted 14 February, 2022; v1 submitted 21 January, 2022;
originally announced January 2022.
-
Computing Feasible Trajectories for an Articulated Probe in Three Dimensions
Authors:
Ovidiu Daescu,
Ka Yaw Teo
Abstract:
Consider an input consisting of a set of $n$ disjoint triangular obstacles in $\mathbb{R}^3$ and a target point $t$ in the free space, all enclosed by a large sphere $S$ of radius $R$ centered at $t$. An articulated probe is modeled as two line segments $ab$ and $bc$ connected at point $b$. The length of $ab$ can be equal to or greater than $R$, while $bc$ is of a given length $r \leq R$. The prob…
▽ More
Consider an input consisting of a set of $n$ disjoint triangular obstacles in $\mathbb{R}^3$ and a target point $t$ in the free space, all enclosed by a large sphere $S$ of radius $R$ centered at $t$. An articulated probe is modeled as two line segments $ab$ and $bc$ connected at point $b$. The length of $ab$ can be equal to or greater than $R$, while $bc$ is of a given length $r \leq R$. The probe is initially located outside $S$, assuming an unarticulated configuration, in which $ab$ and $bc$ are collinear and $b \in ac$. The goal is to find a feasible (obstacle-avoiding) probe trajectory to reach $t$, with the condition that the probe is constrained by the following sequence of moves -- a straight-line insertion of the unarticulated probe into $S$, possibly followed by a rotation of $bc$ at $b$ for at most $π/2$ radians, so that $c$ coincides with $t$.
We prove that if there exists a feasible probe trajectory, then a set of extremal feasible trajectories must be present. Through careful case analysis, we show that these extremal trajectories can be represented by $O(n^4)$ combinatorial events. We present a solution approach that enumerates and verifies these combinatorial events for feasibility in overall $O(n^{4+ε})$ time using $O(n^{4+ε})$ space, for any constant $ε> 0$. The enumeration algorithm is highly parallel, considering that each combinatorial event can be generated and verified for feasibility independently of the others. In the process of deriving our solution, we design the first data structure for addressing a special instance of circular sector emptiness queries among polyhedral obstacles in three dimensional space, and provide a simplified data structure for the corresponding emptiness query problem in two dimensions.
△ Less
Submitted 23 November, 2020;
originally announced November 2020.
-
Characterization and Computation of Feasible Trajectories for an Articulated Probe with a Variable-Length End Segment
Authors:
Ovidiu Daescu,
Ka Yaw Teo
Abstract:
An articulated probe is modeled in the plane as two line segments, $ab$ and $bc$, joined at $b$, with $ab$ being very long, and $bc$ of some small length $r$. We investigate a trajectory planning problem involving the articulated two-segment probe where the length $r$ of $bc$ can be customized. Consider a set $P$ of simple polygonal obstacles with a total of $n$ vertices, a target point $t$ locate…
▽ More
An articulated probe is modeled in the plane as two line segments, $ab$ and $bc$, joined at $b$, with $ab$ being very long, and $bc$ of some small length $r$. We investigate a trajectory planning problem involving the articulated two-segment probe where the length $r$ of $bc$ can be customized. Consider a set $P$ of simple polygonal obstacles with a total of $n$ vertices, a target point $t$ located in the free space such that $t$ cannot see to infinity, and a circle $S$ centered at $t$ enclosing $P$. The probe initially resides outside $S$, with $ab$ and $bc$ being collinear, and is restricted to the following sequence of moves: a straight line insertion of $abc$ into $S$ followed by a rotation of $bc$ around $b$. The goal is to compute a feasible obstacle-avoiding trajectory for the probe so that, after the sequence of moves, $c$ coincides with $t$.
We prove that, for $n$ line segment obstacles, the smallest length $r$ for which there exists a feasible probe trajectory can be found in $O(n^{2+ε})$ time using $O(n^{2+ε})$ space, for any constant $ε> 0$. Furthermore, we prove that all values $r$ for which a feasible probe trajectory exists form $O(n^2)$ intervals, and can be computed in $O(n^{5/2})$ time using $O(n^{2+ε})$ space. We also show that, for a given $r$, the feasible trajectory space of the articulated probe can be characterized by a simple arrangement of complexity $O(n^2)$, which can be constructed in $O(n^2)$ time. To obtain our solutions, we design efficient data structures for a number of interesting variants of geometric intersection and emptiness query problems.
△ Less
Submitted 23 November, 2020;
originally announced November 2020.
-
City Guarding with Limited Field of View
Authors:
Ovidiu Daescu,
Hemant Malik
Abstract:
Drones and other small unmanned aerial vehicles are starting to get permission to fly within city limits. While video cameras are easily available in most cities, their purpose is to guard the streets at ground level. Guarding the aerial space of a city with video cameras is a problem that so far has been largely ignored.
In this paper, we present bounds on the number of cameras needed to guard…
▽ More
Drones and other small unmanned aerial vehicles are starting to get permission to fly within city limits. While video cameras are easily available in most cities, their purpose is to guard the streets at ground level. Guarding the aerial space of a city with video cameras is a problem that so far has been largely ignored.
In this paper, we present bounds on the number of cameras needed to guard the city's aerial space (roofs, walls, and ground) using cameras with 180-degree range of vision (the region in front of the guard), which is common for most commercial cameras. We assume all buildings are vertical and have a rectangular base. Each camera is placed at a top corner of a building.
We considered the following two versions: (i) buildings have an axis-aligned ground base and, (ii) buildings have an arbitrary orientation. We give necessary and sufficient results for (i), necessary results for (ii), and conjecture sufficiency results for (ii). Specifically, for (i) we prove a sufficiency bound of 2k + k/4 +4 on the number of vertex guards, while for (ii) we show that 3k + 1 vertex guards are sometimes necessary, where k is the total number of buildings in the city.
△ Less
Submitted 23 July, 2020; v1 submitted 12 July, 2020;
originally announced July 2020.
-
Edge Disjoint Spanning Trees in an Undirected Graph with E=2(V-1)
Authors:
Hemant Malik,
Ovidiu Daescu,
Ramaswamy Chandrasekaran
Abstract:
Given a connected undirected graph G = [V; E] where |E| =2(|V| -1), we present two algorithms to check if G can be decomposed into two edge disjoint spanning trees, and provide such a decomposition when it exists. Unlike previous algorithms for finding edge disjoint spanning trees in general undirected graphs, based on matroids and complex in description, our algorithms are based on simple graph r…
▽ More
Given a connected undirected graph G = [V; E] where |E| =2(|V| -1), we present two algorithms to check if G can be decomposed into two edge disjoint spanning trees, and provide such a decomposition when it exists. Unlike previous algorithms for finding edge disjoint spanning trees in general undirected graphs, based on matroids and complex in description, our algorithms are based on simple graph reduction techniques and thus easy to describe and implement. Moreover, the running time for our solutions is asymptotically faster. Specifically, ours are the first algorithms to achieve a running time that is a polylog factor from linear, approaching the 1974 linear time algorithm of Robert E. Tarjan for directed graphs. A direct implication of our result is that minimally rigid graphs, also called Laman graphs, can be recognized in almost linear time, thus answering a long standing open problem.
△ Less
Submitted 26 November, 2018; v1 submitted 15 August, 2018;
originally announced August 2018.
-
Does a robot path have clearance c?
Authors:
Ovidiu Daescu,
Hemant Malik
Abstract:
Most path planning problems among polygonal obstacles ask to find a path that avoids the obstacles and is optimal with respect to some measure or a combination of measures, for example an $u$-to-$v$ shortest path of clearance at least $c$, where $u$ and $v$ are points in the free space and $c$ is a positive constant. In practical applications, such as emergency interventions/evacuations and medica…
▽ More
Most path planning problems among polygonal obstacles ask to find a path that avoids the obstacles and is optimal with respect to some measure or a combination of measures, for example an $u$-to-$v$ shortest path of clearance at least $c$, where $u$ and $v$ are points in the free space and $c$ is a positive constant. In practical applications, such as emergency interventions/evacuations and medical treatment planning, a number of $u$-to-$v$ paths are suggested by experts and the question is whether such paths satisfy specific requirements, such as a given clearance from the obstacles. We address the following path query problem: Given a set $S$ of $m$ disjoint simple polygons in the plane, with a total of $n$ vertices, preprocess them so that for a query consisting of a positive constant $c$ and a simple polygonal path $π$ with $k$ vertices, from a point $u$ to a point $v$ in free space, where $k$ is much smaller than $n$, one can quickly decide whether $π$ has clearance at least $c$ (that is, there is no polygonal obstacle within distance $c$ of $π$). To do so, we show how to solve the following related problem: Given a set $S$ of $m$ simple polygons in $\Re^{2}$, preprocess $S$ into a data structure so that the polygon in $S$ closest to a query line segment $s$ can be reported quickly. We present an $O(t \log n)$ time, $O(t)$ space preprocessing, $O((n / \sqrt{t}) \log ^{7/2} n)$ query time solution for this problem, for any $n ^{1 + ε} \leq t \leq n^{2}$. For a path with $k$ segments, this results in $O((n k / \sqrt{t}) \log ^{7/2} n)$ query time, which is a significant improvement over algorithms that can be derived from existing computational geometry methods when $k$ is small.
△ Less
Submitted 24 July, 2018;
originally announced July 2018.
-
k-Maximum Subarrays for Small k: Divide-and-Conquer made simpler
Authors:
Hemant Malik,
Ovidiu Daescu
Abstract:
Given an array A of n real numbers, the maximum subarray problem is to find a contiguous subarray which has the largest sum. The k-maximum subarrays problem is to find k such subarrays with the largest sums. For the 1-maximum subarray the well known divide-and-conquer algorithm, presented in most textbooks, although suboptimal, is easy to implement and can be made optimal with a simple change that…
▽ More
Given an array A of n real numbers, the maximum subarray problem is to find a contiguous subarray which has the largest sum. The k-maximum subarrays problem is to find k such subarrays with the largest sums. For the 1-maximum subarray the well known divide-and-conquer algorithm, presented in most textbooks, although suboptimal, is easy to implement and can be made optimal with a simple change that speeds up the combine phase. On the other hand, the only known divide-and-conquer algorithm for k > 1, that is efficient for small values of k, is difficult to implement, due to the intricacies of the combine phase. In this paper we give a divide- and-conquer solution for the k-maximum subarray problem that simplifies the combine phase considerably while preserving the overall running time.
In the process of designing the combine phase of the algorithm we provide a simple, sublinear, O($k^{1/2} log^3 k$) time algorithm, for finding the k largest sums of X + Y, where X and Y are sorted arrays of size n and $k <= n^2$. The k largest sums are implicitly represented, and can be enumerated with an additional O(k) time. To our knowledge, this is the first sublinear time algorithm for this well studied problem.
Unlike previous solutions, that are fairly complicated and sometimes difficult to implement, ours rely on simple operations such as merging sorted arrays, binary search, and selecting the $k^{th}$ smallest number in an array. We have implemented our algorithms and report excellent performance on test data.
△ Less
Submitted 22 July, 2018; v1 submitted 16 April, 2018;
originally announced April 2018.
-
Altitude Terrain Guarding and Guarding Uni-Monotone Polygons
Authors:
Ovidiu Daescu,
Stephan Friedrichs,
Hemant Malik,
Valentin Polishchuk,
Christiane Schmidt
Abstract:
We present an optimal, linear-time algorithm for the following version of terrain guarding: given a 1.5D terrain and a horizontal line, place the minimum number of guards on the line to see all of the terrain. We prove that the cardinality of the minimum guard set coincides with the cardinality of a maximum number of ``witnesses'', i.e., terrain points, no two of which can be seen by a single guar…
▽ More
We present an optimal, linear-time algorithm for the following version of terrain guarding: given a 1.5D terrain and a horizontal line, place the minimum number of guards on the line to see all of the terrain. We prove that the cardinality of the minimum guard set coincides with the cardinality of a maximum number of ``witnesses'', i.e., terrain points, no two of which can be seen by a single guard. We show that our results also apply to the Art Gallery problem in ``monotone mountains'', i.e., $x$-monotone polygons with a single edge as one of the boundary chains. This means that any monotone mountain is ``perfect'' (its guarding number is the same as its witness number); we thus establish the first non-trivial class of perfect polygons.
△ Less
Submitted 1 June, 2019; v1 submitted 15 March, 2018;
originally announced March 2018.
-
Maximum Area Rectangle Separating Red and Blue Points
Authors:
Bogdan Armaselu,
Ovidiu Daescu
Abstract:
Given a set R of n red points and a set B of m blue points, we study the problem of finding a rectangle that contains all the red points, the minimum number of blue points and has the largest area. We call such rectangle a maximum separating rectangle. We address the planar, axis-aligned (2D) version, and present an O(mlogm+n) time, O(m+n) space algorithm. The running time reduces to O(m + n) if t…
▽ More
Given a set R of n red points and a set B of m blue points, we study the problem of finding a rectangle that contains all the red points, the minimum number of blue points and has the largest area. We call such rectangle a maximum separating rectangle. We address the planar, axis-aligned (2D) version, and present an O(mlogm+n) time, O(m+n) space algorithm. The running time reduces to O(m + n) if the points are pre-sorted by one of the coordinates. We further prove that our algorithm is optimal in the decision model of computation.
△ Less
Submitted 10 June, 2017;
originally announced June 2017.
-
Approximation Algorithms for the Maximum Profit Pick-up Problem with Time Windows and Capacity Constraint
Authors:
Bogdan Armaselu,
Ovidiu Daescu
Abstract:
In this paper, we study the Maximum Profit Pick-up Problem with Time Windows and Capacity Constraint (MP-PPTWC). Our main results are 3 polynomial time algorithms, all having constant approximation factors. The first algorithm has an approximation ratio of $~46 (1 + (71/60 + \fracα{\sqrt{10+p}}) ε) \log T$, where: (i) $ε> 0$ and $T$ are constants; (ii) The maximum quantity supplied is…
▽ More
In this paper, we study the Maximum Profit Pick-up Problem with Time Windows and Capacity Constraint (MP-PPTWC). Our main results are 3 polynomial time algorithms, all having constant approximation factors. The first algorithm has an approximation ratio of $~46 (1 + (71/60 + \fracα{\sqrt{10+p}}) ε) \log T$, where: (i) $ε> 0$ and $T$ are constants; (ii) The maximum quantity supplied is $q_{max} = O(n^p) q_{min}$, for some $p > 0$, where $q_{min}$ is the minimum quantity supplied; (iii) $α> 0$ is a constant such that the optimal number of vehicles is always at least $\sqrt{10 + p} / α$. The second algorithm has an approximation ratio of $\simeq 46 (1 + ε+ \frac{(2 + α) ε}{\sqrt{10 + p}}) \log T$. Finally, the third algorithm has an approximation ratio of $\simeq 11 (1 + 2 ε) \log T$. While our algorithms may seem to have quite high approximation ratios, in practice they work well and, in the majority of cases, the profit obtained is at least 1/2 of the optimum.
△ Less
Submitted 3 December, 2016;
originally announced December 2016.
-
Minimum Sum Dipolar Spanning Tree in R^3
Authors:
Steven Bitner,
Ovidiu Daescu
Abstract:
In this paper we consider finding a geometric minimum-sum dipolar spanning tree in R^3, and present an algorithm that takes O(n^2 log^2 n) time using O(n^2) space, thus almost matching the best known results for the planar case. Our solution uses an interesting result related to the complexity of the common intersection of n balls in R^3, of possible different radii, that are all tangent to a give…
▽ More
In this paper we consider finding a geometric minimum-sum dipolar spanning tree in R^3, and present an algorithm that takes O(n^2 log^2 n) time using O(n^2) space, thus almost matching the best known results for the planar case. Our solution uses an interesting result related to the complexity of the common intersection of n balls in R^3, of possible different radii, that are all tangent to a given point p. The problem has applications in communication networks, when the goal is to minimize the distance between two hubs or servers as well as the distance from any node in the network to the closer of the two hubs. The approach used in this paper also provides a solution to the discrete 2-center problem in R^3 within the same time and space bounds.
△ Less
Submitted 7 July, 2010;
originally announced July 2010.
-
Fréchet Distance Problems in Weighted Regions
Authors:
Yam Ki Cheung,
Ovidiu Daescu
Abstract:
We discuss two versions of the Fréchet distance problem in weighted planar subdivisions. In the first one, the distance between two points is the weighted length of the line segment joining the points. In the second one, the distance between two points is the length of the shortest path between the points. In both cases, we give algorithms for finding a (1+epsilon)-factor approximation of the Fréc…
▽ More
We discuss two versions of the Fréchet distance problem in weighted planar subdivisions. In the first one, the distance between two points is the weighted length of the line segment joining the points. In the second one, the distance between two points is the length of the shortest path between the points. In both cases, we give algorithms for finding a (1+epsilon)-factor approximation of the Fréchet distance between two polygonal curves. We also consider the Fréchet distance between two polygonal curves among polyhedral obstacles in R^3 and present a (1+epsilon)-factor approximation algorithm.
△ Less
Submitted 27 April, 2010;
originally announced April 2010.
-
Approximate Point-to-Face Shortest Paths in R^3
Authors:
Yam Ki Cheung,
Ovidiu Daescu
Abstract:
We address the point-to-face approximate shortest path problem in R: Given a set of polyhedral obstacles with a total of n vertices, a source point s, an obstacle face f, and a real positive parameter epsilon, compute a path from s to f that avoids the interior of the obstacles and has length at most (1+epsilon) times the length of the shortest obstacle avoiding path from s to f. We present three…
▽ More
We address the point-to-face approximate shortest path problem in R: Given a set of polyhedral obstacles with a total of n vertices, a source point s, an obstacle face f, and a real positive parameter epsilon, compute a path from s to f that avoids the interior of the obstacles and has length at most (1+epsilon) times the length of the shortest obstacle avoiding path from s to f. We present three approximation algorithms that take by extending three well-known "point-to-point" shortest path algorithms.
△ Less
Submitted 9 April, 2010;
originally announced April 2010.