A Methodology Based on Evolutionary Algorithms to Solve a...

16
This article was downloaded by: [131.180.85.234] On: 18 May 2015, At: 06:02 Publisher: Institute for Operations Research and the Management Sciences (INFORMS) INFORMS is located in Maryland, USA Transportation Science Publication details, including instructions for authors and subscription information: http://pubsonline.informs.org A Methodology Based on Evolutionary Algorithms to Solve a Dynamic Pickup and Delivery Problem Under a Hybrid Predictive Control Approach Diego Muñoz-Carpintero, Doris Sáez, Cristián E. Cortés, Alfredo Núñez To cite this article: Diego Muñoz-Carpintero, Doris Sáez, Cristián E. Cortés, Alfredo Núñez (2015) A Methodology Based on Evolutionary Algorithms to Solve a Dynamic Pickup and Delivery Problem Under a Hybrid Predictive Control Approach. Transportation Science 49(2):239-253. http://dx.doi.org/10.1287/trsc.2014.0569 Full terms and conditions of use: http://pubsonline.informs.org/page/terms-and-conditions This article may be used only for the purposes of research, teaching, and/or private study. Commercial use or systematic downloading (by robots or other automatic processes) is prohibited without explicit Publisher approval, unless otherwise noted. For more information, contact [email protected]. The Publisher does not warrant or guarantee the article’s accuracy, completeness, merchantability, fitness for a particular purpose, or non-infringement. Descriptions of, or references to, products or publications, or inclusion of an advertisement in this article, neither constitutes nor implies a guarantee, endorsement, or support of claims made of that product, publication, or service. Copyright © 2015, INFORMS Please scroll down for article—it is on subsequent pages INFORMS is the largest professional society in the world for professionals in the fields of operations research, management science, and analytics. For more information on INFORMS, its publications, membership, or meetings visit http://www.informs.org

Transcript of A Methodology Based on Evolutionary Algorithms to Solve a...

This article was downloaded by: [131.180.85.234] On: 18 May 2015, At: 06:02Publisher: Institute for Operations Research and the Management Sciences (INFORMS)INFORMS is located in Maryland, USA

Transportation Science

Publication details, including instructions for authors and subscription information:http://pubsonline.informs.org

A Methodology Based on Evolutionary Algorithms to Solvea Dynamic Pickup and Delivery Problem Under a HybridPredictive Control ApproachDiego Muñoz-Carpintero, Doris Sáez, Cristián E. Cortés, Alfredo Núñez

To cite this article:Diego Muñoz-Carpintero, Doris Sáez, Cristián E. Cortés, Alfredo Núñez (2015) A Methodology Based on Evolutionary Algorithmsto Solve a Dynamic Pickup and Delivery Problem Under a Hybrid Predictive Control Approach. Transportation Science49(2):239-253. http://dx.doi.org/10.1287/trsc.2014.0569

Full terms and conditions of use: http://pubsonline.informs.org/page/terms-and-conditions

This article may be used only for the purposes of research, teaching, and/or private study. Commercial useor systematic downloading (by robots or other automatic processes) is prohibited without explicit Publisherapproval, unless otherwise noted. For more information, contact [email protected].

The Publisher does not warrant or guarantee the article’s accuracy, completeness, merchantability, fitnessfor a particular purpose, or non-infringement. Descriptions of, or references to, products or publications, orinclusion of an advertisement in this article, neither constitutes nor implies a guarantee, endorsement, orsupport of claims made of that product, publication, or service.

Copyright © 2015, INFORMS

Please scroll down for article—it is on subsequent pages

INFORMS is the largest professional society in the world for professionals in the fields of operations research, managementscience, and analytics.For more information on INFORMS, its publications, membership, or meetings visit http://www.informs.org

Vol. 49, No. 2, May 2015, pp. 239–253ISSN 0041-1655 (print) � ISSN 1526-5447 (online) http://dx.doi.org/10.1287/trsc.2014.0569

© 2015 INFORMS

A Methodology Based on Evolutionary Algorithms toSolve a Dynamic Pickup and Delivery Problem Under

a Hybrid Predictive Control ApproachDiego Munoz-Carpintero, Doris Sáez

Electrical Engineering Department, Universidad de Chile, 8370451 Santiago, Chile {[email protected], [email protected]}

Cristián E. CortésCivil Engineering Department, Universidad de Chile, 8370449 Santiago, Chile, [email protected]

Alfredo NúñezSection of Road and Railway Engineering, Delft University of Technology, 2628 CN Delft, The Netherlands,

[email protected]

This paper presents a methodology based on generic evolutionary algorithms to solve a dynamic pickup anddelivery problem formulated under a hybrid predictive control approach. The solution scheme is designed

to support the dispatcher of a dial-a-ride service, where quick and efficient real-time solutions are needed.The scheme considers different configurations of particle swarm optimization and genetic algorithms within aproposed ad-hoc methodology to solve in real time the nonlinear mixed-integer optimization problem relatedwith the hybrid predictive control approach. These consist of different techniques to handle the operationalconstraints (penalization, Baldwinian, and Lamarckian repair) and encodings (continuous and integer). Forparameter tuning, a new approach based on multiobjective optimization is proposed and used to select andstudy some of the evolutionary algorithms. The multiobjective feature arises when deciding the parameters withthe best trade-off between performance and computational effort. Simulation results are presented to comparethe different schemes proposed and to advise conditions for the application of the method in real instances.

Keywords : predictive control; dynamic pickup and delivery problem; evolutionary algorithmsHistory : Received: May 2010; revision received: October 2013; accepted: June 2014. Published online in Articles

in Advance March 10, 2015.

1. Introduction and BackgroundThe dynamic pickup and delivery problem (DPDP)can be formulated as a set of transportation requests(identified by pickup and delivery locations) that areserved by a fleet of vehicles initially located at sev-eral depots. The dynamic dimension appears when asubset of the requests is not known in advance; there-fore, such requests have to be scheduled for service inreal time, at the instant they call. The DPDP is now ofgreat interest for practitioners and researchers becauseof the development and implementation of efficientonline optimization tools; this fact is crucial for theemerging improvement in the quality of the formula-tion solutions. The DPDP has been intensely studiedover the last 20 years (Psaraftis 1980, 1988; Bertsimasand Van Ryzin 1991; Bertsimas and Van Ryzin 1993a,b; Kleywegt and Papastavrou 1998; Gendreau et al.1999; Swihart and Papastavrou 1999; Larsen 2000;Thomas and White 2004). The output of such a prob-lem should be a set of routes for all of the vehicles,which change dynamically over time. The solution ofa DPDP can be linked with the control of a typicaldial-a-ride system (DRS), where the dispatcher has

to make routing decisions for a fixed fleet of vehi-cles with limited capacity, operating in a real-time ser-vice where the demand (represented by passengers) isunknown in advance. Eksioglu, Volkan, and Reisman(2009) and Berbeglia, Cordeau, and Laporte (2010)presented comprehensive reviews of DPDP, dial-a-ride applications, and solution methods.

Xiang, Chu, and Chen (2008) studied a DRS byconsidering a complex set of constraints on a time-dependent network. With regard to real applications,Madsen, Raven, and Rygaard (1995) adapted the inser-tion heuristics by Jaw et al. (1986) to solve a real-life problem for moving elderly and handicappedpeople in Copenhagen, and Dial (1995) proposedan approach to the many-to-few dial-a-ride transitoperation ADART (Autonomous Dial-a-Ride Transit),which is currently implemented in Corpus Christi,Texas. Gendreau et al. (1999) modified the tabu-searchheuristics to solve the dynamic vehicle routing prob-lem (DVRP) with soft time windows in an effort to finda solution method that will handle different DVRPs.More sophisticated tabu-search methods were recentlydeveloped, such as granular tabu search (Toth and

239

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP240 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

Vigo 2003) and adaptive memory based on tabu search(Tarantilis 2005). Xiang, Chu, and Chen (2008) devel-oped a heuristic local search strategy that uses a sec-ondary objective function to drive the search out oflocal optima. In the context of DPDP, Mitrovic-Minic,Krishnamurti, and Laporte (2004) introduced the con-cept of double-horizon based heuristics for solving theDPDP with time windows, showing that the methodcan yield gains in route costs when compared withclassical (single) rolling horizon methods, but theimprovement tends to decrease as instances becomelarger. Mitrovic-Minic and Laporte (2004) presentedfour waiting strategies for vehicles (drive-first, wait-first, dynamic waiting, and the advanced dynamicwaiting). They concluded that in terms of total routelength, the proposed strategies outperform the com-monly used drive-first waiting strategy, making theadvanced dynamic waiting strategy the most efficient.

The dial-a-ride system can be modeled for designinga hybrid predictive control (HPC) scheme, consider-ing that potential rerouting of vehicles could affect thecurrent decisions, by analyzing the extra cost of insert-ing real-time service requests into predefined vehicleroutes while the vehicles are in service. In previousworks of our group, a formulation of the DPDP inan HPC by specifying the state space variables andmodels was presented (Sáez, Cortés, and Núñez 2008;Cortés, Sáez, and Núñez 2008; Cortés et al. 2009). Inthose works, two solution algorithms using geneticalgorithms (GA) and particle swarm optimization(PSO) were developed to solve real-time instances. Tothe best of our knowledge, no other hybrid predictivecontrol approaches for solving DPDP have been pro-posed in the literature using PSO and GA that can per-form real-time control on a dial-a-ride type of system.

In the literature, most of the applications usingsuch methods (namely, PSO and GA) solve staticcases, or vehicle routing problems (VRP) that nei-ther include explicitly the dynamic behavior of thesystem, nor a reasonable set of future realizationsof the stochastic demand. Specifically, GAs havebeen applied for various VRPs, considering differentchromosome representations and genetic operatorsdepending on the particular problem: Skrlec, Filipec,and Krajcar (1997), for the single vehicle capacitatedVRP; Haghani and Jung (2005), for the multivehi-cle DVRP with time-dependent travel time and softtime windows. Zhu et al. (2006) proposed an adaptedPSO algorithm to solve a static VRP with time win-dows. Jih and Hsu (1999) and Osman, Abo-Sinna,and Mousa (2005) presented a successful comparisonof the GA against dynamic programming in termsof computation time; the former solved the DVRPwith time windows and capacity constraints and thelatter solved a multiobjective VRP. Ant colony meth-ods, a metaheuristic inspired by the behavior of real

ant colonies, have also been applied to solve DVRP(Montemanni et al. 2005; Dréo et al. 2006).

In the current work, the main objective is to presentan efficient and systematic ad-hoc methodology tosolve the HPC formulation of the DPDP based ongeneric evolutionary algorithms. The solution schemewill help dispatchers of the dial-a-ride service, whereefficient real-time solutions are needed quickly tomake the system work. Specific implementations ofGA and PSO will result in several variants of thegeneric evolutionary algorithms. In addition, a mul-tiobjective approach for tuning the parameters of theproposed evolutionary algorithms is presented. Themultiobjective feature arises for deciding the parame-ters with the best trade-off between performance andcomputation time required for real applications. Adetailed analysis of the accuracy and computationaltime is conducted, which can be extended to othercomplex nonlinear engineering problems containingmixed integers and continuous variables.

In §2, a summary of the problem statement pro-posed by Cortés et al. (2009) is presented, which is thestarting point for the methodology based on genericevolutionary algorithms proposed in this work. In §3we present the ad-hoc methodology, the PSO and GAconfigurations used within, and the parameter tun-ing based on multiobjective optimization. Next, in §4a detailed computational analysis and comparison ofthe configurations of PSO and GA are carried outbased on simulations. Finally, conclusions, remarks,and further research are presented in §5.

2. Problem Statement2.1. General DescriptionIn the context of control theory, the notion of hybridsystems arises when the problem conditions are char-acterized by both continuous and discrete/integervariables. In the last two decades, hybrid systemshave been studied more intensely by researchers fromseveral study areas, such as computer science andautomatic control (see for example Bemporad andMorari 1999; Hegyi, De Schutter, and Hellendoorn2005; Karer et al. 2007a, b; Núñez et al. 2009). Specifi-cally, hybrid systems can be expressed as a nonlinearstate space model given by

x4k+ 15= f 4x4k51u4k551

y4k5= g4x4k51u4k551(1)

where x4k5 are the continuous and/or discrete (inte-ger) state space variables, u4k5 are the continuousand/or discrete input or manipulated variables, y4k5define the continuous and/or discrete system outputsand f 4·1 ·5, g4·1 ·5 are piecewise nonlinear functions. In

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 241

general, a hybrid predictive control controller mini-mizes the following generic objective function:

minu4k510001u4k+Nu−15

J 4u4k51 0 0 0 1u4k+Nu − 151 x4k+ 151 0 0 0 1

x4k+N51 y4k+ 151 0 0 0 1 y4k+N551 (2)

where J is an objective function, k is the current time,N is the prediction horizon, Nu is the control hori-zon, x4k+ t5, y4k+ t5 are the expected state space vec-tor and the expected system output at instant k + t,respectively, and 6u4k5T 1 0 0 0 1u4k + Nu − 15T 7T repre-sents the control sequence, which corresponds to theset of optimization variables. Once expression (2) isoptimized, only the first element of the control vectoru4k5 is used to update the system conditions, basedon the receding horizon methodology.

Conceptually, the HPC framework to model theDPDP incorporates stochasticity into the routing dis-patch rules by considering the impact of future reas-signments on the performance of already-scheduledcustomers (Cortés et al. 2009). The stochastic predic-tion allows the dispatcher to incorporate a more real-istic and robust measure of effective travel (waiting)time experienced by the users into the decision objec-tive function.

We consider a fleet of F vehicles, which are dynam-ically routed over an influence area A. The demandfor service is unknown and is revealed in real time.Quick routing and scheduling decisions are requiredto handle the demand with the available vehicles. Atany time k, each vehicle j is assigned to follow asequence of pickups and deliveries (control action),and can be represented by the function Sj4k5, wherethe ith element of the sequence represents the ith stopof vehicle j along its route, and wj4k5 is the total num-ber of stops. A stop is defined by a user who requiresthe service (it could be its pickup or delivery). Theinitial condition s0

j 4k5 corresponds to the position ofvehicle j at instant time k. The set of sequencesS4k5= 6S14k5

T 1 0 0 0 1 Sj4k5T 1 0 0 0 1 SF 4k5

T 7T associated withthe fleet of vehicles correspond to the control (manip-ulated) variable u4k5. The sequence of stops assignedto vehicle j at instant k, Sj4k5, is given by

Sj4k5=

s0j 4k5s1j 4k5000

swj 4k5

j 4k5

=

r1j 4k5 1 − r1

j 4k5 â 1j 4k5 label1

j 4k5000

000000

000

r ij 4k5 1 − r ij 4k5 â ij 4k5 labelij 4k5

000000

000000

rwj 4k5j 4k5 1 − r

wj 4k5j 4k5 â

wj 4k5

j 4k5 labelwj 4k5j 4k5

1 (3)

where r ij 4k5 is a binary variable defined as follows:

r ij 4k5=

{

1 if stop i belonging to Sj4k5 is a pick-up0 if stop i belonging to Sj4k5 is a delivery0

The first and second columns represent a pair iden-tifying if stop i is either a pickup [1 0] or a deliv-ery [0 1], respectively. The third column of the Sj4k5matrix represents the external travel time function,where â i

j 4k5 is the expected total travel time betweenpoints i − 1 and i plus the transfer operation delayat node i. For simulation purposes, we assume thatthe position of the vehicles can be measured or esti-mated at any moment. The last column labelij keepsthe passenger identifier, which is needed to check thefeasibility of the sequence in terms of precedence (thepickup must occur before the delivery of the sameclient).

When the dispatcher makes a decision, first the pas-sengers are assigned to a certain vehicle, and thenthey are inserted within the sequence of task thatthe vehicle follows. Figure 1 shows an example ofa sequence for a vehicle j . Users labeled as “1,”“2,” and “3” are assigned to vehicle j . The sequenceassigned considers to pickup user “label1

j 4k5 = 1”(coordinate 1+), then to pickup user “label2

j 4k5 = 3”(coordinate 3+), then to delivery user “label3

j 4k5 = 1”(coordinate 1−) and so on.

Vehicles will travel according to the predefinedsequence vector S4k− 15 while no new calls arereceived. When a new service request is received, thedispatcher calculates the control sequence in the nextstep S4k5 for the fleet of vehicles, adding the stopsindicated by the new customer. Then, each sequenceSj4k5 remains fixed during the whole time interval4k1 k+15, unless a vehicle reaches a predefined pickupor delivery stop during such an interval, in which caseits sequence will decrease in size showing that thescheduled task has been accomplished. Thus, in thisscheme the problem is formulated in terms of a vari-able time step (triggered by events), which representsthe time interval between two consecutive requests,

Sj (k − 1) ≡ �1+ → 3+ → 1– → 2+ → 2− → 3−�

1+

3+

1−

2+

2−

3−

vj

Figure 1 (Color online) Representation of a Sequence of Vehicle j

and Its Stops

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP242 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

that is to say, the predictive controller takes a routingdecision when a new call enters the system.

2.2. Predictive Dynamic Model and ObjectiveFunction

In the DPDP the state space variables include theclock time of departure T i

j 4k5 and the vehicle loadLij4k5, after vehicle j leaves stop i, both computed at

instant k. At this point, let us define, for each vehiclej ∈ V , the load and departure time vectors as follows:

Lj4k5=[

L0j 4k5 L1

j 4k5 000 Lwj 4k−15j 4k5

]T

4wj 4k−15+15×11 (4)

Tj4k5=[

T 0j 4k5 T 1

j 4k5 000 Twj 4k−15j 4k5

]T

4wj 4k−15+15×10 (5)

Thus, the set of state space variables for the entiresystem at instant k can be written as x4k5 =

6L4k5T 1T 4k5T 7T , where L4k5 and T 4k5 represent theset of load and departure time vectors, respectively,L4k5 = 6L14k5

T 1 0 0 0 1Lj4k5T 1 0 0 0 1LF 4k5

T 7T and T 4k5 =

6T14k5T 1 0 0 0 1 Tj4k5

T 1 0 0 0 1 TF 4k5T 7T . The output set y4k5 is

represented by the vector of observed departure timesof vehicles at stops, T 4k5.

In the HPC approach, a dynamic model basedon state space representation for both the vehicleload and the departure time at stops (as a func-tion of segment travel times) is considered (Cortéset al. 2009). Both the clock time of departure T i

j 4k5and the vehicle load Li

j4k5 are stochastic variables,because they depend on the evolution of the systemaffected by uncertain demand. Therefore, and in orderto work with deterministic values, reasonable estima-tions of the load and departure time vectors haveto be obtained. The prediction when a new requestoccurred is given by the expected value of the statespace vector for vehicle j , xj4k+ 15. Analytically,

xj4k+ 15 =

[

E8Lj4k+ 15/k9

E8Tj4k+ 15/k9

]

=

Lj4k+ 15

Tj4k+ 15

=

[

fL4Lj4k51 Sj4k55

fT 4Tj4k51 Sj4k55

]

∀ j = 11 0 0 0 1 F 1 (6)

where the functions fL and fT are the state spacemodel defined in Appendix A.

Once the optimization is conducted, the proposedvehicle sequences and state space variables must sat-isfy a set of constraints given by the real conditionsof the dial-a-ride system. Specifically, we must con-sider precedence and consistency constraints (pickuplocation goes before the delivery for the same client)in the solution of the HPC problem to generate onlyfeasible sequences.

The central dispatcher (controller) computes thecontrol decisions, by means of the minimization ofan objective function and predictions, for the entirecontrol horizon Nu =N (N is the prediction horizon),

i.e., Sk+Nk = 6S4k5T 1 0 0 0 1 S4k+N − 15T 7T , and applies the

updated sequence set S4k5 based on a receding hori-zon strategy. The optimization variables are the cur-rent sequence that incorporate the new request, andthe future sequences that incorporate the predictionof future requests. Thus, the objective function com-prises all of the scenarios h that consists of the sequen-tial occurrence of N −1 estimated future request, witha probability ph. The scenarios are obtained from his-torical data. Therefore, a reasonable prediction hori-zon N can be defined depending on the intensity ofunknown events that enter the system in real timeand on how good the prediction model is. If the pre-diction horizon is longer than one, the controller willadd the future behavior of the system into the cur-rent decision. The performance of the vehicle routingscheme will depend on how well the objective func-tion can predict the impact of possible rerouting dueto insertions caused by unknown service requests.Analytically, a mono-objective function for a predic-tion horizon N , can be written as follows:

minSk+Nk

N∑

t=1

F∑

j=1

H4k+t5∑

h=1

ph4k+ t54Cj4k+ t5−Cj4k+ t − 155 (7)

where

Cj4k+ t5 =

wj 4k+t5∑

i=1

[

Li−1j 4k+ t54T i

j 4k+ t5− T i−1j 4k+ t55

+ zij4k+ t54T ij 4k+ t5− T 0

j 4k+ t55]

h1 (8)

where k + t is the instant at which the tth requestenters the system, measured from instant k, H4k + t5is the number of requests’ patterns at instant k + t,ph4k + t5 is the probability of occurrence of the hthrequest pattern, associated with a trip pattern relatedto a specific pair of zones. The patterns and ph4k+ t5are calculated based on real-time or historical data,or a combination of both. This formulation is robustin the sense that different realizations of the stochas-tic demands are considered in the objective function.In Sáez, Cortés, and Núñez (2008) a zoning based onfuzzy clustering is designed, in which the estimationof trip patterns is systematized. The first term of (8) isrelated with the travel time of users, and the secondterm with the waiting time.

In Figure 2, the scheme for the HPC of the dial-a-ride system is presented. Note that the optimiza-tion problem associated with the HPC strategy will besolved using evolutionary algorithms as we explainin §3.

3. Solution AlgorithmsFor solving the optimization problem given by theobjective function defined in (7) within the pro-posed HPC strategy applied to the dial-a-ride system

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 243

Demandpredictor

ph(k + 1), H(k + 1)

Xj(k + 1)

Tj(k + 1)

Lj(k + 1)

HPC based onevolutionaryalgorithms

Dial-a-ridesystem

Sj(k)

�k

Figure 2 HPC Scheme for Controlling the Dial-a-Ride System

described in §2, we propose a new ad-hoc method-ology based on generic evolutionary algorithms.The generic evolutionary algorithms to be used aredescribed in Figure 3.

Evolutionary algorithms consist of a populationwhere each member represents or encodes a solutionof a given problem, and the quality of a solution (andindeed the member) is evaluated with a fitness func-tion, which is directly related to the objective func-tion. The members of the population evolve over thedifferent iterations according to the operators of thealgorithm (evolutionary stage). At the end of the algo-rithm, which, for instance, can be decided by reachinga maximum number of iterations, the solution to theproblem is the one stored as the best member of thepopulation (which may be the optimal or a subopti-mal solution). In this work, PSO and GA evolutionaryoptimization algorithms are considered.

These evolutionary algorithms are used inside thead-hoc methodology to solve the HPC of the dial-a-ride system (HPC-EA-DRS), and as such, they areused to find good insertion positions of the requests.

No

Initializeparameters

Initializepopulation

Obtain solutions

Evaluate fitness

Evolutionary stage

Endcondition?

(Sub) optimal solution

Figure 3 Generic Evolutionary Algorithm

The ad-hoc methodology for the HPC of the dial-a-ride system has been designed based on the particularstructure of the problem, and is presented next.

3.1. Methodology Based on EvolutionaryAlgorithms (EA)

In this section, we present the developed methodol-ogy based on evolutionary algorithms to solve thehybrid predictive control for the dial-a-ride systemfor the two-steps ahead prediction problem within theHPC formulation described in §2.

As shown in expression (7), the objective functionof the optimization problem depends not only on thecurrent assignment for pickup and delivery but alsoon the expected future requests. Then, in order to finda good assignment for a given incoming request, it isnecessary to compute optimal or near-optimal assign-ments for expected future requests in the next pre-diction step, assuming the sequence in the previousstep is known. Thus, a two-level algorithm is consid-ered; at each level, an evolutionary algorithm as thatschematically presented in Figure 3 is executed, wherethe solutions represent the insertion positions (or thesequence) for the incoming request.

The first level solves the optimization for the inser-tion positions of the incoming call based on the pro-posed objective function shown in (7). The secondlevel determines the positions associated with theexpected future requests, using the sequences gen-erated in the first level. The two-level procedure isconducted for every vehicle to determine the vehicleexperiencing the lowest insertion cost (based on theobjective function). The main reason for running theprocedure separately for each vehicle is because dif-ferent vehicles have different sequence lengths, whichmakes a consistent design of the solutions’ encodingdifficult when applied to different vehicles.

Each member of the population of the chosen evo-lutionary algorithm represents a candidate solutionfor the insertion positions of a request for a givenvehicle j . The insertion positions are defined as � =

4pu1de5, where pu represents the position of thepickup, and de is the position of the delivery. Thedecoded sequence based on (3) is

svj 4k5=

s0j 4k5

s1j 4k5000

spuj 4k5000

sdej 4k5000

swj 4k5

j 4k5

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP244 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

=

r0j 4k5 1−r0

j 4k5 â 0j 4k5 label0

j 4k5

r1j 4k5 1−r1

j 4k5 â 1j 4k5 label1

j 4k5000

000000

000rpuj 4k5 1−r

puj 4k5 â

puj 4k5 labelpuj 4k5

000000

000000

rdej 4k5 1−rdej 4k5 â dej 4k5 labeldej 4k5

000000

000000

rwj 4k5

j 4k5 1−rwj 4k5

j 4k5 âwj 4k5

j 4k5 labelwj 4k5

j 4k5

(9)

The particular encodings of the insertion positionsassociated with each method, as well as the repairstrategies designed to handle unfeasible solutions, aredefined in §3.2.

For a specific vehicle, the first level considers theinsertion positions of the incoming call; the fitnessfunction for the first level f1st level4k5 is given by theobjective function associated with the whole opti-mization problem, as defined in (7). As this objectivefunction considers the insertion costs of the expectedfuture requests, the second level of the algorithmmust be run inside the objective function compu-tation step of the first level in order to find near-optimal insertion positions for every expected futurerequest, assuming that the candidate solution for theincoming request being evaluated at the first level isassigned to such a vehicle. In addition, as the sec-ond level considers only the insertion positions ofone of the expected requests (h) provided a candidatesolution for the incoming request S�l 4k5, the secondlevel fitness, namely, f2nd level4k5, considers the follow-ing objective function for every candidate solution:

f2nd level4k5=

F∑

j=1

4Cj4k+ 25−Cj4k+ 155�S�l 4k51h0 (10)

Next, we describe the two-level HPC-EA-DRS algo-rithm that uses modules (see Figure 3) that in generalwill be different depending on the chosen evolution-ary algorithm (these modules are described in OnlineAppendix B (available as supplemental material athttp://dx.doi.org/10.1287/trsc.2014.0569).

The HPC-EA-DRS is as follows:Step (0). Call function InitializeParameters of the

selected evolutionary algorithm.Step (1). Suppose that the predefined sequence set

S4k− 15 is known. A new service request (call) entersthe system. The first level of the algorithm then startsand the first level counter is set to g1 = 0. The modulesInitPopulation and ObtainSequence are used to generatea set of n potential sequences S�l 4k5, with l2 1121 0 0 0 1n.Note that 6n/F 7 candidate solutions are associatedwith each vehicle, which means that the insertion ofthe new call falls in the specific vehicle sequence (F isthe fleet size).

Step (2). For each candidate sequence S�l 4k5,H4k+ 15 probable requests are considered. Then, thesecond level of the algorithm starts and the secondlevel counter is set to g2 = 0. InitPopulation and thenObtainSequence are applied to generate n potentialsequences S�m4k+ 15�h, m2 1121 0 0 0 1n, for each proba-ble request pattern h2 1121 0 0 0 1H4k+ 15.

Step (3). Provided that S�l 4k5 is known, evaluatethe fitness function f2nd level4k5, defined in (10), for allpotential feasible sequences S�m4k+15�h. If S�m4k+ 15�hor S�l 4k5 are unfeasible in terms of the capacity ofthe vehicle or precedence, penalize its fitness (if arepair method is considered, the unfeasible solutionsin terms of precedence constraints are repaired usingObtainSequence; thus, at this point the sequence is fea-sible, at least in precedence).

Step (4). If an ending criterion (maximum num-ber of iterations) is satisfied, then proceed to Step 5,and return best solutions for every probable request.Otherwise, use the function EvolutionaryStage toupdate the particles or individuals. By using thefunction ObtainSequence, the sequences S�m4k + 15�h,m2 1121 0 0 0 1n for h2 1121 0 0 0 1H4k + 15 are generatedg2 = g2 + 1. Go back to Step 3.

Step (5). At this step, the second level ends and wego back to the first level. Given that S�l 4k5 is knownand the solutions for S�m4k+15�h, h2 11 0 0 0 1H4k+15 areobtained in Step 3, the objective function f1st level4k5,in this case considering two steps ahead, is evaluatedand used as the fitness function. If S�l 4k5 is unfeasible,penalize it.

Step (6). If a termination criterion (maximum num-ber of iterations of Steps 2–6) is satisfied, then STOP,and return the best solution found. Otherwise, byusing the function EvolutionaryStage, the positions andthe velocities of all particles for l2 1121 0 0 0 1n areupdated. Using ObtainSequence, S�l 4k5, l2 1121 0 0 0 1n,are generated g1 = g1 + 1. Go back to Step 2.

Next, we present the different evolutionary algo-rithm strategies, which are used as a part of this ad-hoc algorithm.

3.2. Evolutionary Algorithms for theHPC-EA-DRS

The evolutionary algorithms used in the HPC-EA-DRS are described in this section, including its basicsand the actual operators according to the HPC formu-lation for the DPDP.

First, we highlight the PSO algorithm, which isbased on a particle swarm that represents a popu-lation of candidate solutions (Kennedy and Eberhart2001). The particles are initialized randomly, and thenthey move iteratively within the search space in orderto find new solutions. The particles have a fitness asso-ciated with the solution quality, usually given by theobjective function to be optimized. Each particle i is

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 245

characterized by a position, a velocity, its best previ-ous position, and the best position among all of theparticles belonging to the swarm. The particles areupdated (they move) according to their cognitive andsocial behavior. The above description of PSO wasoriginally conceived to solve continuous problems. Inthis work, we adapted the standard PSO configura-tion in order to add integer variables in the solution.

The second solver we explore is GA (Man, Tang,and Kwong 1998). It is based on biological evolu-tion, and uses inherited operators such as mutation,selection, and crossover. In particular, the optimiza-tion variables in the HPC formulation of DPDP arediscrete, and therefore the binary encoding is not nec-essary. In other words, the genes of the individuals(feasible solutions) are given directly by the integeroptimization variables. In addition, gradient compu-tations are not necessary as in conventional nonlinearoptimization solvers, which saves significant compu-tation time. Pseudocodes of both GA and PSO algo-rithms are presented in Online Appendix C.

Based on the standard PSO and GA methods, ninedifferent cases are considered in this work, depend-ing on the encoding and constraint handling methods.Two of these cases were previously proposed in Sáez,Cortés, and Núñez (2008) and Cortés et al. (2009), andthe other seven are new ad-hoc implementations.

In these algorithms, each member of the popula-tion represents a candidate solution for the insertionpositions of a request for a given vehicle. Each parti-cle or individual (particle and individual are the typ-ical nomenclature for candidate solutions in the PSOand GA literature, respectively) has two coordinates;the first represents the pickup position and the sec-ond represents the delivery position of insertion in thesequence of a single vehicle (no-swapping of stops isassumed as in Sáez, Cortés, and Núñez 2008; Cortés,Sáez, and Núñez 2008; Cortés et al. 2009). Particles orindividuals are encoded by x = 4x11x25, which repre-sent a candidate solution. PSO algorithms can be usedwith continuous or discrete particles whose coordi-nates are of the form x = 4x11x25 ∈ R or x = 4x11x25 ∈

N , respectively. In the case of GA, the coordinates ofeach individual are directly discrete, and therefore insuch a case we considered x = 4x11x25 ∈ N . Hereafterin the paper, R and N represent the sets of real andinteger numbers, respectively.

Recall that the insertion positions are defined as� = 4pu1de5, where pu represents the position ofthe pickup, and de is the position of the delivery.A feasible insertion requires three conditions. First,the pickup and delivery positions have to be con-sistent with the length of the sequence; second, thepickup position in the sequence will always precedethe delivery position; and third, the capacity con-straint must be satisfied.

For instance, if we use a real-valued particle rep-resentation for vehicle j , a particle is encoded as x =

4x11x25= 400713085. To decode such a particle, we sim-ply approximate each coordinate to the upper integerto obtain the insertion positions � = 4pu1de5= 41145.

In this paper, three strategies are used for dealingwith solutions that do not satisfy the precedence con-straint (pickup before delivery) that appear by thegeneration of individuals/particles of GA and PSO:

—Penalty approach (called P ). In this case, apenalization term is added to the objective functionwhen some solutions (individuals/particles) generateunfeasible sequences. Specifically, a hard penalizationis used by including a very high weighing factorin computing the fitness of the unfeasible solutions,regardless of the distance to the feasible region.

—Repair strategy (R1). The Baldwinian evolution(Hinton and Nowlan 1987) is considered to repairunfeasible individuals just for evaluation purposes,although they are not modified in the population.Then, the population is a mix of feasible and unfeasi-ble individuals.

—Repair strategy (R2). Lamarckian evolution(Ackley and Littman 1994) is used to repair an unfea-sible solution into a feasible one, which replaces theoriginal unfeasible option in the population. Then, allmembers of the population are feasible.

The details of the entire repair procedure arepresented in Online Appendix B, function Obtain-Sequence. Candidate solutions that do not satisfy thecapacity constraint are always penalized.

According to the encoding and handling options ofunfeasible solutions, six versions of PSO and threeversions of GA are used: P-PSO-R, R1-PSO-R, R2-PSO-R, P-PSO-N, R1-PSO-N, R2-PSO-N, P-GA, R1-GA, and R2-GA. The prefixes P, R1, and R2 indicatethe handling technique for unfeasible solutions basedon penalization P, R1 for Baldwinian repair, and R2Lamarckian repair, respectively. The suffixes R and Nindicate that solutions are encoded in a continuousor integer domain, respectively. R2-GA was proposedin Sáez, Cortés, and Núñez (2008) and R1-PSO-R wasproposed in Cortés et al. (2009).

3.3. Parameter Tuning for the HPC-EA-DRSSeveral studies have reported the optimization ofparameter tuning for PSO and GA. Most of thesestudies cover cognitive, social parameters, and iner-tia weights in case of PSO; mutation, crossover rates,and selective pressure parameters for GA. These stud-ies offer recommended parameter sets, recognizingthat these are problem dependent. Then, we performa sensitivity analysis of these parameters; however,the obtained standard deviations turned out to betoo large in order to draw any conclusions. Becauseof that, we decided to use a manually tuned set of

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP246 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

parameters for GA and a set of recommended param-eters for PSO.

With regard to the remaining parameters, namely,population size and number of generations, in the lit-erature we found studies that solve static problems(off-line mode, with no strict requirement on compu-tation time), where the number of iterations is chosenlarge enough for the algorithm to converge. Besides,the population size is chosen large enough to per-form a global search, without making the algorithmexcessively slow. The problem faced here is dynamic,so the computational burden is very relevant. In gen-eral, because of the complexity of the system, there isno time to let the algorithms converge, and then thenumber of particles and maximum number of itera-tions are critical to the algorithm performance.

In this section, we propose a methodology to tunethe remaining two parameters: the population sizeand the number of generations, by means of a mul-tiobjective approach. The goal of this approach is tofind the best set of combinations of these parame-ters in terms of quality of the solutions and computa-tion time. Since accuracy and computation resourcesare clearly opposite, a multiobjective approach is pro-posed to set the value of these parameters. The mul-tiobjective problem we solve is the following:

minn1g

8tn1g1 JPn1g9

s0t0 4n1g5 ∈ P1(11)

where n is the population size, g is the number ofgenerations, P is the search domain of n and g0 Themean computation time required for the optimiza-tion problem of each incoming request is tn1g , using apopulation size n and number of generations g. Themean total cost of the system is JPn1g (which is a mea-sure of the performance of the system), comprisingthe effective travel and waiting times for users andoperational costs of the operator during the wholeperiod of simulation, using a population size n andnumber of generations g. Given the stochastic natureof the algorithms, several replications are conductedconsidering every combination of parameters to findthe mean values of the total cost JPn1g and computa-tion time tn1g .

The solution of the multiobjective problem is aregion PS called Pareto optimal set. The set of allobjective function values corresponding to solutionsin the Pareto optimal set is known as Pareto opti-mal front PF = 84tni1gi1 JPni1gi 52 4n

i1 gi5 ∈ PS9. Figure 4shows a graphical example of the multiobjective prob-lem presented above, where the Pareto front is high-lighted.

In Figure 4, any solution Xi = 8ni1 gi9 that belongsto the Pareto optimal set is not dominated by anyother X j = 8nj1 gj9. For example, X1 = 8n11 g19 does

0.2 0.4 0.6 0.8 1.00.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Mean computation time tn, g

Mea

n to

tal c

ost J

Pn,

g

(n2, g2)

Pareto front

(n1, g1)

Figure 4 (Color online) Pareto Front Including Mean Total Cost andComputation Time

not belong to the Pareto optimal set as it is dominatedby X2 = 8n21 g29. Notice that the number of functionevaluations (n · g) is not the only determining factorfor the quality of the solutions. It also depends onthe design of the algorithms. In fact, larger popula-tion sizes are chosen to favor a global search, whilemore generations are used to get solutions that aremore refined. Then, there might be combinations ofpopulation sizes and number of generations that eval-uate few objective functions and reach better qualitysolutions than other combinations that evaluate morecandidate solutions. The former are optimal configu-rations in the Pareto set, and the latter are dominatedsolutions. Then, with the multiobjective approach, wecan find the optimal configurations that allow findingthe best solutions in the least possible computationaltime.

Once the Pareto set has been found, a single combi-nation must be chosen according to some criterion. Anatural one is to define a bound for the computation,and then the chosen combination of population sizeand number of generations is the one that finds thebest solutions in the allowed time.

4. Simulation Experiments4.1. Comparison of HPC-EA-DRS MethodologiesA discrete-event system simulation for a two-hourperiod is conducted in order to evaluate the per-formance of the proposed control methodology todynamically decide the best route of vehicles accord-ing to the incoming demand, and in particular, tocompare the different configurations of the consid-ered evolutionary algorithms (GA and PSO). Thescheme considers a fleet of nine small vehicles, eachwith space for four passengers. Dispatch and rout-ing decisions are made by the controller in real time.

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 247

7:00–7:59 A.M. 8:00–8:59 A.M.

(0, 9) (3, 9) (6, 9) (9, 9)

1 2

3 4

[Km]

(0, 9) (3, 9)

P\D

1

3

(6, 9) (9, 9) [Km]

2

0, 15

0, 15

4

0, 4

0, 3

P\D

1

3

1

0, 00

0, 14

3

0, 00

0, 12

4

0, 23

0, 51

(0, 9) (3, 9) (6, 9)

1 2

3 4

[Km]

(0, 9) (3, 9) (6, 9) (9, 9)

(9, 9)

[Km]

Figure 5 (Color online) Origin-Destination Demand Patterns

Although service requests are unknown, the aver-age system pattern is assumed known from historicaldata, obtained from the average demand measuredover the preceding week.

In the case study, four different future requestsare considered between 7:00 and 7:59 a.m., and fourmore between 8:00 and 8:59 a.m. Each of thesefuture requests triggers the discrete event model at aninstant � , and corresponds to the request that is opti-mized during the second level optimization (two-stepahead). Because the generated requests are just pre-dictions, the calculated “near-optimal” sequences forsuch requests are not used for the dispatcher, meaningthat only the sequence S4k5 for the effective currentcall is applied to the system.

The demand patterns and their probabilities areshown in Figure 5 and were determined by the zon-ing method used in Cortés et al. (2009).

We consider an urban service area of approximately81 km2. The vehicles are assumed to travel straightbetween stops at an average speed of 20 km/hr over

Table 1 Simulation Statistics for the Proposed Algorithms for Control the Dial-a-Ride System

Total cost statistics Computation time statistics

EA Mean Worst case Best case Standard Mean Worst case Best case Standardconfiguration [min] [min] [min] deviation [min] [s] [s] [s] deviation [s]

P-PSO-N 6181809 7121406 6137806 171039 70522 80218 70032 00303R1-PSO-N 6180900 7113601 6148708 132079 120509 140291 110686 00515R2-PSO-N 6180001 7104103 6153604 119027 110530 120399 100845 00335P-PSO-R 6184605 7112305 6154403 129052 80378 90336 70700 00310R1-PSO-R 6182306 7116808 6151005 156027 130468 140868 120888 00455R2-PSO-R 6181006 7107802 6152300 119027 110763 120495 100820 00335P-GA 6178703 7102204 6158200 90081 270010 280551 240897 00956R1-GA 6180300 7103904 6158100 107063 240764 260064 230413 00643R2-GA 6179608 6189805 6168908 43038 310751 330353 300330 00548

the region. The experiment is repeated 30 times foreach case of analysis (each configuration or PSO andGA), testing different demand requests that follow thepattern in Figure 5. The relevant indicators we mea-sure are the average total cost in terms of waitingtime, travel time, and operational cost for the entiretwo-hour period and the average computation timefor solving the optimization problem associated withthe insertion decision of every incoming request, asshown in Table 1. These tests were conducted using10 generations and 10 individuals in the evolution-ary algorithms used within the HPC-EA-DRS method.The considered configurations of evolutionary algo-rithms are (as introduced in §3.2): P-PSO-R, R1-PSO-R, R2-PSO-R, P-PSO-N, R1-PSO-N, R2-PSO-N, P-GA,R1-GA, and R2-GA.

Our routines for all proposed algorithms based onPSO and GA were coded in Matlab, including the dif-ferent configurations explained above. The equipmentutilized for the implementation of the routines is aniMac CPU Intel Core i3 (3.2 GHz, 4 GB).

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP248 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

Table 2 Comparison Between PSO-N and PSO-R Strategies

Performance change when shifting from a PSO-N to a PSO-R strategy

Extra computation Total costMethod time [%] increase [%]

P-PSO 11038 0040R1-PSO 7067 0021R2-PSO 2002 0015

We observe that in terms of performance, theGA strategies provide better solutions than the PSOstrategies. Nevertheless, GA takes twice as muchtime as PSO does, which supports our preferencefor PSO-based algorithms, mainly in case of project-ing this methodology to potential real implementa-tions. In fact, a real-time application might not justifythe marginal increase in the quality of the solutions(Table 1) when considering the trade-off betweensolution quality and computational burden.

In Table 2 a comparison of the encoding method forPSO is presented. This table shows that the PSO-Nconfigurations reach better solutions in shorter timesthan those obtained in the tests for PSO-R, underthe same constraint handling technique. Thus, for thestudied system, with 10 individuals and 10 gener-ations, we conclude that PSO-N configurations per-form better than PSO-R configurations. This result isreasonable considering the discrete nature of the opti-mization problem. In that sense, one might expect GAto perform well for this problem given its discreteencoding, although as mentioned above the compu-tation time required for PSO is significantly less thanthat required for GA, which can be a determinant inthe context of a real-time dispatch scheme where deci-sions need to be made fast enough in order to makethe system work.

In Table 3, a comparison between the constrainthandling techniques for PSO and GA is presented. Weobserve that for the PSO configurations, the schemeswith repair result in better solutions than those withpenalty, although they require longer computationtimes (Table 3). This happens because the stagesinvolved in procedures with repair are capable of test-ing more candidate solutions than those with penalty.It is not clear then which strategy is better, consid-ering the observed trade-off between computationaltime and objective function values. Note that thisbehavior does not apply to GA. The GA configurationwith penalty is the best in terms of objective function.In this case, this approach seems to guide the popula-tion toward the optimum in a better fashion than theother constraint handling techniques, which result inbetter solutions.

For this combination of population size and gener-ations, the previous results suggest that PSO strate-gies are more suitable for real-time application than

Table 3 Comparison Between Penalty and Repair Strategies

Performance change when shifting from a penalty to a repair configuration

Extra computation Total costMethod time [%] decrease [%]

R1-PSO-N 66030 0015R1-PSO-R 60075 0033R2-PSO-N 53028 0028R2-PSO-R 40040 0031R1-GA −8032 −0023R2-GA 17055 −0014

GA mostly because they run faster. In addition, dis-crete encoding seems to be the best approach, andLamarckian evolution shows better performance thanBaldwinian evolution.

In §4.2, the results of an optimal parameter tuningbased on multiobjective optimization are presentedfor the evolutionary algorithms used within the HPC-EA-DRS methodology. For illustrative purposes, wechose the R2-PSO-N and R2-GA to show the tuningmethodology. R2-PSO-N was used because it showedthe best performance in quality solution among thePSO options for the original parameters, and R2-GAwas chosen since it is the analog to R2-PSO-N amongthe GA approaches.

4.2. Parameter Tuning for PSO and GA in theHPC-EA-DRS Methodology

As stated before, R2-PSO-N and R2-GA have beenchosen for parameter tuning. The parameters con-sidered are the population size and number of gen-erations. We consider 50 replications of each case,in order to find the mean computation time andmean total cost for each combination of the param-eters. Both population size and number of genera-tions vary in the range between 5 and 20. The Paretofront and other suboptimal combinations of popula-tion sizes and generations for both methods are pre-sented graphically in Figure 6 and in detail in Table 4.

From Table 4 we appreciate that five out of the 11points in the Pareto set associated with the R2-PSO-Nconfiguration correspond to the smallest tested pop-ulation size 5. The quality of the solutions for thesepoints increases very fast with respect to the computa-tion time, whereas in combinations with larger popu-lations it increases very slowly. Moreover, the solutionwith 8 individuals and 11 iterations looks like a kneepoint. Note that the influence of the demand predic-tion, which is inherently stochastic, could cause someresults not to follow the expected behavior. For exam-ple, the combination of 20 individuals and 20 genera-tions should result in the best performance, which isnot the case as it does not appear in the Pareto front(Table 4).

For the R2-GA strategy, we cannot observe a clearknee point as before. In addition, the points in the

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 249

0 10 20 30 40 50 606,700

6,800

6,900

7,000

7,100

7,200

Mean computation time tn, g [s]

Mea

n to

tal c

ost J

Pn,

g [

s]Pareto fronts—9 vehicles

R2−PSO−N

R2−GA

(8, 11)

Figure 6 Comparison of the Pareto Fronts and Dominated Solutionsof Each Strategy

Pareto optimal set are uniformly distributed for dif-ferent population sizes (Table 5). This is very differ-ent from the case of R2-PSO-N, where almost half ofthe points correspond to the shortest population sizeavailable.

R2-PSO-N is faster than R2-GA for equal popu-lations and generations. This is because R2-PSO-Nevaluates fewer candidate solutions than R2-GA. Tounderstand this, note that the fitness of tested solu-tions are stored so that it is not necessary to computethem again when a solution is repeated. Besides, it isknown that PSO converges faster than GA (Nedjahand Macedo-Mourelle 2006), implying that some can-didate solutions are more likely to be repeated (as theproblem is discrete). Then, for a given population sizeand number of generations, PSO evaluates fewer can-didate solutions, and therefore it runs faster.

From Figure 6, we can also notice that for a givencomputation time value, we always find a R2-PSO-Ncase that performs better than any R2-GA case. Con-versely, for a given total cost value, we always find aR2-PSO-N case that is faster than any R2-GA imple-mentation. Finally, for any R2-GA case, we can always

Table 4 Optimal Parameters Found for R2-PSO-N

Pareto optimal set for R2-PSO-N

Population Number of Mean computation Mean totalsize generations time per request [s] cost [min]

5 5 30543 71181095 8 50047 61964085 11 60374 61905035 14 70312 61852025 17 80177 61782078 11 100240 6175108

11 20 180201 617380114 20 210693 617340017 11 180141 617460317 17 220658 617260420 11 200404 6173600

Table 5 Optimal Parameters Found for R2-GA

Pareto optimal set for R2-GA

Population Number of Mean computation Mean totalsize generations time per request [s] cost [min]

5 5 100846 61958038 5 160150 61874098 11 320039 61787028 14 380128 61785078 17 430661 6176001

11 5 200849 618370311 14 430776 617590714 5 240007 617990214 11 400042 617690217 14 480910 617580617 17 530824 617560517 20 580124 617560420 5 290215 617900220 14 500362 617570920 17 550171 6175604

find a R2-PSO-N case that runs faster and find a betterperformance as well. From these observations, we cansay that the R2-PSO heuristic is more efficient thanR2-GA-N for the described problem.

Finally, we have to say that in real implementa-tions of a dial-a-ride system, one necessary conditionis that the solution must be obtained quick enoughto become acceptable for the service provider. In thiscase, we can easily choose the parameters that reachthe best solutions in a reasonably short time. Thus,for example, in PSO, if we use a maximum decisiontime of 10 seconds for every request as a criterion, wecan choose five individuals and 17 generations, whichreaches the best mean total cost (6,782 min) amongthose reachable in a computation time that is less than10 seconds (8.18 s).

4.3. HPC-EA-DRS with Different Fleet SizeNext, in order to see how extendable the results toother configurations of dial-a-ride systems are, weconduct some tests under different scenarios. Theexperiment considers different fleet sizes. A total ofseven and 11 vehicles were tested to verify the prop-erties of the algorithms R2-GA and R2-PSO-N. Fig-ure 7 with the corresponding Tables 6 and 7 are theresults for the case study with seven vehicles, andFigure 8 with Tables 8 and 9 comprises the results of11 vehicles.

As can be seen in the results, in all cases the sys-tematic better performances of R2-PSO-N in termsof Pareto optimal solutions with respect to R2-GAremains. The case study selected in the previous sec-tion represents a good example to show the character-istics of the algorithms. We can expect similar resultsunder different fleet sizes for dial-a-ride set ups.

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP250 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

0 20 40 60 80 1009,200

9,400

9,600

9,800

10,000

10,200

10,400

Mean computation time tn, g [s]

Mea

n to

tal c

ost J

Pn,

g [

s]Pareto fronts—7 vehicles

R2−PSO−NR2−GA

Figure 7 Comparison of the Pareto Fronts and Dominated Solutionsof Each Strategy

4.4. Comparison of HPC-EA-DRS with aDouble-Horizon Heuristic

In this section, the proposed HPC-EA-DRS strategyis compared with a state-of-the-art heuristic methodbased on a double-horizon-based strategy (Mitrovic-Minic, Krishnamurti, and Laporte 2004) for solvingthe dynamic pickup and delivery problem. A double-horizon heuristic solves a dynamic problem assuming

Table 6 Optimal Parameters Found for R2-PSO-N

Pareto optimal set for R2-PSO-N (7 vehicles)

Population Number of Mean computation Mean totalsize generations time per request [s] cost [min]

5 5 30403 101343005 8 50100 91894075 11 60546 91775065 14 70742 91708015 17 80614 91505078 14 130185 91503088 17 140755 9147605

14 11 190352 914280314 17 240430 9138105

Table 7 Optimal Parameters Found for R2-GA

Pareto optimal set for R2-GA (7 vehicles)

Population Number of Mean computation Mean totalsize generations time per request [s] cost [min]

5 5 110133 91889045 8 200680 91587085 11 290734 91479078 5 180153 91603078 14 500666 9138001

11 5 250234 914860011 14 620077 913500014 5 300260 914590914 8 450711 913950714 11 570105 913720717 5 350917 9139805

0 10 20 30 40 50 605,200

5,250

5,300

5,350

5,400

5,450

5,500Pareto fronts—11 vehicles

Mean computation time tn, g [s]

Mea

n to

tal c

ost J

Pn,

g [

s]

R2−PSO−NR2−GA

Figure 8 Comparison of the Pareto Fronts and Dominated Solutionsof Each Strategy

that the distribution of the probable future requests isunknown. The heuristic method considers the neces-sity of making good short-term decisions withoutexperiencing adverse long-term effects. At the short-term stage, a static optimization is performed withthe objective of minimizing the cost of serving theincoming request (coming up in real time). At thelong-term stage, the aim is to provide enough room(slack) for making future insertions easier. The heuris-tic originally is designed for solving a DPDP versionwith time windows, and therefore, in the long-termthe goal is to maximize the slack time to make inser-tion easier. In our formulation however, there are noexplicit time windows; in this case the most impor-tant constraint is given by the capacity in the vehicles;therefore, our aim is in providing enough room tosatisfy future requests at a good level of service. The

Table 8 Optimal Parameters Found for R2-PSO-N

Pareto optimal set for R2-PSO-N (11 vehicles)

Population Number of Mean computation Mean totalsize generations time per request [s] cost [min]

5 5 40648 51473095 8 60419 51359015 14 90020 51341085 17 90979 51304098 11 110815 51300038 17 140610 5127006

11 5 90626 513200711 20 190112 512510114 14 180809 512590814 17 200083 512420914 20 210524 512340717 11 180791 512690817 17 210944 512300817 20 230492 512290820 11 200019 512450420 14 210923 512340320 20 240961 5122700

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 251

Table 9 Optimal Parameters Found for R2-GA

Pareto optimal set for R2-GA (11 vehicles)

Population Number of Mean computation Mean totalsize generations time per request [s] cost [min]

5 5 130643 51383015 8 210363 51359068 5 180313 5137202

11 5 220067 513360714 5 240149 513150714 8 310001 512620614 14 400579 512330117 5 260067 512780917 8 320338 512390617 11 370468 512370217 20 490976 512320820 5 270157 512680220 11 380227 512330720 14 420585 512320820 17 460725 512320820 20 500698 5123208

long-term optimization stage then will aim at penal-izing sequences where the vehicle load is beyond acertain threshold.

Based on preliminary testing, we realized that thebest results are obtained when the static problem issolved for the entire horizon, and the long-term goalacts as a penalization. In such a case, the objectivefunction for the double-horizon heuristic is given by

minSk+1k

F∑

j=1

4Cj4k+ 15− Cj4k55 (12)

with

Cj4k+ 15 = Cj4k+ 15+wj 4k+15∑

i=wj1 long−term

K max4Li−1j 4k+ 15

−Lmin + 11051 (13)

where Cj4k + 15 is the same specification as thatdefined in (8). The first term of (13) implies a staticoptimization of the incoming request and the sec-ond term penalizes the case of vehicle loads equal orgreater than a parameter Lmin, proportionally to bothK and Li−1

j 4k+ 15−Lmin + 1.For comparing this heuristic method with our

implementation, we run the case with nine vehiclesbased on the results of §4.2 corresponding to R2-PSO-N with eight individuals and 11 iterations (the kneepoint). For the double-horizon heuristic penalty, theparameter factor K and load threshold Lmin are prop-erly tuned; the long-term horizon starts at the 2ndhalf (rounded up) of the stops sequence. Table 10shows the different parameters (K and Lmin) tunedwith 2,000 randomly generated sequences. From thetable, the best parameters for the heuristic are givenby K = 10, Lmin = 4.

Table 10 Optimal Parameters Found for the Double-Horizon Heuristic

Parameter tuning for a double-horizon heuristic

Mean total cost [min]

K\Lmin 3 4

8 7127100 712360110 7126201 712260112 7126305 712630015 7130409 714270020 7148804 7190308

Table 11 Methods Comparison

Performances and computational times for the one-step-ahead method,R2-PSO-N and the double-horizon heuristic

Mean total cost Improvement Mean computationMethod [min] [%] time per request [s]

One-step-ahead 7127408 0 00034R2-PSO-N 6158007 9054 10017Double horizon 7117702 1034 00039

The mean performances and computational timesfor 2,000 randomly generated sequences are pre-sented in Table 11, considering that the one-step-ahead method, R2-PSO-N and the double-horizonheuristic with their optimal settings (by tuning thedifferent parameters of each specification) are usedto control the system. We can observe that bothR2-PSO-N and the double-horizon heuristic offeran improvement over the (myopic) one-step-aheadmethod; however, it is clear that the R2-PSO-N imple-mentation gain is considerably larger than that of thedouble-horizon heuristic (almost 10% against 1.34%).The extra improvement requires of course more com-putation resources mainly involved in the predictionof future events phase, as shown in the table. How-ever, the computation time spent by R2-PSO-N isstill within reasonable ranges for a real-time imple-mentation, which remains bounded and under con-trol because of the nature of the EA algorithms weimplemented.

5. Conclusions and Final RemarksIn this paper, we develop an ad-hoc methodology(HPC-EA-DRS) to solve the HPC formulation forthe dial-a-ride system based on generic evolutionaryalgorithms. The formalization of the methodology isvalid for a large variety of evolutionary algorithmsas well as other heuristics of similar characteris-tics, and is based on generic operations performedby the evolutionary algorithms. In this work, weshow nine specific implementations of the evolution-ary algorithms (PSO and GA), including repair andpenalty approaches that result in several variants of

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDP252 Transportation Science 49(2), pp. 239–253, © 2015 INFORMS

the generic operations in the HPC-EA-DRS to handlethe specific constraints of the problem behind the real-time operation of a dial-a-ride service provider. Usinga first combination of population size and number ofgenerations, we found that PSO with integer encod-ing and Lamarckian repair performs the best for thestudied applications. The results are reasonable con-sidering the embedded integral nature of most of thevariables that describe a dial-a-ride system under anHPC scheme, such as that previously proposed by theauthors.

With regard to the studied evolutionary algorithms(PSO and GA), we identified some configurations thatrun faster than others although they lose accuracy inperformance. Thus, the strategy that is suitable for aspecific application will strongly depend on the finalobjective pursued by the dispatcher. For instance, ifdecisions have to be made in a very short time (realtime), we probably will choose the fastest availableoption regardless of the accuracy of the obtained solu-tion (with different encoding and constraint handlingmethods).

With regard to the observed trade-off between accu-racy and computation, we proposed a multiobjectiveapproach for tuning the parameters of any strategyimplementation, considering computation time andperformance as the conflicting objectives. The outputof the analysis is the set of combination of parametersthat belong to the Pareto optimal set. This approach isapplied to the R2-PSO-N and R2-GA-based solutionmethods. The analysis allows comparing both strate-gies, as well as defining the optimal parameter settingaccording to a predefined criterion, such as the pres-ence of a knee point or a maximum allowed compu-tation time. It is shown that PSO strategies are moreefficient than those based on GA, because the formerare faster and more accurate. We believe that PSOperforms better than GA because the search heuris-tic of PSO is more suitable to the analyzed prob-lem, which is clearly reflected by the fact that PSOfinds better solutions, even evaluating fewer candi-dates. In addition, we tested our best implementationagainst a well-known heuristic method from the lit-erature, obtaining much better performance from ourmethod in case of adding prediction to the optimiza-tion scheme, at the expense of a higher (although con-trollable) computational cost.

In further research, we expect to test the method-ology and calibrate the parameters for real-size dial-a-ride configurations. Other methods and heuristics,such as differential evolution, will also be developedand contrasted with the best PSO implementations.Possible extensions in the way the continuous solu-tions are converted into an integer version are alsotopics to be investigated in the future.

Supplemental MaterialSupplemental material to this paper is available at http://dx.doi.org/10.1287/trsc.2014.0569.

AcknowledgmentsThe authors thank the financial support of CONICYT/FONDECYT/REGULAR/N�1141313, and the MillenniumInstitute “Complex Engineering Systems (ICM: P-05-004-F,CONICYT: FBO16).”

Appendix AThe vehicle load behavior is obtained using the followingstate space model:

E8Lj4k+ 15/k9= Lj4k+ 15=ALLj4k5+BL4Sj4k551

where the corresponding matrices in (7) are

BL4Sj4k554wj 4k5+15×1 = B2L · 4Sj4k5 ·B

1L53

AL =

1 0 · · · 01 0 · · · 0000

0000 0 0

0001 0 · · · 0

4wj 4k5+15×4wj 4k−15+153

B1L =

1−100

1×4

3 B2L =

0 0 0 · · · 01 0 0 · · · 01 1 0 · · · 0000

000000

0 0 0 01 1 · · · 1 0

4wj 4k5+15×4wj 4k5+150

Both the vehicle sequence matrix Sj4k5 and the expectedload vector Lj4k + 15, change their dimension dynamicallyby adding two rows when a new request occurs. There-fore, the matrix dimensions of AL1B

1L1B

2L are variable. The

matrix B1L is designed to remove the last two columns of the

sequence vector, which are not necessary for representingload changes from step k to step k+ 1. On the other hand,when a request is satisfied, the first row of the sequenceis eliminated. In fact, the adaptive behavior is captured bythese techniques of expansion and reduction of matrix size.

The vehicle departure time behavior is obtained by usingthe same methodology. Analytically,

E8Tj4k+ 15/k9= Tj4k+ 15=AT · Tj4k5+BT 4Sj4k551

whereBT 4Sj4k554wj 4k5+15×1 = B2

T · 4Sj4k5 ·B1T 53

AT =

1 0 · · · 01 0 · · · 0000

0000 0 0

0001 0 · · · 0

4wj 4k5+15×4wj 4k−15+153

B1T =

0010

4×1

3 B2T =

0 0 0 · · · 00 1 0 · · · 00 0 1 · · · 0000

000000

0 0 0 00 0 · · · 0 1

4wj 4k5+15×4wj 4k5+150

As in the load state space model, the matrices AT 1B1T 1B

2T

change their dimensions dynamically.

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.

Munoz-Carpintero et al.: Methodology Based on Evolutionary Algorithms to Solve DPDPTransportation Science 49(2), pp. 239–253, © 2015 INFORMS 253

ReferencesAckley DH, Littman ML (1994) A case for Lamarckian evolution.

Langton CG, ed. Artificial Life III (Addison-Wesley, Reading,MA), 3–10.

Bemporad A, Morari M (1999) Control of systems integrating logic,dynamics and constraints. Automatica 35:407–427.

Berbeglia G, Cordeau JF, Laporte G (2010) Dynamic pickup anddelivery problems. Eur. J. Oper. Res. 202(1):8–15.

Bertsimas D, Van Ryzin G (1991) A stochastic and dynamic vehi-cle routing problem in the Euclidean plane. Oper. Res. 39(4):601–615.

Bertsimas D, Van Ryzin G (1993a) Stochastic and dynamic vehiclerouting problem in the Euclidean plane with multiple capaci-tated vehicles. Oper. Res. 41(1):60–76.

Bertsimas D, Van Ryzin G (1993b) Stochastic and dynamic vehiclerouting with general demand and interarrival time distribu-tions. Appl. Probability 25:947–978.

Cortés CE, Sáez D, Núñez A (2008) Hybrid adaptive predictivecontrol for a dynamic pickup and delivery problem includingtraffic congestion. Internat. J. Adapt. Control Signal Processing22(2):103–123.

Cortés CE, Sáez D, Núñez A, Muñoz-Carpintero D (2009) Hybridadaptive predictive control for a dynamic pickup and deliveryproblem. Transportation Sci. 43(1):27–42.

Dial R (1995) Autonomous dial-a-ride transit—Introductory over-view. Transportation Res. Part C 3:261–275.

Dréo J, Pétrowski A, Siarry P, Taillard E (2006) Metaheuristics forHard Optimization Methods and Case Studies (Springer-Verlag,Berlin).

Eksioglu B, Volkan A, Reisman A (2009) The vehicle routingproblem: A taxonomic review. Computers Indust. Engrg. 57(4):1472–1483.

Gendreau M, Guertin F, Potvin J, Taillard E (1999) Parallel tabusearch for real-time vehicle routing and dispatching. Trans-portation Sci. 33(4):381–390.

Haghani A, Jung S (2005) A dynamic vehicle routing prob-lem with time-dependent travel times. Comput. Oper. Res. 32:2959–2986.

Hegyi A, De Schutter B, Hellendoorn H (2005) Model predictivecontrol for optimal coordination of ramp metering and variablespeed limits. Transportation Res. Part C 13:185–209.

Hinton G, Nowlan S (1987) How learning can guide evolution.Complex Systems 1:495–502.

Jaw J, Odoni A, Psaraftis H, Wilson N (1986) A heuristic algorithmfor the multivehicle many-to-many advance-request dial-a-rideproblem. Transportation Res. Part B 20:243–257.

Jih W-R, Hsu JYJ (1999) Dynamic vehicle routing using hybridgenetic algorithms. Proc. 1999 IEEE Internat. Conf. Robotics andAutomation (IEEE, Detroit), 453–458.

Karer G, Mušic G, Škrjanc I, Zupancic B (2007a) Hybrid fuzzy mod-eling for model predictive control. J. Intelligent Robotic Systems50:297–319.

Karer G, Škrjanc I, Mušic G, Zupancic B (2007b) Hybrid fuzzymodel-based predictive control of temperature in a batch reac-tor. Comput. Chemical Engrg. 31:1552–1564.

Kennedy J, Eberhart R (2001) Swarm Intelligence (Morgan KaufmannPublishers, Burlington, MA).

Kleywegt A, Papastavrou J (1998) The dynamic and stochasticknapsack problem. Oper. Res. 46(1):17–35.

Larsen A (2000) The dynamic vehicle routing problem. Unpub-lished doctoral thesis, Technical University of Denmark, Lyn-gby, Denmark.

Madsen O, Raven H, Rygaard J (1995) A heuristics algorithm fora dial-a-ride problem with time windows, multiple capacities,and multiple objectives. Ann. Oper. Res. 60:193–208.

Man K, Tang K, Kwong S (1998) Genetic Algorithms, Concepts andDesigns (Springer-Verlag, Berlin).

Mitrovic-Minic S, Laporte G (2004) Waiting strategies for thedynamic pickup and delivery problem with time windows.Transportation Res. Part B 38:635–655.

Mitrovic-Minic S, Krishnamurti R, Laporte G (2004) Double-horizonbased heuristics for the dynamic pickup and delivery problemwith time windows. Transportation Res. Part B 38:669–685.

Montemanni R, Gambardella L, Rizzoli A, Donati A (2005) Antcolony system for a dynamic vehicle routing problem. J. Com-binatorial Optim. 10(4):327–343.

Nedjah N, Macedo-Mourelle L (2006) Swarm Intelligent Systems(Springer-Verlag, Berlin).

Núñez A, Sáez D, Oblak S, Škrjanc I (2009) Fuzzy-model-basedhybrid predictive control. ISA Transactions 48(1):24–31.

Osman M, Abo-Sinna M, Mousa A (2005) An effective genetic algo-rithm approach to multiobjective routing problems (MORPs).Appl. Math. Computation 163:769–781.

Psaraftis H (1980) A dynamic programming solution to the singlemany-to-many immediate request dial-a-ride problem. Trans-portation Sci. 14(2):130–154.

Psaraftis H (1988) Dynamic vehicle routing problems. Golden BL,Assad AA, eds. Vehicle Routing Methods and Studies (North Hol-land, Amsterdam), 223–248.

Sáez D, Cortés CE, Núñez A (2008) Hybrid adaptive predictive con-trol for the multi-vehicle dynamic pickup and delivery prob-lem based on genetic algorithms and fuzzy clustering. Comput.Oper. Res. 35:3412–3438.

Skrlec D, Filipec M, Krajcar S (1997) A heuristic modification ofgenetic algorithm used for solving the single depot capacitatedvehicle routing problem. Proc. Intelligent Inform. Systems (IEEE,Los Alamitos, CA), 184–188.

Swihart M, Papastavrou J (1999) A stochastic and dynamic modelfor the single-vehicle pick-up and delivery problem. Eur. J.Oper. Res. 114:447–464.

Tarantilis C (2005) Solving the vehicle routing problem with adap-tive memory programming methodology. Comput. Oper. Res.32:2309–2327.

Thomas B, White C III (2004) Anticipatory route selection. Trans-portation Sci. 38(4):473–487.

Toth P, Vigo D (2003) The granular tabu search and its applica-tion to the vehicle-routing problem. INFORMS J. Comput. 15(4):333–346.

Xiang Z, Chu C, Chen H (2008) The study of a dynamic dial a rideproblem under time-dependent and stochastic environments.Eur. J. Oper. Res. 185:534–551.

Zhu Q, Qian L, Li Y, Zhu S (2006) An improved particle swarmoptimization algorithm for vehicle routing problem with timewindows. Proc. IEEE Congress on Evolutionary Comput. Internat.(IEEE, Vancouver), 1386–1390.

Dow

nloa

ded

from

info

rms.

org

by [

131.

180.

85.2

34]

on 1

8 M

ay 2

015,

at 0

6:02

. Fo

r pe

rson

al u

se o

nly,

all

righ

ts r

eser

ved.