Close
About
FAQ
Home
Collections
Login
USC Login
Register
0
Selected
Invert selection
Deselect all
Deselect all
Click here to refresh results
Click here to refresh results
USC
/
Digital Library
/
University of Southern California Dissertations and Theses
/
An online cost allocation model for horizontal supply chains
(USC Thesis Other)
An online cost allocation model for horizontal supply chains
PDF
Download
Share
Open document
Flip pages
Contact Us
Contact Us
Copy asset link
Request this asset
Transcript (if available)
Content
An Online Cost Allocation Model for Horizontal Supply Chains Dissertation Han Zou Doctor of Philosophy (Industrial and Systems Engineering) University of Southern California December 2017 Faculty of the USC Graduate School: Dr. Maged M. Dessouky, Committee Chair Dr. John Gunnar Carlsson Dr. Petros Ioannou Contents 1 Introduction 4 1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 1.2 Research Gap and Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Organization of the dissertation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2 Literature Review 11 2.1 Dynamic Vehicle Routing Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 2.2 Cost-sharing Mechanism Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.3 Cost Allocation in Transportation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3 Dynamic Vehicle Routing Problem Definition and Solution Framework 19 3.1 Problem Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.2 Look-ahead Partial Vehicle Routing Framework . . . . . . . . . . . . . . . . . . . . . 22 3.3 Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4 Experimental Results 33 4.1 Experiment Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.2 Routing Strategies and Parameters . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.3 Look-ahead Dynamic Routing in Base Case . . . . . . . . . . . . . . . . . . . . . . . 34 4.4 Sensitivity to the Expected Proportion of Realized Dynamic Customers . . . . . . . 38 4.5 Unit Cost Analysis of the Different Routing Strategies . . . . . . . . . . . . . . . . . 40 5 The Online Cost Allocation Problem 43 5.1 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 5.2 Hybrid Proportional Online Cost Sharing (HPOCS) . . . . . . . . . . . . . . . . . . 50 5.3 Hybrid Proportional Online Cost Sharing with Discount (HPOCSD) . . . . . . . . . 77 6 Conclusion and Future Directions 92 References 95 1 List of Figures 1 Customer states and state transitions . . . . . . . . . . . . . . . . . . . . . . . . . . 23 2 Time dynamic of events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 3 Partial solution construction at decision epochs . . . . . . . . . . . . . . . . . . . . . 25 4 Example I: Push backward heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 5 Example II: Push forward heuristic . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 6 Example III: Hybrid waiting time adjustment heuristic . . . . . . . . . . . . . . . . . 32 7 Example IV: Typical cost-sharing methods . . . . . . . . . . . . . . . . . . . . . . . . 47 8 Example V: Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 9 Trajectories of the HPOCS shared cost per alpha values in base case . . . . . . . . . 74 10 The HPOCS initial quotes and final shared cost values in base case . . . . . . . . . . 75 11 Trajectories of the charge per alpha values under HPOCSD with level overcharge . . 83 12 Trajectories of the charge per alpha values under HPOCSD with linear overcharge . 84 13 TrajectoriesofthechargeperalphavaluesunderHPOCSDwithexponentialovercharge 85 14 Initial quotes and final charges under HPOCSD with level overcharge . . . . . . . . . 86 15 Initial quotes and final charges under HPOCSD with linear overcharge . . . . . . . . 87 16 Initial quotes and final charges under HPOCSD with exponential overcharge . . . . . 88 2 List of Tables 1 Distance savings of dynamic partial routing in base case . . . . . . . . . . . . . . . . 35 2 Sensitivity analysis of parameter numEpochs and forecastHorizon . . . . . . . . . 36 3 Sensitivity to different expected proportions of realized dynamic customers . . . . . 39 4 Average travel distance per customer for different problem sizes . . . . . . . . . . . . 41 5 Shared costs under typical cost-sharing methods . . . . . . . . . . . . . . . . . . . . 47 6 Example V: Customer information . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 7 Total and marginal costs with one vehicle . . . . . . . . . . . . . . . . . . . . . . . . 65 8 Coalition cost per alpha values with one vehicle . . . . . . . . . . . . . . . . . . . . . 66 9 Coalition formation, scpa, and HPOCS shared costs with one vehicle . . . . . . . . . 66 10 Total and marginal costs with two vehicles . . . . . . . . . . . . . . . . . . . . . . . . 68 11 Coalition cost per alpha values with two vehicles . . . . . . . . . . . . . . . . . . . . 69 12 Coalition formation, scpa, and HPOCS shared costs with two vehicles . . . . . . . . 69 13 Budget balance analysis of HPOCSD for the base case . . . . . . . . . . . . . . . . . 90 3 1 Introduction In this chapter, we begin by introducing the background and motivation of our research. We then identify the gaps in the literature and state our contributions. In the end of this chapter, we explain the organization of this dissertation. 1.1 Background Many industries deal with the task of transporting goods or delivering services in a timely, reliable, and cost-effective manner, including manufacturing, food, e-commerce, public transit, etc. Logistics hasbecomethebackbonethatenablestheproductivityandmobilityoftheseindustries[48]. Indeed, growth in the transportation sector recently has been on par with the growth in the Gross Domestic Product (GDP) in the United States. According to statistics from the 2013 National Transportation Statistics report [49], expenditure on transportation activities amounted to 1,426 billion dollars in 2012, representing nearly 9 percent of the total US GDP. However, the logistics sector as it is today functions in a way that is economically, environmentally, and socially unsustainable [47]. In order to compete effectively against their peers, companies have relied on internal optimization to reduce operating costs, but have overlooked opportunities for external cooperation. As a result, the logistics sector has become highly fragmented, with each supplier developing and operating its own distribution network that sees low capacity usage, high energy consumption, and high greenhouse gas emission across the entire system [47]. The increasing amount of freight transportation also aggravatesitsimpactontrafficcongestion,andposesthreatsonthesafetyandefficiencyofpassenger trafficandothersocialfunctionsthatsharethesameroadinfrastructure. Thisphenomenonbecomes more significant in densely populated urban areas, like Los Angeles. As opportunities for internal optimization are becoming fully exploited, fierce competition drives companies to focus on reducing costs of non-value adding activities [70], especially logistic activities. The concept of horizontal cooperation sees both theoretical development in the literature [11] and successful application in industry [22]. It formally refers to the cooperation between businesses operating at the same level(s) in the market. When applying to the logistics sector, horizontal cooperation could refer to the pooling of freight transportation networks and sharing of customers. External cooperation allows consolidation of vehicle capacity, delivery routes, and shipment orders among different suppliers or logistic service providers, thus creating a unified logistics network that sees increased capacity usage, reduced energy usage, pollution, and operating costs. For example, 4 a case study of the Swedish forest industry has shown that potential savings of cooperation among several forest companies operating in the same region are large, often in the range of 5 to 15 percent [22]. A shared transportation network also reduces the total truck miles, which in turn reduces the usage of the road infrastructure that it shares with passenger traffic. Similarly, reduced freight traffic helps alleviate traffic congestion and the safety threat it poses on passenger traffic. Horizontal cooperation would not only generate savings for companies already in business, but also lower the potential barrier for new (and possibly small) businesses to enter the market. Besides, operations in any real world transportation network contain a fairly high level of uncer- tainties including variable waiting and travel times due to traffic congestion, arrival of new service requests, cancellation of existing requests, unknown demand sizes, etc. Under changing and gradu- ally revealed information, the problem of designing real-time collection and/or delivery routes from one or several depots to a set of geographically dispersed customers falls in the scope of the Dynamic Vehicle Routing Problem (DVRP). The DVRP derives from the Vehicle Routing Problem (VRP) when some element of the problem becomes non-deterministic. Given the advances in information technologies, the transportation industry, like many others, has undergone significant changes in the last decade. In particular, the increasing performance and the lowering cost of the computational devices, vehicle positioning systems, real-time information and communication networks have made real-time dynamic routing of the fleet a very real possibility. However, most of the established techniques and models for planning, routing and scheduling assume “known” static data as their input, and appear to be limited in solving the DVRP. Thus, the DVRP has emerged as an active and intense area of research, both due to industry needs, but also due to technological advances, including map databases, location determination technology (e.g., GPS), wireless communication and mobile computing. In some highly uncertain environments, in- formation concerning the randomness in the problem may not be available and pre-planned optimal routes are no longer of practical use. A reactive approach must be adopted to constantly re-route the fleet in light of newly revealed information. In other cases, some stochastic information on net- work conditions and customer requests may be obtained from historical data. For these situations, it is widely expected that the use of information technology in transportation systems narrows the gap between highly uncertain systems in reality and the perfectly known static systems in theory. One crucial component of a shared transportation system is the method used to allocate costs and/or savings to each participant in the system. A cost-sharing mechanism serves as the basis for 5 anyeconomicanalysisofhorizontalcooperation. However, thecostallocationprobleminthevehicle routing context remains rarely studied in the literature, especially for the dynamic case discussed above. For a “static” cost sharing problem in which the set of players and the cost function are both known and deterministic, Moulin mechanisms [51] and acyclic mechanisms [45] are among the most studied families of cost-sharing mechanisms. In the context of vehicle routing problems, a “static” cost sharing problem means that the set of customers to be served is known and the optimal total cost can be calculated. Unfortunately, neither of these two assumptions holds in the dynamic vehicle routing problem we study. Little work has been conducted on designing online cost-sharing mechanisms that work when the set of players are gradually revealed, instead of known beforehand. Even less work on cost allocation has been done in the vehicle routing context. Besides, the majority of this subset of work has assumed a static operating environment, in which the tasks of designing vehicle routes and allocating costs can be tackled separately and independently. This separation does not fully justify challenges faced by logistic service providers under today’s lean manufacturing and JIT delivery constraints which partially motivates the problem we study. Thus, there is a need for a unified solution approach that combines dynamic vehicle routing with online cost allocation for dynamic cost sharing transportation systems. This research addresses the cost allocation problem in a real-time cost sharing transportation system, which results from horizontal cooperation among multiple suppliers. In this problem, new customer requests become known in real time and the optimal total cost of service can only be approximated. There are two important research issues in this problem: 1) how to design and implement vehicle routes in light of dynamically revealed information; 2) how to allocate the cost to each new customer at the time of request without knowing the future customer requests and the total cost of the service. The first issue falls under the scope of dynamic vehicle routing problems. And the second issue relates closely to cost sharing mechanism design. It is important to point out that the two problems are highly interdependent and must be solved simultaneously. In particular, the vehicle routes depend on whether the new customers accept or decline the quote for service, and the quote (cost share) in turn depends on how vehicle routes are designed and what is the expected total cost of such routes. 6 1.2 Research Gap and Contribution In a dynamic operation environment, critical problem information is revealed over time, meaning that the complete realization of the problem is only known at the end of the planning horizon. The optimal total cost of service can only be approximated at any time during the planning horizon due to incomplete information. Thus, the vehicle routing problem and the cost allocation problem become highly interdependent. The routing schedule depends on whether new customers can be accommodated due to feasibility constraints, and whether the customers accept or decline the service based on the price quotes and their willingness-to-pay values. Reversely, the price quote offered to each dynamic customer must consider the expected total operating cost, which in turn depends on the routing schedule. The price quote should also consider possible future customer requests and the ability of the current schedule to accommodate them. Oneofthemostheavilystudiedandwidelyusedapproachestotacklethecost-sharingproblemis Cooperative Game Theory (CGT). CGT provides a general framework for studying the allocation of costs and/or savings to a group of participants who require a common resource to accomplish tasks. Traditional CGT-based solution concepts require that the grand coalition (the entire set of players) is known in advance and that the optimal cost function is well-defined on each coalition/subset of players. Neither of these two assumptions hold in the dynamic environment. The majority of work in the current literature have assumed a static vehicle routing environment, and have treated the costallocationproblemseparatelyfromthevehicleroutingproblem. Forexample, Lozanoetal. [43] studied the problem of finding the optimal way to form coalitions and to share the total cost among a set of companies who are interested in consolidating their transportation needs. In particular, a Mixed-Integer Linear Program (MILP) was formulated to estimate the optimal total cost of serving a set of companies. The problem was first solved considering the transportation demands of each company independently. A second problem was formulated by merging the transportation demands of every coalition of two of the companies. Then the model considered the coalitions of three companies, and so on, until reaching the grand coalition. Given the estimated total cost of serving each subset/coalition of the companies, several cost allocation methods based on CGT concepts were then implemented and compared. Similar two-stage approaches that decouple the cost allocation problem from the vehicle routing problem are common in the literature. It can be easily shown that typical cost-sharing mechanisms such as proportional cost sharing and marginal cost sharing fail to possess desired properties when adapted naively to the dynamic 7 setting. Indeed, the problem of allocating costs in a real-time cost sharing transportation system is highly nontrivial and is ranked among the top impediments for successful horizontal cooperation [12]. The research on designing online and dynamic cost-sharing mechanisms for transportation systems have been very limited. A major line of research considering the competitive pricing probleminadynamictransportationsystemisduetoFigliozzi, Mahmassani, andJaillet[19,21,20]. The problem is framed as a sequential auction marketplace where new customer orders arrive stochastically and the logistics service provider must offer a competitive price bid to win the order from its competitors. New orders arrive at the same time when existing orders are being served. Each order served generates a reward. The objective is to maximize the profit as measured by the total rewards collected minus the total transportation cost. The authors developed a stochastic dynamic programming-based formulation that solves for the optimal price whenever a new order arrives. The work by Furuhata et al. [23] concerns with a demand-responsive transport (DRT) system where new service requests are submitted sequentially over time, but all of them are still submitted before the vehicles start service. The authors developed a mathematically precise and concrete cost- sharing mechanism, namely the Proportional Online Cost Sharing (POCS), that handles sequential customersubmissions. POCSdrawsuponfeaturesofproportionalandmarginalcostsharingandhas been proved to satisfy a list of desirable properties, including online fairness, immediate response, individual rationality, budget balance, and ex-post incentive compatibility. POCS is a flexible framework in the sense that no specific cost function is defined. All of the desired properties hold as long as the cost function of choice satisfies the following two properties: 1) total cost is non- decreasing over time (over order submissions); 2) total cost is independent of the submit order of customers who have already submitted their requests. POCSrepresentsamajorstepforwardintheresearchoncost-sharingmechanismdesignbecause it relaxes the constraint that the entire set of players must be known at once. However, one limitation still remains. POCS assumes that all customers submit their service requests before vehicle operations start. In the dynamic vehicle routing environment we study, customer request submissions and vehicle operations take place simultaneously. The second assumption that the total cost is independent of the submit order of customers does not hold trivially. In this research, we focus on studying a category of the dynamic vehicle routing problem where only part of the customers are known in advance, and the rest become known in real time. We 8 first develop a look-ahead dynamic vehicle routing framework that involves partial routing and has the capabilities for adjustments in response to problems with different levels of uncertainties. We conduct extensive numerical simulations to find the desirable level of route planning in the solution approach in response to different levels of uncertainties in the problem for the best performance. Base on the dynamic partial routing framework, we then propose a novel online cost-sharing mech- anism that is capable of dynamically allocating cost to each customer as it realizes. Our approach combinestwocost-sharingmechanismsoriginallydesignedforthestaticandtheonlineenvironment, respectively. With specially designed cost functions and routing schedules, the hybrid mechanism is shown to possess all of the five properties originally proposed in [23], namely online fairness, im- mediate response, individual rationality, budget balance, and ex-post incentive compatibility. We extend our work by proposing several variations of the baseline mechanism which can be formulated by relaxing some of the model assumptions. We compare and contrast different variations of the mechanism through extensive numerical simulations. This dissertation fills the gap in the literature by jointly studying the dynamic vehicle routing problem and the online cost allocation problem for real-time cost sharing transportation systems. The major contribution of our work is three fold: 1) we contribute to the DVRP literature by study- ing the relationship between the level of partial route planning in the solution approach and the quality of the solution under various system conditions; 2) we advance the research on cost-sharing mechanism design by developing the hybrid online mechanism for the dynamic vehicle routing en- vironment; 3) we lay down the theoretical foundation of a real-time cost sharing transportation system. Our work shows how such systems could reduce the total transportation cost, and the environmental, economical, and social impact of logistic activities. It also helps to promote hori- zontal cooperation in the logistics industry, which could not only generate cost savings for existing companies but also potentially lower the cost barrier for new businesses to enter the market. 1.3 Organization of the dissertation This dissertation is organized as follows. The literature review in Chapter 2 focuses on dynamic ve- hicle routing problems and cost-sharing mechanism design. Chapter 3 formally defines the dynamic vehicle routing problem and details the solution framework. Experimental results are analyzed in Chapter 4. Formulation of the online cost allocation problem and the development online cost- sharing mechanisms are presented in Chapter 5. We give the conclusion and future directions in 9 Chapter 6. 10 2 Literature Review The problem of interest falls at the intersection of two major fields of research in the literature, namely the dynamic vehicle routing problem (DVRP) and cost-sharing mechanism design. In this section, we first review the relevant literature on each of these two topics. We then present a review on studies of cost allocation specifically in the context of vehicle routing and transportation. 2.1 Dynamic Vehicle Routing Problem The traditional vehicle routing problem (VRP) has received significant attention in the literature ever since its first introduction by Dantzig and Ramser in 1959 [13]. A traditional VRP is based on a graph, with a special node representing the depot, and the remaining nodes representing customers. A cost matrix is defined on the arcs to represent the travel costs (usually proportional to travel distance) between corresponding locations. A fleet of vehicles originally located at the depot are routed to service the customers. The objective is to find a feasible routing schedule that visits each customer exactly once with minimum total travel cost. Feasibility is often defined with respect to side constraints, which may include vehicle capacity constraint, time window constraint, service level constraint, etc. The DVRP differentiates from the VRP in that some element of the problem is random, and is not known with certainty at the time the vehicle routes must be planned. The problem arises naturallyfromabroadspectrumofreal-worldapplications, includingcourierrouting[25,38], service scheduling [10, 7], Dial-a-Ride systems [24, 5, 63, 62], etc. Depending on which element or elements of the problem become dynamic, numerous variations of the DVRP exist. For example, the set of customers that needs to be serviced may not be known in advance. Instead, new customers may arrive in real time throughout the planning horizon [38, 26, 63]. In some cases, the demand of a customer may not be known when the service request is made and when routing decisions have to be made. Instead, the actual size of the demand may only be revealed when the vehicle reaches the customer [66, 69, 44]. The cost matrix can also be random, reflecting random travel times between customer locations due to varying traffic conditions or uncertainties in operations [75, 76]. There are many other potential sources of randomness that could make a problem dynamic. The variation of DVRP that is particularly of interest is the vehicle routing problem with dynamic customers, where new customers arrive in real time throughout the planning horizon. In the dynamicenvironment, criticalprobleminformationisrevealedovertime, meaningthatthecomplete 11 realization of randomness is only known at the end of the planning horizon. As a consequence, the initialsolutioncanonlybeconstructedbasedonpartialinformationatthebeginningoftheplanning horizon. The set of routes must be updated (if possible) in real time as new information becomes available. This cannot be done without the help of real-time vehicle positioning and communication technologies. Due to recent advances in these technologies, they can now be implemented at lower costs and at a larger scale [55]. One can refer to [37, 17, 55] for complete reviews on the recent DVRP literature. Solution approaches for the DVRP can be classified into three categories, namely static routing, local dynamic routing, and look-ahead dynamic routing [10]. In the static routing approach, a priori vehicle routes or routing policies are constructed with limited information at the beginning of the planning horizon, before vehicles begin to travel. As new information becomes available, existing routes adapt automatically according to pre-defined rules. In the local dynamic approach, route planners react to new information by explicitly incorporating them into decision making. Thus vehicles often need to be diverted and re-routed during the planning horizon. In the look- ahead dynamic approach, route planners not only react to new information, but also forecast future events and the fleet status, and explicitly use predictions to help design vehicle routes. Forecasts are usually made based on historical information. The latter two approaches rely on real-time vehicle positioning technologies and real-time communication systems between each vehicle and route planners. In this dissertation, we propose to develop a look-ahead dynamic routing approach. One dynamic routing technique that has received significant attention in the literature is re- optimization. Theintuitionbehindre-optimizationistorepeatedlyandsequentiallyformulatestatic vehicle routing problems based on newly revealed information throughout the planning horizon. And solve these problems using well-studied static VRP algorithms. Depending on when static problems are formulated and solved, this approach involves into either the periodic re-optimization approach or the continuous re-optimization approach. In periodic re-optimization, an optimization procedure runs at the beginning of the planning horizon to construct an initial set of vehicle routes. Then, an optimization procedure is invoked periodically to solve the current state static problem, whenever new problem information becomes available, or at fixed intervals of time. Such fixed intervals are referred to as decision epochs or time slices in the literature [34, 10, 55]. Thefirstperiodicre-optimizationtechniquewasintroducedbyPsaraftisin1980[56]. Theauthor utilized a local-dynamic approach to solve the vehicle routing problem with dynamic customers. In 12 particular, a static VRP is formulated whenever a new customer requests service, and is solved to optimality by a dynamic programming algorithm. This approach inevitably suffers from the curse of dimensionality of dynamic programming, which prevents its application to large instances. Several streams of research follow the lead in developing periodic re-optimization frameworks embedded with exact algorithms. Chen and Xu considered a dynamic vehicle routing problem with hard time windows [10]. The authors assumed that the dispatcher does not have any deterministic or probabilistic information on the location and the size of a customer order until it arrives. A periodic re-optimization framework embedded with a dynamic column-generation-based algorithm was developed. The approach showed its merits when compared with insertion-based heuristics on most problems. One major limitation of the re-optimization approach lies in the fact that all optimization needs to be performed before the decision maker can update each vehicle with its new route, potentially causing delays in routing operations. One possible solution is to employ computationally fast heuristic algorithms instead of exact algorithms in the re-optimization framework. Thus, researchers have focused on developing heuristic algorithms. Several Metaheuristics were proposed to be combined with the periodic re-optimization framework. Montemanni et al. devel- oped an Ant Colony System (ACS) to solve the vehicle routing problem with dynamic customers [46]. One feature of the solution is to hold dynamic customers that arrive within a time period until the end of that period. This limitation is certainly not desirable in situations where an immediate or at least a timely response to customer requests is crucial. Secomandi and Margot studied a vehicle routing problem with stochastic demands [65]. The actual demand is only known when the vehicle arrives at the customer. The authors developed a finite-horizon Markov Decision Process (MDP) formulation for the single vehicle case. A partial re-optimization heuristic is proposed to solve the MDP. The authors compared multiple heuristics to embed in the re-optimization framework. They argued that their best approach outperforms existing heuristics. 2.2 Cost-sharing Mechanism Design A cost allocation problem specifies a set of players who request service that require a common and limited resource. Each player has a private, non-negative valuation for the service. This valuation is sometimes referred to as the willingness-to-pay value or the bid of the player. A cost function is defined on all subsets of players. The value of the function usually denotes the minimum total 13 cost of serving the corresponding subset of players. The objective is to determine the cost allocated (or the price charged) to each player and the subset of players who are willing to participate in the contention given the prices. The final solution needs to not only specify the membership of the contention, but also provide exact ways to facilitate such a contention in the context of the problem [45]. For example, to solve the cost allocation problem corresponding to a vehicle routing problem, the final solution needs to specify the group of customers to participate in the cooperation, a routing schedule that accommodates the same group of customers, and the exact cost share for each customer in the group. Depending on the context of the problem, a “binary demand game” refers to a situation where each player either receives service fully or not receive any service at all. In general demand games (sometimes referred to as “multi-parameter demand games”), each player may receive one of several levels of service or receive no service at all. Both binary and general demand games are common in vehicle routing problems. For example, if the operation is concerned with the shipments of goods or supplies, partial shipments or refills may be acceptable. In other situations, including the case of demand-responsive transport (DRT) systems, the entire demand of one customer must be fully fulfilled or not fulfilled at all. Popular classes of cost sharing problems include facility location problems [59, 39, 14], set covering problems [14, 32], and network planning problems (including the Steiner tree (ST) problem) [30, 59, 31]. One of the most heavily studied approaches to tackle the cost allocation problem is Cooperative Game Theory (CGT). CGT provides a general framework for studying the allocation of costs and/or savings to a group of participants who require a common resource to accomplish tasks. This approach focuses on what a group can achieve and whether it is possible to coordinate the group to achieve the goal by properly allocating costs. Many solution concepts have been proposed within the CGT framework. For example, the core [27] of a problem consists of allocations that recover the cost incurred by all of the players and ensures that no individual or a group of players can benefit by defecting. Whether the core of a problem is empty or not is often used as a proxy for the possibility of cooperation. Other CGT related solution concepts include the Shapley value [67], the nucleolus [64], and the value methods [73]. Another approach for solving the cost allocation problem is to design a cost-sharing mechanism, which is the approach we adopt in this dissertation. Instead of investigating what can be achieved by a cooperation, cost-sharing mechanism design focuses on finding a good way to allocate the cost to all potential players and to incentivize all players to participate in the cooperation. A cost- 14 sharing mechanism needs to define an algorithm to calculate the shared cost for each player, and a process to determine the subset of players who end up participating in the cooperation. During this process, the algorithm compares the shared cost of each player with its willingness-to-pay value; only the players whose quotes are no larger than their willingness-to-pay values accept the quotes and receive service. Researchers have focused on studying three desired properties of cost-sharing mechanisms, namely truthfulness (strategyproofness), budget balance, and economic efficiency [51, 45]. Truth- fulness (strategyproofness) requires that no player can strictly increase its utility by misreporting its valuation for the service. Equivalently speaking, it is optimal for individual players or groups of players to make their decisions based on their true valuations. The budget balance property requires that the sum of the prices charged to each participant equals to the total operating cost of facilitating the cooperation. Economically efficient mechanisms are those maximizing the welfare of all players in the problem, not only those who end up participating in the contention [45]. Un- fortunately, no mechanism could simultaneously satisfy all of the above mentioned constraints, as has been proved by Green et al. and Roberts [29, 57]. Thus researchers have focused on developing cost-sharing techniques that relax at least one of the constraints. Approximate measures have also been proposed on budget balance and economic efficiency [60]. The only known general technique for designing truthful and approximately budget-balanced cost-sharing mechanisms is due to Moulin [51, 52]. Roughly, a Moulin mechanism simulates an ascending iterative auction, in which players receive non-descending prices in each iteration and only the players who accept the price remain in the game. The algorithm halts when all remaining players accept their prices offered in the current iteration. A function regarded as the cost-sharing method calculates the cost share for each player given the entire set of players remaining in the current iteration. Truthfulness is guaranteed by requiring that the underlying cost-sharing method (function) satisfies the cross-monotonic property. Budget-balance is achieved only approximately by offering costs in each iteration that would in total approximately cover the cost incurred if the current iteration were to be the last one. Despite the fact that designing such mechanisms is highly non-trivial, Moulin mechanisms have gained significant attention and seen applications in a wide range of cost-sharing problems including scheduling [8, 6], network design [2, 30, 31], facility location [14, 35, 39, 54], and logistics [41]. However, recent work in the literature have criticized their poor performance in terms of budget-balance and economic efficiency [45, 32, 58]. 15 New families of cost-sharing mechanisms have been proposed, among which is the acyclic mech- anism [45]. Different from Moulin mechanism, acyclic mechanism introduces an ordering of players. In each iteration of the algorithm, prices are offered to players in the predefined sequence rather than simultaneously. This design relaxes the cross-monotonicity requirement of the underlying cost-sharing method while still maintaining the truthfulness property of the mechanism. Acyclic mechanisms have seen applications mainly in scheduling [3, 9] All of the approaches discussed above have been proposed for static cost allocation problems, in whichalltheprobleminformationisknownanddeterministic. Theentiresetofplayersisknownand fixed, and the cost function defined on any subsets of the players can be calculated deterministically. Inthecostallocationproblemassociatedwiththedynamicvehicleroutingproblem, criticalproblem information is revealed dynamically over time. For example, in the vehicle routing problem with dynamic customers, only part of the customers is known at the beginning of the planning horizon, and the rest of the customers arrive dynamically over time. In such cases, the entire set of customers that become realized can only be known by the end of the planning horizon. At any point during the horizon, the total cost of serving all customers can only be approximated. Generally speaking, the problem of allocating cost to a set of players under dynamically revealed information is called an online cost allocation problem, which can be solved by an online cost-sharing mechanism. An online mechanism adapts to newly revealed problem information and iteratively resolves the cost allocation problem as necessary. An online environment brings new challenges to the design of cost-sharing mechanisms, and additional properties that are important in an online environment have been introduced [23]. In particular, the individual rationality property states that the shared cost value for any customer never exceeds its willingness-to-pay level once the customer has been accepted into the cooperation. The online fairness property requires that players who join the cooperation late should never receive alowersharedcostthanthosethatjoinearly. Theimmediateresponsepropertyrequiresthatwhena new player becomes realized, it should be provided with an initial quote for the service immediately, so that the player could make the decision on whether to participate in the cooperation or not. The quotes have to be offered without knowledge on future player realizations and the final total cost of service. Besides, some of the properties originally defined for static cost allocation problems have been extended to the online environment. For example, the ex-post incentive compatibility property builds on the truthfulness property for static problems, and states that the optimal strategy for 16 each player is to make its request known at the earliest time possible. 2.3 Cost Allocation in Transportation As transportation costs continue to increase due to increased competition, lower inventory levels, and higher service level requirement by customers, horizontal collaboration in the logistics sector has received increasing attention from both the research community and players in industry. In the context of supply chain management and transportation, horizontal cooperation refers to the pooling of transportation capacity and customer demands among businesses operating at the same level(s) in the market [11]. A cost sharing transportation system is formed as a result. One crucial component of such a system is the allocation of total operating costs and/or savings to each participant in the system. A cost-sharing mechanism serves as the basis for any economic analysis of horizontal cooperation. The work by Anderson and Claus represents one of the earliest attempts to study the cost allocation problem in transportation collaboration [1]. The authors studied and compared multiple basic cost allocation methods as applied to a minimum cost network problem. In particular, the authors showed that the average cost sharing, unit (per mileage) cost sharing, and marginal cost sharing all suffer from various inefficiencies when applied naively. For example, average cost sharing cannot guarantee that each rational player will participate in the cooperation, while unit mileage pricing cannot prevent subgroups of users to form coalitions outside the grand coalition. CGT appears to be one of the popular approaches for solving cost allocation problems in trans- portation research. Many CGT solution concepts have been studied, including the Shapley value [67, 36], the core and related concepts [28, 15, 16], the nucleolus [64, 42], and the value methods [73]. Many work in the literature have focused on comparing the performance of different CGT solution approaches on the problem at hand, instead of proposing new solution concepts [22, 43, 18]. Other streams of research exist that study the cost allocation problem in transportation outside the scope of CGT. Özener et al. studied the cost allocation problem in a vendor managed inventory (VMI) system [53]. In a VMI model, the supplier is responsible to manage the inventory level of its customers and decides when and how much to replenish each customer. The research focuses on how to calculate the cost-to-serve for each customer, which is useful for both marketing and distribution planning needs. Lewczuk and Wasiak studied the problem of how to the allocate the transportation cost to 17 clients served by a material delivery system [40]. For practical reasons, a transparent and easy-to- understand cost allocation scheme is desired. The proposed method is based on determining the replacement cost of service of each client. Two major drivers of the replacement cost include vehicle usage as measured by ether distance or time. The POCS mechanism introduced by Furuhata et al. [23] solves the online cost allocation problem associated with a demand-responsive transport (DRT) system, where new service requests aresubmittedsequentiallyovertime,ratherthanallknownatthesametime. ThePOCSmechanism adapts proportional and marginal cost sharing methods into the online setting. In particular, customers that have consecutive request orders can choose to form coalitions. The shared costs among customers within the same coalition is proportional to their demand, while the sum of the shared costs of all customers in a coalition equals to the sum of their marginal costs. POCS is a flexible framework in the sense that no specific cost function is defined. All of the desired properties hold as long as the cost function of choice satisfies the following two properties: 1) total cost is non-decreasing over time (over order submissions); 2) total cost is independent of the submit order of customers who have already submitted their requests. The POCS mechanism relaxes one of the constraints of static cost allocation problems, namely that the entire set of players must be known at once. However, one limitation still remains. POCS assumes that all customers submit their service requests before vehicle operations start, so that the routing schedule can be recalculated each time a new customer submits its request. In the dynamic vehicle routing environment we study, customer request submissions and vehicle operations take place simultaneously. The portion of the routing schedule that has been implemented cannot be reversed, thus the vehicle routing problem and the cost allocation problem become highly interde- pendent. The assumption that the total cost is independent of the submit order of customers does not hold trivially. In this dissertation, we extend beyond this limitation by developing novel ways to construct routing solutions, calculate total costs, and dynamically route the fleet. 18 3 Dynamic Vehicle Routing Problem Definition and Solution Framework The first step to tackle the cost allocation problem in a real-time cost sharing transportation system is to model the underlying dynamic vehicle routing problem. In this chapter, we formulate and solve the vehicle routing problem with dynamic customer requests. In particular, we develop an optimization-based, look-ahead dynamic vehicle routing framework that instantly handles new informationinthesystemandperiodicallyre-optimizesthecurrentschedulebyusingbothconfirmed and forecasted information. In the following sections, we first formally define the problem and introduce the notations. We then illustrate components of the proposed framework together with details about how vehicles are routed dynamically based on partial routing schedules. This chapter concludes with a detailed explanation of all the heuristic algorithms used in the framework. 3.1 Problem Definition Suppose that the operation consists of routing a fleet of capacitated vehicles to collect shipments from a set of customers and transport them to a central depot. The length of the planning horizon is T max and can be discretized into time steps of unit length. There areN potential customers. Each customer has a fixed location, a known demand size, a known service time window and a service time of fixed length. The service time window specifies the earliest and latest times when service can be started at the corresponding customer and cannot be violated. Each customer requests service at most once during the planning horizon. The uncertainty lies in the fact that not all customers would request service. Some customers request service in advance (prior to the beginning of the planning horizon), and are called advance customers. The rest of the customers are called dynamic customers, who may or may not request service during the planning horizon. We assume that the probability a dynamic customer requests service can be estimated from historical information. The time when a dynamic customer requests service is called its request time. It is also the time when it becomes certain that the customer needs to be served. The objective is to minimize the total travel distance of all vehicles. The following notations are used for model parameters and decision variables. Generally, i and j are used to index customers, k to index vehicles/routes, and t to index time. N total number of customers 19 AC set of advance customers DC set of dynamic customers d i demand of customer i s i service time of customer i u i request time of customer i e i the earliest time that service can begin at customer i l i the latest time that service can begin at customer i t i;j minimum travel time between location i and j K total number of vehicles C capacity of each vehicle r k;t partial route for vehicle k at time t n i;k;t the i-th customer scheduled on vehicle k at time t a i time of arrival at customer i b i time of departure from customer i n 0;k;t the location from where vehicle k would start its new route if diverted at time t a 0;k;t the time when vehicle k would become available to start its new route if diverted at time t It is assumed that all vehicles travel at unit speed. Thus, the travel time is equatable with travel distance between corresponding locations. It is also assumed that no preemption in vehicle routes is allowed, meaning that a vehicle cannot be diverted while en route to its current scheduled customer. The vehicle can only be diverted after it reaches and finishes service at its current customer. The request time u i of dynamic customer i represents the time when it becomes certain that customer i needs to be serviced. u i is modeled as a random variable taking values on the interval [0;e i ]. It meansthatthecustomermustmakethedecisiononwhetheritneedstobeservicedornotbeforethe beginningof itsservice timewindow. In addition, we assumethat real-timetwo-way communication capability is established between the central decision making unit and each vehicle. At any point in time, the decision maker is aware of the complete fleet status including current locations, directions, and remaining capacities. This enables dynamic real-time routing of the vehicles. There are two issues that are uncertain about dynamic customer requests. First, whether the customer requests service at all during the planning horizon. Second, when will the customer request service given that it will do so. From a historical perspective, the probability that a customer requests service on any day can be estimated by the proportion of days that the customer 20 has requested service among all the days of operation. We use q i to denote this probability. For the second issue, a distribution on request time can be estimated by the actual request times of the customer on the days when it actually requested service. By definition, this distribution is conditional on the fact that the customer requests service. Let f i (t) be the conditional probability density function of request time u i . Recall that u i is defined on [0;e i ], thus we have ei 0 f i (t)dt = 1;8i. Given this setup, the probability that a dynamic customer i requests service during the time interval [t 1 ;t 2 ]; 0t 1 t 2 T max on any day can be calculated as P (i requests during [t 1 ;t 2 ]) =P (i requests; i requests during [t 1 ;t 2 ]) (1) =P (i requests during [t 1 ;t 2 ]j i requests)P (i requests) (2) = t2 t1 f i (t)dtq i (3) In a dynamic vehicle routing context, problem information are revealed gradually over time. In other words, the full set of customers cannot be know until the end of the planning horizon. At any timet in the planning horizon, only the set of advance customers and a subset of dynamic customers who have already requested service are known. A problem consisting of only partial information is called a partial vehicle routing problem P t . The solution to a partial problem at time t is called a partial solution S t , which consists of a collection of partial routing schedules, S t =fr k;t g where k = 1;:::;K. Besides, the sequence of customers alone does not uniquely determine an operational schedule. We also need to specify the exact arrival and departure times at each location along the route. Let a i and b i denote the arrival and departure times at customer i respectively. A partial routing schedule for vehiclek specifies the sequence of customers scheduled for the vehicle, together with the arrival and departure times at each customer. r k;t =fn 1;k;t ;:::;n jr k;t j;k;t ;n jr k;t j+1;k;t g wherejr k;t j denotes the total number of customers scheduled on route k at time t. n jr k;t j+1;k;t = 0;8k;t is a dummy place holder variable representing the constraint that all vehicles must return to the depot by the end of the planning horizon. n 0;k;t denotes the location from where vehicle k would start its new route if it was diverted at time t. It can be loosely interpreted as the “available position” of vehicle k. At any time t, vehicle k must be in exactly one of the following two states. State I: serving or idling at some customer i. StateII:enroutetosomecustomeri. Ineithercase, ifanewroutingscheduleweretobeconstructed at the moment and the vehicle is diverted, the new route must start at location i (no preemption 21 assumption). Hence in either case, we haven 0;k;t =i. In fact, during the implementation of vehicle routes, the n 0;k;t variable should be updated once the vehicle starts to travel to its next customer based on the no preemption rule. Similarly, a 0;k;t denotes the time when vehicle k would become available to start its new route if it were to be diverted at time t. It can be loosely interpreted as the “available time” of vehicle k. At any time t, if vehicle k is currently servicing customer i, then a 0;k;t = a i +s i ; if the vehicle is idle, then a 0;k;t =t; if the vehicle is traveling to service customer i, then a 0;k;t =a i +s i . 3.2 Look-ahead Partial Vehicle Routing Framework 3.2.1 Customer States and Transitions At any time during the planning horizon, each customer belongs to exactly one of the following 5 customer states. Unconfirmed customerU(t). Customers who have yet to request service, and are not antic- ipated to request in the near future. This is the initial state for all dynamic customers. Confirmed customerC(t). Customers who have requested service and are accepted, but not yet serviced. This is the initial state for all advance customers and the state for a dynamic customer once it requests service and is accepted. Serviced customerS(t). Customers who have been serviced. Rejected customerR(t). Customers who have requested service, but have been rejected due to infeasibility in the routing schedule. Anticipated customerA(t). Customers who have yet to request service, but are anticipated to do so soon. The set of anticipated customers is updated at each decision epoch (Section 3.2.2). The state of each customer changes over time. State changes are triggered by certain events in the dynamic partial routing environment and will be introduced in the following sections. Figure 1 shows all possible state transitions. Description of each transition follows. 1. An unconfirmed customer becomes confirmed once the customer requests service and the request is accepted (Section 3.2.3). 2. A confirmed customer becomes serviced once a vehicle starts to travel to the customer (no preemption allowed). 22 Unconfirmed Customers Anticipated Customers Confirmed Customers Rejected Customers Serviced Customers 1 2 3 4 5 6 7 Figure 1: Customer states and state transitions 3. Anunconfirmedcustomerbecomesrejectedoncethecustomerrequestsserviceandtherequest is rejected. 4. An unconfirmed customer becomes anticipated if the customer has a high probability of requesting service within the forecast horizon (Section 3.2.2). 5. An anticipated customer becomes confirmed once the customer requests service and the re- quest is accepted. Note the difference between transition 5 and 1 lies in the fact that in case 5, the customer was put into the anticipated set at the previous decision epoch (Section 3.2.3). 6. An anticipated customer becomes rejected once the customer requests service and the request is rejected (Section 3.2.3). 7. An anticipated customer becomes unconfirmed if the customer has not requested service between the time it was anticipated and either the next decision epoch (when the set of anticipated customers is reconstructed, Section 3.2.2) or the time when its reserved time slot in the current partial solution expires, whichever happens first. 3.2.2 Decision Epoch Decision epochs are the key component of the re-optimization scheme. Figure 2 illustrates the time dynamic of events in the system. The entire planning horizon is divided equally into a number of time periods. The beginning of each time period is called a decision epoch. By construction, the first decision epoch occurs at time 0. At each decision epoch, four solution procedures are called sequentially to construct and solve a partial vehicle routing problem. The resulting partial routing 23 schedule is implemented based on pre-defined rules until the next decision epoch (when the partial schedule is updated), or when the end of the planning horizon is reached. ... ... t Time Period Decision Epoch Dynamic Customer Request Figure 2: Time dynamic of events Figure 3 illustrates how partial solutions are constructed at each decision epoch. In the first step, a partial vehicle routing problem consisting of both confirmed and anticipated customers is formulated. The set of anticipated customers is constructed by a request forecast procedure. Let forecastHorizon be an adjustable parameter representing how far we forecast into the planning horizon. Suppose the current time is t and dynamic customer i has yet to request service. We want to calculate how likely it is for the customer to request service within the forecastHorizon. Let p i;t denote this probability. Then we have p i;t =P (i requests during [t ;t +forecastHorizon]j i hasn’t requested till t ) (4) = P (i requests during [t ;t +forecastHorizon];i hasn’t requested till t ) P (i hasn’t requested till t ) (5) = P (i requests during [t ;t +forecastHorizon];i hasn’t requested till t ) 1P (i requests during [0;t ]) (6) Thenumeratorrepresentsthejointprobabilityofevents“irequestsduring [t ;t +forecastHorizon]” and “i hasn’t requested tillt ”. In fact, the first event completely contains the second event. Given the assumption that each dynamic customer requests service at most once during the planning horizon, the fact that customer i requests in time interval [t ;t +forecastHorizon] implies that the customer must have not requested prior to time t . Thus equation 6 can be written as p i;t = P (i requests during [t ;t +forecastHorizon]) 1P (i requests during [0;t ]) (7) = t +forecastHorizon t f i (t)dt 1 t 0 f i (t)dt q i (8) where the last step follows from equation 3. Givenp i;t for each dynamic customeri who has yet to 24 request service, we use a simply threshold rule to select the set of anticipated customers. Namely, customer i is placed in the anticipated set if and only if p i;t threshold, where threshold is a tunable model parameter. A parallel construction heuristic is implemented to construct an initial feasible solution to the partial vehicle routing problem. Both confirmed and anticipated customers are routed. The local search heuristic follows to iteratively improve the initial solution. Last but not least, the hybrid waiting time adjustment heuristic re-distributes slack time along each vehicle route to maximize the chance of accommodating dynamic customers when they actually request service. In essence, a combination of push backward and push forward procedures is used to position the maximum amount of slack time possible immediately prior to the time when the vehicle must leave for the first anticipated customer on the route (if there is any). The hybrid heuristic ensures that (after finishing service at the previous customer) each vehicle waits for an anticipated customer to actually request service for the maximum amount of time possible while maintaining time window feasibility at all subsequent customers. Details of all heuristic algorithms are presented in Section 3.3. Partial Problem Formulation Construction Heuristic Local Search Heuristic Waiting Time Adjustment Heuristic Figure 3: Partial solution construction at decision epochs 3.2.3 Dynamic Routing In our model, vehicles are routed dynamically in real time based on partial routing schedules and newly revealed problem information. The schedules generated at a decision epoch are used until the next decision epoch, when the schedules are updated. A partial routing schedule specifies the sequence of customers scheduled on a particular vehicle together with the arrival and departure times at each customer. For example, the schedule may specify that vehicle k begins to travel to customer i at some future time t . When time t is reached, one of the following two cases must be true. Case I: customer i is a confirmed customer at t . In this case, the vehicle begins to travel 25 to the customer and the customer’s state is updated to “serviced” and n 0;k;t =i. Both updates are consequential to the no preemption rule. Case II: customeri is an anticipated customer att . Since the customer has not requested service and the vehicle has waited for the maximum amount of time for it to do so (Sections 3.3.3), the anticipated customer is dropped from the route and the hybrid waiting time adjustment heuristic adjusts the waiting time for all remaining customers on the same route. Based on the new schedule, the vehicle either remains idle at its current location (n 0;k;t is not updated) or immediately begins to travel to its next customer (n 0;k;t and the customer’s state are updated similarly as in Case I). When a dynamic customer requests service, it may or may not have a reserved time slot in the current schedule. The dynamic customer may have a reserved time slot because it was anticipated and routed at the previous decision epoch. In this case, the reserved slot is confirmed immediately and the customer becomes a confirmed customer. Otherwise, the customer does not have a reserved time slot in the schedule either because the customer was not anticipated and routed or because its time slot has expired (corresponding to case II discussed above). In this case, a cheapest insertion heuristicisusedtoroutethecustomer. Ifnofeasibleschedulecanbefound, thecustomerisrejected. 3.3 Heuristics 3.3.1 Construction Heuristic At each decision epoch, the construction heuristic generates an initial feasible solution to the partial vehicle routing problem consisting of both confirmed and anticipated customers. An iterative insertion-based heuristic that constructs all vehicle routes in parallel is implemented. This heuristic aims to minimize both total travel distance and the number of vehicles used. At each iteration, an impact measure is calculated to estimate the inconvenience of routing each customer at each feasible position in the partial solution. Then the customer with the lowest impact measure is placed at the corresponding position with minimum impact. The heuristic initiates with the set of confirmed customers. After all confirmed customers are routed, the procedure continues with the set of anticipated customers. We have adopted the definition of the impact measure by Solomon and Ioannou [33, 71] as the insertion criteria. Letimpact (i;r k ;n j;k ) denote the impact measure of placing customer i on route k at the position immediately prior to customer n j;k . i belongs to the set of un-routed customers in the current iteration, 1 kK, 1 jjr k j. Note that we have omitted the time subscript 26 of variables r k and n j;k in this section for simplicity. impact (i;r k ;n j;k ) is calculated as a weighted average of marginal travel distance and other surrogate cost measures. In particular, we have impact (i;r k ;n j;k ) = SI SI (i;r k ;n j;k ) + EI EI(i) + II II (i;r k ;n j;k ) (9) where SI, EI, and II represent self-impact, external-impact, and internal-impact respectively. SI ; EI , and II are external parameters representing the weight of each impact component. SI + EI + II = 1. Definition of each impact component is presented below. SI (i;r k ;n j;k ) measures the coverage of the service time window of customer i. Let i (n j;k ) denote the arrival time at customer i if the customer is scheduled immediately prior to cus- tomer n j;k on route k. The self-impact is calculated as the difference between the vehicle arrival time at customer i and the beginning of the time window of customer i. SI(i;r k ;n j;k ) = 8 > > < > > : max e i ;a n j1;k +s n j1;k +t n j1;k ;i e i 8j > 1 max e i ;a 0;k;t +t n 0;k;t ;i e i j = 1 (10) EI(i) measures the inconvenience caused for the remaining un-routed customers as a result of routing customer i. Whenever we schedule a customer in the partial solution, it becomes more difficult to schedule other customers due to potential infeasibility in the time window and/or vehicle capacity. The external-impact quantifies this difficulty. Let UC denote the set of un-routed customers in the current iteration. EI(i) = 1 jUCj 1 X j2UCnfig max (l j e i t i;j ;l i e j ;t i;j ) (11) II (i;r k ;n j;k ) denotes internal-impact, which is calculated as a weighted average of 3 sub- components. The first sub-component c 1 (i;r k ;n j;k ) measures the marginal travel distance of inserting customer i. The second sub-component c 2 (i;r k ;n j;k ) measures the maximum amount of delay in arrival time at subsequent customers. The third measure c 3 (i;r k ;n j;k ) is calculated as the time gap between the earliest possible arrival time at customer i and the beginning of the time window at customer i. This measure expresses the compatibility of customeri with the insertion position. 1 ; 2 and 3 are external parameters representing the 27 weight of each sub-component. 1 + 2 + 3 = 1. c 1 (i;r k ;n j;k ) =t n j1;k ;i +t i;n j;k t n j1;k ;n j;k (12) c 2 (i;r k ;n j;k ) = max e n j;k ;a i +s i +t i;n j;k + max e n j;k ;a n j1;k +s n j1;k +t n j1;k ;n j;k (13) c 3 (i;r k ;n j;k ) =l i a n j1;k +s n j1;k +t n j1;k ;i (14) II (i;r k ;n j;k ) = 1 c 1 (i;r k ;n j;k ) + 2 c 2 (i;r k ;n j;k ) + 3 c 3 (i;r k ;n j;k ) (15) 3.3.2 Local Search A Simulated Annealing (SA) algorithm embedded with well-known local search operators is devel- oped to improve the initial partial solution at each decision epoch. These operators are widely used to solve a variety of vehicle routing problems [50, 4, 61, 68]. In particular, one of the following 7 local search operators is randomly selected at each iteration of the Simulated Annealing algorithm. The first group of methods operates on inter-route neighborhoods, meaning that two vehicle routes are changed simultaneously. The second set of methods operates on intra-route neighborhoods, meaning that only one vehicle route is changed. Inter-route operators: Crossover. One customer is randomly selected from each of the two routes. The sequence of customers following and including the chosen customers are switched between the two original routes to form two new routes. Relocate. One customer is randomly selected and removed from the first route, and then inserted to a random position in the second route. Relocate2. Similar to Relocate, except that a pair of two consecutive customers is relocated from one route to another. Intra-route operators: Reinsert. One customer is randomly selected and removed from one route. The customer is then inserted to a random position on the same route that it is removed from. Or-opt2. Similar to Reinsert, except that a pair of two consecutive customers is reinserted to a random position on the same route that it is removed from. Or-opt3. Similar to Reinsert, except that a sequence of three consecutive customers is rein- serted to a random position on the same route that it is removed from. 28 2opt-exchange. Two customers are randomly selected from one route. The sequence of cus- tomers between and including the two chosen customers is reversed. In each iteration, let S t and S 0 t denote the original and updated partial solution respectively. Let cost (S t ) and cost (S 0 t ) denote the corresponding total travel distance. If cost (S 0 t ) < cost (S t ), S 0 t is accepted as the current partial solution. Otherwise, S 0 t is only accepted up to a probability determined by theacceptancerule of thesimulated annealingalgorithm. Anexponentialacceptance probability function is implemented in our model, which specifies P (S t ;S 0 t ;T ) =p exp cost (S 0 t )cost (S t ) T (16) whereP (S t ;S 0 t ;T ) represents the probability of accepting the updated partial solution S 0 t given the current solutionS t and temperatureT. T is an external variable which monotonically decreases as thenumberofiterationsincrease. p isanexternalparameterrepresentingthemaximumprobability of acceptance. P (S t ;S 0 t ;T ) =p if and only if cost (S 0 t ) =cost (S t ). 3.3.3 Waiting Time Adjustment In a dynamic vehicle routing environment, the design of arrival and departure times directly affects the final total cost of a solution. Studies in the recent literature have shown that waiting can be a useful strategy in handling dynamic customer arrivals, especially those with time windows [55]. In this section, we first review two common waiting time adjustment strategies for the vehicle routing problem with time windows, namely the Push Backward and Push Forward heuristics. We then illustrate the hybrid waiting time adjustment heuristic we develop for the look-ahead partial routing framework. Push Backward. All arrival and departure times are set based on the wait-first strategy. That is, when a vehicle finishes service at its current customer and becomes idle, it should first wait at its current location, and then travel to the next customer at the earliest time to ensure no waiting time at the next customer before it could start service. Let i and i + denote the predecessor and successor of customer i respectively. The Push Backward heuristic can be represented as follows. a i = max e i ;a i +s i +t i ;i b i =a i +t i;i + 29 Figure 4 illustrates an example of the Push Backward heuristic. Let g i represent the time when service is finished at customer i. There are three customers. The beginning and ending of their service time windows are labeled by a set of single and double bars respectively. Solid arcs represent travel times, dashed arcs represent service times, and double-headed arrows show waiting times. Suppose that the vehicle arrives at customer 1 exactly at time e 1 and begins service right away. Service is finished at time g 1 . The vehicle waits at customer 1 until time b 1 before traveling to customer 2, so that it does not arrive earlier than the service time window at customer 2. The subsequent arrival and departure times are calculated accordingly. ... ... t e 1 l 1 e 2 l 2 e 3 l 3 a 1 s 1 g 1 t 12 b 1 a 2 s 2 g 2 t 23 b 2 a 3 s 3 Figure 4: Example I: Push backward heuristic Push Forward. In a process quite like the reverse of the Push Backward heuristic, all arrival and departure times are pushed towards the end of the planning horizon as much as possible. Equivalently speaking, when a vehicle finishes service at its current customer and becomes idle, it should first wait at its current location, and then travel to the next customer at the latest time possible, while maintaining time window feasibility at all subsequent customers. The heuristic can be represented as follows. a i = min l i ;a i +t i;i +s i b i =a i +t i;i + Figure 5 illustrates an example of the Push Forward heuristic. The set of customers and their service time windows are the same as in Example I. ... ... t e 1 l 1 e 2 l 2 e 3 l 3 a 1 s 1 g 1 t 12 b 1 a 2 s 2 t 23 g 2 =b 2 a 3 s 3 Figure 5: Example II: Push forward heuristic 30 Hybrid Waiting Time Adjustment. When solving the dynamic vehicle routing problem, we aim to minimize the total travel distance of all vehicles. Waiting is assumed to be cost-free. Thus it is more efficient to let an idle vehicle wait at its current location for more information on future customer requests to become available before letting it to travel to the next customer. This can be achieved by applying the Push Backward heuristic to all of the customers scheduled on each vehicle. Additionally, we want to maximize the chance of accommodating dynamic (and possibly an- ticipated) customers when they request service. Recall that at each decision epoch, a new set of anticipated customers is selected and routed in the partial schedule. An anticipated customer remains in the solution until one of the following 3 cases happen. Case I: the customer requests service, at which time it becomes confirmed. Case II: it is time for the assigned vehicle to travel to the customer, at which time it has to be dropped form the schedule and becomes unconfirmed. If the same customer requests service after its reserved time slot has expired, it is routed using the cheapest insertion heuristic discussed. Case III: the next decision epoch is reached, at which time the customer becomes unconfirmed and a new set of anticipated customers is selected. Since time slots reserved for anticipated customers in the partial schedule have been optimized by the local search heuristic, case I is clearly a more desirable outcome than case II. Thus, when a vehicle has finished service at its current customer and the next customer scheduled on the route is an anticipated customer who has yet to request service, it is beneficial to let the vehicle wait for the customer to realize at its current location, for as long as possible before having to drop the customer out of the schedule. Equivalently, we want to place the maximum amount of slack time possible just prior to the anticipated customer on each route. This can be achieved by applying the Push Forward heuristic to all customers scheduled between (and including) the first anticipated customer on the route and the end of the route. Figure 6 illustrates an example of the hybrid heuristic. The set of customers and their service time windows are the same as in Examples I and II. Suppose that customer 2 is an anticipated customer who has yet to request service, while customers 1 and 3 are confirmed customers. The hybrid heuristic locates the largest possible amount of waiting time between customer 1 and 2 as shown by the gap between g 1 and b 1 . 31 ... ... t e 1 l 1 e 2 l 2 e 3 l 3 a 1 s 1 g 1 t 12 b 1 a 2 s 2 t 23 g 2 =b 2 a 3 s 3 Figure 6: Example III: Hybrid waiting time adjustment heuristic 32 4 Experimental Results 4.1 Experiment Setup Simulations are performed on a modified Solomon RC201 instance for the vehicle routing problem with time windows (VRPTW) [71]. The instance specifies all of the deterministic information on customer locations, demands, service time windows, and fleet capacity. There are 100 customers and the length of the planning horizon is 960 time steps. A dynamic vehicle routing problem can be constructed by specifying two parameters, namely the percentage of advance customers - ACPercent, and the probability that a dynamic customer requests service - RequestProb. These two parameters jointly determine the mixture between the number of advance customers and the expected number of realized dynamic customers in the problem. We assume that all dynamic cus- tomers have the same probability of requesting service. q i =RequestProb;8i. We use a triangular distribution function to modelf i (t), the conditional probability density function of request timeu i . A dynamic vehicle routing instance constructed as above contains all deterministic and stochas- tic information of the problem. A realization of the problem specifies the actual set of advance customers, a group of dynamic customers who are to make requests, and the precise request times of these customers. A realization reflects the operation environment faced by decision makers. For each dynamic instance, we simulate 50 realizations and report the average results. 4.2 Routing Strategies and Parameters For each realization of the dynamic vehicle routing problem, we simulate the following three routing strategies and record relevant performance measures for each strategy. Static routing. A static vehicle routing problem with time windows is built and solved. The set of customers is the union of advance customers and dynamics customers who request service. It is assumed that all of these customers are known at the beginning of the planning horizon and must be served. We assume that the number of available vehicles is unlimited and solve this deterministic VRP by using the construction and the local search heuristics. We record the total distance static Dist and number of vehicles used static NumV. This strategy assumes perfect probleminformationandthusprovidesalowerboundonthetotaltraveldistanceifsolvedoptimally. Dynamic partial routing. The proposed look-ahead dynamic partial routing framework is used to solve the dynamic vehicle routing problem. The number of vehicles is set to be the same as 33 in the static solution. In the case that dynamiccustomers have to be rejected due to insufficient fleet capacity, extra vehicles are added. Thus the final solution accommodates all advance customers together with the dynamic customers who request service. This solution is called the dynamic partial routing solution. The corresponding total travel distance is denoted as dynamic Dist. Multiple model parameters can be changed to adjust the level of planning and partial routing in the proposed framework, including the number of decision epochs - numEpoch, the length of the forecast horizon - forecastHorizon, and the threshold value used to select the anticipated customers - threshold. In addition, each heuristic algorithm has its own adjustable parameters. Through preliminary experiments, we have identified and fixed the values of some parameters for better performance. In particular, we set SI = 0:33, EI = 0:33, II = 0:34, 1 = 0:8, 2 = 0:1 and 3 = 0:1. Reactive routing. A reactive heuristic is used to solve the dynamic vehicle routing problem. This heuristic makes no forecast and no planning on dynamic customers. At the beginning of the planning horizon, the construction and local search heuristics are used to construct vehicle routes using only the known demand. No re-optimization is performed. Dynamic customer requests are handled in a reactive fashion by the cheapest insertion heuristic. Similarly as above, the number of vehicles is set to be the same as in the static case and additional vehicles are added when necessary. The final solution is called the reactive routing solution. The corresponding total travel distance is denoted as reactive Dist. 4.3 Look-ahead Dynamic Routing in Base Case As discussed in the introduction, reactive heuristics for solving the dynamic vehicle routing problem work reasonably well when little information concerning the randomness in the environment is available. The reactive routing strategy defined above falls into this category. In contrast, the dynamic partial routing framework proactively plans for dynamic customers and conducts partial routing of the vehicles. In this section, we study the performance of the partial routing strategy under various model parameter settings and benchmark its performance against the reactive routing strategy. Weuse thetotaltraveldistance asthemeasure ofcomparison andcalculatethe percentage savings in total travel distance of the dynamic partial routing as compared to the reactive routing. Distance Saving = reactiveDistdynamicDist reactiveDist . In the base case, we use ACPercent = 0:25 and RequestProb = 0:75 to construct a fairly 34 dynamic operating environment. The number of advance customers is 100 0:25 = 25 and the expectednumberofrealizeddynamiccustomersis 100(10:25)0:75t 57. Thevaluesofthemodel parameters we test arenumEpochs = 1; 2; 5; 10 and 20,forecastHorizon = 24; 48; 96; 192; 480 and 960, and threshold RequestProb = 0:2; 0:5 and 0:8. With T max = 960, each one of the forecastHorizon values selected (except 24) corresponds to the time between two consecutive decision epochs with respect to one of the numEpochs values. For example, when T max = 960, numEpochs = 10, and forecastHorizon = 48, the time between decision epochs is 96 and at each decision epoch, the request forecasting procedure forecasts for 48 time units. The values of threshold are relative to the requestProb value of the instance. For example, the actual threshold values used in the base case simulations are 0:75 0:2 = 0:15, 0:75 0:5 = 0:375, and 0:75 0:8 = 0:6, representing low, medium, and high levels of acceptance respectively. Table 1 shows the distance savings of the dynamic partial routing in the base case. The numEpochs is fixed at 5 and the table shows the sensitivity of the model with respect to different settings of the parameters forecastHorizon and threshold. numEpochs = 5 threshold forecastHorizon 24 48 96 192 480 960 0.15 18.61% 24.50% 28.26% 28.42% 28.09% 28.51% 0.375 16.25% 18.75% 25.21% 28.07% 28.23% 28.41% 0.6 14.37% 16.50% 21.50% 27.95% 28.19% 28.56% Table 1: Distance savings of dynamic partial routing in base case 1. When holding the threshold fixed, the distance savings increase as the length of the forecast horizon increases. The longer the forecast horizon, the higher the probability that a dynamic customer requests service within this time frame. Given the same threshold value, more dynamic customers are anticipated and routed at each decision epoch. This in turn increases the chance that when a dynamic customer requests service, it would receive a reserved time slot from the current solution. Such time slots have been optimized by the local search and waitingtimeadjustmentheuristicsandhencetendtobemoreefficientthantheonesgenerated by the myopic cheapest insertion procedure. 2. The increasing trend reaches its peak (or plateaus in some cases) at forecastHorizon = 96 withthreshold = 0:15 and atforecastHorizon = 192 withthreshold = 0:375 and 0:6. Given 35 that T max = 960 and numEpochs = 5, the time between two consecutive decision epochs equals to 960=5 = 192 time steps. We call 192 the breakpoint corresponding tonumEpochs = 5. With forecastHorizon = 192, it is guaranteed that the entire planning horizon will be coveredbytherequestforecastprocedure. WithforecastHorizon = 96andthreshold = 0:15, even though the planning horizon is not entirely covered, the low threshold value makes it more likely for dynamic customers to be anticipated. As a result, the distance saving of this setting is nearly as high as with forecastHorizon = 192. In general, when setting the forecastHorizon value to be equal to the breakpoints, all of the stochastic information on possible future customer requests can be exploited. Further increases in the length of the forecast horizon would result in overlapping and not provide additional information about future requests, thus not leading to extra distance savings. 3. WhenholdingtheforecastHorizonfixed, thedistancesavingsdecreaseasthethresholdvalue increases. When the threshold is higher, fewer dynamic customers would be anticipated and routedateachdecisionepoch. Consequently,lessofthedynamiccustomers,whentheyrequest service, would be provided with pre-planned time slots. More of the dynamic customers would have to rely on the cheapest insertion procedure which is myopic and generally more costly. We have established that for numEpochs = 5 and fixed forecastHorizon value, the smallest threshold value at threshold = 0:15 will generate the highest distance savings. The same trend holds for all othernumEpochs values we have tested. Our next task is to analyze the sensitivity of the dynamic partial routing strategy with respect to the parameter numEpochs. Table 2 shows the distance savings of the dynamic partial routing strategy with different pa- rameter settings of numEpochs and forecastHorizon. The value of threshold is fixed to be 0:15 for all experiments. Again the savings are measured with respect to the reactive routing strategy. threshold = 0:15 numEpochs forecastHorizon 24 48 96 192 480 960 1 5.24% 8.44% 13.35% 20.65% 27.93% 27.90% 2 9.19% 13.05% 18.77% 26.28% 28.30% 27.98% 5 18.61% 24.50% 28.26% 28.42% 28.09% 28.51% 10 25.22% 28.56% 28.99% 29.07% 29.22% 28.90% 20 27.40% 28.66% 29.20% 28.74% 29.22% 29.01% Table 2: Sensitivity analysis of parameter numEpochs and forecastHorizon 36 4. As an extension of observations 1 and 2, when holding numEpochs fixed, the distance sav- ings increase as the length of the forecast horizon increases. The increasing trend reaches its peak (or plateaus in some cases) no later than when the value of forecastHorizon reaches the breakpoints corresponding to the value of numEpochs. With T max = 960, the breakpoints corresponding to numEpochs = 1; 2; 5; 10 and 20 are 960; 480; 192; 96 and 48 respectively. Indeed the tables shows that with numEpochs = 1 or 2, the increasing trend peaks at forecastHorizon = 480. With numEpochs = 5, the cost saving plateaus at forecastHorizon = 96. Last but not least, with numEpochs = 10 or 20, the cost sav- ing plateaus at forecastHorizon = 48. This observation confirms the claim that distance savings are generated by dynamic customers who receive optimized time slots in the exist- ing schedule (observation 1). It also supports the claim that there exists a minimum level of forecastHorizon that is sufficient to generate the maximum distance savings. This minimum level aligns with the breakpoint value corresponding to each numEpochs value. 5. When holding forecastHorizon fixed, distance savings increase as numEpochs increases. Having more decision epochs corresponds to a higher level of partial routing since the de- mand forecast and re-optimization procedures are performed more frequently. This allows newly revealed information to be handled more promptly, leading to extra cost savings. This phenomenon is much more significant at lower settings of forecastHorizon than at higher settings. When forecastHorizon is small, the entire planning horizon is hardly covered by the forecast procedure even with the largestnumEpochs value we test. (2420 960). Con- sequently, each increase in the number of epochs will significantly increase the proportion of the planning horizon that is covered, leading to a sizable increase in cost savings. In contrast, when forecastHorizon is large, the majority of the planning horizon can be covered even with the least number of epochs. For example, at forecastHorizon = 960, only one epoch is needed at t = 0 to cover the entire planning horizon. In this case, increasing the number of decision epochs has only limited effects on the total cost savings, as reflected in the right-most column of Table 2. We have now studied how the model parameters numEpoch, forecastHorizon, and threshold individually and jointly affect the performance of the look-ahead partial routing algorithm. We have concluded that it is beneficial to set the threshold value based on threshold RequestProb = 0:2, and set the number of decision epochs at numEpoch = 20. Besides, it is sufficient to set the length of the 37 forecast horizon to be equal to the breakpoint value corresponding to the number of epochs. In this case, forecastHorizon = 48 is sufficient. These settings are used throughout the next section. 4.4 Sensitivity to the Expected Proportion of Realized Dynamic Cus- tomers As discussed in the previous sections, the dynamic partial routing strategy lies in the middle of the spectrum that reflects the amount of problem information used in a solution approach. On one end of the spectrum is the static routing strategy that assumes a deterministic system and uses perfect problem information; on the other end lies the totally reactive routing strategy that does not make use of any stochastic information. In this section, we seek to explore the behavior of dynamic partial routing in problems with different expected proportions of realized dynamic customers and compare it to the benchmarking strategies lying at the ends of the spectrum. In our experiments, we use the parameters ACPercent and RequestProb to adjust the mixture between advance and realized dynamic customers. The expected proportion of realized dynamic customers among all realized customers can be calculated as RequestProb(1ACPercent) RequestProb(1ACPercent)+ACPercent , which lies between 0 and 1 by definition. Intuitively, the higher the values of ACPercent, the smaller the expected proportion of realized dynamic customers and the less dynamic the problem is. Similarly, the higher the values ofRequestProb, the higher the expected proportion of realized dynamic customers is. In our experiments, the expected proportion of realized dynamic customers ranges between 0:01 and 0:89. Since the static routing strategy assumes a deterministic environment, it provides a lower bound on total travel distance for the other two strategies that solve the dynamic routing problem. Thus we report their distance penalties as compared to the static solution. For example, the distance penalty of dynamic partial routing is calculated as Distance Penalty = dynamicDiststaticDist staticDist . The smaller the penalty, the better the solution. The results are summarized in Table 3. 6. When holding theACPercent fixed at low to moderate levels (0:1 through 0:5), the distance penalties increase for the reactive routing strategy as RequestProb increases. This strategy does not make use of any stochastic information on dynamic customers, and thus it suffers more when there are more dynamic customers in the system. The trend becomes less signifi- cant when theACPercent is high. AtACPercent = 0:9, the reactive routing strategy shows relatively flat performance except for the case whereRequestProb = 0:1. In this case, the ex- 38 RequestProb 0.1 0.25 0.5 0.75 0.9 0.1 0.25 0.5 0.75 0.9 ACPercent Reactive Routing Dynamic Partial Routing 0.1 24.4% 33.2% 56.5% 57.3% 62.4% 14.3% 11.3% 6.9% 5.4% 4.4% 0.25 12.6% 17.6% 35.7% 47.1% 53.1% 11.2% 10.6% 6.6% 4.6% 3.1% 0.5 5.5% 4.8% 18.7% 29.5% 33.2% 6.8% 6.0% 4.5% 2.6% 2.3% 0.75 0.6% 4.2% 9.2% 13.4% 17.9% 3.7% 3.8% 3.0% 1.7% 1.5% 0.9 0.5% 4.0% 6.0% 5.5% 5.9% 2.0% 1.4% 1.4% 1.5% 1.9% Table 3: Sensitivity to different expected proportions of realized dynamic customers pectedproportionofrealizeddynamiccustomersisonly RequestProb(1ACPercent) RequestProb(1ACPercent)+ACPercent = 0:1(10:9) 0:1(10:9)+0:9 0:01andtheroutingenvironmentispracticallystatic. Thereactiveandstatic routing strategies are expected to behave similarly as reflected by the 0.5% average distance penalty. 7. On the contrary, distance penalties decrease for the dynamic partial routing strategy as the RequestProb increases when holding the ACPercent fixed at 0:1 through 0:5. The partial routing strategy uses a threshold rule to forecast customer requests. When the RequestProb is low, many time slots reserved for anticipated customers will not get confirmed and are wasted. The quality of the forecast is poor. These time slots take up both physical and temporal capacity of the fleet. As the RequestProb increases, more of the time slots re- served for anticipated customers will get confirmed. The quality of the forecast increases, and the distance penalty becomes smaller. Similarly as for the reactive routing strategy, the penalty measures become flat across different values ofRequestProb for problems with higher ACPercent values. Especially atACPercent = 0:9, the number of dynamic customers is only 10 and is too small as compared to the number of advance customers, such that the exact number of realized dynamic customers barely affect the quality of the solution. 8. When holding RequestProb fixed, both the reactive routing and dynamic partial routing strategies perform better for problems with more advance customers and lower expected proportions of realized dynamic customers. Even though the two strategies use different methods to handle randomness in the problem, they both suffer from the uncertainties in dynamic requests and both have to make routing decisions based on partial information. 9. We now compare the reactive routing and the dynamic partial routing across problems with different expected proportions of realized dynamic customers. Generally speaking, dynamic 39 partial routing outperforms reactive routing for problems with low ACPercent and high RequestProb values. Among all the problems we have tested, the highest expected proportion of realized dynamic customers is 0:89, corresponding to the instance with ACPercent = 0:1 andRequestProb = 0:9. Thepartial routing strategy shows only 4:4% in distance penalty and outperforms reactive routing by the largest margin among all instances. On the contrary, for problems with high ACPercent and low RequestProb values, reactive routing outperforms dynamic partial routing. This suggests that excessive planning for future requests could backfire in situations where the number of dynamic customers is small. Nevertheless, it is evident that the contrast between 0:5% and 2:0% in distance penalties in the case with the lowest expected proportion of realized dynamic customers is minimal as compared to the sharp difference between 62:4% and 4:4% in the case with the highest expected proportion of realized dynamic customers. It suggests that even though the quality of forecast is poor when there are few dynamic customers, the re-optimization scheme in the partial routing framework could promptly correct the errors in forecasting based on newly revealed information. This implies that dynamic partial routing is more flexible and robust than reactive routing across problems with different expected proportions of realized dynamic customers. 4.5 Unit Cost Analysis of the Different Routing Strategies So far we have focused on benchmarking the total travel distance of serving all customers. Another metric of interest is the average travel distance per customer, which can be calculated by dividing the total travel distance by the total number of serviced customers (both advance and dynamic customers). This unit cost measure allows us to study the effect of economies of scale of serving additional customers for problems of different sizes. In the context of the vehicle routing problem with dynamic customers, the size of a problem can be interpreted in two dimensions. The first dimension relates to the total number of realized customers, and the second dimension concerns with the expected proportion of realized dynamic customers given the total number of customers. To this end, we now analyze the average travel distance per customer on a set of instances that reflect both dimensions of the size of the problem. Table 4 reports the average travel distance per customer. Each row of the table contains the results corresponding to problems with the same expected number of customers, and the number is listed in the first column of the table. The rest of the columns contain the results of the correspond- 40 Expected Proportion of Realized Dynamic Customers High Low High Low Expected Number of Customers Static Routing Dynamic Partial Routing Reactive Routing 32.50 20.46 21.98 22.76 26.28 23.07 55.00 16.16 18.29 17.26 26.75 17.05 77.50 13.84 14.89 14.36 22.21 13.93 91.00 12.94 13.62 13.20 21.19 13.04 Table 4: Average travel distance per customer for different problem sizes ing routing strategy. In static routing, all of the customers are assumed to be advance customers. The mixture between advance and dynamic customers is irrelevant. For the other two strategies, we report the results on two DVRP instances, one with a high expected proportion of realized dynamic customers (ranging between 0.69 and 0.89) and the other with a low expected proportion of realized dynamic customers (ranging between 0.01 and 0.23). Note that both instances have the same total expected number of customers. 10. Forthestaticroutingstrategy, astheexpectednumberofcustomersincreases, morecustomers can be accommodated on the same vehicle based on proximity in their locations. Thus the proportion of deadheading miles is reduced and the average travel distance per customer decreases due to economies of scale on vehicle usage. 11. For the dynamic partial routing strategy, the average travel distance per customer is roughly the same in cases with high or low expected proportions of realized dynamic customers, given the same total expected number of customers. This suggests that the partial routing strategy is robust with respect to the mixture between advance versus dynamic customers. The re- optimization algorithm shows its advantage in quickly adapting to new information and easing out part of the inconvenience caused by uncertainties in dynamic requests. The average travel distance per customer in both the high and low expected proportions of realized dynamic customers cases are marginally higher than the corresponding measure of the static routing solution, which is consistent with the previous analysis. As the expected number of customers increases, the average travel distance per customer decreases similarly as in the static routing case due to the effect of economies of scale. This suggests that under the dynamic partial routing strategy, the system has the ability to accommodate additional dynamic customers without the risk of increasing the average travel distance per customer. 41 12. For the reactive routing strategy, the average travel distance per customer is significantly larger in cases with high expected proportions of realized dynamic customers than in cases where the proportions are low, given the same total expected number of customers. This suggests that reactive routing is very sensitive to the number of dynamic customers in the problem because these customers are handled by the myopic cheapest insertion heuristic, which is globally suboptimal. This observation is consistent with the previous analysis which shows that the reactive routing strategy performs particularly poorly on instances where the value of RequestProb is high. In the cases with high expected proportions of realized dynamic customers, the average travel distance per customer are significantly higher than the corresponding measure of the static routing solution, suggesting that the benefit of economies of scale is out-weighted by the increase in total travel distance caused by the suboptimal routing strategy. Additional dynamic customers tend to cause the average travel distance per customer to increase dramatically. 42 5 The Online Cost Allocation Problem The second step in building a real-time cost sharing transportation system is to study how the total operating cost is allocated to each participant in the cooperation. To study a static cost allocation problem, one needs to define the set of players, the total cost function, and the calculation of the shared costs. In the online cost allocation problem we study, the key challenge lies in how to incorporate the time dimension into a cost-sharing mechanism. In particular, we need to specifically design how the set of players, the total cost function, and the calculation of shared costs evolve over time, as more problem information becomes available. In this chapter, we first state the online cost allocation problem in the DVRP and discuss a list of desirable properties for online cost-sharing mechanisms. We then formally define the Hybrid Proportional Online Cost Sharing (HPOCS) mechanism and illustrate it with two examples. We prove that HPOCS satisfies all of the desirable properties we propose. We then analyze simulation results under various demand conditions. Two extensions of the HPOCS mechanism are then proposedtoimprovetheperformanceofthebaselinemodel. Westudythetwoextensionmechanisms both theoretically and via experiments. 5.1 Problem Statement 5.1.1 Problem Definition In the dynamic vehicle routing problem we study, the uncertainty lies in the fact that part of the customers are confirmed at the beginning of the planning horizon while the rest are revealed over time when the vehicles are in operation. The entire set of customers who may potentially request service is known and fixed. Among these customers, some know for sure that they require service and have confirmed so at the beginning of the planning horizon, before routing schedules are calculated. These customers are called advance customers. The rest of the customers are called dynamic customers, who may or may not request service during the planning horizon. The time when a dynamic customer becomes certain that it requires service is called its truthful request time. We assume that the service provider enforces a deadline for each customer to request service. The deadline for each customer may be different, and is always no later than the beginning of the service time window of the customer. The truthful request time of each customer is a random variable taking values on the interval ranging from the beginning of the planning horizon to its request 43 deadline. We assume that the passenger cannot request service prior to its truthful request time, but may choose to delay its request in anticipation to take advantage of a possibly lower shared cost. In such cases, we distinguish its truthful request time, which is its earliest possible request time, from its actual, perhaps delayed, request time. Similarly, we assume that the actual request time of each dynamic customer cannot be later than its request deadline. That is to say, the request deadline of each dynamic customer aligns with the latest time when we could know with certainty whether the customer requires service or not. It is assumed that no two dynamic customers can have the same request time, either the truthful request time or actual request time. Once a dynamic customer requests service, it is called a realized dynamic customer. The solution of a cost allocation problem usually comes in the form of a cost-sharing mechanism, whichtakesthesetofcustomersastheinputandgeneratesthesharedcostofeachparticipantasthe output. A cost-sharing mechanism should specify at least two cost functions: a total cost function that returns the total transportation cost of serving the set of customers, and a shared cost function that returns the shared cost of each individual participant. In the online cost allocation setting, however, the shared cost of each participant usually changes over time, possibly due to realization of new customers, cancellation of existing customers, and changes in network conditions that affects the total operating cost. An online cost-sharing mechanism should instead re-calculate the total operating cost and the shared cost of each customer whenever any of these changes happens. The mechanism should also record the sequence of shared costs over time for each customer. When a dynamic customer requests service, the total cost of serving all customers may change, so does the shared cost of each existing customer. The dynamic customer should be immediately considered in the cost allocation problem and be offered a shared cost. The shared cost that a customer receives at the time of its request serves as its initial quote. Each customer may have a willingness-to-pay value that aligns with its valuation of the service received. The initial quote is the price that the customer would have to compare with its willingness-to-pay value to make the decision of whether to accept or decline the service. How the total transportation cost should be calculated and shared among both advance and realized dynamic customers over time is a non-trivial problem for the following reasons: First, advance customers become known at the beginning of the planning horizon and should be offered theirinitialquotesatthesametime, withoutknowledgeonhowmanyandwhichdynamiccustomers would request service. The way cost is shared among advance customers should obey standards 44 typically required in static cost allocation problems, including fairness, budget balance, etc. As the planning horizon rolls out, the shared costs for advance customers together with the shared costs for realized dynamic customers should obey the properties required in the online setting. Second, customers should be given incentives to request service as early as possible to allow more time for calculating routing schedules. This suggests that an ideal mechanism should ensure that the best strategy for each individual customer to achieve the lowest possible shared cost is to request service at its truthful request time. For the same reason, a good mechanism should be able to demonstrate thatitismoreadvantageousforeachcustomertomakeitsservicerequestknownearlyasanadvance customer than to request late as an dynamic customer. For example, consider the extreme case where all of the customers are advance customers and are known before the fleet starts its operation. Then the situation practically becomes a static vehicle routing and cost allocation problem. The routing schedule and shared costs can be solved without the complexity caused by uncertainties. Last but not least, the initial quote provided to each customer should serve as an upper bound on the final shared cost of the customer, which is the shared cost value for the customer at the end of the planning horizon. 5.1.2 Typical Cost-sharing Methods In a static cost allocation problem, where the entire set of players is known and the total cost of serving each subset of players is well defined, the most intuitive and fair way to share the cost is proportional cost sharing [74, 72], where the total cost is distributed among all customers proportionally to their demand of the common resource. Now consider the online cost allocation problem we study, where dynamic customers request service sequentially and each customer may or may not become realized. In this online setting, the most intuitive way of sharing cost is incremental cost sharing [51], where the shared cost of each new player equals to the marginal cost generated from including the new player. Under incremental cost sharing, the shared cost of each customer will remain the same through the planning horizon, and thus the final shared cost always equals to the initial quote for each customer. Another strategy is to naively adapt proportional cost sharing to the online setting by re-calculating shared costs each time a dynamic customer requests service. That is to say, the shared cost of each customer may change each time an additional customer enters the system, and there is no guarantee that the shared cost for any customer will not increase over time. Lastly, wecouldincorporatecustomerrequestforecastingfromthelook-headdynamicrouting 45 framework to generate anticipated customers and take them into consideration when calculating shared costs. We call this strategy proportional cost sharing with forecast. We now use a simple example to illustrate how these typical cost-sharing methods behave in an online setting. Suppose there are a total of 2 customers in the system and their locations are shown in Figure 7. The direct distances between customer A and the depot, between customer B and the depot, and between customer A and B are 8, 6, and 4 respectively. We assume that the unit travel cost is generated per unit distance traveled. We also assume that the demand for the transportation resource of each customer can be represented by its direct distance from the depot. Let customerA be an advance customer who has been confirmed. Customer B represents a dynamic customer who has a high chance of requesting service but has yet to do so. There are two possible outcomes concerning the randomness in this system, depending on whether customer B requests service or not. In case 1 customer B ends up not requesting service while in case 2 it does. The final routing schedule for both cases are drawn in Figure 7. Under both cases, we calculate the initial quote at the time of service request and final shared cost for each customer using the three cost-sharing methods discussed above, namely incremental cost sharing, proportional cost sharing withoutforecasting, andproportionalcostsharingwithforecasting. Weassumethatbudgetbalance is always satisfied in both cases under all three cost-sharing methods, meaning that the sum of the final shared cost(s) of all realized customer(s) equals to the total travel cost corresponding to the routing schedule represented in Figure 7. The results are shown in Table 5. For example, under the proportional cost sharing without forecasting, the initial quote provided to customer A is 16, which equals to the total travel cost when A is the only customer in the system. Under case 2, when customer B requests service, the total travel cost becomes 18. The shared costs for customer A and B are 144 =14 and 108 =14 respectively, in proportion to their demand values. These cost values represent the final shared costs since all of the randomness in the system has been realized. Under the proportional cost sharing with forecasting, customer B is considered in the cost allocation problem since it has a high probability of becoming realized. The initial quote for customer A is 144 =14, and is calculated based on the routing schedule that customer B realizes, where the total travel cost is 18. However, in the case that customer B ends up not requesting service, the final shared cost of customer A has to be increased to 16 in order to recover the total travel cost of serving only customer A. We now discuss whether each cost-sharing method shows desirable properties as discussed in 46 Figure 7: Example IV: Typical cost-sharing methods Case 1 Case 2 Customer A Customer A Customer B Initial Final Initial Final Initial Final Incremental Cost Sharing 16 16 16 16 2 2 Proportional Cost Sharing without Forecasting 16 16 16 144 =14 108 =14 108 =14 Proportional Cost Sharing with Forecasting 144 =14 16 144 =14 144 =14 108 =14 108 =14 Table 5: Shared costs under typical cost-sharing methods the previous section. Under incremental cost sharing, customer B receives a much lower shared cost than customer A proportional wise based on their demand values, which is a clear violation of the fairness rule. In general, customers who request late tend to get lower shared costs since the marginal cost of service is almost always lower than the stand alone cost offered to the first customer. This unfairness may incentivize untruthful request times as customers wait to request service late in anticipation for possibly lower marginal costs. The other two proportional cost sharing-based methods do not suffer from the loss of fairness since the total cost is always shared proportionally among existing customers at any point in time. However, in the case that customer B does request service, the proportional cost sharing without forecasting method provides customer A with an initial quote of 16 that is much higher than its final shared cost of 144 14 . Recall that the initial quote is the value that the customer would have to use to make the decision on whether to accept the service or not. Even though the final shared costs is fair and low for customer A, the high quote may turn away the customer in the first place. On the contrary, if forecasting for customer B is used at the time of quoting customer A, the initial quote and final shared cost for either customer will be the same as in the case that customer B does become realized. On the other 47 hand, if customer B does not request service, the final price charged for customer A would have to increase to 16 from its initial quote of 144 14 in order to recover the total transportation cost and maintain the budget balance property. This may not be practical since customer A may not agree to pay for a higher price. There may be a loss in good faith if the customer accepts and pays for the higher price, or there may be wasted traveling if the customer chooses to drop service and the vehicle has already been en route. An alternative solution would be to keep customer A’s initial quote as its final price and generate a budget deficit at the same time. Either situation is clearly undesirable for both the service provider and the customer. 5.1.3 Desirable Properties It is evident from the example above that none of the cost-sharing methods discussed so far is well-suited for the dynamic vehicle routing problem. Before we develop a new mechanism, we first discuss a list of properties for an ideal online cost-sharing mechanism. Some of the properties correspond to their counterparts for static problems, such as fairness and budget balance. The rest are derived specifically for the online environment and are based on the shortcomings of typical cost-sharing methods discussed above. Online Fairness. At any time during the planning horizon, the shared cost per demand value of any customer is never lower than those of customers who have requested service prior to the customer. The property has two implications. First, since requests by advance customers are all known at once, their request times are the same. There should not be any notion of early and late among advance customers. Thus, fairness for advance customers means that the shared cost per demand value of all advance customers should be the same. Second, since all advance customers request service before all realized dynamic customers, the shared cost per demand value of any advance customer should never be higher than that of any dynamic customer. It is important to point out the difference between shared costs and initial quotes. The shared cost of a customer usually changes over time as more customers enter the system. The initial quote, however, is the first shared cost valued provided to a customer at the time of its request. The quote is fixed once provided. Thus the online fairness property does not require that the initial quote per demand value provided to any customer to be never higher than the one provided to a subsequent customer. In other words, it can happen that a customer who requests service late receives a lower initial quote per demand value than a prior customer. Nevertheless, in such a situation it is guaranteed 48 that the current shared cost per demand value of the prior customer is never higher than the initial quote per demand value provided to a subsequent customer. Budget Balance. At any time during the planning horizon, the sum of the shared costs of all customers equals to the total travel cost of the current routing schedule, including both traveled and untraveled portions of the schedule. Immediate Response. Each customer should be provided with an upper bound on its final shared cost at the time of its service request. Since each customer has to make the decision of whether to accept or decline the service based on its willingness-to-pay level, this property guarantees that each customer only has to make that decision once at the time of its request, without having to worry about being charged against its will for a higher price than it previously agreed to. Individual Rationality. At any time during the planning horizon, the shared cost of any customer who has accepted its initial quotes never exceed its willingness-to-pay level. Since a customer only remains in the cooperation as long as its shared cost does not exceed its willingness- to-pay level, individual rationality guarantees that no customer will drop out of the cooperation once it joins. This property also suggests that the initial quote serves as an upper bound on the final shared cost for each customer. Ex-Post Incentive Compatibility. The best strategy of each customer is to request service truthfully at its earliest possible time, provided that all other customers do not change their request times and whether they accept or decline their initial quotes. This property has two implications. First, an advance customer cannot decrease its final shared cost by choosing to become a dynamic customer and not request service at the beginning of the planning horizon. Second, a dynamic customer cannot decrease its final shared cost by delaying its actual request time to be later than its truthful request time. For similar reasons as discussed under the online fairness property, this property is concerned with the final shared costs rather than initial price quotes. Thus it is possible for a customer, either an advance customer or a dynamic customer, to delay its actual request time and receive a lower initial quote than it would have received at its truthful request time. Even if it happens, the final shared cost of the same customer in the delayed request case is guaranteed to be no lower than in the truthful request case. 49 5.2 Hybrid Proportional Online Cost Sharing (HPOCS) In this section, we formally define the Hybrid Proportional Online Cost Sharing (HPOCS) mech- anism. We begin by defining relative terminologies. Then we explain how the shared costs are calculated and updated over time in the dynamic vehicle routing problem. We illustrate the mecha- nism using a simple DVRP example. We prove that HPOCS satisfies all of the desirable properties discussed in the previous section. In the end, we analyze experimental results of the baseline HPOCS mechanism. 5.2.1 Mechanism Design WedeveloptheHPOCSmechanismasanonlinecost-sharingmechanismthatcombinesproportional cost sharing for solving static cost allocation problems and the Proportional Online Cost Sharing (POCS) mechanism [23] for handling sequential customer requests. In particular, proportional cost sharing is used to calculate the initial quotes for advance customers at the beginning of the planning horizon, while the POCS mechanism is used to handle dynamic customer requests. The idea behind POCS is that customers are partitioned into coalitions, where each coalition contains a sequence of customers who request service within given time intervals. At the time of its request, each customer first forms its own coalition. However, customers can choose to form coalitions with customers who request service directly after them to decrease their shared costs per alpha value. The formation of a coalition is determined by comparing the pooled marginal costs shared over subsets of customers each time a new customer enters the system. A set of specially designed total and marginal cost values for advance customers is used to initialize the POCS process for dynamic customers. This setup ensures that the coalition can be formed across both advance and dynamic customers. A novel routing technique together with the corresponding cost functions serves as the core of HPOCS. In general, we use the same notations as in Chapter 3. Additional notations are introduced as necessary. Generally, i and j are used to index customers, k to index vehicles/routes, t to index time, and n to index the request order. C grand set of customers N total number of customers AC set of advance customers DC set of dynamic customers C(t) set of confirmed customers at time t 50 t i;j minimum travel time between location i and j c i;j minimum travel cost between location i and j d i demand of customer i e i the earliest time that service can begin at customer i l i the latest time that service can begin at customer i v i request deadline of customer i u i truthful request time of customer i a i time of arrival at customer i b i time of departure from customer i LetC represent the grand set of potential customers, which is the union of the set of advance customersAC and the set of dynamic customersDC ,C =AC[DC,jCj =N. Let C(t) represent the set of customers who have requested service by timet. It is important to differentiateC(t) from the termC(t) used in the previous sections. C(t) consists of customers who have requested service but have yet to receive service. C(t) on the other hand includes all customers who have requested service, no matter whether they have received service or not. By definition, C(0) =AC since none of the dynamic customer has requested service but all of the advance customers are already known at time t = 0. It is assumed that the unit cost is the same as the unit distance traveled by any vehicle. Thus, the travel cost is equatable with travel distance between corresponding locations, c ij =t ij . Based on the same dynamic vehicle routing setup as presented in Section 3.1, the following modificationsaremade. Itisassumedthattheserviceproviderenforcesadeadlineforeachcustomer to request service, which is the latest time when a dynamic customer must make the decision on whether it needs to be serviced or not. No request can be made by a customer after its request deadline. The deadline may be different for different customers, but is always no later than the beginning of the service time window of the customer, v i e i ;8i. The truthful request time u i of a dynamic customer i represents the time when it becomes certain that customer i needs to be serviced. u i is modeled as a random variable defined on the interval between the beginning of the planning horizon and the request deadline of the customer, u i 2 [0;v i ]. We use q i to denote the overall probability that customer i requests service on any day, and use f i (t) to denote the conditional probability density function of its request timeu i . Sinceu i is defined on [0;v i ], we have vi 0 f i (t)dt = 1;8i. Given this setup, the probability that a dynamic customer i requests service 51 during the time interval [t 1 ;t 2 ]; 0t 1 t 2 T max on any day can be calculated as P (i requests during [t 1 ;t 2 ]) =P (i requests; i requests during [t 1 ;t 2 ]) (17) =P (i requests during [t 1 ;t 2 ]j i requests)P (i requests) (18) = t2 t1 f i (t)dtq i (19) We now formally define terminologies related to the HPOCS mechanism. Definition 1. The alpha value i of customer i quantifies the demand of its service request, that is, how much of the transportation resource it requires. It can also be interpreted as the measure of inconvenience caused on accommodating the customer. The alpha value is assumed to be positive and independent of the request time of the passenger. Similarly, it is also independent of whether the customer is an advance customer or dynamic customer. We use i =c 0;i d i ; (20) wherec 0;i represents the minimum travel cost between customeri and the depot, andd i represents the demand of customer i. Definition2. Foranytimet2 [0;T max ]andthecorrespondingsetofcustomerswhohaverequested serviceC(t), t denotes arequest order ofthe customers inC(t). Forn2 [1;jC(t)j], t (n) represents the n th customer to request service under request order t . For example, t (n) = i means that customer i is the n th customer to request service under request order t . Definition3. Foranytimet2 [0;T max ]andthecorrespondingsetofcustomerswhohaverequested service C(t), t denotes the special request order based on the realization of the dynamic vehicle routing problem up to time t, where all realized dynamic customers are ordered after all advance customers. In particular, the first part of t consists of all of the advance customers. Since all of the advance customers become known at the same time, there should not be any notion of early and late among them. In fact, any ordering of advance customers can be used to build the first half of t . The exact ordering does not affect the properties of HPOCS, which will be proved in later sections. The second part of t records the ordering of realized dynamic customers based on the ordering of their actual request times. Suppose that t 1 and t 2 are two time points in the planning horizon with 0 t 1 t 2 T max , 52 then the corresponding sets of customersC(t 1 ) andC(t 2 ) must satisfyC(t 1 )C(t 2 ) andjC(t 1 )j jC(t 2 )j. In addition, letn be any order index within the range 1njC(t 1 )j. Then we must have t1 (n) = t2 (n). This is true because by Definition 3, the special request order is constructed by appending new customers who request service to the end of the current order. Thus the existing portion of the special request order is always preserved. It is important to point out that t is a general symbol used to represent any request order, while t is the request order uniquely defined by the realization of the DVRP. Nevertheless, given time t2 [0;T max ], t and t will always contain exactly the same set of customers, namely C(t). Recall that C(0) =AC, meaning that 0 is not an empty request order. Instead, 0 consists of all advance customers. The same is true for 0 . Definition 4. The grand schedule S is a complete routing solution to the static vehicle routing problem corresponding to the grand set of customersC, which satisfies the following requirement. For any dynamic customer i, the time when the assigned vehicle is scheduled to leave from its predecessor location is no earlier than the request deadline of the dynamic customer, v i . That is, all arrival and departure times are set based on the wait-first strategy, similarly as used in the Push Backward heuristic. When a vehicle finishes service at its current customer and becomes idle, if the next customer on the schedule is a dynamic customer that has yet to request service, the vehicle should wait at its current location and only be allowed to travel either when the dynamic customer becomes realized or when its request deadline has been reached, whichever comes first. The static VRP shares exactly the same customer and network information as the dynamic problem except that all of the customers are assumed to be known at the beginning of the planning horizon and must be scheduled. S takes the form of a set of vehicle routes each assigned to a single vehicle. S =fr k g wherek = 1;:::;K. Each router k specifies the sequence of customer visits as well as the exact arrival and departure times at each customer, which satisfies the corresponding time window constraints and the additional requirement discussed above. Definition 5. Let S be a grand schedule corresponding to the set of customersC, and let CC be a subset of customers. S(C) is called the partial schedule induced by the grand schedule S and the set C, which is constructed by removing all of the customer not in C from the grand solution S. In particular, each customer that is not in C is removed from the route, and its predecessor and successor scheduled on the same vehicle are connected with a direct link. For instance, S(AC) represents the partial schedule induced by the set of advance customers. 53 Givenafeasiblegrandschedule S andanysubsetofcustomersCC, itcanbeeasilyshownthat a feasible induced schedule S(C) is guaranteed to exist, based on the triangle inequality property of pairwise distances. It is also evident that such induced solutions are usually not unique. Besides, given the grand schedule S, for any timet2 [0;T max ], and any request order t , we use the notation S ( t (n)) to represent the partial schedule induced by the set of first n customers on the request order t . More specifically, S ( t (n)) is an equivalent notation used to denote the same induced solution as S(C), where C =f t (1);:::; t (n)g. Lemma 6. For any grand schedule S, any timet2 [0;T max ] and the corresponding set of customers who have requested service C(t), any integer n2 [1;jC(t)j], and any two request orders t and 0 t satisfying that the sets of customersf t (1);:::; t (n)g =f 0 t (1);:::; 0 t (n)g, we have S ( t (n)) = S 0 t (n) . Equivalently speaking, the induced partial schedule S ( t (n)) is independent of the request order among the customers it contains. Proof. The induced schedule S ( t (n)) is constructed by removing customers from the grand so- lution S rather than by inserting customers sequentially based on t . As a result, S ( t (n)) is only concerned with the set of customers that is removed (or otherwise remain), but not about the ordering of the customers specified by t . It then follows that S ( t (n)) and S 0 t (n) are exactly the same schedules. The following proposition states that given the set of customers who have requested service by time t, the induced partial schedule is independent from the request order among the customers within the set. Proposition 7. For any grand schedule S, any time t2 [0;T max ] and the corresponding set of customers who have requested service C(t), and any two request orders t and 0 t , we have S ( t ) = S 0 t = S (C(t)) (21) Proof. By Lemma 6, we have S ( t (n)) = S 0 t (n) for any n2 [1;jC(t)j]. Setting n =jC(t)j, we have that S ( t (n)) = S ( t (jC(t)j)) = S 0 t (jC(t)j) = S 0 t (n) (22) which proves the first equality. For the second equality, we note that by definition both schedule S 0 t and S (C(t)) are induced by the same set of customers, namely those customers that have 54 requestedservicebytimet. Inaddition, bothsolutionsareconstructedinthesamewaybyremoving customersnotinC(t)fromthegrandschedule S. Themembershipandorderingofeachcustomeron each vehicle route is preserved. It follows that S 0 t and S (C(t)) are exactly the same schedules. Thus we have completed the proof. We now define the cost functions used by HPOCS. Some cost functions are based on their counterparts in the POCS mechanism [23], such as coalition cost per alpha and shared cost. In the original POCS formulation, it is assumed that customers request service sequentially, and no two customerswillrequestserviceatthesametime. IntheDVRPwestudy, alloftheadvancecustomers request service at the same time. Thus we extend the definitions in POCS to accommodate both advance and dynamic customers. Definition 8. For any grand schedule S, any time t2 [0;T max ] and the corresponding set of customers who have requested service C(t), and any request order t , the totalcost S (C(t)) is the total travel cost of the induced partial solution S (C(t)). Equivalently, totalcost S ( t ) can be used to represent the same total cost since the underlying partial schedules are practically the same, as stated by Proposition 7. We define totalcost S (;) := 0. Definition 9. The advance cost per alpha valueacpa is the average cost per alpha value across all advance customers. It is calculated by dividing the total travel cost of the partial schedule induced by the set of advance customers by the sum of alpha values of all advance customers acpa = totalcost S (AC) P i2AC i = totalcost S (C(0)) P i2AC i (23) It is important to note that acpa is a constant value given the set of advance customersAC. Definition 10. For any grand schedule S, any time t2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any integer n 2 [1;jC(t)j], totalcost S ( t (n)) is the total operating cost required to serve the first n customers on request order t . Since C(0) =AC and C(0) C(t) for t 0, we must havejC(t)jjACj. The total cost function is defined differently for advance and dynamic customers. For the case of advance customers, let 1n jACj, so that t (n ) represents an advance customer. We define totalcost S ( t (n )) =acpa n X n=1 t(n) (24) 55 which states that the total cost of serving a group of advance customers is defined as the product of the advance cost per alpha value and the sum of the alpha values of all advance customers in the group. At n =jACj, t (n ) represents the last advance customer on request order t . We define totalcost S ( t (jACj)) =acpa jACj X n=1 t(n) (25) = totalcost S (AC) P i2AC i jACj X n=1 t(n) (26) =totalcost S (AC) (27) The second equality follows from the definition of acpa, and the third equality follows from the fact that P i2AC i = P jACj n=1 t(n) . Equation 27 states that the total cost of serving all advance customers as defined above equals to the total cost of the partial schedule induced by AC. The boundary condition is satisfied and the above definition is consistent with Definition 8. For the case of dynamic customers, assume thatjACj <jC(t)j. LetjACj < n jC(t)j, so that t (n ) represents a realized dynamic customer. Then totalcost S ( t (n )) is defined as the total travel cost of the induced partial solution corresponding to the firstn customers on schedule t . Similarly as in Definition 8, we define totalcost S ( t (0)) := 0. Definition 11. For any grand schedule S, any time t2 [0;T max ] and the corresponding set of customers who have requested service C(t), any request order t , any customer i2C(t), let n be the index order of the customer on request order t . Equivalently, t (n) =i for somen2 [1;jC(t)j]. mc ( t (n)) denotes the marginal cost of serving customer i under request order t and is defined as the increase in total cost due to its request. That is mc ( t (n)) :=totalcost S ( t (n)) totalcost S ( t (n 1)) (28) Since the total cost function is defined differently for advance and dynamic customers, the marginal cost is also defined differently. We now define the marginal costs under the special request order t . For the case of advance customers, let 1 n jACj, so that t (n ) represents an advance 56 customer. Based on equations 24 and 28, we define mc ( t (n )) =totalcost S ( t (n )) totalcost S ( t (n 1)) (29) =acpa n X n=1 t(n) acpa n 1 X n=1 t(n) (30) =acpa t(n ) (31) whichstatesthatthemarginalcostofanadvancecustomerequalstotheproductoftheadvancecost per alpha value and its alpha value. For the case of dynamic customers, assume thatjACj<jC(t)j. LetjACj<n jC(t)j, so that t (n ) represents a realized dynamic customer. The marginal cost of the customer is defined as the increase in total travel cost of the partial solutions induced by the corresponding sets of customers. That is mc ( t (n )) :=totalcost S ( t (n )) totalcost S ( t (n 1)) (32) We now define the coalition cost per alpha value, how HPOCS calculates the shared cost of each customer, and the concept of coalition. Definition 12. For any time t 2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any two integers n 1 ;n 2 2 [1;jC(t)j] with n 1 n 2 , the coalition cost per alpha value of customersf t (n 1 );:::; t (n 2 )g at time t under submit order t is ccpa t(n1;n2) := P n2 n=n1 mc ( t (n)) P n2 n=n1 t(n) (33) Definition 13. For any time t 2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any customer i2C(t), let n be the index order of the customer on request order t . Equivalently, t (n) =i for some 1njC(t)j. Then the shared cost of customer i at time t under request order t is defined as cost t ( t (n)) := t(n) min nn 0 jC(t)j max 1n 00 n 0 ccpa t(n 00 ;n 0 ) (34) Definition 14. For any time t 2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any two integers n 1 ;n 2 2 [1;jC(t)j] with 57 n 1 n 2 , a coalition (n 1 ;n 2 ) at time t is a group of customersf t (n 1 );:::; t (n 2 )g with cost t ( t (n)) t(n) = cost t ( t (n 1 )) t(n1) (35) for all order indices n 1 nn 2 and cost t ( t (n)) t(n) 6= cost t ( t (n 1 )) t(n1) (36) for both order indices with n =n 1 1 and n =n 2 + 1 and 1njC(t)j. Definition 14 suggests that the membership of a coalition is determined solely by the shared cost per alpha value of each customer. A sequence of customers who request service consecutively in time and have the same shared cost per alpha value are said to be in the same coalition. In terms of coalition formation, it is irrelevant whether a customer is an advance customer or a dynamic customer; a single coalition can consist of both advance and dynamic customers. Nor is it relevant whether the group of customers are assigned on the same vehicle or not. The following statements are concerned with the way coalitions form and evolve over time under the special request order t . Proposition 15. At any time t2 [0;T max ], under the special request order t , the coalition cost per alpha value of any coalition consisting solely of advance customers is a constant value. The value is fixed given the set of advance customers AC and is independent from the actual subset of advance customers in the coalition. Proof. For any grand schedule S, any timet2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any two integers n 1 ;n 2 2 [1;jC(t)j] withn 1 n 2 , suppose that bothn 1 andn 2 represent advance customers. That is,n 1 ;n 2 2 [1;jACj]. Then the coalition cost per alpha value of customersf t (n 1 );:::; t (n 2 )g at time t under submit 58 order t is ccpa t(n1;n2) = P n2 n=n1 mc ( t (n)) P n2 n=n1 t(n) (37) = P n2 n=n1 acpa t(n) P n2 n=n1 t(n) (38) = acpa P n2 n=n1 t(n) P n2 n=n1 t(n) (39) =acpa (40) The second equality follows from equation 31. Note that the coalition cost per alpha value equals to the advance cost per alpha value, which only depends on the set of advance customersAC and is independent of n 1 , n 2 , and even the request order t . Equivalently speaking, given the set of advance customers, the coalition cost per alpha value of any coalition formed solely by advance customers is the same. Thus we have completed the proof. Proposition 16. At time t = 0, under the special request order 0 , all advance customers form a single coalition. Proof. At time t = 0, for any customer i2AC, let n be the index order of the customer on the special request order 0 . Equivalently, 0 (n) = i for some 1 njACj. By Definition 13, the shared cost of customer i at time t = 0 under request order 0 is cost 0 ( 0 (n)) = t(n) min nn 0 jACj max 1n 00 n 0 ccpa t(n";n 0 ) (41) = t(n) min nn 0 jACj max 1n 00 n 0 acpa (42) = t(n) acpa (43) The second equality follows from the fact that both 0 (n 0 ) and 0 (n 00 ) represent advance customers and that the coalition cost per alpha value of any coalition consisting solely of advance customers is always equal toacpa (Proposition 15). The third equality follows since the term inside the mini- mization and maximization operator is a constant and independent from both operators. Equation 43 shows that the shared costs among advance customers at time t = 0 under the special request order 0 obey the proportional cost sharing rule. It then follows that the shared cost per alpha 59 values of any two advance customers 0 (n 1 ) and 0 (n 2 ) with n 1 ;n 2 2 [1;jACj] must be the same. cost 0 ( 0 (n 1 )) t(n1) = cost t ( t (n 2 )) t(n2) =acpa (44) which in turn proves that all advance customers form a single coalition at time t = 0 under the special request order 0 . Corollary17. For any timet2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any customer i2 C(t), let n be the index order of the customer on request order t . Equivalently, t (n) =i for some 1njC(t)j. Then cost t ( t (n)) t(n) = min nn 0 jC(t)j cost u t (n 0 ) ( t (n 0 )) t(n 0 ) (45) where u t(n 0 ) is the request time of customer t (n 0 ) and cost u t (n 0 ) ( t (n 0 )) represents the initial quote this customer receives at the time of its request. Proof. Consider any time t2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any customer i2 C(t), let n be the index order of the customer on request order t . Equivalently, t (n) =i for some 1njC(t)j. Then we have cost t ( t (n)) t(n) = min nn 0 jC(t)j max 1n 00 n 0 ccpa t(n";n 0 ) (46) = min nn 0 jC(t)j min n 0 mn 0 max 1n 00 m ccpa t(n";m) (47) = min nn 0 jC(t)j cost u t (n 0 ) ( t (n 0 )) t(n 0 ) (48) where the first and third equalities both follow from Definition 13. Lemma 18. Under the special request order t , once a group of customers forms a coalition at timet, they will remain in the same coalition until the end of the planning horizon. More customers may join the same coalition over time, but the original group of customers will never depart the coalition. Proof. For any time t 1 2 [0;T max ) and the corresponding set of customers who have requested service C(t 1 ), let (n 1 ;n 2 ) be a coalition at time t 1 under the special request order t1 , where 1n 1 n 2 jC(t 1 )j. Let t 2 2 (t 1 ;T max ] be any later point of time in the planning horizon. Now 60 consider any customer with the order index n 1 nn 2 under the special request order t1 . Then min nn 0 jC(t1)j cost u t 1 (n 0 ) ( t1 (n 0 )) t 1 (n 0 ) = cost t1 ( t1 (n)) t 1 (n) (49) = cost t1 ( t1 (n 1 )) t 1 (n1) (50) = min n1n 0 jC(t1)j cost u t 1 (n 0 ) ( t1 (n 0 )) t 1 (n 0 ) (51) where the first and third equalities both follow from Corollary 17 and the second equality follows from Definition 14. In addition, sincet 1 t 2 T max , request order t2 is an extension of the order t1 . Thus t2 (m) = t1 (m) for all 1mjC(t 1 )j by definition. Equation 51 can be rewritten as follows min nn 0 jC(t1)j cost u t 2 (n 0 ) ( t2 (n 0 )) t 2 (n 0 ) = min n1n 0 jC(t1)j cost u t 2 (n 0 ) ( t2 (n 0 )) t 2 (n 0 ) (52) Now consider adding the following set of terms to the minimization operators on both sides of equation 51. ( cost u t 2 (j) ( t2 (j)) t 2 (j) ) jC(t1)j<jjC(t2)j (53) Since the same set of terms are added to both minimization operators, the equality is preserved. Equation 51 can be rewritten as follows min nn 0 jC(t2)j cost u t 2 (n 0 ) ( t2 (n 0 )) t 2 (n 0 ) = min n1n 0 jC(t2)j cost u t 2 (n 0 ) ( t2 (n 0 )) t 2 (n 0 ) (54) which by Corollary 17 is equivalent to cost t2 ( t2 (n)) t 2 (n) = cost t2 ( t2 (n 1 )) t 2 (n1) (55) We have established that all of the customers in the original coalition at time t 1 have the same shared cost per alpha value at any future time t 2 . By the definition of coalition, all of these customers must be in the same coalition at time t 2 . Thus we have completed the proof. As a corollary to Proposition 16, we prove that under the special request order t , the set of advance customers will remain in the same coalition throughout the planning horizon. Corollary 19. At any time t2 [0;T max ], under the special request order t , all advance customers are in the same coalition. 61 Proof. At time t = 0, the corollary holds trivially based on Proposition 16. At any time t > 0, given that all of the advance customers are in the same coalition, by Lemma 18, they will remain in the same coalition until the end of the planning horizon. Thus we have completed the proof. We are now well equipped to present the HPOCS mechanism. For a realization of the dynamic vehicle routing problem, the shared costs are calculated as follows. Initialization. t = 0. 1. Formulate a static vehicle routing problem corresponding to the set of customersC =AC[DC and construct the grand solution S. 2. Construct the special request order 0 consisting of all advance customers. Any ordering among advance customers can be used. Quoting advance customers. All advance customers receive their initial quotes at timet = 0. 1. Calculate the advance cost per alpha value acpa based on Definition 9. 2. Calculate the total cost, marginal cost, coalition cost per alpha, and the shared cost of each advance customer under the special request order 0 by Definition 10, equation 31, Definition 12, and equation 43. 3. For each advance customer i2 AC, suppose that n is its order index on request order 0 . Provide cost 0 ( 0 (n)) as the initial quote for customer i. Quotingdynamiccustomers. Adynamiccustomerireceivesitsinitialquotewhenitrequests service at time t =u i . 1. Append customer i to the end of the special request order ui1 to form the new special request order ui . Recall thatjC(t)j represents the total number of customers who have requested service. By definition, ui (jC(u i )j) =i. 2. Construct the partial schedule induced by C(u i ) and the grand schedule S. 3. Calculate and update the total costs, marginal costs, coalition cost per alpha values, and the shared costs of all existing customers on request order ui by Definition 10, equation 32, Definition 12, and Definition 13. 4. Provide cost ui ( ui (jC(u i )j)) as the initial quote for customer i. 62 Final shared costs. t =T max . 1. At time t = T max , all of the randomness in system has been realized. The special request order Tmax consists of all advance and realized dynamic customers, namely the set C(T max ). 2. For 1njC(T max )j, the shared cost of customer Tmax (n) at timeT max under the special request order Tmax is cost Tmax ( Tmax (n)). This is also the final cost of service for customer Tmax (n). 5.2.2 HPOCS Example We now use an example to illustrate the HPOCS mechanism. Consider the dynamic vehicle routing problem based on the network shown in Figure 8 and the set of customers shown in Table 6. There are six customers and one depot located along a line segment. The distance between adjacent locations are as labeled. Customers A, B, and C are advance customers, and the rest are dynamic customers. The demand of all customers are assumed to be 1, so that the alpha value of each customer equals to the distance from the depot to the customer. For convenience, we set the request deadline of each dynamic customer to be equal to the beginning of its service time window. The length of the service time of all customers are all equal 1 and T max = 50. We consider the realization of the DVRP where customers D and F request service at time 9 and 20 respectively, and customer E does not request service. It is assumed that all customers will accept any initial quote provided to them. Equivalently, the willingness-to-pay value of all customers are set to be equal to infinity. This assumption allows all of the customers that request service to stay in the system. Figure 8: Example V: Network Customer Demand Alpha Deadline Time Window Service Time Request Time A 1 4 [0; 10] 1 0 B 1 5 [5; 10] 1 0 C 1 7 [25; 30] 1 0 D 1 6 10 [10; 25] 1 9 E 1 3 25 [25; 35] 1 F 1 2 30 [30; 40] 1 20 Table 6: Example V: Customer information 63 We solve the cost allocation problem associated with this realization of the DVRP in two cases. In the first case, we assume that only one vehicle is available, while in the second case, we assume that two vehicles are available. Single-vehicle case. Initialization. All of the customers A through F are used to formulate a static VRP. Assuming that only one vehicle is available, the grand schedule S can take the form r 1 =Depot[; 0]A[4; 5]B[6; 10]D[21; 24]C[25; 26]E[30; 31]F [36; 37]Depot[39;] (56) where the two numbers in the brackets represent the arrival and departure times at each location. C(0) =AC =fA;B;Cg. Without loss of generality, we let the special request order 0 take the following form. 0 =ABC (57) Quoting advance customers. We first construct the partial schedule induced by the set AC and the grand schedule S as follows S (AC) :r 1 =Depot[; 0]A[4; 5]B[6; 13]C[25; 26]Depot[33;] (58) Note that S (AC) is not unique and any feasible schedule can be used. Then we calculate the acpa value for advance customers. acpa = totalcost S (AC) P i2AC i (59) = 4 + 1 + 12 + 7 4 + 5 + 7 (60) = 1:5 (61) The total cost, marginal cost, coalition cost per alpha, and the shared cost of each advance customer under the special request order 0 are calculated. Table7showsthetotalandmarginalcostvalues. Forexample, thetotalcostofservingcustomer 64 A is calculated as totalcost S ( 0 (1)) =acpa 1 X n=1 t(n) (62) =aspa A (63) = 1:5 4 (64) = 6 (65) and the corresponding marginal cost is calculated as mc ( 0 (1)) =totalcost S ( 0 (1)) totalcost S ( t (0)) (66) =totalcost S ( 0 (1)) totalcost S (;) (67) = 6 0 (68) = 6 (69) Since customerA is an advance customer, the total cost after its request does not necessarily equal to the total travel cost of the partial solution induced by the set of customers that have requested service. Nevertheless, the total cost value defined on the entire set of advance customers AC is always equal to the total travel cost of the partial solution induced by the set AC, as shown in Definition 10. In this example, we have totalcost S ( t (jACj)) =acpa jACj X n=1 t(n) = 3 2 (4 + 5 + 7) = 24 =totalcost S (AC) (70) Time Request Total Cost Marginal Cost 0 A 6:0 6:0 0 B 13:5 7:5 0 C 24:0 10:5 9 D 24:0 0:0 25 F 28:0 4:0 Table 7: Total and marginal costs with one vehicle Table 8 summarizes the coalition cost per alpha values for each possible coalition formation. The row label represents the first customer in a coalition while the column label represents the last customer in the coalition. Based on the ccpa values, Table 9 shows the formation of coalitions 65 among the customers. The shared costs per alpha scpa of each customer are calculated based on Definition 13 and customers who have the same scpa value are said to be in the same coalition. Last but not least, the HPOCS shared costs are calculated by multiplying the scpa value by the alpha value of each customer. The third row of Table 9 shows the initial quotes provided to advance customers at time t = 0. Time Start of Coalition End of Coalition A B C D F 0 A 1:5 1:5 1:5 1:1 1:2 0 B 1:5 1:5 0:9 1:0 0 C 1:5 1:1 1:2 9 D 0:0 0:5 25 F 2:0 Table 8: Coalition cost per alpha values with one vehicle Time Coalitions Shared Costs per Alpha HPOCS Shared Costs A B C D F A B C D F 0 (A) 1:5 6:0 0 (A, B) 1:5 1:5 6:0 7:5 0 (A, B, C) 1:5 1:5 1:5 6:0 7:5 10:5 9 (A, B, C, D) 1:1 1:1 1:1 1:1 4:4 5:5 7:6 6:6 25 (A, B, C, D) (F) 1:1 1:1 1:1 1:1 2:0 4:4 5:5 7:6 6:6 4:0 50 (A, B, C, D) (F) 1:1 1:1 1:1 1:1 2:0 4:4 5:5 7:6 6:6 4:0 Table 9: Coalition formation, scpa, and HPOCS shared costs with one vehicle Quoting dynamic customers. A dynamic customer i receives its initial quote at time t =u i , when it requests service. At time t = 9, customer D requests service and is appended to the end of the special request order. 9 =ABCD. C(9) =fA;B;C;Dg. The partial schedule induced by C(9) and the grand schedule S is S (C(9)) :r 1 =Depot[; 0]A[4; 5]B[6; 10]D[21; 24]C[25; 26]Depot[33;] (71) The total cost, marginal cost, coalition cost per alpha values, and the shared costs of all customers at time t = 9 under request order 9 are calculated. At time t = 20, customer F requests service and is appended to the end of the special request order. 20 =ABCDF. C(20) =fA;B;C;D;Fg. The partial schedule induced byC(20) 66 and the grand schedule S is S (C(20)) :r 1 =Depot[; 0]A[4; 5]B[6; 10]D[21; 24]C[25; 26]F [35; 36]Depot[38;] (72) The total cost, marginal cost, coalition cost per alpha values, and the shared costs of all customers at time t = 20 under request order 20 are calculated. Final shared costs. At timet =T max = 50, all of the randomness in the problem has been realized. Since the shared costs only change when a dynamic customer requests service and time t = 20 was the last time a dynamic customer requested service, the final shared cost of each customer equals to its shared cost at time t = 20. Two-vehicle case. Initialization. All of the customers A through F are used to formulate a static VRP. Assuming that two vehicles are available, the grand schedule S 0 can take the form r 0 1 =Depot[; 0]A[4; 5]B[6; 30]F [33; 34]Depot[36;] (73) r 0 2 =Depot[; 10]D[16; 24]C[25; 26]E[30; 31]Depot[34;] (74) C(0) =AC =fA;B;Cg. Without loss of generality, we let the special request order 0 0 take the following form. 0 0 =CBA (75) Quoting advance customers. WefirstconstructthepartialscheduleinducedbythesetACandthegrandschedule S 0 . S 0 (AC) can take the form r 0 1 =Depot[; 0]A[4; 5]B[6; 30]Depot[35;] (76) r 0 2 =Depot[; 18]C[25; 26]Depot[33;] (77) Similarly as in the single vehicle case, S 0 (AC) is not unique and any feasible schedule can be used. 67 Now we calculate the advance cost per alpha value for advance customers. acpa 0 = totalcost S 0 (AC) P i2AC i (78) = 4 + 1 + 5 + 7 + 7 4 + 5 + 7 (79) = 1:5 (80) The total cost, marginal cost, coalition cost per alpha, and the shared cost of each advance customer under the special request order 0 0 are calculated. Table 10 shows the total and marginal costs. Similarly as in the single-vehicle case, the total cost value for a subset of advance customers are not necessarily equal to the total travel cost of the corresponding induced partial solution. Yet, the total cost value defined on the entire set of advance customersAC is always equal to the total travel cost of the partial solution induced by the setAC. Time Request Total Cost Marginal Cost 0 C 10:5 10:5 0 B 18:0 7:5 0 A 24:0 6:0 9 D 24:0 0:0 25 F 24:0 0:0 Table 10: Total and marginal costs with two vehicles Table 11 summarizes the coalition cost per alpha values for each possible coalition formation. The row label represents the first customer in a coalition while the column label represents the last customer in the coalition. Based on the coalition cost per alpha values, Table 12 shows the formation of coalitions among customers. The shared costs per alpha scpa of each customer are calculated based on Definition 13 and customers who have the same scpa value are said to be in the same coalition. Last but not least, the HPOCS shared costs are calculated by multiplying the scpa value by the alpha value of each customer. The third row of Table 12 shows the initial quotes provided to the advance customers at time t = 0. Quoting dynamic customers. A dynamic customer i receives its initial quote at time t =u i , when it requests service. At time t = 9, customer D requests service and is appended to the end of the special request order. 0 9 =CBAD. C(9) =fA;B;C;Dg. The partial schedule induced by C(9) and the 68 Time Start of Coalition End of Coalition C B A D F 0 C 1:5 1:5 1:5 1:1 1:0 0 B 1:5 1:5 0:9 0:8 0 A 1:5 0:6 0:5 9 D 0:0 0:0 25 F 0:0 Table 11: Coalition cost per alpha values with two vehicles Time Coalitions Shared Costs per Alpha HPOCS Shared Costs C B A D F C B A D F 0 (C) 1:5 10:5 0 (C, B) 1:5 1:5 10:5 7:5 0 (C, B, A) 1:5 1:5 1:5 10:5 7:5 6:0 9 (C, B, A, D) 1:1 1:1 1:1 1:1 7:7 5:5 4:4 6:6 25 (C, B, A, D, F) 1:0 1:0 1:0 1:0 1:0 7:0 5:0 4:0 6:0 2:0 50 (C, B, A, D, F) 1:0 1:0 1:0 1:0 1:0 7:0 5:0 4:0 6:0 2:0 Table 12: Coalition formation, scpa, and HPOCS shared costs with two vehicles grand schedule S 0 is r 0 1 =Depot[; 0]A[4; 5]B[6; 30]Depot[35;] (81) r 0 2 =Depot[; 10]D[16; 24]C[25; 26]Depot[33;] (82) The total cost, marginal cost, coalition cost per alpha values, and the shared costs of all customers at time t = 9 under request order 0 9 are calculated. At time t = 20, customer F requests service and is appended to the end of the special request order. 0 20 =CBADF. C(20) =fA;B;C;D;Fg. The partial schedule induced byC(20) and the grand schedule S 0 is r 0 1 =Depot[; 0]A[4; 5]B[6; 30]F [33; 34]Depot[36;] (83) r 0 2 =Depot[; 10]D[16; 24]C[25; 26]Depot[33;] (84) The total cost, marginal cost, coalition cost per alpha values, and the shared costs of all customers at time t = 20 under request order 0 20 are calculated. Final shared costs. At time t = T max = 50, all of the randomness in the problem has been realized. Similarly as in the single-vehicle case, since that shared costs only change when a dynamic customer requests 69 service and time t = 20 was the last time a dynamic customer requested service, the final shared cost of each customer equals to its shared cost at time t = 20. In this example, customers are assigned across two vehicles but all of the customers end up forming a single coalition. This observation confirms the claim that coalitions are formed based on the shared cost per alpha values and the proximity in request times of the customers, rather than on their vehicle assignments. 5.2.3 Analysis of Properties The HPOCS mechanism defines a way to allocate the total travel cost to each customer in the dynamic vehicle routing problem. By definition, this mechanism follows the same framework as the POCS mechanism, with the exception that the total cost function is defined differently. Given that the original POCS mechanism satisfies all of the desirable properties discussed in Section 5.1.3, it follows that the HPOCS mechanism also possess these properties, if it can be shown that the new total cost function satisfies the same assumptions as made by the POCS framework. The POCS framework makes two assumptions of the total cost function. First, the total cost is non-decreasing over time. Second, the total cost at any time is independent of the request order among the group of customers that have requested service. These assumptions are, for example, satisfied for the minimal operating cost, which is the cost function used in the original POCS paper. However, optimality is not required in order for all of the desirable properties to be satisfied, as long as the cost function follows the two assumptions. Proposition20. For any grand schedule S, any timet2 [0;T max ] and the corresponding set of cus- tomers who have requested service C(t), the special request order t , and any integer n2 [1;jC(t)j], the HPOCS total cost function totalcost S ( t (n)) is nondecreasing in n and is independent of the request order of customersf t (1);:::; t (n)g. That is, for any request order t satisfying f t (1);:::; t (n)g =f t (1);:::; t (n)g, totalcost S ( t (n)) =totalcost S ( t (n)) . Proof. We first prove that totalcost S ( t (n)) is nondecreasing in n. Without loss of generality, let n 1 be any order index satisfying 1n 1 <jC(t)j and let n 2 =n 1 + 1. By definition, the partial schedule S ( t (n 1 )) is constructed by removing customer t (n 2 ) from the schedule S ( t (n 2 )). Let i and i + represent the predecessor and successor locations of customer t (n 2 ) in the schedule 70 S ( t (n 2 )). Then we have totalcost S ( t (n 1 )) =totalcost S ( t (n 2 )) c i t(n2) c t(n2)i + +c i i + (85) Based on the triangle inequality property of pairwise distances, we have c i t(n2) +c t(n2)i +c i i + 0 (86) Thus equation 85 implies that totalcost S ( t (n 1 )) totalcost S ( t (n 2 )) (87) We have proved that totalcost S ( t (n)) is nondecreasing in n. We now prove the total cost is independent of the request order of customersf t (1);:::; t (n)g. Let t be any request order satisfyingf t (1);:::; t (n)g =f t (1);:::; t (n)g. That is to say, the firstn positions of t and of t consist of the same group of customers. By Lemma 6, S ( t (n)) and S ( t (n)) represent the same induced partial schedule. It then follows that totalcost S ( t (n)) =totalcost S ( t (n)) We have now proved that the total cost function used in the HPOCS mechanism satisfies both of thetwoassumptionsrequiredbythePOCSframework. WhenimplementingtheHPOCSmechanism to solve the cost allocation problem associated with a DVRP, one must specify the way vehicles are routed in real time. In order to make the HPOCS mechanism satisfy all of the desirable properties, we need to define a dynamic vehicle routing strategy that can guarantee that the actual total travel cost incurred by the vehicles equals to the total cost calculated by the HPOCS mechanism. The following dynamic routing strategy satisfies this requirement. 1. Vehicles are routed based on the grand schedule S. 2. No re-optimization is done during the planning horizon. 3. At the time when a vehicle is scheduled to depart from its current location and travel to a dy- namic customer, if the customer has yet to request service, it is skipped and the vehicle travels directly from the predecessor location to the successor location of the dynamic customer. Recall that by Definition 4, the grand schedule S requires that the time when a vehicle starts to travel to a dynamic customer is no earlier than the request deadline of the customer. If the customer 71 has yet to request service by this time, it is certain that the customer will not request service at all. Thus if the customer is removed from the current schedule, it will not request service at a later time. Equivalently speaking, insertion of new customers is never needed under this routing strategy. The only diversion of vehicles happen when an unrealized dynamic customer is skipped, and no traveling is wasted due to the absence of dynamic customers. As a result, the total travel cost incurred by the vehicles is always equal to the total cost of the induced partial solution as calculated in Definition 10. Thus, we can conclude that under the dynamic routing strategy defined above, the HPOCS mechanism satisfies all of the desirable properties discussed in Section 5.1.3, namely the online fairness, budget balance, immediate response, individual rationality, and ex-post incentive compat- ibility properties. The proofs follow directly from the proofs presented in the original POCS paper [23]. 5.2.4 Experimental Results So far we have presented the HPOCS mechanism as a theoretically well-defined model for allocating the total travel cost in a dynamic vehicle routing problem. We now analyze simulation results to study the effectiveness of the mechanism in terms of providing desirable quotes to both the advance and dynamic customers. Simulations are performed on the same modified Solomon RC201 instance for the vehicle routing problem with time windows (VRPTW) [71] as used in the experiments in Chapter 4. The instance specifies all of the deterministic information on customer locations, demands, service time windows, and fleet capacity. There are 100 customers,N = 100. The length of the planning horizon is 960 time steps, T max = 960. A dynamic vehicle routing instance is constructed by specifying two parameters, namely the percentage of advance customers - ACPercent, and the probability that a dynamic customer requests service - RequestProb. These two parameters jointly determine the mixture between the number of advance customers and the expected number of realized dynamic customers in the problem. We assume that all dynamic customers have the same probability of requesting service. q i =RequestProb;8i. We use a triangular distribution function to model f i (t), the conditional probability density function of request time u i . In particular, the minimum value of the distribution is set to 0, and the maximum value of the distribution is set to be equal to the request deadline, v i . The mode of the distribution is set to 3 4 v i . By this construction, dynamic 72 customers will always request service between the beginning of the planning horizon and their request deadlines. Within this time frame, they are more likely to make the request close to the time they need service. A dynamic vehicle routing instance constructed as above contains all deterministic and stochas- tic information of the problem. A realization of the problem specifies the actual set of advance customers, a group of dynamic customers who are to make requests, and the precise request times of these customers. A realization reflects the operation environment faced by decision makers. For each dynamic instance, we simulate 50 realizations and report the average results. When solving the corresponding cost allocation problem, the HPOCS mechanism calculates the initialquoteofacustomeratthetimeitrequestsservice. Itisassumedthatallcustomerswillaccept any initial quote provided to them. Equivalently, the willingness-to-pay value of all customers are set to be equal to infinity. This assumption allows all of the customers that request service to stay in the system. The shared cost gets updated each time when a new dynamic customer requests service because existing customers can choose to form a coalition with the new customer if it can lower their shared costs. It is worth exploring how the sequence of the shared costs changes over time and how the overall pattern may be different for different customers. Figure 9 illustrates a graph of a series of HPOCS shared costs of selected customers in the base case demand scenario, where ACPercent = 0:25 and RequestProb = 0:75. This setup reflects an operating environment with a relatively high proportion of dynamic customers. The number of advance customers is 100 0:25 = 25 and the expected number of realized dynamic customers is 100 (1 0:25) 0:75t 57. The horizontal axis represents the request order. In this scenario, the first 25 positions of the request order correspond to advance customers. The vertical axis represents the shared cost per alpha value. Each data point on the graph represents the shared cost per alpha value of a selected customer at the time when the dynamic customer whose order index corresponds to the horizontal axis value requests service. Each trajectory on the graph represents the series of shared cost per alpha values of a selected customer. The first data point on each trajectory shows the initial quote per alpha value of the customer. For example, the first trajectory shows the series of shared cost per alpha values of the first advance customer on the special request order. Since all advance customers have the same shared cost per alpha value at any time throughout the planning horizon, it is sufficient to use the first advance customer to represent the entire set. The following four series correspond to four dynamic 73 customers. “Dynamic 1” corresponds to the first dynamic customer to request service. “Dynamic 2” represents the dynamic customer whose request position falls around the first 3-quantiles of the total expected number of realized dynamic customers. In this case, since 57 1 3 t 19, it corresponds roughly to the 19 th dynamic customer to request service, and equivalently the 44 th customer to request service when counting advance customers. Similarly, “Dynamic 3” represents the dynamic customer whose request position falls around the second 3-quantiles of the total expected number of realized dynamic customers. The last series represents a dynamic customer positioned near the end of the request order. Figure 9: Trajectories of the HPOCS shared cost per alpha values in base case It is worth pointing out that the request order shown by the horizontal axis is not equivalent to time. For instance, the first 25 units of the horizontal axis all correspond to time t = 0, because all of the advance customer requests are known at the same time. Each subsequent value on the horizontal axis corresponds to the actual request order. Thus the horizontal axis is not drawn exactly to the scale of time, but nevertheless represents the evolution of time as more dynamic customers request service. It is evident from the graph that the shared cost of any customer is nondecreasing over the request order, which is a direct outcome of the way shared costs are calculated in the HPOCS mechanism. In particular, each time when a new customer requests service, existing customers will have the opportunity to form a coalition with the new customer. They will choose to form a new 74 Figure 10: The HPOCS initial quotes and final shared cost values in base case coalition if and only if their shared cost per alpha values can be lowered by doing so. Otherwise, existing customers will choose to stay in their current coalitions. Figure 10 illustrates a graph of the HPOCS initial quotes and the final shared costs of all customers in the base case demand scenario. Recall that the initial quote is the first shared cost value a customer receives and is the value that the customer has to use to make the decision of whether to accept the service or not. The final shared cost is the price that the customer actually pays for the service. These two values are the two most important shared cost values. All of the values shown on the graph are on the per-alpha basis. The horizontal axis represents the request order. In this scenario, the first 25 positions of the request order correspond to advance customers. The vertical axis represents the shared cost per alpha value. The upper series contains the initial quotes of all customers and the lower series contains the corresponding final shared costs. For each customer, its initial quote is always greater than or equal to its final shared cost, as guaranteed by the immediate response and individual rationality properties. 1. We first study the initial quotes provided to all customers. By Proposition 15, the initial quote per alpha value at time t = 0 of all advance customers are the same, and are equal to the advance cost per alpha acpa value. This is reflected by the level segment on the initial quote curve. For the realized dynamic customers, their initial quotes start higher than that of the advance customers, but drop very quickly as more dynamic customers become realized. Recall 75 thattheHPOCSmechanismcalculatesthetotalcostsbasedonthetotaltravelcostsofinduced partial solutions. All of these partial solutions are induced by a single grand solution that is constructed at time t = 0 and is fixed throughout the planning horizon. As more customers request service, the grand schedule is gradually recovered and the synergy among the group of customers who have requested service increases. The marginal cost decreases, which makes it more attractive and likely for existing customers to form a new coalition with the customer who just requested. This in turn causes the initial quote offered to the dynamic customer that just became realized to decrease over time. This phenomenon can be undesirable since higher initial quotes offered to early request dynamic customers may turn them away if a finite willingness-to-pay threshold is implemented. If those early request dynamic customers decline service, the similar high level initial quotes will be offered to subsequent dynamic customers who request service, and the same problem remains. For the same reason, it is also undesirable that the initial quotes offer to many realized dynamic customers drop below the initial quote of advance customers. 2. Wethenstudythefinalsharedcostsofallcustomers. Itcanbeclearlyseenfromthegraphthat the final shared cost curve nearly represents a flat line. The final shared cost per alpha values across all advance and realized dynamic customers tend to be the same, which suggests that all of the customers tend to form a single coalition. The synergy among customers becomes so high that existing customers almost always can lower their shared costs by forming a new coalition with the dynamic customer that just became realized. This is clearly undesirable sincecustomersthatrequestearlydonothaveanyadvantageovercustomersthatrequestlate. The lack of differentiation in the final shared costs fails to encourage customers to request service early, at their truthful request time. Given the discussion that the initial quotes offered to late request customers also tend to be lower than those offered to early request customers, customers may even be persuaded to request later than their truthful request times. It is important to note that neither of the two observations presented above suggests that any of the properties of the HPOCS mechanism is violated. For example, as discussed in Section 5.1.3, the online fairness property is only concerned with the final shared costs, but not the initial quotes. Evenwhenthispropertyissatisfied, itcanhappenthatacustomerwhorequestsservicelatereceives a lower initial quote per alpha value than a prior customer. Nevertheless, both observations suggest that the theoretically sound HPOCS mechanism can suffer from counterproductive performance 76 issues. In particular, both observations imply that the mechanism can be taken advantage of by customers who deliberately delay its request in order to acquire a lower initial quote while paying for practically the same final price by the end of the planning horizon. Customers are not provided with enough incentives to request early and truthfully. Agoodmechanismshouldbeabletodemonstratethatitismoreadvantageousforeachcustomer to make its service request known early as an advance customer than to request late as an dynamic customer. WeseektoimprovetheperformanceoftheHPOCSmechanismbyincorporatingheuristic methods in calculating the shared costs. Modifications of the baseline model are presented in the following sections. 5.3 Hybrid Proportional Online Cost Sharing with Discount (HPOCSD) In this section, we introduce a modification of the HPOCS mechanism that aims to incentivize cus- tomers to request service early and truthfully. Generally speaking, this can be achieved by offering discounts for advance customers to make it less costly to request early, and applying overcharge for dynamic customers to make it more costly to request late. The actual charge to each customer equals to its HPOCS shared cost times a cost modifier, which can either reflect a discount or an overcharge, depending on whether the customer is an advance customer or an dynamic customer. The same discount factor should be used for all advance customers in order to maintain the online fairness property. However, the overcharge factor can be different for different dynamic customers, and may be dependent on their actual request times. We design and study multiple heuristic meth- ods for calculating the suitable overcharge factor for realized dynamic customers, based on their request orders and the discount factor for advance customers. In the following sections, we formally define the Hybrid Proportional Online Cost Sharing with Discount (HPOCSD) mechanism, study its properties, and analyze experimental results under various demand scenarios. 5.3.1 Mechanism Design In the HPOCS mechanism, the shared costs are the actual price values provided to the customers. The idea behind HPOCSD is to use the modified charges to substitute for the HPOCS shared costs and offer the modified charges to the customers. All of the calculations of the total costs, marginal costs, coalition cost per alpha values, shared costs, and the definition of coalitions remain the same as defined by the HPOCS mechanism. Additional notations and definitions are as follows. 77 the discount factor i the cost modifier of customer i g(n;) the overcharge function We require that 0< 1 and that g(n;) 1;8n;. Definition 21. For any time t 2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any customer i2C(t), let n be the index order of the customer on request order t . Equivalently, t (n) =i for some 1njC(t)j. Then the cost modifier of customer i under request order t is defined as t(n) = 8 > > < > > : (1) for 1njACj (1 +g(n;)) forjACj<njC(t)j (88) The cost modifier for all advance customers is the same, and is equal 1. The cost modifier for a dynamic customer depends on the value of the functiong(n;), which returns the overcharge factor based on the request index of the customer and the discount factor used for advance customers. Note that for each customer, its cost modifier is fixed and independent of time, meaning that the same factor will be applied to the sequence of shared costs of the customer. Definition 22. For any time t 2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any customer i2C(t), let n be the index order of the customer on request order t . Equivalently, t (n) =i for some 1njC(t)j. Then the charge of customer i at time t under request order t is defined as charge t ( t (n)) =cost t ( t (n)) t(n) (89) where cost t ( t (n)) denotes the HPOCS shared cost as defined in Definition 13. charge t ( t (n)) is the value that is provided to the customer. We define the HPOCSD mechanism by using the same structure as the HPOCS mechanism presented in Section 5.2.1, except that all cost t ( t (n)) values are replaced with charge t ( t (n)) values. The same dynamic routing strategy presented in Section 5.2.3 is used for scheduling and routing vehicles. 78 5.3.2 Analysis of Properties We now discuss the properties of the HPOCSD mechanism. Proposition 23. The HPOCSD mechanism satisfies the online fairness, immediate response, in- dividual rationality, and ex-post incentive compatibility properties, provided that the overcharge function g(n;) is nondecreasing in n. Proof. We first prove the online fairness property. For any timet2 [0;T max ] and the corresponding set of customers who have requested service C(t), the special request order t , and any customer i2C(t), let n 1 and n 2 be two indices representing advance customers, 1n 1 n 2 jACj. Since the HPOCS mechanism satisfies the online fairness property, we have cost t ( t (n 1 )) t(n1) = cost t ( t (n 2 )) t(n2) (90) Since both n 1 and n 2 are advance customers, their cost modifiers are the same and are equal to . The equation above then implies that charge t ( t (n 1 )) t(n1) = cost t ( t (n 1 )) (1) t(n1) = cost t ( t (n 2 )) (1) t(n2) = charge t ( t (n 2 )) t(n2) (91) which proves the online fairness property for advance customers. Now suppose n 1 and n 2 be two indices representing dynamic customers,jACj < n 1 n 2 jC(t)j. Since the HPOCS mechanism satisfies the online fairness property, we have cost t ( t (n 1 )) t(n1) cost t ( t (n 2 )) t(n2) (92) Given that both n 1 andn 2 are dynamic customers and that function g(n;) is nondecreasing in n, we have 1g(n 1 ;)g(n 2 ;). It then follows that charge t ( t (n 1 )) t(n1) = cost t ( t (n 1 )) (1 +g(n 1 ;)) t(n1) cost t ( t (n)) 1 +g(n 2 ;)) t(n2) = charge t ( t (n 2 )) t(n2) (93) We have not proved that the online fairness property is satisfied for both advance and realized dynamic customers. Similarly, given that for each customer i, the cost modifier i is fixed and independent of time, and that the overcharge function g(n;) is nondecreasing in n, it can be proved that the 79 HPOCSD mechanism inherits the immediate response, individual rationality, and ex-post incentive compatibility properties from the HPOCS mechanism. Proposition 24. The HPOCSD mechanism is budget balanced. That is to say, at any time during the planning horizon, the sum of the charges for all customers that have become realized recovers at least 100 (1) percent of the total travel cost of the corresponding induced partial schedule. Proof. For any grand schedule S, at time t = 0, C(0) =AC. We have jACj X n=1 charge 0 ( 0 (n)) = jACj X n=1 cost 0 ( 0 (n)) (1) (94) = (1)totalcost S ( 0 (jACj)) (95) = (1)totalcost S (C(0)) (96) Which means that at timet = 0, the sum of the charges for advance customers using the HPOCSD mechanism recovers exactly 100 (1) percent of the total travel cost of the partial solution induced by S and the setAC. Now consider any time during the planning horizon, 1<tT max . We have jC(t)j X n=1 charge t ( t (n)) = jACj X n=1 cost t ( t (n)) (1) + jC(t)j X n=jACj+1 cost t ( t (n)) (1 +g(n;)) (97) jACj X n=1 cost t ( t (n)) (1) + jC(t)j X n=jACj+1 cost t ( t (n)) (1) (98) = (1) jC(t)j X n=1 cost t ( t (n)) (99) = (1)totalcost S ( t (jC(t)j)) (100) = (1)totalcost S (C(t)) (101) where the inequality follows from the fact that the cost modifier of any dynamic customer is always greater than or equal to the cost modifier of any advance customer,g(n;) (1);8n;. Equation 101 implies that the sum of the charges for all customers who have requested service recovers at least 100 (1) percent of the total travel cost of the corresponding induced partial solution. Thus we can conclude that the HPOCSD mechanism is budget balanced. 80 In addition, we note that the equality in equation 98 is achieved if and only if 1 +g(n;) = 1;8n;. This can only be true if g(n;) = = 0, which implies that practically no discount or overcharge is applied at all. Without the discounts and overcharges, the HPOCSD mechanism reduces to the HPOCS mechanism. In the HPOCSD setup with strictly positive discounts and overcharges, equation 98 will always imply an inequality relationship. It then follows that jC(t)j X n=1 charge t ( t (n))> (1)totalcost S (C(t)) (102) at any time 1<tT max . This means that the worst-case budget deficit scenario always happens at time t = 0, when there is no realized dynamic customer and the sum of the HPOCSD charges recover exactly 100 (1) percent of the total travel cost. We have shown that the HPOCSD mechanism is approximately budget balanced. The loss of the budget balance property is the sacrifice that has to be made in order to encourage customers to request truthfully and to prevent the mechanism to be taken advantage of by customers who deliberately delay their request times. Proposition 24 provides an upper bound on the worst- case budget deficit, which is dependent on the discount factor provided to the advance customers. Intuitivelyspeaking, thelargerthediscount, themoreincentivizeitprovidestoencouragecustomers to request early, and the bigger the risk of not being able to recover the total operating cost. On the other hand, Proposition 24 does not state that the HPOCSD mechanism will always incur a budget deficit. It could happen that the overcharge on dynamic customers recovers fully the discounts provided to advance customers and a budget balance is achieved. It could also happen that the overcharge over compensates for the discounts, such that a budget surplus is generated. 5.3.3 Experimental Results We use the same experimental setup as introduced in Section 5.2.4. In our experiments, we use the parameters ACPercent and RequestProb to adjust the mixture between advance and realized dynamic customers. Recall that ACPercent is the percentage of advance customers, and that RequestProb is the probability that a dynamic customer requests service. Given the total number of potential customersN, the number of advance customers isN AC =NACPercent, and the expected number of realized dynamic customers isN ERDC =N(1ACPercent)RequestProb. For each realization of the dynamic vehicle routing problem, we solve the corresponding cost al- location problem using the HPOCSD mechanism paired with one of the following three heuristic 81 methods for calculating the overcharge factors. Level overcharge. The same overcharge factor is applied to all dynamic customers, no matter they request early or late. g level (n;) = N AC N ERDC level (103) where is the discount factor used for advance customers and level is a model parameter than can by tuned via experiments. Equation 103 states that the overcharge factor for dynamic customers is calculated based on and in proportion to the discount factor for advance customers. SinceN AC andN ERDC represent the (expected) number of customers and do not take into account the alpha values, the parameter level is needed to adjust the actual overcharge level in order to avoid any systematic bias towards budget deficit or budget surplus under different demand scenarios. Linear overcharge. The overcharge factor is designed to be linearly increasing over the request order. Dynamic customers that request late will be assigned a higher overcharge factor than those who request early. g linear (n;) = N AC N ERDC (n + 1N AC ) N ERDC linear (104) Similarly as in the level overcharge heuristic, the above definition states that the linear overcharge factor is calculated based on and in proportion to the discount factor, and is linearly increasing over the request index n. Again, the parameter linear is needed to adjust the actual overcharge level to avoid bias. Exponential overcharge. The overcharge factor is designed to be exponentially increasing over the request order, which provides smaller penalties for early request dynamic customers and larger penalties for late request dynamic customers as compared to the linear overcharge heuristic. g exp (n;) = N AC N ERDC (exp ( exp (n + 1N AC )) 1) (exp ( exp N ERDC ) 1) 0 exp (105) Similarly as in the level overcharge heuristic, the above definition states that the exponential over- charge factor is calculated based on and in proportion to the discount factor, and is exponential increasing over the request index n. Two parameters exp and 0 exp are needed to adjust the actual overcharge level to avoid bias. Intuitively speaking, the larger the discount, the more significant the effect of incentivizing cus- tomerstorequestearly. Atthesametime, themechanismmaybesubjecttobiggerrisksofnotbeing able to recover the total operating cost. Thus, it is worth examining the performance of different 82 overcharge heuristics using different discount factor levels. For each one of the overcharge heuristics presented above, we perform simulations using four discount factors, namely = 0:1; 0:2; 0:3 and 0:4. We use the same base case demand scenario as used in Section 5.2.4, whereACPercent = 0:25 and RequestProb = 0:75. Figure 11: Trajectories of the charge per alpha values under HPOCSD with level overcharge Figures 11, 12, and 13 illustrate trajectories of the charge per alpha values of selected customers whenusingtheHPOCSDmechanism, whenpairedwiththelevel, linear, andexponentialovercharge heuristics respectively. Each figure contains four panels, and each panel contains the graph of the trajectories corresponding to one of the four discount factors that we have tested. On each graph, the horizontal axis represents the request order. In this scenario, the first 25 positions of the request order correspond to advance customers. The vertical axis represents the charge per alpha value. Each trajectory on the graph represents a series of charge per alpha values of a selected customer. The first data point on each trajectory shows the initial quote per alpha value of the customer. There are five trajectories on each graph, and they correspond to the same customers across different graphs in different figures. For example, the first trajectory on any graph in any figure always correspond to the first advance customer on the special request order. The following four 83 Figure 12: Trajectories of the charge per alpha values under HPOCSD with linear overcharge series correspond to four dynamic customers. The particular customer they each represent follows the same matching as shown in Figure 9. 1. It can be clearly observed from the graphs that for any overcharge heuristic using any of the discount factors we tested, the trajectories corresponding to realized dynamic customers always lie above the trajectory corresponding to the advance customer. It suggests that the HPOCSD mechanism is effective in terms of separating advance and realized dynamic customers into different coalitions. The gap between the two groups of trajectories increases as the discount factor increases, which confirms the intuition that a larger discount factor leads to a more significant effect. 2. When using the level overcharge heuristic, as shown in Figure 11, the trajectories correspond- ing to realized dynamic customers tend to overlap each other, following the same pattern as observed for the baseline HPOCS mechanism. This is because the level overcharge heuristic assigns the same overcharge factor to all realized dynamic customers, such that the charge per alpha values among all dynamic customers tend to remain the same as for the HPOCS mech- 84 Figure 13: Trajectories of the charge per alpha values under HPOCSD with exponential overcharge anism. On the contrary, as shown in Figure 12 and 13, the linear and exponential heuristics can differentiate realized dynamic customers among themselves, since both heuristics penalize customers based on their request orders. Late request dynamic customers are penalized more than early request dynamic customers. The phenomenon is more significant when a larger discount factor is used. Figures 14, 15, and 16 show graphs of the initial quote per alpha and the final charge per alpha values of all customers under the HPOCSD mechanism, when paired with the level, linear, and exponential overcharge heuristics respectively. Each figure contains four panels, and each panel contains the graph of the initial quotes and the final charges corresponding to one of the four discount factors that we have tested. Recall that the initial quote is the first charge value a customer receives and is the value that the customer has to use to make the decision of whether to accept the service or not. The final charge is the price that the customer actually pays for the service. These two values are the two most important charge values. All of the values shown on the graph are on the per-alpha basis. On each graph, the horizontal axis represents the request order. 85 In this scenario, the first 25 positions of the request order correspond to advance customers. The vertical axis represents the charge per alpha value. The upper series contains the initial quotes of all customers and the lower series contains the corresponding final charges. For each customer, its initial quote is always greater than or equal to its final charge, as guaranteed by the immediate response and individual rationality properties. Figure 14: Initial quotes and final charges under HPOCSD with level overcharge 3. We start our analysis by focusing on the initial quote curve. When comparing the shape of the initial quote curve to that of the baseline HPOCS model, it is evident that the flat segment corresponding to advance customers is lowered and the part corresponding to realized dynamic customers is raised. As a result, the probability that an advance customer accepts its initial quote is increased if a finite willingness-to-pay value is implemented. Meanwhile, dynamic customers are effectively penalized and the probability that they accept their initial quotes may decrease. This phenomenon can be observed for all overcharge heuristics using any of the discount factors we have tested. In addition, all of the overcharge heuristics are shown to be more effective when a larger discount factor is used. 86 Figure 15: Initial quotes and final charges under HPOCSD with linear overcharge 4. As discussed in Section 5.1.3, the online fairness property is only concerned with the final charges of customers, rather than the initial quotes. Thus it is possible for a mechanism that satisfies the online fairness property to have undesirable behavior associated with the initial quotes. Indeed, we have discovered such an issue for the baseline HPOCS mechanism based on Figure 10, namely that the initial quotes offered to late request dynamic customers may drop below that offered to advance customers. In order to correct this issue, an effective overcharge heuristic should raise the initial quotes for dynamic customers high enough such that all of them are at least as high as that offered to advance customers. Based on Figure 14, a discount of 40% is needed under the level overcharge heuristic. Figures 15 and 16 suggest that a discount of 30% is sufficient for the linear and exponential heuristics to be effective. 5. We now focus on the segment of the initial quote curve that corresponds to realized dynamic customers. When using the level heuristic, this segment tends to keep its original shape as shown in Figure 10. A spike in the initial quote is caused for dynamic customers who request early, and the initial quotes for subsequent dynamic customers decrease over time. This effect 87 Figure 16: Initial quotes and final charges under HPOCSD with exponential overcharge can be significant when a big discount factor is used, and is clearly undesirable. On the other hand, the linear and the exponential heuristics tend to flatten the segment of the initial quote curve corresponding to realized dynamic customers, since both heuristics assign increasingly largeroverchargefactorstocustomerswhorequestlate. Whenusingtheexponentialheuristic, in particular, it can be observed that the decreasing trend can even be reversed at the tail of the initial quote curve when using a discount factor that is large enough. 6. We then analyze the effect of discounts and overcharges on the final charges. Recall that under the HPOCS mechanism, the final shared costs of all customers tend to be the same as many dynamic customers become realized, as the synergy among customers becomes too high. Figure 14, 15, and 16 show that all of the overcharge heuristics tested can prevent the advance and realized dynamic customers to have the same final charge per alpha value, even when a small discount factor is used. In particular, a jump in the final charge value can be observed for the first dynamic customer that becomes realized. In addition, the linear and exponential heuristics cause the final charges for dynamic customers to resemble a linear and 88 exponential pattern respectively. Both effects are more significant when a larger discount factor is used. The simulation results discussed above suggest that larger discount factors are generally more effective in terms of promoting customers to request early and truthfully. Meanwhile, based on Proposition 24, a larger discount factor could also lead to a bigger budget deficit in the worst case. Thus it is worth examining the performance of the HPOCSD mechanism on budget balance when using different overcharge heuristics and discount factors. We use the percentage of the cost recovered as the performance measure. For each realization of the problem, each overcharge heuristic, and each discount factor, we calculate the percentage of the total travel cost that can be recovered by the sum of the final HPOCSD charges for all customers that become realized. In particular, the percentage of the cost recovered pcr is calculated as pcr = P jC(Tmax)j n=1 charge Tmax ( Tmax (n)) totalcost(C (T max )) (106) By definition, pcr is a random variable that changes its value as the realization of the DVRP changes. pcr = 100% suggests that perfect budget balance is achieved. pcr < 100% implies a budget deficit; the total charges collected from the customers cannot recover the total operating cost. pcr > 100% means that the total charges collected exceeds the total operating cost, and a surplus is generated. Due to the nature of the dynamic vehicle routing problem, each realization of the problem may be different in terms of the actual group of customers that become realized and the request order among these customers. When positive discounts and overcharges are used, no overcharge heuristic can guarantee consistently budget balance performance. Instead, the goal is to eliminate systematic bias towards budget deficit or surplus. This can be achieved by fine tuning the parameters of each overcharge heuristic such that the budget is balanced in the average sense. Equivalently speaking, for each overcharge heuristic, we fine tune its parameter settings by targeting 100% for the average pcr value across multiple DVRP realizations. Table 13 summarizes the percentage of the cost recovered values under the level, linear, and exponentialoverchargeheuristicsusingdifferentdiscountfactorsrangingfrom 0:1to 0:4. Theresults shown are based on the base case demand scenario, where ACPercent = 0:25 and RequestProb = 0:75. We simulate each heuristic paired with each discount level on 50 realizations of the DVRP. The same set of realizations are used for all of the heuristic and discount level combinations. For 89 each heuristic at each discount level, we report the average percentage of the cost recovered, the minimum percentage of the cost recovered among all realizations, and the maximum percentage of the cost recovered among all realizations. Percentage of the Cost Recovered Avg. Min. Max. Avg. Min. Max. Avg. Min. Max. Discount Level Linear Exponential 0:1 100.0% 99.3% 100.7% 100.1% 99.5% 100.7% 100.0% 99.4% 100.8% 0:2 100.0% 98.7% 101.4% 100.2% 98.9% 101.4% 100.1% 98.8% 101.5% 0:3 100.0% 98.0% 102.0% 100.2% 98.4% 102.2% 100.1% 98.2% 102.3% 0:4 100.0% 97.3% 102.7% 100.3% 97.8% 102.9% 100.2% 97.6% 103.0% Table 13: Budget balance analysis of HPOCSD for the base case 7. Theaveragepercentageofthecostrecoveredacrossallheuristicsatalldiscountlevelsareclose to 100%, which is the target value we use when fine tuning the model parameters. Besides, for each heuristic and discount level, the minimum and maximum percentage values of the cost recovered are generally positioned symmetrically around the corresponding mean value. Equivalently speaking, the maximum deficit and the maximum surplus incurred among all realizations are generally the same. For example, when using the level overcharge heuristic with 10% discount, the maximum deficit and surplus incurred both equal to 0:7%. This implies that the parameter settings that we use are not biased towards budget balance or surplus, and lead to budget balanced cost allocations in general. 8. For all overcharge heuristics, there is bigger variation in the performance measure when a larger discount factor is used. For example, when using the level overcharge heuristic with 40% discount, even though the HPOCSD mechanism is generally budget balanced on average, it could incur either a 2:7% budget deficit or a 2:7% budget surplus in the worst case. If a 10% discount is used in the same heuristic, the worst-case deviations are both less than 1%. This observation confirms the discussion in Section 5.3.2, which argues that using larger discount factors makes the heuristic more risky and vulnerable to worst-case performance. 9. When fixing the discount level, the minimum and maximum percentage of the cost recovered do not vary significantly across different overcharge heuristics. This observation suggests that the level, linear, and exponential heuristics display similar worst-case performance. Based on the above analysis, it can be concluded that the HPOCSD mechanism can indeed resolve the problems observed for the HPOCS mechanism, at the cost of losing the budget balance 90 propertyoftheoriginalformulation. Nevertheless, theHPOCSDmechanismremainsapproximately budget balanced. Among the heuristics we have tested, the exponential overcharge heuristic is more effective in providing more of an inventive to make an advance or early dynamic request than the other two options. 91 6 Conclusion and Future Directions Inthisdissertation, westudytheproblemofbuildingareal-timecostsharingtransportationsystem, which results from horizontal cooperation among multiple suppliers. In this problem, part of the customer requests are known at the beginning of the planning horizon, while the rest of the requests become realized dynamically over time. There are two major research issues closely related to the problem we study, namely the dynamic vehicle routing problem (DVRP) and cost-sharing mechanism design. We begin our research by modeling and solving the underlying vehicle routing problem with dynamic customer requests. We model the uncertainties related to dynamic customer requests by assuming an underlying probability of request as well as a conditional likelihood function on the request time. We adopt a look-ahead dynamic routing approach to design a solution framework that proactively forecasts future customer requests. The hybrid waiting time adjustment heuristic strategically optimizes time slots in the current schedule in anticipation for potential requests. Dynamic real-time routing rules are developed to minimize the total travel distance of all vehicles as wellas maximize theprobability ofaccepting dynamiccustomerrequests. Thelevelof forecasting androuteplanninginoursolutioncanbeadjustedbychangingthevaluesofthreemodelparameters, namelythenumEpochs,forecastHorizon, andthreshold. Thispartialroutingcapabilitypositions our solution in the middle of the spectrum that reflects the amount of problem information used in a solution approach. Through extensive numerical simulations, we first study the behavior of the proposed partial routing framework under different parameter settings. Using the base case network, where 25 customers are known in advance and each dynamic customer has a 75% chance of requesting service, we identify that the lowest threshold value generally leads to the best result. We also show that there exists a minimum value of the forecastHorizon that is sufficient to exploit the benefit of forecasting dynamic requests. This value aligns with the time between two consecutive decision epochs given the choice of the numEpochs. We then compare and contrast the above mentioned routing strategies in networks with various levels of uncertainties. The dynamic partial routing strategy is shown to be more reliable than reactive routing across problems with different expected proportions of realized dynamic customers. The analysis based on the average travel distance per customer shows that the dynamic partial routing strategy could benefit from the effect of economies of scale on vehicle usage in situations with both high and low levels of expected proportions of 92 realized dynamic customers. Based on the study of the DVRP, we then study how the total operating cost should be al- located to each customer in the dynamic routing environment. To this end, we first define the online cost allocation problem associated with the DVRP, and discuss a list of desirable proper- ties for online cost-sharing mechanisms. We develop the Hybrid Proportional Online Cost Sharing (HPOCS) mechanism as an online cost-sharing mechanism that combines proportional cost sharing for calculating the initial quotes for advance customers and the Proportional Online Cost Sharing (POCS) mechanism [23] for handling dynamic customer requests. The idea behind HPOCS is that customers can choose to form coalitions with customers who request service directly after them to decrease their shared costs. It is proved that the HPOCS mechanism satisfies all of the desirable properties we propose, including online fairness, budget balance, immediate response, individual rationality, and ex-post incentive compatibility. The baseline HPOCS model is extended to incorporate discounts for advance customers and overcharges for dynamic customers, which both help to incentivize customers to request early and truthfully. The new HPOCSD mechanism is proved to be approximately budget balanced. All of theotherpropertiesofHPOCSarepreserved. Wecompareandcontrastmultipleheuristicsmethods for calculating the overcharge factors. Simulation results show that among the three heuristics we have tested, the exponential overcharge method appears to be the most effective. More work can be done along the lines of improving the HPOCS mechanism. For example, the grand schedule used to calculate the shared costs and guide the vehicles is based on the static VRP consisting of all of the potential customers in the DVRP, regardless of whether they become realized or not. Such a schedule can be sub-optimal when the proportion of realized customers is small, because a large proportion of the time slots on the schedule do not get confirmed and are wasted. The actual routes traveled by the vehicles tend to resemble a more costly solution than the one constructed based only on the set of customers that become realized. That is to say, the total cost calculated by the HPOCS mechanism does not truly reflect the actual cost needed to service the group of realized customers, which may in fact be much lower than the HPOCS total cost. A more efficient way of routing the vehicles is to use the look-ahead dynamic routing framework, which can forecast dynamic customer requests and strategically adjust the routing schedule. In situations where little information concerning dynamic customer requests is known, the reactive routing strategy can be used to route the vehicles and the total cost function can be defined on the 93 actual routes traveled. In both cases, the ex-post incentive compatibility property of the HPOCS mechanism is lost, since the total cost function of the heuristic routing algorithms is usually not independent of the request order among the group of customers who have requested service. There may exist other approaches to improve the HPOCS mechanism, possibly at the cost of sacrificing one or more of its properties. 94 References [1] Robert C. Anderson and Armin Claus. Cost allocation in transportation systems. Southern Economic Journal, 43(1):793–803, 1976. [2] Aaron Archer, Joan Feigenbaum, Arvind Krishnamurthy, Rahul Sami, and Scott Shenker. Approxi- mation and collusion in multicast cost sharing. Games and Economic Behavior, 47(1):36–71, 2004. [3] SindhuraBalireddiandNelsonA.Uhan. Cost-sharingmechanismsforschedulingundergeneraldemand settings. European Journal of Operational Research, 217(2):270–277, 2012. [4] Russell W. Bent and Pascal Van Hentenryck. Waiting and relocation strategies in online stochastic vehicle routing. In International Joint Conferences on Artificial Intelligence, pages 1816–1821. 2007 edition, 2007. [5] Gerardo Berbeglia, Jean-François Cordeau, and Gilbert Laporte. A hybrid tabu search and con- straintprogrammingalgorithmforthedynamicdial-a-rideproblem. INFORMS Journal on Computing, 24(3):343–355, 2012. [6] Yvonne Bleischwitz and Burkhard Monien. Fair cost-sharing methods for scheduling jobs on parallel machines. Journal of Discrete Algorithms, 7(3):280–290, 2009. [7] Yossi Borenstein, Nazaraf Shah, Edward Tsang, Raphael Dorne, Abdullah Alsheddy, and Christos Voudouris. On the partitioning of dynamic workforce scheduling problems. Journal of Scheduling, 13(4):411–425, 2010. [8] Janina Brenner and Guido Sch. Cost sharing methods for makespan and completion time scheduling. Time, 4393(i):670–681, 2007. [9] Janina Brenner and Guido Schäfer. Singleton acyclic mechanisms and their applications to scheduling problems. In Algorithmic Game Theory, volume 4997, pages 315–326. 2008. [10] Zhi-Long Chen and Hang Xu. Dynamic column generation for dynamic vehicle routing with time windows. Transportation Science, 40(1):74–88, 2006. [11] Frans Cruijssen, Wout Dullaert, and Hein Fleuren. Horizontal cooperation in transport and logistics: A literature review. Transportation Journal, 46(3):22–39, 2007. [12] Frans Cruijssen, Wout Dullaert, and Tarja Joro. Logistics efficiency through horizontal cooperation: The case of Flemish road transportation companies. Technical report, 2006. [13] GeorgeB.DantzigandJ.H.Ramser. Thetruckdispatchingproblem. Management Science, 6(1):80–91, 1959. [14] Nikhil R. Devanur, Milena Mihail, and Vijay V. Vazirani. Strategyproof cost-sharing mechanisms for set cover and facility location games. Decision Support Systems, 39(1):11–22, 2005. 95 [15] Julia Drechsel and Alf Kimms. Computing core allocations in cooperative games with an application to cooperative procurement. International Journal of Production Economics, 128(1):310–321, 2010. [16] Julia Drechsel and Alf Kimms. Cooperative lot sizing with transshipments and scarce capacities: Solutions and fair cost allocations. International Journal of Production Research, 49(9):2643–2668, 2011. [17] Burak Eksioglu, Arif Volkan Vural, and Arnold Reisman. The vehicle routing problem: A taxonomic review. Computers & Industrial Engineering, 57(4):1472–1483, 2009. [18] Stefan Engevall, Maud Göthe-lundgren, and Peter Värbrand. The traveling salesman game : An application of cost allocation in a gas and oil company. Annals of Operational Research, 82:453–471, 1998. [19] Miguel Andres Figliozzi, Hani Mahmassani, and Patrick Jaillet. Framework for study of carrier strate- gies in auction-based transportation marketplace. Transportation Research Record, (1854):162 – 170, 2003. [20] Miguel Andres Figliozzi, Hani Mahmassani, and Patrick Jaillet. Competitive performance assessment of dynamic vehicle routing technologies using sequential auctions. Transportation Research Record, (1882):10 – 18, 2004. [21] Miguel Andres Figliozzi, Hani S. Mahmassani, and Patrick Jaillet. Pricing in dynamic vehicle routing problems. Transportation Science, 41(3):302–318, 2007. [22] M. Frisk, M. Göthe-Lundgren, K. Jörnsten, and Mikael Rönnqvist. Cost allocation in collaborative forest transportation. European Journal of Operational Research, 205(2):448–458, 2010. [23] Masabumi Furuhata, Kenny Daniel, Sven Koenig, Fernando Ordóñez, Maged Dessouky, Marc Eti- enne Brunet, Liron Cohen, and Xiaoqing Wang. Online cost-sharing mechanism design for demand- responsive transport systems. IEEE Transactions on Intelligent Transportation Systems, 16(2):692– 707, 2015. [24] Masabumi Furuhata, Maged Dessouky, Fernando Ordóñez, Marc Etienne Brunet, Xiaoqing Wang, and Sven Koenig. Ridesharing: The state-of-the-art and future directions. Transportation Research Part B: Methodological, 57:28–46, 2013. [25] Michel Gendreau, François Guertin, Jean-Yves Potvin, and René Séguin. Neighborhood search heuris- tics for a dynamic vehicle dispatching problem with pick-ups and deliveries. Transportation Research Part C: Emerging Technologies, 14(3):157–174, 2006. [26] GianpaoloGhiani, EmanueleManni, andBarrettW.Thomas. Acomparisonofanticipatoryalgorithms for the dynamic and stochastic Traveling Salesman Problem. Transportation Science, 46(3):374–387, 2012. 96 [27] Donald B Gillies. Solutions to general non-zero-sum games. In Contributions to the Theory of Games (AM-40), volume IV, pages 47–85. 1959. [28] Donald Bruce Gillies. Some theorems on n-person games. PhD thesis, 1953. [29] Jerry Green, Elon Kohlberg, and Jean Jacques Laffont. Partial equilibrium approach to the free-rider problem. Journal of Public Economics, 6(4):375–394, 1976. [30] Anupam Gupta, Jochen Könemann, Stefano Leonardi, R Ravi, and Guido Schäfer. An efficient cost- sharing mechanism for the prize-collecting Steiner forest problem. In SODA ’07 Proceedings of the eighteenth annual ACM-SIAM symposium on Discrete algorithms, pages 1153–1162, 2007. [31] Anupam Gupta, Aravind Srinivasan, and Éva Tardos. Cost-sharing mechanisms for network design. Algorithmica, 50(1):98–119, 2008. [32] Nicole Immorlica, Mohammad Mahdian, and Vahab S. Mirrokni. Limitations of cross-monotonic cost- sharing schemes. ACM Transactions on Algorithms, 4(2):1–25, 2008. [33] George Ioannou, M. Kritikos, and G. Prastacos. A greedy look-ahead heuristic for the vehicle routing problem with time windows. Journal of the Operational Research Society, 52(5):523–537, 2001. [34] Philip Kilby, Patrick Prosser, and Paul Shaw. Dynamic VRPs: A study of scenarios. Technical report, University of Strathclyde, Glasgow, Scotland, 1998. [35] JochenKönemann, StefanoLeonardi, andGuidoSchäfer. Agroup-strategyproofmechanismforSteiner forests. Soda, pages 612–619, 2005. [36] M. A. Krajewska, Herbert Kopfer, Gilbert Laporte, Sarah Röpke, and Georges Zaccour. Horizontal cooperation among freight carriers: Request allocation and profit sharing. Journal of the Operational Research Society, 59(11):1483–1491, 2008. [37] Gilbert Laporte. Fifty years of vehicle routing. Transportation Science, 43(4):408–416, 2009. [38] Allan Larsen, Oli B. G. Madsen, and Marius M. Solomon. The a priori dynamic traveling salesman problem with time windows. Transportation Science, 38(4):459–472, 2004. [39] Stefano Leonardi and Guido Schäfer. Cross-monotonic cost sharing methods for connected facility location games. Theoretical Computer Science, 326(1-3):431–442, 2004. [40] Konrad Lewczuk and Mariusz Wasiak. Transportation services costs allocation for the delivery system. Proceedings - ICSEng 2011: International Conference on Systems Engineering, pages 429–433, 2011. [41] Gai Di Li, Dong Lei Du, Da Chuan Xu, and Ru Yao Zhang. A cost-sharing method for the multi-level economic lot-sizing game. Science China Information Sciences, 57(1):1–9, 2014. [42] PengLiu,YaohuaWu,andNaXu. Allocatingcollaborativeprofitinless-than-truckloadcarrieralliance. Journal of Service Science and Management, 03(01):143–149, 2010. 97 [43] Salvador Lozano, Pilar Moreno, B. Adenso-Díaz, and Encarnacion Algaba. Cooperative game theory approach to allocating benefits of horizontal cooperation. European Journal of Operational Research, 229(2):444–452, 2013. [44] Yannis Marinakis and Magdalene Marinaki. Combinatorial expanding neighborhood topology particle swarm optimization for the vehicle routing problem with stochastic demands. In Proceeding of the fifteenth annual conference on Genetic and evolutionary computation conference, pages 49–56, 2013. [45] Aranyak Mehta, Tim Roughgarden, and Mukund Sundararajan. Beyond Moulin mechanisms. Games and Economic Behavior, 67(1):125–155, 2009. [46] Roberto Montemanni, Luca Maria Gambardella, Andrea Emilio Rizzoli, and Alberto V. Donati. Ant colony system for a dynamic vehicle routing problem. Journal of Combinatorial Optimization, 10(4):327–343, 2005. [47] Benoit Montreuil. Toward a physical internet: Meeting the global logistics sustainability grand chal- lenge. Logistics Research, 3(2-3):71–87, 2011. [48] Benoit Montreuil, Russell D. Meller, and Eric Ballot. Physical internet foundations. In Theodor Borangiu, Andre Thomas, and Damien Trentesaux, editors, Service Orientation in Holonic and Multi Agent Manufacturing and Robotics, volume 472 of Studies in Computational Intelligence, pages 151– 166. Springer Berlin Heidelberg, Berlin, Heidelberg, 2013. [49] William H. Moore. National transportation statistics. Technical report, U.S. Department of Trans- portation, 2013. [50] Rodrigo Moretti Branchini, Vinícius Amaral Armentano, and Arne Løkketangen. Adaptive granular local search heuristic for a dynamic vehicle routing problem. Computers & Operations Research, 36(11):2955–2968, 2009. [51] Hervé Moulin. Incremental cost sharing: Characterization by group strategyproofness. Social Choice and Welfare, 16(2):279–320, 1999. [52] Hervé Moulin and Scott Shenker. Strategyproof sharing of submodular costs: Budget balance versus efficiency. Economic Theory, 18(3):511–533, 2001. [53] Okan Örsan Özener and Martin Savelsbergh. Allocating cost of service to customers in inventory routing. Operations Research, 61(1):112–125, 2013. [54] Martin Pál and Éva Tardos. Group strategyproof mechanisms via primal-dual algorithms. In 44th Annual IEEE Symposium on Foundations of Computer Science, 2003. Proceedings, pages 584–593, 2003. [55] Victor Pillac, Michel Gendreau, Christelle Guéret, and Andrés L. Medaglia. A review of dynamic vehicle routing problems. European Journal of Operational Research, 225(1):1–11, 2013. 98 [56] Harilaos N. Psaraftis. A dynamic programming solution to the single vehicle many-to-many immediate request dial-a-ride problem, 1980. [57] Kevin Roberts. The characterization of implementable choice rules. In Aggregation and revelation of preferences, volume 12, pages 321–349. 1979. [58] Tim Roughgarden and Mukund Sundararajan. New tradeo-offs in cost-sharing mechanisms. In Pro- ceedings of the thirty-eighth annual ACM symposium on Theory of computing, pages 79–88, 2006. [59] Tim Roughgarden and Mukund Sundararajan. Optimal efficiency guarantees for network design mech- anisms. In Integer Programming and Combinatorial Optimization, pages 469–483. 2007. [60] Tim Roughgarden and Mukund Sundararajan. Quantifying inefficiency in cost-sharing mechanisms. Journal of the ACM, 56(4):1–33, 2009. [61] MartinW.P.Savelsbergh. Thevehicleroutingproblemwithtimewindows: Minimizingrouteduration. INFORMS Journal on Computing, 4(2):146–154, 1992. [62] Hamid R. Sayarshad and Joseph Y. J. Chow. The non-myopic dynamic dial-a-ride and pricing problem. 2014. [63] MichaelSchilde, KarlF.Doerner, andRichardF.Hartl. Metaheuristicsforthedynamicstochasticdial- a-ride problem with expected return transports. Computers & Operations Research, 38(12):1719–1730, 2011. [64] David Schmeidler. The nucleolus of a characteristic function game. In Game and economic theory: selected contributions in honor of Robert J. Aumann, chapter The Nucleo, pages 231 – 238. 1995. [65] Nicola Secomandi and François Margot. Reoptimization approaches for the vehicle-routing problem with stochastic demands. Operations Research, 57(1):214–230, 2009. [66] Geetha Shanmugam. Meta heuristic algorithms for vehicle routing problem with stochastic demands. Journal of Computer Science, 7(4):533–542, 2011. [67] Lloyd S. Shapley. A value for n-person games. Annals of Mathematics Studies, 28(2):307–317, 1953. [68] Zhihong Shen, Maged Dessouky, and Fernando Ordóñez. A two-stage vehicle routing model for large- scale bioterrorism emergencies. Networks, 54(4):255–269, 2009. [69] Nagesh Shukla, M.K. Tiwari, and Darek Ceglarek. Genetic-algorithms-based algorithm portfolio for inventory routing problem with stochastic demand. International Journal of Production Research, 51(1):118–137, 2013. [70] Tage Skjoett-Larsen. European logistics beyond 2000. International Journal of Physical Distribution & Logistics Management, 30(5):377–387, 2000. 99 [71] Marius M. Solomon. Algorithms for the vehicle-routing and scheduling problems with time window constraints. Operations Research, 35(2):254–265, 1987. [72] Yves Sprumont. Ordinal cost sharing. Journal of Economic Theory, 81(1):126–162, 1998. [73] S. H. Tijs and T. S. H. Driessen. Game theory and cost allocation problems. Management Science, 32(8):1015–1028, 1986. [74] Yun-Tong Wang and Daxin Zhu. Ordinal proportional cost sharing. Journal of Mathematical Eco- nomics, 37(3):215–230, 2002. [75] Junlong Zhang, William H. K. Lam, and Bi Yu Chen. A stochastic vehicle routing problem with travel time uncertainty: Trade-Off between cost and customer service. Networks and Spatial Economics, 2013. [76] Tao Zhang, W.A. Chaovalitwongse, and Yuejie Zhang. Scatter search for the stochastic travel-time vehicle routing problem with simultaneous pick-ups and deliveries. Computers & Operations Research, 39(10):2277–2290, 2012. 100
Abstract (if available)
Abstract
This dissertation addresses the cost allocation problem in a real-time cost sharing transportation system, which results from horizontal cooperation among multiple suppliers. In this problem, new customer requests become known in real time and the optimal total cost of service can only be approximated. There are two important research issues in this problem: 1) how to design and implement vehicle routes in light of dynamically revealed information
Linked assets
University of Southern California Dissertations and Theses
Conceptually similar
PDF
Routing for ridesharing
PDF
Cost-sharing mechanism design for freight consolidation
PDF
Computational geometric partitioning for vehicle routing
PDF
New approaches for routing courier delivery services
PDF
Models and algorithms for pricing and routing in ride-sharing
PDF
Vehicle routing and resource allocation for health care under uncertainty
PDF
Dynamic programming-based algorithms and heuristics for routing problems
PDF
Routing problems for fuel efficient vehicles
PDF
Solving the empty container problem using double-container trucks to reduce vehicle miles
PDF
Supply chain consolidation and cooperation in the agriculture industry
PDF
Models and algorithms for the freight movement problem in drayage operations
PDF
Evaluating city logistics using two-level location routing modeling and SCPM simulation
PDF
Continuous approximation formulas for cumulative routing optimization problems
PDF
Continuous approximation formulas for location and hybrid routing/location problems
PDF
Intelligent urban freight transportation
PDF
Train routing and timetabling algorithms for general networks
PDF
The robust vehicle routing problem
PDF
Routing and inventory model for emergency response to minimize unmet demand
PDF
Optimizing a lean logistic system and the identification of its breakdown points
PDF
Information design in non-atomic routing games: computation, repeated setting and experiment
Asset Metadata
Creator
Zou, Han
(author)
Core Title
An online cost allocation model for horizontal supply chains
School
Viterbi School of Engineering
Degree
Doctor of Philosophy
Degree Program
Industrial and Systems Engineering
Publication Date
11/06/2017
Defense Date
09/01/2017
Publisher
University of Southern California
(original),
University of Southern California. Libraries
(digital)
Tag
cost-sharing mechanism design,dynamic vehicle routing,logistics,OAI-PMH Harvest,online cost allocation,supply chain,transportation
Language
English
Contributor
Electronically uploaded by the author
(provenance)
Advisor
Dessouky, Maged M. (
committee chair
), Carlsson, John G. (
committee member
), Ioannou, Petros (
committee member
)
Creator Email
hanzou@usc.edu,stevenzou9001@gmail.com
Permanent Link (DOI)
https://doi.org/10.25549/usctheses-c40-452173
Unique identifier
UC11265663
Identifier
etd-ZouHan-5875.pdf (filename),usctheses-c40-452173 (legacy record id)
Legacy Identifier
etd-ZouHan-5875.pdf
Dmrecord
452173
Document Type
Dissertation
Rights
Zou, Han
Type
texts
Source
University of Southern California
(contributing entity),
University of Southern California Dissertations and Theses
(collection)
Access Conditions
The author retains rights to his/her dissertation, thesis or other graduate work according to U.S. copyright law. Electronic access is being provided by the USC Libraries in agreement with the a...
Repository Name
University of Southern California Digital Library
Repository Location
USC Digital Library, University of Southern California, University Park Campus MC 2810, 3434 South Grand Avenue, 2nd Floor, Los Angeles, California 90089-2810, USA
Tags
cost-sharing mechanism design
dynamic vehicle routing
online cost allocation
supply chain
transportation