2

Given a weighed complete bipartite graph G=(V, U, E), the maximum weighted bipartite matching problem, i.e., the assignment problem, aims to find a matching in G where the sum of edge weights is maximized. I know there are some methods (e.g., Hungarian algorithm) can solve this problem. Now, I want to solve a slightly different problem:

Given a weighed complete bipartite graph G=(V, U, E), I would like to find the maximum weighted bipartite matching and the second maximum weighted bipartite matching in G at the same time. Any ideas would be much appreciated.

John Smith
  • 617
  • 3
  • 16
  • Hey John, thanks for this question which leads to the reference below. I had some trouble to understand the paper, and have put out a question here (https://mathoverflow.net/questions/450918/how-to-understand-chegireddy-hamachers-algorithm-for-finding-k-best-perfect-mat). If you were able to understand the paper, I would really appreciate if you can help me there. Thanks! – fagd Jul 17 '23 at 17:45

1 Answers1

1

There is a general algorithm called Lawler-Murty which allows you to find the top K answers to combinatorial algorithms (including matching) in successive calls. It is described at https://core.ac.uk/download/pdf/82129717.pdf in the context of matching.

Basically, after finding the best answer, you add constraints to the problem which create a number of sub-problems such that the answers found so far are ruled out, but all other answers will still turn up as the answer to one of the sub-problems. The second best answer will turn up as the best answer to one of the sub-problems. When you do this repeatedly you end up with a large tree of sub-problems to solve. For matching problems, you can reduce the time take to solve a sub-problem by making use of some of the work from previous problems.

mcdowella
  • 19,301
  • 2
  • 19
  • 25