  Mobility-on-demand (MoD) ridesharing is a promising way to improve the
occupancy rate of personal vehicles and reduce traffic congestion and
emissions. Maximizing the number of passengers served and maximizing a profit
target are major optimization goals in MoD ridesharing. We study the
ridesharing with profit constraint problem (labeled as RPC) which considers
both optimization goals altogether: maximize the total number of passengers
subject to an overall drivers' profit target. We give a mathematical
formulation for the RPC problem. We present a polynomial-time exact algorithm
framework (including two practical implementations of the algorithm) and a
(1/2)-approximation algorithm for the case that each vehicle serves at most one
passenger. We propose a (2/3*lambda)-approximation algorithm for the case that
each vehicle serves at most lambda >= 2 passengers. Our algorithms revolve
around the idea of maximum cardinality matching in bipartite graphs and
hypergraphs (set packing) with general edge weight. Based on a real-world
ridesharing dataset in Chicago City and price schemes of Uber, we conduct an
extensive empirical study on our model and algorithms. Experimental results
show that practical price schemes can be incorporated into our model, our exact
algorithms are efficient, and our approximation algorithms achieve about 90% of
optimal solutions, in the number of passengers served.
