Multiple translational containment: approximate and exact algorithms

We present ezact algorithms for finding a solution to the twodimensional translational containment problem: find translations for k polygons which place them inside a polygonal container without overlapping. We also give an approximate algorithm: given any E, it finds a set of translations such that no point of any polygon is more than 2~ inside the boundary of any other polygon or outside the container. The term kCN denotes a containment problem in which the k polygons are convex and the container is nonconvex, and kNN denotes nonconvex polygons and container. The polygons have up to m vertices, and the container has n vertices, where n > m (typically). We give exact algorithms for the following: 2CN in O(mnlog n) time, KN in O(m3nlog n) time, and kNN in O((mn)2kt1LP(2k, 2kmn + k’m”)) time, where LP(a, 6) is the time to solve a linear program with a variables and b constraints. We present an approximate algorithm for kNN whoserunning timeisO(($)klog($)k5slogs), where s is the largest number of vertices of any polygon that can generated by applying a certain set of operations to the input. We have no polynomial bound on s, but, in practice, it is usually not more than quadratic in n.