Vehicle Routing for Verde Azul Project Triple A Ruteo de Vehículos para el Proyecto Verde Azul Triple A

INGENIARE, Universidad Libre-Barranquilla, Año 8, No. 14, pp. 13-29 • ISSN: 1909-2458 * Docente de Ingeniería Industrial Universidad Libre Barranquilla, Estudiante de Doctorado en Ingeniería Industrial, Universidad del Norte. dfsuero@gmail.com ** Estudiante de Maestría en Ingeniería Industrial, Universidad del Norte. hugoarmandocaro@gmail.com *** Estudiante de Doctorado en Ingeniería Industrial, Universidad del Norte. jlloprado@hotmail.com ABSTRACT Verde Azul project Triple A is a set of activities to recover from the source, recyclable material that will be duly processed and sold to companies for reuse. The problem to solve in this articles is to fi nd a set of delivery routes satisfying pick up requirements and giving minimal total cost. In practice, we are minimizing the total distance travelled from the scepter collection to customers.


I. INTRODUCTION
Triple A S.A. ESP has established recycling program Verde Azul, which is to perform a specialized garbage collection, the program lies in giving a fi nancial reward to companies and the residential sector to make a separation of garbage: recyclables and organic material, which can mainly consists of the following materials: cardboard, glass, PET plastics, paper, newsprint and scrap.
The main purpose of the program is Verde Azul recycling increase user participation in the recycling process through incentives such as discounts on the bill for the Triple A services according to the weight of recyclables collected at time t.Such, this type of project or policy is consistent with current trends.Reduction of the primary resource use, pollutioen prevention, waste management and sustainable products policy became the focus points of modern industrial societies and environmental policy efforts.Among these, waste management is an essential part of any environmental management activities of production enterprises, recycling nowadays are also becoming more and more important in all fi elds [1].

II. ROUTING (VRP PROBLEM)
The VRP belongs to the class NP-Hard, because the TSP (Travelling Salesman Problem) belongs to this class, and is a particular case of VRP, when there is only one vehicle available, and there are no capacity constraints and total distance traveled [2].
The required computational time and effort to solve this problem increases exponentially with respect to the size of the problem, for example, the number of nodes to be visited by vehicles.For this type of problems is often desirable to obtain approximate solutions, so they can be found fast enough and which are suffi ciently good to become useful in making decisions [3].
The problem identifi ed Verde Azul program model corresponds to the family of vehicle routing problems with capacity constraints in the fl eet as a central repository and a set of customers with known demands collection and delivery of certain goods homogeneous, they want to fi nd a set of routes to meet the demand of all customers at the lowest cost.All tours start and end in the central repository, which has a fl eet of vehicles, heterogeneous in terms of capacity and fi xed cost associated with each and the vehicle can not exceed its capacity [4].
A CVRP instance can easily be transformed to a VRPTW instance.This can for example be done by setting all travel and service times to zero and all time windows to [0,0].If the CVRP contains a route duration constraint then travel times and durations should be set as in the CVRP.All time windows (including the ones at the end terminals) should be set to [0, D] where D is the route duration [5].

III. TRANSPORT OF MATERIALS (PL PROBLEM)
The method of work in the project is as follows: 1. Routing of trucks.2. Upload and weighing of materials at the point of delivery, destination winery.3. Upload and weighing of materials in the warehouse, bound for industry.

Picture 1. Verde Azul project vehicle
Source: By Authors

IV. GENERAL DESCRIPTION OF THE PROBLEM OF TRANSPORT
1.A set of m points of supply from which a product is shipped.The supply point i caters to the uttermost if units.
2. A set of n demand points to which the product is shipped.The demand point j must receive at least dj units of the product shipped.
3. Each unit produced at point i and sent to the supply demand point j incurs a variable cost cij.Xij is the number of units shipped from supply point i to demand point j, then the general formulation of a transportation problem is [6]:

V. SOLUTION FOR ROUTING PROBLEM
Where 0 is the storage cellar of the "Verde Azul", and the other nodes correspond to the list presented in the Excel fi le with addresses each.
For the model presented, we considered the following assumptions: • All channels work both ways and have no mobility restrictions for trucks.
• The corners of the blocks are separated by a distance of 64 m/block.
• To get from point A to point B, the trucks would travel a maximum of two straight as to connect two points on a Cartesian plane, without making diagonal or shortcuts.
• The service time at each node is constant and not optimize, unlike the transition time from one node to another.The distance obtained by performing the full path of the route that touches every node is not to possible to obtain:

Picture 3. Result of GAMS procedure for PL problem
Source: By Authors As it could be seen, the GAMS linear programming model didn't produce any results due to the high complexity and size that a 96-node routing problem implies for exact methods.The free version of GAMS lacks the capacity to get any solution beyond its regular limits.
This fact supports the thesis that for NP-Hard problems, such as vehicle routing with vehicle limited capacity as is Verde Azul Program's situation, it might be more appropriate to start off with Heuristic or Metaheuristic procedures, as exact methods like linear programming may result incapable of giving a neighbor to optimal solution in a reasonable computational time, or sometimes it would even fail to give a solution at all, such as the present case.
However thereby varying times (over longer distances or more time spent on trips) must be reasonably low.As mentioned previously, this opens analysis of greatest accommodate other nature for future deliveries may consider more realistic elements, for example, divide the route into two sub-aggregate routes each assigned to one of two trucks, which the total distance traveled and the time decreases further.The next most important aspect to be treated for the problem is the ability to free up space in the warehouse to avoid extra accumulations of material, which will be seen in the next section.

VI. TRANSPORT PROBLEM (HEURISTIC METHOD)
The fi rst thing to be done is to identify the type of routing problem that could describe in a better way the Verde Azul project situation, which by a short-timed analysis may be concluded that the program fi ts into a routing problem with capacity limitations and homogenous fl eet (CVRP).Once identifi ed the type of transport problem, it was preceded with the design of the routes the trucks should travel in order to accomplish node demand while minimizing total travelling distance (less distance means less costs).
To design this routes, the chosen method was: clustering fi rst, routing next, which is a very effective heuristic for cases like this one [7].
The method consists on basically the development of two phases.In the fi rst one, clients are grouped into clusters that would guarantee an enclosed region among which they could be visited with short times due their close positions, and would also imply that all the nodes in the same cluster would be visited by the same vehicle during the same voyage following a pre-established route that would make part of the fi nal solution.Nodes demands and vehicle capacity are considered during this fi rst stage in order to assure that the vehicle does not have to return to the depot mid-voyage, but can visit all the nodes at once.Then, during the second phase, after each cluster is created, a route is calculated in order to match all the clients in the group to be visited with minimum traveled distance [8].
For this particular case, we employed the Sweeping Heuristic during the fi rst phase, which implies no complicated steps, reason thanks to which it was calculated without the use of specialized softwares nor highly advanced computers.The method consists of three basic steps [9].

Locate all Customers Geographically
The project owners provided us with the information of 96 clients with their respective addresses, thanks to which we were able to graph their relative positioning in Barranquilla.We will next show the Excel graph that resulted from this.
On the graph, the blue spots are residential clients, green spots are industrial/commercial clients, and the red spot is the Verde Azul warehouse.

Calculate the polar coordinates of all customers where the center is the depot and an arbitrary customer is chosen to be at angle 0
To do this, we fi rst converted absolute Cartesian coordinates to relative Cartesian coordinates, the Depot being the 0,0 and the others would be positioned according to their distance in Carrera and called from The table is not complete due to the fact that there were 96 nodes, so it would occupy a signifi cant space of several pages.A portion of it is shown as an example.

Draw a line from the depot, starting from the un-routed customer with smallest angle and begin a sweep until the fi rst vehicle's capacity is met
In the previously shown umn "L") in increasing order, and amplifi ed the selection to all the corresponding cells, and we started assigning the vehicles to the routes.Column "M": "Camion" indicates the remaining capacity of a certain truck after supplying the demand of the node it was just assigned to (Note that in this case, demands means units (or Kilograms) to be picked up, since it is an inverse logistics program).Considering the two vehicles the program has have a total capacity of 5 Ton (5.000 Kg), the remaining capacity was subtracted with the amount of weigh the truck picked up at the visited node (Demand is shown on column B "Promedio").When the truck's capacity was met, the truck was sent back to the depot to free space, and the other truck was assigned to continue the route.In the normal version of this method, every time a vehicle's capacity is met, a new vehicle is created to generate a whole new route.In this case, we have that there is a set number of trucks equal to two, so when a truck met its capacity, the second truck came in, and when the second truck met its capacity, the fi rst truck came in again, in a second route, and so on.The number of trucks remained constant, but the number of routes realized by each truck increased.
A new graph with color-differentiated clusters was made, as seen next:

Graph 3. Node positions
Source: By Authors The second phase of the Heuristic was developed with genetic algorithms taking as a base a Matlab Demo designed to solve the Travelling Salesman Problem.We adapted the mentioned Demo to our problem, by following these steps [10]: a. Load the the fi le usborder.mat,which is a map sketch in which the clients' coordinates will be inserted.
i  Next, we will share the obtained results when the developed genetic algorithms were ran.Note, the Demo brough a U.S.A. map sketch that we did not fi nd out how to remove, yet, the problem we're here working takes place at Barranquilla, Colombia.The nodes have obviously no relationships in scare nor position with the background sketch.
First: The route corresponding to Truck 1 -Route 1.The following two images show the obtained route by the genetic algorithm metaheuristic, which was the best found route (found after iteration number 10) out of 30 iterations that were ran for this case.
The total distance for this route was: fval = 21.232Km Next, we calculated the route for Truck 2 -Route 1.This time, out of 30 iterations done, the best route was found at the 7 th iteration.The distance for the complete path was: fval = 19.397Km Next, will be shown the results for the route calculated for Truck 1, Route 2. 30 Iterations were ran, and this one shown was the one found at the 28 th iteration.As it may be seen, the only nodes remaining to be visited after the fi rst 3 routes, were the only 4 that are seen the picture.This was due to the fact that the Clustering Procedure was followed strictly without modifi cations, but seeing how much capacity was left on Truck 2 by the second route, it may be inferred that certain post-processing adjustments may be tried in a search for even better solutions.Let's remember that Metaheuristics are good at fi nding good solutions at reasonable computational times even for big problems, but they don't necessarily fi nd the optimum, so there's always a chance they can be fatherly improved.more appropriate to start off with Heuristic or Metaheuristic procedures for the complex of the problem and the time for wait a result.
• Sadly, this result may not be compared to the one given by GAMS' Linear Programming Model, due to the size and complexity of the problem, which didn't allow GAMS to give a result precisely because the model exceeded the available version at Universidad del Norte, Barranquilla.
• Metaheuristics are excellent for fi nding fi ne solutions at reasonable computational times even for big problems, but they do not necessarily fi nd the optimum, so there is always a chance they can be furtherly improved.
• The total distance was 66.168 Km.Using an adaptation of the Matlab Sofware with the sales man route problem, it will be useful for the Verde Azul program because they does not have any rout planning.
Subject to:When the total supply and total demand are equal restrictions must be active Subject to: Defi nition of variables Demand: goods received daily volume (mass) m = 1 number of collection points n = number of demand points n = 96 Residential: 40 customers a day, with two vehicles Industrial: 1-5 clients per day, with two vehicles Xij = number of units collected demand point to the delivery point j i Cij = cost of collecting a unit of demand point j to supply point i Dj = demand at the point of demand j T n = Timeout on each node or point of collection Process data Average distance between nodes = 1.44 Km Average truck speed 50 km/h top speed of the truck 70 km/h Average distance from the point of collection to each node 4.26 km Customer costs: 172.640,56 pesos Transportation costs: 16.573.493pesos ,count2)=sqrt((x1-x2)^2+(y1-y2)^2); distances(count2,count1)=distances(count1,count2); end; end; d.Three necessary functions are created and registered.An individual in a population is an arranged set, so, the population may easily be represented by a set of cells.i.The function Custom Creation: It will create a set of cells, say P, where each element represents an arranged set of the costumers as a permutation vector.Which means, de vendor will displace himself in the specifi c order P. >> type create_permutations.m ii.The Crossover Function: It takes a series of cells from the population and returns a set of sibling cells that result from it.>> type crossover_permutation.miii.The custom Mutation Function: It takes an individual, which is an arranged cell of customers and returns a mutated established order.>> type mutate_permutation.me.A fi tness function is created.This is the total distance traveled for an arranged set of clients.This function needs the distance matrix to calculate total distance.>> type traveling_salesman_fi tness.mf.A function to trace the customers' routes is created: >> %distances defi ned earlier FitnessFcn = @(x) traveling_salesman_fi tness(x,distances); >> type traveling_salesman_plot.m >> %locations defi ned earlier my_plot = @(options,state,fl ag) traveling_salesman_plot(options, ... state,fl ag,locations); g.The Genetic Algorithm confi gurations are established.Then an options structure is created to indicate a personalized data type and the population range.>> options = gaoptimset('PopulationType', 'custom', 'PopInitRange', ... [1;cities]); h.The created functions are graphed, and also some stop conditions are setup: >> options = gaoptimset(options,'CreationFcn',@create_permutations, ... 'CrossoverFcn',@crossover_permutation, ... 'MutationFcn',@mutate_permutation, ... 'PlotFcn', my_plot, ... 'Generations',500,'PopulationSize',60, ... 'StallGenLimit',200,'Vectorized','on'); i.The Genetic Algorithm is ran and if desired, a new iteration can be done by repeating the code.>> numberOfVariables = cities; [x,fval,reason,output] = ga(FitnessFcn,numberOfVariables,options)

Route Obtained from the Genetic Algorith for the Cluster of Truck 2 -Route 1
Source: By AuthorsFigure 4.