Research Article Introducing the MCHF/OVRP/SDMP:...

15
Research Article Introducing the MCHF/OVRP/SDMP: Multicapacitated/Heterogeneous Fleet/Open Vehicle Routing Problems with Split Deliveries and Multiproducts Duygu Yilmaz Eroglu, Burcu Caglar Gencosman, Fatih Cavdur, and H. Cenk Ozmutlu Department of Industrial Engineering, Uludag University, Gorukle, 16059 Bursa, Turkey Correspondence should be addressed to Duygu Yilmaz Eroglu; [email protected] Received 25 February 2014; Revised 7 May 2014; Accepted 7 May 2014; Published 16 June 2014 Academic Editor: Chin-Chia Wu Copyright © 2014 Duygu Yilmaz Eroglu et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. In this paper, we analyze a real-world OVRP problem for a production company. Considering real-world constrains, we classify our problem as multicapacitated/heterogeneous fleet/open vehicle routing problem with split deliveries and multiproduct (MCHF/OVRP/SDMP) which is a novel classification of an OVRP. We have developed a mixed integer programming (MIP) model for the problem and generated test problems in different size (10–90 customers) considering real-world parameters. Although MIP is able to find optimal solutions of small size (10 customers) problems, when the number of customers increases, the problem gets harder to solve, and thus MIP could not find optimal solutions for problems that contain more than 10 customers. Moreover, MIP fails to find any feasible solution of large-scale problems (50–90 customers) within time limits (7200 seconds). erefore, we have developed a genetic algorithm (GA) based solution approach for large-scale problems. e experimental results show that the GA based approach reaches successful solutions with 9.66% gap in 392.8 s on average instead of 7200 s for the problems that contain 10–50 customers. For large-scale problems (50–90 customers), GA reaches feasible solutions of problems within time limits. In conclusion, for the real-world applications, GA is preferable rather than MIP to reach feasible solutions in short time periods. 1. Introduction Open vehicle routing problems (OVRPs) have gained much attention recently since they represent a problem type that needs to be solved by many production companies. In most industries, companies choose to use a hired vehicle fleet for distributing their goods. In this way, they do not have to endure the extra cost for returning vehicles since they use the resources of a third-party logistics (3PL) provider such as trucks or TIRs [1]. As consequences of such benefits, however, the companies have to accept some restrictions defined by the 3PL providers. For example, the 3PL provider can determine some particular routes considering the experiences of the drivers or the highway conditions. In addition, the 3PL provider can restrict the number of customers visited by a particular vehicle. Such specifications require some changes in the classical OVRP structure to make them more applicable for real-world problems. In this paper, we consider a real-world vehicle routing problem for a production company. e company produces two different types of products (multiple products—MP) with different volume and weight properties. e first product is a lightweight but large product, such as styrofoam, and the second product has opposite volume-weight characteristics, heavyweight but small product, such as tar. Since the com- pany uses a fleet of vehicles of a 3PL provider, the vehicles do not need to return to the depot, and thus, the underlying problem becomes an open vehicle routing problem (OVRP). e 3PL provider has a heterogeneous fleet of vehicles, such as trucks and TIRs (heterogeneous fleet—HF), with different volume and weight capacities (multiple capacitated—MC). In addition, on any route, the vehicles can serve two customers at most, and the demand of a customer can be supplied by dif- ferent vehicles (split delivery—SD). Based on these problem specifications, we classify our problem as a multicapacitated/ heterogeneous fleet/open vehicle routing problem with split Hindawi Publishing Corporation e Scientific World Journal Volume 2014, Article ID 515402, 14 pages http://dx.doi.org/10.1155/2014/515402

Transcript of Research Article Introducing the MCHF/OVRP/SDMP:...

Page 1: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

Research ArticleIntroducing the MCHFOVRPSDMPMulticapacitatedHeterogeneous FleetOpen Vehicle RoutingProblems with Split Deliveries and Multiproducts

Duygu Yilmaz Eroglu Burcu Caglar Gencosman Fatih Cavdur and H Cenk Ozmutlu

Department of Industrial Engineering Uludag University Gorukle 16059 Bursa Turkey

Correspondence should be addressed to Duygu Yilmaz Eroglu duyguerogluuludagedutr

Received 25 February 2014 Revised 7 May 2014 Accepted 7 May 2014 Published 16 June 2014

Academic Editor Chin-Chia Wu

Copyright copy 2014 Duygu Yilmaz Eroglu et al This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

In this paper we analyze a real-world OVRP problem for a production company Considering real-world constrains weclassify our problem as multicapacitatedheterogeneous fleetopen vehicle routing problem with split deliveries and multiproduct(MCHFOVRPSDMP) which is a novel classification of an OVRPWe have developed a mixed integer programming (MIP) modelfor the problem and generated test problems in different size (10ndash90 customers) considering real-world parameters AlthoughMIPis able to find optimal solutions of small size (10 customers) problems when the number of customers increases the problem getsharder to solve and thus MIP could not find optimal solutions for problems that contain more than 10 customers Moreover MIPfails to find any feasible solution of large-scale problems (50ndash90 customers) within time limits (7200 seconds) Therefore we havedeveloped a genetic algorithm (GA) based solution approach for large-scale problems The experimental results show that the GAbased approach reaches successful solutions with 966 gap in 3928 s on average instead of 7200 s for the problems that contain10ndash50 customers For large-scale problems (50ndash90 customers) GA reaches feasible solutions of problems within time limits Inconclusion for the real-world applications GA is preferable rather than MIP to reach feasible solutions in short time periods

1 Introduction

Open vehicle routing problems (OVRPs) have gained muchattention recently since they represent a problem type thatneeds to be solved by many production companies In mostindustries companies choose to use a hired vehicle fleet fordistributing their goods In this way they do not have toendure the extra cost for returning vehicles since they usethe resources of a third-party logistics (3PL) provider such astrucks or TIRs [1] As consequences of such benefits howeverthe companies have to accept some restrictions defined by the3PL providers For example the 3PL provider can determinesome particular routes considering the experiences of thedrivers or the highway conditions In addition the 3PLprovider can restrict the number of customers visited by aparticular vehicle Such specifications require some changesin the classicalOVRP structure tomake themmore applicablefor real-world problems

In this paper we consider a real-world vehicle routingproblem for a production company The company producestwodifferent types of products (multiple productsmdashMP)withdifferent volume and weight properties The first product isa lightweight but large product such as styrofoam and thesecond product has opposite volume-weight characteristicsheavyweight but small product such as tar Since the com-pany uses a fleet of vehicles of a 3PL provider the vehiclesdo not need to return to the depot and thus the underlyingproblem becomes an open vehicle routing problem (OVRP)The 3PL provider has a heterogeneous fleet of vehicles suchas trucks and TIRs (heterogeneous fleetmdashHF) with differentvolume andweight capacities (multiple capacitatedmdashMC) Inaddition on any route the vehicles can serve two customersatmost and the demand of a customer can be supplied by dif-ferent vehicles (split deliverymdashSD) Based on these problemspecifications we classify our problem as a multicapacitatedheterogeneous fleetopen vehicle routing problem with split

Hindawi Publishing Corporatione Scientific World JournalVolume 2014 Article ID 515402 14 pageshttpdxdoiorg1011552014515402

2 The Scientific World Journal

deliveries andmultiproducts (MCHFOVRPSDMP) whichto the best of our knowledge has not yet been considered inprevious studies

Since theOVRP consists of Hamiltonian paths we shouldfind the best Hamiltonian path for each set of customersassigned to a vehicle for the optimal solution [2] There-fore it can be concluded that the OVRP has an NP-hardstructure because of the NP-hard Hamiltonian path sub-problemsMany researchers have developed various heuristicapproaches to solve the OVRP Brandao [2] developed a tabusearch algorithm for the OVRP to generate good solutionsin short time periods where the researcher obtained betterresults using a random tabu tenure instead of a fixed one [2]Zachariadis and Kiranoudis [3] developed a novel approachto produce initial solutions forOVRPsThe researchers testedtheir metaheuristic on some well-known OVRP instanceswhere improvements on several best-known solutions fromprevious studies were presented [3] Eksioglu et al [4] pre-sented an extensive literature review for the vehicle routingproblem (VRP) classified the VRP studies according to theirspecifications and built the taxonomy of the VRP literatureAccording to the study the VRP literature was categorizedinto five main groups that contain 106 different subcate-gories They discovered that the number of the VRP studiesincluding load specific and heterogeneous vehicles has beenthree times less than the others We note that there havebeen a few VRP studies that contain heterogeneous vehiclesin the literature In this study we consider an OVRP withheterogeneous fleet where we evaluate the loading processusing the volume and weight coefficients of the productswhich has not yet been studied in detail so far

Capacitated open vehicle routing problems (COVRPs)have also been studied by various researchers Among theseLetchford et al [5] formulated the first exact algorithm andSimbolon [6] developed a direct search algorithm for theCOVRP In our study we additionally consider the volumeand weight capacities (multicapacitatedmdashMC) of a hetero-geneous fleet (HF) of vehicles Just like the multicapacitatedproblems the heterogeneous fleet of vehicles is also commonin real-world transportation problems since a smaller vehiclewith sufficient capacity would always be preferable to a largerone which beyond decreasing the transportation cost is alsoa basic principle of green logistics Some studies considereddifferent variations of these problems such as Gendreau et al[7] and Taillard [8] who developed a tabu search algorithmand a column generation method to solve the heterogeneousfleet vehicle routing problem (HVRP) respectivelyThe studyof Tavakkoli-Moghaddam et al [9] additionally consideredthe concept of split service in the capacitated vehicle routingproblem (CVRP) where they showed that splitting demandimplies a higher capacity utilization In split delivery cus-tomers might be visited by more than one vehicle similarto some real-life scenarios especially in the existence of a3PL provider Many researchers have studied the vehiclerouting problems with split delivery properties The studyof Archetti and Speranza [10] presented a survey of splitdelivery vehicle routing problems (SDVRP) that includes thedescription of the SDVRP its properties exact algorithmsand heuristics and its variants and applications None of

the above studies however considered the open vehiclerouting problem (OVRP) with a multiple capacitated het-erogeneous fleet and multiple products with split deliveriestogether as in our study

This paper is organized as follows In Section 2 amixed-integer programming (MIP) model is formulatedIn Section 3 the proposed hybrid genetic-local search isdescribed Computational results and conclusions are pre-sented in Sections 4 and 5 respectively

2 Mixed-Integer Programming Model

In this section we present a mixed-integer programmingmodel for the MCHFOVRPSDMP A real-world problemof production company with its real-life assumptions wasconsidered for themodel As mentioned before the companyuses a heterogeneous fleet of vehicles of a 3PL providerfor distribution of goods and the 3PL provider allows thevehicles to serve two customers at most The 3PL providerdetermines the transportation cost considering the targetcustomer In addition if a vehicle supplies the demand ofan intermediate customer along with the target customerthe 3PL provider charges a stopping cost which depends onthe vehicle type We therefore calculate the total cost of thedistribution process considering the transportation and thestopping cost of the vehicles together which is aimed tobe minimized in the MIP model In our experiments weconsider two different types of products however we definethe type of materials with ldquo119898rdquo index and we allow MIP tomodel the problems with multiple types of materials (morethan two) simultaneouslyThe notation of theMIPmodel canbe found in Table 1 Consider

min 119911 = sum

(119894119895119896)isinSet1|119894=119895

119862119895119896 lowast 119910119894119895119896 + sum

(119894119895119896)isinSet1|119894 = 119895

119865119894119896 lowast 119910119894119895119896 (1)

sum

(119894119895119896)isinSet1|119894=119895

119910119894119895119896 le 1 forall119896 isin 119870 (2)

sum

119896isin119870

119910119894119895119896 le 1 forall119894 119895 isin 119868 | 119894 = 119895 (3)

sum

119894isin119868|(119894119895119896)isinSet1119894 = 119895

119910119894119895119896 le 119910119895119895119896 forall119895 isin 119868 119896 isin 119870 (4)

119909119894119895119896119898 le 119871 lowast 119910119894119895119896 forall119894 119895 isin 119868 119896 isin 119870 119898 isin 119872 (5)

sum

119895isin119868

sum

119896isin119870

119909119894119895119896119898 = 119863119894119898 forall119894 isin 119868 119898 isin 119872 (6)

sum

119894isin119868

sum

119895isin119869

sum

119898isin119872

119882119898 lowast 119909119894119895119896119898 le 119866119896 forall119896 isin 119870 (7)

sum

119894isin119868

sum

119895isin119869

sum

119898isin119872

119881119898 lowast 119909119894119895119896119898 le 119875119896 forall119896 isin 119870 (8)

119909119894119895119896119898 ge 0 and integer (9)

119910119894119895119896 isin 0 1 forall119894 isin 119868 119895 isin 119868 119896 isin 119870 (10)

The Scientific World Journal 3

Table 1 Sets indices parameters and variables for MIP

Indices (for sets see below)119894 119895 Index of customers 119894 119895 isin 119868119896 Index of vehicles 119896 isin 119870119898 Index of product types119898 isin 119872

Parameters

119877119894119895

0-1 matrix for connections of customers 119877119894119895 is 1 if there is a connection between customer 119894 andcustomer 119895

119863119895119898 The demand of productm for customer 119895119862119895119896 Transportation cost for vehicle 119896 while traveling to target city 119895119865119894119896 Stopping cost for vehicle 119896 on customer 119894119882119898 Weight coefficient for product119898119881119898 Volume coefficient for product119898119866119896 Weight capacity for vehicle 119896119875119896 Volume capacity for vehicle 119896119871 Large number

Sets119868 The set of customers 119868 = 1 2 119868max119870 The set of vehicles 119870 = 1 2 119870max119872 The set of product types119872 = 1 2 119872maxSet1 (119894 119895 119896) | 119894 isin 119868 119895 isin 119868 119896 isin 119870 119877119894119895 = 1

Decision variables119909119894119895119896119898 The quantity of product119898 that is left on customer 119894 while vehicle 119896 is travelling to target customer 119895

119910119894119895119896

1 if vehicle 119896 stops on customer 119894 while traveling to target customer 119895

0 otherwise

The objective function (1) aims for the minimization oftotal cost which includes the transportation and the stoppingcost of vehicles To reduce the size of the solution spacewe determine the maximum number of vehicles for theproblem and use this knowledge as a parameter for theindex of vehicles Constraint (2) ensures that each vehiclehas only one target customer at most Constraint (3) showsthat each customer is decided as a target by only onevehicle at most Constraint (4) guarantees that a vehiclecan serve two customers at most one if applies is theintermediate customer and the other is the target customerThe relationship between decision variables has been set byconstraint (5) Constraint (6) ensures that the demands ofcustomers are met by the vehicles Constraints (7) and (8)represent the capacities of the vehicles in terms of weightand volume respectively Finally (9) and (10) present thedefinition space of the decision variables

Since the definition of the problem is unique no bench-mark for this type of problem is available We thereforegenerate random samples for evaluating the performance ofthe MIP model which are detailed in Section 41 Althoughwe can find the solutions with smaller gaps of small-sizeproblems (10ndash50 customers) using MIP it is not able to findany feasible solution of large-size real-world-like problems(60ndash90 customers) within time limits (7200 s) To handlelarge-size problemswe develop a genetic algorithmwith localsearch which is detailed in Section 3

3 Hybrid Genetic-Local Search Algorithm

A genetic algorithm (GA) is a search technique based on thebiological process of evolution theory that mimics naturalselection One of the important issues in GA is the geneticrepresentation (string of symbols) of each solution in apopulation The string is referred to as chromosome andthe symbols as genes [11] After generation of the initialpopulation and determination of the fitness function valuesfor each chromosome GA manipulates the selection processby operations such as reproduction crossover and mutation[11] The introduction of GA dates back to 1970s [12] Asthe searching technique of genetic algorithms (GAs) [13]became popular in the mid-1980s many researchers startedto apply the approach to different types of problems To dateGA has been applied to many different types of problemsincluding vehicle routing problems In this paper we alsohave developed a hybrid genetic-local search algorithm forthe MCHFOVRPSDMP problem which is detailed in thenext section The proposed local search algorithms imple-mented in C are performed during the fitness functioncalculation process In order to eliminate the infeasible chro-mosome structure we were mainly inspired by our previousalgorithms related to scheduling problem in the literature[14 15] The novel characteristic of the studied problem isthe capacity constraint The algorithm is not only appliedto logistic area but also included capacities of vehicles and

4 The Scientific World Journal

CustomersVehicle typesRandom keys

First section Second section

Number of suborders1

1

2 2

2 1 2 1 2

AA BB

099 020 030 054 080 044 011 026 046 043 092 063

CC

Figure 1 Representation of a chromosome in the GA

orders The developed new approach related to capacity issueis integrated into the algorithm successfully and is explainedin the next section

31 Genetic Algorithm for Order Splitting Property

311 Encoding Scheme In the proposed GA a chromosomeis mainly designed by a string of random numbers that areuniformly generated between 0 and 1 These random keysshow the transportation route for each vehicle In additioneach chromosome also carries the number of suborders foreach customer It would be necessary to note that this chro-mosome structure is used in our previous study [14] Figure 1illustrates a sample chromosome In the first section of thechromosome the string contains 119899 (number of customers)segment Each segment is further divided into 119898 (numberof vehicle types) part and then each part for vehicle typesis divided into genes The number of genes for vehicles istwo in this problem which shows the maximum number ofsuborders Note that the chromosome structure is convenientto increase the maximum suborder quantities To decide theexact number of suborders for each customer it is necessaryto check the second section of the chromosome In thesecond section of the chromosome the string contains 119899

(number of customers) segment which shows the number ofsuborders for each customer These numbers might be 1 or 2for this problem and they are generated randomly to reflectthe variable suborder environment For the chromosomestructure in Figure 1 we have 2 vehicle types and 3 customersFor 119862119906119904119905119900119898119890119903119860 since the number of suborders equals 2 asin the second sectionrsquos first segment of the chromosomethe smallest two random numbers will be selected fromthe first section of the chromosome among all the numbersgenerated for 119862119906119904119905119900119898119890119903119860 The selected values (02 and 03for 119862119906119904119905119900119898119890119903119860) are in bold in Figure 1 It means that thefirst order of119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198901

and the second order of 119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198902 Similarly the number of suborders is 2 for119862119906119904119905119900119898119890119903119861 and they will be transported by 119881119890ℎ1198941198881198971198901198791199101199011198902The number of suborders is 1 for 119862119906119904119905119900119898119890119903119862 and it will betransported by 119881119890ℎ1198941198881198971198901198791199101199011198901

312 Fitness Function In the proposed algorithm the chro-mosome structure defines the routes for each vehicle typeBut we also need to integrate capacity conditions into thealgorithm Figure 2 shows the outline of integration processWe consider the volume and weight constraints of vehiclesas well as the demands of each customer After obtain-ing the routes for the customersmdashwhich will be explainedin detail shortly after as in Figure 3mdashwe need to iterate

the integration process in two phases as shown in Figure 2 Inthe first phase if the demands of customers are greater thana full load vehicle then the number of fully loaded vehiclesand costs are calculated In the second phase of the algorithmthe remaining demands of customers are trying to be con-solidated to maximize vehiclesrsquo utilizations After assigningthe first demand to the vehicle if the capacity of the existingvehicle is enough route is the same and the number ofcustomers on the route is less than two then the next demandcan be loaded into the vehicleThis loading demandmight bethe suborder of the same product the demand of the secondproduct of the same customer or the demand of the nextcustomer on the routeOtherwise the newvehicle is requiredTo explain how the algorithm obtains the routes for thecustomers and calculate total costs the example in Figure 1 isconsidered According to the chromosome shown in Figure 1the number of suborders for 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 and119862119906119904119905119900119898119890119903119862 is determined as two two and one respectively119881119890ℎ1198941198881198971198901198791199101199011198901 will supply the 1st suborder of 119862119906119904119905119900119898119890119903119860 andthe suborder of 119862119906119904119905119900119898119890119903119862 119881119890ℎ1198941198881198971198901198791199101199011198902 will supply the 1stand the 2nd suborders of 119862119906119904119905119900119898119890119903119861 and the 2nd suborderof 119862119906119904119905119900119898119890119903119860 The sequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198901

will be determined by the random key numbers (020 and043) Increasing arrangement of these random numbers willdesignate 119881119890ℎ1198941198881198971198901198791199101199011198901rsquos customer sequence Similarly thesequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198902 will be determinedby the random key numbers (011 026 and 030) Figure 3shows the vehicle types and the customers for the examiningproblem According to Figure 2 we need to calculate the fullload vehicles for each customerrsquos suborders considering twotypes of products Then for the remaining loads we need tocombine the vehicles on the same route For the consideredexample three customers and two vehicle types we willignore the vehicles which are fully loaded in order to simplifythe explanation

As mentioned earlier two types of costs are consideredin the problem stopping costs and transportation costs foreach type of vehicle For the considered example each vehicletypersquos route and customersrsquo loads (information about splittingor not splitting) are shown in Figure 3 Assume that Table 2shows the stopping costs for each type of vehicle and Tables3 and 4 present the transportation costs of 119881119890ℎ1198941198881198971198901198791199101199011198901

and 119881119890ℎ1198941198881198971198901198791199101199011198902 respectively Transportation costs fromthe depot to the corresponding customers are shown in thefirst rows of Tables 3 and 4 The total cost is calculated byutilizing the transportation and stopping costs Consideringthe first vehicle of 119881119890ℎ1198941198881198971198901198791199101199011198901 the transportation costfrom depot to 119862119906119904119905119900119898119890119903119860 is 60 and the stopping cost of119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 so the partial total cost is 60 + 40 =100 and then the same vehicle transports from 119862119906119904119905119900119898119890119903119860

The Scientific World Journal 5

-Start-For all genes in the

chromosome

Load the products into the vehicles

one vehicle sufficient for demands

of customer ( volume

weight)

Calculate the quantity of full

load vehicle

Update the rest of demands for customer

and update total transportation costs

Load the frst product into the new vehicle and update

total transportation costYes

Yes

Yes

Yes

Yes

No

No

No

No

No Determining the number of

full load vehicle

Conjunction the demands on the same

route

the examining

gene the frst gene

Update the volume weight of the vehicle

Is the vehicle capacity enough for the

second product Are the customersthe same

Update total transportation cost

Update the volume weight of the vehicle

Assign a new vehicle pdate the volume weight of the vehicle and update total transportation cost

-End-

the route the same with the existing vehiclersquos route and there enough capacity

the number of customer on the route (For each product)

U

less than two

Is

Is

Is

Is

Consider

And is

s

Figure 2 Determining the number of vehicles and their loads

to 119862119906119904119905119900119898119890119903119861 and the transportation cost is 20 Similarly thestopping cost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 It means that the totalcost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 100 + 20 + 40 = 160 The total cost of119881119890ℎ1198941198881198971198901198791199101199011198902 is greater than the total cost of 119881119890ℎ1198941198881198971198901198791199101199011198901Our aim is to minimize the maximum total cost As seen

in Figure 3 the fitness value of chromosome in Figure 1 is395 The structure of chromosome will be modified withthe aim of finding the routes with minimum cost utilizinglocal search The details of the GA-based local search algo-rithm are explained in Section 32 After the algorithm runs

6 The Scientific World Journal

Vehicle type1

Vehicle type2

Customer

Customer

A1 suborder

B1 and 2 suborder CustomerA2 suborder

Total cost100 160 220 395

CustomerCsuborderst

st 2nd nd

Figure 3 Resulting loading schema for chromosome in Figure 1

Table 2 Stopping costs for each vehicle type

119865119894119896 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

119881119890ℎ1198941198881198971198901198791199101199011198901 40 40 40119881119890ℎ1198941198881198971198901198791199101199011198902 80 80 80

Table 3 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198901

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 60 70 90119862119906119904119905119900119898119890119903119860 mdash 50 20119862119906119904119905119900119898119890119903119861 50 mdash 40119862119906119904119905119900119898119890119903119862 20 40 mdash

we obtain the total cost for the chromosome The populationsize determines the number of different chromosomes andfitness function values

313 Genetic Operators After generating the initial popula-tion the operations of selection crossover and mutation areiteratively used to search for the best solution

(i) Selection chromosomes are selected into the matingpool based on the random selection method [16] Inthis method parents are randomly chosen from thepopulation

(ii) Crossover the crossover operator with crossover rate119875119888 is amethod for sharing information between chro-mosomes We use single point crossover approach inour algorithm which randomly chooses the crossingpoint and exchanges the genes between two parentsto create the offspring We use separate crossoveroperations in the first and second phases Figure 4illustrates the crossover operation

(iii) Mutation the mutation operator is used to preventthe algorithm converging to a local optimum Inour algorithm a mutation operation is performedas follows Mutation operation is applied to therandomly selected chromosomes of the populationaccording to the mutation rate (119875119898) The value ofrandomly selected gene of the selected chromosomeis replaced with a new random number By applyingthe operation to all selected chromosomes we can

Table 4 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198902

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 120 140 160119862119906119904119905119900119898119890119903119860 mdash 95 50119862119906119904119905119900119898119890119903119861 95 mdash 80119862119906119904119905119900119898119890119903119862 50 80 mdash

obtain new chromosomes with new routes and fitnessfunction values The fitness value might be better orworse or remain same after applying the operator Anexample for our problem is shown in Figure 5

To enhance the performance of the genetic algorithm weuse a local search algorithm in the literature [14] which isdetailed in the next subsection

32 Local Search Integrating one of the local search tech-niques within GA will commonly generate more competitiveresults For instance the integrating dominance propertiesmethod that was originally developed by Chang and Chen[17]was afterward applied successfully tomachine schedulingproblem [15] In the other paper of researchers whichincludes job splitting property in scheduling problem [14] anadvance approach is adopted And in this paper finally thealgorithm adopted more complex aforementioned logisticsproblemwhich contains capacity constraints By searching allpossible alternatives in a chromosome we aim to reduce thetotal cost After this process the routes will be determined

We consider all alternative situations for the local searchas summarized in the Appendix The proposed intervehicletype (interchange) and intravehicle type (exchange) customerchanges are explained in Section 321 and the calibration ofrandom numbers are explained in Section 322The notationused in the pseudocode and some explanations on the localsearch operation are as follows

(i) 119892 the selected genes from the chromosome areordered by vehicle type and then by customersequence The value of 119892 shows the total number ofthese genes Each individual gene contains vehicletype and customer features Figure 6 explains a sam-ple gene structure of an examplewith seven customers

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 2: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

2 The Scientific World Journal

deliveries andmultiproducts (MCHFOVRPSDMP) whichto the best of our knowledge has not yet been considered inprevious studies

Since theOVRP consists of Hamiltonian paths we shouldfind the best Hamiltonian path for each set of customersassigned to a vehicle for the optimal solution [2] There-fore it can be concluded that the OVRP has an NP-hardstructure because of the NP-hard Hamiltonian path sub-problemsMany researchers have developed various heuristicapproaches to solve the OVRP Brandao [2] developed a tabusearch algorithm for the OVRP to generate good solutionsin short time periods where the researcher obtained betterresults using a random tabu tenure instead of a fixed one [2]Zachariadis and Kiranoudis [3] developed a novel approachto produce initial solutions forOVRPsThe researchers testedtheir metaheuristic on some well-known OVRP instanceswhere improvements on several best-known solutions fromprevious studies were presented [3] Eksioglu et al [4] pre-sented an extensive literature review for the vehicle routingproblem (VRP) classified the VRP studies according to theirspecifications and built the taxonomy of the VRP literatureAccording to the study the VRP literature was categorizedinto five main groups that contain 106 different subcate-gories They discovered that the number of the VRP studiesincluding load specific and heterogeneous vehicles has beenthree times less than the others We note that there havebeen a few VRP studies that contain heterogeneous vehiclesin the literature In this study we consider an OVRP withheterogeneous fleet where we evaluate the loading processusing the volume and weight coefficients of the productswhich has not yet been studied in detail so far

Capacitated open vehicle routing problems (COVRPs)have also been studied by various researchers Among theseLetchford et al [5] formulated the first exact algorithm andSimbolon [6] developed a direct search algorithm for theCOVRP In our study we additionally consider the volumeand weight capacities (multicapacitatedmdashMC) of a hetero-geneous fleet (HF) of vehicles Just like the multicapacitatedproblems the heterogeneous fleet of vehicles is also commonin real-world transportation problems since a smaller vehiclewith sufficient capacity would always be preferable to a largerone which beyond decreasing the transportation cost is alsoa basic principle of green logistics Some studies considereddifferent variations of these problems such as Gendreau et al[7] and Taillard [8] who developed a tabu search algorithmand a column generation method to solve the heterogeneousfleet vehicle routing problem (HVRP) respectivelyThe studyof Tavakkoli-Moghaddam et al [9] additionally consideredthe concept of split service in the capacitated vehicle routingproblem (CVRP) where they showed that splitting demandimplies a higher capacity utilization In split delivery cus-tomers might be visited by more than one vehicle similarto some real-life scenarios especially in the existence of a3PL provider Many researchers have studied the vehiclerouting problems with split delivery properties The studyof Archetti and Speranza [10] presented a survey of splitdelivery vehicle routing problems (SDVRP) that includes thedescription of the SDVRP its properties exact algorithmsand heuristics and its variants and applications None of

the above studies however considered the open vehiclerouting problem (OVRP) with a multiple capacitated het-erogeneous fleet and multiple products with split deliveriestogether as in our study

This paper is organized as follows In Section 2 amixed-integer programming (MIP) model is formulatedIn Section 3 the proposed hybrid genetic-local search isdescribed Computational results and conclusions are pre-sented in Sections 4 and 5 respectively

2 Mixed-Integer Programming Model

In this section we present a mixed-integer programmingmodel for the MCHFOVRPSDMP A real-world problemof production company with its real-life assumptions wasconsidered for themodel As mentioned before the companyuses a heterogeneous fleet of vehicles of a 3PL providerfor distribution of goods and the 3PL provider allows thevehicles to serve two customers at most The 3PL providerdetermines the transportation cost considering the targetcustomer In addition if a vehicle supplies the demand ofan intermediate customer along with the target customerthe 3PL provider charges a stopping cost which depends onthe vehicle type We therefore calculate the total cost of thedistribution process considering the transportation and thestopping cost of the vehicles together which is aimed tobe minimized in the MIP model In our experiments weconsider two different types of products however we definethe type of materials with ldquo119898rdquo index and we allow MIP tomodel the problems with multiple types of materials (morethan two) simultaneouslyThe notation of theMIPmodel canbe found in Table 1 Consider

min 119911 = sum

(119894119895119896)isinSet1|119894=119895

119862119895119896 lowast 119910119894119895119896 + sum

(119894119895119896)isinSet1|119894 = 119895

119865119894119896 lowast 119910119894119895119896 (1)

sum

(119894119895119896)isinSet1|119894=119895

119910119894119895119896 le 1 forall119896 isin 119870 (2)

sum

119896isin119870

119910119894119895119896 le 1 forall119894 119895 isin 119868 | 119894 = 119895 (3)

sum

119894isin119868|(119894119895119896)isinSet1119894 = 119895

119910119894119895119896 le 119910119895119895119896 forall119895 isin 119868 119896 isin 119870 (4)

119909119894119895119896119898 le 119871 lowast 119910119894119895119896 forall119894 119895 isin 119868 119896 isin 119870 119898 isin 119872 (5)

sum

119895isin119868

sum

119896isin119870

119909119894119895119896119898 = 119863119894119898 forall119894 isin 119868 119898 isin 119872 (6)

sum

119894isin119868

sum

119895isin119869

sum

119898isin119872

119882119898 lowast 119909119894119895119896119898 le 119866119896 forall119896 isin 119870 (7)

sum

119894isin119868

sum

119895isin119869

sum

119898isin119872

119881119898 lowast 119909119894119895119896119898 le 119875119896 forall119896 isin 119870 (8)

119909119894119895119896119898 ge 0 and integer (9)

119910119894119895119896 isin 0 1 forall119894 isin 119868 119895 isin 119868 119896 isin 119870 (10)

The Scientific World Journal 3

Table 1 Sets indices parameters and variables for MIP

Indices (for sets see below)119894 119895 Index of customers 119894 119895 isin 119868119896 Index of vehicles 119896 isin 119870119898 Index of product types119898 isin 119872

Parameters

119877119894119895

0-1 matrix for connections of customers 119877119894119895 is 1 if there is a connection between customer 119894 andcustomer 119895

119863119895119898 The demand of productm for customer 119895119862119895119896 Transportation cost for vehicle 119896 while traveling to target city 119895119865119894119896 Stopping cost for vehicle 119896 on customer 119894119882119898 Weight coefficient for product119898119881119898 Volume coefficient for product119898119866119896 Weight capacity for vehicle 119896119875119896 Volume capacity for vehicle 119896119871 Large number

Sets119868 The set of customers 119868 = 1 2 119868max119870 The set of vehicles 119870 = 1 2 119870max119872 The set of product types119872 = 1 2 119872maxSet1 (119894 119895 119896) | 119894 isin 119868 119895 isin 119868 119896 isin 119870 119877119894119895 = 1

Decision variables119909119894119895119896119898 The quantity of product119898 that is left on customer 119894 while vehicle 119896 is travelling to target customer 119895

119910119894119895119896

1 if vehicle 119896 stops on customer 119894 while traveling to target customer 119895

0 otherwise

The objective function (1) aims for the minimization oftotal cost which includes the transportation and the stoppingcost of vehicles To reduce the size of the solution spacewe determine the maximum number of vehicles for theproblem and use this knowledge as a parameter for theindex of vehicles Constraint (2) ensures that each vehiclehas only one target customer at most Constraint (3) showsthat each customer is decided as a target by only onevehicle at most Constraint (4) guarantees that a vehiclecan serve two customers at most one if applies is theintermediate customer and the other is the target customerThe relationship between decision variables has been set byconstraint (5) Constraint (6) ensures that the demands ofcustomers are met by the vehicles Constraints (7) and (8)represent the capacities of the vehicles in terms of weightand volume respectively Finally (9) and (10) present thedefinition space of the decision variables

Since the definition of the problem is unique no bench-mark for this type of problem is available We thereforegenerate random samples for evaluating the performance ofthe MIP model which are detailed in Section 41 Althoughwe can find the solutions with smaller gaps of small-sizeproblems (10ndash50 customers) using MIP it is not able to findany feasible solution of large-size real-world-like problems(60ndash90 customers) within time limits (7200 s) To handlelarge-size problemswe develop a genetic algorithmwith localsearch which is detailed in Section 3

3 Hybrid Genetic-Local Search Algorithm

A genetic algorithm (GA) is a search technique based on thebiological process of evolution theory that mimics naturalselection One of the important issues in GA is the geneticrepresentation (string of symbols) of each solution in apopulation The string is referred to as chromosome andthe symbols as genes [11] After generation of the initialpopulation and determination of the fitness function valuesfor each chromosome GA manipulates the selection processby operations such as reproduction crossover and mutation[11] The introduction of GA dates back to 1970s [12] Asthe searching technique of genetic algorithms (GAs) [13]became popular in the mid-1980s many researchers startedto apply the approach to different types of problems To dateGA has been applied to many different types of problemsincluding vehicle routing problems In this paper we alsohave developed a hybrid genetic-local search algorithm forthe MCHFOVRPSDMP problem which is detailed in thenext section The proposed local search algorithms imple-mented in C are performed during the fitness functioncalculation process In order to eliminate the infeasible chro-mosome structure we were mainly inspired by our previousalgorithms related to scheduling problem in the literature[14 15] The novel characteristic of the studied problem isthe capacity constraint The algorithm is not only appliedto logistic area but also included capacities of vehicles and

4 The Scientific World Journal

CustomersVehicle typesRandom keys

First section Second section

Number of suborders1

1

2 2

2 1 2 1 2

AA BB

099 020 030 054 080 044 011 026 046 043 092 063

CC

Figure 1 Representation of a chromosome in the GA

orders The developed new approach related to capacity issueis integrated into the algorithm successfully and is explainedin the next section

31 Genetic Algorithm for Order Splitting Property

311 Encoding Scheme In the proposed GA a chromosomeis mainly designed by a string of random numbers that areuniformly generated between 0 and 1 These random keysshow the transportation route for each vehicle In additioneach chromosome also carries the number of suborders foreach customer It would be necessary to note that this chro-mosome structure is used in our previous study [14] Figure 1illustrates a sample chromosome In the first section of thechromosome the string contains 119899 (number of customers)segment Each segment is further divided into 119898 (numberof vehicle types) part and then each part for vehicle typesis divided into genes The number of genes for vehicles istwo in this problem which shows the maximum number ofsuborders Note that the chromosome structure is convenientto increase the maximum suborder quantities To decide theexact number of suborders for each customer it is necessaryto check the second section of the chromosome In thesecond section of the chromosome the string contains 119899

(number of customers) segment which shows the number ofsuborders for each customer These numbers might be 1 or 2for this problem and they are generated randomly to reflectthe variable suborder environment For the chromosomestructure in Figure 1 we have 2 vehicle types and 3 customersFor 119862119906119904119905119900119898119890119903119860 since the number of suborders equals 2 asin the second sectionrsquos first segment of the chromosomethe smallest two random numbers will be selected fromthe first section of the chromosome among all the numbersgenerated for 119862119906119904119905119900119898119890119903119860 The selected values (02 and 03for 119862119906119904119905119900119898119890119903119860) are in bold in Figure 1 It means that thefirst order of119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198901

and the second order of 119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198902 Similarly the number of suborders is 2 for119862119906119904119905119900119898119890119903119861 and they will be transported by 119881119890ℎ1198941198881198971198901198791199101199011198902The number of suborders is 1 for 119862119906119904119905119900119898119890119903119862 and it will betransported by 119881119890ℎ1198941198881198971198901198791199101199011198901

312 Fitness Function In the proposed algorithm the chro-mosome structure defines the routes for each vehicle typeBut we also need to integrate capacity conditions into thealgorithm Figure 2 shows the outline of integration processWe consider the volume and weight constraints of vehiclesas well as the demands of each customer After obtain-ing the routes for the customersmdashwhich will be explainedin detail shortly after as in Figure 3mdashwe need to iterate

the integration process in two phases as shown in Figure 2 Inthe first phase if the demands of customers are greater thana full load vehicle then the number of fully loaded vehiclesand costs are calculated In the second phase of the algorithmthe remaining demands of customers are trying to be con-solidated to maximize vehiclesrsquo utilizations After assigningthe first demand to the vehicle if the capacity of the existingvehicle is enough route is the same and the number ofcustomers on the route is less than two then the next demandcan be loaded into the vehicleThis loading demandmight bethe suborder of the same product the demand of the secondproduct of the same customer or the demand of the nextcustomer on the routeOtherwise the newvehicle is requiredTo explain how the algorithm obtains the routes for thecustomers and calculate total costs the example in Figure 1 isconsidered According to the chromosome shown in Figure 1the number of suborders for 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 and119862119906119904119905119900119898119890119903119862 is determined as two two and one respectively119881119890ℎ1198941198881198971198901198791199101199011198901 will supply the 1st suborder of 119862119906119904119905119900119898119890119903119860 andthe suborder of 119862119906119904119905119900119898119890119903119862 119881119890ℎ1198941198881198971198901198791199101199011198902 will supply the 1stand the 2nd suborders of 119862119906119904119905119900119898119890119903119861 and the 2nd suborderof 119862119906119904119905119900119898119890119903119860 The sequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198901

will be determined by the random key numbers (020 and043) Increasing arrangement of these random numbers willdesignate 119881119890ℎ1198941198881198971198901198791199101199011198901rsquos customer sequence Similarly thesequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198902 will be determinedby the random key numbers (011 026 and 030) Figure 3shows the vehicle types and the customers for the examiningproblem According to Figure 2 we need to calculate the fullload vehicles for each customerrsquos suborders considering twotypes of products Then for the remaining loads we need tocombine the vehicles on the same route For the consideredexample three customers and two vehicle types we willignore the vehicles which are fully loaded in order to simplifythe explanation

As mentioned earlier two types of costs are consideredin the problem stopping costs and transportation costs foreach type of vehicle For the considered example each vehicletypersquos route and customersrsquo loads (information about splittingor not splitting) are shown in Figure 3 Assume that Table 2shows the stopping costs for each type of vehicle and Tables3 and 4 present the transportation costs of 119881119890ℎ1198941198881198971198901198791199101199011198901

and 119881119890ℎ1198941198881198971198901198791199101199011198902 respectively Transportation costs fromthe depot to the corresponding customers are shown in thefirst rows of Tables 3 and 4 The total cost is calculated byutilizing the transportation and stopping costs Consideringthe first vehicle of 119881119890ℎ1198941198881198971198901198791199101199011198901 the transportation costfrom depot to 119862119906119904119905119900119898119890119903119860 is 60 and the stopping cost of119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 so the partial total cost is 60 + 40 =100 and then the same vehicle transports from 119862119906119904119905119900119898119890119903119860

The Scientific World Journal 5

-Start-For all genes in the

chromosome

Load the products into the vehicles

one vehicle sufficient for demands

of customer ( volume

weight)

Calculate the quantity of full

load vehicle

Update the rest of demands for customer

and update total transportation costs

Load the frst product into the new vehicle and update

total transportation costYes

Yes

Yes

Yes

Yes

No

No

No

No

No Determining the number of

full load vehicle

Conjunction the demands on the same

route

the examining

gene the frst gene

Update the volume weight of the vehicle

Is the vehicle capacity enough for the

second product Are the customersthe same

Update total transportation cost

Update the volume weight of the vehicle

Assign a new vehicle pdate the volume weight of the vehicle and update total transportation cost

-End-

the route the same with the existing vehiclersquos route and there enough capacity

the number of customer on the route (For each product)

U

less than two

Is

Is

Is

Is

Consider

And is

s

Figure 2 Determining the number of vehicles and their loads

to 119862119906119904119905119900119898119890119903119861 and the transportation cost is 20 Similarly thestopping cost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 It means that the totalcost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 100 + 20 + 40 = 160 The total cost of119881119890ℎ1198941198881198971198901198791199101199011198902 is greater than the total cost of 119881119890ℎ1198941198881198971198901198791199101199011198901Our aim is to minimize the maximum total cost As seen

in Figure 3 the fitness value of chromosome in Figure 1 is395 The structure of chromosome will be modified withthe aim of finding the routes with minimum cost utilizinglocal search The details of the GA-based local search algo-rithm are explained in Section 32 After the algorithm runs

6 The Scientific World Journal

Vehicle type1

Vehicle type2

Customer

Customer

A1 suborder

B1 and 2 suborder CustomerA2 suborder

Total cost100 160 220 395

CustomerCsuborderst

st 2nd nd

Figure 3 Resulting loading schema for chromosome in Figure 1

Table 2 Stopping costs for each vehicle type

119865119894119896 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

119881119890ℎ1198941198881198971198901198791199101199011198901 40 40 40119881119890ℎ1198941198881198971198901198791199101199011198902 80 80 80

Table 3 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198901

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 60 70 90119862119906119904119905119900119898119890119903119860 mdash 50 20119862119906119904119905119900119898119890119903119861 50 mdash 40119862119906119904119905119900119898119890119903119862 20 40 mdash

we obtain the total cost for the chromosome The populationsize determines the number of different chromosomes andfitness function values

313 Genetic Operators After generating the initial popula-tion the operations of selection crossover and mutation areiteratively used to search for the best solution

(i) Selection chromosomes are selected into the matingpool based on the random selection method [16] Inthis method parents are randomly chosen from thepopulation

(ii) Crossover the crossover operator with crossover rate119875119888 is amethod for sharing information between chro-mosomes We use single point crossover approach inour algorithm which randomly chooses the crossingpoint and exchanges the genes between two parentsto create the offspring We use separate crossoveroperations in the first and second phases Figure 4illustrates the crossover operation

(iii) Mutation the mutation operator is used to preventthe algorithm converging to a local optimum Inour algorithm a mutation operation is performedas follows Mutation operation is applied to therandomly selected chromosomes of the populationaccording to the mutation rate (119875119898) The value ofrandomly selected gene of the selected chromosomeis replaced with a new random number By applyingthe operation to all selected chromosomes we can

Table 4 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198902

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 120 140 160119862119906119904119905119900119898119890119903119860 mdash 95 50119862119906119904119905119900119898119890119903119861 95 mdash 80119862119906119904119905119900119898119890119903119862 50 80 mdash

obtain new chromosomes with new routes and fitnessfunction values The fitness value might be better orworse or remain same after applying the operator Anexample for our problem is shown in Figure 5

To enhance the performance of the genetic algorithm weuse a local search algorithm in the literature [14] which isdetailed in the next subsection

32 Local Search Integrating one of the local search tech-niques within GA will commonly generate more competitiveresults For instance the integrating dominance propertiesmethod that was originally developed by Chang and Chen[17]was afterward applied successfully tomachine schedulingproblem [15] In the other paper of researchers whichincludes job splitting property in scheduling problem [14] anadvance approach is adopted And in this paper finally thealgorithm adopted more complex aforementioned logisticsproblemwhich contains capacity constraints By searching allpossible alternatives in a chromosome we aim to reduce thetotal cost After this process the routes will be determined

We consider all alternative situations for the local searchas summarized in the Appendix The proposed intervehicletype (interchange) and intravehicle type (exchange) customerchanges are explained in Section 321 and the calibration ofrandom numbers are explained in Section 322The notationused in the pseudocode and some explanations on the localsearch operation are as follows

(i) 119892 the selected genes from the chromosome areordered by vehicle type and then by customersequence The value of 119892 shows the total number ofthese genes Each individual gene contains vehicletype and customer features Figure 6 explains a sam-ple gene structure of an examplewith seven customers

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 3: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

The Scientific World Journal 3

Table 1 Sets indices parameters and variables for MIP

Indices (for sets see below)119894 119895 Index of customers 119894 119895 isin 119868119896 Index of vehicles 119896 isin 119870119898 Index of product types119898 isin 119872

Parameters

119877119894119895

0-1 matrix for connections of customers 119877119894119895 is 1 if there is a connection between customer 119894 andcustomer 119895

119863119895119898 The demand of productm for customer 119895119862119895119896 Transportation cost for vehicle 119896 while traveling to target city 119895119865119894119896 Stopping cost for vehicle 119896 on customer 119894119882119898 Weight coefficient for product119898119881119898 Volume coefficient for product119898119866119896 Weight capacity for vehicle 119896119875119896 Volume capacity for vehicle 119896119871 Large number

Sets119868 The set of customers 119868 = 1 2 119868max119870 The set of vehicles 119870 = 1 2 119870max119872 The set of product types119872 = 1 2 119872maxSet1 (119894 119895 119896) | 119894 isin 119868 119895 isin 119868 119896 isin 119870 119877119894119895 = 1

Decision variables119909119894119895119896119898 The quantity of product119898 that is left on customer 119894 while vehicle 119896 is travelling to target customer 119895

119910119894119895119896

1 if vehicle 119896 stops on customer 119894 while traveling to target customer 119895

0 otherwise

The objective function (1) aims for the minimization oftotal cost which includes the transportation and the stoppingcost of vehicles To reduce the size of the solution spacewe determine the maximum number of vehicles for theproblem and use this knowledge as a parameter for theindex of vehicles Constraint (2) ensures that each vehiclehas only one target customer at most Constraint (3) showsthat each customer is decided as a target by only onevehicle at most Constraint (4) guarantees that a vehiclecan serve two customers at most one if applies is theintermediate customer and the other is the target customerThe relationship between decision variables has been set byconstraint (5) Constraint (6) ensures that the demands ofcustomers are met by the vehicles Constraints (7) and (8)represent the capacities of the vehicles in terms of weightand volume respectively Finally (9) and (10) present thedefinition space of the decision variables

Since the definition of the problem is unique no bench-mark for this type of problem is available We thereforegenerate random samples for evaluating the performance ofthe MIP model which are detailed in Section 41 Althoughwe can find the solutions with smaller gaps of small-sizeproblems (10ndash50 customers) using MIP it is not able to findany feasible solution of large-size real-world-like problems(60ndash90 customers) within time limits (7200 s) To handlelarge-size problemswe develop a genetic algorithmwith localsearch which is detailed in Section 3

3 Hybrid Genetic-Local Search Algorithm

A genetic algorithm (GA) is a search technique based on thebiological process of evolution theory that mimics naturalselection One of the important issues in GA is the geneticrepresentation (string of symbols) of each solution in apopulation The string is referred to as chromosome andthe symbols as genes [11] After generation of the initialpopulation and determination of the fitness function valuesfor each chromosome GA manipulates the selection processby operations such as reproduction crossover and mutation[11] The introduction of GA dates back to 1970s [12] Asthe searching technique of genetic algorithms (GAs) [13]became popular in the mid-1980s many researchers startedto apply the approach to different types of problems To dateGA has been applied to many different types of problemsincluding vehicle routing problems In this paper we alsohave developed a hybrid genetic-local search algorithm forthe MCHFOVRPSDMP problem which is detailed in thenext section The proposed local search algorithms imple-mented in C are performed during the fitness functioncalculation process In order to eliminate the infeasible chro-mosome structure we were mainly inspired by our previousalgorithms related to scheduling problem in the literature[14 15] The novel characteristic of the studied problem isthe capacity constraint The algorithm is not only appliedto logistic area but also included capacities of vehicles and

4 The Scientific World Journal

CustomersVehicle typesRandom keys

First section Second section

Number of suborders1

1

2 2

2 1 2 1 2

AA BB

099 020 030 054 080 044 011 026 046 043 092 063

CC

Figure 1 Representation of a chromosome in the GA

orders The developed new approach related to capacity issueis integrated into the algorithm successfully and is explainedin the next section

31 Genetic Algorithm for Order Splitting Property

311 Encoding Scheme In the proposed GA a chromosomeis mainly designed by a string of random numbers that areuniformly generated between 0 and 1 These random keysshow the transportation route for each vehicle In additioneach chromosome also carries the number of suborders foreach customer It would be necessary to note that this chro-mosome structure is used in our previous study [14] Figure 1illustrates a sample chromosome In the first section of thechromosome the string contains 119899 (number of customers)segment Each segment is further divided into 119898 (numberof vehicle types) part and then each part for vehicle typesis divided into genes The number of genes for vehicles istwo in this problem which shows the maximum number ofsuborders Note that the chromosome structure is convenientto increase the maximum suborder quantities To decide theexact number of suborders for each customer it is necessaryto check the second section of the chromosome In thesecond section of the chromosome the string contains 119899

(number of customers) segment which shows the number ofsuborders for each customer These numbers might be 1 or 2for this problem and they are generated randomly to reflectthe variable suborder environment For the chromosomestructure in Figure 1 we have 2 vehicle types and 3 customersFor 119862119906119904119905119900119898119890119903119860 since the number of suborders equals 2 asin the second sectionrsquos first segment of the chromosomethe smallest two random numbers will be selected fromthe first section of the chromosome among all the numbersgenerated for 119862119906119904119905119900119898119890119903119860 The selected values (02 and 03for 119862119906119904119905119900119898119890119903119860) are in bold in Figure 1 It means that thefirst order of119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198901

and the second order of 119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198902 Similarly the number of suborders is 2 for119862119906119904119905119900119898119890119903119861 and they will be transported by 119881119890ℎ1198941198881198971198901198791199101199011198902The number of suborders is 1 for 119862119906119904119905119900119898119890119903119862 and it will betransported by 119881119890ℎ1198941198881198971198901198791199101199011198901

312 Fitness Function In the proposed algorithm the chro-mosome structure defines the routes for each vehicle typeBut we also need to integrate capacity conditions into thealgorithm Figure 2 shows the outline of integration processWe consider the volume and weight constraints of vehiclesas well as the demands of each customer After obtain-ing the routes for the customersmdashwhich will be explainedin detail shortly after as in Figure 3mdashwe need to iterate

the integration process in two phases as shown in Figure 2 Inthe first phase if the demands of customers are greater thana full load vehicle then the number of fully loaded vehiclesand costs are calculated In the second phase of the algorithmthe remaining demands of customers are trying to be con-solidated to maximize vehiclesrsquo utilizations After assigningthe first demand to the vehicle if the capacity of the existingvehicle is enough route is the same and the number ofcustomers on the route is less than two then the next demandcan be loaded into the vehicleThis loading demandmight bethe suborder of the same product the demand of the secondproduct of the same customer or the demand of the nextcustomer on the routeOtherwise the newvehicle is requiredTo explain how the algorithm obtains the routes for thecustomers and calculate total costs the example in Figure 1 isconsidered According to the chromosome shown in Figure 1the number of suborders for 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 and119862119906119904119905119900119898119890119903119862 is determined as two two and one respectively119881119890ℎ1198941198881198971198901198791199101199011198901 will supply the 1st suborder of 119862119906119904119905119900119898119890119903119860 andthe suborder of 119862119906119904119905119900119898119890119903119862 119881119890ℎ1198941198881198971198901198791199101199011198902 will supply the 1stand the 2nd suborders of 119862119906119904119905119900119898119890119903119861 and the 2nd suborderof 119862119906119904119905119900119898119890119903119860 The sequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198901

will be determined by the random key numbers (020 and043) Increasing arrangement of these random numbers willdesignate 119881119890ℎ1198941198881198971198901198791199101199011198901rsquos customer sequence Similarly thesequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198902 will be determinedby the random key numbers (011 026 and 030) Figure 3shows the vehicle types and the customers for the examiningproblem According to Figure 2 we need to calculate the fullload vehicles for each customerrsquos suborders considering twotypes of products Then for the remaining loads we need tocombine the vehicles on the same route For the consideredexample three customers and two vehicle types we willignore the vehicles which are fully loaded in order to simplifythe explanation

As mentioned earlier two types of costs are consideredin the problem stopping costs and transportation costs foreach type of vehicle For the considered example each vehicletypersquos route and customersrsquo loads (information about splittingor not splitting) are shown in Figure 3 Assume that Table 2shows the stopping costs for each type of vehicle and Tables3 and 4 present the transportation costs of 119881119890ℎ1198941198881198971198901198791199101199011198901

and 119881119890ℎ1198941198881198971198901198791199101199011198902 respectively Transportation costs fromthe depot to the corresponding customers are shown in thefirst rows of Tables 3 and 4 The total cost is calculated byutilizing the transportation and stopping costs Consideringthe first vehicle of 119881119890ℎ1198941198881198971198901198791199101199011198901 the transportation costfrom depot to 119862119906119904119905119900119898119890119903119860 is 60 and the stopping cost of119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 so the partial total cost is 60 + 40 =100 and then the same vehicle transports from 119862119906119904119905119900119898119890119903119860

The Scientific World Journal 5

-Start-For all genes in the

chromosome

Load the products into the vehicles

one vehicle sufficient for demands

of customer ( volume

weight)

Calculate the quantity of full

load vehicle

Update the rest of demands for customer

and update total transportation costs

Load the frst product into the new vehicle and update

total transportation costYes

Yes

Yes

Yes

Yes

No

No

No

No

No Determining the number of

full load vehicle

Conjunction the demands on the same

route

the examining

gene the frst gene

Update the volume weight of the vehicle

Is the vehicle capacity enough for the

second product Are the customersthe same

Update total transportation cost

Update the volume weight of the vehicle

Assign a new vehicle pdate the volume weight of the vehicle and update total transportation cost

-End-

the route the same with the existing vehiclersquos route and there enough capacity

the number of customer on the route (For each product)

U

less than two

Is

Is

Is

Is

Consider

And is

s

Figure 2 Determining the number of vehicles and their loads

to 119862119906119904119905119900119898119890119903119861 and the transportation cost is 20 Similarly thestopping cost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 It means that the totalcost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 100 + 20 + 40 = 160 The total cost of119881119890ℎ1198941198881198971198901198791199101199011198902 is greater than the total cost of 119881119890ℎ1198941198881198971198901198791199101199011198901Our aim is to minimize the maximum total cost As seen

in Figure 3 the fitness value of chromosome in Figure 1 is395 The structure of chromosome will be modified withthe aim of finding the routes with minimum cost utilizinglocal search The details of the GA-based local search algo-rithm are explained in Section 32 After the algorithm runs

6 The Scientific World Journal

Vehicle type1

Vehicle type2

Customer

Customer

A1 suborder

B1 and 2 suborder CustomerA2 suborder

Total cost100 160 220 395

CustomerCsuborderst

st 2nd nd

Figure 3 Resulting loading schema for chromosome in Figure 1

Table 2 Stopping costs for each vehicle type

119865119894119896 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

119881119890ℎ1198941198881198971198901198791199101199011198901 40 40 40119881119890ℎ1198941198881198971198901198791199101199011198902 80 80 80

Table 3 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198901

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 60 70 90119862119906119904119905119900119898119890119903119860 mdash 50 20119862119906119904119905119900119898119890119903119861 50 mdash 40119862119906119904119905119900119898119890119903119862 20 40 mdash

we obtain the total cost for the chromosome The populationsize determines the number of different chromosomes andfitness function values

313 Genetic Operators After generating the initial popula-tion the operations of selection crossover and mutation areiteratively used to search for the best solution

(i) Selection chromosomes are selected into the matingpool based on the random selection method [16] Inthis method parents are randomly chosen from thepopulation

(ii) Crossover the crossover operator with crossover rate119875119888 is amethod for sharing information between chro-mosomes We use single point crossover approach inour algorithm which randomly chooses the crossingpoint and exchanges the genes between two parentsto create the offspring We use separate crossoveroperations in the first and second phases Figure 4illustrates the crossover operation

(iii) Mutation the mutation operator is used to preventthe algorithm converging to a local optimum Inour algorithm a mutation operation is performedas follows Mutation operation is applied to therandomly selected chromosomes of the populationaccording to the mutation rate (119875119898) The value ofrandomly selected gene of the selected chromosomeis replaced with a new random number By applyingthe operation to all selected chromosomes we can

Table 4 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198902

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 120 140 160119862119906119904119905119900119898119890119903119860 mdash 95 50119862119906119904119905119900119898119890119903119861 95 mdash 80119862119906119904119905119900119898119890119903119862 50 80 mdash

obtain new chromosomes with new routes and fitnessfunction values The fitness value might be better orworse or remain same after applying the operator Anexample for our problem is shown in Figure 5

To enhance the performance of the genetic algorithm weuse a local search algorithm in the literature [14] which isdetailed in the next subsection

32 Local Search Integrating one of the local search tech-niques within GA will commonly generate more competitiveresults For instance the integrating dominance propertiesmethod that was originally developed by Chang and Chen[17]was afterward applied successfully tomachine schedulingproblem [15] In the other paper of researchers whichincludes job splitting property in scheduling problem [14] anadvance approach is adopted And in this paper finally thealgorithm adopted more complex aforementioned logisticsproblemwhich contains capacity constraints By searching allpossible alternatives in a chromosome we aim to reduce thetotal cost After this process the routes will be determined

We consider all alternative situations for the local searchas summarized in the Appendix The proposed intervehicletype (interchange) and intravehicle type (exchange) customerchanges are explained in Section 321 and the calibration ofrandom numbers are explained in Section 322The notationused in the pseudocode and some explanations on the localsearch operation are as follows

(i) 119892 the selected genes from the chromosome areordered by vehicle type and then by customersequence The value of 119892 shows the total number ofthese genes Each individual gene contains vehicletype and customer features Figure 6 explains a sam-ple gene structure of an examplewith seven customers

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 4: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

4 The Scientific World Journal

CustomersVehicle typesRandom keys

First section Second section

Number of suborders1

1

2 2

2 1 2 1 2

AA BB

099 020 030 054 080 044 011 026 046 043 092 063

CC

Figure 1 Representation of a chromosome in the GA

orders The developed new approach related to capacity issueis integrated into the algorithm successfully and is explainedin the next section

31 Genetic Algorithm for Order Splitting Property

311 Encoding Scheme In the proposed GA a chromosomeis mainly designed by a string of random numbers that areuniformly generated between 0 and 1 These random keysshow the transportation route for each vehicle In additioneach chromosome also carries the number of suborders foreach customer It would be necessary to note that this chro-mosome structure is used in our previous study [14] Figure 1illustrates a sample chromosome In the first section of thechromosome the string contains 119899 (number of customers)segment Each segment is further divided into 119898 (numberof vehicle types) part and then each part for vehicle typesis divided into genes The number of genes for vehicles istwo in this problem which shows the maximum number ofsuborders Note that the chromosome structure is convenientto increase the maximum suborder quantities To decide theexact number of suborders for each customer it is necessaryto check the second section of the chromosome In thesecond section of the chromosome the string contains 119899

(number of customers) segment which shows the number ofsuborders for each customer These numbers might be 1 or 2for this problem and they are generated randomly to reflectthe variable suborder environment For the chromosomestructure in Figure 1 we have 2 vehicle types and 3 customersFor 119862119906119904119905119900119898119890119903119860 since the number of suborders equals 2 asin the second sectionrsquos first segment of the chromosomethe smallest two random numbers will be selected fromthe first section of the chromosome among all the numbersgenerated for 119862119906119904119905119900119898119890119903119860 The selected values (02 and 03for 119862119906119904119905119900119898119890119903119860) are in bold in Figure 1 It means that thefirst order of119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198901

and the second order of 119862119906119904119905119900119898119890119903119860 will be transported by119881119890ℎ1198941198881198971198901198791199101199011198902 Similarly the number of suborders is 2 for119862119906119904119905119900119898119890119903119861 and they will be transported by 119881119890ℎ1198941198881198971198901198791199101199011198902The number of suborders is 1 for 119862119906119904119905119900119898119890119903119862 and it will betransported by 119881119890ℎ1198941198881198971198901198791199101199011198901

312 Fitness Function In the proposed algorithm the chro-mosome structure defines the routes for each vehicle typeBut we also need to integrate capacity conditions into thealgorithm Figure 2 shows the outline of integration processWe consider the volume and weight constraints of vehiclesas well as the demands of each customer After obtain-ing the routes for the customersmdashwhich will be explainedin detail shortly after as in Figure 3mdashwe need to iterate

the integration process in two phases as shown in Figure 2 Inthe first phase if the demands of customers are greater thana full load vehicle then the number of fully loaded vehiclesand costs are calculated In the second phase of the algorithmthe remaining demands of customers are trying to be con-solidated to maximize vehiclesrsquo utilizations After assigningthe first demand to the vehicle if the capacity of the existingvehicle is enough route is the same and the number ofcustomers on the route is less than two then the next demandcan be loaded into the vehicleThis loading demandmight bethe suborder of the same product the demand of the secondproduct of the same customer or the demand of the nextcustomer on the routeOtherwise the newvehicle is requiredTo explain how the algorithm obtains the routes for thecustomers and calculate total costs the example in Figure 1 isconsidered According to the chromosome shown in Figure 1the number of suborders for 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 and119862119906119904119905119900119898119890119903119862 is determined as two two and one respectively119881119890ℎ1198941198881198971198901198791199101199011198901 will supply the 1st suborder of 119862119906119904119905119900119898119890119903119860 andthe suborder of 119862119906119904119905119900119898119890119903119862 119881119890ℎ1198941198881198971198901198791199101199011198902 will supply the 1stand the 2nd suborders of 119862119906119904119905119900119898119890119903119861 and the 2nd suborderof 119862119906119904119905119900119898119890119903119860 The sequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198901

will be determined by the random key numbers (020 and043) Increasing arrangement of these random numbers willdesignate 119881119890ℎ1198941198881198971198901198791199101199011198901rsquos customer sequence Similarly thesequence of customers on 119881119890ℎ1198941198881198971198901198791199101199011198902 will be determinedby the random key numbers (011 026 and 030) Figure 3shows the vehicle types and the customers for the examiningproblem According to Figure 2 we need to calculate the fullload vehicles for each customerrsquos suborders considering twotypes of products Then for the remaining loads we need tocombine the vehicles on the same route For the consideredexample three customers and two vehicle types we willignore the vehicles which are fully loaded in order to simplifythe explanation

As mentioned earlier two types of costs are consideredin the problem stopping costs and transportation costs foreach type of vehicle For the considered example each vehicletypersquos route and customersrsquo loads (information about splittingor not splitting) are shown in Figure 3 Assume that Table 2shows the stopping costs for each type of vehicle and Tables3 and 4 present the transportation costs of 119881119890ℎ1198941198881198971198901198791199101199011198901

and 119881119890ℎ1198941198881198971198901198791199101199011198902 respectively Transportation costs fromthe depot to the corresponding customers are shown in thefirst rows of Tables 3 and 4 The total cost is calculated byutilizing the transportation and stopping costs Consideringthe first vehicle of 119881119890ℎ1198941198881198971198901198791199101199011198901 the transportation costfrom depot to 119862119906119904119905119900119898119890119903119860 is 60 and the stopping cost of119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 so the partial total cost is 60 + 40 =100 and then the same vehicle transports from 119862119906119904119905119900119898119890119903119860

The Scientific World Journal 5

-Start-For all genes in the

chromosome

Load the products into the vehicles

one vehicle sufficient for demands

of customer ( volume

weight)

Calculate the quantity of full

load vehicle

Update the rest of demands for customer

and update total transportation costs

Load the frst product into the new vehicle and update

total transportation costYes

Yes

Yes

Yes

Yes

No

No

No

No

No Determining the number of

full load vehicle

Conjunction the demands on the same

route

the examining

gene the frst gene

Update the volume weight of the vehicle

Is the vehicle capacity enough for the

second product Are the customersthe same

Update total transportation cost

Update the volume weight of the vehicle

Assign a new vehicle pdate the volume weight of the vehicle and update total transportation cost

-End-

the route the same with the existing vehiclersquos route and there enough capacity

the number of customer on the route (For each product)

U

less than two

Is

Is

Is

Is

Consider

And is

s

Figure 2 Determining the number of vehicles and their loads

to 119862119906119904119905119900119898119890119903119861 and the transportation cost is 20 Similarly thestopping cost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 It means that the totalcost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 100 + 20 + 40 = 160 The total cost of119881119890ℎ1198941198881198971198901198791199101199011198902 is greater than the total cost of 119881119890ℎ1198941198881198971198901198791199101199011198901Our aim is to minimize the maximum total cost As seen

in Figure 3 the fitness value of chromosome in Figure 1 is395 The structure of chromosome will be modified withthe aim of finding the routes with minimum cost utilizinglocal search The details of the GA-based local search algo-rithm are explained in Section 32 After the algorithm runs

6 The Scientific World Journal

Vehicle type1

Vehicle type2

Customer

Customer

A1 suborder

B1 and 2 suborder CustomerA2 suborder

Total cost100 160 220 395

CustomerCsuborderst

st 2nd nd

Figure 3 Resulting loading schema for chromosome in Figure 1

Table 2 Stopping costs for each vehicle type

119865119894119896 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

119881119890ℎ1198941198881198971198901198791199101199011198901 40 40 40119881119890ℎ1198941198881198971198901198791199101199011198902 80 80 80

Table 3 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198901

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 60 70 90119862119906119904119905119900119898119890119903119860 mdash 50 20119862119906119904119905119900119898119890119903119861 50 mdash 40119862119906119904119905119900119898119890119903119862 20 40 mdash

we obtain the total cost for the chromosome The populationsize determines the number of different chromosomes andfitness function values

313 Genetic Operators After generating the initial popula-tion the operations of selection crossover and mutation areiteratively used to search for the best solution

(i) Selection chromosomes are selected into the matingpool based on the random selection method [16] Inthis method parents are randomly chosen from thepopulation

(ii) Crossover the crossover operator with crossover rate119875119888 is amethod for sharing information between chro-mosomes We use single point crossover approach inour algorithm which randomly chooses the crossingpoint and exchanges the genes between two parentsto create the offspring We use separate crossoveroperations in the first and second phases Figure 4illustrates the crossover operation

(iii) Mutation the mutation operator is used to preventthe algorithm converging to a local optimum Inour algorithm a mutation operation is performedas follows Mutation operation is applied to therandomly selected chromosomes of the populationaccording to the mutation rate (119875119898) The value ofrandomly selected gene of the selected chromosomeis replaced with a new random number By applyingthe operation to all selected chromosomes we can

Table 4 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198902

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 120 140 160119862119906119904119905119900119898119890119903119860 mdash 95 50119862119906119904119905119900119898119890119903119861 95 mdash 80119862119906119904119905119900119898119890119903119862 50 80 mdash

obtain new chromosomes with new routes and fitnessfunction values The fitness value might be better orworse or remain same after applying the operator Anexample for our problem is shown in Figure 5

To enhance the performance of the genetic algorithm weuse a local search algorithm in the literature [14] which isdetailed in the next subsection

32 Local Search Integrating one of the local search tech-niques within GA will commonly generate more competitiveresults For instance the integrating dominance propertiesmethod that was originally developed by Chang and Chen[17]was afterward applied successfully tomachine schedulingproblem [15] In the other paper of researchers whichincludes job splitting property in scheduling problem [14] anadvance approach is adopted And in this paper finally thealgorithm adopted more complex aforementioned logisticsproblemwhich contains capacity constraints By searching allpossible alternatives in a chromosome we aim to reduce thetotal cost After this process the routes will be determined

We consider all alternative situations for the local searchas summarized in the Appendix The proposed intervehicletype (interchange) and intravehicle type (exchange) customerchanges are explained in Section 321 and the calibration ofrandom numbers are explained in Section 322The notationused in the pseudocode and some explanations on the localsearch operation are as follows

(i) 119892 the selected genes from the chromosome areordered by vehicle type and then by customersequence The value of 119892 shows the total number ofthese genes Each individual gene contains vehicletype and customer features Figure 6 explains a sam-ple gene structure of an examplewith seven customers

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 5: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

The Scientific World Journal 5

-Start-For all genes in the

chromosome

Load the products into the vehicles

one vehicle sufficient for demands

of customer ( volume

weight)

Calculate the quantity of full

load vehicle

Update the rest of demands for customer

and update total transportation costs

Load the frst product into the new vehicle and update

total transportation costYes

Yes

Yes

Yes

Yes

No

No

No

No

No Determining the number of

full load vehicle

Conjunction the demands on the same

route

the examining

gene the frst gene

Update the volume weight of the vehicle

Is the vehicle capacity enough for the

second product Are the customersthe same

Update total transportation cost

Update the volume weight of the vehicle

Assign a new vehicle pdate the volume weight of the vehicle and update total transportation cost

-End-

the route the same with the existing vehiclersquos route and there enough capacity

the number of customer on the route (For each product)

U

less than two

Is

Is

Is

Is

Consider

And is

s

Figure 2 Determining the number of vehicles and their loads

to 119862119906119904119905119900119898119890119903119861 and the transportation cost is 20 Similarly thestopping cost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 40 It means that the totalcost of 119881119890ℎ1198941198881198971198901198791199101199011198901 is 100 + 20 + 40 = 160 The total cost of119881119890ℎ1198941198881198971198901198791199101199011198902 is greater than the total cost of 119881119890ℎ1198941198881198971198901198791199101199011198901Our aim is to minimize the maximum total cost As seen

in Figure 3 the fitness value of chromosome in Figure 1 is395 The structure of chromosome will be modified withthe aim of finding the routes with minimum cost utilizinglocal search The details of the GA-based local search algo-rithm are explained in Section 32 After the algorithm runs

6 The Scientific World Journal

Vehicle type1

Vehicle type2

Customer

Customer

A1 suborder

B1 and 2 suborder CustomerA2 suborder

Total cost100 160 220 395

CustomerCsuborderst

st 2nd nd

Figure 3 Resulting loading schema for chromosome in Figure 1

Table 2 Stopping costs for each vehicle type

119865119894119896 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

119881119890ℎ1198941198881198971198901198791199101199011198901 40 40 40119881119890ℎ1198941198881198971198901198791199101199011198902 80 80 80

Table 3 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198901

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 60 70 90119862119906119904119905119900119898119890119903119860 mdash 50 20119862119906119904119905119900119898119890119903119861 50 mdash 40119862119906119904119905119900119898119890119903119862 20 40 mdash

we obtain the total cost for the chromosome The populationsize determines the number of different chromosomes andfitness function values

313 Genetic Operators After generating the initial popula-tion the operations of selection crossover and mutation areiteratively used to search for the best solution

(i) Selection chromosomes are selected into the matingpool based on the random selection method [16] Inthis method parents are randomly chosen from thepopulation

(ii) Crossover the crossover operator with crossover rate119875119888 is amethod for sharing information between chro-mosomes We use single point crossover approach inour algorithm which randomly chooses the crossingpoint and exchanges the genes between two parentsto create the offspring We use separate crossoveroperations in the first and second phases Figure 4illustrates the crossover operation

(iii) Mutation the mutation operator is used to preventthe algorithm converging to a local optimum Inour algorithm a mutation operation is performedas follows Mutation operation is applied to therandomly selected chromosomes of the populationaccording to the mutation rate (119875119898) The value ofrandomly selected gene of the selected chromosomeis replaced with a new random number By applyingthe operation to all selected chromosomes we can

Table 4 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198902

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 120 140 160119862119906119904119905119900119898119890119903119860 mdash 95 50119862119906119904119905119900119898119890119903119861 95 mdash 80119862119906119904119905119900119898119890119903119862 50 80 mdash

obtain new chromosomes with new routes and fitnessfunction values The fitness value might be better orworse or remain same after applying the operator Anexample for our problem is shown in Figure 5

To enhance the performance of the genetic algorithm weuse a local search algorithm in the literature [14] which isdetailed in the next subsection

32 Local Search Integrating one of the local search tech-niques within GA will commonly generate more competitiveresults For instance the integrating dominance propertiesmethod that was originally developed by Chang and Chen[17]was afterward applied successfully tomachine schedulingproblem [15] In the other paper of researchers whichincludes job splitting property in scheduling problem [14] anadvance approach is adopted And in this paper finally thealgorithm adopted more complex aforementioned logisticsproblemwhich contains capacity constraints By searching allpossible alternatives in a chromosome we aim to reduce thetotal cost After this process the routes will be determined

We consider all alternative situations for the local searchas summarized in the Appendix The proposed intervehicletype (interchange) and intravehicle type (exchange) customerchanges are explained in Section 321 and the calibration ofrandom numbers are explained in Section 322The notationused in the pseudocode and some explanations on the localsearch operation are as follows

(i) 119892 the selected genes from the chromosome areordered by vehicle type and then by customersequence The value of 119892 shows the total number ofthese genes Each individual gene contains vehicletype and customer features Figure 6 explains a sam-ple gene structure of an examplewith seven customers

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 6: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

6 The Scientific World Journal

Vehicle type1

Vehicle type2

Customer

Customer

A1 suborder

B1 and 2 suborder CustomerA2 suborder

Total cost100 160 220 395

CustomerCsuborderst

st 2nd nd

Figure 3 Resulting loading schema for chromosome in Figure 1

Table 2 Stopping costs for each vehicle type

119865119894119896 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

119881119890ℎ1198941198881198971198901198791199101199011198901 40 40 40119881119890ℎ1198941198881198971198901198791199101199011198902 80 80 80

Table 3 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198901

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 60 70 90119862119906119904119905119900119898119890119903119860 mdash 50 20119862119906119904119905119900119898119890119903119861 50 mdash 40119862119906119904119905119900119898119890119903119862 20 40 mdash

we obtain the total cost for the chromosome The populationsize determines the number of different chromosomes andfitness function values

313 Genetic Operators After generating the initial popula-tion the operations of selection crossover and mutation areiteratively used to search for the best solution

(i) Selection chromosomes are selected into the matingpool based on the random selection method [16] Inthis method parents are randomly chosen from thepopulation

(ii) Crossover the crossover operator with crossover rate119875119888 is amethod for sharing information between chro-mosomes We use single point crossover approach inour algorithm which randomly chooses the crossingpoint and exchanges the genes between two parentsto create the offspring We use separate crossoveroperations in the first and second phases Figure 4illustrates the crossover operation

(iii) Mutation the mutation operator is used to preventthe algorithm converging to a local optimum Inour algorithm a mutation operation is performedas follows Mutation operation is applied to therandomly selected chromosomes of the populationaccording to the mutation rate (119875119898) The value ofrandomly selected gene of the selected chromosomeis replaced with a new random number By applyingthe operation to all selected chromosomes we can

Table 4 Transportation costs for 119881119890ℎ1198941198881198971198901198791199101199011198902

1198621198941198951 119862119906119904119905119900119898119890119903119860 119862119906119904119905119900119898119890119903119861 119862119906119904119905119900119898119890119903119862

Depot 120 140 160119862119906119904119905119900119898119890119903119860 mdash 95 50119862119906119904119905119900119898119890119903119861 95 mdash 80119862119906119904119905119900119898119890119903119862 50 80 mdash

obtain new chromosomes with new routes and fitnessfunction values The fitness value might be better orworse or remain same after applying the operator Anexample for our problem is shown in Figure 5

To enhance the performance of the genetic algorithm weuse a local search algorithm in the literature [14] which isdetailed in the next subsection

32 Local Search Integrating one of the local search tech-niques within GA will commonly generate more competitiveresults For instance the integrating dominance propertiesmethod that was originally developed by Chang and Chen[17]was afterward applied successfully tomachine schedulingproblem [15] In the other paper of researchers whichincludes job splitting property in scheduling problem [14] anadvance approach is adopted And in this paper finally thealgorithm adopted more complex aforementioned logisticsproblemwhich contains capacity constraints By searching allpossible alternatives in a chromosome we aim to reduce thetotal cost After this process the routes will be determined

We consider all alternative situations for the local searchas summarized in the Appendix The proposed intervehicletype (interchange) and intravehicle type (exchange) customerchanges are explained in Section 321 and the calibration ofrandom numbers are explained in Section 322The notationused in the pseudocode and some explanations on the localsearch operation are as follows

(i) 119892 the selected genes from the chromosome areordered by vehicle type and then by customersequence The value of 119892 shows the total number ofthese genes Each individual gene contains vehicletype and customer features Figure 6 explains a sam-ple gene structure of an examplewith seven customers

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 7: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

The Scientific World Journal 7

099 020 030 054 080 044 011 026 046 043 092 063 2 2 1

026 046 043 092 063 2 2 1

041 040 061 034 067 018 015

099 020 030 054 080 044 011

041 040 061 034 067 018 015

055 091 062 095 084 2 1 2

055 091 062 095 084 2 1 2

Parent1

Parent2

Offspring1

Offspring2

Crossover point for first section is seven

Crossover point for second section is one

Figure 4 Crossover operation Two parents mate in order to produce two offspring

099 020 030 054 080 044 011 026 046 043 092 063

099 020 030 080 044 011 026 046 043 092 063

2 2 1

2 2 1015

Parent1

Customers

Vehicle typesRandom keys

Random keys

A B

1 2 1 2 1 2

C

Figure 5 Mutation operation

CustomersVehicle types

AB CD E FG

1

1 1 1 1

2

2 2 2

3 4 5 6 7Gene number

Figure 6 Sample gene structure for an example that contains seven customers and two vehicle types

and two vehicle typesThe structure also indicates thesequence of customers for each type of vehicle

(ii) 119894 and 119895 they are the gene numbers which are com-pared to decide whether the customers encoded inthese genes should be exchanged or not

(iii) 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it indicates the type of vehicleencoded in the 119894th gene According to the structureshown in Figure 6 the type of vehicle for the 1st gene(119866119890119899119890(1)119881119890ℎ119894119888119897119890119879119910119901119890) is 1

(iv) 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 it indicates the customer encodedin the 119894th gene According to the structureshown in Figure 6 the customer for the 1st gene(119866119890119899119890(1)119862119906119904119905119900119898119890119903) is Customer D

(v) 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119896) it is the transportation costbetween 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119896)119862119906119904119905119900119898119890119903 for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

(vi) 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) it is the stopping cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

(vii) 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 it is the total transportation cost for119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890

321 Interchange and Exchange of Customers

(i) Interchange of customers there are two cases to beconsidered within the intervehicle type interchange

adjacent customers interchange and nonadjacent cus-tomers interchange(I) Adjacent interchange in the intervehicle typeadjacent customers interchange section of thepseudocode steps are as follows(1) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes

119866119890119899119890(119894)119862119906119904119905119900119898119890119903 then ldquoardquo represents thetotal difference of transportation costsbetween after interchange and beforeinterchange situations

(2) If 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer onthe vehicle then ldquobrdquo represents the totaldifference of transportation costs betweenafter interchange and before interchangesituations

(3) Either ldquoardquo or ldquobrdquo must be equal to 0(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 +

1)119862119906119904119905119900119898119890119903 then ldquocrdquo represents thedifferences of transportation costs betweenafter interchange and before interchangesituations

(5) If the sum of ldquoardquo ldquobrdquo and ldquocrdquo is smaller than0 it means that a lower total transportationcost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903

and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(6) Calibrate the random key numbers In

Section 322 item (i) gives the descriptionof the intervehicle type interchange

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 8: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

8 The Scientific World Journal

(II) Nonadjacent interchange the steps for deter-mining the exchange of 119866119890n119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on the route are similar to adja-cent interchange with one exception Duringthe calculation of ldquoardquo and ldquobrdquo the additionaldifference of transportation costs should beconsidered The remaining steps are the samewith the adjacent interchange situation

(ii) Intravehicle type exchanging in the intravehicle typeexchanging section of the pseudocode steps are asfollows

(1) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 beforeexchange ldquoD1rdquo represents the maximumtransportation cost of them

(2) If 119866119890119899119890(119894 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119894)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquoa1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquoa1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(3) If 119866119890119899119890(119895 minus 1)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob1rdquo represents thedifference of transportation costs between afterinterchange and before interchange situationsIf 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 is the first customer on119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 the second ldquob1rdquo in the pseu-docode represents the total difference of trans-portation costs between after interchange andbefore interchange situations

(4) If 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 precedes 119866119890119899119890(119895 + 1)119862119906119904119905119900119898119890119903

on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 then ldquob2rdquo represents thedifference of transportation costs between afterinterchange and before interchange situations

(5) Calculate the total transportation cost of119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 and 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 aftera possible exchange ldquoD2rdquo represents themaximum of these two values

(6) If ldquoD2rdquo is smaller than ldquoD1rdquo it means a lowertotal transportation cost is obtained In this case119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are inter-changed

(7) Calibrate the random key numbers InSection 322 item (ii) gives the description ofintravehicle type exchange

322 Calibration of the Random Numbers on the Chro-mosome If it is decided to change 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 we need to calibrate the chromosome torepresent the new situation by the following configurationsDuring the integration process the positions of the randomnumbers are considered In Figure 4 parent 2 is taken intoaccount to explain the calibration phase The orders of

119862119906119904119905119900119898119890119903119860 and119862119906119904119905119900119898119890119903119862 are split into 2 suborders (no splitfor the orders of119862119906119904119905119900119898119890119903119861) for the considered chromosomeDue to simplicity the sections of the number of suborders arenot shown on the chromosomes of Figures 7 and 8

(i) Intervehicle type interchange Figure 7 shows thebefore and after interchange of the customers on thesame vehicle type The genes of a chromosome canbe labeled as ldquoselected genes from the chromosomerdquoand ldquononselected genes from the chromosomerdquo Therealized interchanges are shown in bold on theafter interchange section The steps of interchanging119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the exampleare as follows

(I) Random numbers of the customers to beexchanged are 040 for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 and 062 for 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119862 to be changed to 062 for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119860 and 040for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

(II) After the interchange 040 is smaller than 062and hence there is no need to change other ran-dom numbers for 119862119906119904119905119900119898119890119903119862 Because the cur-rent situation guarantees 119862119906119904119905119900119898119890119903119862 to select119881119890ℎ1198941198881198971198901198791199101199011198901

(III) After the interchange 062 is bigger than040 and hence other random numbers for119862119906119904119905119900119898119890119903119860 which are smaller than 062 (as041) in the ldquononselected genes from chromo-somerdquomust be changedAnew randomnumber(bigger than 062) will be randomly generated(as 096) and changed to 041 Another randomnumber smaller than 062 is 061 in the ldquononse-lected genes from chromosomerdquo for119862119906119904119905119900119898119890119903119860Therefore a new random number (bigger than062) will be randomly generated (as 075) andchanged to 061

(ii) Intravehicle type exchange Figure 8 shows the beforeand after exchange of the customers on two dif-ferent vehicle types The realized exchanges areshown in bold on the after exchange section ofFigure 8 The steps of exchanging 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and119866119890119899119890(119895)119862119906119904119905119900119898119890119903 for the example of Figure 8 are asfollows Value(119894) is amaximum randomnumber valuefor 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 SimilarlyValue(119895) is a maximum random number value for119866119890119899119890(119894)119862119906119904119905119900119898119890119903 on 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890

(I) The random numbers for 119866119890119899119890(119894) and Value(119894)are exchanged in the chromosome Also therandom numbers for 119866119890119899119890(119895) and Value(119895) areexchanged in the chromosome

(II) Between ldquoselected genes from chromosomerdquoand ldquononselected genes from chromosomerdquocustomers for 119866119890119899119890(119894) and Value(119894) areexchanged And similarly customers for119866119890119899119890(119895) and Value(119895) are exchanged

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 9: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

The Scientific World Journal 9

1 2

1 2

1 2 1 1 2 1 2

1 2 1 1 2 1 2

1 2

A

AA

A A

1 2 21B

B

B

C

CC

C C

1 2A

1 2 21B C

A B C

A B C

041

041

040

040

040

061

061

034 067 018 015

015

055 091

091

062 095

095

084

084

096

096

062

062

075

075

034

034

015 084062 034

067

067

067

018

018

018

015 055

055

091 095055

091 040 095 084

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

Nonselected gene from chromosome

Before interchange

Afer interchange

Random no

Random nr

Random nr

Random no

Random no

Random no

Gene(i) Gene(j)

Gene(i) Gene(j)

= cup

= cup

Figure 7 An example for the calibration of the random numbers on the chromosome for intervehicle type interchanges

Nonselected gene from chromosome

s

s

CustomersVehicle types

CustomersVehicle types

Chro

mos

ome

Chro

mos

ome

041

041

040

040

061

061

034

034

034

067

067

067

018

018

015

015

055

055

091

091

062

062

095

095

084

084

040 015062 084

1 2A

1 2 21B C

1 2A

1 2 21B C

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

CustomersVehicle types

Selected genes from chromosome

(group by vehicle type)

Selected genes from chromosome

(group by vehicle type)

Nonselected gene from chromosome

1

1 1 1 1

2

2 22

1 1 1 12 22

AA

A A

B

B B B

C

A C

C C

C

A C

1 2A AB

B B B

CC

095

095095

091

091

084 034 067 018

018

015 055

055

040 062 095 087

087

Gene(i) Gene(j)

Gene(i)

Gene(i)

Gene(j)

Gene(j)Value(j)

Value(j)Value(i)

Value(i)

= cup

= cup

Before exchange

After exchange

Random nr

Random nr

Random no

Random no

Random no

Random no

12

Figure 8 An example for the calibration of the random numbers on the chromosome for intravehicle type exchanges

(III) After the exchange it must be checked ifthere is a random number in the ldquononselectedgenes from chromosomerdquo for119866119890119899119890(119895)119862119906119904119905119900119898119890119903 rarr

119862119906119904119905119900119898119890119903119860 that is smaller than the randomnumber of 119866119890119899119890(119895) (equal to 084) or otherselected value of119862119906119904119905119900119898119890119903119860 (equal to 034) Forexample 041 is smaller than 084 Thereforeanother random number (bigger than 084) willbe randomly generated (as 095) and changed to041

(IV) It must also be checked if there is a randomnumber in the ldquononselected genes from chro-mosomerdquo for 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 rarr 119862119906119904119905119900119898119890119903119862

that is smaller than the random number of119866119890119899119890(119894) (equal to 040) or other selected valueof 119862119906119904119905119900119898119890119903119862 (equal to 062) For example061 is smaller than 062 Thus another randomnumber (bigger than 062) will be randomlygenerated (as 087) and changed to 061

As mentioned before we consider a real-world MCHFOVRPSDMP problem We first model the real system withmixed-integer programming and then we develop a hybridgenetic-local search algorithm We determine the requiredparameters and their values for the algorithms We comparethese algorithms with randomly generated problems usingreal-world parameters and detail the computational results inthe next section

4 Computational Results

41 Dataset We consider the distribution network of aproduction company in Turkey The company produces twotypes of products and uses a fleet of vehicles of a 3PL providerfor distribution of goods to customers In order to evaluatethe performance of MIP and GA we use the real-worlddata which are supplied from the 3PL provider We gatherthe information of transportation costs vehicle types andspecialties and properties of products from the 3PL providerwhich are presented in Tables 5 6 and 7 respectively

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 10: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

10 The Scientific World Journal

Table 5 Stopping and transportation costs for the customers

Vehicle type Truck TIRStopping cost 40$ 80$Transportation cost 1000$ 1500$

Table 6 Volume and weight coefficient for each type of vehicle

Capacity Weight (kg) Volume (m3)119879119903119906119888119896119904 15500 45119879119868119877119904 25000 84

We investigate the real-world demands and determinethe distribution of them for two products as seen in Table 8We represent the connections between customers with a 0-1 ldquoRoute (119877119894119895)rdquo matrix as in MIP model The 119877119894119895 matrix isdefined by the 3PL provider considering various constrainssuch as highway conditions or experiences of drivers Togenerate different problems we determine the 119877119894119895 matrixrandomly for each problem We develop 119899 times 119899 matrix for 119899

customers and define the cells by 119880(0 1) distribution If the119877119886119887 value of customer 119886 and customer 119887 is 1 it means thatthere is a connection between the customer 119886 and customer119887 We also correct the diagonal of the matrix which should be1 The generated examples can be found in [18]

42 Experimental Results We generate different sizes ofproblems with different number of customers (varies from 10to 90) which can be found in [18] All experiments are run ona personal computer with an Intel Core i7-3612QM processorrunning at 210GHz We use C for the GA implementationand CPLEX 124 for the MIP model Before comparing MIPand GA we first analyze the performance of MIP withdifferent time limits We limit MIP with 1800 3600 and7200 seconds and represent the results as MIP 18 MIP 36and MIP 72 respectively In the real-world application thecompany has more than 50 customers Although we preparesamples up to 90 customers we could not use all of themsince MIP 7200 could not find any feasible solution withintime limits for the problem with 60 customers Thereforewe restrict Table 9 with the samples up to 50 customers Weincrease the number of samples for small-size problem butthe gap gets bigger after 30 customers and problems getharder to solve thus we generate only one problem for morethan 30 customersThe gap for theMIPmodels is calculatedby the branch and bound algorithm in CPLEX 124 as in(11) where the best solution is represented by 119911

1015840 and the bestinteger solution is represented by 119911lowastThe experimental resultsare detailed in Table 9

Gap =

100381610038161003816100381610038161199111015840minus 119911

lowast10038161003816100381610038161003816

119890minus10

+ |119911lowast|

(11)

The first part of Table 9 gives the information about samplesthe second part presents the objective function values foundwithin different time limits the third part shows the requiredtime for solutions and the fourth part indicates the gapvalues which are calculated by CPLEX 124 The last part

Table 7 Volume and weight coefficient for each product

Coefficient Weight (kg) Volume (m3)1198751199031199001198891199061198881199051 1075 0281198751199031199001198891199061198881199052 1131 167

Table 8 Uniform distribution of demands of customers

Product type Distribution1198751199031199001198891199061198881199051 119880 (5 250)1198751199031199001198891199061198881199052 119880 (2 16)

shows the improvements in percentage between time limitsthe first column (18ndash36) presents the improvement in totalcost if we run the MIP model within 3600 seconds insteadof 1800 seconds the second column (18ndash72) presents theimprovement in total cost if we run the MIP model within7200 seconds instead of 1800 seconds and the last column(36ndash72) presents the improvement in total cost if we run theMIP model within 7200 seconds instead of 3600 seconds

Table 9 indicates that theMIPmodel solves the small-sizeproblems (10 customers) optimally withinminutesWhen thenumber of customers increases to 15 MIP generates similarresults with all time limits but it could not prove the optimal-ity of solutions within time limits Considering the problemsthat contain 20ndash50 customers the difference between timelimits becomes clear and MIP 7200 performs better thanthe other compared options In addition MIP 7200 reachessolutions with smaller gap which are close to optimality asseen in the gap part Although the solutions look similarwith different time limits the improvement part clarifies thecontribution of 7200 time limits to model results If we use3600 seconds instead of 1800 seconds we improve the resultswith an average of 115 However if we use 7200 secondswe improve the results with an average of 238 Moreoverthe real-world applications usually contain more than 50customers and the MIP 7200 model would provide betterfeasible results for larger examples thus we limit MIP within7200 seconds for next comparisons

We compare the MIP model with the GA by usingsame randomly generated samples in previous experiment[18] We limit MIP within 7200 seconds and determine thegeneration limits for GA as 500 generations We detail thecomparison between MIP and GA in Table 10 The firstcolumn shows the number of customers in each problemthe second column indicates the number of problems thethird part demonstrates the objectivefitness function of theMIP and GA and the fourth part indicates the solution timeof algorithms We calculate the gap for GA similar withthe branch and bound algorithm by using the MIP resultas the best solution in (12) The last two parts demonstratethe number of vehicles used by the algorithms We definean upper bound for the vehicles in order to limit the vehicleindex in theMIPmodel however the GA does not need suchan upper bound

Gap =

119872119890119905ℎ119900119889119878119900119897119906119905119894119900119899 minus 119861119890119904119905119878119900119897119906119905119894119900119899

119861119890119904119905119878119900119897119906119905119894119900119899

lowast 100 (12)

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 11: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

The Scientific World Journal 11

Table 9 Comparison of MIP models with different time limits

Customers Problem Total cost Elapsed time Gap ImprovementMIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 MIP 18 MIP 36 MIP 72 18ndash36 18ndash72 36ndash72

10

1 9400 9400 9400 340 340 340 000 000 000 0 0 02 11360 11360 11360 82 82 82 000 000 000 0 0 03 10700 10700 10700 131 131 131 000 000 000 0 0 04 8900 8900 8900 107 107 107 000 000 000 0 0 05 11820 11820 11820 100 100 100 000 000 000 0 0 0

15

1 18180 18140 18140 1800 3600 7200 3714 2854 2679 022 022 02 14140 14100 14100 1800 3600 7200 2915 2081 1956 028 028 03 13600 13600 13600 1800 3600 7200 2919 2134 1998 0 0 04 16180 16100 16100 1800 3600 7200 3100 2484 2354 049 049 05 15020 15020 15020 1800 3600 7200 3103 2350 2232 0 0 0

20

1 19840 19760 19760 1800 3600 7200 3478 640 637 040 040 02 22540 21960 21880 1800 3600 7200 4235 519 477 257 293 0363 20420 19380 19380 1800 3600 7200 3558 650 647 509 509 04 21220 20800 20800 1800 3600 7200 3651 692 688 198 198 05 19380 18260 18260 1800 3600 7200 3343 575 575 578 578 0

30 1 29780 29740 29740 1800 3600 7200 2365 2281 2196 013 013 040 1 42920 41300 41300 1800 3600 7200 3005 3005 2727 377 377 050 1 68200 68200 53380 1800 3600 7200 5198 5196 3862 0 2173 2173

Avg 2477 847 302 115 238 123

Table 10 The comparison of MIP and GA

Customers Problem Total cost Elapsed time Gap Number of trucks Number of TIRsMIP GA MIP GA MIP GA MIP GA MIP GA

10

1 9400 9900 340 42 mdash 532 4 2 2 52 11360 11360 82 40 mdash 000 5 2 4 63 10700 11120 131 40 mdash 393 3 2 5 64 8900 9820 107 49 mdash 1034 4 5 3 35 11820 12400 100 45 mdash 491 4 3 5 6

15

1 18140 18640 7200 110 2679 276 6 3 8 102 14100 14940 7200 106 1956 596 3 4 7 73 13600 14900 7200 112 1998 956 4 7 6 54 16100 17520 7200 98 2354 882 4 5 8 85 15020 15980 7200 120 2232 639 3 8 8 5

20

1 19760 21720 7200 217 637 992 1 3 12 122 21880 24060 7200 209 477 996 0 7 13 113 19380 22220 7200 216 647 1465 2 8 11 94 20800 23360 7200 204 688 1231 2 5 12 125 18260 20760 7200 202 575 1369 1 5 11 10

30 1 29740 36120 7200 636 2196 2145 9 8 13 1840 1 41300 46020 7200 1309 2727 1143 5 10 23 2350 1 53380 65360 7200 3314 3862 2244 17 33 24 2160 1 lowast 79020 7200 4371 10000 lowastlowast lowast 21 lowast 3770 1 lowast 81920 7200 7724 10000 lowastlowast lowast 28 lowast 3480 1 lowast 98020 7200 9932 10000 lowastlowast lowast 30 lowast 4390 1 lowast 118440 7200 15146 10000 lowastlowast lowast 39 lowast 50

Avg 5598 2011 3708 966lowastMIP could not find any feasible solution within time limitslowastlowastGap values for GA could not be calculated because of the deficiency of MIP cells

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 12: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

12 The Scientific World Journal

For all generations 119866For the population 119875

For all chromosomes 119862119894 = 0 to 119892

119895 = 119894 + 1 to 119892

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 (inter-Vehicle Types interchange)(i) If 119895 = 119894 + 1 (adjacent customers)

(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

(ii) If 119895 gt 119894 + 1 (nonadjacent Customers)(a) 119886 = 0 119887 = 0 119888 = 0(b) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119886 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(c) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

119887 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

+ (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895minus1119895))

(d) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

119888 = 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895+1)

(e) If 119886 + 119887 + 119888 lt 0

(1) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are interchanged(2) Calibrate the random key numbers (Section 322 item (i))

If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890(intra-Vehicle Types exchanging)(i) 119886 = 0 1198861 = 0 1198862 = 0 119887 = 0 1198871 = 0 1198872 = 0(ii)1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 01198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 0(iii) 119886 = 119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895) minus 119880119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894)

(iv) If 119894 gt 0 amp 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894minus1119894))

(v) If 119894 == 0 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119894 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198861 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119895) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894))

(vi) If 119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119894 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198862 = (119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119895119894+1) minus 119879119862119881119890ℎ119879119910119901119890(119894)119862119906119904119905119900119898119890119903(119894119894+1))

(vii) 119887 = 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 + 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894) minus 119880119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895)

(viii) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895minus1119895))

(ix) If 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 = 119866119890119899119890(119895 minus 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198871 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119894) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895))

(x) If 119895 lt 119892 minus 1 amp 119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890 == 119866119890119899119890(119895 + 1)119881119890ℎ119894119888119897119890119879119910119901119890

1198872 = (119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119894119895+1) minus 119879119862119881119890ℎ119879119910119901119890(119895)119862119906119904119905119900119898119890119903(119895119895+1))

119886 = 119886 + 1198861 + 1198862

119887 = 119887 + 1198871 + 1198872

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631 = 119872119886119909 (119879119879119866119890119899119890(119894)119881119890ℎ119894119888119897119890119879119910119901119890 119879119879119866119890119899119890(119895)119881119890ℎ119894119888119897119890119879119910119901119890)

1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 = 119872119886119909 (119886 119887)

Algorithm 1 Continued

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 13: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

The Scientific World Journal 13

(xi) If1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198632 lt 1198721198861199091198791199031198861198991199041199011199001199031199051198861199051198941199001198991198621199001199041199051198631

(a) In this case 119866119890119899119890(119894)119862119906119904119905119900119898119890119903 and 119866119890119899119890(119895)119862119906119904119905119900119898119890119903 are exchanged(b) Calibrate the random key numbers (Section 322 item (ii))

Algorithm 1 Local search

Experimental results show that MIP is able to solve theproblems with 10 customers to optimality However for theproblems that contain 20ndash50 customers MIP could not reachthe optimal solutions within time limits (2 hours) MoreoverMIP could not provide any feasible solution in 2 hoursfor large-size problems that contain 60ndash90 customers Onthe other hand GA is able to reach similar results with a966 gap In addition the GA provides feasible solutionsfor larger problems which have similar size with real-worldapplications The last three results of GArsquos elapsed time arehigher than 7200 seconds which are shown in Italic It ispossible to decrease the elapsed time via decreasing thenumber of generations For example if the same algorithmwould run with 250 generations instead of 500 generationsfor the problem of 70 customers the elapsed time would be381724 seconds and total cost would be 85660 Thereforewe can change the parameters of GA in order to catch theflexibility of real-world applications and we can arrangethem to reach feasible solutions within desirable times Inconclusion the number of customers increases the problembecomes harder to solve for both MIP and GA However forthe real-world applications GA is preferable rather thanMIPto reach feasible solutions in short time periods by arrangingthe algorithmrsquos parameters

5 Conclusions and Directions forFuture Research

In this paper we introduce a vehicle routing problem theMCHFOVRPSDMP which has not yet been investigated indetail so farWith the aimofminimizing the total distributioncost we have formulated a MIP model for the problemand developed a solution approach based on a genetic-localsearch algorithm requiring much less computational timethan the MIP Since the problem type discussed in thispaper is not exactly the same as those in the literature werandomly generated different problems with different routesand demands We used these problems to evaluate the MIPmodel and the GA The experimental results showed thatalthough MIP was able to find better solutions than GAfor small-size problems it was not possible to obtain anyfeasible solutions of large-size problems within time limitsOn the other hand GA was able to reach feasible solutionsof large-size problems in shorter time periods However thegap between GA and MIP is greater than expected andtherefore we continue our research to improve GA and toinvestigate new solution methods for this unique vehiclerouting problem Generating hybrid algorithms through theuse of different metaheuristics might be a worthwhile avenueof research

Appendix

The pseudocode for the local search for brevity only the keysteps are detailed C notation is used see Algorithm 1

Conflict of Interests

The authors declare that there is no conflict of interestsregarding the publication of this paper

References

[1] R Y K Fung R Liu and Z Jiang ldquoAmemetic algorithm for theopen capacitated arc routing problemrdquo Transportation ResearchPart E Logistics and Transportation Review vol 50 no 1 pp53ndash67 2013

[2] J Brandao ldquoA tabu search algorithm for the open vehicle routingproblemrdquo European Journal of Operational Research vol 157 no3 pp 552ndash564 2004

[3] E E Zachariadis and C T Kiranoudis ldquoAn open vehiclerouting problem metaheuristic for examining wide solutionneighborhoodsrdquo Computers and Operations Research vol 37no 4 pp 712ndash723 2010

[4] B Eksioglu A V Vural and A Reisman ldquoThe vehicle routingproblem a taxonomic reviewrdquo Computers and Industrial Engi-neering vol 57 no 4 pp 1472ndash1483 2009

[5] A N Letchford J Lysgaard and R W Eglese ldquoA branch-and-cut algorithm for the capacitated open vehicle routing problemrdquoJournal of the Operational Research Society vol 58 no 12 pp1642ndash1651 2007

[6] H Simbolon ldquoDeveloping a direct search algorithm for solvingthe capacitated open vehicle routing problemrdquo AIP ConferenceProceedings vol 1337 pp 211ndash217 2010

[7] M Gendreau G Laporte CMusaraganyi and E D Taillard ldquoAtabu search heuristic for the heterogeneous fleet vehicle routingproblemrdquo Computers and Operations Research vol 26 no 12pp 1153ndash1173 1999

[8] E D Taillard ldquoA heuristic column generation method for theheterogeneous fleet VRPrdquoOperations Research vol 33 no 1 pp1ndash14 1999

[9] R Tavakkoli-Moghaddam N Safaei M M O Kah and MRabbani ldquoA new capacitated vehicle routing problem withsplit service for minimizing fleet cost by simulated annealingrdquoJournal of the Franklin Institute vol 344 no 5 pp 406ndash4252007

[10] C Archetti and M G Speranza ldquoVehicle routing problemswith split deliveriesrdquo International Transactions in OperationalResearch vol 19 no 1-2 pp 3ndash22 2012

[11] N van Hop and N N Nagarur ldquoThe scheduling problem ofPCBs for multiple non-identical parallel machinesrdquo EuropeanJournal of Operational Research vol 158 no 3 pp 577ndash5942004

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 14: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

14 The Scientific World Journal

[12] J H Holland Adaptation in Natural and Artificial Systems AnIntroductory Analysis with Applications to Biology Control andArtificial Intelligence The University of Michigan Press 1975

[13] D E Goldberg and J H Holland ldquoGenetic algorithms andmachine learningrdquo Machine Learning vol 3 no 2 pp 95ndash991988

[14] D Yilmaz Eroglu and C Ozmutlu ldquoMip models and hybridalgorithms for simultaneous job splitting and scheduling onunrelated parallel machinesrdquoThe Scientific World Journal vol2014 Article ID 519520 19 pages 2014

[15] D Yilmaz Eroglu H C Ozmutlu and S Ozmutlu ldquoGeneticalgorithm with local search for the unrelated parallel machinescheduling problem with sequence-dependent set-up timesrdquoInternational Journal of Production Research 2014

[16] R L Haupt and S E Haupt Practical Genetic Algorithms JohnWiley amp Sons 2004

[17] P-C Chang and S-H Chen ldquoIntegrating dominance propertieswith genetic algorithms for parallel machine scheduling prob-lems with setup timesrdquo Applied Soft Computing Journal vol 11no 1 pp 1263ndash1274 2011

[18] ldquoMchfovrpsdmp datardquo httpyadiskd9-wg5kTNSV7fD

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of

Page 15: Research Article Introducing the MCHF/OVRP/SDMP: …downloads.hindawi.com/journals/tswj/2014/515402.pdf · 2019-07-31 · the concept of split service in the capacitated vehicle routing

Submit your manuscripts athttpwwwhindawicom

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical Problems in Engineering

Hindawi Publishing Corporationhttpwwwhindawicom

Differential EquationsInternational Journal of

Volume 2014

Applied MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Probability and StatisticsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Mathematical PhysicsAdvances in

Complex AnalysisJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

OptimizationJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

CombinatoricsHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Operations ResearchAdvances in

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Function Spaces

Abstract and Applied AnalysisHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of Mathematics and Mathematical Sciences

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Algebra

Discrete Dynamics in Nature and Society

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Decision SciencesAdvances in

Discrete MathematicsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom

Volume 2014 Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Stochastic AnalysisInternational Journal of