1
CHAPTER 1 INTRODUCTION
The Vehicle Routing Problem (VRP) is a generic name given to a set of problems in which set of routes for a fleet of vehicles based at one or several depots are to be formed for servicing the customers dispersed geographically. The objective of the VRP is to form a route with lowest cost to serve all customers. More than 50 years have elapsed since Dantzig and Ramser introduced the VRP in 1959 (Dantzig and Ramser 1959). They proposed the first mathematical programming formulation and algorithmic approach. They also described VRP with a realworld application concerning the delivery of gasoline to service stations. Clarke and Wright (1964) proposed an effective greedy heuristic that improved on the DantzigRamser approach. After these two papers, many models and algorithms are proposed for the optimal and approximate solution of the different versions of the VRP (Toth and Vigo 2002).
1.1 VEHICLE ROUTING PROBLEM
Generally, distribution or collection of goods from customers to depot is called as VRP or Vehicle Scheduling Problem. The distribution of goods concerns the service, in a given time period, to a set of customers by a fleet of vehicles, which are located in one or more depots. These vehicles are operated by a set of crews (drivers), and perform their movements by using an appropriate network. In particular, the solution of a VRP calls for the determination of a set of routes, each performed by a single vehicle that starts
2
and ends at its own depot, such that all the requirements of the customers are fulfilled, with some operational constraints and the global transportation cost is minimized. The operational constraints can be a vehicle capacity, route length, time window, precedence relation between customers, etc. Figure 1.1 illustrates a VRP with 3 vehicles serving 10 customers forming 3 routes.
Figure 1.1 Vehicle Routing Problem
A single universally accepted definition of the VRP does not exist because of the diversity of constraints encountered in practice. VRP is a well known integer programming problem which falls into the category of NPhard problems, meaning that the computational effort required in solving this problem increases exponentially with the problem size. For such problems, it is often desirable to obtain approximate solutions, so they can be found fast enough and are sufficiently accurate for the purpose. The Vehicle Routing Problem (VRP) can be seen as a merge of two wellknown problems:
Traveling Salesperson Problem (TSP) and Bin Packing Problem (BPP). TSP as a special case when the number of vehicle is one and its capacity is infinity. VRP is considerably more difficult to solve than a TSP of the same customer size (Laporte 2007). VRP is one of the most important, and most studied Combinatorial Optimization Problem (COP).
3
1.2 VARIANTS OF VRP
Usually, in real world VRPs, many side constraints will appear. Some of the most important types of VRPs are (Hrvoje Markovi et al 2004) shown in Figure 1.2.
Figure 1.2 Basic Variants of VRP

Capacitated VRP (CVRP)  CVRP is a Vehicle Routing Problem (VRP) in which a fixed fleet of delivery vehicles of uniform capacity must provide service to known customer demands for a single commodity from a common depot at minimum transit cost. That is, CVRP is like VRP with the additional constraint that every vehicle must have uniform capacity of a single commodity (Ralphs, 1991). 

VRP with Time Windows (VRPTW)  The VRPTW is the VRP with the additional restriction that is, a time window is associated with each customer, defining an interval [e _{0} , l _{0} ] wherein the customer has to be supplied where e _{0} and l _{0} represents the early and late time. The interval [e _{0} , l _{0} ] at the depot is called the scheduling horizon (Solomon, 1995). 

VRP with Backhauls (VRPB)  The VRPB is the extension of the VRP in which the customer set is partitioned into two 
4
subsets. One contains customers that require a given quantity of product to be delivered and the second contains customers where a given quantity of inbound products must be picked up (Goetschalckx 1993).

DistanceConstrained VRP (DCVRP) – In DCVRP, each route has a maximum length (or time) constraint instead of capacity constraint. 

MultiDepot VRP (MDVRP)  A company may have several depots from which it can serve its customers. If the customers are clustered around depots, then the distribution problem should be modeled as a set of independent VRPs. However, if the customers and the depots are intermingled, then a MDVRP should be solved. A MDVRP requires the assignment of customers to depots. A fleet of vehicles is based at each depot. Each vehicle originates from one depot, provide service to the customers assigned to that depot, and return to the same depot. The objective of the problem is to service all customers while minimizing the number of vehicles and travel distance (Hjorring, 1995). Giosa et al (2002) compared assigning of customers to depot using six heuristic for multidepot VRPTW. 
VRP with PickUp and Delivering (VRPPD)  The Vehicle Routing Problem with Pickup and Delivering (VRPPD) is a VRP in which the possibility that customers return some commodities is contemplated (Righini, 2000). So in VRPPD, it should be taken into account that the goods returned by customers to the delivery vehicle must fit into it. These restrictions make the planning problem more difficult and can lead to bad utilization of the vehicles capacities, increased
5
travel distances or a need for more vehicles. Hence, it is usual to consider restricted situations where all delivery demands start from the depot and all pickup demands shall be brought back to the depot, so there are no interchanges of goods between the customers. Another alternative is relaxing the restriction that all customers have to be visited exactly once. Another usual simplification is to consider that every vehicle must deliver all the commodities before picking up any goods (Savelsbergh 1995).

Split Delivery VRP (SDVRP)  SDVRP is a relaxation of the VRP wherein it is allowed that the same customer can be served by different vehicles if it reduces overall costs. This relaxation is very important if the sizes of the customer orders are as big as the capacity of a vehicle (Dror and Trudeau 1990; Archetti et al 2006) 


Stochastic VRP (SVRP)  Some values (like number of 

customers, their demands, serve 
time 
or travel time) are 

random. Stochastic VRP (SVRP) is a 
VRP where 
one 
or 
several components of the problem are random (Laporte, 1998). Three different kinds of SVRP are:
o 
Stochastic customers: Each customer v _{i} is present with probability p _{i} and absent with probability 1p _{i} . 
o 
Stochastic demands: The demand d _{i} of each customer is a random variable. 
o 
Stochastic times: Service times and travel times t _{i}_{j} are random variables. 
6
In
SVRP, two
stages are
made for
getting a solution. A first
solution is determined before knowing the realizations of the random variables. In the second stage, a recourse or corrective action can be taken when the values of the random variables are known (Steward and Golden 1980; Jaillet 1987).
Periodic VRP (PVRP)  In classical VRPs, typically the planning period is a single day. In the case of the Period Vehicle Routing Problem (PVRP), the classical VRP is generalized by extending the planning period to a specified number of days (Angelelli and Speranza 2002).
1.3 APPLICATIONS OF VRP
There are several important problems that must be solved in real time. The main applications that motivate the research in the field of the real time VRPs are listed below (Ghiani et al 2003).
i. Dynamic fleet management: Several large scale trucking operations require realtime dispatching of vehicles for the purpose of collecting or delivering shipments. Important savings can be achieved by optimizing these operations.
ii. Vendormanaged distribution systems: In vendormanaged distribution systems, distribution companies estimate customer inventory level in such a way to replenish them before they run out of stock. Hence, demands are known beforehand in principle and all customers are static. However, because demand is uncertain at some time, some customers (usually a small percentage) may run out of stock and have to be serviced urgently.
7
iii. 
Couriers: Longdistance courier need to collect locally outbound parcels before sending them to a remote terminal to consolidate loads. Also, loads coming from remote terminals have to be distributed locally. Most pickup requests are dynamic and have to be serviced the same day if possible. 

iv. 
Rescue and repair service companies: There are several companies providing rescue or repair services (broken car rescue, appliance repair, etc.). 

v. 
Dialaride systems: 
Dialaride systems provide 

transportation services to people between 
given 
origin– 

destination pairs. Customers 
can book a trip 
one 
day 
in 
advance (static customers) or make a request at short notice
(dynamic customers).
vi. Emergency services: Emergency services comprise of police, fire fighting and ambulance services. By definition, all customers are dynamic. Moreover, the demand rate is usually low so that vehicles become idle from time to time. In this context, relocating idle vehicles in order to anticipate future demands or to escape from downtown rush hour traffic jam is a major issue.
vii. Taxi cab services: In taxi cab services, almost every customer is dynamic. As in emergency services, relocating temporary idle vehicles is an issue.
viii. Refuse collection: It is an activity rendering used products or wastes and moving them to some points where further treatment is taken care. In real life waste collection vehicle routing problem with time windows (VRPTW), with consideration of multiple disposal trips and drivers’, with workload balancing and compact route of each vehicle need to be found.
8
ix. Newspaper distribution: Distribution of newspaper is similar to VRP, where it is to improve the distribution activity. Distribution activity is a part of the strategic planning of the company which aims to reduce number of staff members and to reduce the cost occurred in the distribution process.
1.4 SOLUTION TECHNIQUES
Both exact and approximation algorithms are applied for solving VRP and its variants. Many algorithms are developed for VRP, mostly heuristics and metaheuristics are applied because the exact algorithms are not guaranteed to find the optimal tours within reasonable computing time when the numbers of cities are large.
1.4.1 Exact Algorithms for VRP
Exact methods guarantee that the optimal solution is found if the method is given sufficient time and space. As stated initially, a simple enumeration is out of question, so exact methods must use more clever techniques. The worst case running time for NPHard problems are still going to be high. Construction of exact algorithms that solve NPhard problems in polynomial time is possible, unless NP = P. For some classes of problems, there are hopes of finding algorithms that solve problem instances occurring in practice in reasonable time.
One of the most successful exact algorithm for solving CVRP is the Ktree method of (Fisher 1994) that succeeded in solving a problem with 71 customers. However, there are smaller instances that have not been exactly solved yet. To treat larger instances, or to compute solutions faster, heuristic methods must be used. Ralphs et al (1995), implemented a parallel branch andcut algorithm, and found an optimal solution for two instances and provided a proof of optimality.
9
Exact methods such as branchandcut, branchandprice and their combination branchcutandprice are used to solve VRP (Wolsey 1998). Blasum and Hochstättler (2000) used branchandcut for VRP. The best algorithm based on twoindex vehicle flow formulations is due to Naddef and Rinaldi (2002). Toth and Vigo (2002) applied branchandbound for solving VRP.
Laporte and Louveaux (1993) proposed an exact algorithm based on the integer Lshaped method for solving stochastic VRP. Gendreau et al (1995) have considered the SVRP in which both customers and their demand are random and formulated it as a nonlinear stochastic integer program and proposed a method based on Lshaped method.
1.4.2 Heuristic Algorithm for VRP
Heuristics are solution methods that can quickly find a feasible solution with reasonable quality. There are no guarantees about the solution quality though, it can be arbitrarily bad. The heuristics are based on these experiments and tested empirically; comments about the quality of the heuristic can be made. Heuristics are typically used for solving real life problems because of their speed and their ability to handle large instances.
Several heuristic methods are proposed to search in a limited space to produce good quality of result in a modest computational time for VRP, which are broadly classified as:

Classical heuristics 

Metaheuristics 
10
1.4.2.1 Classical heuristics
Classical heuristics developed between 1960 and 1990. The class of classical heuristics is divided into three groups: constructive heuristics, two phase heuristics and improvement methods.
Constructive heuristics
Laporte and Semet (2002) defined construction heuristics as follows: “Constructive heuristics gradually build a feasible solution while keeping an eye on solution cost; they do not contain an improvement phase per se”. Many construction heuristics for vehicle routing problems have been proposed during the last 40 years. Many construction heuristics for vehicle routing problems are categorized into three classes: insertion heuristics, savings heuristics, and clustering heuristics.
Insertion heuristics build a solution by inserting one customer at a time. Insertion heuristics can build one route at a time (sequential insertion heuristics) or build many or all routes parallelly (parallel insertion heuristics). The choice of inserting a customer and where to insert a customer is what differentiates the insertion heuristics. A very simple insertion heuristic could choose to insert the customer that reduces the overall cost at least. The Mole and Jameson (1976), expands one route at a time and Christofides et al (1979) applies in turn sequential and parallel route construction procedures.
Savings heuristics initially build a solution where each customer is served by a vehicle on its own route. Routes are then merged one by one according to some criteria. Savings algorithms vary by the criterion used for merging routes (that is, saving obtained by merging two routes) and also by how routes are merged. For the CVRP, the most simple merge operation deletes an edge between the depot and a customer from each of the two routes that is being merged and joins the route by adding an edge between the two
11
customers that are adjacent to only one edge. More advanced merging procedures consider all the customers served by the two routes and solve a TSP (in case of the CVRP) on these customers.
The most widely used savings heuristics for VRP is Clarke and Wright (1964) algorithm. It is based on the notion of savings. This algorithm naturally applies to problems for which the number of vehicles is a decision variable and it works equally well for directed or undirected problems. Desrochers and Verhoog (1989) and Altinkemer and Gavish (1991) described an interesting modification to the standard savings algorithm. Van Breedam (1994) classifies the improvement operations as “string cross”, “string exchange”, “string relocation”, and “string mix”, which can all be viewed as special cases of 2cyclic exchanges. Most savings algorithms have been proposed for the CVRP. A new variant of the savings algorithm is given by Altinel and Öncan (2005).
Clustering algorithms are twophase algorithms. The first phase consists of grouping customers into subsets (clusters) where each subset should be served by one route. The second phase then creates routes for each subset. A third phase may be employed to repair the solution if it turns out that some of the clusters could not be served by a single vehicle. Sweep algorithm is a clustering approach for CVRP which is presented by Gillet and Miller (1974). In practice, the algorithm works by sorting customers according to their polar coordinate angle with the depot as (0, 0). The algorithm starts from the first customer in the list and adds this customer to a cluster. The algorithm continues to process the customers according to the ordering and adds the customer to the current cluster as long as the cluster can be served by a single vehicle. When it is no longer possible to add a customer to the current cluster a new cluster is started and becomes the current cluster. When all customers have been assigned to a cluster, a TSP tour is found for
12
each cluster to produce a CVRP solution. Fisher and Jaikumar (1981) presented a clustering heuristic for the CVRP where the number of vehicles is fixed to K. A generalized assignment problem is then solved. This produces K clusters that each satisfies the capacity constraint. Each cluster is turned into a route by solving a TSP to optimality. Talliard’s (1993) algorithm defines neighborhood using the interchange generation mechanism. A noble feature of Talliard’s algorithm is the decomposition of the main problems into sub problems. Salhi and Sari (1997) proposed three level composite heuristic to solve MDVRP.
Twophase heuristics
It is the one in which there are two heuristics used: clustering and routing. Based on this, there are two types of heuristics: Clusterfirst and routesecond and Routefirst and clustersecond. In clusterfirst and route second heuristics, the clusters are formed and then routes are framed within each cluster. The above mentioned clustering algorithm solves VRP in this manner. Routefirst and clustersecond heuristics is a method in which the first giant TSP is formed without considering the side constraints and then decomposes this into vehicle routes based on the constraints. It had been first put forward by Beasley (1983) who observed that the second phase problem is a standard shortest path problem on an acyclic graph and can thus be solved in O(n ^{2} ) time.
Improvement methods
Local search heuristic methods 2opt local exchange, Oropt exchange etc., are generally used as an improvement method in VRP, to improve the routes of each vehicle. Funke et al (2005) used local heuristic for solving VRP. They have used the terms best search for a steepest descent algorithm and first search for a descent algorithm.
13
1.4.2.2 Metaheuristic methods
A special class of heuristics that has received special attention in the last two decades is Metaheuristics. Metaheuristics provides general frameworks for heuristics that can be applied to many problem classes. High solution quality is often obtained using metaheuristics. Metaheuristics allow deteriorating and even infeasible intermediary solutions in the course of the search process. The best known metaheuristics developed for the VRP typically identify better local optima than earlier heuristics, but they also tend to be more time consuming. The six main types of metaheuristic methods that have been applied to the VRP are Deterministic Annealing (DA), Simulated Annealing (SA), Tabu Search (TS), Genetic Algorithm (GA), Ant Colony Optimization (ACO), and Neural Networks (NN). In recent years apart from these metaheuristics, Particle Swarm Optimization (PSO), Bee Colony Optimization are applied to VRP in finding near optimal solution quickly.
Simulated Annealing
Teodorovic and Pavkovic (1992) build a SAbased algorithm for VRP for stochastic case. Osman’s (1993) implementation of simulated annealing is much more involved, and also more successful. It uses a better starting solution, some parameters of the algorithm are adjusted in a trial phase, richer solution neighborhoods are explored, and the cooling schedule is more sophisticated. The neighborhood structure of this algorithm uses a  interchange generation mechanism in which two routes p and q are first selected, together with two subsets of customers S _{p} and S _{q} , one from each route, satisfying S _{p} and S _{q} . The operation swaps the customers of S _{p} with those of S _{q} as long as this is feasible. The algorithm that is implemented is tested on symmetric VRPs with an unspecified number of vehicles.
14
Van Breedam (1995) compared and tested several version of SA using different neighborhood structures. Tests are conducted on the 14 Christofides, Mingozzi, and Toth instances. These experiments are useful to identify best SA strategies, but overall they confirm the superiority of tabu searchbased heuristics.
Tabu Search
One of the first attempt to apply tabu search to the VRP is due to Willard (1989). The solution is first transformed into a giant tour by replication of the depot, and neighborhoods are defined as all feasible solutions that can be reached from the current solution by means of 2opt or 3opt exchanges. The next solution is determined by the best nontabu move. In Osman (1993), neighborhoods are again defined by means of interchange generation mechanism, with =2. This includes a combination of 2opt moves, vertex reassignments to different routes, and vertex interchanges between two routes. In one version of the algorithm called BA (Best Admissible), the whole neighborhood is explored and the best nontabu feasible move is selected. In the other version, FBA (First Best Admissible), the first admissible improving move is selected if one exists; otherwise, the best admissible move is implemented. The different versions of TS applied to VRP are adaptative memory procedure (Rochat and Taillard 1995), network flow TS (Xu and Kelly 1996). Gendreau et al (1996) developed a tabu search heuristic using a proxy for the objective function in order to efficiently evaluate potential moves for VRP with stochastic demand and stochastic customer. Granular Tabu for VRP had been proposed by Toth and Vigo (2003) to VRP and its application.
15
Genetic Algorithm
Thangiah and Gubbi (1993) used genetic algorithm to find good cluster of customers for VRP with ‘cluster first and route second’. Another GA application for the timeconstrained CVRP may be found in Schmitt (1994, 1995). An interesting feature of this work is that a routefirst, cluster second approach is used, thus allowing the classical path representation (without separators) to be used. The implementation proposed by Schmitt (1995) uses the Order Crossover operator and a Swap mutation operator, where two randomly selected vertices exchange their position. To improve the performance of the GA, this mutation operator is then replaced by a 2opt local search method. GA with neighborhood search method is adopted by Baker et al (2003). They proved that the results are competitive with TS and SA. YiLiang Xu et al (2005) in their paper, proposed three genetic representations for VRP. They used fuel truck dispatch system data set for their investigation with hybrid GA and 2opt routing optimization technique. A hybrid algorithm based on GA and TS for solving CVRP is studied by Guido et al (2008), where they described two simple heuristics and introduced a new genetic operator namely chain mutation. The work done on the CVRP, including its distance or timeconstrained variant, is mostly aimed at evaluating the impact of different components or parameters of a GA on the efficiency of the search. Many researches have been done in VRPSD using GA. Ismail and Irhamah (2008) proposed a new scheme based on a hybrid GA and TS heuristic for VRPSD with preventive restocking. The Breeder Genetic Algorithm (BGA) is also proposed to solve VRPSD by Irhamah and Ismail (2009). BGA is powerful and reliable in global searching than GA.
Ant Systems
Bullnheimer et al (1997), in their paper developed a hybrid ant systems in which each vehicle route produced in a given iteration is improved by the 2opt heuristic before trail update. This algorithm also uses terms
16
related to vehicle capacity and distance savings with respect to the depot when selecting the next vertex to be visited. In the trail update step, they use a number of “elitist ants” to account for the best solution found so far (these ants are assumed to always travel on this best solution). Their computational experiments on the 14 problems of Christofides, Mingozzi, and Toth indicate that the addition of a 2opt step and the use of elitist ants are clearly beneficial. Kawamura et al (1998) proposed a complex hybrid variant of AS that involves 2opt improvement procedures and probabilistic acceptance rules reminiscent of simulated annealing. The method is applied to two geometric 30 and 60 customer instances and it identified the optimal solution in both cases. No other tests are performed, which makes it difficult to assess the effectiveness of this procedure.
1.5 PARTICLE SWARM OPTIMIZATION
Particle swarm optimization (PSO) is a population based evolutionary computation technique developed by Eberhart and Kennedy (Eberhart and Kennedy 1995; Kennedy and Eberhart 1995), inspired by social behavior of bird flocking or fish schooling. The PSO concept originated as a simulation of a simplified social system. The original intent is to graphically simulate the graceful, unpredictable choreography of collisionproof birds in a flock. Then, this simulation is modified by incorporating nearest neighbor velocity, multidimensional search and acceleration, eliminating ancillary variables. During the evolution of algorithms, it is realized at some point that the model is an optimizer. A simple original algorithm (Eberhart et al 1996) is the result after eliminating number of parameters during the process of trial and error.
17
1.5.1 Components of PSO
The main components of PSO are

Swarm of particles that represent the population of solutions 

Each particle represents a candidate solution 

Elements of a particle represent parameters to be optimized 
The PSO is initialized with a population of random solutions/particles. Each particle is treated as a point and has two attribute values: position and velocity. The particle keeps track of its coordinates in the problem space which are associated with the best solution (fitness) it has achieved so far and is called as pbest. Another “best” value that is tracked by the particle swarm optimizer is the best value, obtained so far by any particle in the neighbors of the particle. This location is called lbest. When a particle takes all the population as its topological neighbors, the best value is a global best and is called gbest. The particles fly through the problem space in each generation by following pbest and gbest values.
1.5.2 Procedure for PSO
The size of swarm is I and each particle is of dimension n. The i ^{t}^{h} particle is represented by X _{i} =(x _{i}_{1} ,x _{i}_{2} ,…x _{i}_{n} ). The gbest and pbest solutions are represented P _{g} =(p _{g}_{1} ,p _{g}_{2} ,p _{g}_{3} …p _{g}_{n} ) and P _{i} =(p _{i}_{1} ,p _{i}_{2} ,p _{i}_{3} …p _{i}_{n} ) respectively. The velocity rate of i ^{t}^{h} particle is V _{i} =(v _{i}_{1} ,v _{i}_{2} ,v _{i}_{3} …v _{i}_{n} ).
The implementation of PSO is outlined as follows (Eberhart and
Shi 2001).
1. Initialize the swarm of particles with random positions and velocities on n dimensions in the problem space
18
2. 
Repeat 
the steps 
3 
– 
5, 
until maximum iterations T or 

minimum error criteria is attained 

3. 
For each particle, 

a. Evaluate the desired optimization fitness function in n variables 

b. Compare particles fitness with particles pbest. If the current value is better, then store pbest value equal to current value using Equation (1.1) and (1.2) 

_{} = _{} ), _{} ), 
= 1 ( _{} ) _{} _{>} _{1} 

(1.1) 

_{} = _{} , _{} , 
= 1 ( _{} ) _{} > 1 ^{} 
^{(}^{1}^{.}^{2}^{)} 

4. 
Compare fitness with the populations overall previous best. If current value is better, then store the current value as the gbest value using Equation (1.3) and (1.4) 

= max( _{} ) = 1 
(1.3) 

_{} _{} ( ) = 1 
(1.4) 

5. 
For each particle, 

a. Change the velocity and position of the particle according to the Equations (1.5) and (1.6), respectively 
_{}_{} ( + 1) _{}_{} ( ) _{} _{} _{.} _{}_{} ( ) _{}_{} ( ) _{+} _{} _{} _{.} _{}_{} ( ) _{}_{} ( )
(1.5) 

_{}_{} ( + 1) _{}_{} ( 
) _{}_{} ( + 1) 
(1.6) 
where 1 i I, 1 j n, c _{p}_{,} c _{g} are learning factors / acceleration constants, r _{1} and r _{2} is a random number between 0 and 1, w is a inertia factor, v _{i}_{j} (t) is the velocity of the i ^{t}^{h} particle in the t ^{t}^{h}
iteration of
j ^{t}^{h}
dimension, x _{i}_{j} (t) is the j ^{t}^{h} position of the i ^{t}^{h}
19
particle in the t ^{t}^{h} iteration. c _{p} and c _{g} represent the cognitive and social parameters.
The equation (1.2) and (1.4) stores the pbest and gbest of particles. The equation (1.5) helps each particle to move towards the best of the obtained solution by calculating the difference between its current position value and the pbest or gbest value. This difference value guides the particle to move towards the optimal or near optimal solution in due course. Searching in PSO by using cognitive and social component for d ^{t}^{h} position of i ^{t}^{h} particle is shown in Figure 1.3.
Figure 1.3 Searching Diagram of PSO
The velocity updates are done in two ways:

Synchronous mode in which best position is updated only after all particles positions and personal best positions have been updated. 

Asynchronous mode in which the best position found is updated immediately after each particle’s position update. They lead to faster propagation of best solution. 
20
1.5.3 Variants of PSO
PSO has undergone a number of changes from its beginning. Most of these changes affect the velocity update of the particle. Kennedy and Eberhart (2001), Engelbrecht (2005), Clerc (2006), and Poli et al (2007), detailed the description of many PSO variants.
Most particle swarm optimization algorithms are designed to search in continuous domains. However, there are a number of variants that operate in discrete spaces. It is of two types: Binary PSO (Kennedy and Eberhart 1997) and integer PSO (Parsopoulos and Vrahatis 2002).
The constriction coefficient is introduced as an outcome of a theoretical analysis of swarm dynamics. It is the first method to control the “explosion” of the swarm and developed by Clerc and Kennedy (2002).
The barebones particle swarm (Kennedy 2003) is a version of the particle swarm optimization algorithm in which the velocity and position update rules are substituted by a procedure that samples a parametric probability density function.
In the standard particle swarm optimization algorithm, a particle is attracted towards its best neighbor. A variant in which a particle uses the information provided by all its neighbors in order to update its velocity is called the fully informed particle swarm (FIPS) (Mendes et al 2004).
1.5.4 Hybrid PSO
Other evolutionary computation capabilities are incorporated to PSO as hybrid PSO or the adaptation of PSO parameters for better performance as adaptive PSO. PSO also required to work under complex
21
environments such as multiobjective or constraint optimization problem or tracking dynamic systems.
Many researchers incorporated selection, mutation, crossover as well as Differential Evolution (DE) into PSO algorithm. The main goal is to increase the diversity of the population by:
1. Preventing the particles to move close to each other and collide (Krink et al 2002).
2. Selfadapt parameters such as the constriction factor, acceleration constants (Miranda and Fonseca 2002) or inertia weight (Lovbjerg and Krink 2002)
Selection procedure and selfadapting properties for its parameters are incorporated to PSO algorithm. Angeline (1998) incorporated tournament selection used in EP to PSO. Miranda and Fonseca (2002) introduced self adaption capabilities to swarm by modifying the concept of a particle to include, not only the objective parameters, but also set of strategic parameters.
PSO algorithm is included with differential evolution operator to improve its performance in two ways:
1. To avoid falling into local minima (Zhang and Xie 2003).
2. To find the optimal parameters such as inertia and acceleration constants for canonical PSO (Kannan et al 2004).
Gaussian mutation is combined for updating the velocities and position of particles (Higashi and Iba 2003). Unimodal and multimodal functions are tested. The improvement of standard PSO is done by inclusion of mutation or a simple replacement of the best fitted value. ElDib et al (2004) applied the reproduction system of GA to PSO that modifies both the position and velocity vectors of randomly selected particles in order to reach
22
the optimum. Along with mutation, crossover and elitism are incorporated by Juang (2004). The new generation of populations are generated half by elites and remaining by crossover and mutation.
The SAPSO is presented by Chaojun and Zulian (2006). The disadvantage of getting into the local best point of standard PSO is overcome effectively and the ability of global optimality are toned up.
A novel Condensed Hybrid Optimization algorithm using Enhanced Continuous TabuSearch (ECTS) and PSO is proposed by ChenHung (2009). The ECTS is modified TS, whichhas good search capabilities on large search spaces.
Turbulent PSO (TPSO) is hybridized with fuzzy logic controller (Liu and Abraham 2005) to produce Fuzzy Adaptive TPSO (FATPSO) to adaptively regulate the velocity parameters during an optimization run, thus enabling coarsegrained explosive searches to occur before being replaced by finegrained exploitation later. The problem with both high and low dimensions performs well with TPSO and FATPSO.
1.5.5 Applications of PSO
Like any other evolutionary algorithms, PSO can be applied to solve most of the optimization problems. The potential application areas of PSO are:

System design (Eberhart and Shi 1998; Kennedy 2001; 

Eberhart and shi 2001) Multiobjective optimization (Tandon 2000) 

Power system (Yoshida et al 1999) 

Classification (Wang et al 2007; Chiachong 2006; Alba et al 2007) 

Pattern recognition (Sugisaka and Fan 2005) 
23

Biological system modeling and diagnosis (Eberhart and Hu 
1999) 


Dynamic System (Eberhart and Shi 2001) 

Scheduling (planning) 

Signal processing 

Games 

Robotic applications 

Decision making 

Simulation and identification, etc. 
PSO can solve variety of optimization problems, especially in the field of multidimensional continuous space optimization problems. Expressing the particle position is not easy, hence it is restricted in the application of COP. Many recent researches are mostly in the application of PSO to COP. The main COPs addressed by PSO are:

Scheduling o o 
Job shop scheduling 

Flow shop scheduling, etc. 


Routing Traveling Salesman Problem o 
o Vehicle Routing Problem 
1.5.5.1 Scheduling
PSO is applied for solving task assignment problem by Salman et al (2002). PSO is hybrid with Hill Climbing (HC) algorithm as a local search
24
method for solving task assignment in distributed systems (PengYeng et al 2006). Bo Liua et al (2008) implemented the flow shop scheduling with limited buffers. They proposed a hybrid PSO for solving the flow shop scheduling, where permutation encoding is used for representing the particles.
1.5.5.2 Routing
The fuzzy discrete PSO (Pang et al 2004) is a matrix based approach where the TSP is represented as a matrix containing the set of cities and the TSP sequences. The particle position is a fuzzy matrix, the values of which represent the degree of membership to the corresponding elements of the TSP matrix. PSO is combined with Fast Local Search and GA concepts to guide the particle movement at macro level (exploration) and to improve the solution locally (exploitation). Lopes and Coelho, (2005) and Habibi et al (2006) also developed a hybrid PSO, Ant Colony Optimization (ACO) and SA are incorporated by them. The ACO algorithm replaces the individual best element of PSO, whilst the cooling process of SA is used to control the exploration of the group best element, both of which are then applied within the PSO framework. There are many researches work done in the area of VRP using PSO. The following section explains in detail.
1.5.6 Literature Survey for VRP using PSO
Ning et al (2004), Luo and Shi (2006) and Shao et al (2009) adopted a mixed approach of Global and Local version of PSO (GLPSO), for solving VRP, Vehicle Routing Problem with stochastic travel time, Vehicle Routing Problem with nonfull load. The PSO is hybrid with SA for solving VRP (Liu and Shi 2006; Zhang et al 2006; Chen et al 2006; Ma et al 2007). In SAPSO, (Yang and Qian 2008) adopted 2opt exchange method to construct neighborhood solution.
25
Zhang and Wu (2008) applied FitnessDistance Ratio based PSO (FDRPSO) to facility VRP. Social learning behaviors of a particle in FDRPSO include not only the gbest but also the nbest. The nbest is the best positions visited by the near neighbors of a particle, and accomplished by selecting a particle that maximizes the ratio of the fitness difference to the onedimensional distance. GLNPSO is a multiple social structure technique that is built by combining the three wellknown social structures: gbest, lbest, and nbest.
Multidepot VRP is solved by Wang et al (2007) by proposing a hybrid optimization algorithm which is composed of PSO and improved ACO. Order numbers for vehicles to freight are got by particle position vector, single vehicle route is got by ACO, and then evaluated and filtered particles according to optimal vehicle routes, circulated until terminate qualification.
A hybrid algorithm of PSO with TS algorithm is proposed by Zhao et al (2008) for solving multidepots single vehicle routing problem. They used particle position matrix expression. The results showed that VRP model and algorithm are effective and offerd a way to multidepots single. Ai, and Kachitvichyanukul (2008) proposed an adaptive version of PSO based on the social structure of GLPSO. This method has additional capability to self adapt its inertia weight (w). The w is controlled so that the balance between exploration and exploitation phases of the swarm is maintained. The performance of this adaptive PSO is evaluated for solving VRP instances.
The recent publication of GLNPSO algorithm is resolving CVRP (Ai and Kachitvichyanukul 2007) and VRPSPD (Ai and Kachitvichyanukul 2009). It is tested on VRPSPD and CVRP using benchmark data sets available from literatures and it is competitive with other published results.
26
Ai, and Kachitvichyanukul, (2009) proposed two solution representations for solving the CVRP using GLPSO: SR1 and SR2. The computational result shows that SR1 and SR2 is competitive with other methods for solving CVRP in terms of solution quality and computational time. The solution representation of SR1 with n customers and m vehicles requires a particle with (n+2m) dimension. Each particle dimension is encoded as a real number. The first n dimensions represent priorities of customers; each customer is represented by one dimension. The other 2m dimensions are related to vehicles, each vehicle is represented by two dimensions. The solution representation of SR2 consists of 3m dimensional particle and each particle dimension is encoded as a real number. All dimensions are related to vehicles, each vehicle is represented by three dimensions: two dimensions for the reference point and one dimension for the vehicle coverage radius. SR2 starts with the transformation of particle to the vehicle orientation points and the vehicle coverage radius. The vehicle routes are then constructed based on these points and radius. A feasible route consisting of customers that are located inside its coverage area and have not been assigned to other vehicle is constructed for each vehicle. Vehicle coverage area is defined as an area inside a circle centered at its reference point within its coverage radius.
In (Sombuntham and Kachitvichayanukul 2010) improved PSO is applied for solving MDVRP in which mutation and improved inertia are used. MDVRP with pickup and delivery is solved using PSO with multiple social learning structures in (Zhang and Ye 2010).
1.6 MOTIVATION FOR THE RESEARCH
The PSO is an emerging metaheuristic technique, and considered to be very simple and consistent than other popular metaheuristic and evolutionary methods. It has wide variety of application areas as discussed in
27
section 1.5. Particle encoding for COP are difficult and complex, because of which there is a large scope of research in applying PSO to solve COP. This motivated to perform research in the area of PSO to COP like VRP. The efficient and effective representation of particles to solve COP is the objective of this research. The PSO particles represent the customer sequence. These customers are to be serviced by a vehicle with minimum total cost of servicing. The space and time complexity are to be reduced.
The implementation of VRP is considered as they become ubiquitous today. VRP span a wide variety of industries and involve the commercial distribution of many products that range from newspapers to soft drinks to groceries to milk on a daily basis. Beyond the commercial distribution setting, there are applications that involve waste collection, street sweeping, and delivery of mail. Even after fifty decade, there is more research undergoing in this area, because of its complexity as explained in section 1.1.
1.7 OBJECTIVES OF THE RESEARCH
The main objective of this research is to propose hybrid PSO for solving VRP. The proposed hybrid PSO can be applied for solving different types of VRP and scheduling problems. Four different hybrid PSO algorithms are proposed to minimize the route cost and also to reduce the time and space complexity of hybrid PSO algorithms to solve VRP. The algorithm suites well for any type of combinatorial problem like assignment, partitioning, routing, and scheduling. VRP is the COP considered to perform posteriori testing of the proposed algorithm and it is compared with other existing StateoftheArt methods. The variants of VRP that are considered in this research for testing the PSO algorithm are
Capacitated VRP, and
28

VRP with Stochastic Demands, 

Multidepot VRP 
The main objectives of this research are
1. To propose a new Hybrid PSO (HPSO) with GA operators to minimize the route cost of vehicle of CVRP. Discrete PSO with integer coding is used to represent the particles of PSO. It makes the algorithm easy to model and implement. It also reduces the space and time when compared to other existing PSO methods. To minimize the route cost of each vehicle hillclimbing with 2opt local exchange is incorporated.
2. To extend the proposed HPSO to work for stochastic nature of VRP. The Dynamic Programming (DP) is included to handle this stochastic nature where probability distribution is known rather than the actual value.
3. To propose a new algorithm named Modified kmeans with HPSO (MKHPSO). It divides the customer into groups based on their distance and demand and then actual route is formed within each group by HPSO, thus minimizing the route cost.
4. To propose a Nested PSO (NPSO) to solve CVRP that consists of master PSO and slave PSO. Master PSO partition the customer into groups and slave PSO forms the route such that the cost is minimized.
Proposed algorithms such as HPSO, MKHPSO and NPSO are also applied to a variant of VRP, i.e., MDVRP. A small modification is made in all proposed algorithms. A general kmeans algorithm is first applied to preprocess the MDVRP data thus reducing it to multiple VRPs. Then, each VRP is handled with the proposed hybrid algorithms.
29
All algorithms are implemented in MatLab 7.0.1 with Pentium 4.0, 2.3 GHz processor and tested with Capacitated Vehicle Routing Problem (CVRP) Bench mark problem instances of Augerat et al set A, Augerat et al set B, Augerat et al set P, Christofides and Eilon. MDVRP problem instances from Christofides and Eilon, Gillett and Johnson, Chao et al are used to validate the performance of the proposed algorithms. The data set along with the Best Known Solution (BKS) is available at http://www.branchandcut.org and http://neo.lcc.uma.es/radiaeb/WebVRP/.
1.8 ORGANIZATION OF THE THESIS
Chapter 1 introduces the PSO and VRP. It describes about the PSO, its variants and application. This chapter also discusses the evolution of VRP, its application, variants and solution methodologies. It also covers the motivation and objective of research and gives the outline of the research work.
Chapter 2 deals with the first work of research. The particle swarm optimization is applied along with genetic operators (HPSO) to solve deterministic COP such as CVRP. A twophase heuristic technique routefirst and clustersecond is adapted. The giant sequences of customers are the particles of HPSO. They are represented as permutation of integers. HPSO generate the initial particles using Nearest Neighbor Heuristic (NNH) and random permutation. Steepest descent HillClimbing (HC) with 2opt operator is incorporated to improve the quality of particles. The particles are converted to particle position before applying the velocity and GA operator. The varying inertia is used for updating the velocities to avoid trapping into local optima. GA operator’s twopoint crossover with gbest and pbest and swap or inverse mutation is performed for randomly selected particles. While generating the swarm for next iteration, elites are considered to preserve the best particles in further generation. The computational complexity is also analyzed. This HPSO is tested with CVRP dataset and compared with other existing PSO works. The proposed HPSO algorithm is also used in solving a
30
Multiple Depot Vehicle Routing Problem. The objective of MDVRP is to minimize the total travel length of vehicles stationed at multiple depots.The MDVRP may be split into multiple single VRP making it easy to solve. The splitting of MDVRP into sub problems is taken care by general kmeans algorithm that assigns the customers around the depot. This reduces the MDVRP to multiple singledepot VRP. The HPSO algorithm is then used for solving each VRP. It is tested with MDVRP bench mark problem instances and results are compared with other existing metaheuristic works.
Chapter 3 extends HPSO for stochastic VRP such as VRPSD. The requirement/demand of customers is considered to be random in this stochastic VRP. HPSO is incorporated with Dynamic Programming (DP) to provide solution for such VRP. Apriori sequences of customers are generated by HPSO and dynamic programming is incorporated within HPSO to calculate the cost of generated apriori sequence. Backward recursion is used in DP to solve objective function of stochastic VRP where only the probabilities of customer’s demands are known. The HPSODP is tested with VRPSD random data set and it is compared with other metaheuristic techniques such as GA and PSO.
Chapter 4 deals with solving VRP by clusterfirst and routesecond approach. It results in dividing the problem into a number of sub problems to handle them easily. The modified kmeans algorithm is proposed for clustering and a HPSO is used for sequencing the customers within the clusters such that their cost of servicing is minimized. The modified kmeans algorithm is improved by adding a priority measure. This also selects the initial centroids based on the distance of customer from the depot. The number of clusters formed is equal to the number of vehicles available. This algorithm is tested with CVRP data set. It is also applied for solving MDVRP and tested with benchmark problem instances of MDVRP. The results are also compared with other existing metaheuristic methods and HPSO.
31
Chapter 5 provides the Nested PSO (NPSO) for solving CVRP. NPSO consists of Master PSO and Slave PSO. Master PSO deals with assigning the customers to a vehicle. While assigning the customers, it deals with the capacity constraint of a vehicle. This master PSO uses redundant representation as its particle. Then the slave PSO deals with forming the sequence of customers serviced by the respective vehicle. It minimizes the routing cost of a vehicle. The proposed NPSO is tested with CVRP data set and is also compared with other proposed and existing StateoftheArt methods. The NPSO is also tested with MDVRP data set and compared with other HPSO and MKHPS methods.
Chapter
6
summarizes
the
work,
draws
the
conclusions
and
provides suggestion for future work.