  The Adwords and Online Bipartite Matching problems have enjoyed a renewed
attention over the past decade due to their connection to Internet advertising.
Our community has contributed, among other things, new models (notably
stochastic) and extensions to the classical formulations to address the issues
that arise from practical needs. In this paper, we propose a new generalization
based on matroids and show that many of the previous results extend to this
more general setting. Because of the rich structures and expressive power of
matroids, our new setting is potentially of interest both in theory and in
practice.
  In the classical version of the problem, the offline side of a bipartite
graph is known initially while vertices from the online side arrive one at a
time along with their incident edges. The objective is to maintain a decent
approximate matching from which no edge can be removed. Our generalization,
called Matroid Online Bipartite Matching, additionally requires that the set of
matched offline vertices be independent in a given matroid. In particular, the
case of partition matroids corresponds to the natural scenario where each
advertiser manages multiple ads with a fixed total budget.
  Our algorithms attain the same performance as the classical version of the
problems considered, which are often provably the best possible. We present
$1-1/e$-competitive algorithms for Matroid Online Bipartite Matching under the
small bid assumption, as well as a $1-1/e$-competitive algorithm for Matroid
Online Bipartite Matching in the random arrival model. A key technical
ingredient of our results is a carefully designed primal-dual waterfilling
procedure that accommodates for matroid constraints. This is inspired by the
extension of our recent charging scheme for Online Bipartite Vertex Cover.
