B ENCHMARKING MINIMUM PASSENGER WAITING TIME IN ONLINE TAXI DISPATCHING WITH EXACT OFFLINE OPTIMIZATION METHODS

: This paper analyses the use of exact offline optimization methods for benchmarking online taxi dispatching strategies where the objective is to minimize the total passenger waiting time. First, a general framework for simulating dynamic transport services in MATSim (Multi-Agent Transport Simulation) is described. Next, the model of online taxi dispatching is defined, followed by a formulation of the offline problem as a mixed integer programming problem. Three benchmarks based on the offline problem are presented and compared to two simple heuristic strategies and a hypothetical simulation with teleportation of idle taxis. The benchmarks are evaluated and compared using the simulation scenario of taxi services in the city of Mielec. The obtained (approximate) lower and upper bounds for the minimum total passenger waiting time indicate directions for further research.


Introduction
The recent developments in ICT (Information and Communication Technology) have opened new opportunities for operating taxi fleets in real time and aroused interest in the online taxi dispatching problem.As lots of optimization methods have got devised over the last decade [1,3,6,7,10,12,13,14,15], benchmarking their performance is of the utmost importance.This pertains to development of both test scenarios, including simulation platforms, and reference dispatching strategies, the latter being the subject of this paper.Competitive analysis is a popular method used for assessing the performance of online algorithms against an optimal offline algorithm, given that the latter has the full knowledge of the future.However, this approach is typically applicable only for small, theoretical instances of online problems, whereas for real-world cases, one has to assess the performance experimentally (e.g. through simulation) by comparing it to that of some selected reference, although not necessarily optimal, algorithms [4].In this paper, exact offline optimization methods are proposed as benchmarks for online taxi dispatching strategies where the objective is to minimize the total passenger waiting time.The following sections: Simulation platform, Online taxi dispatching, The Offline Taxi Dispatching Problem and Test scenario, are revised versions of respective sections from [8].The rest of the paper makes an original contribution to the field.

Simulation platform
In order to simulate online taxi dispatching or other dynamic vehicle routing and scheduling problems, a dedicated MATSim extension, DVRP, has been developed [9,11].MATSim is an agent-based system that provides means for microscopic, activity-based simulation of transport systems through an iterative process of day-to-day learning [2].The DVRP extension allows for modelling a wide spectrum of dynamic vehicle routing/scheduling problems by introducing a simulation framework where:  each driver is modelled as an agent that follows his/her dynamic schedule; this is in contrast to the standard day-to-day learning approach used in MATSim  a driver's/vehicle's schedule is a sequence of tasks of different types, such as driving from one location to another or waiting at a given location  optimization is triggered by events that reflect changes in the system  a fleet of vehicles comprises one component of the whole traffic flow simulated by means of one of the queue-based simulators available in MATSim  each vehicle can be monitored online as it moves from link to link; this information may be used to update the timing of its schedule and possibly trigger re-optimization in the case of passenger transport (e.g.taxi, DRT), interaction between the dispatcher, drivers and passengers is simulated in detail, including calling a ride, picking up/dropping off passengers, etc.

Let
{1, , } Nn  be the set of taxi requests (customers).The simulation framework assumes the following sequence of events related to serving each request i N  (illustrated in Fig. 1  t t i N  be the time-dependent total serve time of customer i, including picking up, driving and dropping off, where t is the time when the pickup starts.
The objective (1) minimizes the total waiting time of customers.Constraints (2)-( 4) ensure that the assignment is valid, which means that each vertex is visited exactly once.Constraints (5)  x   .Constraints (6) ensure that after picking up customer i, the vehicle picks up customer j after at least S i ij tt  , the amount of time required to serve i and travel from di to pj.Given that T is large enough, constraints (6) are not restrictive when , 0, i , Additionally, constraints (6) eliminate cycles without vehicles (subtour elimination constraints).Constraints (7) ensure that the pickup of customer i starts at time dep i  or later.

Benchmarks
The MIP problem formulated in the previous section can be used in many different ways to approximate the minimum waiting time.This section describes two approaches and opposes them to three other benchmarks.

Full offline optimization
Given the full knowledge of the future, a complete (e.g. for a whole day) MIP problem instance is solved prior to simulation, resulting in an a priori approximation of the minimum total waiting time.
Next the scenario is simulated using the precomputed schedules, which gives an a posteriori approximation.Since the simulation is not deterministic (e.g.stochastic travel times), the timing of the a priori (pre-computed) schedules (determined using the average travel times) must be updated on the fly.In general, stochastic travel times make the a posteriori (simulated) passenger waiting times larger compared to those of the a priori solution (reaching pi before dep i  does not reduce the total waiting times, whereas the opposite does increase it).This issue could be fixed by repeatedly re-running the full optimization during simulation in response to incoming events.This, however, would imply prohibitively long computation times.

The MIP strategy
This online strategy consists in repeatedly running re-optimization in response to changes in the system.As this is considered an online strategy, the future requests are unknown and only the open ones are considered in scheduling.The formulation of the offline problem requires the destination locations to be provided in advance (i.e. during request submission).
To ensure that the strategy is responsive under high load, both the planning horizon and computation time are limited.The planning horizon is restricted to the first h requests in L. Whenever a new request is included into the planning horizon, due to either call i E or disp i E , a respective offline problem is derived the current state and solved.A detailed description of this strategy may be found in [8,10].

Simple heuristic strategies
The proposed benchmarks are compared with two simple heuristic online strategies, both described and analyzed in [10] The second strategy, RES (re-scheduling), schedules requests to the closest available taxi , regardless of whether idle or busy.The scheduling, triggered by call i E or pick1 i E , allows for both immediate and advance dispatches.By default, k  is the taxi that arrives earliest at pi: , [1] arg min () In general, RES is expected to outperform NOS owing to a bigger choice set ( IA MM  ), especially under high load.

Idle vehicle teleportation
By moving idle vehicles towards the pickup locations of the (near) future requests, the total waiting time may be significantly reduced, even down to zero provided that the fleet is large enough.A good approximation of the lower bound for the minimum total passenger waiting time can be obtained by teleporting an idle taxi to a new customer.In this case, passengers wait only if all taxis are busy, and waiting requests are served according to their order in L. Theoretically, since travel times are time-dependent and stochastic, the total waiting time obtained with this strategy may be greater than the minimum total waiting times without teleporting.This is, however, very unlikely and in most cases this strategy produces rather overoptimistic (not tight) lower bounds.

Test scenario
The computational experiments were run on a smallsize toy model of the city of Mielec, Poland, with a population of over 60,000 inhabitants.The demand comprises of over 56,000 private car trips between 6:00 am and 8:00 pm.The performance of the dispatching strategies was tested at different levels of taxi demand, where the set of requests, N, consisted of n = 406 (1% of all trips), 636 (1.5%), 840 (2%), 1069 (2.5%), 1297 (3%), 1506 (3.5%) and 1719 (4%) randomly selected private car trips, hence the spatiotemporal distributions of taxi and private car trips were virtually identical.The set of vehicles, M, comprised m = 25 taxis.To obtain reliable travel time estimates for simulating taxis, first the Mielec scenario was run without taxis for 20 iterations in order to reach a state of relaxation.Figures 3 shows a snapshot of the traffic state in the 20 th iteration at 5:00 pm (afternoon peak hours), whereas Fig. 4 illustrates the resulting the scale of traffic over time.Next, after changing the mode of n trips from private car to taxi, which introduced additional traffic due to the movement of empty taxis, 5 additional warmup iterations (with the day-to-day learning switched off) were run to calculate 5-day averages of travel times.To provide comparability, this step was carried out independently for each dispatching setup, since a different way of dispatching may result in different travel times, especially for higher shares of taxi trips.A branch-and-bound (BB) algorithm from the Gurobi Optimizer [5], version 5.6.2, was used to solve the offline MIP problem.Each time, first the initial feasible solution was calculated with RES, and then BB was run in parallel on all CPU cores.Based on the findings of [8], the planning horizon in the MIP strategy was the same as the number of taxis, h = 25, and the computation time of each optimization was limited to 60 seconds.For the full offline optimization, a 2-hour computation limit was assumed.In both cases, 24-hour travel time averages were used instead of the default 15-minute averages.The experiments were run on a computer with the 6core Intel Core i7-3930K processor with Hyper-Threading Technology and 64 GB of RAM.

Computation results
To provide mutual comparability of different experiments, instead of the total passenger waiting time, the average passenger waiting time, defined as is referred to in this section.Figure 5 presents the obtained average waiting times for different n and the following configurations:  offline a prioricomplete offline optimization with 2-hour computation time limit  offline a posteriorithe results of the full offline optimization after fitting them into simulation  MIPthe MIP strategy with the planning horizon limited to h = 25 taxis and 60-second computation time limit  NOSthe no-scheduling strategy  RESthe re-scheduling strategy; destinations unknown a priori  teleportationa NOS-like naïve strategy; idle taxis teleported to pickup locations The results indicate that out of three online benchmarking strategies, namely NOS, RES and MIP, the third one performs best.Although the required a priori knowledge of destinations and long response times (not a real-time strategy) constrain the practical applications of MIP, it still may be successfully used as a yardstick for assessing the performance of different sophisticated real-time dispatching strategies.Running one complete offline optimization before simulation starts has limited usability.First of all, the solver could not find the optimum within the time limit for the medium and high load scenarios (n > 800), or even improve the initial solution for the high load scenarios (n > 1200).Secondly, applying the obtained results in the stochastic simulation, without any possibility to react (due to long computation times) causes a significant performance degradation (especially under higher load where the schedule is very tight), which is depicted with the growing gap between offline a priori and offline a posteriori in Fig. 5.The results obtained for both the offline a priori and teleportation options indicate that even at medium loads ( 800 1200 n  ) there are periods with demand exceeding supply.This undersupply intensifies as n grows.When teleportation is enabled, the average waiting time for n = 1719 exceeds 6.5 minutes whereas the average dropoff trip time is slightly below 5.9 minutes.This illustrates the scale of undersupply.

Conclusion
Out of six different benchmarks, two approaches, namely MIP and teleportation, are particularly useful in approximating the upper and lower bounds for the minimal total passenger waiting time.Although the former uses dispatching strategy of limited applicability (due to long computation times) and the latter is purely hypothetical, both may be used for evaluating online taxi dispatching algorithms.The MIP strategy can be enhanced by incorporating the knowledge of future requests.This would probably result in lower waiting times, at least under low load when the of open request is usually lower than the length of the horizon.However, such a modified MIP strategy could not be used as an approximation of the upper bound for the optimal online algorithms.The analysis of the results obtained for all the benchmarks indicates that in the case of low load, when vehicles remain idle for most of the time, any significant improvement in the total passenger waiting time is possible only through anticipating future request and moving idle vehicles towards them.On the other hand, under high load, the most important issue is providing the highest possible throughput, which can be done only by minimizing the total pickup time, so that more time is spent effectively on serving customers.However, under extremely high load, even the complete reduction of the pickup trip times via teleportation of idle vehicles would only minimize but not eliminate the undersupply.

Fig. 1 .
Fig. 1.A taxi driver's schedule and a passenger's plan (the passenger waits for the taxi)

Fig. 5 .
Fig. 5. Average waiting time, TW, as a function of n Assuming that vehicles neither cruise nor return to taxi ranks, ok is the destination of the last customer served by k or k's home location if the taxi has not served any request yet.For an idle vehicle k, k a is the time k finishes serving its last request.An active vehicle may have temporarily undefined availability if the last customer in its schedule, i, has not provided di on submission (time call  ).In such cases, both ok and ak remain unknown until the pickup is finished (time [16]n[16], we model the offline problem as an assignment problem, where the goal is to find cycles k M  is represented by vertex k) and requests (each request i N  is represented by vertex m+i).
, such that the total waiting time is minimized.We assume that taxi k remains at di of the last served request, i, or at ok if it has not been dispatched yet.