Table of Contents
Fetching ...

Graph Threading

Erik D. Demaine, Yael Kirkpatrick, Rebecca Lin

TL;DR

This work formalizes the graph threading problem as finding a minimum-length closed walk $T$ that induces connected junction graphs at every vertex and avoids U-turns. It introduces a local threading formulation with edge counts $x_{uv}$ under four constraints, proves the equivalence to global threadings, and derives tight bounds on total length and per-edge visits. The main contribution is a polynomial-time algorithm that reduces optimal threading to minimum-weight perfect matching by constructing auxiliary graphs $H$ and $ ilde{H}$, enabling both perfect-threading existence checks and general optimization (including weighted graphs). The paper also provides efficient solutions for special cases, notably cubic graphs and the Double Threading variant, and discusses potential extensions to friction-aware models relevant to deployable structures.

Abstract

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.

Graph Threading

TL;DR

This work formalizes the graph threading problem as finding a minimum-length closed walk that induces connected junction graphs at every vertex and avoids U-turns. It introduces a local threading formulation with edge counts under four constraints, proves the equivalence to global threadings, and derives tight bounds on total length and per-edge visits. The main contribution is a polynomial-time algorithm that reduces optimal threading to minimum-weight perfect matching by constructing auxiliary graphs and , enabling both perfect-threading existence checks and general optimization (including weighted graphs). The paper also provides efficient solutions for special cases, notably cubic graphs and the Double Threading variant, and discusses potential extensions to friction-aware models relevant to deployable structures.

Abstract

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.
Paper Structure (17 sections, 12 theorems, 4 equations, 6 figures, 2 algorithms)

This paper contains 17 sections, 12 theorems, 4 equations, 6 figures, 2 algorithms.

Key Result

Theorem 2

We can construct a threading $T$ of $G$ from a local threading $\left\{ x_{uv} \right\}$ of $G$ such that $T$ visits edge $uv$ exactly $x_{uv}$ times. Hence $|T| = \sum_{uv \in E} x_{uv}$.

Figures (6)

  • Figure 1: A deployable structure made from disconnected 3D-printed elements (white) connected by string, which automatically shifts between soft (left) and rigid (right) states by pulling on the endpoints of the string beneath the platform (black). This design was developed by the third author in collaboration with Tomohiro Tachi.
  • Figure 2: (a) The closed walk (red) on the graph (black) of a tetrahedron induces junctions graphs (circled on the right) that are connected, and so it is a threading. (b) The union of junction graphs is called the "threading graph" (Section \ref{['sec:closed-walk']}).
  • Figure 3: The target model, a threading graph featuring junction graphs that are cycles, and a threading of the input model following an Euler tour of the threading graph.
  • Figure 4: (a) A graph with a minimum threading length of $2m-6$. (b) A vertex connected to 6 disjoint parts of the graph (denoted as dashed circles). Each bridge incident to vertex $v$ is at least double-threaded, and hence $(\ref{['c4']})$ holds at $v$ as strict inequality, so the graph has no perfect threading. (c) The vertex $v$ has degree $\Delta$ and is connected to $\frac{\Delta - 1}{2}$ loops (dotted) of length > 5. In an optimal threading, the edge $uv$ is threaded $\Delta-1$ times.
  • Figure 5: Construction of $H$ and $\hat{H}$ from $G$, each with some matching in bold and a corresponding threading to the matching labeled with counts.
  • ...and 1 more figures

Theorems & Definitions (18)

  • Definition 1: Local Threading
  • Theorem 2
  • Lemma 3
  • Lemma 4
  • Theorem 5
  • Lemma 6
  • Definition 7
  • Lemma 8
  • Lemma 9
  • Lemma 10
  • ...and 8 more