Semi-matchings for bipartite graphs and load balancing

Nicholas J A Harvey, Richard E. Ladner, L. Lovász, Tami Tamir

Research output: Contribution to journalArticle

48 Citations (Scopus)

Abstract

We consider the problem of fairly matching the left-hand vertices of a bipartite graph to the right-hand vertices. We refer to this problem as the optimal semi-matching problem; it is a relaxation of the known bipartite matching problem. We present a way to evaluate the quality of a given semi-matching and show that, under this measure, an optimal semi-matching balances the load on the right-hand vertices with respect to any Lp-norm. In particular, when modeling a job assignment system, an optimal semi-matching achieves the minimal makespan and the minimal flow time for the system. The problem of finding optimal semi-matchings is a special case of certain scheduling problems for which known solutions exist. However, these known solutions are based on general network optimization algorithms, and are not the most efficient way to solve the optimal semi-matching problem. To compute optimal semi-matchings efficiently, we present and analyze two new algorithms. The first algorithm generalizes the Hungarian method for computing maximum bipartite matchings, while the second, more efficient algorithm is based on a new notion of cost-reducing paths. Our experimental results demonstrate that the second algorithm is vastly superior to using known network optimization algorithms to solve the optimal semi-matching problem. Furthermore, this same algorithm can also be used to find maximum bipartite matchings and is shown to be roughly as efficient as the best known algorithms for this goal.

Original languageEnglish
Pages (from-to)53-78
Number of pages26
JournalJournal of Algorithms
Volume59
Issue number1
DOIs
Publication statusPublished - Apr 2006

Fingerprint

Load Balancing
Bipartite Graph
Resource allocation
Matching Problem
Bipartite Matching
Network Optimization
Network Algorithms
Optimization Algorithm
Flow Time
Lp-norm
Optimal systems
Scheduling Problem
Assignment
Efficient Algorithms
Scheduling
Path
Generalise
Computing
Evaluate
Costs

Keywords

  • Bipartite graphs
  • Load balancing
  • Matching algorithms
  • Optimal algorithms
  • Semi-matching

ASJC Scopus subject areas

  • Computational Theory and Mathematics
  • Computational Mathematics

Cite this

Semi-matchings for bipartite graphs and load balancing. / Harvey, Nicholas J A; Ladner, Richard E.; Lovász, L.; Tamir, Tami.

In: Journal of Algorithms, Vol. 59, No. 1, 04.2006, p. 53-78.

Research output: Contribution to journalArticle

Harvey, Nicholas J A ; Ladner, Richard E. ; Lovász, L. ; Tamir, Tami. / Semi-matchings for bipartite graphs and load balancing. In: Journal of Algorithms. 2006 ; Vol. 59, No. 1. pp. 53-78.
@article{283a12c06e4142d2bb1b743aa61ebf07,
title = "Semi-matchings for bipartite graphs and load balancing",
abstract = "We consider the problem of fairly matching the left-hand vertices of a bipartite graph to the right-hand vertices. We refer to this problem as the optimal semi-matching problem; it is a relaxation of the known bipartite matching problem. We present a way to evaluate the quality of a given semi-matching and show that, under this measure, an optimal semi-matching balances the load on the right-hand vertices with respect to any Lp-norm. In particular, when modeling a job assignment system, an optimal semi-matching achieves the minimal makespan and the minimal flow time for the system. The problem of finding optimal semi-matchings is a special case of certain scheduling problems for which known solutions exist. However, these known solutions are based on general network optimization algorithms, and are not the most efficient way to solve the optimal semi-matching problem. To compute optimal semi-matchings efficiently, we present and analyze two new algorithms. The first algorithm generalizes the Hungarian method for computing maximum bipartite matchings, while the second, more efficient algorithm is based on a new notion of cost-reducing paths. Our experimental results demonstrate that the second algorithm is vastly superior to using known network optimization algorithms to solve the optimal semi-matching problem. Furthermore, this same algorithm can also be used to find maximum bipartite matchings and is shown to be roughly as efficient as the best known algorithms for this goal.",
keywords = "Bipartite graphs, Load balancing, Matching algorithms, Optimal algorithms, Semi-matching",
author = "Harvey, {Nicholas J A} and Ladner, {Richard E.} and L. Lov{\'a}sz and Tami Tamir",
year = "2006",
month = "4",
doi = "10.1016/j.jalgor.2005.01.003",
language = "English",
volume = "59",
pages = "53--78",
journal = "Journal of Algorithms",
issn = "0196-6774",
publisher = "Academic Press Inc.",
number = "1",

}

TY - JOUR

T1 - Semi-matchings for bipartite graphs and load balancing

AU - Harvey, Nicholas J A

AU - Ladner, Richard E.

AU - Lovász, L.

AU - Tamir, Tami

PY - 2006/4

Y1 - 2006/4

N2 - We consider the problem of fairly matching the left-hand vertices of a bipartite graph to the right-hand vertices. We refer to this problem as the optimal semi-matching problem; it is a relaxation of the known bipartite matching problem. We present a way to evaluate the quality of a given semi-matching and show that, under this measure, an optimal semi-matching balances the load on the right-hand vertices with respect to any Lp-norm. In particular, when modeling a job assignment system, an optimal semi-matching achieves the minimal makespan and the minimal flow time for the system. The problem of finding optimal semi-matchings is a special case of certain scheduling problems for which known solutions exist. However, these known solutions are based on general network optimization algorithms, and are not the most efficient way to solve the optimal semi-matching problem. To compute optimal semi-matchings efficiently, we present and analyze two new algorithms. The first algorithm generalizes the Hungarian method for computing maximum bipartite matchings, while the second, more efficient algorithm is based on a new notion of cost-reducing paths. Our experimental results demonstrate that the second algorithm is vastly superior to using known network optimization algorithms to solve the optimal semi-matching problem. Furthermore, this same algorithm can also be used to find maximum bipartite matchings and is shown to be roughly as efficient as the best known algorithms for this goal.

AB - We consider the problem of fairly matching the left-hand vertices of a bipartite graph to the right-hand vertices. We refer to this problem as the optimal semi-matching problem; it is a relaxation of the known bipartite matching problem. We present a way to evaluate the quality of a given semi-matching and show that, under this measure, an optimal semi-matching balances the load on the right-hand vertices with respect to any Lp-norm. In particular, when modeling a job assignment system, an optimal semi-matching achieves the minimal makespan and the minimal flow time for the system. The problem of finding optimal semi-matchings is a special case of certain scheduling problems for which known solutions exist. However, these known solutions are based on general network optimization algorithms, and are not the most efficient way to solve the optimal semi-matching problem. To compute optimal semi-matchings efficiently, we present and analyze two new algorithms. The first algorithm generalizes the Hungarian method for computing maximum bipartite matchings, while the second, more efficient algorithm is based on a new notion of cost-reducing paths. Our experimental results demonstrate that the second algorithm is vastly superior to using known network optimization algorithms to solve the optimal semi-matching problem. Furthermore, this same algorithm can also be used to find maximum bipartite matchings and is shown to be roughly as efficient as the best known algorithms for this goal.

KW - Bipartite graphs

KW - Load balancing

KW - Matching algorithms

KW - Optimal algorithms

KW - Semi-matching

UR - http://www.scopus.com/inward/record.url?scp=33646449320&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=33646449320&partnerID=8YFLogxK

U2 - 10.1016/j.jalgor.2005.01.003

DO - 10.1016/j.jalgor.2005.01.003

M3 - Article

VL - 59

SP - 53

EP - 78

JO - Journal of Algorithms

JF - Journal of Algorithms

SN - 0196-6774

IS - 1

ER -