Simple Wriggling is Hard unless You Are a Fat Hippo

Reading time: 6 minute
...

📝 Original Info

  • Title: Simple Wriggling is Hard unless You Are a Fat Hippo
  • ArXiv ID: 1005.5413
  • Date: 2015-05-19
  • Authors: Researchers from original ArXiv paper

📝 Abstract

We prove that it is NP-hard to decide whether two points in a polygonal domain with holes can be connected by a wire. This implies that finding any approximation to the shortest path for a long snake amidst polygonal obstacles is NP-hard. On the positive side, we show that snake's problem is "length-tractable": if the snake is "fat", i.e., its length/width ratio is small, the shortest path can be computed in polynomial time.

💡 Deep Analysis

Deep Dive into Simple Wriggling is Hard unless You Are a Fat Hippo.

We prove that it is NP-hard to decide whether two points in a polygonal domain with holes can be connected by a wire. This implies that finding any approximation to the shortest path for a long snake amidst polygonal obstacles is NP-hard. On the positive side, we show that snake’s problem is “length-tractable”: if the snake is “fat”, i.e., its length/width ratio is small, the shortest path can be computed in polynomial time.

📄 Full Content

The most basic problem in VLSI and printed circuit board design is to connect two given points, s and t, by a shortest "thick" path avoiding a set of polygonal obstacles in the plane. The quarter-of-a-century-old approach to the problem is to inflate the obstacles by half the path width, and search for the shortest s-t path amidst the inflated obstacles [9]. The found path, when inflated, is the shortest thick s-t path.

It went almost unnoticed that the thick path built by the above procedure may self-overlap (Fig. 1): apart from our recent work on thick paths [4], we only found one mention of the possibility of the overlap -Fig. 4 in [13]. (In a different context, Bereg and Kirkpatrick [8,Fig. 2] also noted that Minkowski sum of a disk and a path may be not simply-connected.) When the path represents a thick wire connecting terminals on a VLSI chip or on a circuit board, selfoverlap is undesirable as the wire must retain its width throughout. Thus, the objective in the basic wire routing problem should be to find the shortest non-selfoverlapping thick path.

The problem shows up in other places as well. For instance, one may be interested in the optimal conveyor belt design: the belt is a non-selfoverlapping thick path. Our particular motivation comes from air traffic management where thick paths represent lanes for air traffic. Lane thickness equals to the minimum lateral separation standard, so that aircraft following different lanes stay sufficiently far apart to allow for errors in positioning and navigation. If an airlane self-overlaps, two aircraft following the lane may come too close to each other; thus it is desirable to find lanes without self-overlaps.

We prove a surprisingly strong negative result (Section 4): it is NP-hard even to decide whether there exists (possibly, arbitrarily long) s-t wire; this implies that no approximation to the shortest wire can be found in polynomial time (unless P=NP).

Short Snakes Our intractability result means that in general it is NP-hard for a snake to wriggle its way amidst polygonal obstacles (assuming the snake is uncomfortable with squeezing itself). The good news for snakes is that in our hardness proof the sought wire is considerably long; i.e., the hardness of path finding applies only to long snakes. Our positive result (Section 3) is that for a bounded-length snake, the shortest path can be found in polynomial time (assuming real RAM and the ability to solve constant-size differential equations in constant time) by a Dijkstra-like traversal of the domain.

In VLSI numerous extensions and generalizations of the basic problem were considered. These include routing multiple paths, on several levels, and with different constraints and objectives. It is impossible to survey all literature on the subject; we will only mention the books [19,20].

In robotics thick paths were studied as routes for a circular robot. In this context, path self-overlap poses no problem as even a self-overlapping path may be traversed by the robot; that is, in contrast to VLSI, robotics research should not care about finding non-selfoverlapping paths. In [9], Chew gave an efficient algorithm for finding a shortest thick path in a polygonal domain. In a sense, our algorithm for shortest path for a short snake (Section 3) may be viewed as an extension of Chew’s.

Motion planning for an object with few degrees of freedom may be approached with the cell decomposition techniques [15,16]. Closest to our bounded-length snake problem is the work on path planning for a segment (rod) [5,6,17,22]. Short snakes are also relevant to more recent applications of motor protein motion [10,23].

In this section we introduce the notation and formulate our problem.

Let P be an n-vertex polygonal domain with obstacles. For a planar set S let bdS denote the boundary of S, and for r > 0 let < S > (r) denote the Minkowski sum of S with the radius-r open disk centered at the origin. Let P r = P \ < bdP > (r) be P offset by r inside. The boundary of P r consists of straight-line segments and arcs of circles of radius r centered on vertices of P . We call such (maximal) arcs r-slides.

Let π be a path within P 1 ; let |π| denote its length. A thick path Π is the Minkowski sum Π = < π > (1) . The path π is called the reference path of Π; the length of Π is |π|.

A snake is a non-selfoverlapping thick path, i.e., a path which is a simply-connected region of the plane. The reference path of the snake is its spine (Fig. 2). One of the endpoints of the spine is the snake’s mouth m. The snake is a “rope” that “pulls itself by the head”: imagine that there are little legs (or a wheel, for a toy snake) located at m, by means of which the snake moves. The friction between the snake’s body and the ground is high: any point p of the spine will move only when the path from the mouth to p is a “pulled-taut string”, i.e., is a locally shortest path. That is, the snake always stays pulled taut against the obstacles (

…(Full text truncated)…

📸 Image Gallery

cover.png page_2.webp page_3.webp

Reference

This content is AI-processed based on ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut