Abstract
Where to locate one or several facilities on a network so as to minimize the expected users-closest facility transportation cost is a problem well studied in the OR literature under the name of median problem.
In the median problem users are usually identified with nodes of the network. In many situations, however, such assumption is unrealistic, since users should be better considered to be distributed also along the edges of the transportation network. In this paper we address the median problem with demand distributed along edges and nodes. This leads to a global-optimization problem, which can be solved to optimality by means of a branch-and-bound with DC bounds. Our computational experience shows that the problem is solved in short time even for large instances.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
Location problems on networks have attracted the interest of researchers and practitioners since the 60s of last century. Under the usual assumption, the demand is concentrated at the nodes of the network, and the facilities can be located either at the nodes or along the edges of the transportation network.
Assuming that the demand is concentrated at the nodes is not realistic when modeling so-called networks spatial phenomena, e.g. [18], that is, phenomena which do happen in points along edges of the network, such as, for instance, traffic accidents, or close to such edges, as happens in urban settings, where edges model the city streets, close to the buildings where demand happens. See [18, 19] for further discussion on the advantages on continuous network models against traditional approaches (discrete or planar location models).
For this reason, several researchers have addressed location problems on networks under the assumption that demand is not only concentrated on nodes, but also is (continuously) distributed along the edges of the network.
Most papers consider the case in which, for each edge of the network, demand is uniformly distributed. Nkansah and David [17] addresses the problem of minimizing the expected distance from the users to one facility, [6, 8] consider the two-facility case on very particular network topologies (trees), whereas [15] addresses the minimization of the variance of distances from the users to the facility. Assuming uniform demands on edges should be seen as a first step towards gaining realism of the model, while maintaining tractability. Indeed, the resulting objective functions admits a rather simple form, as a piecewise polynomial function in one variable, whose optimization is reduced to inspecting all critical points, namely, extreme points and points at which the derivative of the polynomial function vanishes.
Assuming more general distributions for the demand has been advocated by several authors. Okabe et al. [18] suggests the use of general density distributions, from which random samples are generated, yielding a discrete approximation to the problem, which is the one which is later analyzed. Statistical kernel methods have also been recently proposed to model the demand, [20, 23], though, as far as the authors know, no optimization has been carried out, excepting, as said above, discretization via simulation.
In this paper we consider a single-facility location problem, namely, the 1-median problem: the point minimizing the expected distance from the users is sought. With respect to the state-of-the-art, we give a further step towards realism, by assuming arbitrary distributions for the demand along edges. Contrary to the planar 1-median problem, known to be convex, [7], the 1-median problem on networks with continuous demand poses nontrivial challenges: we have no longer a simple expression for the objective, and its optimization calls for the use of global-optimization techniques. In particular, it is shown that the objective function is DC, [10, 11, 21, 22] i.e., it can be written as the difference of two convex functions, and thus its optimization can be addressed via branch-and-bound methods customized for DC functions, [1, 4, 5].
The remainder of the paper is organized as follows. In Sect. 2 the 1-median problem with demand distributed on edges and on nodes of the network is formally introduced. Properties of the objective function are discussed in Sect. 3, where it is shown, in particular, how the function can be expressed as the difference of two convex functions on each edge of the network. These properties will be the cornerstone for a branch-and-bound algorithm, as described in Sect. 4. Our numerical experience is reported in Sect. 5, showing that our algorithm enables us to solve problems on large networks in reasonable time.
2 Problem formulation
Let N=(A,E) be a connected and undirected network, with node set A={a 1,…,a n } and edge set E, with |E|=m. Let us denote by l ij the length of each edge e ij =[a i ,a j ]∈E and let d(x,y) be the distance between two points x,y∈N, obtained as the shortest path from x to y. In particular, the distance d ij =d(a i ,a j ) between each pair of nodes {a i ,a j } can be worked out by using standard algorithms, [2]. Note that for every pair of nodes a i ,a j with [a i ,a j ]∈E, it follows that d ij ≤l ij , and equality holds if and only if the edge [a i ,a j ] is the shortest path joining a i and a j .
Given a node a k ∈A and a point x∈[a i ,a j ], obtained after covering a distance l x on the edge [a i ,a j ], the distance d(x,a k ) from a k to x is, as a function of x, a piecewise linear concave function given by:
where
We assume that the demand not only occurs at nodes but also along the edges of the network. More precisely, the demand of a node a∈A will be denoted by ω a ≥0, the total demand of a given edge e∈E is p e ≥0, and it is distributed along e according to a random variable with cumulative distribution function (cdf) F e .
Under the previous assumptions, the median problem with continuous demand can be written as follows:
Observe that we are making no assumption on the type of distribution followed for the demand. In case the demand on the edges is continuously distributed along e, i.e., when the cdf F e has a pdf f e , (3) can be rewritten as
3 Properties
It has been noticed in [12] that the objective function of (3) is neither convex nor concave as a rule. Indeed, the objective function can exhibit local optima which are not globally optimal, as the following example shows. So the use of global optimization techniques is required if one seeks the optimal solution.
Example 1
Let us consider the network N=(A,E) with A={a 1,a 2,a 3} and E={[a 1,a 2],[a 1,a 3],[a 2,a 3]}. Arc lengths, node demands and arc demands are the following:
We also assume that the demand along each arc e is distributed according to a beta distribution, i.e., the probability density function f e has the form
The parameters α e ,β e of these probability distributions in the three edges are as follows:
Arc e | α e | β e |
---|---|---|
[a 1,a 2] | 0.6 | 0.5 |
[a 1,a 3] | 0.4 | 0.8 |
[a 2,a 3] | 0.5 | 0.5 |
Under these assumptions, the objective function of Problem (3) restricted to the edge [a 1,a 2] takes the form
Multimodality of the function is clearly seen in Fig. 1.
The special structure of the objective function of Problem (3) will be exploited in order to design a deterministic global optimization algorithm that allows us to find an optimal solution to the problem. More precisely, we will show that H(x) in (3) belongs to the broad class of DC functions, [10, 11, 21]. This key property will allow us to solve Problem (3) by branch-and-bound algorithms, as the one described in Sect. 4, since lower and upper bounds can easily be obtained for DC functions as soon as a DC decomposition is available.
Definition 2
Let \(\varOmega\subset\mathbb{R}^{n}\) be a convex set. A function \(h:\varOmega\rightarrow\mathbb{R}\) is called DC in Ω if there exist two convex functions \(h^{+}:\varOmega\rightarrow\mathbb{R}\), \(h^{-}:\varOmega\rightarrow\mathbb{R}\) such that
A pair (h +,h −) satisfying (6) is called a DC decomposition of h in Ω.
An interesting property of the class of DC functions is that it is closed under the most common operations in optimization, [3, 10, 11, 21, 22]. In particular, if h 1,…,h r are DC functions and \(\lambda_{i}\in\mathbb{R}, \; i=1,\ldots,r\), then \(\sum_{i=1}^{r} \lambda_{i} h_{i}\), max i=1,…,r h i , min i=1,…,r h i and ∥(h 1,…,h r )∥ are also DC and their DC decompositions can be easily obtained from the DC decompositions of h i , i=1,…,r.
The following result shows that the objective function H(x) in (3) is DC on each arc of the network.
Proposition 3
Given \(\bar{e}\in E\), the function \(H_{\bar{e}}:\bar{e} \mapsto \mathbb{R}\) defined as
is DC. A DC decomposition of \(H_{\bar{e}}\) on \(\bar{e}\) is given by the pair \((H_{\bar{e}}^{+},H_{\bar{e}}^{-})\), with
Proof
Let us rewrite \(H_{\bar{e}}(x)\) as \(H_{\bar{e}}(x) = h_{1}(x) + h_{2}(x) + h_{3}(x)\) where
The function h 1 is piecewise linear and concave (see [13] for instance), and h 2 is also concave, see [12]. In what follows it is shown that h 3 is DC, and a DC decomposition is given. Given \(x,y \in\bar{e}=[a_{i},a_{j}]\), the distance d(x,y) between x and y is obtained as the minimum of the lengths of the following paths:
-
1.
the subedge of \(\bar{e}\) with x,y as end points,
-
2.
the subedge of \(\bar{e}\) joining x and a i , the shortest path joining a i and a j , and then the subedge of \(\bar{e}\) joining a j and y,
-
3.
the subedge of \(\bar{e}\) joining x and a j , the shortest path joining a j and a i , and then the subedge of \(\bar{e}\) joining a i and y.
In other words d(x,y) can be expressed as
Observe that the last expression gives a DC decomposition of d on \(\bar{e}\). Hence, h 3 can be written as
which yields a DC decomposition of h 3. Taking into account that \(H_{\bar{e}} = h_{1}+h_{2}+h_{3}\), with h 1,h 2 concave and h 3 decomposed as a difference of convex functions in (14), it follows that (7) gives a DC decomposition of \(H_{\bar{e}}\), as asserted. □
We end this section with further properties of the objective function H e under some assumption on the edge e. These results extend previous well-known results for particular topologies, e.g. for networks which are chains or trees.
Corollary 4
Let \(\bar{e} \in E\) be an edge such that \(p_{\bar{e}}=0\). Then \(H_{\bar{e}}\) is concave on \(\bar{e}\).
Proof
If \(p_{\bar{e}}=0\), then, by Proposition 3, \((0,-H_{\bar {e}})\) is a valid DC decomposition for \(H_{\bar{e}}\). □
Proposition 5
Let \(\bar{e} \in E\) be an edge such that \(E\setminus\{\bar{e}\}\) is a disconnected network. Then \(H_{\bar{e}}\) is convex on \(\bar{e}\).
4 The algorithm
Problem (3) will be solved by using a standard branch and bound method [14, 16] which will find out the optimal solution within a relative accuracy of ε>0. The bounds of the objective function required to applying the algorithm will be worked out by taking into account its DC structure. A brief description of such an algorithm is shown next.
-
Phase 1: Initialization
-
1.
Fix the required accuracy ε>0.
-
2.
Set UB=+∞ (upper bound initialization).
-
3.
Compute the all-pairs distance matrix.
-
4.
Set the list Λ of remaining segments as empty.
-
5.
For each edge e∈E do:
-
(a)
Consider e as a segment with its nodes as the segment vertices.
-
(b)
Evaluate the objective function at the segment midpoint. If this value is lower than UB, then update UB and store in x UB the midpoint as incumbent.
-
(c)
Calculate a lower bound for the segment e, LB(e).
-
(d)
If LB(e)<UB/(1+ε), then insert e into Λ.
-
(a)
-
1.
-
Phase 2: Branch and Bound process
Repeat as long as no stop was reached:
-
1.
Select from Λ the minimum lower bound segment e min and remove if from Λ.
-
2.
If LB(e min )≥UB/(1+ε), then stop the algorithm with x UB as optimal solution and UB as optimal objective value.
-
3.
Split e min by its midpoint into two smaller segments, \(e_{min}^{1}\) and \(e_{min}^{2}\).
-
4.
Evaluate the objective function at the midpoint of the two small segments. If any of these values is lower than UB, then update UB.
-
5.
Compute a lower bound of the objective function on each small segment.
-
6.
If \(\mathit{LB}(e_{min}^{i})<\mathit{UB}/(1+\varepsilon)\) for i=1 or i=2, then insert \(e_{min}^{i}\) into Λ.
-
7.
If UB has been updated in this iteration, then discard all segments from Λ whose lower bound is greater than UB.
-
1.
The algorithm uses a data structure Λ where all the segments (bits of edge) that can contain an optimal solution are stored. The loop in Phase 1 establishes the initial composition of the data structure by selecting the edges whose lower bound is not greater that the global upper bound of the optimal objective value. At the same time, that upper bound is improved by evaluating each edge at its middle point and replacing the bound with the objective value when this is smaller.
Phase 2 of the algorithm consists of an undefined loop where the segment with the worst lower bound is processed; the algorithm finishes when the difference between that lower bound and the global upper bound is smaller than the tolerance ε chosen in Phase 1. If the stopping rule is not fulfilled, the selected segment is split into two equal segments which are processed in the same way that the edges in Phase 1. Eventually, if a change in the upper bound took place during an iteration, all the segments in the data structure that cannot contain an optimal solution are removed.
The computation of the objective function’s lower bound on each segment requires more attention and is going to be detailed next.
4.1 Constructing lower bounds
Given an edge \(\bar{e}=[a_{i},a_{j}]\in E\), Proposition 3 provides a DC decomposition for \(H_{\bar{e}}\) –the restriction of the objective H to e– and this fact can be exploited in order to obtain the lower bounds required in the previous algorithm. Starting from the DC representation (7), a concave underestimate \(L_{\bar{e}}(x)\) of \(H_{\bar{e}}\) is obtained by replacing \(H_{\bar{e}}^{+}\) with an affine underestimate built in the usual way,
where ξ is any point in \(\partial H_{\bar{e}}^{+}(x_{0})\), the subdifferential of \(H_{\bar{e}}^{+}\) at \(x_{0}\in\bar{e}\). Since
one has
and thus, a concave underestimate \(L_{\bar{e}}(x)\) is given by
Due to the concavity of \(L_{\bar{e}}\), it is enough to evaluate this function at the extreme points of \(\bar{e}\) to obtain its minimum on the segment, which is also a lower bound for \(H_{\bar{e}}^{+}\). Hence,
5 Computational results
The effectiveness of the proposed algorithm was investigated with the aid of numerical cases.
The algorithm described in Sect. 4 was coded in Fortran and compiled using Intel©Fortran Compiler XE 12.0. Executions were carried out on an Intel Core i7 computer with 8.00 Gb of RAM memory at 2.8 GHz, running Windows 7. The solutions were found to a relative accuracy of 10−3 and the integrals were calculated by means of the functions qdags and qdagp available at the IMSL Fortran Numerical Library.
We experimented with a set of 43 test networks obtained from [9, 24]. The number of nodes of these test problems ranges from 150 to 1000, and the number of edges from 296 to 3083. Each problem was solved 10 times over each network using randomly generated parameters: the demands of nodes were obtained from a Uniform distribution on [0,1], as it is also the case of the overall demand of each edge. Regarding the demand along each edge, it was assumed to be distributed following a Beta distribution with parameters randomly generated on the interval [0.1,5], which provides a wide range of density functions with very different shapes.
After the resolution of each set of 10 instances, some statistical measures (minimum, maximum, average and standard deviation) were calculated for the following indicators of the algorithm performance:
-
Number of iterations of the Phase 2 of the algorithm.
-
Maximum size of the data structure used for storage reached during the algorithm execution.
-
CPU time.
Table 1 shows the computational results, where the number of nodes |A| and edges |E| of the graphs are reported as well as the above-mentioned computational measures.
The number of iterations and the maximum size of the branch-and-bound list remain low in all the executions. However, the CPU time results are quite high mainly due to the computation of the integrals in Phase 1 (steps 5-b and 5-c) and Phase 2 (steps 4 and 5). One can see that the CPU time required to solve different instances of the same problem shows a great stability.
We summarize the findings of this paper. We have addressed the problem of locating one facility on a network with demand distributed on nodes and edges, following arbitrary distributions. The problem is shown to be multimodal, calling for the use of global optimization techniques. The objective function on each edge has been shown to be DC, and a DC decomposition is given. This enables us to obtain concave underestimates of the objective, which are used in a branch and bound procedure. Our numerical tests show that problems of large size are solved rather quickly. Extensions of our techniques to the multifacility case are now under study.
References
Bello, L., Blanquero, R., Carrizosa, E.: On minimax-regret Huff location models. Comput. Oper. Res. 38, 90–97 (2011)
Bertsekas, D.P.: Network Optimization: Continuous and Discrete Models. Athenas Scientific, Belmont (1998)
Blanquero, R., Carrizosa, E.: Optimization of the norm of a vector-valued DC function and applications. J. Optim. Theory Appl. 107, 245–260 (2000)
Blanquero, R., Carrizosa, E.: Continuous location problems and big triangle small triangle: constructing better bounds. J. Glob. Optim. 45, 389–402 (2009)
Blanquero, R., Carrizosa, E., Hansen, P.: Locating objects in the plane using global optimization techniques. Math. Oper. Res. 34, 837–858 (2009)
Brandeau, M.L., Chiu, S.S., Batta, R.: Locating the two-median of a tree network with continuous link demands. Ann. Oper. Res. 6, 223–253 (1986)
Carrizosa, E., Conde, E., Muñoz-Márquez, M., Puerto, J.: The generalized Weber problem with expected distances. RAIRO. Rech. Opér. 29, 35–57 (1995)
Cavalier, T.M., Sherali, H.D.: Network location problem with continuous link demands: p-medians on a chain and 2-medians on a tree. Eur. J. Oper. Res. 23, 246–255 (1986)
Corberán, A., Sanchis, J.M.: A branch & cut algorithm for the windy general routing problem and special cases. Networks 49, 245–257 (2007)
Horst, R., Thoai, N.V.: DC programming: overview. J. Optim. Theory Appl. 103, 1–43 (1999)
Horst, R., Tuy, H.: Global Optimization: Deterministic Approaches, 3rd edn. Springer, Berlin (1996)
Chiu, S.S.: The minisum location problem on an undirected network with continuous link demands. Comput. Oper. Res. 14, 369–383 (1987)
Larson, R.C., Odini, A.R.: Urban Operations Research. Prentice Hall, Englewood Cliffs (1981)
Lawler, E.L., Wood, D.E.: Branch-and-bound methods: a survey. Oper. Res. 14, 699–719 (1966)
López de los Mozos, M.C., Mesa, J.A.: The variance location problem on a network with continuously distributed demand. RAIRO. Rech. Opér. 34, 154–181 (2000)
Mitten, L.G.: Branch and bound methods: general formulation and properties. Oper. Res. 18, 24–34 (1970)
Nkansah, P.T., David, H.T.: Network median problems with continuously distributed demand. Transp. Sci. 20, 213–219 (1986)
Okabe, A., Okunuki, K., Shiode, S.: SANET: a toolbox for spatial analysis on a network. Geogr. Anal. 38, 57–66 (2006)
Okabe, A., Satoh, T., Furuta, T., Suzuki, A., Okano, K.: Generalized network Voronoi diagrams: concepts, computational methods, and applications. Int. J. Geogr. Inf. Sci. 22, 965–994 (2008)
Okabe, A., Satoh, T., Sugihara, K.: A kernel density estimation method for networks, its computational method and a GIS-based tool. Int. J. Geogr. Inf. Sci. 23, 7–32 (2009)
Tuy, H.: DC optimization: theory, methods and algorithms. In: Handbook of Global Optimization, Kluwer Academic, Dordrecht (1995)
Tuy, H., Al-Khayyal, F., Zhou, F.: A d.c. optimization method for single facility location problems. J. Glob. Optim. 7, 209–227 (1995)
Xie, Z., Yan, J.: Kernel density estimation of traffic accidents in a network space. Comput. Environ. Urban Syst. 32, 396–406 (2008)
Data instances for arc routing problems. Available at www.uv.es/corberan/instancias.htm
Author information
Authors and Affiliations
Corresponding author
Additional information
Research supported by grants from the Spanish Ministry of Education, Culture and Sport MTM2009-14039-C06-06, Junta de Andalucía TIC-6064, FQM-329, in part financed by the European Regional Development Fund (ERDF).
Rights and permissions
About this article
Cite this article
Blanquero, R., Carrizosa, E. Solving the median problem with continuous demand on a network. Comput Optim Appl 56, 723–734 (2013). https://doi.org/10.1007/s10589-013-9574-3
Received:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10589-013-9574-3