English

Approximation Algorithms for the Maximum Carpool Matching Problem

Discrete Mathematics 2016-12-06 v2 Data Structures and Algorithms

Abstract

The Maximum Carpool Matching problem is a star packing problem in directed graphs. Formally, given a directed graph G=(V,A)G = (V, A), a capacity function c:VN c: V \to N , and a weight function w:ARw : A \to R , a feasible \emph{carpool matching} is a triple (P,D,M)(P, D, M), where PP (passengers) and DD (drivers) form a partition of VV, and MM is a subset of A(P×D)A \cap (P \times D), under the constraints that for every vertex dDd \in D, din(d)c(d)din(d) \leq c(d), and for every vertex pPp \in P, dout(p)1dout(p) \leq 1. In the Maximum Carpool Matching problem we seek for a matching (P,D,M)(P, D, M) that maximizes the total weight of MM. The problem arises when designing an online carpool service, such as Zimride~\cite{zimride}, that tries to connect between passengers and drivers based on (arbitrary) similarity function. The problem is known to be NP-hard, even for uniform weights and without capacity constraints. We present a 33-approximation algorithm for the problem and 22-approximation algorithm for the unweighted variant of the problem.

Keywords

Cite

@article{arxiv.1604.05609,
  title  = {Approximation Algorithms for the Maximum Carpool Matching Problem},
  author = {Gilad Kutiel},
  journal= {arXiv preprint arXiv:1604.05609},
  year   = {2016}
}
R2 v1 2026-06-22T13:35:55.300Z