1
0
Fork 0
Commit Graph

17 Commits

Author SHA1 Message Date
Joris van Rantwijk 4203b1e5cc Optimize deletion of expanded blossoms 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 6d46a9d89a Minor cleanups 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 8bef12559a Improve performance of verification code 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 291d3ead8b Mark static methods 2023-02-13 22:20:02 +01:00
Joris van Rantwijk d1b79c1cde Clean up trace_alternating_paths() 2023-02-13 22:20:02 +01:00
Joris van Rantwijk f491d6dcec Object oriented blossoms, first attempt 2023-02-13 22:20:02 +01:00
Joris van Rantwijk b42440784f Clean up explicit-stack recursion 2023-02-13 22:20:02 +01:00
Joris van Rantwijk fc31657a56 Avoid redundant calls to edge_slack_2x() 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 14b5a032a7 Move least-slack edge tracking to separate class 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 0ad3020425 Use (x, y) instead of (i, j) 2023-02-13 22:20:02 +01:00
Joris van Rantwijk d063bbd45a Merge StageData and PartialMatching 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 8950096df9 minor cleanup 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 4f62a15c06 Use (i, j) instead of (v, w) 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 0f7423e2b8 Simplify naming related to double weights 2023-02-13 22:20:02 +01:00
Joris van Rantwijk 23c3e35865 Eliminate edges with negative weight
The base algorithm transparently ignores edges, but only if
the graph contains at least 1 edge with positive weight.
If ALL edges have negative weight, dual variables may be
initialized to negative values which leads to failure.
2023-02-13 22:17:48 +01:00
Joris van Rantwijk 99bc2912d8 Fix wrong assumption about subblossom labels
When a blossom forms, the labels of sub-blossoms do NOT strictly alternate between S and T when walking around the blossom.
2023-02-13 22:06:13 +01:00
Joris van Rantwijk 3a347e8edb Rename Python module to max_weight_matching 2023-02-13 22:06:13 +01:00