Recognizing Knots Using Simulated Annealing

This paper describes the development and implementation of an algorithm which uses simulated annealing to recognize knots by minimizing an energy function defined over all knots. A knot is represented by a piecewise linear curve and the vertices of this curve are perturbed using simulated annealing to minimize the energy. Moving one line segment through another line segment is prohibited. The resulting minimum energy configuration is defined to be the canonical form. The algorithm is then tested with two different types of energy over a collection of complex knots.