Algorithms for untying knots?

665 Views Asked by At

A typical problem I run into while doing anything involving ropes (e.g. climbing or sailing) is how to eliminate tangles efficiently, preferably without having to feed one end of the rope back through all the gnarls. Do there exist algorithms for unknotting ropes efficiently?

Wikipedia alludes to an algorithm to determine whether two knots are equivalent, but this is slightly different than the practical problem I am interested in. What I would like would be something like the following:

  1. An algorithm that can be implemented by hand to reduce the complexity of a tangle of rope. E.g. something like "First identify a half hitch, then follow it until you find another half hitch, then do something else...".
  2. An algorithm that I could program into an app, which would look at a picture of a rope and say something like "If you pull on this doubled strand, the whole tangle will fall apart."

The latter option could presumably be phrased as a combinatorial problem along the lines of "find the minimum number of moves (suitably defined) to reduce this knot to the unknot (where rope ends are identified for purposes of recognizing knots)."

1

There are 1 best solutions below

0
On

Maybe this paper and its $28$ references will help:

Lui, Wen Hao, and Ashutosh Saxena. "Tangled: Learning to untangle ropes with RGB-D perception." In 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 837-844. IEEE, 2013. PDF download.


Fig12