• No results found

Increasing the efficiency of milk collection using the Vehicle Routing Problem

N/A
N/A
Protected

Academic year: 2021

Share "Increasing the efficiency of milk collection using the Vehicle Routing Problem"

Copied!
29
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Increasing the efficiency of milk collection

using the Vehicle Routing Problem

A. Kramer

(2)
(3)

Increasing the efficiency of milk collection

using the Vehicle Routing Problem

Anne-Betske Kramer

s1270001

Abstract

In the Vehicle Routing Problem a set of scattered points need to be connected with a depot (by one or multiple routes). Routes have to be designed to minimize costs in such a way that each point is visited exactly once. Note that all routes start and end at the depot.

Royal Friesland Foods (a large dairy co-operation) collects milk from farm-ers and bring this to its factories. Its milk-collection problem belongs to the class of Vehicle Routing Problems.

In this thesis the Vehicle Routing Problem and its application at Royal Friesland Foods will be discussed.

First the Vehicle Routing Problem itself will be discussed. What follows is the outline of the milk-collection problem of Friesland Foods, how it fits the class of Vehicle Routing Problems and the model.

An example shows how the milk-collection scheme of some transporting companies is not the most efficient one. Applying the Vehicle Routing Problem will reduce costs for (at least) one of the transporting compa-nies.

(4)

Contents

1 Introduction 5 1.1 Problem definition . . . 5 1.1.1 Research question . . . 5 1.1.2 Subquestions . . . 5 1.2 Outline . . . 6

2 The Vehicle Routing Problem 7 2.1 Solving the VRP . . . 7

2.1.1 Branch-and-Bound Algorithm . . . 8

2.1.2 Branch-and-Cut Algorithm . . . 9

2.1.3 Greedy heuristic . . . 9

2.1.4 Assignment heuristic . . . 10

3 The collection problem faced by Friesland Foods 11 3.1 Dynamics . . . 11

3.2 Restrictions . . . 12

4 Why use the Vehicle Routing Problem? 13 5 Modeling the collection problem 14 5.1 Model . . . 14

5.2 Constraints . . . 14

6 Optimization 16 7 An example 17 7.1 Intertour . . . 17

7.2 Using the VRP to generate best routes . . . 17

7.3 Route Recommendation . . . 18

8 Limitations 19

9 Recommendations 20

10 Conclusions 21

A Dairy factories in The Netherlands 22

B The process of milk collection 23

C Constraints 24

D Milk Prediction 25

(5)

1

Introduction

Vehicle Routing Problems (VRPs) are a class of operations research problems. In these problems there is a number of scattered points (vertices) and a depot. The goal is to connect the scattered points to the depot (in one or) multiple routes at minimal cost1.

Royal Friesland Foods wants to reduce its milk collection costs, a problem fitting the class of VRPs. In this thesis I will formalize Friesland Foods’ collection problem and model it as a VRP.

1.1

Problem definition

The main problem is to determine the most efficient collection routes for the Friesland Foods’ collection area. Important issues are the class of problems this problem belongs to (the vehicle routing problems), how the problem can be fitted into this class of problems, the formulation of the mathematical model and how to solve this model.

The above can be translated into a research question and some sub questions.

1.1.1 Research question

How can the milk collection problem be solved with the Vehicle Routing Problem?

1.1.2 Subquestions

In order to answer the research question in a structured way, some subquestions have been formulated.

1. What is the Vehicle Routing Problem (VRP)?

2. How can the Vehicle Routing Problem be solved?

3. What is exactly the collection problem Friesland Foods faces?

4. Why not use the Traveling Salesman Problem (TSP) to solve the collection problem of Friesland Foods?

5. How can the collection problem be modeled as a VRP?

6. What are the difficulties when solving the model?

To find the answer to the research question, first the subquestions will be answered in the above order. This will be done using literature (subquestions 1 and 2), the knowledge of experts (subquestion 3) and own expertise (subquestion 4, 5 and 6).

An example will be given to illustrate the possible reduction in costs.

1Cost as mentioned here can be defined in a number of ways, depending of the specific

(6)

1.2

Outline

The first thing that is done in this thesis is to state the problem definition (sec-tion 1.1). What follows is the introduc(sec-tion of the Vehicle Routing Problem and ways to solve this problem (section 2).

Following the subquestions of section 1.1.2, the collection problem Friesland Foods faces will be discussed (section 3).

Next (in section 4) a small discussion of why using the Vehicle Routing Prob-lem as base model for Friesland Foods’ collection probProb-lem instead of e.g. the Traveling Salesman Problem.

Approaching the end of the thesis, the collection problem will be modeled in section 5 and some limitations of solving this problem will be mentioned in sec-tion 8.

(7)

2

The Vehicle Routing Problem

Dantzig and Ramser [ 3 ] first introduced the Vehicle Routing Problem (VRP) in 1959, describing its application of the delivery of gasoline to service stations. Ever since, the problem has been widely studied. The main reasons for this are:

• It is a very interesting but difficult problem.

• It is a very relevant problem, it can be applied in an enormous amount of practical situations.

The problem faced is a practical situation where the VRP can be applied. The VRP can be seen as an extension of the Traveling Salesman Problem (TSP)2

where the constraints posed in the problem faced are taken into account. On the internet [ 16 ], an unknown author described the VRP as:

Vehicle Routing Problem The problem of designing least cost routes from one depot to a set of geographically scattered points. The routes must be designed in such a way that each point is visited only once by exactly one vehicle, all routes start and end at the depot, and the total demands of all points on one particular route cannot exceed the capacity of the vehicle.

The VRP appears in many versions, varying in restrictions and stochasticity. There are two main objective functions that can be used in the VRP:

• minimize the total traveling time/distance

• minimize the usage of vehicles

A combination of the mentioned objectives is also possible.

The most basic version of the VRP (static, deterministic, identical vehicles with capacity restriction, one depot and symmetric traveling costs (cost from A to B equals cost from B to A)) is known as the capacitated VRP (CVRP), described in Toth and Vigo [ 14 ].

Widely studied versions of the VRP, derived from the CVRP are considering time windows, asymmetry, heterogeneous vehicles or stochasticity (e.g. level of demand or - supply) or a combination of the mentioned elements.

2.1

Solving the VRP

The VRP belongs to the category of NP-hard problems. This means that it is extremely difficult to solve the general problem. In fact the class is so hard to solve that the existence of an efficient algorithm for this class is extremely unlikely (Sierksma [ 11 ], page 328). Nonetheless, efforts have been made to find an efficient algorithm, for if an efficient algorithm is found to solve any one problem in the class, it can be easily modified to solve all the problems in this class efficiently due to the strong inter relationship between members of the

(8)

class.

No such efficient algorithm has been found so far. However, in the search for a good feasible solution3 within polynomial time, many heuristics have been developed. In the following sections (2.1.1 until 2.1.4) some algorithms and heuristics for solving the VRP will be discussed. To be more precise, sections 2.1.1 and 2.1.2 cover two exact algorithms for the VRP while sections 2.1.3 and 2.1.4 cover two heuristics used to solve VRPs.

2.1.1 Branch-and-Bound Algorithm

As the VRP is a generalization of the TSP, all relaxations proposed for the TSP are valid for the VRP. A frequently used exact algorithm for solving the TSP is the Branch-and-Bound algorithm. This algorithm (using the right relaxation) can find the optimum for relative small VRP problems.

In the first decades after the introduction of the VRP, relaxations such as the Assignment Problem, the degree-constrained Shortest-Spanning Tree and the state space relaxation were the most effective exact algorithms for solving the VRP. In general, the quality of the lower bounds obtained with these relaxations is poor (Toth and Vigo [ 13 ], section 2.2.3). Substantial efforts are needed to improve these lower bounds.

Later on, in 1994, more sophisticated bounds for the VRP were introduced, like those based on Lagrangian relaxations (for the symmetric CVRP).This re-laxation substantially increased the size of the problems that can be solved to optimality by the branch-and-bound algorithm.

In the Lagrangian relaxation proposed by Fisher [ 5 ], the constraints asso-ciated with the number of visits of each customer and the depot as well as some of the capacity constraints are included in the objective function4. Miller [ 9 ] included some of the subtour elimination constraints in the objective function5. However, not all of the constraints can be fitted into the objective function, due to the cardinality of the set of relaxed constraints. Both Fisher and Miller proposed the following solution:

Include only a limited family F in the Lagrangian relaxation. When constraints are violated by the latest solution of the Lagrangian problem, add them to the Langrangian relaxation with an associated multiplier. Determine the solution of the Lagrangian problem that emerged and check again for constraints vio-lating this solution. Continue until no constraints are violated any more (the Lagrangian solution that is found is feasible) or until a number of iterations (predetermined!) has been executed.

3A feasible solution satisfies all constraints, but is not necessarily the optimal solution

of the problem. By a good feasible solution I mean a non-optimal solution approaching the optimal one. Note that this can be determined by comparing the best solution at a certain time with lower bounds for the optimal solution (defined by the heuristic).

4Where the number of visits of each customer has to be exactly 1 and the number of visits

to the depot has to equal the number of routes.

5Subtour elimination constraint: at least one arc leaves the vertex set (S), for each S with

(9)

There are two important search strategies for the branch-and-bound algorithm. The first strategy is the one of the best bound first. This means that branching is executed on the node that has the smallest lower bound value. The second search strategy is the one is called the depth first search strategy. In this case branching is done according to the lifo (last in first out) system. The first search strategy is proven to be more effective than the second one.

2.1.2 Branch-and-Cut Algorithm

The branch-and-cut algorithm was very successful in finding the optimal solution of large instances of the symmetric TSP (STSP). Because the use of the branch-and-cut algorithm in the VRP has not been studied as long and as thorough as the use of this algorithm in the STSP, such spectacular results can (not yet) be expected for solving the VRP.

The branch-and-bound algorithm is the base of the branch-and-cut algorithm. If the problem that needs to be solved becomes of a size that it cannot be solved with the branch-and-bound technique, cutting planes are introduced. The branch-and-cut algorithm is in fact introducing cutting planes in each node of the branch-and-bound enumeration tree.

Cutting planes efficiently cut away sets of solutions of the relaxed subproblem and thereby strengthen the LP relaxation. For a detailed description of the branch-and-cut method, see J¨unger, Reinelt and Thienel [ 7 ].

A separation algorithm is needed to generate the cutting planes. Some exact and heuristic separation algorithms for various classes of valid inequalities for the VRP are described in Lysgaard, Letchford and Eglese [ 8 ].

Using the cutting planes, the branch-and-bound can be improved in two ways: 1. The optimal value (upper bound) of the subproblem may increase (so the

subtree has a higher probability of being pruned).

2. By cutting some of the solutions of the relaxed problem, there is a higher probability that a feasible solution is found to the unrelaxed problem.

2.1.3 Greedy heuristic

An effective greedy heuristic (improving the Dantzig and Ramser approach) was introduced by Clarke and Wright [ 2 ] in 1964. Starting with as many vehicles as customers, the greedy algorithm starts with sending one vehicle (starting and ending at the depot) to each customer (= original solution).

An important assumption in this heuristic is the triangle inequality: dij ≤ dik+

dkj ∀i, j, k, where dij is the distance between the vertices i and j and where k

denotes the depot. When the objective is to minimize the travel distance, the combination of any two customers in a route is better than the original solution (due to the triangle inequality).

Assuming that the depot is vertex 0, and the distance dijis equal to dji, joining

two customers (i, j) in a route saves the following distance (Sij):

(10)

This is only true if the capacity of the truck is not exceeded. The savings of combining any two customers (i, j) if the capacity of the truck is exceeded is defined to be Sij = −M , where M is some large positive number.

Calculating the savings for each pair of customers, combining those customers where the savings are the largest and repeating this process until it is not pos-sible to create any more positive savings, is executing the greedy algorithm.

2.1.4 Assignment heuristic

An assignment heuristic based on Bramel and Simchi-Levi [ 1 ] divides the VRP into two subproblems which are each less difficult to solve than the VRP itself.

• Clustering phase: dividing the total set of customers into groups (cluster) that can be visited with a single vehicle

• Routing phase: finding a good route for all groups of customers (as deter-mined in the clustering phase)

In the clustering phase groups are created that can be collected with one vehicle in one route. Seeds are defined (a seed is the first customer in a route and acts as a starting point for the cluster) and all other customers will be connected to the seeds.

In the routing phase it is tried to find a good route for every cluster. This boils down to solving the TSP for each cluster (for a Hamiltonian circle6needs to be

created for each cluster).

Note that in order to solve the VRP with an Assignment heuristic, it is impor-tant to determine the costs of defining a customer as a seed and the costs of assigning a customer to a seed. Because such costs are not known, they have to be estimated. One easy way of doing this is to determine the direct costs of using customer i as seed (this equals twice the distance from the plant (vertex 0) to customer i): 2d0i, and of assigning customer j to seed i (equaling twice

the distance between the two customers): 2dij. The advantage of using these

direct costs is obtaining an upper bound on the routing costs.

6A Hamiltonian circle is one route, passing each vertex (of a group of pre specified vertices)

(11)

3

The collection problem faced by Friesland Foods

Friesland Foods is an international dairy co-operation with roots going back to 18797. Over 9.000 farmers in the Netherlands own Friesland Foods and supply

their milk (yearly over 5,3 billion kg).

Collecting this milk and distributing it over its factories brings a cost of over 35 million euro every year. These costs can be influenced by efficient milk allocation (the amount of milk that is brought to each of the 17 factories8) and by efficient

routing9.

The collection of milk is done in a very dynamic environment. For the context of the model, it is important to know these dynamic elements. In the following section an attempt is made to fully map all dynamics of the milk collection problem Friesland Foods faces.

3.1

Dynamics

The milk collection environment Friesland Foods faces is a very dynamic one. In this section an attempt is made to fully map these dynamics.

Seasonality The daily milk supply in the summer is (much) higher than in the winter.

Collection pattern Most farmers have their milk collected every 6 milkings (counting two milkings a day), some farmers have their milk collected in a different pattern (due to religious reasons). The combination of the two collection patterns means the same group of farmers is collected once every six weeks.

Number of farmers The number of farmers decreases every year with 2-3%. It is not possible to estimate which farmers stop, implying uncertainty in long term studies.

Quotum The sum of the quotum of all farmers in the Netherlands is known on a yearly base (every year it can be widened by the European Union). However, it can be sold and leased amongst farmers, which makes the total amount of milk at one farmer hard to predict.

Milk demand The demanding factories are not always the same (due to short running or long running contracts with external factories).

The demand for milk differs daily for every factory.

Milk type Different types of milk arise and have to be collected separately (ecological milk, wadden milk, grassland milk).

7Friesland Foods has a long history of merger and take-over, for more information see [ 17 ] 8See also Appendix A.

(12)

3.2

Restrictions

In previous sections the VRP and some methods to solve it have been dis-cussed. There are many versions of the VRP, often defined by the constraints used. When determining the VRP for solving the optimal routes for milk collec-tion, the costs and the constraints belonging to the problem need to be defined. First of all the costs are defined. The cost between two farmers has two compo-nents: distance and time. The cost of driving one kilometer (km) is 57 eurocents, the cost of driving one hour (hr) is 27,18 euro10.

Now the constraints of the milk collection problem of Friesland Foods will be discussed.

Capacity Every vehicle has the same capacity of 34.200 kg. This is the legally allowed maximum weight for the maximum weight of a truck on the Dutch roads is 50.000 kg and the average weight of an empty RMO is 15.800 kg.

Fixed Routes A driver often knows a limited area well enough to collect milk. The fixed routes constraints fixes a number of routes to a certain driver for a given period of time. The fixed routes has been studied before in ??. Dynamics In section 3.1 the dynamics in milk collection have been discussed. One of the uncertainties was the amount of milk produced. There are several predictions concerning the quantity of milk11. This restriction is of lesser importance, for the short term (2 weeks) milk prediction is almost always over 98,5% accurate.

Time windows Most farmers milk twice a day, the time needed for this de-pending on the size of the farm. During milking and sometime after the milking, the milk in the farmers’ tank has a temperature that is so high that it is not allowed to collect that milk. This means most farmers have two (large) time windows in which the milk can be collected12. Because the time windows are very large and don’t even apply to each farmer, this constraint is also considered to be not very important.

RMO stand In general the stand of the RMO is assumed to be at the plant. This is not the case for all RMO’s in the Friesland Foods collection area. Multiple Routes One RMO can have multiple routes on one day. Also, not all routes have to be on the same plant. As long as its first route starts at the stand and the last route ends at the stand, the plants inbetween can differ.

In order to keep the model as comprehensible as possible some of the re-strictions that aren’t very important will not be taken into account. These are the dynamics restriction, the time windows restriction and the RMO stand restriction.

10See also Wouda and Bakker [ 15 ] 11See also Appendix D

12Note there are also farms with an automated milking system, the milk of these farms can

(13)

4

Why use the Vehicle Routing Problem?

Determining which routes vehicles should drive (like in the milk-collection prob-lem) is a routing problem. It is chosen to model the milk collection problem as a Vehicle Routing Problem. However, one of the best known routing problems is the Traveling Salesman Problem (TSP), why then didn’t I choose to model the milk-collection problem as a TSP?

In Sierksma ([ 11 ], p.226) the TSP is formulated as follows:

Given a number of cities together with the mutual distances (the distance table), the objective is to determine a shortest route along the cities, such that each city is visited precisely once, and the start and end points of the route coincide. The essentials of the TSP are described in more detail in Gutin and Punnen [ 6 ].

Translating the problem faced into TSP terms, we get: farmers → cities

truck → salesman

plant → start and endpoint

It needs to be mentioned that this problem faces some restrictions that do not fit the standard TSP:

• Each farmer has a specific milk supply

• Each truck has a maximum capacity of 34.200 kg • There is more than one factory

(14)

5

Modeling the collection problem

In this section the mathematical model of Friesland Foods’ collection problem (described in section 3) will be formulated, using the Vehicle Routing Problem (VRP) and its standard formulation as base.

5.1

Model

Before stating the objective and restrictions in formula’s, a number of variables need to be defined.

Define V = {0, . . . , m} as the set of vertices (= farmers and plants). This group can be divided into two mutually exclusive subsets: P = {0, . . . , n} and F = {n + 1, . . . , m}, where the set F denotes the farmers that have milk that has to be collected and the set P denotes the plants where the milk has to be brought. Denote S ⊆ F as a set of farmers; the estimated supply of farmer i ∈ F as fi and the demand of plant j ∈ P as pj. Let f (S) =Pi∈Sfi denote

the total estimated supply of the set of farmers S.

Let cij (i, j ∈ V ) denote the cost of traveling between locations i and j, cij can

be defined as cij= 0, 57dij+ 27, 18tij. Where dij denotes the distance between

locations i and j in kilometers and tij denotes the time between locations i

and j in hours. Note that symmetric costs are not likely due to one-way traffic therefore we have a problem with asymmetric costs, this means that cij need

not be equal to cji.

The objective function can now be stated:

minX

i∈V

X

j∈V

cijxij (1)

The decision variable xij is a binary variable, it has value 1 if the arc (i, j)

belongs to the optimal solution and 0 if not.

5.2

Constraints

There are some constraints that have to be satisfied, but first some notation will be introduced.

Define the number of routes as N , define Ni, i ∈ P , as the number of routes

associated with plant i. In each route a maximum amount of 34.200 kg can be loaded into the RMO.

Let Si ⊆ F be the set of farmers that supply their milk to plant i ∈ P in the

optimal solution. Note that these sets have the following properties: Si∩ Sj= ∅

for all i, j ∈ P ; i 6= j and ∪i∈PSi= F .

The first restrictions consider the number of visits to each farmer. They have to be visited exactly once:

X

i∈V

(15)

X

j∈V

xij = 1 for all i ∈ F (3)

The number of RMO’s leaving and entering the plant is equal to the total number of routes: X j∈P X i∈V xij = N (4) X i∈P X j∈V xij = N (5)

The maximum capacity of a RMO cannot be exceeded:

f (Si) ≤ Ni× 34.200 for all i ∈ P (6)

The demand of each location has to be satisfied:

f (Si) ≥ pi for all i ∈ P (7)

Finally there is a technical constraint, the variable xij has to be binary:

xij ∈ {0, 1} for all i, j ∈ V (8)

Note that for the problem to make sense, the total expected supply of the farmers has to be at least as much as the total demand of the plants:

X j∈F fj ≥ X i∈P pi (9)

(16)

6

Optimization

The model described in section 5 has been programmed in the route scheduling program Intertour, which will be described in more detail in section 7.1. Having a model and a program with which the model can be solved, questions about what can be optimized arise.

Interesting questions are e.g. the optimal number of transporting companies, or the optimal size of each of the transporting companies. However, in a model of this size, it is not possible to find a good feasible solution (which is not even optimal, see for more discussion on this part section 2.1) in polynomial time. Besides, these problems have already been solved by Wouda and Bakker [ 15 ]. They used a more general model, dividing the collection area into 756 squares of equal size. Using longitude and latitude coordinates, it was possible to define the amount of farmers and the amount of milk in each square. For each of these squares, they used the distance from the center of the square to the various fac-tories. Meaning they reduced the number of collection points from over 9.000 to 756, making the size of the model better to handle.

Their model showed the situation with least costs is the one with only one trans-porting company. This can be explained by the fact that inefficiency occurs at boundaries, especially with stochastic milk supply. The problem of the situation with only one transporting company is that it would have too much power. The board therefore decided the maximum yearly amount of milk in a transporters’ collection area should be 1 billion kg of milk. The yearly amount of milk is about 5,3 billion kg of milk, implying the minimum amount of transporting companies is six.

In this thesis I assume there are six transporting companies, with given borders. This is for these are the facts at the moment and they can not be changed easily, definitely not within a few years.

(17)

7

An example

The transporting companies are obliged to determine their own routes while ful-filling their assignment (bring x kg milk to factory y). Some of the transporting companies do this using an advanced route scheduling program, some do this on the back of a cigar box (so to speak).

Friesland Foods owns an advanced route scheduling program, called Intertour (which will be discussed in section 7.1). Friesland Foods also has access to data concerning true routes. In the remaining of this chapter the route planning program Intertour will be discussed. A number of farmers of which the milk is collected by a transporting company without a professional route planning sys-tem is selected and used as input for Intertour to generate pretty good, feasible routes. The routes Intertour generates will be compared to the routes driven, from which some recommendations will arise.

7.1

Intertour

Intertour is a route scheduling program. It can be used to determine routes for a fixed group of farmers and a fixed plant. It uses the capacity of the vehicle and the estimated amount of milk of each farmer to determine a feasible solution. Intertour uses the branch-and-bound algorithm to solve the problem. The num-ber of iterations can be determined by the user in order to obtain a better solution. The progress between the first solution and the best solution after a given number of iterations can be monitored. Usually the difference is not very large, implying the first estimate is pretty good (or the later estimates are as bad as the first one).

Intertour uses the same constraints as the model described in section 3.2.

7.2

Using the VRP to generate best routes

In this section Intertour was used to generate the best routes13 to collect the

milk of a certain group of farmers. These routes are compared to the real routes driven.

For one of the transporting companies without a professional route planning system, a large vehicle was selected. This vehicle, RMO 353, collects every three days about 498.000 kg of milk originating from 144 farmers. It usually brings this milk to one plant, Lochem.

Every cycle (of 3 days) this truck drives 1421 km during 38:15 hours in order to collect and distribute all this milk, costing 1850 euro’s14.

When planning this group of farmers on Lochem with Intertour, it is possible to drive this route in 1397 kilometers and 36:15 hours, costing 1782 per cycle.

13Best meaning the best routes Intertour generates within 1 minute

14Based on the unit cost of section 3.2. Please note that the truck needs more time when

(18)

This means a cost reduction of 68 euro’s (almost 4%!) per cycle is possible for this truck when applying these routes instead of the usual routes.

7.3

Route Recommendation

(19)

8

Limitations

In this section the limitations I encountered in this thesis will be discussed.

Solution time The first limitation one faces, solving a Vehicle Routing Prob-lem, concerns its solution time. Since there is not a single efficient al-gorithm known to solve the VRP (it belongs to the class of NP-hard problems, see also section 2.1), it is impossible to solve large problems to optimality. Small VRPs usually don’t have this problem, but the problem Friesland Foods faces contains over 9.000 farmers and over 15 factories, thus it can be called a large problem, not solvable to optimality.

I faced this limitation by using only a small number of farmers and one depot in my example (section 7). If one wishes to solve the complete Friesland Foods collection problem, I suggest solving six different areas, one for each transporting company.

Stochasticity The demand of the factories, as well as the supply of the farmers changes every day. The demand is known one week in advance (although day changes are possible), a pretty good estimation of the day-to-day supply can be made a week in advance. This means that this model can be used to solve short-term problems, but that it doesn’t suit long-term situations. If one wants to use it for strategic decision making, it would be wise to add stochasticity (after a thorough analysis of the milk demand and milk supply).

Example In the example of section 7 I used only a small group of farmers (about 1%). This is done for obtaining and modifying the data so it can be used for this purpose has to be done manually. When using a larger dataset, the effort needed to gain a suitable dataset becomes extremely large for the purpose, also the probability of mistakes increases.

(20)

9

Recommendations

In this section some recommendations will be done, based on the above. Based on the example of section 7, I would recommend all transporting groups to use a professional route scheduling program like Intertour in order to solve their day-to-day Vehicle Routing Problem (VRP). This can drastically reduce costs. An indication of how much can be saved can be made with a thorough analysis of the current and possible (VRP) route-planning situation of each transporting company15.

The model described above is useful for day-to-day scheduling for a limited set of farmers. To extend the use of the model, stochasticity in demand and supply can be added so long-term analysis is possible. Furthermore I suggest further research concerning the solver. If it is possible to find a more efficient heuristic, it might be possible to include all farmers and make an overall schedule instead of a schedule per transporting company.

15Note that some transporting companies already use a similar professional program. This

(21)

10

Conclusions

In this thesis I addressed the Vehicle Routing Problem (section 2). It is a difficult problem for which no efficient algorithm has been found.

The milk collection problem of Friesland Foods (as described in section 3) fits the format of the Vehicle Routing Problem (VRP). In section 5 it has been modeled as one. The milk-collection problem does not fit the standard (capacitated) VRP for the problem is more complex. Adding some constrains, the problem can be modeled pretty good.

A pretty good solution to this problem can be found using the Branch-and-Bound algorithm (section 2.1.1) like the one Intertour uses (section 7.1). In an example (section 7) it is shown that using Intertour instead of the current method can reduce costs (by reducing kms and hrs) for at least one of the transporting companies.

(22)

A

Dairy factories in The Netherlands

All dairy processing factories in The Netherlands are shown in Figure 1.

Figure 1: Dairy processing factories

(23)

B

The process of milk collection

The simple version of milk collection is the following:

A farmer milks twice a day, every 6 milkings the milk needs to be collected. A truck visits the farmer and collects its milk and transports it to the factory. In reality there is a little more to it:

First of all there is the problem of size: there are over 9.000 farmers with a total of 5,3 billion kg of milk (a year, that is about 15 million kg a day), this means a lot of trucks are needed to collect and distribute the milk.

Every transporting group has its own group of farmers, the milk of each of these farmers needs to be collected once every 6 milkings. This means each of the farmers has to be divided into one of 6 groups (for every day there are two groups, the day group which is collected between 6 a.m. and 6 p.m. and the night group which is collected between 6 p.m. and 6 a.m.). This is done for a longer time for the stability of the farmers and the reduction of driving errors. Every day a scheduler in Meppel uses a computer program to decide which PLSP needs to bring what amount of milk to which factory the next day and sends it to the PLSP’s. Using this information the PLSP’s can schedule their routes. While scheduling the routes, the PLSP’s need to take some constraints into account16.

When a driver visits a farm, he is obligated to undertake certain actions. First of all he has to turn on the mixer of the tank (and let it mix for 1 minute), then he has to take a sample of the milk (needed to determine the amounts of fat and proteins for payment). After that they can begin pumping the milk into the truck. After all the milk is pumped in the truck, the chauffeur needs to disconnect the hose and roll it up. He has to turn on the cleaning of the tank and write the amount of pumped milk in the farmers book.

If the farmer is the last one in the trip, a sample needs to be taken of the whole lot of milk in the truck. This sample needs to be heated, when arriving at the factory, it is tested on antibiotic (quick-test). If the test is negative, the milk can be unloaded. If it is positive, another test has to be done (β∗). This test is done at the laboratory of the factory and takes about 8 minutes. If this test is negative, the milk can be unloaded anyway. If it is also positive, a third test needs to be done (Delvo test). This is the most sensitive test, it takes about two hours until it is completed. Because in 99% of the cases this test will turn out positive, the milk will be on its way to Borculo (for destruction) during the test. If the test turns out to be negative anyway, the milk will be unloaded at the nearest factory.

Once every 24 hours the truck needs to be cleaned (on the inside because milk belongs to the food category). This can be done at any factory after unloading the truck.

All these actions are monitored with a computer on each truck. When unloading at the factory the data of the past route is transferred to the general data system.

(24)

C

Constraints

There are farmers that have strong beliefs about milk collection on Sundays, they refuse that their milk is collected on this holy day. This provides a problem having a schedule of collecting every 6 milkings, it is not possible to avoid Sundays. These farmers need to be collected in another schedule namely 6-6-4, in this schedule there is no milk collection on Sundays (as well as Wednesdays). Combining these different schedules, every 6 weeks the same group of farmers need to be collected.

There are two shifts every 24 hours, at the beginning of the dayshift (around 6 a.m.) there are still a lot of farmers milking, the same holds for the start of the night shift (around 6 p.m.). If a farmer is milking, it is not possible to collect the milk so the milking times of every farmer have to be taken into account when scheduling the routes.

Almost every day there are waiting times, times at the factory (because another truck is unloading or cleaning), but also on the road (traffic, open bridges). These have to be taken into account when considering the number of vehicles needed for milk collection that day.

(25)

D

Milk Prediction

Friesland Foods has several predictions concerning the amount of milk that will be supplied. The main differences among the predictions are the timespan and the frequency in which they take place.

Rolling Forecast Once a month a rolling forecast is made. This document predicts the milk on a monthly base for the next twelve months.

Milk Supply Prediction Once every two weeks there is the milk supply pre-diction. It estimates the milk quantity for the next 12 weeks on a weekly base.

(26)

E

The Greenfield model

The Greenfield model is a Linear Programming (LP) model. Given a certain supply and demand it determines the optimal allocation of the supply from 749 grids to the demand of 17 plants to which milk is brought regularly.

Optimal is determined to be that allocation in which the costs are minimal. Costs consist of fixed RMO costs, costs for the distance and costs for time. All time needed is put into the model, including fixed shift time, fixed time at a farm yard etc. and restrictions are made on the amount of time one RMO can be used.

Using different realizations of milk supply and milk demand, the optimal allo-cation can be determined for each of these situations. Due to the restriction on RMO time, the necessary number of RMO’s can be calculated in each of the situations.

(27)

References

[ 1 ] Bramel, J. and D. Simchi-Levi (1995). A location based heuristic for general routing problems. Operations Research Vol.43 No.4 p.649-660.

[ 2 ] Clarke, G. and J.W. Wright (1964). Scheduling of vehicles from a central depot to a number of delivery points. Operations Research Vol.12 No.4 p.568-581.

[ 3 ] Dantzig, G.B. and R.H. Ramser (1959). The Truck Dispatching Problem. Management Science Vol.6 No.1 p.80-91.

[ 4 ] Fischetti, M. and P. Toth (1989). An additive bounding pro-cedure for combinatorial optimization problems. Operations Re-search Vol.37 p.319-328.

[ 5 ] Fisher, M.L. (1994). Optimal solution of vehicle routing problems using minimum k-trees. Operations Research Vol.42 p.626-642.

[ 6 ] Gutin, G. and A.P. Punnen (2002). Combinatorial Optimization: The Traveling Salesman Problem and its variations. Kluwer Aca-demic Publishers.

[ 7 ] J¨unger, M., G. Reinelt and S. Thienel (1995). Practical problem solving with cutting plane algorithms in combinatorial optimiza-tion DIMACS Series in Discrete Mathematics and Theoretical Computer Science Vol.20 p.111-152.

[ 8 ] Lysgaard, J., A.N. Letchford and R.W. Eglese (2004). A new branch-and-cut algorithm for the capacitated vehicle routing problem. Mathematical Programming Ser.A 100 p.423-445.

[ 9 ] Miller, D.L. (1995). A matching based exact algorithm for capac-itated vehicle routing problems. ORSA Journal on Computing Vol.7 p.1-9.

[ 10 ] Royal Friesland Foods b.v. (2008). Annual Report 2007.

[ 11 ] Sierksma, G. (2002). Linear and integer programming, theory and practice. Marcel Dekker Inc.

[ 12 ] Sierksma G. and D. Ghosh (2005). Networks in Action, Computer Exercises in Network Optimization (Student Version)

(28)

[ 14 ] Toth, P. and D. Vigo (2002). Models, relaxations and exact ap-proaches for the capacitated vehicle routing problem. Discrete Applied Mathematics. Vol.123 No.1-3 p.487-512.

(29)

Used webpages:

[ 16 ] Vehicle Routing and Travelling Salesperson Problems. www.top.sintef.no/vrp/index.html. Viewed on 25-03-2009. www.belastingdienst.nl/variabel/motorrijtuigenbelasting/ motorrijtuigenbelasting-67.html#P1477 144090.

Viewed on 25-03-2009.

Referenties

GERELATEERDE DOCUMENTEN

De hedge ratio is het aantal opties dat geschreven of gekocht moet worden om één lang aandeel van zekere onderne- ming in een portefeuille te beschermen tegen

The vehicle routing problem which is the subject of this paper is to determine a set of tours of minimum total length such that each of a set of customers, represented by points in

The bad performance on Custom datasets (which contains larger instances) results from a difficulty in estimating the size of the interaction effect (in fact, the estimated

Since we show that the DDVRP is a generalization of the Multi Depot Vehicle Routing Problem (MDVRP), we can benchmark the ALNS solutions against best known solutions to

In this paper we study the two echelon vehicle routing problem with covering options (2E-VRP- CO), which arises when both satellite locations and covering locations are available

These three settings are all investigated for the same input set with 100 locations: one distribution center, nine intermediate points and 190 customer locations; the demand range

This is true since it is the best solution in all solution spaces cut away by the piercing cuts and the remaining part of the solution space cannot contain a better solution, since

Furthermore, we found that the perceived waiting times for both the priority and non-priority customers are significantly lower when using the dissatisfaction function approach,