(Boccia Et Al.) Flow Intercepting Facility Location
(Boccia Et Al.) Flow Intercepting Facility Location
DOI 10.1007/s10852-008-9098-5
Received: 21 November 2007 / Accepted: 30 September 2008 / Published online: 28 January 2009
© Springer Science + Business Media B.V. 2009
Abstract In the last 25 years a significant number of papers have treated the
interesting case of the location of facilities which do not generate and/or attract
flow, but intercept it. These facilities can be used by the flow units of the network
or proposed to/imposed on them along their pre-planned path from an origin to a
destination. In other words, the purpose of the movement is not to obtain a service,
but if there is a facility on the pre-planned path, the flow units may choose to
interrupt the journey to obtain the service, before continuing their path. For this
reason the expressions “flow interception” or “flow intercepting facility location
problem” (FIFLP) are generally adopted. Several models, based on binary integer
programming, were proposed, where the objective function is aimed to optimize a
network performance criterion, for example at maximizing the flow intercepted by
a prefixed number of facilities, or at minimizing the number of facilities necessary
to intercept a fixed amount of the total flow. The problem is NP-hard and so for
large size instances, heuristic methods could be needed. This paper gives a wide
description of problems, mathematical models and heuristics, present in literature
or proposed by the authors, for the flow interception in a deterministic scenario.
Moreover an extensive computational experimentation of the different approaches
on several network topologies is provided, comparing the results in terms of quality
of solutions and computation time.
M. Boccia
Dipartimento di Ingegneria, Universitá del Sannio, Corso Garibaldi 104, Benevento, Italy
1 Introduction
The network location literature, starting from the seminal papers of Hakimi [17, 18],
is very broad and mainly devoted to the location of plants, facilities and services
which perform activities producing the generation and/or the attraction of people,
goods, materials, energy, information, so generating and/or attracting customer
flows. The flows of customers reach the plants or, vice versa, the plants generate
flows which reach the customers.
In the last 25 years, from the paper of Hodgson [19], a significant number of papers
have treated the interesting case of the location of facilities which do not generate
and/or attract flow, but intercept it. In any case these facilities (in the following
also referred as devices depending on the application field) perform activities which
can be exploited by the flow units of the network or proposed to/imposed on them
along their pre-planned path from an origin to a destination. In other words the
purpose of the flow units is not to obtain a service, but, if there is a facility on their
pre-planned path, they may voluntarily or obligatorily interrupt the movement to
obtain the service, before continuing their path. For this reason the expressions “flow
interception” or “flow intercepting facility location problems” (FIFLP) are generally
adopted. The FIFLP has been approached both in deterministic and stochastic
scenarios. In the former case we assume that there is a complete knowledge of all the
paths that carry non-zero flows, which are also assumed to be known. In the latter
case the information about paths and flows are not available, but the information
about the fraction of flows that travel from any node to all adjacent nodes are known.
The FIFLP is NP-hard and so computation time increases exponentially with the
number of nodes. For this reason several heuristics could be used to solve large scale
instances.
This paper is focused on the FIFLP in a deterministic scenario. We are aimed
to give a wide overview and a systematic description of the basic flow interception
problems, models and heuristics, with some considerations about the different
solution approaches. Therefore at first we give a literature review on the subject,
with a presentation of the main contributions in transportation and communication
network fields (Section 2). We present a preliminary discussion about five issues
which are relevant for an unambiguous definition of the flow intercepting problems
(Section 3). Then we present four flow interception problems and the related binary
programming models and heuristic approaches, present in literature or proposed by
us, which can be used for the location of facilities in nodes or links of a network. The
use of these methods allows us to provide optimal or sub-optimal solutions for the
corresponding facility location problems, in terms of efficient positioning or in terms
of minimum number of facilities to locate, with reference to a specific performance
criterion (Sections 4 and 5). Mathematical models and heuristic methods have been
experienced on test networks of varying dimension and topology, comparing the
obtained results in terms of quality of solution and computation times (Section 6).
We experienced models and methods varying some settings and characteristics of
the problems under investigation (for example range of the flow values, number
of paths and facilities) in order to verify the effect of these parameters. Original
graphical representation of the obtained results are provided. Conclusions give some
observations about the models and methods presented, with a discussion about
possible improvements and future works.
J Math Model Algor (2009) 8:35–79 37
2 Literature Review
The literature review on the FIFLP is aimed to show that these problems and their
variants arise in different fields, confirming that the problem is a living matter. The
literature on FIFLP is really heterogeneous, but it concerns basically three main class
of issues:
• definition of general models and methods,
• application to traffic and transportation problems,
• application to communication problems.
Definition of general models and methods. With reference to this issue, many works
were proposed by Berman et al., starting from the beginnings of the nineties.
Berman et al. [8] propose a model and a greedy heuristic for the problem of the
optimal location of “discretionary facilities” (i.e. for example automatic teller ma-
chine and gasoline station) on a network. They also propose an inverse formulation
for this problem and a heuristic able to solve the problem to the optimum.
Berman et al. [5] present some generalizations of the models for the optimal
location of discretionary facilities, all sharing the property that customer flows may
deviate from pre-planned paths in order to visit a facility. They formalize three
problems, two of which can be solved by greedy heuristics and the third by any
approximate or exact method able to solve a p-median problem.
Berman et al. [7] study the problem of locating flow intercepting facilities with
probabilistic flows. They formulate two non linear integer programming models, for
the single and the double counting cases. They also derive a linear integer program
for these two models and propose a simple greedy heuristic for them.
Berman [3] treats the problem of locating discretionary facilities with finite
capacities on a network, where customers can deviate from their pre-planned trip.
He presents a scheme able to calculate the expected number of customers who travel
to a single facility. He also provides a location-allocation heuristic algorithm for the
case of locating more than one facility.
Averbakh and Berman [1] formulate two integer programming models for the
problem of locating flow capturing facilities on a transportation network, where the
level of customer usage of a service depends on the number of facilities that they
encounter on their path. They propose a heuristic for one of the problems and a
polynomial algorithm for the other one in case the network is a tree.
Berman [4] combines the models of flow interception and the traditional location
models. He proposes four new problems and shows that they have a structure similar
to that of other known location problems.
Berman and Krass [6] propose a model for the location of competitive facilities,
combining the features of spatial interaction and flow interception models. They
propose a heuristic and a branch and bound scheme for the model.
Chaudet et al. [12, 13] treat the monitoring problem in two cases, assigning tap
devices for passive monitoring and assigning beacons for active monitoring. They
propose a Mixed Integer Linear Programming formulation, derived from a minimum
edge cost flow model, and a greedy algorithm for the determination of the number
of devices to locate, minimizing set up cost or set up and deployment cost, with or
without sampling. They also approach the problem of finding the minimum number
of beacons (i.e. nodes in charge of the monitoring task and emitting packets) whose
probes (i.e. packets emitted by the beacons) cover all the links of the network, solving
it to the optimum by an integer linear programming model or by a greedy heuristic.
Cantieni et al. [10], instead, examine the device placement problem from a differ-
ent point of view. They suppose that all links can be monitored and so they determine
which devices have to be activated and which sampling rate should be set on them
in order to achieve a given measurement task with high accuracy and low resource
consumption. They formulate the problem as a non linear constrained model solved
by a Lagrangean multiplier method and by a gradient projection method.
Hu et al. [21] formulate the passive monitoring problem as a Stochastic Con-
strained Optimization model. They propose an algorithm that returns the optimal
placement for the devices of a distributed passive measurement system and their
sampling rate, in order to maximize the probability of a packet being sampled.
Suh et al. [26] propose models of budget constrained maximum coverage to
find the optimal location of devices in order to maximize a utility function, which
expresses the benefit achievable from flow monitoring activity, with or without sam-
pling. They also propose inverse models to minimize deployment and management
costs, constrained to obtain a prefixed value of the achievable benefit. They also
present models related to the case of link failure. The models have been solved to
the optimum and moreover by the greedy heuristic of Khuller et al. [23] with some
modifications.
The flow intercepting facility location problems, treated with a deterministic ap-
proach, require a preliminary discussion of the following five key issues:
• knowledge of the origin-destination paths and related flows,
• link failures and/or flow deviations from predefined paths,
• single or multiple interception of flows, i.e. single or multiple evaluations and/or
counting of them,
• flow monitoring with or without sampling operations,
• location in nodes or on links of the network.
Knowledge of the origin-destination paths and related flows. Models under inves-
tigation need information about all used paths and relative flows for each o-d pair
on the network. If this information is not available, we could obtain it through the
knowledge of the traffic demand matrix. The flow related to each o-d pair can be
assigned to a single path, generally the shortest one, or to a set of paths, if we are
operating in a context of load balancing and flow equilibrium. If the traffic demand
matrix is not available, we can obtain it by an o-d matrix estimation method ([2, 11])
or by the random generation of the o-d flows, if this truly represents the real network
40 J Math Model Algor (2009) 8:35–79
behavior. In this paper we consider the following assumption with reference to the
knowledge of the o-d paths:
Assumption 1 We have a complete knowledge of all paths that carry non-zero flows,
which are also assumed to be known. Each o-d flow is assumed using the shortest
path. For this reason, in the following, we will speak in terms of set of paths and not
in terms of o-d pairs.
Link failure and/or flow deviation from predefined paths. There may be two possible
situations. If no link failures occur, flow deviations from predefined paths are not
possible, otherwise it is necessary to define an alternative for each path using that
link. In this paper we consider the following assumption:
Assumption 2 No link failure occurs and so flow deviation from predefined paths is
not possible.
Flow monitoring with or without sampling operations. There are two possible
strategies usable for the FIFLP, i.e. each flow is entirely intercepted or partially
intercepted, according to a sampling operation, by a facility. Moreover we note
that in the second case, each flow can be intercepted more than once with different
sampling rates and, on the other hand, each facility can intercept different flows with
different sampling rates. In this paper we consider the following assumption:
Location in nodes or on links of the network. This issue concerns the possibility
of locating facilities in the nodes or on the links of the network, with reference to
the characteristics of the network system. In order to explain the difference between
the two alternatives, let us consider a network N(V,A), where V is the set of nodes
and A is the set of links. Moreover let P be the set of all paths that carry non-zero
flows. Let us hypothesize that we are interested in locating m devices with the aim of
maximizing the intercepted flow. Let S be a set of m possible points of N and let xsp be
a binary variable which assumes value 1 if a path p is intercepted by at least one point
in S, else 0. If f p is the flow value associated to path p, the flow intercepted by the
J Math Model Algor (2009) 8:35–79 41
points of S can be written as z(S) = p∈P f p xsp . So the problem can be formalized
as follows:
We can assert that the selection of the m solution points can be limited to the
nodes of set V and therefore all inner points between two nodes can be excluded. This
proposition can be informally demonstrated [8] noting that a facility, placed on a link,
can be moved to one of its two extreme nodes not only without any loss of intercepted
flow, but also with a possible increase of an additional flow, traversing another link
incident in the same node. We can therefore say that in the maximization of function
z(S), S can be defined as a subset of V and therefore the problem becomes:
In the following sections, starting from the previous discussion, we will present
two problems of flow intercepting facility location, which can be approached by
binary linear programming models and by several heuristics. The first model, which
will be referred as the Maximum Flow Interception Model (M1), finds the optimal
location of a limited number of facilities for the maximization of the intercepted
flow (problem P1). The second one, the Minimum Number of Facilities for the
Maximization of Intercepted Flow Model (M2), finds the minimum number and the
location of the facilities needed to intercept a certain amount of flow on a network
(problem P2). These models can be referred as “Flow Oriented” since they adopt
respectively a performance criterion or a constraint which are directly related to the
flow value on each path.
We will refer to a network N(V,A), where V = {i} is the set of nodes and A = {l} is
the set of links. Moreover we will define P = { p} as the set of origin-destination paths
selected on the network, V p as the set of nodes belonging to a path p, F = { f p } as the
set of flows on the paths belonging to P and m as the number of facilities to locate on
the network. We need to define two kinds of decisional variables, node variables yi
and path variables x p , which can assume the following values:
Model M1 for problem P1 has been proposed by Berman et al. [8] and its formulation
is similar to that proposed by Church and ReVelle [14] for the Maximal Covering
Problem. It can be written as follows:
Maximize fp xp
p∈P
s.t. yi = m (1)
i∈V
yi ≥ x p ∀p ∈ P (2)
i∈V p
x p = {0, 1} ∀p ∈ P
yi = {0, 1} ∀i ∈ V
The objective function expresses the maximization of the intercepted flow. The
constraint (1) imposes the number of facilities that have to be placed. Constraints (2)
are consistency constraints between the two kinds of variables. Indeed, if no vertex
of path p contains a facility (i.e. all yi are equal to 0, i ∈ V p ) the variable x p must
be equal to 0, that is the path p is not intercepted. Otherwise, if at least one vertex
of path p contains a facility (i.e. a variable yi , i ∈ V p , is equal to 1) the variable x p
could be 0 or 1. Because of the maximization of the objective function, the variable
x p assumes value 1, that is the path p is intercepted. As stated above, even if a path
flow encounters more than one facility, it will be intercepted and counted only once
in the objective function (i.e. objective function formulation does not allow multiple
counting).
The solution of this model returns the location of the m facilities giving the
maximization of the intercepted flow. Note that if the flow on path p encounters more
than one facility (i.e. more than one variable yi , i ∈ V p , assumes value 1), we do not
exactly know which is the one intercepting it. However, if this association between
paths and facilities is needed, we can build a set of unambiguous correspondences
between them, using a simple path covering heuristic based on the path-node
incidence matrix, referred to as coverage matrix B. The rows of matrix B are associate
to the used o-d paths and the columns to the nodes of the network. Its generic
element b pi ( p ∈ P, i ∈ V) is equal to 1 if the node i belongs to the path p, 0 otherwise.
In Fig. 1 a simple network and the related path-node incidence matrix B are shown.
In solving model M1 it could also happen that if the number of facilities is high,
some of them could be redundant, and therefore they provide no increases of the
objective function, but additional costs. In order to avoid this situation we could
J Math Model Algor (2009) 8:35–79 43
(a) (b)
Fig. 1 Paths on a network and related path-node incidence matrix B
substitute the constraint (1) with an inequality constraint, imposing that the number
of facilities has to be less than or equal to m.
Step 0. Set k = 0, S = {} and let B(k) be the corresponding coverage matrix.
Step 1. Compute the flow interceptable by each node i at stage k:
Step 2. Find the node i∗ : fi∗ (k) = maxi∈V fi (k) and locate a facility in the node i∗ .
S = S ∪ {i∗ }. If more than one, choose the node with the lowest index or the
node belonging to the greatest number of paths.
Step 3. Update B(k) elements to generate B(k+1).
b pi|i∈S (k + 1) = 0 ∀p ∈ P
b pi (k + 1) = 0 ∀i ∈ V, ∀ p ∈ P|b pi|i∈S (k) = 1
and location of facilities. The modification differs from the basic heuristic for the
definition of two flow parameters for each node i:
• fi (k) is the flow interceptable by node i at iteration k, as in the basic heuristic,
• f ”i (k), which will be referred to as potential flow, is the amount of flow already
intercepted by other selected nodes at iteration k.
Step 0. Set k = 0, S = {} and let B(k) be the corresponding coverage matrix.
Step 1. ∀i ∈ V\S, compute [ fi (k), fi (k)].
Step 2. Sort the nodes in decreasing lexicographic order with respect to the couple
[ fi (k), fi (k)], locate a facility in the first node and add it, referred as i∗ , to
the set S (S = S ∪ {i∗ }).
Step 3. Update B(k) elements to generate B(k+1).
b pi|i∈S (k + 1) = 0 ∀p ∈ P
b pi (k + 1) = 0 ∀i ∈ V, ∀ p ∈ P|b pi|i∈S (k) = 1
The use of the parameter fi (k) generates solutions where several flows can
encounter more than one facility along their path. It can thus occur that some
facilities become redundant. In this case, by means of step 5, we can eliminate the
redundant facility from the solution set and relocate it in another node, without
variation of the m value and with a possible increase of the amount of intercepted
flow. In solving the problem by these two heuristics, it can happen that the number
of facilities is too high. In this case, as explained for the model M1, we could add a
new stop criterion respectively in the Step 4 of H1 and in the Step 6 of Improved H1,
which imposes to stop if all the elements of the matrix B(k) are equal to 0, i.e. all the
flows traversing the network are already intercepted.
K = (1 − ) p∈P f p be the corresponding flow value. The following binary linear
programming model can be formulated:
Minimize yi
i∈V
s.t. yi ≥ x p ∀p ∈ P (3)
i∈V p
f p x p ≥ K (4)
p∈P
x p = {0, 1} ∀p ∈ P
yi = {0, 1} ∀i ∈ V
The objective function expresses the minimization of the number of facilities. The
set of constraints (3) is the same as in the previous model. The constraint (4) imposes
a lower bound to the quantity of intercepted flow. Also with this model it may occur
that a path is intercepted by more than one facility and we do not know exactly which
facility intercepts it. However, in this case for each facility the model ensures at least
an unambiguous assignment, otherwise one of the facilities would be redundant.
The reason for which H2 returns the optimal solution for P2 can be explained as
follows. The m value of step 4 is an upper bound to the optimal value of the objective
function of M2. RM1, solved fixing m = m − 1, provides an upper bound to model
M1. Therefore, if this upper bound is less than or equal to K , the exact solution of
M1 cannot provide a feasible solution with optimal objective value larger than K .
Once the optimal solution value m, required to intercept a flow greater or equal to
K , is obtained, M1 can be solved to provide a set of locations possibly with a better
total flow [8].
Finally, we observed that this approach can also be used in case we want to
intercept the entire flow traversing the network ( = 0). In this case the objective
function value at Step 5, obtained by solving RM1 and M1 with m = m − 1, must be
strictly less and not less than or equal to K , otherwise we have no reduction in the
number of facilities. It is important to underline that even if this heuristic allows us to
find the exact solution for problem P2, it could be not convenient to use. In fact, it is
clear that we could obtain the optimal solution just solving the relaxed model RM1,
but it could also happen that we have to solve model M1 many times and this should
imply a significant increase in the computation time.
The models described in the previous sections adopt a performance criterion aimed
to maximize the intercepted flow (M1) and a constraint on the amount of the total
flow to intercept (M2), which are explicitly expressed in terms of flow values. In
the following we present two models which respectively adopt a new performance
criterion aimed to maximize an obtainable “gain” and a constraint on the amount
of the “gain” to achieve, which are implicitly related to the flow values. The Gain
Maximization Model (M3), finds the optimal location of a limited number of facilities
for the maximization of a gain parameter (problem P3). The Minimum Number of
Facilities for Gain Maximization Model (M4), finds the minimum number and the
location of the facilities needed to achieve a certain amount of a gain parameter
(problem P4). For this reason models M3 and M4 can be referred as “Gain Ori-
ented”. In these problems a gain coefficient a pi is assigned to each node i belonging
to a path p. If a node belongs to more than one path, it will be characterized by
more than one coefficient and each one will be function of the flow value traversing
the corresponding path. For their formulations we need to define two kinds of
J Math Model Algor (2009) 8:35–79 47
decisional variables, node variables yi and path-node variables x pi , which can assume
the following values:
∀i ∈ V, yi = 1 if a facility is located at node i, 0 otherwise,
∀ p ∈ P, x pi = 1 if a facility is located in the node i of the path p, 0 otherwise.
It is important to note that the difference in the path variables used for models M1
and M2 and for M3 and M4 implies a great difference in the model dimension.
Model M3 has been proposed by Gendreau et al. [15]. Being a pi the coefficient
associated to each node on a path p, representing the gain obtainable if path p is
intercepted by a facility located at node i, i ∈ V p , the model can be formalized as
follows:
Maximize a pi x pi
p∈P
s.t. yi = m (5)
i∈V
yi ≥ x pi ∀ p ∈ P, ∀i ∈ V p (6)
i∈V p
x pi ≤ 1 ∀p ∈ P (7)
i∈V p
x pi = {0, 1} ∀ p ∈ P, ∀i ∈ V p
yi = {0, 1} ∀i ∈ V
The objective function expresses the maximization of the gain function. The
constraint (5) is the same as in the model M1. The constraints (6) are consistency
constraints between the two kinds of variables. Indeed, if no vertex belonging to
path p contains a facility (i.e. all yi are equal to 0), the variables x pi , ∀i ∈ V p , must
be equal to 0, i.e. its related flow is not intercepted. Otherwise, if at least a vertex of
path p contains a facility (i.e. a variable yi is equal to 1) the variable x pi could be 0
or 1. Because of the maximization of the objective function the variable x pi will be 1
and the flow on path p is intercepted. The constraints (7) impose that each path-flow
can be intercepted by at most one facility located in a node belonging to the path.
Therefore if a path-flow is intercepted by more facilities it will be counted only once
in the objective function. Using model M3, contrary to what happened with model
M1, we know exactly which is the facility intercepting a path-flow, in fact the value
of variable x pi returns an unambiguous correspondence between paths and facilities.
Anyway, if the value of m is too high, also for problem P3 it can happen that we could
locate redundant facilities. To avoid this situation we have to substitute the constraint
(1), imposing that the number of facilities has to be less than or equal to m.
48 J Math Model Algor (2009) 8:35–79
(a) (b)
(c) (d)
Fig. 2 Four possible shapes of the a pi coefficients (a–d)
J Math Model Algor (2009) 8:35–79 49
We can observe that the value of a pi decreases along the generic path p and the
reduction rate is affected by α and β values. With these gain coefficient shapes the
model returns a solution that intercepts each flow as near as possible to its origin,
to which the highest gain value is associated. For this, Gendreau et al. [15] used
model M3 to locate inspection stations for the interception of drunk drivers, since
they are not just aimed to intercept them, but also to intercept them as soon as
possible, in order to reduce the possibility of accidents. The same could be done
for the interception of “bad flows” on a communication network. In fact when an
hacker wants to bring an attack towards a network infrastructure, in some cases we
can detect the “bad flow”, but we have to block it as soon as possible, to avoid
its possible success. However, it is possible to adapt the gain coefficients to the
specific aim of the problem. For example, whenever it is possible to specify the node
associated with the maximum gain along each path, we could hypothesize that the
coefficients have a concave shape. In this way, model M3 could be used to define
a zone of the network which has to be protected by the entering flows. In fact if we
make the assumption that the flows traversing a network have their origin in external
nodes, whereas internal nodes are destination of the flows, we are able to identify the
boundary of the area that has to be protected, by adopting an appropriate definition
of the gain coefficients.
Heuristic H3, as the others previously described for problem P1, is a “greedy
heuristic”, in fact at every iteration it introduces the node which is the most profitable
in the partial solution set, without taking into account the global solution. Therefore,
the solutions provided by this method can be improved through the use of local
search methods. In the following we describe two heuristics, a local ascent search
and a tabu search heuristic, proposed by Gendreau et al. [15] for the improvement of
the solution provided by H3. Also this heuristic can be modified in order to avoid to
locate redundant facilities, just imposing to stop if no vertex i ∈ V\Sk−1 provides an
increase of the objective function which is strictly greater than zero.
the solution with a node not belonging to it. For this operation, at any iteration
we characterize the solution by the definition of the subset of nodes composing it
(S ⊆ V), and by the subset of its neighborhood I(S), which is constituted by all
solutions achievable by performing an interchange, i.e. a substitution of a solution
node i, with all nodes i’ of the set V\S (this operation is referred to as ‘move’). We
have several rules for the choice of nodes i and i’. Five rules for the choice of vertex
i are considered:
Rule 1. The node associated to the minimum value of the objective function:
mini∈S a pi .
p∈P
Rule 5. All nodes i of S are chosen for the interchange operation and the one that
returns the most profitable interchange is selected.
A possible rule for the choice of node i’ consists of selecting the node that returns
the maximum increase of objective function, that is:
If S∗ is the current solution set, the ascent search heuristic (ASH) for problem P3
can be formalized as follows:
uses the same rules previously defined for the choice of node i and i’. The basic differ-
ences are:
With the given notations, if δ is the current number of iterations without a solution
improvement and S’ is the solution set after a move, TSH algorithm can be described
as follows:
The use of TSH could find a local maximum point better than the one determined
with ASH and in the best case finds the global optimum. It is important to note that
both ascent and tabu search heuristics, can be easily adapted in order to use them
to find a better solution for problem P1. In fact problem P1 can be considered as a
special case of problem P3, where the gain coefficients values a pi are equal to flow
values along path p. Therefore, in order to use these methods for gain maximization,
we just need to replace the objective function of P3 in the steps just described with
the one in problem P1 and the a pi values with flow values f p .
5.2 Problem P4: Minimization of the Number of Facilities for Gain Maximization
was intercepted at the node of the path having the maximum value of the gain
coefficients, that is, if a pl is the maximum coefficient along a path p:
G= a pl l : a pl = maxi∈V p {a pi }, ∀ p ∈ P
p∈P
s.t. yi ≥ x pi ∀ p ∈ P, ∀i ∈ V p (9)
i∈V p
x pi ≤ 1 ∀p ∈ P (10)
i∈V p
a pi x pi ≥ G (11)
p∈P
x pi = {0, 1} ∀ p ∈ P, ∀i ∈ V p
yi = {0, 1} ∀i ∈ V
The objective function expresses the minimization of the number of facilities. The
set of constraints (9) and (10) are the same as in model M3. The constraint (11)
imposes a lower bound to the value of the achievable gain to obtain.
This heuristic can be easily adapted to find a solution for problem P3, just changing
the stop criterion as follows:
This modified heuristic will be referred to in the following as Improved H3 and the
stopping criterion on the values of the gain coefficients allows us to avoid to locate
redundant facilities.
Fig. 6 Problem P2: Model M2 solution vs Heuristic H2 solutions over a single instance
56 J Math Model Algor (2009) 8:35–79
In this section we show the experimental results obtained by solving the four
problems described in the previous sections, to the optimum, by using the Xpress-
MP solver, and to a feasible solution, by using the described heuristics, coded in C
language. All the instances were run on an Intel(R) Pentium(R) 4 computer. In our
tests we used synthetic networks of increasing dimensions with random topology (50,
100, 150 and 200 nodes) and grid topology (49, 100, 144, 196 nodes). We note that
for all problems, each flow is assigned to the shortest path, assuming random and
symmetric link cost. The values of a pi coefficients for problem P3 and P4 are assumed
to be decreasing along the path and are computed by expression (8) of Section 5.1.1,
with α = 1, β = 0 and R = 1. In Section 6.1 we show a graphical representation of
the experimental results on a small random network with 50 nodes. In Section 6.2 we
describe the results obtained on random networks with size from 50 to 200 nodes.
Finally, in Section 6.3 we report an evaluation of the computation times for exact
and heuristic methods proposed for problems P1 and P3 and a sensitivity analysis of
these results in function of number of paths, devices (facilities) to locate, iterations
without improvement for the Tabu Search, and varying range of the flow values. In
all the greedy heuristics the stopping criterion is the one related to the value of m.
Table 1 shows all the parameters involved in the experimental tests.
Fig. 7 Problem P2: Model M2 solution vs. Heuristic H2 solutions over 50 instances
J Math Model Algor (2009) 8:35–79 57
The synthetic network under investigation is a random network with 50 nodes, which
are all origin/destination nodes. We assume that each node is origin of at least a
path. We randomly generated 250 paths, corresponding to about 10% of the o-d
pairs number. Each point of the following figures is determined as an average of
50 instances, differing for the flow values traversing the predefined paths. The four
defined problems have been solved using the same instances.
and 5.1.4, respectively for ASH and TSH. We can observe that in both cases the
worst results are related to rule 1 and 2, whose maximum difference to the optimum
is 0.0183 for ASH and 0.0178 for TSH. Instead the best results obtained with rule 5
are characterized by a maximum difference to the optimum equal to 0.003 for both
methods. It is also important to note that rule 3 (random selection of the node to
substitute) returns better results than the other three rules.
Figures 6 and 7 show the results obtained by solving problem P2 with M2 and H2,
plotting on the X-axis the number of devices as a function of the percentage of the
intercepted flow ((1 − ), 0 ≤ < 1 step size 0.01). In Fig. 6 we show the results of the
model and the heuristic for a single instance. It is important to note that the obtained
trend, both for M2 and H2, can be assimilated to a step function, since we always
have an unambiguous correspondence between a fixed value of the intercepted flow
and the number of required devices. It is also important to observe that the results
obtained solving model M2 and the ones obtained solving the heuristic H2 are exactly
the same. This is what we expected, since, as explained in Section 4.2.1, this heuristic
finds the optimal solution for problem P2. In Fig. 7 we show the results obtained
solving P2 by M2 and H2 for 50 instances differing for the flow patterns. We can see
that for a fixed percent of the intercepted flow, we can have several values of the
number of required devices. Obviously this is due to the fact that solving instances
differing for the flow patterns, the number of devices to locate intercepting the same
amount of flow could be different.
case rule 3 returns better results than rules 1 and 2, but worse than rule 4, which is
really efficient for problem P3, both in terms of quality of solution and computation
time.
Figures 11 and 12 show the results obtained solving problem P4 by M4 and H4,
respectively for one instance and 50 instances, plotting (on the X-axis) the number
of devices as a function of the percentage of the achieved gain ((1 − ), 0 ≤ < 1
step size 0.01). As regards Figs. 11 and 12 we can repeat the same observations
already made for problem P2. In any case it is important to note that, contrary to
what happened for problem P2, the results obtained for model M4 do not exactly
coincide with the ones obtained for H4, since this heuristic does not return the
optimal solution. We can see, however, that in the worst case the heuristic provides
a solution which uses at most two additional devices if compared to the optimal
number.
In this section we report the results of experimental tests run on random networks
with size from 50 to 200 nodes for problem P1 and P3. We will present some tables
with results and computation times obtained solving problems by mathematical
models and related heuristics. For problem P1, the values are obtained over 50
Fig. 11 Problem P4: Model M4 solution vs. Heuristic H4 solutions over a single instance
J Math Model Algor (2009) 8:35–79 61
Fig. 12 Problem P4: Model M4 solution vs. Heuristic H4 solutions over 50 instances
instances, setting m equal to 5% of the number of nodes and varying the flow values
in the range 1–30. For problem P3, the values are obtained over 10 instances, setting
m equal to 10% of the number nodes and varying the flow values in the range 1–
30. For each problem, two tables will be provided, which respectively compare the
results of the model and basic heuristics with the ones of the ASH and the TSH (using
the five rules).
Table 2 reports the parameters used in Tables 3, 4, 5 and 6.
Table 3 Problem P1: Model, basic heuristics and ASH (five rules)
Model M1 HeurH1 H1Imp ASH(R1) ASH(R2) ASH(R3) ASH(R4) ASH(R5)
Problem P1. Nodes:50. Paths:250. Devices = 5% . Mean node number for paths:4. Flows Range:1–30.
# OptVal 50 40 40 41 41 43 40 46
MinVal – 0.970 0.970 0.970 0.970 0.970 0.970 0.970
MeanVal – 0.998 0.998 0.998 0.998 0.998 0.998 0.999
MaxVal – 1 1 1 1 1 1 1
MinTime 0.109 0 0 0 0 0 0.970 0
MeanTime 0.213 0.002 0.003 0.003 0.003 0.004 0.998 0.008
MaxTime 0.937 0.016 0.016 0.016 0.016 0.016 1 0.016
Problem P1. Nodes:100. Paths:1000. Devices = 5% . Mean node number for paths:5. Flows Range: 1–30.
# OptVal 50 35 35 35 35 37 35 44
MinVal – 0.990 0.990 0.990 0.990 0.990 0.990 0.991
MeanVal – 0.999 0.999 0.999 0.999 0.999 0.999 1.000
MaxVal – 1 1 1 1 1 1 1
MinTime 0.281 0 0 0.015 0.015 0.015 0.990 0.031
MeanTime 0.322 0.008 0.013 0.016 0.017 0.016 0.999 0.037
MaxTime 0.750 0.016 0.016 0.031 0.031 0.031 1 0.062
J Math Model Algor (2009) 8:35–79
Problem P1. Nodes:150. Paths:2250. Devices = 5% . Mean node number for paths:5. Flows Range: 1–30.
# OptVal 50 12 12 13 13 15 12 36
MinVal – 0.989 0.989 0.989 0.989 0.989 0.989 0.989
J Math Model Algor (2009) 8:35–79
Table 4 Problem P1: Model, basic heuristics and TSH (five rules)
Model M1 HeurH1 H1Imp TSH(R1) TSH(R2) TSH(R3) TSH(R4) TSH(R5)
Problem P1. Node: 50. Paths: 250. Devices: 5%. Mean node number for paths: 4. Flows Range: 1–30.
# Opt Val 50 40 40 42 43 47 40 50
MinVal – 0.970 0.970 0.970 0.970 0.993 0.970 1
MeanVal – 0.998 0.998 0.998 0.999 1.000 0.998 1
MaxVal – 1 1 1 1 1 1 1
MinTime 0.109 0 0 0.031 0.046 0.031 0.062 0.062
MeanTime 0.213 0.002 0.003 0.047 0.047 0.039 0.066 0.076
MaxTime 0.937 0.016 0.016 0.062 0.047 0.047 0.079 0.079
Problem P1. Nodes: 100. Paths: 1000. Devices: 5%. Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 50 35 35 36 36 38 35 50
MinVal – 0.990 0.990 0.990 0.990 0.991 0.990 1
MeanVal – 0.999 0.999 0.999 0.999 0.999 0.999 1
MaxVal – 1 1 1 1 1 1 1
MinTime 0.281 0 0 0.125 0.125 0.031 0.156 0.141
MeanTime 0.322 0.008 0.013 0.127 0.125 0.110 0.163 0.443
MaxTime 0.750 0.016 0.016 0.141 0.125 0.125 0.172 0.484
J Math Model Algor (2009) 8:35–79
Problem P1. Nodes: 150. Paths: 2250. Devices: 5%. Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 50 12 12 15 15 18 13 49
MinVal – 0.989 0.989 0.989 0.989 0.991 0.989 0.999
MeanVal – 0.997 0.997 0.998 0.998 0.998 0.997 1
J Math Model Algor (2009) 8:35–79
MaxVal – 1 1 1 1 1 1 1
MinTime 1.218 0.031 0.046 0.141 0.375 0.140 0.500 2.219
MeanTime 2.760 0.046 0.060 0.472 0.459 0.332 0.534 2.918
MaxTime 4.609 0.062 0.078 0.516 0.532 0.375 0.594 2.953
Problem P1. Nodes: 200. Paths: 4000. Devices: 5%. Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 50 9 9 9 9 11 11 46
MinVal – 0.989 0.989 0.989 0.989 0.989 0.989 0.993
MeanVal – 0.997 0.997 0.997 0.997 0.997 0.997 1.000
MaxVal – 1 1 1 1 1 1 1
MinTime 2.859 0.125 0.156 1.109 1.125 0.407 1.203 9.531
MeanTime 5.263 0.137 0.170 1.134 1.135 1.051 1.218 9.720
MaxTime 7.891 0.141 0.188 1.156 1.156 1.125 1.235 9.891
65
66
Table 5 Problem P3: Model, basic heuristics and ASH (five rules)
Model M3 HeurH3 H3Imp ASH(R1) ASH(R2) ASH(R3) ASH(R4) ASH(R5)
Problem P3. Nodes: 50. Paths: 250. Devices: 10%. Mean node number for paths: 4. Flows Range: 1–30.
# OptVal 10 5 5 5 6 5 6 7
MinVal – 0.971 0.971 0.971 0.971 0.971 0.973 0.973
MeanVal – 0.992 0.992 0.992 0.993 0.992 0.995 0.995
MaxVal – 1 1 1 1 1 1 1
MinTime 0.188 0 0 0 0 0 0.973 0
MeanTime 0.350 0.008 0.003 0.013 0.013 0.012 0.995 0.014
MaxTime 1.218 0.016 0.015 0.016 0.016 0.016 1 0.016
Problem P3. Nodes: 100. Paths: 1000. Devices: 10%. Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 10 5 5 5 5 5 6 9
MinVal – 0.991 0.991 0.991 0.991 0.991 0.991 0.999
MeanVal – 0.997 0.997 0.997 0.997 0.997 0.998 1.000
MaxVal – 1 1 1 1 1 1 1
MinTime 1.656 0.047 0.046 0.046 0.047 0.047 0.991 0.109
MeanTime 1.911 0.050 0.049 0.052 0.055 0.053 0.998 0.130
MaxTime 2.110 0.062 0.063 0.063 0.063 0.063 1 0.172
J Math Model Algor (2009) 8:35–79
Problem P3. Nodes: 150. Paths: 2250. Devices: 10%. Mean node number for paths: 5. Flows Range: 1–30.
# Opt Val 10 8 8 8 8 8 8 8
MinVal – 0.990 0.990 0.990 0.990 0.990 0.990 0.990
J Math Model Algor (2009) 8:35–79
Table 6 Problem P3: Model, basic heuristics and TSH (five rules)
Model M3 HeurH3 H3Imp ASH(R1) ASH(R2) ASH(R3) ASH(R4) ASH(R5)
Problem P3. Nodes: 50. Paths: 250. Devices: 10% . Mean node number for paths: 4. Flows Range: 1–30.
# OptVal 10 5 5 7 6 8 8 10
MinVal – 0.971 0.971 0.971 0.971 0.971 0.992 1
MeanVal – 0.992 0.992 0.993 0.993 0.994 0.999 1
MaxVal – 1 1 1 1 1 1 1
MinTime 0.188 0 0 0.031 0.047 0.031 0.063 0.109
MeanTime 0.350 0.008 0.003 0.045 0.055 0.038 0.077 0.109
MaxTime 1.218 0.016 0.015 0.047 0.063 0.047 0.079 0.109
Problem P3. Nodes: 100. Paths: 1000. Devices: 10% . Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 10 5 5 5 5 6 9 10
MinVal – 0.991 0.991 0.991 0.991 0.991 0.999 1
MeanVal – 0.997 0.997 0.997 0.997 0.998 1.000 1
MaxVal – 1 1 1 1 1 1 1
MinTime 1.656 0.047 0.046 0.187 0.235 0.172 0.265 1.203
MeanTime 1.911 0.050 0.049 0.198 0.247 0.183 0.269 1.219
MaxTime 2.110 0.062 0.063 0.204 0.250 0.188 0.282 1.235
J Math Model Algor (2009) 8:35–79
Problem P3. Nodes: 150. Paths: 2250. Devices: 10% . Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 10 8 8 8 8 8 9 10
MinVal – 0.990 0.990 0.990 0.990 0.990 0.997 1
MeanVal – 0.999 0.999 0.999 0.999 0.999 1.000 1
J Math Model Algor (2009) 8:35–79
MaxVal – 1 1 1 1 1 1 1
MinTime 15.766 0.234 0.250 0.984 1.109 0.828 1.156 6.937
MeanTime 18.949 0.239 0.252 0.991 1.122 0.947 1.175 8.198
MaxTime 25.062 0.250 0.266 1 1.125 0.969 1.188 9.469
Problem P3. Nodes: 200. Paths: 4000. Devices: 10% . Mean node number for paths: 5. Flows Range: 1–30.
# OptVal 10 0 0 0 0 0 0 2
MinVal – 0.991 0.991 0.991 0.991 0.991 0.992 0.996
MeanVal – 0.993 0.993 0.993 0.993 0.993 0.995 0.999
MaxVal – 0.995 0.995 0.995 0.995 0.995 0.998 1
MinTime 55.140 0.797 0.796 2.781 1.687 2.718 3.094 25.781
MeanTime 70.311 0.808 0.803 3.178 3.380 2.736 3.475 33.181
MaxTime 83.250 0.813 0.813 4.141 4.563 2.766 4.657 38.219
69
70 J Math Model Algor (2009) 8:35–79
Using the information in Tables 3 and 4 we can compute the difference between
model and method solutions for the four networks under investigation, as:
(z) = 1 − z(Heuri )/z(Model)
The largest difference is the one obtained with heuristic H1 and are respectively:
0.0023; 0.0013; 0.0027 and 0.0035. Concerning instead ASH and TSH, the best results
in both cases are obtained with rule 5, and are respectively: 0.0009; 0.0003; 0.0001;
0.0026 for ASH and 0, 0, 0 and 0.0002 for TSH. Therefore we can affirm that TSH
provides solutions which are nearest to the optimum and in many cases it allows us
to find exactly the optimal solution, but on the other hand its computation times
increase very rapidly and sometimes they are higher than those of the model.
Using information in Tables 5 and 6 we see that the largest difference is the
one obtained with the basic heuristic H3 and its improvement and are respectively:
0.0082; 0.0033; 0.0013 and 0.0024. Concerning instead ASH and TSH, the best results
in both cases are obtained with rule 5, as with P1, and are respectively: 0.0046; 0.0001;
0.0013; 0.0007 for ASH and 0, 0, 0 and 0.0003 for TSH. Even in this case the TSH
heuristic provides solutions which are nearest to the optimum and in many cases it
(a) (b)
(c) (d)
Fig. 13 Computation time: M1 vs. H1 (a–d)
J Math Model Algor (2009) 8:35–79 71
allows us to find exactly the optimal solution. Moreover, computation times of all
heuristics are lower than those of the model.
The four tables described in the previous section provide the results obtained for a
prefixed value of the device number. In the following we provide a sensitivity analysis
for P1 and P3 on the random networks to determine which parameters affect the
quality of solution and/or computation times. Figure 13 represents the trend of the
computation times of M1 and basic heuristic H1 over 10 instances for the random
networks under investigation, depending on the number of devices. We see that the
computation time of M1 has a maximum for a certain value of the number of devices
(m), around the 20% of N. Moreover for large values of m, computation time is
comparable with the one of the heuristic H1, which are not really affected by the
number of devices. The same observation can also be made for the other heuristics
proposed for problem P1, even if for large values of m the use of ASH and TSH may
not be convenient.
(a) (b)
(c) (d)
Fig. 14 Computation time: M3 vs. H3 and Improved H3 (a–d)
72
Table 7 Problem P1: results and computation time depending on number of paths for ASH
Problem P1. Nodes: 100. Devices: 5%. Flow Values: 1–30
Paths Values M1 H1 H1Imp ASH(R1) ASH(R2) ASH(R3) ASH(R4) ASH(R5)
# OptVal – 35 35 35 35 36 35 44
MinVal – 0.990 0.990 0.990 0.990 0.991 0.990 0.991
MeanVal – 0.999 0.999 0.999 0.999 0.999 0.999 1.000
1000 MaxVal – 1 1 1 1 1 1 1
MinTime 0.281 0 0 0.015 0 0.015 0.015 0.031
MeanTime 0.336 0.015 0.014 0.024 0.020 0.024 0.022 0.042
MaxTime 0.860 0.078 0.093 0.032 0.032 0.032 0.047 0.172
# OptVal – 48 48 48 48 49 48 50
MinVal – 0.995 0.995 0.995 0.995 0.995 0.995 1
MeanVal – 1 1 1.000 1.000 1.000 1.000 1
2000 MaxVal – 1 1 1 1 1 1 1
MinTime 0.656 0.015 0.015 0.031 0.031 0.031 0.031 0.046
MeanTime 0.724 0.024 0.023 0.042 0.040 0.041 0.044 0.061
MaxTime 0.828 0.032 0.032 0.047 0.047 0.047 0.047 0.094
# OptVal – 24 24 24 24 29 24 50
MinVal – 0.978 0.978 0.978 0.978 0.978 0.978 1
MeanVal – 0.994 0.994 0.994 0.994 0.995 0.994 1
4000 MaxVal – 1 1 1 1 1 1 1
MinTime 1.657 0.031 0.031 0.062 0.062 0.062 0.062 0.093
MeanTime 2.164 0.039 0.047 0.072 0.071 0.074 0.078 0.152
MaxTime 6.250 0.047 0.063 0.079 0.079 0.094 0.172 0.297
# OptVal – 11 11 11 11 19 11 50
MinVal – 0.990 0.990 0.990 0.990 0.990 0.990 1
MeanVal – 0.996 0.996 0.996 0.996 0.997 0.996 1
8000 MaxVal – 1 1 1 1 1 1 1
MinTime 5.265 0.062 0.078 0.125 0.125 0.125 0.125 0.234
MeanTime 5.924 0.072 0.096 0.139 0.133 0.138 0.142 0.344
MaxTime 6.688 0.079 0.110 0.188 0.141 0.172 0.188 0.407
J Math Model Algor (2009) 8:35–79
Table 8 Problem P1: results and computation time depending on number of paths for TSH
Problem P1. Nodes: 100. Devices: 5%. Flow Values: 1–30
Paths Values M1 H1 H1Imp TSH(R1) TSH(R2) TSH(R3) TSH(R4) TSH(R5)
# OptVal – 35 35 36 36 43 35 50
MinVal – 0.990 0.990 0.990 0.990 0.994 0.990 1
MeanVal – 0.999 0.999 0.999 0.999 1.000 0.999 1
1000 MaxVal – 1 1 1 1 1 1 1
MinTime 0.281 0 0 0.109 0.109 0.032 0.140 0.125
MeanTime 0.336 0.015 0.014 0.117 0.119 0.101 0.152 0.415
MaxTime 0.860 0.078 0.093 0.156 0.141 0.110 0.157 0.469
J Math Model Algor (2009) 8:35–79
# OptVal – 48 48 48 48 49 48 50
MinVal – 0.995 0.995 0.995 0.995 0.995 0.995 1
MeanVal – 1 1 1.000 1.000 1.000 1.000 1
2000 MaxVal – 1 1 1 1 1 1 1
MinTime 0.656 0.015 0.015 0.234 0.234 0.078 0.281 0.671
MeanTime 0.724 0.024 0.023 0.239 0.242 0.218 0.286 0.728
MaxTime 0.828 0.032 0.032 0.250 0.250 0.235 0.297 0.937
# OptVal – 24 24 43 43 36 24 50
MinVal – 0.978 0.978 0.982 0.996 0.984 0.978 1
MeanVal – 0.994 0.994 0.999 1.000 0.998 0.994 1
4000 MaxVal – 1 1 1 1 1 1 1
MinTime 1.657 0.031 0.031 0.390 0.390 0.140 0.453 1.203
MeanTime 2.164 0.039 0.047 0.406 0.404 0.379 0.458 1.400
MaxTime 6.250 0.047 0.063 0.422 0.422 0.407 0.469 1.687
# OptVal – 11 11 11 11 36 11 50
MinVal – 0.990 0.990 0.990 0.990 0.990 0.990 1
MeanVal – 0.996 0.996 0.996 0.996 0.999 0.996 1
8000 MaxVal – 1 1 1 1 1 1 1
MinTime 5.265 0.062 0.078 0.719 0.718 0.266 0.781 2.265
MeanTime 5.924 0.072 0.096 0.777 0.733 0.686 0.846 2.941
MaxTime 6.688 0.079 0.110 1.094 0.750 0.735 1.187 3.156
73
74
Table 9 Problem P3: results and computation time depending on number of paths for ASH
Problem P3. Nodes: 100. Devices: 10%. Flow Values: 1–30
Paths Values M3 H3 H3 Imp ASH(R1) ASH(R2) ASH(R3) ASH(R4) ASH(R5)
# OptVal 10 5 5 5 5 6 6 9
MinVal – 0.991 0.991 0.991 0.991 0.991 0.991 0.999
MeanVal – 0.997 0.997 0.997 0.997 0.998 0.998 1.000
1000 MaxVal – 1 1 1 1 1 1 1
MinTime 1.875 0.046 0.047 0.046 0.046 0.047 0.991 0.093
MeanTime 2.067 0.050 0.064 0.050 0.056 0.055 0.998 0.149
MaxTime 2.468 0.078 0.171 0.063 0.063 0.063 1 0.297
# OptVal 10 10 10 10 10 10 10 10
MinVal – 1 1 1 1 1 1 1
MeanVal – 1 1 1 1 1 1 1
2000 MaxVal – 1 1 1 1 1 1 1
MinTime 7.562 0.078 0.093 0.078 0.093 0.078 1 0.172
MeanTime 8.669 0.080 0.100 0.091 0.095 0.092 1 0.180
MaxTime 10.406 0.093 0.110 0.110 0.110 0.109 1 0.188
# OptVal 10 10 10 10 10 10 10 10
MinVal – 1 1 1 1 1 1 1
MeanVal – 1 1 1 1 1 1 1
4000 MaxVal – 1 1 1 1 1 1 1
MinTime 39.281 0.140 0.203 0.218 0.234 0.218 1 0.328
MeanTime 43.648 0.145 0.217 0.230 0.238 0.225 1 0.342
MaxTime 48.031 0.156 0.219 0.250 0.250 0.234 1 0.360
# OptVal 10 10 10 10 10 10 10 10
MinVal – 1 1 1 1 1 1 1
MeanVal – 1 1 1 1 1 1 1
8000 MaxVal – 1 1 1 1 1 1 1
MinTime 229.157 0.265 0.438 0.421 0.437 0.421 1 0.672
MeanTime 240.074 0.278 0.446 0.427 0.447 0.424 1 0.869
MaxTime 258.031 0.328 0.453 0.438 0.454 0.438 1 0.906
J Math Model Algor (2009) 8:35–79
Table 10 Problem P3: results and computation time depending on number of paths for TSH
Problem P3. Nodes: 100. Devices: 10%. Flow Values: 1–30
Paths Values M3 H3 H3Imp TSH(R1) TSH(R2) TSH(R3) TSH(R4) TSH(R5)
# OptVal 10 5 5 5 5 7 9 10
MinVal – 0.991 0.991 0.997 0.991 0.991 0.999 1
MeanVal – 0.997 0.997 1 0.997 0.998 1.000 1
1000 MaxVal – 1 1 0.991 1 1 1 1
MinTime 1.875 0.046 0.047 0.203 0.234 0.094 0.265 1.203
MeanTime 2.067 0.050 0.064 0.203 0.241 0.170 0.266 1.223
MaxTime 2.468 0.078 0.171 0.204 0.250 0.187 0.266 1.266
J Math Model Algor (2009) 8:35–79
# OptVal 10 10 10 10 10 10 10 10
MinVal – 1 1 1 1 1 1 1
MeanVal – 1 1 1 1 1 1 1
2000 MaxVal – 1 1 1 1 1 1 1
MinTime 7.562 0.078 0.093 0.313 0.406 0.140 0.391 2.171
MeanTime 8.669 0.080 0.100 0.327 0.411 0.275 0.403 2.192
MaxTime 10.406 0.093 0.110 0.328 0.422 0.313 0.407 2.250
# OptVal 10 10 10 10 10 10 10 10
MinVal – 1 1 1 1 1 1 1
MeanVal – 1 1 1 1 1 1 1
4000 MaxVal – 1 1 1 1 1 1 1
MinTime 39.281 0.140 0.203 0.781 1.031 0.359 0.671 4.109
MeanTime 43.648 0.145 0.217 0.792 1.033 0.649 0.717 4.128
MaxTime 48.031 0.156 0.219 0.797 1.046 0.782 0.922 4.141
# OptVal 10 10 10 10 10 10 10 10
MinVal – 1 1 1 1 1 1 1
MeanVal – 1 1 1 1 1 1 1
8000 MaxVal – 1 1 1 1 1 1 1
MinTime 229.157 0.265 0.438 1.484 1.953 0.703 1.656 8.015
MeanTime 240.074 0.278 0.446 1.495 1.961 1.261 1.670 10.574
MaxTime 258.031 0.328 0.453 1.500 1.969 1.484 1.672 10.891
75
76
Table 11 Problem P1 and P3: computation times and number of iterations for TSH
Computation Times for network with 200 nodes varying settings of the TSH for P1 and P3
Obj value Rule: 1 Rule: 2 Rule: 3 Rule: 4 Rule: 5
5–20 5–20 5–20 5–20 5–20 5–20 5–20 5–20 5–20 5–20
5% facilities 0,25 0,266 0,141 0,265 0,125 0,235 0,203 0,313 0,438 0,86
z(heur): 9067
P1 10% facilities 0,187 0,25 0,172 0,328 0,156 0,297 0,25 0,469 1,141 2,234
z(heur): 12521
25% facilities 0,25 0,469 0,094 0,437 0,235 0,422 0,437 0,875 2,094 8,219
z(heur): 15384
10% facilities 0,219 0,406 0,266 0,5 0,203 0,344 0,296 0,547 1,36 2,672
z(heur): 43019
P3 25% facilities 0,406 0,641 0,484 0,828 0,235 0,609 0,625 1,078 4,75 9,32
z(heur): 59038
50% facilities 0,938 1,312 0,985 1,593 0,828 1,21 1,45 2,36 16,984 32,94
z(heur): 68831
J Math Model Algor (2009) 8:35–79
J Math Model Algor (2009) 8:35–79 77
In this work we presented and proposed some models and methods used for the
“Flow Intercepting Facility Location Problem”. We carried out an extensive compu-
tational experimentation of them in terms of quality of solutions and computation
times. We can adfirm that heuristics return very g5ood solutions, very close to the
optimum, even if in some cases (for networks with less than 200 nodes and for
large values of facilities to locate) they require computation times not far from
those required by the mathematical models. Therefore we have to carefully consider
the settings of the problem and the trade off between quality of solution and
computation times. We have successfully applied FIFL models to transportation
and communication networks. Possible extensions of this work concern the spe-
cializations and integrations of the discussed models and the definition of specific
methods. In particular we are examining the following extensions: introduction of
capacity constraints for facilities; multiple interception of flows; interception of flows
78 J Math Model Algor (2009) 8:35–79
References
1. Averbakh, I., Berman, O.: Locating flow-capturing units on a network with multi-counting and
diminishing returns to scale. Eur. J. Oper. Res. 91(3), 495–506 (1996)
2. Ben-Akiva, M., Bierlaire, M., Burton, D., Koutsopoulos, H., Mishalani, R.: Network state es-
timation and prediction for real-time traffic management. Netw. Spat. Econ. 1(3–4), 293–318
(2001)
3. Berman, O.: The maximizing market size discretionary facility location problem with congestion.
Socio-Econ. Plann. Sci. 29(1), 39–46 (1995)
4. Berman, O.: Deterministic flow-demand location problems. J. Oper. Res. Soc. 48(1), 75–81 (1997)
5. Berman, O., Bertsimas, D., Larson, C.R.: Locating discretionary service facilities, II: maximizing
market size, minimizing inconvenience. Oper. Res. 43(4), 623–632 (1995)
6. Berman, O., Krass, D.: Flow intercepting spatial interaction model: a new approach to optimal
location of competitive facilities. Location Sci. 6(1–4), 41–65 (1998)
7. Berman, O., Krass, D., Xu, C.W.: Locating flow-intercepting facilities: new approaches and
results. Ann. Oper. Res. 60(1), 121–143 (1995)
8. Berman, O., Larson, R.C., Fouska, N.: Optimal locating of discretionary facilities. Transp. Sci.
26(3), 201–211 (1992)
9. Bianco, L., Confessore, G., Reverberi, P.: A network based model for traffic sensor location with
implications on O/D matrix estimates. Transp. Sci. 35(1), 50–60 (2001)
10. Cantieni, R.G., Iannaccone, G., Barakat, C., Diot, C., Thiran, P.: Reformulating the monitor
placement problem: optimal network-wide sampling. Information sciences and systems. In: Pro-
ceedings of CoNEXT, Lisbon, December 2006
11. Cascetta, E., Nguyen, S.: A unified framework for estimating or updating origin/destination trip
matrices from traffic counts. Transp. Res. B 22, 437–455 (1988)
12. Chaudet, C., Fleury, E., Lassous, G.I.: Optimal positioning of active and passive monitorings.
Research Report 5273, INRIA (2004)
13. Chaudet, C., Fleury, E., Rivano, H., Lassous, G.I., Voge, E.M.: Optimal positioning of active and
passive monitoring devices. In: Proceedings of the 2005 ACM Conference on Emerging Network
Experiment and Technology, pp. 71–82 (2005)
14. Church R., ReVelle, C.: The maximal covering location problem. Papers in Regional Science
Association 32(1), 101–118 (1974)
15. Gendreau, M., Laporte, G., Parent, I.: Heuristics for the location of inspection station on a
network. Nav. Res. Logist. 47(4), 287–303 (2000)
16. Gentili, M., Mirchandani, P.B.: Locating active sensors on traffic networks. Ann. Oper. Res.
35(1), 229–257 (2005)
17. Hakimi, S.L.: Optimum locations of switching centers and the absolute centers and medians of a
graph. Oper. Res. 12, 450–459 (1964)
18. Hakimi, S.L.: Optimum distribution of switching centers in a communication network and some
related graph theoretic problems. Oper. Res. 13, 462–475 (1965)
19. Hodgson, M.J.: The location of public facilities intermediate to the journey to work. Eur. J. Oper.
Res. 6(2), 199–204 (1981)
20. Hodgson, M.J., Rosing, K.E., Zhang, J.: Locating vehicle inspection stations to protect a trans-
portation network. Location Sci. 5(3), 198 (1997)
21. Hu, C., Liu, B., Liu, Z., Gao, S., Wu, D.: Optimal deployment of distributed passive measurement
monitors. In: International Conference on Communication, ICC’06, vol. 2, pp. 621–626. IEEE,
Piscataway (2006)
22. Huynh, N., Chiu, Y.C., Mahmassani, H.S.: Finding near-optimal locations for variable message
signs for real-time network traffic management. J. Transp. Res. Board 1856, 34–53 (2003)
23. Khuller, S., Moss, A., Naor, J.S.: The budgeted maximum coverage problem. Inf. Process. Lett.
70(1), 39–45 (1999)
24. Mirchandani, P.B., Rebello, R., Agnetis, A.: The inspection station location problem in haz-
ardous materials transportation: some heuristics and bounds. INFOR 33(2), 100–113 (1995)
25. Rosenkrantz, D.J., Tayi, G.K., Ravi, S.S.: Algorithms for path-based placement of inspection
stations on networks. INFORMS J. Comput. 12(2), 136–149 (2000)
J Math Model Algor (2009) 8:35–79 79
26. Suh, K., Guo, Y., Kurose, J., Towsley, D.: Locating network monitors: complexity, heuristics, and
coverage. Comput. Commun. 29(10), 1564–1577 (2006)
27. Tomas, A.P.: Solving optimal of traffic counting posts at urban intersections in CLPMICAI 2002.
Adv. Artif. Intell. 2313, 247–266 (2002)
28. Yang, C., Chootinan, P., Chen, A.: Traffic counting location planning using genetic algorithm. J.
East. Asia Soc. Transp. Stud. 5, 898–913 (2003)
29. Yang, H., Yang, C., Liping, G.: Models and algorithms for the screen line-based traffic-counting
location problems. Comput. Oper. Res. 33(3), 836–858 (2006)
30. Yang, H., Zhou, J.: Optimal traffic counting location for origin-destination matrix estimation.
Transp. Res. B 32(2), 109–126 (1998)