Inspired by artistic practices such as beadwork and himmeli, we study the problem of threading a single string through a set of tubes, so that pulling the string forms a desired graph. More precisely, given a connected graph (where edges represent tubes and vertices represent junctions where they meet), we give a polynomial-time algorithm to find a minimum-length closed walk (representing a threading of string) that induces a connected graph of string at every junction. The algorithm is based on a surprising reduction to minimum-weight perfect matching. Along the way, we give tight worst-case bounds on the length of the optimal threading and on the maximum number of times this threading can visit a single edge. We also give more efficient solutions to two special cases: cubic graphs and the case when each edge can be visited at most twice.
@InProceedings{demaine_et_al:LIPIcs.ITCS.2024.38, author = {Demaine, Erik D. and Kirkpatrick, Yael and Lin, Rebecca}, title = {{Graph Threading}}, booktitle = {15th Innovations in Theoretical Computer Science Conference (ITCS 2024)}, pages = {38:1--38:18}, series = {Leibniz International Proceedings in Informatics (LIPIcs)}, ISBN = {978-3-95977-309-6}, ISSN = {1868-8969}, year = {2024}, volume = {287}, editor = {Guruswami, Venkatesan}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ITCS.2024.38}, URN = {urn:nbn:de:0030-drops-195665}, doi = {10.4230/LIPIcs.ITCS.2024.38}, annote = {Keywords: Shortest walk, Eulerian cycle, perfect matching, beading} }
Feedback for Dagstuhl Publishing