  Ride-sharing is a modern urban-mobility paradigm with tremendous potential in
reducing congestion and pollution. Demand-aware design is a promising avenue
for addressing a critical challenge in ride-sharing systems, namely joint
optimization of request-vehicle assignment and routing for a fleet of vehicles.
In this paper, we develop a probabilistic demand-aware framework to tackle the
challenge. We focus on maximizing the expected number of passenger pickups,
given the probability distributions of future demands. The key idea of our
approach is to assign requests to vehicles in a probabilistic manner. It
differentiates our work from existing ones and allows us to explore a richer
design space to tackle the request-vehicle assignment puzzle with a performance
guarantee but still keeping the final solution practically implementable. The
optimization problem is non-convex, combinatorial, and NP-hard in nature. As a
key contribution, we explore the problem structure and propose an elegant
approximation of the objective function to develop a dual-subgradient
heuristic. We characterize a condition under which the heuristic generates a
$\left(1-1/e\right)$ approximation solution. Our solution is simple and
scalable, amendable for practical implementation. Results of numerical
experiments based on real-world traces in Manhattan show that, as compared to a
conventional demand-oblivious scheme, our demand-aware solution improves the
passenger pickups by up to 46%. The results also show that joint optimization
at the fleet level leads to 19% more pickups than that by separate
optimizations at individual vehicles.
