vs. Reoptimization for Dynamic Vehicle Routing with Stochastic Requests

Marlin W. Ulmer

Abstract Due to new business models and technological advances, dynamic vehicle routing is gaining increasing . Solving dynamic vehicle routing problems is challenging, since it requires optimization in two directions. First, as a reaction to newly revealed information, current routing plans need to be reoptimized. Second, uncertain future changes of information need to be anticipated by explicitly quantifying the impact of future information and routing developments. Since customers or drivers usually wait for response, decisions need to be derived in real-time. This limited time often prohibits extensive optimization in both directions and the question arises how to utilize the limited calculation time effectively. In this paper, we compare the merit of route reoptimization and anticipation for a dynamic vehicle routing problem with stochastic requests. To this end, we present a policy allowing for a tunable combination of two existing approaches, each one aiming on optimization in one direction. We show that anticipation is beneficial in every case. We further reveal how the optimization direction is strongly connected to the degree of dynamism, the percentage of unknown requests. Keywords: Dynamic Vehicle Routing, Stochastic Requests, Degree of Dy- namism, Reoptimization, Anticipation, Mixed-Integer Programming, Ap- proximate Dynamic Programming

1 Introduction

In a dynamic vehicle routing problem (DVRP), information is uncertain and re- vealed over time forcing subsequent adaptions of routing plans. Dynamic routing problems have become a center of attention in the research community driven by

1 technological advances and new business models (Ulmer 2016). Recent reviews are given by Pillac et al. (2013), Ritzinger et al. (2015), and Psaraftis et al. (2015). Dynamic vehicle routing problems are expected to be one main research field in city logistics (Savelsbergh and Van Woensel 2016). The literature reviews identify stochastic customer requests as the main driver of uncertainty in practice, e.g., for emergency vehicles, technical, healthcare, and courier services as well as parcel and passenger transportation in the growing fields of same-day delivery, shared mobility, or demand responsive transportation. Other examples of uncertainty are stochastic service times (Zhang et al. 2015), demands (Goodson et al. 2015), or travel times (Schilde et al. 2014). Even though routing applications with uncertain requests differ in their objec- tives and constraints, they all share the requirement of assigning new requests to vehicles and of determining efficient routing plans for the fleet. On the operational level, they often are limited in their accessible resources such as number of ve- hicles, working hours of drivers, inventory, vehicle’s capacities, etc. Most of the approaches aim at utilizing these limited resources to maximize revenue or the number of served customers. Since requesting customers often wait for responses, decision making needs to be conducted in real-time and the time for computational calculations is highly limited.

1.1 The Degree of Dynamism The aforementioned applications differ in their level of uncertainty, in particular, the question of how many customers are initially known and how many customers may stochastically request over the time horizon. Larsen et al. (2002) denotes the expected percentage of uncertain requests as the degree of dynamism (DOD). The DOD is defined by the ratio between expected number of initial customers E|C0| and new requests E|C+|: |C | DOD = E + . (1) E|C0| + E|C+| The DOD is one main dimension to classify DVRPs with stochastic requests. A moderate DODs may be experienced for applications such as oil distribution, patient transports, or grocery delivery (Ritzinger et al. 2014, Ehmke and Campbell 2014). The range of applications with high DODs comprises emergency vehicles or courier services (Maxwell et al. 2010, Thomas 2007) and can especially be found in emerging applications such as same-day delivery, demand-responsive transportation, or shared mobility (Voccia et al. 2016, Hall¨ et al. 2012, Brinkmann

2 et al. 2015). For a detailed classification of DVRP-applications, the interested reader is referred to Ulmer (2016).

1.2 Reoptimization vs. Anticipation As the literature reviews reveal, research on DVRPs usually focus on either reop- timization of the current routing plan or anticipation of future information and routing evolution. We describe these two directions in the following in detail. To this end, we draw on the Bellman Equation. First, we recall a solution for a dynamic decision problem as a decision policy π assigning a routing plan to every potential state of the problem. The optimal policy π∗ can be derived by following the Bellman Equation:

K X π∗  max R(Sk, x) + E R(Si,X (Si))|(Sk, x) . (2) x∈X (Sk) i=k+1 The Bellman Equation contains two parts. The first addend represents the im- mediate rewards or costs resulting from the current decision induced by the routing plan. The second addend represents the expected sum of future rewards or costs based on the current decision (and following decision policy π∗). Since the Curses of Dimensionality in DVRPs are usually tremendous, an optimal policy cannot be achieved for problems of practical interest and research draws on heuristic methods (Powell 2011). These heuristics either focus on reoptimization or anticipation and can be classified based on the Bellman Equation. Reoptimization addresses the first addend by updating the routing plan to maximize immediate reward or minimize immediate costs (Gendreau et al. 1999). Anticipation addresses the second addend by explicitly quantifying the expected future costs or rewards (Klapp et al. 2016). The two directions are depicted in Figure 1. The current state and routing plan is shown in the lower left. The black circle indicates the vehicle’s current location. On the y-axis, the improvement of the current routing plan with respect to reoptimization is shown representing the first term of the Bellman Equation. The efficiency of the routing plan increases from the coarse plan in the lower left to the most efficient in the upper left of Figure 1. On the x-axis, the potential temporal evolution of routing, information, and route updates is depicted in a simplified way. The development shows how the vehicle executes the route which may be frequently updated according to newly revealed information. Anticipation is now the explicit quantification of the x-axis in the determination of an effective routing plan represented by the second term of the Bellman Equation. The calculation

3 Ca lcu la tio n Lim it Reoptimization of Routing Plans

Anticipation of Information and Routing Plan Evolution

Figure 1: Reoptimization and Anticipation limit is indicated by the diagonal line. As aforementioned, extensive real-time calculations in both dimensions are prohibited. Due to the comprehensive knowledge based on the static and deterministic routing literature, many solution approaches focus on the y-axis of Figure 1 re- optimizing routing plans on a rolling horizon based on the currently available information. Typically, the x-axis is neglected. Still, with advances in informa- tion and communication technology stochastic information about potential future developments becomes accessible. Gendreau et al. (2016) sees the informational process as “an important dimension to consider” in the optimization decisions. As Speranza (2016) and Savelsbergh and Van Woensel (2016) state, anticipation, hence, the consideration of the x-axis by integrating both stochastic information and future adaptions, is a major challenge in DVRP-research. Anticipatory solution approaches often draw on simulation of future information and routing develop- ment to evaluate the current state’s decision. Still, due to the limited calculation

4 time, they usually base on routing heuristics and typically the y-axis, hence, routing reoptimization. Both directions have therefore advantages and shortcom- ings. Reoptimization may free valuable resources allowing for more efficient plans while anticipation may incorporate important future developments in current decision making allowing for more effective routing and assignment decisions.

1.3 Contributions The main purpose of this paper is the analysis from which direction DVRPs may be approached with respect to their DODs. To this end, we present an approach combining two existing solution approaches from each direction: reoptimization by means of mixed-integer programming and anticipation based on approximate dynamic programming. This new approach is tunable to allow shifting the focus between the two directions along the line of computational limitation depicted in Figure 1. To analyze the merits of both research directions, we run a computational evaluation on the vehicle routing problem with stochastic requests (VRPSR) and a variety of instance settings mimicking the conditions of different practical applica- tions represented by varying DODs. As we show, there is no dominating research direction. Still, the optimization focus should depend on the degree of uncertainty. A low DOD demands for an emphasis on reoptimization while moderate and high DODs require significant effort in anticipation. We not only show that both direc- tions are valuable and a combination is essential to achieve effective and efficient decision policies. We also show how they should be combined under different conditions. This paper is the first to explicitly compare and quantify merits and shortcomings of reoptimization and anticipation. It may further allow guidance how to approach DVRPs with respect to their DOD. This paper can therefore be seen in alignment with the research by Larsen et al. (2002), who analyze how the DOD affects the solution quality of basic routing heuristics. The paper is organized as follows. In §2, we define and model the VRPSR. We further analyze how work on the VRPSR (or related problems) addresses the two optimization components. We present our approach in §3 and conduct the computational study in §4. The paper concludes with a summary and an outlook in §5.

5 2 Problem Definition: The VRPSR

To analyze the performance of anticipatory approaches and reoptimization, we define the vehicle routing problem with stochastic requests (VRPSR) containing the two major decision components of DVRPs; the assignment and the routing decision. Nevertheless, we reduce the complexity of the problem by considering one vehicle only. The assignment decision is therefore condensed to the question, whether to accept a request for service by the vehicle or to reject the request. In the VRPSR, an uncapacitated vehicle serves customers in a service area considering a time limit. The tour starts and ends in a depot. A set of known early request customers (ERC) needs to be served. During the day, new requests occur. If the vehicle is located at a customer, the dispatcher decides about the subset of occurred requests to be assigned to the vehicle and an update of the planned tour. The dispatcher aims on maximizing the number of assigned late request customers (LRC). Modeling the problem as Markov decision process (MDP, Puterman (2014)), a decision point k occurs if the vehicle is located at a customer. A state Sk = new (tk, θk, Ck ) consists of the point of time tk, the vehicle’s position Pk, the set of not yet served ERC and assigned LRC, and their planned sequence all integrated 1 2 n in the tour θk = (Pk,Ck ,Ck ,...,Ck ,D). Further, Sk contains the set of new LRC new j j+l new Ck = {C ,...,C }. Decisions x are made about the subset of Ck to assign x 1 and an update of the tour θk to θk = (Pk,Ck,x,...,D). This update determines the next customer to visit. The immediate reward R(Sk, x) is the number of newly x x assigned LRC. A post-decision state Sk = (tk, θk ) consists of the point of time x and the planned tour θk including the vehicle’s position, the not yet served ERC and assigned LRC. The transition results from the vehicle’s travel or waiting and provides a new set of requesting LRC. The process terminates in state SK when no customers remain to be served and the vehicle has returned to the depot. Figure 2 presents an example for a decision state, a decision, and the result- 1 2 5 6 7 ing post-decision state. The state Sk = (60, (Pk,C ,C ,C ,D), {C ,C }) is depicted on the left side at time tk = 60. The current position of the vehicle is in the upper right portion of the service area. Three customers C1,C2,C5 are already assigned. The current planned tour θk is indicated by the dashed line 1 2 5 and starts in Pk, serves customers in the order C ,C ,C , and returns to the new 6 7 depot. Two new customers Ck = {C ,C } have requested service. Decision 6 6 5 2 1 6 x = (C , (Pk,C ,C ,C ,C ,D)) determines the assignment of customer C and x 6 5 2 1 updates the tour to θk = (Pk,C ,C ,C ,C ,D) changing the previous sequence of customers. The immediate reward is R(Sk, x) = 1. The application of x leads to

6 7

1 1

6 6

2 5 2 5

Figure 2: State, Decision, and Post-Decision State

x 6 5 2 1 post-decision state Sk = (60, (Pk,C ,C ,C ,C ,D)). The next location to travel to is C6 indicated by the solid line. When arriving at C6, a set of new requests is revealed leading to the next state Sk+1. Since the customer requests are stochastic, the number of assignments is a random variable. The objective for the VRPSR is to identify an optimal decision ∗ π π policy π ∈ Π. A policy π : S → X is a sequence of decision rules (X0 ,...,XK ) π to assign every state Sk ∈ S to a decision Xk (Sk) ∈ X (Sk). Decision rule π Xk (Sk) is the decision rule dependent on state Sk induced by π in decision point k. An optimal policy π∗ maximizes the expected rewards over all decision points subsequently applying π∗ as depicted in Equation (3):

" K # ∗ X π π = arg max E R(Xk (Sk))|S0 . (3) π∈Π k=0 ∗ For every state Sk, π holds the Bellman equation as depicted in Equation (4). In every decision point k, π∗ selects the decision maximizing the sum of immediate reward and the expected future rewards, as depicted by the Bellman equation in x Equation (4). The second term of Equation (4) is called the value V (Sk ) of a x post-decision state Sk .

( " K #) π∗ X π∗ Xk (Sk) = arg max R(Sk, x) + E R(Sj,Xj (Sj))|Sk (4) x∈X(Sk) j=k+1

7 2.1 Literature Review In the following, we analyze the related literature. Since the number of recent reviews is vast, we solely classify the approaches with respect to their direction of optimization. Table 1 shows a selection of work on DVRPs with stochastic requests similar to the VRPSR. In all of the considered problems, routing and assignment decisions are made dynamically over the time horizon. Approaches as classified under the term reoptimization if the majority of calculation time is spend to solve the routing problem based on current information. Approaches focusing on estimation of the impact of current decisions on future costs or rewards are classified as anticipatory. There is a minority of papers balancing the calculation time on both research directions. We denote these approaches as combination. Notably, as we show in our computational evaluation, a combination needs not necessarily to be advantageous. Early works analyze the impact of routing heuristics or waiting strategies to the number of served requests and travel duration (Psaraftis 1980, Bertsimas and Van Ryzin 1991, Tassiulas 1996, Larsen et al. 2002, Mitrovic-Mini´ c´ and Laporte 2004). Reoptimization is mainly achieved via mixed-integer programming (MIP) often combined with metaheuristics applied on a rolling horizon (Gendreau et al. 1999, Swihart and Papastavrou 1999, Ichoua et al. 2000, Gendreau et al. 2006, Branchini et al. 2009, Lin et al. 2014, Ninikas and Minis 2014, Schyns 2015, Arslan et al. 2016). In some cases, reoptimization approaches are combined with mild anticipation by means of dummy customers (Ichoua et al. 2006, Ferrucci et al. 2013). Still, an explicit consideration of future development, especially, routing updates is not given. To analyze the impact of reoptimization in our case study, we orientate on Gendreau et al. (1999) and solve a MIP on a rolling horizon (RHR). We define the approach in §3.1. Anticipation is mainly achieved by means of approximate dynamic program- ming (Thomas 2007, Meisel 2011, Ulmer et al. 2016, 2015, Klapp et al. 2016) estimating the reward-to-go for states and decisions. Due to computational neces- sity, routing is often conducted via basic routing heuristics like cheapest insertion. In the case of Klapp et al. (2016), routing is even simplified to the real line. Ulmer et al. (2016) present an offline method to decide about customer assignments based on the expected value of a decision taken. Offline methods are highly valuable, since their online application usually requires only a fraction of a second. Still, preliminary test on combining this method with route reoptimization leads to infe- rior results since the reoptimization could not be integrated in the extensive offline simulation runs. The offline value evaluation could, therefore, not be transferred to

8 Table 1: Literature Classification

Reoptimization Combination Anticipation Psaraftis (1980) Bertsimas and Van Ryzin (1991) Tassiulas (1996) Gendreau et al. (1999) X Swihart and Papastavrou (1999) X Ichoua et al. (2000) X Larsen et al. (2002) Mitrovic-Mini´ c´ and Laporte (2004) Bent and Van Hentenryck (2004) X Ichoua et al. (2006) X Gendreau et al. (2006) X Chen et al. (2006) X Hvattum et al. (2006) X Thomas (2007) X Branchini et al. (2009) X Ghiani et al. (2009) X Meisel (2011) X Ferrucci et al. (2013) X Lin et al. (2014) X Ninikas and Minis (2014) X Ulmer et al. (2015) X Schyns (2015) X Voccia et al. (2016) X Arslan et al. (2016) X Ulmer et al. (2016) X Klapp et al. (2016) X the reoptimized online routes. The current state-of-the-art heuristic for the VRPSR is presented by Ulmer et al. (2015) combining online and offline simulations within a rollout algorithm (RA). We select this approach for our computational evaluation and describe the procedure in §3.2. There exists a small fraction of works combining reoptimization and antic- ipation. These approaches evaluate a limited set of routing plans by means of sampling, in particular, by strictly limiting the sampling horizon and neglecting any future adaption of routing plans (Ghiani et al. 2009). Most prominent is the

9 multiple-scenario approach (MSA) by Bent and Van Hentenryck (2004), also ap- plied in Hvattum et al. (2006) and Voccia et al. (2016). For the MSA, a set of scenarios is generated. For each scenario, a routing plan is derived. The plan “most similar” to the other plans is then implemented. Still, the MSA is not able to reflect future dynamic decision making. For the VRPSR, Ghiani et al. (2012) and Ulmer et al. (2016) show that the application of MSA does not provide significant improvement and is inferior to methods of approximate dynamic programming.

3 Approaches

In this section, we present and combine one approach from each direction. The first approach focuses on current routing reoptimization via mixed-integer programming on a rolling horizon (RHR) and is presented in §3.1. The second one, the rollout algorithm (RA), solely focus on anticipatory optimization, i.e., on estimating the reward to go drawing on cheapest insertion routing heuristic (CI, Rosenkrantz et al. 1974). We then propose three schemes how to combine these two approaches. Finally, we present tuning results and the benchmark policies.

3.1 Rolling Horizon Reoptimization A direct optimization of the first Bellman-term would require solving a traveling |Cnew| salesman problems (TSPs) for every of the 2 k subsets of new requests to select the TSP maximizing the number of newly integrated requests. Due to the exponen- tial increase of TSPs to solve per new request, this cannot be achieved in real-time. Hence, the RHR draws on an insertion heuristic and then focus on minimizing the duration of the resulting tour following Gendreau et al. (1999). More precisely, RHR assigns the maximal amount of requests which can be feasible inserted in tour ¯ ¯ θk via CI. The insertion leads to planned tour θk. Then, routing plan θk is optimized with respect to the overall travel duration. To this end, we draw on the solution of a mixed-integer program (MIP) of an open TSP as defined in the following. ¯ Given a planned tour θk with n − 1 customers plus the current location and the depot. As decision variables, we define Xij, ∀i, j ∈ {0, . . . , n}: ( 1 if travel from i to j is planned. Xij = 0 else For subtour elimination, we use Miller-Tucker-Zemlin subtour elimination

10 constraints (Miller et al. 1960) and the according decision variables πi. This leads to the following adaption of the well-known TSP-model.

n−1 X min cij · Xij (0) i=0

s. t. Xn0 = 1 (1) n X Xij = 1, ∀i ∈ {0, . . . , n} (2) j=0 n X Xij = 1, ∀j ∈ {0, . . . , n} (3) i=0

πi − πj + (n + 1) · Xij ≤ n, ∀i, j ∈ {1, . . . , n} (4) Xij ∈ {0, 1}, πi ∈ R, ∀i, j ∈ {0, . . . , n} (5) We apply two adaptions. First, we enforce a connection between depot and current location in condition (1). Second, the objective function in (0) ignores the according travel duration. The solution of the MIP then induces the next customer to visit. The resulting decision policy πRHR applies the combination of greedy subset selection and solving the MIP on a rolling horizon.

3.2 Rollout Algorithm For anticipation, we draw on the current state-of-the-art approach, the online-offline rollout algorithm by Ulmer et al. (2015). The RA focus on the assignment decisions and applies CI to determine routing. The idea of the RA is to estimate the second term of Equation 4 for a state by simulating a number of trajectories into the future. Within these simulation runs, decision making is conducted by a base policy, in our case an offline VFA by Ulmer et al. (2016). Figure 3 sketches the RA-procedure (Ulmer 2016). For the detailed algorithm, the interested reader is referred to the Appendix. Assuming state Sk, a set of xi i = 1, . . . , n decisions, and post-decision states Sk . For every post-decision state, the RA simulates m trajectories, i.e., the routing and requests development based on a particular sampled problem realization ωj. Within the simulation runs, at points indicated by the stars, routing and assignment decisions needs to be taken in an efficient manner since runtime is highly limited. To this end, the RA draws on the anticipatory time budgeting heuristic (ATB) by Ulmer et al. (2016) as base

11 with i A usqety h lne ori epiie i H.Asmn an Assuming RHR. via reoptimized is tour planned the Subsequently, RA. via π with points decision point for one at horizon time the split we end, this To point. RA the seconds. for runtime the policies indicating these denote We approaches. the of decision runtime every conducted allowed in is overall selection RHR subset and The RA time. calculation both accessible apply the three split define we We and First, point heuristics. two the classes. combine policy we how different describe we section, this RA In and RHR Combining 3.3 to due possible is assign. routing Based to the customers intractability. of rewards. of computational reoptimization trajectories’ subset no simulations, the all the selects over within RA Notably, average the the values, approximated then these is second on Every the (4) CI. of on Equation approximation draws of ATB The routing, reward. term For realized left. a current budget returns the time trajectory to free simulated respect the with and state time post-decision of a point of value the estimates ATB policy. t RA split S efrhrdfieplce hr ihrR rRRi ple nadecision a in applied is RHR or RA either where policies define further We k ple h Awt runtime with RA the applies t k ≤ t x x x split n 2 1 n oiyi ple.Atrti on,teohrplc sapplied is policy other the point, this After applied. is policy one , iue3 h nieOfln otDcso Rollout Post-Decision Online-Offline The 3: Figure S S S x x k k x k n ... 2 1 ω ω ω ω ω ω nk nk 2k 2k 1k 1k m m m 1 1 1 t k S S t > T k+1 k+1 ... … … … evr h ecnaeo utm eiae to dedicated runtime of percentage the vary we , ω ( ( m ω ... ω split 1k 1k m 1 ) ) T hslast w oiycass h first, The classes. policy two to leads This . T until × 12 S S k+1 k+1 x x b b γ ( ( t ω ω ... π split n iefrRRwith RHR for time and 1k 1k 1 m ) γ ) p with ω ω n H with RHR and 1k+1 1k+1 m 1 S S p k+2 k+2 o prle”and “parallel” for ( ( ω ... ω 1k+1 1k+1 t m 1 split ) ) ∈ T T eoeti point this Before ...... eod runtime seconds ... T ω ω 1K-1 m 1K-1 1 × γ S S (1 ∈ K K ( ( ω ω (0 − 1K-1 ... 1K-1 1 1 m ) ) , γ 1) ) restriction afterwards. The policy πRHR switches the sequence. tsplit

3.4 Tuning and Benchmarks The algorithms are implemented in Java. We run the tests on Windows Server 2008 R2, 64 bit, with Intel-Xeon [email protected], 64 cores, and 128GB RAM. We draw on CPLEX Concert Version 12.5.1 based on 32 cores to solve the model presented in §3.1. We use the current tour θk as initial solution. The goal of the computational study is not to achieve solution of highest quality by any means. More important is to allow insight in the tradeoff between routing reoptimization and anticipation. To this end, we do not parallelize the RA and do not apply additional features to the MIP-model and the CPLEX solver. We assume an overall given calculation time of T = 30 seconds per decision point. As the computational study shows, this results in gaps of 0.2% up to 3.0% on average per decision point. Generally, one core allows for around 60 sample runs in T = 30 seconds for p 1 2 5 the RA. Hence, we set m = 60 × γ. We test policies πγ with γ = 6 , 6 ,..., 6 . Assuming a shift of 360 minutes, we vary the split time in steps of one hour tsplit = 60, 120,..., 300. To analyze the impact of combination, we apply the policies RA and RHR in isolation as benchmarks. RA does not draw on any reoptimization but updates routes by means of CI. RHR always select the largest feasible subset of requests integrated via CI and reoptimizes the resulting tour by means of the MIP. To evaluate the overall performance of the approaches, we additionally apply a myopic policy πm, always accepting the largest feasible subset and updating the planned tour via CI.

4 Computational Evaluation

In this section, we analyze the approaches. We first define the test instances. Then, we compare the approaches with respect to solution quality and analyze the impact of the instances’ attributes to the approaches outcomes.

4.1 Instances Customers request service over a time horizon of 360 minutes via a Poisson process. Customer locations are distributed in a 10km × 10km service area. The depot is located in the center of the service area. The vehicle travels with 20km

13 per hour. The distance between two customers is Euclidean but multiplied with factor 1.5 (Boscoe et al. 2012) to reflect a road network. The overall number of expected requests is set to 60. We generate instances mimicking different applications. To this end, we vary the DOD. We define instances with a DOD of 0.25 for applications where the number of stochastic requests is low, a DOD of 0.5 for applications with moderate DOD, and 0.75 for applications with high DOD. To analyze the importance of anticipation in subset selection and reoptimization in routing decisions, we further define three different request distributions. We consider uniformly distributed customers (U), customers spread in three clusters (3C), and customers spread in two clusters (2C). A definition of the distributions is presented in §A.1. As we show in the evaluation, the distributions provide different reoptimization and anticipation potentials. We run 100 evaluation runs for each instance setting. All realizations start with an optimal TSP-tour through the early request customers C0.

4.2 Solution Quality We compare the approaches’ improvement to the myopic policy πm. To this end, we calculate the average solution quality Q(π, i) for every approach π and every individual instance setting i. The improvement is then defined as

Q(π, i) − Q(πm, i) . (5) Q(πm, i) In the following, we analyze the average improvement of the policy classes with respect to the DOD and the customer distribution. To this end, we select the policy of the class leading to the highest improvement indicated by max πp for the parallel policies and max πRHR and max πRA for the subsequent policy classes. We further depict the results for the benchmark approaches RA and RHR. The results are depicted in Table 2 aggregated either over the DOD or the customer distribution. The best results are depicted in bold. For the individual results, the average MIP-gaps per decision point, and the saved travel duration per realization, the interested reader is referred to the Appendix. Generally, the best results are achieved by a policy of class πp, the RA in isolation, or, in one case, πRHR. The first observation is that the combination always achieves higher solution quality than the reoptimization in isolation, the RHR- benchmark (also for the individual instance settings depicted in the Appendix). This means that the integration of anticipation is always beneficial regardless the instance settings.

14 Table 2: Improvement of Policies Compared to Myopic

Combination Benchmark max πp max πRHR max πRA RA RHR 0.25 6.2 5.9 2.6 -7.3 5.6 0.50 6.0 5.5 3.7 1.1 4.0

DOD 0.75 6.5 5.8 4.5 8.3 5.0 U 14.9 12.9 7.5 19.3 12.1 3C 2.2 3.1 1.9 -7.1 1.6

D i s t2 r . C 1.4 1.2 1.2 -10.1 1.0

We first analyze the impact of the DOD. For a low DOD of 0.25, 45 customers are already given and only 15 request service during the day. RA performs on average worse than the myopic policy in these cases, since an anticipation of these few LRC is challenging and the RA gives away current rewards drawing on a weak anticipation. Still, the RA is beneficial in combination with reoptimization. For a low DOD, the RHR in isolation achieves an improvement of 5.6% and performs nearly as good as the best policy. Hence, for applications with low DOD, a focus on reoptimization may be beneficial. The importance of anticipation increases with the DOD for several reasons. First, for a high DOD, the assignment decisions via subset selection become more important, since more requests need to be assigned or rejected respectively. Further, the stream of new requests and, therefore, anticipation becomes more reliable. In cases with a DOD of 0.75, the impact of decisions on future rewards becomes significant and the RA in isolation outperforms every other policy. This indicates that reoptimization does not provide significant benefit in highly uncertain environments. A similar behavior can be observed with respect to the spread in customer dis- tributions. In case of uniformly distributed customers, the spread is wide. Hence, both approaches RA and RHR in isolation are beneficial. Since a wide spread results in long durations, a reoptimization is able to save a high amount of time. Still, since individual requests may be far away from current routes, the assignment decisions are even more important. As a result, the RA outperforms all other poli- cies significantly. The importance of assignments decreases when the geographical spread is reduced. When the customers accumulate in clusters, assignments and routing decisions become less important since there are no expensive “outliers”

15 anymore and a greedy policy provides reasonable results. Hence, the overall improvement of all policies compared to the myopic policy is less distinct. There may be routing problems where a parallel combination of reoptimization and anticipatory methods is not possible. As shown in Table 2, the of the decision horizon and the application of one policy per part leads in most of the cases to slightly inferior solution quality compared to πp. We now compare these policy classes πRHR and πRA. Policy πRHR where first RHR is applied and then after RA tsplit, RA is applied, generally outperforms π . This means that in the beginning of the horizon, reoptimization is advantageous while anticipation becomes more important later in the horizon. This concurs with the results of Ulmer et al. (2016) that the uncertainty in the beginning is often too high for anticipation and at first, a general tour needs to be established by assigning nearly every request. Later in the day, the resources to add new requests are limited and the subset selection based on anticipation becomes more important. This is especially the case for the 3C customer distribution. Here, the acceptance of customers consumes relatively more of the free time budget than for 2C. Hence, routing optimization is important. Still, the initial greedy acceptance behavior does not significantly obstruct the tour as it would be for uniformly distributed customers. As a result, πRHR outperforms all other approaches for these instances.

4.3 Reoptimization vs. Anticipation We now analyze in detail what policy is needed for which application field rep- resented by varying DODs. To this end, we analyze the development of the improvement for πp for varying γ and different DODs. Parameter γ is in this case an indicator of the research direction. Figure 4 depicts the improvement compared to the myopic policy for the three DODs and varying γ. Parameter γ is depicted on the x-axis and indicates the percentage of the calculation time provided to RA. The cases γ = 0 and γ = 1 reflect RHR and RA applied in isolation. The y-axis depicts the improvement compared to the myopic policy. For the purpose of presentation, we cut the y-axis at 1%. We observe a different behavior for each DOD. For a 1 DOD of 0.25, the best solution is achieved for γ = 6 . This means that the majority of calculation time is used for reoptimization. As aforementioned, the benefit of anticipation is small for these instances. With increasing γ, the solution quality slightly decreases. In the extreme case of γ = 1, it even drops below zero. For applications with a low DOD, a focus on reoptimization may therefore be beneficial. For a DOD of 0.5, the variance in solution quality is smaller. Still, a combination of reoptimization and anticipation improves the solution quality of the approaches

16 9

0.25 0.5 0.75

7 %)

(in

5 Improvement 3

1 0 1/6 2/6 3/6 4/6 5/61 Relative Computational Resources for Rollout Algorithm

Figure 4: Improvement of πp per DOD

3 5 in isolation. The best results are achieved for 6 ≤ γ ≤ 6 . Applications with a moderate DOD therefore demand for both reoptimization and anticipation. For the high DOD, a strong tendency can be observed. The benefit of reoptimization is relatively small and the investment of all computational resources in anticipation provides the highest solution quality. Hence, for applications with a high DOD, reoptimization may not be significantly beneficial and anticipation mandatory.

5 Conclusion and Future Research

In this paper, we have analyzed how DVRPs may be approaches with respect to their degree of uncertainty. We have focused on dynamic vehicle routing with stochastic request, the major driver of uncertainty in practice. One feature of dynamic decision problems is that decisions need to be derived in real-time. The calculation time is highly limited. There are mainly two research directions approaching DVRPs utilizing this limited time in different ways. Approaches either aim on efficient current routing plans by means of reoptimization to reduce the consumed resources, or, on anticipation of future requests to make effective routing

17 and assignment decisions. In a computational study, we have analyzed how and when a combination of both directions improves solution quality. We have derived three major statements:

1. A combination of reoptimization and anticipation generally provides im- provement compared to the approaches applied in isolation. Anticipation is beneficial in every case.

2. The focus of the approach should depend on the degree of dynamism, the percentage of uncertain requests. For low DODs, approaches should focus on reoptimization. For moderate DODs, anticipation is mandatory. For high DODs, reoptimization may not provide any significant benefit.

3. If combining methods of reoptimization and anticipation, a parallel applica- tion of both approaches is advantageous. In cases, where only one approach can be applied in a decision point, reoptimization should be applied in earlier stages of the decision process followed by anticipation.

The presented work gives a general assessment of DVRPs with respect to their DOD. For particular applications, additional constraints like time-windows may the selection of a suitable research direction. Future research may analyze the benefit of a research direction with respect to varying constraints or objectives. Further, the methodology may be enhanced. As our evaluation revealed, the way of effectively combining the approaches from both directions may depend on the instance setting, but also on state-parameters like point of time. Hence, future research may focus on smoothing the combination by means such as state-dependent calculation time allocation. The combination proposed in this paper is further decomposed to two steps in each decision point. First, the anticipatory assignment decision is determined neglecting potential routing updates. In a second step, the routing plans are reoptimized neglecting future requests and decision making. A generic online approach integrating both simultaneously may lead to significant improvement. It may also be beneficial to shift parts of the calculations offline. This may be the routing decisions, for example, by determining precombined trips or the assignment decisions based on predefined state parameters.

18 References

Arslan, Alp, Niels Agatz, Leo G Kroon, Rob A Zuidwijk. 2016. Crowdsourced delivery-a pickup and delivery problem with ad-hoc drivers. Available at SSRN . Bent, Russell W, Pascal Van Hentenryck. 2004. Scenario-based planning for partially dynamic vehicle routing with stochastic customers. Operations Research 52(6) 977–987. Bertsimas, Dimitris J, Garrett Van Ryzin. 1991. A stochastic and dynamic vehicle routing problem in the Euclidean plane. Operations Research 39(4) 601–615. Boscoe, Francis P., Kevin A. Henry, Michael S. Zdeb. 2012. Nationwide comparison of driving distance versus straight-line distance to hospitals. The Professional Geogra- pher 64(2) 188–196. Branchini, R., A. Armentano, A. Løkketangen. 2009. Adaptive granular local search heuristic for a dynamic vehicle routing problem. Computers and Operations Research 36 2955–2968. Brinkmann, Jan, Marlin W Ulmer, Dirk C Mattfeld. 2015. Short-term strategies for stochas- tic inventory routing in bike sharing systems. Transportation Research Procedia 10 364–373. Chen, Huey-Kuo, Che-Fu Hsueh, Mei-Shiang Chang. 2006. The real-time time-dependent vehicle routing problem. Transportation Research Part E: Logistics and Transporta- tion Review 42(5) 383–408. Ehmke, Jan F, Ann M Campbell. 2014. Customer acceptance mechanisms for home deliveries in metropolitan areas. European Journal of Operational Research 233(1) 193–207. Ferrucci, Francesco, Stefan Bock, Michel Gendreau. 2013. A pro-active real-time control approach for dynamic vehicle routing problems dealing with the delivery of urgent goods. European Journal of Operational Research 225(1) 130–141. Gendreau, Michel, Francois Guertin, Jean-Yves Potvin, Rene´ Seguin.´ 2006. Neighborhood search heuristics for a dynamic vehicle dispatching problem with pick-ups and deliveries. Transportation Research Part C: Emerging Technologies 14(3) 157–174. Gendreau, Michel, Francois Guertin, Jean-Yves Potvin, Eric Taillard. 1999. Parallel tabu search for real-time vehicle routing and dispatching. Transportation Science 33(4) 381–390. Gendreau, Michel, Ola Jabali, Walter Rei. 2016. 50th anniversary invited articlefuture research directions in stochastic vehicle routing. Transportation Science . Ghiani, Gianpaolo, Emanuele Manni, Antonella Quaranta, Chefi Triki. 2009. Anticipa- tory algorithms for same-day courier dispatching. Transportation Research Part E: Logistics and Transportation Review 45(1) 96–106.

19 Ghiani, Gianpaolo, Emanuele Manni, Barrett W Thomas. 2012. A comparison of an- ticipatory algorithms for the dynamic and stochastic traveling salesman problem. Transportation Science 46(3) 374–387. Goodson, Justin C, Barrett W Thomas, Jeffrey W Ohlmann. 2015. Restocking-based rollout policies for the vehicle routing problem with stochastic demand and duration limits. Transportation Science 50(2) 591–607. Hall,¨ Carl H, Jan T Lundgren, Stefan Voß. 2012. Evaluating the performance of a dial-a-ride service using simulation. Public Transport 1–19. Hvattum, Lars M, Arne Løkketangen, Gilbert Laporte. 2006. Solving a dynamic and stochastic vehicle routing problem with a sample scenario hedging heuristic. Trans- portation Science 40(4) 421–438. Ichoua, Soumia, Michel Gendreau, Jean-Yves Potvin. 2000. Diversion issues in real-time vehicle dispatching. Transportation Science 34(4) 426–438. Ichoua, Soumia, Michel Gendreau, Jean-Yves Potvin. 2006. Exploiting knowledge about future demands for real-time vehicle dispatching. Transportation Science 40(2) 211–225. Klapp, Mathias A, Alan L Erera, Alejandro Toriello. 2016. The one-dimensional dynamic dispatch waves problem. Transportation Science . Larsen, Allan, Oli B G Madsen, Marius M Solomon. 2002. Partially dynamic vehicle routing-models and algorithms. Journal of the Operational Research Society 53(6) 637–646. Lin, Canhong, King Lun Choy, George TS Ho, HY Lam, Grantham KH Pang, KS Chin. 2014. A decision support system for optimizing dynamic courier routing operations. Expert Systems with Applications 41(15) 6917–6933. Maxwell, Matthew S, Mateo Restrepo, Shane G Henderson, Huseyin Topaloglu. 2010. Approximate dynamic programming for ambulance redeployment. INFORMS Journal on Computing 22(2) 266–281. Meisel, Stephan. 2011. Anticipatory Optimization for Dynamic Decision Making, Opera- tions Research/Computer Science Interfaces Series, vol. 51. Springer. Miller, Clair E, Albert W Tucker, Richard A Zemlin. 1960. Integer programming formula- tion of traveling salesman problems. Journal of the ACM (JACM) 7(4) 326–329. Mitrovic-Mini´ c,´ Snezana,ˇ Gilbert Laporte. 2004. Waiting strategies for the dynamic pickup and delivery problem with time windows. Transportation Research Part B: Methodological 38(7) 635–655. Ninikas, George, Ioannis Minis. 2014. Reoptimization strategies for a dynamic vehicle routing problem with mixed backhauls. Networks 64(3) 214–231. Pillac, Victor, Michel Gendreau, Christelle Gueret,´ Andres´ L Medaglia. 2013. A review

20 of dynamic vehicle routing problems. European Journal of Operational Research 225(1) 1–11. Powell, Warren B. 2011. Approximate Dynamic Programming: Solving the Curses of Dimensionality, Wiley Series in Probability and Statistics, vol. 842. John Wiley & Sons, New York. Psaraftis, Harilaos N. 1980. A dynamic programming solution to the single vehicle many-to-many immediate request dial-a-ride problem. Transportation Science 14(2) 130–154. Psaraftis, Harilaos N, Min Wen, Christos A Kontovas. 2015. Dynamic vehicle routing problems: Three decades and counting. Networks online available. Puterman, Martin L. 2014. Markov decision processes: discrete stochastic dynamic programming. John Wiley & Sons, New York. Ritzinger, Ulrike, Jakob Puchinger, Richard F Hartl. 2014. Dynamic programming based metaheuristics for the dial-a-ride problem. Annals of Operations Research 1–18. Ritzinger, Ulrike, Jakob Puchinger, Richard F Hartl. 2015. A survey on dynamic and stochastic vehicle routing problems. International Journal of Production Research 1–17. Rosenkrantz, Daniel J, Richard E. Stearns, Philip M Lewis. 1974. Approximate algorithms for the traveling salesperson problem. Switching and Automata Theory, 1974., IEEE Conference Record of 15th Annual Symposium on. IEEE, 33–42. Savelsbergh, Martin, Tom Van Woensel. 2016. City logistics: Challenges and opportunities. Transportation Science 50(2) 579–590. Schilde, Michael, Karl F Doerner, Richard F Hartl. 2014. Integrating stochastic time- dependent travel speed in solution methods for the dynamic dial-a-ride problem. European Journal of Operational Research 238(1) 18–30. Schyns, Michael. 2015. An ant colony system for responsive dynamic vehicle routing. European Journal of Operational Research 245(3) 704–718. Speranza, M Grazia. 2016. Trends in transportation and logistics. European Journal of Operational Research . Swihart, Michael R, Jason D Papastavrou. 1999. A stochastic and dynamic model for the single-vehicle pick-up and delivery problem. European Journal of Operational Research 114(3) 447–464. Tassiulas, Leandros. 1996. Adaptive routing on the plane. Operations Research 44(5) 823–832. Thomas, Barrett W. 2007. Waiting strategies for anticipating service requests from known customer locations. Transportation Science 41(3) 319–331. Ulmer, Marlin W. 2016. Anticipation in dynamic vehicle routing. Tech. rep., Technische Universitat¨ Brauschweig.

21 Ulmer, Marlin W, Justin C Goodson, Dirk C Mattfeld, Marco Hennig. 2015. Offline-online approximate dynamic programming for dynamic vehicle routing with stochastic requests. Working Paper . Ulmer, Marlin W., Dirk C. Mattfeld, Felix Koster.¨ 2016. Budgeting time for dynamic vehicle routing with stochastic customer requests. To appear in Transportation Science . Voccia, Stacy A, Ann Melissa Campbell, Barrett W Thomas. 2016. The same-day delivery problem for online purchases. To appear in Transportation Science . Zhang, Shu, Jeffrey W Ohlmann, Barrett W Thomas. 2015. Dynamic orienteering on a network of queues. Tech. rep., University of Iowa.

Appendix

In the Appendix, we describe the spatial customer distributions and provide the rollout algorithm in detail. We further present the data of the computational evaluation. In Table A1, we present the solution quality for πp and πm. Additionally, the table shows the results for RHR (γ = 0) and RA (γ = 1). In Table A2 to Table A4, we present the solution quality, the average MIP-gap per decision point RHR is applied, and saved duration per realization for πRHR and πRHR.

A.1 Distributions In this section, we describe the spatial customer distributions. Given U, a spatial realization (x, y) is defined as (x, y) ∼ U[0, 10] × U[0, 10]. For 2C, the customers are equally distributed to each cluster. The cluster centers are located at µ1 = (2.5, 2.5), µ2 = (7.5, 7.5). The standard deviation within the clusters is σ = 0.5. For 3C, the cluster centers are located at µ1 = (2.5, 2.5), µ2 = (2.5, 7.5), µ3 = (7.5, 5). 50% of the requests are assigned to cluster two, 25% to each other cluster. The standard deviations are set to σ = 0.5.

A.2 Rollout Algorithm Algorithm 1 describes the procedure of decision making for a post-decision RA. Given a state Sk, decisions x1, . . . , xn, the reward-function R, the post-decision x1 xn states (PDSs) Pk = (Sk ,...,Sk ), a set of sampled realizations {ω1, . . . , ωm}, x and the base policy πb. Then, for every PDS Sk , the RA simulates the remaining

22 πb horizon of each realization ωi. In the decision points, the decision X (Sk+j) πb induced by πb is applied and the rewards R(Sk+j,X (Sk+j)) accumulated. The ˆ x overall reward-to-go of a PDS V (Sk ) is the average of the single rewards per realization. The RA selects the decision x∗ leading to the maximum sum of ∗ ˆ x∗ immediate reward R(Sk, x ) and expected future rewards V (Sk ).

23 Algorithm 1: Post-Decision Rollout Algorithm Input : State Sk, Decisions {x1, . . . , xn}, Reward-Function R(S, x) → N0, x x1 xn Post-Decision States Sk = (Sk ,...,Sk ), Realizations {ω1, . . . , ωm}, Base Policy πb Output : Decision x∗ x x 1 for all S ∈ Sk do 2 i ← 0 3 Vˆ (Sx) ← 0 4 // Simulation 5 j ← 0 6 while (i ≤ m) do 7 S ← Sk x x 8 S ← Sk x 9 while (S ≤ SK ) do x 10 S ← (S , ωi) 11 x ← Xπb (S) ˆ x ˆ x 1 12 V (Sk ) ← V (Sk ) + m R(S, x) 13 Sx ← (S, x) 14 j ← j + 1 15 end 16 end 17 end 18 // Selection 19 R∗ ← 0 x 20 for all Sk ∈ Pk do ˆ x ∗ ∗ 21 if (R(Sk, x) + V (Sk ) ≥ R ) then x ← x 22 end 23 return x∗

24 Table A1: Solution Quality, MIP-GAP, and Saved Duration for πp, RHR, RA, and myopic

1 2 3 4 5 m DOD Distr. γ = 0 6 6 6 6 6 1 π Number of Served LRCs 0.25 U 8.66 8.81 8.75 8.68 8.68 8.62 8.62 7.38 0.25 2C 12.82 12.86 12.81 12.8 12.74 12.83 10.27 12.79 0.25 3C 11.84 11.79 11.85 11.87 11.84 11.97 9.66 11.93 0.5 U 18.58 19.32 19.13 19.5 19.44 19.52 20.25 16.95 0.5 2C 24.34 24.2 24.45 24.33 24.49 24.46 21.66 24.31 0.5 3C 22.88 22.67 22.77 22.95 22.71 22.84 21.2 22.35 0.75 U 27.87 28.06 28.36 28.28 28.66 28.57 31.01 25.49 0.75 2C 35.3 35.16 35.4 35.62 35.4 35.49 34.47 34.35 0.75 3C 33.85 33.55 33.87 34.03 34.02 34.22 33.78 32.85 MIP-Gap (in %) 0.25 U 2.51 2.84 3.65 3.89 4.64 6.09 - - 0.25 2C 2.97 2.88 3.21 3.3 4.29 4.07 - - 0.25 3C 0.83 0.98 1 1.35 1.75 2.11 - - 0.5 U 1.01 0.91 0.85 0.71 1.2 1.4 - - 0.5 2C 2.12 2.34 2.58 2.74 2.96 3.65 - - 0.5 3C 0.37 0.45 0.49 0.63 0.97 1.57 - - 0.75 U 0.21 0.2 0.23 0.36 0.56 0.52 - - 0.75 2C 0.57 0.53 0.69 0.86 1.09 1.72 - - 0.75 3C 1.25 1.4 1.7 1.84 2.23 2.6 - - Saved Duration per Realization 0.25 U 23.05 20.99 17.71 16.53 14.06 11.63 - - 0.25 2C 6.55 5.44 5.04 5.93 8.24 6.21 - - 0.25 3C 19.26 19.9 20.07 19.14 18.96 16.6 - - 0.5 U 25.95 24.17 23.76 25.21 22.03 22.43 - - 0.5 2C 12.9 12.62 11.25 10.4 8.48 9.44 - - 0.5 3C 29.95 27.09 28.69 29.07 28.69 28.48 - - 0.75 U 34.74 21.13 23.6 25.74 26.95 21.57 - - 0.75 2C 22.16 21.65 21.11 21.34 19.49 20.19 - - 0.75 3C 22.24 21.97 21.29 17.58 16.97 17.49 - -

25 Table A2: Solution Quality for πRA and πRHR

DOD Distr. tsplit = 60 120 180 240 300 πRA 0.25 U 7.94 7.93 7.94 7.7 7.63 0.25 2C 12.92 12.68 12.8 12.79 12.82 0.25 3C 11.83 11.84 11.87 12 12 0.5 U 18.38 18.04 18.17 18.33 18.31 0.5 2C 24.41 24.43 24.47 24.47 24.46 0.5 3C 22.71 22.78 22.82 22.84 22.75 0.75 U 27.13 27.13 27.31 27.54 27.56 0.75 2C 35.06 35.13 35.12 34.9 35.07 0.75 3C 33.62 33.33 33.29 33.59 33.9 πRHR 0.25 U 8.5 8.36 8.5 8.58 8.69 0.25 2C 12.84 12.83 12.79 12.79 12.77 0.25 3C 12.2 12.16 12.04 11.92 11.81 0.5 U 19.1 19.07 18.83 18.87 18.8 0.5 2C 24.39 24.38 24.44 24.42 24.39 0.5 3C 23.11 22.88 22.87 22.89 22.84 0.75 U 28.23 27.91 27.66 27.9 27.89 0.75 2C 35.36 35.4 35.27 35.47 35.29 0.75 3C 34.01 34.19 34.27 34.4 34.14

26 Table A3: MIP-Gap for πRA and πRHR

DOD Distr. tsplit = 60 120 180 240 300 πRA 0.25 U 1.88 1.19 0.88 0.22 2.9 0.25 2C 6.81 4.61 5.73 6.51 0 0.25 3C 3.47 1.41 2.11 2.21 0 0.5 U 0.84 0.59 0.83 0.45 0.16 0.5 2C 6.75 3.56 2.29 1.91 0.28 0.5 3C 6.61 4.56 5.24 3.06 2.32 0.75 U 0.56 0.55 0.53 1.05 0 0.75 2C 5.06 3.33 3.47 3.11 0.23 0.75 3C 5.07 5.56 6.37 5.83 4.99 πRHR 0.25 U 0.72 1.33 1.25 1.15 1.01 0.25 2C 2.17 3.32 3.18 2.85 2.85 0.25 3C 0.66 0.54 0.48 0.46 0.43 0.5 U 0.04 0.06 0.05 0.06 0.05 0.5 2C 2.7 2.91 2.77 2.69 2.52 0.5 3C 0.26 0.23 0.24 0.22 0.21 0.75 U 0.12 0.03 0.02 0.01 0.02 0.75 2C 0.33 0.65 0.57 0.51 0.52 0.75 3C 0.89 1.13 1.35 1.37 1.47

27 Table A4: Saved Duration per Realization for πRA and πRHR

DOD Distr. tsplit = 60 120 180 240 300 πRA 0.25 U 12.86 9.03 6.03 2.21 0.02 0.25 2C 4.06 2.32 0.68 0.16 0.05 0.25 3C 7.73 7.61 3.55 0.47 0.02 0.5 U 21.03 13.44 8.65 2.72 0.24 0.5 2C 5.68 5.84 4.49 1.1 0.35 0.5 3C 8.7 7.3 4.6 2.13 0.21 0.75 U 17.98 13.49 9.45 2.41 0.12 0.75 2C 11.73 8.92 6.69 2.58 0.39 0.75 3C 13.52 8.03 4.36 2.03 0.13 πRHR 0.25 U 13.88 17.66 19.35 21.93 23.05 0.25 2C 8.64 9.51 10.38 10.21 6.55 0.25 3C 14.1 17.01 17.94 19.13 19.26 0.5 U 25.6 27.84 29.48 30.23 25.95 0.5 2C 10.22 11.59 12.63 12.87 12.9 0.5 3C 24.51 27.06 28.73 29.85 29.95 0.75 U 16.32 27.71 34.7 34.76 34.74 0.75 2C 15.37 18.07 21.88 22.09 22.16 0.75 3C 12.46 16.33 20.81 22.66 22.24

28