Sink-Free Orientation Tools

Final year project, now deployed: two tools over one shared algorithm core — an explorer that reproduces the paper’s three algorithms and cross-checks them against exact enumeration, and a drag-and-drop network topology designer.

Algorithm explorer

  • Reproduces the three algorithms from arXiv:2502.05877 and cross-checks them against exact enumeration case by case — not just "it runs", but "the output matches".
  • Compares against random baselines so "how much better than arbitrary orientation" is a visible number rather than an assertion.
  • The Lemma 3.1 cross-check only runs when its hypothesis holds; below the paper’s δ(G) ≥ 3 requirement it says the bound does not apply instead of reporting a disagreement that is really a property of the premise.

Topology designer

  • Drag-and-drop canvas: place nodes and links to build a topology, and see directly whether a sink-free orientation exists for it.
  • When a topology is infeasible it refuses and names the cause (for example, a component that is a tree) rather than returning a plausible-looking wrong answer.
  • When the sink-popping chain hits its iteration cap it returns a truncated flag and the UI says so — a truncated result is never presented as sink-free.

Actual limits

  • Neither the paper nor its algorithms are the author’s work — this project is reproduction plus engineering
  • Final year project, Sep 2025 – May 2026
  • Both tools import one algorithm implementation from packages/core; there is no separate "demo copy" and "shipped copy" of the code

Stack

  • React
  • TypeScript
  • Vite
  • Tailwind CSS

Project link

Back to work