weighted bipartite matching l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Weighted Bipartite Matching PowerPoint Presentation
Download Presentation
Weighted Bipartite Matching

Loading in 2 Seconds...

play fullscreen
1 / 21

Weighted Bipartite Matching - PowerPoint PPT Presentation


  • 234 Views
  • Uploaded on

Weighted Bipartite Matching. Lecture 4: Jan 18. Weighted Bipartite Matching. Given a weighted bipartite graph, find a matching with maximum total weight. B. A. Not necessarily a maximum size matching. Today’s Plan. Three algorithms negative cycle algorithm primal dual algorithm

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Weighted Bipartite Matching' - hollye


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2

Weighted Bipartite Matching

Given a weighted bipartite graph,

find a matching with maximum total weight.

B

A

Not necessarily a maximum size matching.

slide3

Today’s Plan

  • Three algorithms
      • negative cycle algorithm
      • primal dual algorithm
      • augmenting path algorithm
  • Applications
slide4

First Algorithm

Find maximum weight perfect matching

How to know if a given matching M is optimal?

Idea: Imagine there is a larger matching M*

and consider the union of M and M*

slide5

First Algorithm

  • Orient the edges (edges in M go up, others go down)
  • edges in M having positive weights, otherwise negative weights

Then M is maximum if and only if there is no negative cycles

first algorithm
First Algorithm

Key: M is maximum  no negative cycle

How to find efficiently?

complexity
Complexity
  • At most nW iterations
  • A negative cycle in time by Floyd Warshall
  • Total running time
  • Can choose minimum mean cycle to avoid W
slide8

Augmenting Path Algorithm

  • Orient the edges (edges in M go up, others go down)
  • edges in M having positive weights, otherwise negative weights

Find a shortest path M-augmenting path at each step

slide9

Augmenting Path Algorithm

Theorem: each matching is an optimal k-matching.

Let the current matching be M

Let the shortest M-augmenting path be P

Let N be a matching of size |M|+1

complexity10
Complexity
  • At most n iterations
  • A shortest path in time by Bellman Ford
  • Total running time
  • Can be speeded up by using Dijkstra O(m + nlogn)
  • Kuhn, Hungarian method
slide11

Primal Dual Algorithm

What is an upper bound of maximum weighted matching?

What is a generalization of minimum vertex cover?

weighted vertex cover:

Minimum weighted vertex cover >= Maximum weighted matching

slide12

Primal Dual Algorithm

Minimum weighted vertex cover >= Maximum weighted matching

  • Primal Dual
  • Maintain a weighted matching M
  • Maintain a weighted vertex cover y
  • Either increase M or decrease y until they are equal.
slide13

Primal Dual Algorithm

Minimum weighted vertex cover >= Maximum weighted matching

  • Consider the subgraph formed by tight edges (the equality subgraph).
  • If there is a tight perfect matching, done.
  • Otherwise, there is a vertex cover.
  • Decrease weighted cover to create more tight edges, and repeat.
complexity14
Complexity
  • Augment at most n times, each O(m)
  • Decrease weighted cover at most m times, each O(m)
  • Total running time
  • Egrevary, Hungarian method
slide15

Quick Summary

  • First algorithm, negative cycle, useful idea to consider symmetric difference
  • Augmenting path algorithm, useful algorithmic technique
  • Primal dual algorithm, a very general framework
    • Why primal dual?
    • How to come up with weighted vertex cover?
    • Reduction from weighted case to unweighted case
slide17

Bonus Question 2

(40%) Find a maximum weighted k-matching which

can be extended to a perfect matching.

Relation to red-blue matching?

slide18

Application of Bipartite Matching

Isaac

Darek

Tom

Jerry

Marking

Tutorials

Solutions

Newsgroup

Job Assignment Problem:

Each person is willing to do a subset of jobs.

Can you find an assignment so that all jobs are taken care of?

  • Ad-auction, Google, online matching
  • Fingerprint matching
slide19

Application of Bipartite Matching

With Hall’s theorem, now you can determine exactly

when a partial chessboard can be filled with dominos.

slide20

Application of Bipartite Matching

  • Latin Square: a nxn square, the goal is to fill the square
  • with numbers from 1 to n so that:
          • Each row contains every number from 1 to n.
          • Each column contains every number from 1 to n.
slide21

Application of Bipartite Matching

Now suppose you are given a partial Latin Square.

Can you always extend it to a Latin Square?

With Hall’s theorem, you can prove that the answer is yes.