Smallest rectilinear paths are rectilinear paths with simultaneous minimum numbers of bends and minimum lengths. Given two pairs of terminals within a rectilinear polygon, the authors derive an algorithm to find a pair of noncrossing rectilinear paths within the polygon such that the total number of bends and the total length are both minimized. Although a smallest rectilinear path between two terminals in a rectilinear polygon always exists, they show that such a smallest pair may not exist for some problem instances. In that case, the algorithm presented will find, among all noncrossing paths with a minimum total number of bends, a pair whose total length is the shortest, or find, among all noncrossing paths with a minimum total length, a pair whose total number of bends is minimized. They provide a simple linear time and space algorithm based on the fact that there are only a limited number of configurations of such a solution pair.
Read full abstract