Book contents
- Frontmatter
- Dedication
- Contents
- Preface
- Acknowledgements
- Notation
- 1 Introduction
- 2 Ski-Rental
- 3 List Accessing
- 4 Bin-Packing
- 5 Paging
- 6 Metrical Task System
- 7 Secretary Problem
- 8 Knapsack
- 9 Bipartite Matching
- 10 Primal–Dual Technique
- 11 Facility Location and k-Means Clustering
- 12 Load Balancing
- 13 Scheduling to Minimize Flow Time (Delay)
- 14 Scheduling with Speed Scaling
- 15 Scheduling to Minimize Energy with Job Deadlines
- 16 Travelling Salesman
- 17 Convex Optimization (Server Provisioning in Cloud Computing)
- 18 Multi-Commodity Flow Routing
- 19 Resource Constrained Scheduling (Energy Harvesting Communication)
- 20 Submodular Partitioning for Welfare Maximization
- Appendix
- Bibliography
- Index
9 - Bipartite Matching
Published online by Cambridge University Press: 07 May 2024
- Frontmatter
- Dedication
- Contents
- Preface
- Acknowledgements
- Notation
- 1 Introduction
- 2 Ski-Rental
- 3 List Accessing
- 4 Bin-Packing
- 5 Paging
- 6 Metrical Task System
- 7 Secretary Problem
- 8 Knapsack
- 9 Bipartite Matching
- 10 Primal–Dual Technique
- 11 Facility Location and k-Means Clustering
- 12 Load Balancing
- 13 Scheduling to Minimize Flow Time (Delay)
- 14 Scheduling with Speed Scaling
- 15 Scheduling to Minimize Energy with Job Deadlines
- 16 Travelling Salesman
- 17 Convex Optimization (Server Provisioning in Cloud Computing)
- 18 Multi-Commodity Flow Routing
- 19 Resource Constrained Scheduling (Energy Harvesting Communication)
- 20 Submodular Partitioning for Welfare Maximization
- Appendix
- Bibliography
- Index
Summary
Introduction
In this chapter, we consider a rich combinatorial problem of matching over bipartite graphs, with two sets of vertices, left and right, and an edge can exist only between a left and a right vertex. A matching is a subset of edges such that no two edges in the matching have any common left or right vertex. In the online setting, one side of the vertices, say, right, are available ahead of time, and the left vertices are revealed sequentially. Once a left vertex arrives, its associated edges and the edge weights are also revealed. For a given bipartite graph, the objective is to maximize the number of edges that are part of the matching in the unweighted (weights are 1/0) case, or to maximize the sum-weight of all the edges that are part of matching in the weighted case.
The matching problem is a fundamental combinatorial object that models large classes of association problems, such as web advertising, scheduling jobs to servers, where each server can handle at most one job, crowdsourcing, where each agent can only accomplish at most one job, etc.
In this chapter, we will consider both the unweighted and the weighted case. For the unweighted case, any deterministic algorithm is shown to have a competitive ratio of at most 1/2, which is easily achieved by a greedy algorithm. The main challenge in the unweighted case is to find an optimal randomized algorithm under the worst-case or adversarial input. We first present an upper bound of 1 − 1/e on the competitive ratio of any randomized algorithm, and then analyse an algorithm whose competitive ratio approaches 1 − 1/e with an increasing number of left or right vertices.
The weighted case is a generalization of the secretary problem, and hence adversarial inputs result in the competitive ratio being unboundedly large for any online algorithm. Thus, for the weighted case, typically the secretarial input is considered. Under the secretarial input, we first discuss an algorithm with a competitive ratio of 1/8 that is based on the sample and price philosophy, and then describe an algorithm called ROM whose competitive ratio is 1/e − 1/n, where n is the number of left vertices. Since the competitive ratio of any online algorithm for the secretary problem (Chapter 7) is at most 1/e, ROM is an almost optimal algorithm.
- Type
- Chapter
- Information
- Online Algorithms , pp. 161 - 188Publisher: Cambridge University PressPrint publication year: 2023