You are on page 1of 14

Vol. 40, No. 2, MarchApril 2010, pp.

130143
issn0092-2102 eissn1526-551X 10 4002 0130
informs

doi 10.1287/inte.1090.0475
2010 INFORMS
A Milk Collection Problem with
Incompatibility Constraints
Massimiliano Caramia
Dipartimento di Ingegneria dellImpresa, Universit di Roma Tor Vergata, 00133 Roma, Italy,
caramia@disp.uniroma2.it
Francesca Guerriero
Dipartimento di Elettronica, Informatica e Sistemistica, Universit della Calabria, 87036 Rende, Italy,
guerriero@deis.unical.it
The milk collection problem is well known in rural areas of the world. This paper considers this real-life
problem for an Italian dairy company that collects raw milk from farmers. In our milk collection problem, we
address the constraint that some farms are small and inaccessible by large vehicles; moreover, these farmers
produce different milk types, and the tank trucks used for transporting the milk have multiple compartments.
This generates the additional constraint that at most one milk type can be assigned to a tank compartment.
The goal of this paper is to show how operations research techniques helped the company to improve its
daily performance. In particular, we present a solution approach based on two mathematical formulations and
local search, all embedded within a multiple-restart mechanism. The rst mathematical formulation minimizes
the number of vehicles to be routed in the network; the second minimizes the tour length. We also discuss
experiments we conducted as part of our case study and compare our solution with the process that the company
used previously.
Key words: industries: agriculture, food, transportation shipping; networks; graphs; heuristics.
History: This paper was refereed. Published online in Articles in Advance December 30, 2009.
I
n this paper we study a real-life problem faced
by ASSO.LA.C., an Italian dairy company that col-
lects raw milk from farmers. The considered milk col-
lection problem can be interpreted as a specialized
instance of the vehicle routing problem (VRP).
In the VRP, a set of (homogeneous) vehicles located
at a depot must be routed to serve geographically dis-
tributed customers. Routes must be optimized based
on one or more objective functions, e.g., the mini-
mization of the eet size and (or) the total routing
cost. Each customer has a known demand and ser-
vice duration, and each must be visited only once by
exactly one vehicle. Each route starts and ends at a
depot, and a vehicles capacity may not be exceeded.
The VRP is NP-hard and is usually solved by using
(meta)heuristics (Toth and Vigo 2002; Cordeau et al.
2000, 2002).
A general VRP assumption is that customers can
always be reached by the vehicles; i.e., the size of
a truck and (or) the location of the customer is not
relevant. In practice, this might not be true; indeed, a
truck with a trailer might not be able to reach some
customer locations. In such situations, the trailer must
be uncoupled from the complete vehicle (i.e., the truck
plus the trailer) in ad hoc parking areas before vis-
iting these customer locations; after visiting the loca-
tions the trailer must be coupled again to the pure
truck (i.e., the truck without the trailer), forming a
complete vehicle that continues its tour. This prob-
lem is known as the truck and trailer routing problem
(TTRP); the milk collection problem is a generaliza-
tion of the TTRP.
Assume that the set S of customers is divided
into
customers S
|r
who are accessible with or without
a trailer, and
customers S
.|
who are only accessible without a
trailer.
To address the needs of both customer types, we
must consider a possible uncoupling of the trailer
from the complete vehicle at a parking place to serve
customers in S
.|
. Therefore, following the denition
in Chao (2002), we denote the section of the route in
which a trailer is assigned as the main tour of the
130
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 131
complete vehicle route (CVR). In a CVR, uncoupling a
trailer at a parking place and starting a subtour from
the point of the uncoupling is possible. In a subtour,
which must start and end at the same parking place,
the company can service customers in S
|r
and S
.|
.
Therefore, a CVR is formed by a main tour and possi-
bly a certain number of subtours. Following the TTRP
model of Chao (2002), the depot and any customer in
S
|r
could be selected as a trailer parking place.
For a complete vehicle, the sum of all demands col-
lected on the CVR may not exceed the vehicle total
capacity C +C

(the truck and trailer capacity, respec-


tively), and a subtour cannot exceed the remaining
pure truck capacity, which is C units when the truck
leaves the depot. It is important to note that current
models in the literature assume that at the parking
places, the transported commodities can be trans-
ferred between the truck and the trailer. This is not
possible in our model because of the heterogeneous
milk types.
Unlike a complete vehicle, a pure truck is always
able to service both customer types. Its corresponding
route is called a pure truck route (PTR); it starts and
ends at the depot, does not include any subtours, and
is limited by the pure truck capacity C.
Figure 1 illustrates a tour in which a complete vehi-
cle starts from the depot with a complete vehicle and
visits customers A, B, and C with the trailer; then, at
a parking area, the trailer is uncoupled and the truck
serves a subset of customers in areas that are inacces-
sible to complete vehicles, forming a subtour (dashed
arcs). When the pure truck reaches the parking area
again, the trailer is reattached and the complete vehi-
cle goes back to the depot to complete its tour.
Depot
Parking area
A
B
C
Figure 1: A TTRP solution is shown.
In general, the TTRPs objective is to nd routes
that minimize the total travel cost or time, respecting
the aforementioned constraints, with a possible limi-
tation on the tour length. Solving the TTRP can also
include nding the optimal number of subtours and
the location of the parking places for complete vehicle
routes.
Because farms at which milk is collected are often
small and inaccessible by complete vehicles, milk col-
lection is an important application of the TTRP. Dairy
companies that collect milk are interested mainly in
two cost components: the cost of transport and the
cost of paying the farmers for the milk. Hence, to
maintain the same marginal prot, any increase in
the price paid to the farmers must be balanced by a
reduction in the cost of collecting the milk. Therefore,
optimizing transport cost can allow the company to
pay a higher milk price to farmers, thus attracting
higher volumes and possibly producing economies of
scale in collecting milk (Butler et al. 2005).
This paper presents our experience as opera-
tions researchers in a real milk collection problem.
ASSO.LA.C. collects milk from farmers (we use the
terms customer and farmer synonymously) who live
in different towns and moves it from each produc-
tion site to a central warehouse. It uses a eet of tank
trucks to collect milk (Figure 2). Unlike milk collec-
tion problems studied in the literature, the company
must collect different milk types; when milk of a par-
ticular type has been transferred into a compartment,
that compartment cannot be used to hold milk of a
different type until it has been sanitized and cleaned
at the central warehouse at the end of the day. This
constraint renders the studied milk collection problem
a generalization of the TTRP.
Furthermore, in the problem we consider, pure
trucks and trailers have heterogeneous capacities;
thus, it can be interpreted as a generalization of the
heterogeneous VRP (HVRP), which we denote as het-
erogeneous milk collection with heterogeneous eet
(HMCHF). Baldacci et al. (2008) provide a recent sur-
vey on the HVRP.
Milk collection consists of multiple tasks: (1) milk
selection based on milk quality, (2) a prerefrigera-
tion process of the selected milk, (3) transfer of milk
into a tank by means of pumps capable of loading
1.1 tons in ve minutes, and (4) writing of a report to
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
132 Interfaces 40(2), pp. 130143, 2010 INFORMS
Figure 2: A milk collection tank truck consists of different compartments, each characterized by its capacity.
record information about the milk type and the quan-
tity picked up.
The collected milk is transported to the central
warehouse for inspection. As a tank truck arrives at
the warehouse, a member of a quality control unit
draws samples of the milk to check the correctness of
the information in the report. If a milk sample fails
the quality inspection, the milk is rejected, and the
rejection is reported to the corresponding farmer. The
truck tank is weighed each time a compartment is
emptied to determine the exact quantity of each milk
type collected. This information is important to the
quality control unit, which must determine a price for
each milk type.
In our HMCHF problem, we consider the following
set of operational constraints:
each node in the network can be a loading point
or a parking area,
the tank truck cannot contain a load greater than
its capacity,
multiple tank trucks can pick up milk from a par-
ticular farmer,
the time required for a tour cannot exceed the
work shift,
only one milk type can be assigned to a
compartment.
We propose a multistart optimization approach
based on two mathematical formulations and a local
search that exploits such formulations. The two math-
ematical formulations minimize the size of the eet
and the total route length, respectively. This is one of
the strengths of our approach, because state-of-the-art
milk collection approaches do not consider the num-
ber of vehicles used to service clients.
Milk Collection Problem Review
In this section, we review previous decision support
system (DSS) work on the milk collection problem.
For example, Sankaran and Ubgade (1994) proposed
and implemented CARS, a DSS that utilizes route
construction heuristics for an instance with about 70
milk collection centers in Etah, India. Butler et al.
(2005) showed how a DSS integrated with a geo-
graphic information system allows a scheduler to
interact with route optimization algorithms. Claassen
and Hendriks (2007) studied the development of a
pilot DSS for collecting goats milk and proposed an
operations research (OR)-based approach to support
the milk collection.
For information on algorithmic contributions to
the milk collection problem, we refer the reader to
Butler et al. (1997), Basnet et al. (1999), and Hoff
and Lkketangen (2007). Butler et al. (1997) proposed
to solve the problem for a dairy farm in Dublin,
Ireland by using an extension of the symmetric travel-
ling salesman problem. Basnet et al. (1999) presented
an exact algorithm for a milk-tanker scheduling and
sequencing problem. They modeled a joint problem
of scheduling and sequencing as a linear integer pro-
gram with some nonlinear constraints and solved it
as a real problem for the New Zealand dairy industry;
they also present a fast heuristic algorithm.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 133
Hoff and Lkketangen (2007) modeled the milk col-
lection problem as a TTRP and proposed a solution
algorithm based on tabu search. We also modeled our
milk collection problem as a TTRP. However, because
our problem involves tank trucks with multiple com-
partments and a heterogeneous eet of vehicles, we
developed a generalized TTRP model.
To solve the TTRP, Chao (2002) proposed a method
based on mathematical programming and local search,
Scheuerer (2006) dened two construction heuristics
and a tabu search approach, and Tan et al. (2006)
developed an evolutionary algorithm to cope with the
truck and trailer routing with two objective functions,
i.e., the number of trucks and the routing cost.
In the literature (Chao 2002), mathematical formu-
lation-based approaches for the TTRP dene a gen-
eralized assignment problem (Fisher and Jaikumar
1981) that assigns vehicles to customers with the goal
of minimizing the total distance that trucks travel.
They next nd an optimal solution to the linear relax-
ation of the generalized assignment formulation, and
by exploiting some theoretical arguments (Chao et al.
1995 show details), they round it to produce a pos-
sibly infeasible solution that rst undergoes heuristic
route construction, and then they apply an improve-
ment process.
In this paper, we propose an approach that rst
solves the farmer route assignment problem (FRAP)
assigning farmers to vehicles (each vehicle denes
a route) without considering the sequence in which
farmers are visited. The FRAPs goal is to minimize
the number of trucks used, satisfying the capacity
and demand constraints. Given a FRAP solution, the
route denition problem (RDP), which determines the
routes, is solved.
Unlike state-of-the-art approaches, the FRAP is not
followed directly by a route construction heuristic; the
RDP accomplishes this task. However, the RDP can
fail to nd feasible routes. Thereby, the proposed local
search (1) retrieves feasibility and (2) allows the de-
nition of proper constraints to be added to the formu-
lations to diversify solutions and possibly nd better
solutions.
Another novelty of our proposed approach lies in
its iterative mechanism that permits information to be
tunneled from(to) the FRAP and the RDP to (from) the
heuristic solutions. Furthermore, the FRAP minimizes
the number of vehicles; competing approaches, how-
ever, minimize distance travelled, which we address
as the objective of the RDP.
Milk Collection with Incompatibility
Constraints
Proposed Approach
In this section, we present the strategy we adopted to
solve the HMCHF problem heuristically.
Assume a graph G = (S {s
0
], ) with vertex set
S {s
0
] and arc set . The special vertex s
0
represents
the depot, where m trucks and m

trailers are parked.


The trucks and trailers are considered homogeneous
with capacity C and C

, respectively. Each vertex s


i
S
corresponds to a customer i with a demand d
i
0.
A cost c
i
is associated with each arc (s
i
, s

), which
represents the nonnegative travel time or distance
from vertex s
i
to vertex s

.
Our approach relies on the solutions of the two
mathematical formulations associated with the FRAP
and the RDP, respectively. The latter are extensively
reported in Appendices A and B.
In the FRAP, one is concerned with assigning farm-
ers to vehicles (each vehicle denes a route) consider-
ing capacity, demand, and milk-type constraints, and
neglecting the tour-length constraint. In particular, let
=
1

2
be the eet of trucks, where
1
is the set of
complete vehicles and
2
is the set of pure trucks; the
FRAP constraints are as follows.
1. For farmer s and milk type , the farmer demand
Q
s
must be satised.
2. If a positive amount of milk type is loaded in
compartment | of tank truck i, milk type is assigned
to compartment | of tank truck i, and this quantity
must not be larger than the capacity c
i|
of compart-
ment | of tank truck i.
3. At least one truck must serve each farmer.
4. Complete vehicles must visit at least one farmer
s S
|r
(this prohibits the undesirable assignment of a
complete vehicle to a set of hard-to-access farmers).
5. If a certain quantity of a milk type is loaded from
farmer s in a tank truck i, then tank truck i serves
farmer s.
6. At most, one milk type per compartment is
allowed.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
134 Interfaces 40(2), pp. 130143, 2010 INFORMS
The FRAP objective function is to minimize the
number of tank trucks used. Given the FRAP solu-
tion, the RDP denes a route for each vehicle with
the objective of minimizing the cumulative tour dura-
tion. Let

be the number of routes dened by the


FRAP, and let S
i
, with i =1, . . . ,

, be the collection
of subsets of farmers assigned to each vehicle i .
Let S

i
be the set of customers served by truck and
trailer, and let S

i
be the set of customers served by
truck only.
The RDP formulation works on the

routes by
separately solving (for each vehicle) a relaxation of
the traveling salesman problem. More specically, if
i is a tour associated with a pure truck, then S
i
=S

i
.
The RDP constraints ensure that (1) a tour must start
and nish at the warehouse, and (2) if a tank truck
arrives at a farmer site, it must leave this site (ow
conservation constraints).
If tour i is associated with a complete vehicle, then
the related RDP constraints are split up into two
subsets of constraints, one for S

i
and the other for S

i
.
The rationale for dividing the RDP constraints related
to i into two parts is that a complete vehicle, unlike
a pure truck, must leave the trailer when it serves
farmers belonging to S
.|
; therefore, the correspond-
ing tour must be formed by the proper composition
of subtours with farmers belonging to S
|r
and S
.|
,
respectively.
The RDP objective function is to minimize the total
preparation time and transportation time of all the
tank trucks. The preparation time includes the time
needed for milk analysis, report writing, and pump
connection.
It is important to point out that the RDP for-
mulation might have the following two drawbacks,
which the heuristic functionalities discussed next
address:
1. The minimization of the total tour time might
return a duration for some tours that exceeds the time
T allowed for a working shift.
2. Subtours might be present.
The proposed heuristic has two main blocks,
PHASE I and PHASE II, and is based on the res-
olution of the FRAP and the RDP, respectively. We
refer to a complete execution of both PHASE I and
PHASE II as an iteration of the heuristic.
PHASE I calculates the optimal solution of the FRAP
formulation by obtaining the subset of farmers to be
served by each tank truck, respecting demand and
capacity constraints. However, because this assign-
ment might not be feasible with respect to the max-
imum duration of a tour, PHASE II of the algorithm
veries this by solving the RDP formulation.
Let us examine how the heuristic works depending
on the solution found by the RDP, concentrating on a
generic vehicle i.
1. Vehicle i is a pure truck. If the solution is a unique
tour, then the algorithm terminates; otherwise, the
algorithm tries to dene a feasible solution by execut-
ing an edge-insertion routine. Its goal is to join each
subtour to the warehouse, if necessary, by inserting
the cheapest edges and deleting the heaviest ones.
More formally, this routine, for each subtour i that
does not include the warehouse (node s
0
), inserts the
cheapest edges {s
0
, s] and { s, s], where s is a farmer in
subtour i, s is a neighbor of s, and s is a neighbor of
s
0
. Finally, it deletes edges {s
0
, s] and ( s, s). Figure 3
illustrates a solution of the RDP model.
2. Vehicle i is a complete vehicle. For each tour, the
RDP formulation works with farmers from S
|r
and
S
.|
. A feasible tour for the TTRP requires a main tour
of the CVR and a number of subtours, each starting
from a farmer of the main tour. Therefore, if the solu-
tion to the RDP related to farmers in S
|r
is a unique
tour, this is the main tour of the CVR. Otherwise, to
obtain such a main tour, the algorithm executes the
insertion routine. When the main tour of the CVR
has been dened, the least-cost edge-insertion routine
is invoked again to link each subtour to a farmer in
the main tour, thus obtaining a feasible solution. Such
farmers represent the parking areas of the complete
Warehouse
Warehouse
Figure 3: The schematic illustrates the insertion routine. The left section
shows an RDP model solution with two subtours; one includes the ware-
house, the other does not. The right section shows a solution obtained by
applying the insertion routine.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 135
vehicle tour. It is trivial that, if S

i
= for tour i, the
main tour of the CVR is a feasible solution for i.
In the proposed methodology, we do not permit the
possibility of visiting s S
|r
on the subtours that visit
hard-to-access farmers in S
.|
.
If the solution obtained is such that time limit T is
obeyed for each tour, then the algorithm stops; oth-
erwise, PHASE I is run again with a limitation on
the number of farmers to be serviced by tank trucks.
Formally, if

l
is the subset of tours violating the max-
imum shift duration allowed at the end of iteration l,
at iteration l +1 the FRAP formulation is solved with
the following additional constraints:

sS
z
is
]
i
(l) 1, i

l
, (1)
where ]
i
(l) is the number of farmers assigned to tank
truck i by PHASE I at iteration l, and z
is
is a binary
variable that equals 1 if tank truck i services farmer s
and is zero otherwise.
The restart mechanism diversies the solutions. To
provide counterbalancing, the algorithm tries to build
a new solution at l +1 by not completely varying the
number of farmers assigned to each tour by the FRAP
at iteration l. It accomplishes this as follows: if
l
is
the set of nonempty feasible tours at iteration l, the
FRAP formulation at iteration l +1 is solved with the
additional constraints:

sS
z
is
]
i
(l), i
l
. (2)
To avoid cycling while trying to regain feasibility
i.e., to prevent PHASE I from returning the same solu-
tion on two alternating iterations, e.g., l 1 and l +1
a tabu list in the algorithmis implemented. The assign-
ment of farmers to routes at iterations l 1 and l is
compared, and those farmers on route i at l 1 but not
on route i at iteration l, are marked as tabu to avoid
having a farmer return to route i at an immediate iter-
ation. Therefore, a tabu farmer-tour matrix must be
maintained; its generic entry (s, i) represents the num-
ber of iterations for which farmer s cannot be assigned
to tour i in the optimal solution of the FRAP in PHASE
I. Note that if at iteration l an entry (s, i) of the tabu
matrix is greater than zero, then variable z
is
is forced
to be zero in the solution of the FRAP at iteration l +1.
For example, let us assume that tour i has farm-
ers {1, 2, 5, 10] assigned at iteration 1 and farmers
{1, 2, 3, 4] assigned at iteration 2. Then farmers 5 and
10 are marked as tabu; i.e., they are not allowed to
return to tour i for number of iterations. In our
case study, we notice that must be very small, e.g.,
{2, 3], compared with tenures of tabu search algo-
rithms for other combinatorial optimization problems.
It is worth noting that by imposing constraints (1)
and (2), the solution of PHASE I could become infea-
sible with respect to the capacity constraints. In this
case, the right sides of constraints (1) are increased
by one, the right sides of constraints (2) are decreased
by one, and PHASE I is solved again to retrieve fea-
sibility. This is done iteratively until a feasible solu-
tion is found. We note that the tabu list prevents
cycling among solutions during the search for a fea-
sible solution.
The algorithm is stopped if the last 10 iterations
provide no solution improvement. Table 1 shows the
steps of the proposed algorithm.
Ensure: A set of tours respecting demand, capacity, tour duration, and
milk-type constraints.
Initialization
1: l =1;
2: l
l
=;
3:

l
l
=;
Main loop
4: while not stopping rule do
5: PHASE I: Solve the FRAP mathematical formulation,
adding constraints (1)(2) if l >1;
6: while PHASE I is infeasible do
7: Increase the right sides of constraints (1) by 1, and
decrease the right sides of constraints (2) by 1;
8: Solve the FRAP mathematical formulation,
adding constraints (1)(2);
9: end while
10: PHASE II: Solve the RDP formulation by using for each tour
the farmers assigned by PHASE I;
11: Possibly apply the edge-insertion routine
to retrieve a feasible tour;
12: if the stopping criterion is met then
13: STOP;
14: else
15: Dene sets l
l
and

l
l
;
16: Dene constraints (1) and (2);
17: Update farmer-tour entries of the tabu matrix;
18: Set variables z
is
=0 if farmer s is tabu for tour i.
19: end if
20: end while
Table 1: This table lists the algorithm steps.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
136 Interfaces 40(2), pp. 130143, 2010 INFORMS
Experimental Analysis and
Comparison with Prior Process
In this section, we compare the solution we obtained
using our algorithm with the companys prior opera-
tional process. We implemented our algorithm using
the C language and the mathematical models using
the AMPL language; we also used the solver CPLEX
7.0 (http://www.ilog.com). The C code and the AMPL
implementation were run on a PC Pentium IV with
2.8 GHz and 512 MB of RAM.
Case Study Data
ASSO.LA.C. collects milk from 158 farmers in four
towns in Calabria, a region located in southern Italy.
The towns are Cosenza (80), Catanzaro (8.7), Vibo
Valentia (6.6), and Crotone (4.7) (see Figure 4); the
number following each town represents the per-
centage of the 158 farmers who live in that town.
The companys main warehouse is in the city of
Castrovillari.
Figure 4: This map shows where ASSO.LA.C. collects milk; circles in-
dicate the four towns in which farmers live and the companys main
warehouse.
Truck Trailer No. of Capacity of
ID vehicle Capacity capacity capacity compartments compartments
0l
1
150 75 75 4 37.5/37.5/37.5/37.5
0l
2
150 75 75 4 37.5/37.5/37.5/37.5
0l
3
310 140 170 5 80/60/50/60/60
0l
4
310 130 180 3 130/130/50
0l
5
150 75 75 4 37.5/37.5/37.5/37.5
Table 2: This complete vehicle characteristics table shows capacities
expressed in quintals.
The milk types are denoted as high-quality,
standard-quality, sanitary-prescription, and origin-
protected milk. The eet comprises complete vehicles
and pure trucks. Table 2 shows complete vehi-
cle characteristics, and Table 3 shows pure truck
characteristics.
Tables 47 show the case studys main demand
nodes; note that to decrease the problem size to
improve tractability, we aggregated farmers closer
than two kilometers in a single node with a demand
equal to the sum of the demands of the clus-
tered nodes. The Complete vehicle column indi-
cates whether a complete vehicle can access the farm,
thereby indicating hard-to-access farms.
Finally, we assume that the preparation time |
s
is
known a priori for each farmer s and that the work
shift for drivers is eight hours.
Case Study Computational Results
The computational results demonstrate that the pro-
posed algorithm can provide tours such that the tank
trucks start their tours from Castrovillari and come
back to Castrovillari within the work shift. We used
No. of Capacity of
ID vehicle Capacity compartments compartments
F!
1
140 3 46.7/46.7/46.7
F!
2
140 3 46.7/46.7/46.7
F!
3
130 3 43.5/43.5/43.5
F!
4
105 3 37.37/31
F!
5
60 3 20/20/20
F!
6
60 3 20/20/20
F!
7
40 3 13.35/13.35/13.35
F!
8
110 3 37/37/36
Table 3: This pure vehicle characteristics table shows capacities
expressed in quintals.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 137
Node City Complete vehicle High quality Standard quality Sanitary prescription Origin protected
1 Castrovillari (1) Yes 20.94 8
2 Castrovillari (2) Yes 8.55
3 Francavilla Marittima Yes 2.8
4 Spezzano Albanese Yes 7.03
5 San Lorenzo (1) No 12.61 22.43
6 San Lorenzo (2) No 5.8 7.87
7 Terranova da Sibari (1) No 5.05 4
8 Terranova da Sibari (2) No 2.62 1.6
9 Cassano allo Ionio Yes 2.6 33.48
10 Tarsia (1) Yes 10.77
11 Tarsia (2) No 3.75 2.4
12 Altomonte No 4.35 2.9
13 San Sosti No 8.4
14 Malvito No 3.76
15 Roggiano Gravina No 13.53
16 San Marco Argentano Yes 10.4
17 Cerzeto No 58.33
18 Santa Soa DEpiro No 2.5
19 Bisignano No 20 1.2
20 Luzzi (1) No 26.3 12.72
21 Luzzi (2) No 8.6
22 Lattarico No 8.2 6.62
23 San Vincenzo la Costa No 1.75
24 Montalto (1) No 12.2 1.6 12.67 6.45
25 Montalto (2) No 8.1 8.9
26 Castiglione Cosentino No 7.2
27 Rende (1) Yes 12.04 23.9
28 Rende (2) Yes 15.87 12.8
29 Cosenza (1) Yes 19.36
30 Cosenza (2) Yes 52.6 11.9
31 Carolei No 4.7 3
32 Celico (1) No 3.89 6.1
33 Celico (2) No 14.65
34 Spezzano Sila No 11 3.8 2.4
35 San Giovanni in Fiore Yes 20.9
36 Corigliano Yes 71.93
37 Rossano Yes 62.5
38 Paludi No 39.28
39 Crosia No 2
40 Calopezzati No 6.46
Table 4: The demand data for Cosenza are shown.
three complete vehicles, CV
1
, CV
2
, and CV
4
, to serve
farmers in Crotone, Vibo Valentia, and Catanzaro
areas that provide easy access to farmers. CV
1
and
CV
2
serve Crotone and Vibo Valentia. CV
4
is the
only vehicle that can be used to serve farmers in
Catanzaro to ensure that the working-shift duration
is not exceeded.
The algorithm uses all eight pure trucks to collect
milk from farmers in Cosenza. Note that the average
lling ratio, i.e., the average ratio between the load of
a truck and its capacity, is 95 percent.
To complete the study, we computed the distance
that each vehicle travelled and the transportation
cost (Table 8). ASSO.LA.C. provided both direct and
indirect transportation costs. We used 1,189 seconds
and 20 iterations to nd the solution.
Table 9 shows details of the proposed algorithms
performance. To show the effectiveness of constraints
(1) and (2) in the proposed method, we report the
results we achieved using three implementations of
the algorithm. The rst implementation (Both in
Table 9) considers constraints (1) and (2), the second
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
138 Interfaces 40(2), pp. 130143, 2010 INFORMS
Complete High Standard Sanitary Origin
Node City vehicle quality quality prescription protected
1 Catanzaro Yes 4.65
2 Lamezia Terme Yes 76.72 43.2
Table 5: The demand data for Catanzaro are shown.
Complete High Standard Sanitary Origin
Node City vehicle quality quality prescription protected
3 Crotone Yes 15.45
4 Crucoli No 15.11
5 Cutro Yes 4.76
6 Isola Capo Rizzuto Yes 30.58
7 Roccabernarda No 32.21
8 Scandale No 12.39
Table 6: The demand data for Crotone are shown.
Complete High Standard Sanitary Origin
Node City vehicle quality quality prescription protected
9 Vibo Valentia Yes 115.31 2
10 Cir Marina Yes 15.1
Table 7: The demand data for Vibo Valentia are shown.
(None) does not implement constraints (1) or (2),
and the third (Only (1)) uses only constraints (1).
For each iteration l in Table 9, we list (1) the num-
ber of tours obtained from PHASE I, (2) the total
tour length from PHASE II, (3) the fullment of the
maximum shift duration for each tour (yes means
that all the tours respect the maximum shift duration
allowed and no means that at least one tour has
a length greater than T ), and (4) the average tight-
ness of constraints (1) and (2), computed, respectively,
as

i

l
sluc|
i
,

l
and

i
l
surplus
i
,
l
, where sluc|
i
is the slack variable of constraint i

l
and surplus
i
is the surplus variable of constraint i
l
. The algo-
rithm takes advantage of both constraints to produce
a better-quality solution.
Figure 5 shows the cost trend (j axis indicates the
cost of the solution in euros) over different values
(x axis). As we mentioned in the previous section,
the algorithm reaches its best solution when the value
of is very small; e.g., = 2 ( is the number of
iterations within which a given farmer cannot belong
to a given tour).
Distance travelled Transportation cost
ID vehicle (km/day) (euro/day)
0l
1
275 103
0l
2
282 106
0l
4
274 114
F!
1
186 84
F!
2
198 86
F!
3
176 83
F!
4
166 81
F!
5
135 77
F!
6
135 76
F!
7
141 79
F!
8
158 81
Total 2,126 667
Table 8: The data in this table illustrate case study results for our opti-
mized solution.
To show the improvements that the proposed
method produced, Table 10 reports how ASSO.LA.C.
operated prior to implementing our optimization
method; it uses the same parameters as Table 8 to
provide a fair comparison.
Note that the prior solution used 12 vehicles; our
optimized solution used 11 vehicles (it did not use
complete vehicle CV
3
), thus implying that the FRAP
objective function makes a difference. In the prior
solution, the daily transportation cost was 1,100 euros
and the trucks travelled 2,484 km.
Comparing values in Tables 8 and 10, we see that
the dairy company attained a reduction of about
14.4 percent in the total distance that the tank trucks
600
700
800
900
1 2 3 4 5 6
Figure 5: The graph illustrates solution cost varying , values. The y axis
indicates the cost in euros of the solution over different , values reported
in the x axis; , is the number of iterations within which a given farmer
cannot belong to a given tour.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 139
Constraints No. of tours Total tour length Fullment of the maximum Average tightness Average tightness
Iterations (1) and (2) in PHASE I in PHASE II (km) shift duration for each tour of constraints (1) of constraints (2)
1 Both 10 2,268 No
None 10 2,268 No
Only (1) 10 2,268 No
2 Both 11 2,156 No 1.00 0.00
None 11 2,212 No
Only (1) 11 2,178 No 0.25
3 Both 12 2,148 Yes 0.67 0.00
None 11 2,178 No
Only (1) 12 2,154 Yes 0.33
4 Both 13 2,132 Yes 0.00
None 11 2,184 No
Only (1) 12 2,144 Yes
5 Both 11

2,209 No 0.00
None 12 2,144 Yes
Only (1) 11 2,182 No
6 Both 11 2,198 No 0.33 0.00
None 12 2,154 Yes
Only (1) 11 2,192 No 0.00
7 Both 11 2,172 No 0.00 0.00
None 11 2,182 No
Only (1) 12

2,158 Yes 0.33


8 Both 12 2,154 Yes 0.33 0.00
None 11 2,192 No
Only (1) 12 2,148 Yes
9 Both 13 2,132 Yes 0.00
None 11 2,209 No
Only (1) 11 2,160 No
10 Both 11

2,126 Yes 0.00


None 12 2,172 Yes
Only (1) 11 2,178 No 0.00
11 Both 12 2,138 Yes 0.00
None 12 2,174 Yes
Only (1) 11 2,202 No 0.00
12 Both 11 2,146 No 0.67
None 11 2,178 No
Only (1) 12 2,172 Yes 0.33
13 Both 12 2,178 Yes 0.25 0.00
None 11 2,186 No
Only (1) 12 2,162 Yes
14 Both 12 2,198 No 0.00
None 11 2,192 No
Only (1) 12 2,158 Yes
15 Both 12 2,176 No 0.25 0.00
None 11 2,184 No
Only (1)
16 Both 12 2,174 Yes 0.25 0.00
None
Only (1)
Table 9: The data in this table show behavior of different implementations of the proposed algorithm. Note that
the asterisk means that at least one infeasibility in PHASE I has been met; i.e., the algorithm entered into the
while cycle at Step 6 (Table 1).
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
140 Interfaces 40(2), pp. 130143, 2010 INFORMS
Constraints No. of tours Total tour length Fullment of the maximum Average tightness Average tightness
Iterations (1) and (2) in PHASE I in PHASE II (km) shift duration for each tour of constraints (1) of constraints (2)
17 Both 11 2,248 No 0.70
None
Only (1)
18 Both 11 2,202 No 0.50 0.57
None
Only (1)
19 Both 11 2,189 No 0.50 0.57
None
Only (1)
20 Both 12 2,152 Yes 0.75 0.00
None
Only (1)
Table 9: Continued.
covered. Furthermore, the average lling ratio of the
tank trucks, which represented 85 percent in the com-
panys prior solution, was 95 percent for our opti-
mized solution.
These costs imply that our proposed approach
produces a yearly transportation cost savings of
156,000 euros and an additional cost reduction of
about 10,000 euros (because of using one less truck
and its constituent devices installed to monitor the
temperature of the milk during transport). Reduc-
ing transportation cost by 166,000 euros in our 158-
farmer case study is proportional to the cost savings
described by Butler et al. (2005), in which an Irish
Distance travelled Transp. cost
ID vehicle (km/day) (euro/day)
0l
1
260 100
0l
2
334 118
0l
3
260 112
0l
4
245 100
F!
1
192 86
F!
2
210 89
F!
3
180 84
F!
4
163 80
F!
5
155 82
F!
6
153 80
F!
7
155 82
F!
8
177 87
Total 2, 484 1, 100
Table 10: The data in this table illustrate case study results for the prior
solution.
dairy company with about 800 farmers reduced its
annual costs by 635,000 euros.
Summary
This paper studies a problem faced by an Italian dairy
company that collects milk from farmers. We mod-
eled the problem as a generalization of the TTRP and
show how OR techniques improved the companys
performance.
The problem has specic constraintsfarmers pro-
duce different types of milk, and each tank truck
must have different compartments to hold these dif-
ferent milk types; this imposes the limitation that
at most one milk type can be assigned to a tank-truck
compartment. We propose an optimization approach
based on the joint use of mathematical programming
and local search, present experiments we performed
as part of the case study, and compare the perfor-
mance of our proposed method with the process that
the company used prior to implementing our pro-
posal. The results show that our process results in cost
savings of approximately 166,000 euros per year.
Appendix A. The Farmer Route
Assignment Problem Formulation
Let
i be tank truck i in eet ;
eet =
1

2
, where
1
is the set of complete
vehicles and
2
is the set of pure trucks;
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 141
) be milk type in the milk-type set ) ;
s, s

S, be farmers s and s

in the set S of
farmers;
set S of farmers be split into S
|r
and S
.|
, with S
|r
as the set of farmers reachable by complete vehicles
and S
.|
reachable by pure trucks only;
| K
i
be compartment | in tank truck i;
K
i
=K

i
K

i
, where K

i
is the set of compartments
on the truck component of complete vehicle i and K

i
is the set of compartments on the trailer component
of complete vehicle i;
Q
s
, be the amount of milk type associated with
farmer s; and
c
i|
, be the capacity of compartment | in tank
truck i.
We dene a (real) variable j
i|s
0, which is asso-
ciated with the quantity of milk type loaded in
compartment | of tank truck i from farmer s. Vari-
able j
i|s
> 0 means that tank truck i had to load a
certain quantity of milk type from farmer s. We
then dene a binary variable z
is
to keep track of this
farmer; i.e.,
z
is
=

1 if tank truck i serves farmer s,


0 otherwise.
In addition, x
i|
and
i
denote two binary variables
such that
x
i|
=

1 if milk type is assigned to


compartment | of tank truck i,
0 otherwise,

i
=

1 if tank truck i is used,


0 otherwise.
Therefore, the overall formulation of the FRAP is
min

|K
i
j
i|s
=Q
s
) , s S, (A1)

sS
j
i|s
c
i|
x
i|
i , ) , | K
i
, (A2)

i
z
is
1 s S, (A3)

sS
|r
z
is

i
i
1
, (A4)
j
i|s
z
is
c
i|
i , | K
i
, ) , s S, (A5)

sS
z
is

i
S i , (A6)

)
x
i|
1 i , | K
i
, (A7)
j
i|s
=0 i
1
, | K

i
, ) , s S
.|
(A8)
x
i|
{0, 1] i , | K
i
, )
j
i|s

+
i , | K
i
, ) , s S

i
{0, 1] i .
Constraints (A1) say that for farmer s and milk
type , demand Q
s
must be satised. Constraints (A2)
impose the restriction that if a positive amount of
milk type is loaded in compartment | of tank truck
i, then x
i|
= 1; i.e., milk type is assigned to com-
partment | of tank truck i, and this quantity must
not be larger than the capacity c
i|
of compartment |
of tank truck i. Constraints (A3) mean that at least
one truck must serve each farmer. Constraints (A4)
state that complete vehicles (if utilized) must visit
at least one farmer in S
|r
. Constraints (A5) establish
that if a certain quantity of a milk type is loaded from
farmer s in a tank truck i (i.e., j
i|s
0), then tank
truck i serves farmer s; i.e., z
is
= 1. Inequalities (A6)
are strictly related to the objective function. Indeed,
when at least one customer is assigned to vehicle i,
then
i
must equal one and contributes to the value
of the objective. Constraints (A7) are the milk-type
incompatibility constraints. Recall that by constraints
(A2), if the quantity

sS
j
i|s
of milk type loaded
in compartment | of tank truck i is greater than zero,
the binary variable x
i|
is forced to assume a value
equal to one. The FRAP formulation is completed by
constraints (A8), which ascertain that milk cannot be
transferred between the truck and trailer because of
the existence of varying milk types.
Appendix B. The Route Denition
Problem Formulation
Let .
iss
be a binary variable, which is dened for each
tank truck i and for each farmer s and s

. We have
.
iss
=

1 if tank truck i travels from s to s

,
0 otherwise.
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
142 Interfaces 40(2), pp. 130143, 2010 INFORMS
Let Succ(s) and Prcd(s) be the set of successors and
predecessors, respectively, of farmer s. Starting from
the denitions of S

i
and S

i
, we can dene the RDP
constraints separately for each tour i. In particular, if
i is a tour associated with a pure truck, then the RDP
constraints are

sSucc(s
0
)S
i
.
is
0
s
=1 i , (B1)

sPrcd(s
0
)S
i
.
iss
0
=1 i , (B2)

Succ(s)S
i
.
iss
=1 i , s S
i
, (B3)

Prcd(s)S
i
.
is

s
=1 i , s S
i
. (B4)
Constraints (B1) and (B2) say that a tour must start
and nish at warehouse s
0
. Constraints (B3) and (B4)
are ow-conservation laws; i.e., if a tank truck arrives
at a farmer site, it must leave this site.
As we discussed in the Milk Collection with Incom-
patibility Constraints section, if tour i is associated with
a complete vehicle, then the RDP constraints split up
into two subsets, one related to S

i
obtained by replac-
ing S
i
with S

i
in constraints (B1)(B4) and the other
related to S

i
dened by constraints (B3)(B4) in which
S
i
is replaced by S

i
.
The objective function of RDP takes the following
form:
min

sS
z
is
|
s
+

sS

S
d
ss
.
iss

.
This equation comprises two parts; the rst is
the total preparation time, i.e., the time needed for
the milk analysis, writing the report, and connect-
ing pumps to tanks. For this rst part, we must con-
sider which tank truck serves which farmer. If tank
truck i serves farmer s, then z
is
is equal to one. When
this happens, we consider the contribution given by
the preparation time |
s
of farmer s. Summing up the
total number of farmers, we have the total prepa-
ration time. Note that this contribution depends on
the number of tank trucks that services a certain
client.
The second part refers to the transportation time.
When .
iss
=1, then tank truck i serves both farmers
s and s

. Summing all the farmers, multiplying by the


distance d
ss
between s and s

, and dividing by the


average truck speed ., we obtain the total transporta-
tion time.
Acknowledgments
We thank the anonymous referees for their valuable sug-
gestions and the ASSO.LA.C. Dairy Company for its kind
collaboration in this research project.
References
Baldacci, R., M. Battarra, D. Vigo. 2008. Routing a heterogeneous
eet of vehicles. B. Golden, S. Raghavan, E. Wasil, eds. The
Vehicle Routing Problem: Latest Advances and New Challenges.
Springer, Heidelberg, Germany, 328.
Basnet, C., L. R. Foulds, J. M. Wilson. 1999. An exact algorithm for
a milk tanker scheduling and sequencing problem. Ann. Oper.
Res. 86 559568.
Butler, M., P. Herlihy, P. B. Keenan. 2005. Integrating information
technology and operational research in the management of
milk collection. J. Food Engrg. 70(3) 341349.
Butler, M., H. P. Williams, L.-A. Yarrow. 1997. The two-period trav-
elling salesman problem applied to milk collection. Comput.
Optim. Appl. 7(3) 291306.
Chao, I.-M. 2002. A tabu search method for the truck and trailer
routing problem. Comput. Oper. Res. 29(1) 3351.
Chao, I. M., B. L. Golden, E. A. Wasil. 1995. An improved heuristic
for the period vehicle routing. Networks 26(1) 2544.
Claassen, G. D. H., T. Hendriks. 2007. An application of special
ordered sets to a periodic milk collection problem. Eur. J. Oper.
Res. 180(2) 754769.
Cordeau, J. F., M. Gendreau, G. Laporte, J. Y. Potvin, F. Semet. 2000.
Classical and modern heuristics for the vehicle routing prob-
lem. Internat. Trans. Oper. Res. 7 285300.
Cordeau, J. F., M. Gendreau, G. Laporte, J. Y. Potvin, F. Semet. 2002.
A guide to vehicle routing heuristics. J. Oper. Res. Soc. 53(5)
512522.
Fisher, M. L., R. Jaikumar. 1981. A generalized assignment heuristic
for vehicle routing. Networks 11(2) 109124.
Hoff, A., A. Lkketangen. 2007. A tabu search approach for
milk collection in western Norway using trucks and trailers.
Proc. Sixth Triennial Sympos. Transportation Anal. (TRISTAN VI),
Phuket Island, Thailand.
Sankaran, J. K, R. R. Ubgade. 1994. Routing tankers for dairy milk
pickup. Interfaces 24(5) 5966.
Scheuerer, S. 2006. A tabu search heuristic for the truck and trailer
routing problem. Comput. Oper. Res. 33(4) 894909.
Tan, K. C., Y. H. Chew, L. H. Lee. 2006. A hybrid multi-objective
evolutionary algorithm for solving truck and trailer vehicle
routing problems. Eur. J. Oper. Res. 172(3) 855885.
Toth, P., D. Vigo, eds. 2002. The Vehicle Routing Problem. SIAM
Monographs on Discrete Mathematics and Applications,
Philadelphia.
Camillo Nola, Chief Executive Ofcer, ASSO.LA.C.
Societ Cooperativa Agricola, Contrada Ciparsia,
87012 Castrovillari (CS), Italy, writes: I certify that
Caramia and Guerriero: Milk Collection Problem with Incompatibility Constraints
Interfaces 40(2), pp. 130143, 2010 INFORMS 143
in 2005, the ASSOLAC dairy company, Castrovil-
lari (CS) Italy, in collaboration with the Faculty of
Engineering, University of Calabria, Italy, initiated a
project to minimize routing costs deriving from milk
collection while also improving the number of cus-
tomers to be serviced: it is well known that optimiz-
ing transport cost can allow the company to pay a
higher milk price to farmers, thus attracting higher vol-
umes. The method based on mathematical program-
ming and local search heuristic proposed has signif-
icantly improved the overall transportation cost and
also the number of vehicles employed in servicing the
current clients; therefore, this clearly enables the sec-
ond objective of enlarging the set of customers.

You might also like