Conversation
Benchmark This PRRun benchmarks by commenting on this PR: Everything after Examples:
Any PR whose title contains |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add an optional
TinyHyperGraphCongestionSolverafter section optimization. It tries four single-route reroutes around congested regions, with a 2,000-step budget per trial, using the existing outside-in route search. Enable it withcongestionSolverOptions: {}; the default pipeline is unchanged.Each replacement is isolated from the retained routes and accepted only after rebuilding costs from the serialized paths. Neither maximum region cost nor the sum of squared region costs may increase. The stage preserves endpoints, metadata, masks, and protected routes; unsuccessful attempts retain the complete solution. A pipeline timeout also retains any improvement already accepted.
The class comment explains the algorithm and includes a short Dictionary defining only “Trial” and “Serialized replay.” The PR contains the selected approach, tests, and benchmark support; it does not include the experiment history or unused search strategies.
Benchmark results
Measured with the repository scripts on the final implementation, comparing the default pipeline with
--optimize-congestion:Reduction is the mean of per-case relative maximum-region-cost changes across each full dataset; the existing HG07 sample014 loader failure contributes zero. No new completion failures occurred. Timings are local observations, not a speed improvement claim. Congestion cost is a graph metric, not physical DRC.
This remains opt-in: the earlier research configuration produced 0% improvement on 12 fresh SRJ13 cases, with completion unchanged at 5/12. That result does not establish a benefit on those inputs. The new stage preserves original pipeline preloads and scoring options, so the table above reports its actual results rather than reusing the research score.
Validation
bun test: 138 passed, 0 failed, including the snapshot check; no snapshot files changed.bun run typecheck: passed.bun run format:check: passed (two existing oversized-fixture warnings).Reproduce the paired benchmarks:
Inspired by tscircuit/tscircuit-autorouter#2639.