Hamiltonian tetrahedralizations with Steiner points

A tetrahedralization of a point set in three dimensional space is the analogue of a triangulation of a point set in the plane. The dual graph of a tetrahedralization is the graph having the tetrahedra as nodes, two of which are adjacent if they share a face. A tetrahedralization is Hamiltonian if its dual graph has a Hamiltonian path. Problem 29 of the “Open Problems Project” in Computational Geometry, asks whether every finite set of points in three dimensional space has a Hamiltonian tetrahedralization. Let S be a set of n points in general position in three dimensional space, m of which are convex hull vertices. In this paper we provide an $$O(m^\frac{3}{2}) + O(n \log n)$$O(m32)+O(nlogn) time algorithm to compute a Hamiltonian tetrahedralization of S, by adding Steiner points. Our algorithm adds at most $$\left\lfloor \frac{m-2}{2} \right\rfloor -1$$m-22-1 Steiner points. If $$m \le 20$$m≤20, then no Steiner points are needed to find a Hamiltonian tetrahedralization of S. Finally, we construct a set of 84 points that does not admit a Hamiltonian tetrahedralization in which all tetrahedra share a common vertex.