- Original Research
- Open access
- Published:

# An algorithm for solving the bi-objective median path-shaped facility on a tree network

*Journal of the Egyptian Mathematical Society*
**volume 28**, Article number: 3 (2020)

## Abstract

In this paper, an algorithm for the bi-objective median path (BMP) problem on a tree network is considered. The algorithm is based on the two-phase method which can compute all Pareto solutions for the BMP problem. The first phase is applied to find supported Pareto solutions by solving the uni-objective problem *D*(*P*,*λ*). The second phase is used to compute the unsupported Pareto solutions by applying a *k*-best algorithm which computes the *k*-best Pareto solutions in order of their objective values.

## Introduction

The problem of locating a path on a tree network has been receiving a lot of attention in the literature since it has many applications including the design of pipe lines, public transit line, and railroad lines. Most of papers study the problem of locating a path on a tree which minimizes either the sum of weighted distances from all vertices to the path (median criterion) or minimizes the maximum weighted distance from the vertices to the path (the center criterion). The path which satisfies the first criterion is called a median path [4, 5, 19, 20, 22, 34], and the path which satisfies the second criterion is called a central path [1, 2, 7, 28, 33]. The median criterion is used to reduce the total cost of the service systems. On the other hand, the center criterion is used to serve the clients who are located far away from the facility. Becker et al. [6] studied the problem of finding a path on a tree by considering both the median and the center criterion. They solved two problems, and each one was about finding a path of bounded length which minimizes one criterion with a restriction on the other criterion. They gave *O*(*n* log2*n*) algorithms for both problems.

In real world optimization problems, there is usually more than one objective that has to be optimized, thus leading to multi-objective optimization problems. In general, no single solution exists that optimizes all objective functions simultaneously and they are conflicting. The optimal solution concept is replaced with efficient (Pareto) solution. Several authors studied multi-objective optimization problems (see, e.g., [11, 24, 25, 29]).

The location problem is concerned with the selection of the best set of facility sites on a network to supply a set of costumers. The objective is to locate a number of facilities which satisfies some criteria. Traditionally, these facilities (single facilities) are located at vertex or along an edge of the network [14, 26]. However, some authors extended the concept of the location problem to include sites which can be represented by subtrees or paths (extensive facilities) of the underlying network. Averbakh and Berman [3] introduced the problem of locating a path on a tree network which minimizes both the center and the median criteria. Tamir et al. [31] described an *O*(*n* log*n*) algorithm for siting the optimal location of a tree-shaped facility in a tree network, using a combination of the center criterion and the median criterion. Puerto et al. [23] considered the problem introduced in [3] with an additional constraint, namely that the Pareto path must be of bounded length, whereas this article concentrates on the bi-objective median path (BMP) of a tree. The aim of the BMP problem is to find the set of all Pareto solutions. A two-phase approach is proposed to solve such problem. In the first phase, supported Pareto solutions are computed with a parametric median path algorithm. The other Pareto solutions which are unsupported are computed in the second phase using a ranking algorithm applied on restricted areas of the objective space.

Puerto et al. [23] considered the problem of locating a path-shaped facility with bounded length on a doubly weighted tree network. They used a bi-objective model where each vertex is associated with a pair of non-negative weights, namely, the center weight and the median weight. The aim of their work focused on determining all the non-dominated points in the objective space. Their approach can be viewed as an application of the well-known *ε*-constraint approach. They provided an *O*(*n* log*n*) algorithm to find the set of different *ε* values \(\mathcal {E}\) and proved that the cardinality of \(\mathcal {E}\) is less than or equal 2*n*. Therefore they applied at most 2*n* cent-dian models and each cent-dian model needs *O*(*n* log*n*) time to be solved. Following the same approach presented in [23] to solve the (BMP) problem leads to generating the set \(\mathcal {E}\) with \(\left \vert \mathcal {E} \right \vert \leq n(n+1)/2\). Hence, the restricted models which give the non-dominated points will be nearly run *n*(*n*+1)/2 times and each one of them needs *O*(*n* log*n*) time, whereas the proposed approach based on the two-phase technique reduces the number of running times to 3*r*+*r*^{′}−1, where *r* is the number of the supported non-dominated points and *r*^{′} is the number of unsupported non-dominated points. These results can be summarized in Table 1.

In this paper, a new bi-objective median path-shaped facility location problem is studied.

For this purpose, an algorithm of time complexity

*O*(*n*log*n*) is presented to locate a median path with bounded length of an*n*-tree network.Pareto solutions are catagorized into two types, namely, supported and unsupported.

An

*O*(*n*log*n*) time algorithm is given to compute the supported Pareto solutions. This algorithm based on the weighted scalarization method.An

*O*(*n*log*n*) time algorithm is given to compute the unsupported Pareto solutions. This algorithm is based on the*k*-best method.

The remainder of this paper is organized as follows. Related works are presented in “Related works” section. “Notations and definitions” section introduces the definitions and the notations of the (BMP) problem. In “Median path of a tree” section, an *O*(*n* log*n*) median path algorithm is mentioned. The “Two-phase method to solve BMP problem” section is devoted to the algorithm that solves the BMP problem. An illustrative example is given in the “An illustrative example” section. A case study is stated in the “Case study” section. The final conclusion of this paper is in the “Conclusion” section.

## Related works

Although researchers have paid much attention to the location problems, surprisingly, certain generalization of these problems, which take into account various real-life considerations, has not been studied thoroughly. Hamacher et al. [14] addressed the multi-criteria median problem taking into account several weights on the vertex. Ramos et al. [26] studied the problem of locating a single facility on a network in the presence of several median objectives. Colebrook and Sicilia [9] addressed the *λ*-cent-dian problem on a multi-objective network *G*=(*V*,*E*),|*V*|=*n*,|*E*|=*m*. They developed a polynomial approach in *O*(*m*^{2}*n*^{2}*k*^{2}) time that solves this problem for a given value of *λ*, where *k* is the number of the objective functions. They also generalized the model to problem such as the multi-objective center problem and the multi-objective median problem. Hassin et al. [15] considered the problem of locating facilities on the vertices of a network to maximize the expected demand service and gave two polynomial time exact algorithms. Also, hubs are particular facilities which serve as mediators through aggregation, classification, and distribution of network flows from the origin to a destination. Kahag et al. [16] modeled a multi-objective hub-location-allocation problem and formulated the problem as a constrained bi-objective optimization model to minimize the total costs as well as minimizing the total system time. Ghezavati and Hosseinifar [12] considered a hub location problem where the weights of the vertices are stochastic. They first proposed a bi-objective location problem with value at risk criterion that optimizes the opportunity lost by maximizing the probability that total demands arriving at a facility to be less than the capacity.

## Notations and definitions

Let *T*=(*V*,*E*) be a tree network, with |*V*|=*n*. Each edge *e*=(*v*,*u*)∈*E* has a positive length *l*(*e*). Let the pair of non-negative weights \(\left (w^{1}_{i},w^{2}_{i}\right)\) associate to each vertex *v*_{i}∈*V* representing two median weights corresponding to two median criteria. Let *P* be a discrete path in *T*, that is, its endpoints are restricted to be vertices. The length of *P* is \(L(P)=\sum \limits _{e\in P}l(e)\). Let \(\mathcal {P}\) be the set of discrete bounded paths in *T*, that is, \(\mathcal {P}=\{P\subset T: P \textrm { is discrete and }L(P)\leq l\}\). For any two vertices *v*,*u*∈*V*, the distance *d*(*v*,*u*) between *v* and *u* is the length of the path *P*_{v,u} connecting them. Define the distance between a vertex *v*∈*V* and a path \(P \in \mathcal {P}\) by \(d(v,P)=\min \limits _{u\in P}d(v,u)\). For any path \(P\in \mathcal {P}\), the sum of weighted distances from *P* to all vertices *v*∈*V* is \(D^{r}(P)=\sum \limits _{v_{i}\in V}w^{r}_{i}d(v_{i},P),r=1,2\). A median path *P* with respect to the first or the second criterion is the path which minimizes *D*^{r}(*P*), *r*∈1,2. Let *D* be a two-dimensional function which maps each path \(P \in \mathcal {P}\) into a point in the plane \(\mathbb {R}^{2}\) such that

In this article, all paths \(P\in \mathcal {P}\) which minimize the two-dimensional function *D* are found, so the bi-objective median path BMP problem can be formulated as

Some necessary concepts from multi-objective optimization [8, 10] will be introduced. The set \(\mathcal {P}\) is called the decision (feasible) space and the set \(D(\mathcal {P})=\{(D^{1}(P), D^{2}(P)): P\in \mathcal {P}\}\) is called the objective space.

###
**Definition 1**

A feasible path \(P\in \mathcal {P}\) is said to be Pareto solution for problem *(2)* if there is no path \(P^{\prime }\in \mathcal {P}\) such that *D*^{1}(*P*^{′})≤*D*^{1}(*P*) and *D*^{2}(*P*^{′})≤*D*^{2}(*P*) with at least one strict inequality. The image *D*(*P*)=(*D*^{1}(*P*),*D*^{2}(*P*)) is called non-dominated point (outcome).

Let \(\mathcal {P}_{E}\) and \(\mathcal {D}_{N}\) be the set of Pareto solutions and the set of non-dominated points, respectively. The set \(\mathcal {D}_{N}\) can be viewed graphically as depicted in Fig. 1.

The set of Pareto solutions can be divided into two subsets as follows:

Supported solutions \(\mathcal {P}_{SE}\) which are the optimal solutions of the problem:

$$ \min\limits_{P\in \mathcal{P}}\lambda D^{1}(P)+(1-\lambda)D^{2}(P), $$(3)for 0≤

*λ*≤1. All the supported non-dominated points \(\mathcal {D}_{SN}\) are lying on the boundary of the convex hull of \(D(\mathcal {P})\).The supported solutions \(\mathcal {P}_{SE}\) are partitioned in two types. Extreme supported solution \(P\in \mathcal {P}_{SE}\) whose image \(D(P)\in \mathcal {D}_{SN}\) is located on a vertex of the convex hull of \(D(\mathcal {P})\) and non-extreme supported solution \(P\in \mathcal {P}_{SE}\) whose image \(D(P)\in \mathcal {D}_{SN}\) is located on the interior of an edge of the convex hull of \(D(\mathcal {P})\) (see Fig. 1).

Unsupported solutions \(\mathcal {P}_{UE}=\mathcal {P}_{E}\backslash \mathcal {P}_{SE}\) which are not optimal solutions of problem (3) and their image \(\mathcal {D}_{UN}\) is lying in the interior of triangle constructed by marking out dominating area of two consecutive extreme supported points (see Fig. 1).

## Median path of a tree

Several authors studied the problem of finding a median path [4, 20, 22] in a tree network where each vertex has only one weight. Becker et al. [5] provided an algorithm for a median path with bounded length in weighted tree with time complexity *O*(*n* log2*n*). Tamir et al. [30] gave an *O*(*n* log*n*) algorithm for locating a median path in weighted tree with length constraint. Here, an *O*(*n* log*n*) algorithm for finding a median path of a weighted tree with bounded length is mentioned. The proposed algorithm starts with a decomposition of the tree *T* into sequence of subtrees. This decomposition depends on the definition of a middle vertex of a tree.

###
**Definition 2**

*[*5*,*17*]* Given a weighted tree *T*, a middle vertex *m* of *T* is a vertex which minimizes the maximum of the number of vertices of the subtrees obtained by removing *m*.

###
**Remark 1**

A middle vertex has maximum subtree cardinality less than or equal to \(\frac {n}{2}\). Computing the middle vertex requires *O*(*n*) time as presented in *[*13*]*.

In Fig. 2, there is a tree *T* consisting of seven vertices. The vertex *v*_{4} is considered as the middle vertex of *T* since removing *v*_{4} (see Fig. 3) leads to three subtrees with maximum cardinality \(3 \leq \frac {7}{2}\).

### The median path algorithm

Let *T*=(*V*,*E*) be an *n*-tree. Each vertex *v*∈*V* has only one non-negative weight *w*_{v} and each edge *e*∈*E* is assigned to a positive length *l*(*e*). In this case, there is only one sum of weighted distances function \(\mathbb {D}\) and it is defined as

Running a middle decomposition of the tree *T* leads to sequence of subtrees. For each subtree *T*^{′} in this decomposition, the distances from its middle, say *m*^{′} to all other vertices in *T*^{′} are computed and sorted. This occurs in *O*(*n* log*n*) total time. Let *T* be rooted at its middle vertex *m*, and denote by *T*_{m} the rooted tree. Let *f*(*v*) be the father of *v* in *T*_{m}, Son(*v*) be the set of sons of *v*. Each vertex *v*∈*V* splits the tree *T*_{m} into two subtrees, \(T^{B}_{v}=\left (V^{B}_{v},E^{B}_{v}\right)\) and \(T^{U}_{v}=\left (V^{U}_{v},E^{U}_{v}\right)\), where \(T^{B}_{v}\) denotes the below subtree of *T*_{m} rooted at vertex *v* and \(T^{U}_{v}\) denotes the upper subtree of *T*_{m} which was induced by \(\left (V-V^{B}_{v}\right) \cup \{v\}\), that is \(V^{B}_{v} \cup V^{U}_{v} = V\) and \(V^{B}_{v} \cap V^{U}_{v} = \{v\}\) (see Fig. 4). The tree *T*_{m} can be decomposed into two subtrees *T*_{1}=(*V*_{1},*E*_{1}) and *T*_{2}=(*V*_{2},*E*_{2}) such that *V*_{1}∪*V*_{2}=*V*, *V*_{1}∩*V*_{2}={*m*}, *E*_{1}∪*E*_{2}=*E*, and |*V*_{1}|=*n*_{1}, |*V*_{2}|=*n*_{2}. Let Son(1,*m*) and Son(2,*m*) be the sets of the sons of the middle vertex *m* in *T*_{1} and *T*_{2}, respectively. Denote by Sum_{B}(*v*) and \(\mathbb {D}_{B}(v)\) the sum of weights of vertices in \(T^{B}_{v}\) and the sum of weighted distances of the vertices in \(T^{B}_{v}\) to the vertex *v*, respectively, see [5]. By scanning from the leaves to the root, Sum_{B}(*v*) and \(\mathbb {D}_{B}(v)\) are computed in *O*(*n*) time as follows:

The following quantities will be needed:

###
**Definition 3**

*[5]* Given two paths \(P_{v_{i},v_{j}}\) and \(P_{v_{j},v_{k}}\) with edge disjoint, the distance saving of \(P_{v_{j},v_{k}}\) with respect to \(P_{v_{i},v_{j}}\), is the reduction of the sum of weighted distances obtained by adding \(P_{v_{j},v_{k}}\) to \(P_{v_{i},v_{j}}\), that is,

###
**Remark 2**

If the first path consists of only one vertex *v*_{i}, write \(\phantom {\dot {i}\!}sav(v_{i},P_{v_{i},v_{k}})\) instead of \(sav(P_{v_{i},v_{i}},P_{v_{i},v_{k}})\). In linear time, \(\phantom {\dot {i}\!}sav(v_{i},P_{v_{i},v_{k}})\) is computed as follows:

Also, calculate ∀*v*_{k}∈*V*_{r}, *r*=1,2, the following quantities in linear time.

Note that \(\mathbb {D}(r,v_{k})\) is the sum of weighted distances of all vertices in *T*_{r} from the path \(P_{m,v_{k}}\). Let \(\mathcal {V}^{1}=(v_{i(1)},v_{i(2)},...,v_{i(n_{1})})\) and \(\mathcal {V}^{2}=(v_{q(1)}, v_{q(2)},..., v_{q(n_{2})})\) be the non-decreasing ordering of the vertices in *V*_{1} and *V*_{2} by their distances from the middle vertex *m* respectively. The best paths of length at most *l* which are included in *T*_{1}∖{*m*} and *T*_{2}∖{*m*} may be found by computing for each vertex \(v_{k}\in \mathcal {V}^{1}\), the best path of length bounded above by *l* which has *v*_{k} as an endpoint. Starting with \(v_{i(n_{1})}\), if \(d(m,v_{i(n_{1})})>l \), there is no such path. Otherwise, find the largest index *t*=*t*(*n*_{1}) such that \(d(v_{i(n_{1})},v_{q(t)})\leq l \) and \(d(v_{i(n_{1})},v_{q(t+1)})>l \). Let *v*_{Q}, \(Q\in \mathcal {Q}=\{q(1),q(2),...,q(t(n_{1}))\}\) be a vertex which gives \(\min \limits _{s=1,...,t(n_{1})}\mathbb {D}(2,v_{q(s)})\) and put

where \(\alpha _{i(n_{1})}\) is the value of the sum of the weighted distances of the best path which has \(v_{i(n_{1})}\) as an endpoint. Continuing on with \(v_{i(n_{1}-1)},...,v_{i(1)}\), in linear time all terms *α*_{i(r)},*r*=*n*_{1},...,1 are evaluated. The value of the median function of the best path of length at most *l* which passes through the middle vertex *m* and contains vertices in both *V*_{1}−{*m*} and *V*_{2}−{*m*} is given by \(\min \limits _{r=n_{1},...,1}\alpha _{i(r)}\).

Suppose that \(v_{I}, I\in \mathcal {I}=\{i(1),i(2),...,i(n_{1})\}\) is a vertex where \(\min \limits _{r = n_{1},..., 1}\alpha _{i(r)}\) takes place therefore the path \(P_{v_{I},v_{Q}}\) is passing through the middle vertex *m* and minimizing the median function with \(\mathbb {D}(P_{v_{I},v_{Q}}) = \min \limits _{r = n_{1},..., 1}\alpha _{i(r)}\).

To find the best path in *T*_{1}, replace the weight of *m* by \(\sum \limits _{v\in V_{2}}w_{v}\), delete all vertices in *V*_{2}−{*m*} from *T*, and solve the problem in the resulting subtree *T*_{1} and add the constant \(\mathbb {D}^{2}(m)=\sum \limits _{v_{t}\in V^{2}}w_{t}d(v_{t},m)\) to the value of the median function. By similar technique, the best path in *T*_{2} can be located. For simplicity, define *i*^{′} as (to be used later):

###
**Theorem 1**

(See *[30]*.) The time complexity of median path algorithm is *O*(*n* log*n*).

### The *k*-best median path in a tree

It is known that \(\left \vert \mathcal {P}\right \vert \leq \frac {n}{2}(n+1)\). The *k*-best median path \(P\in \mathcal {P}\) means the *k*-path which minimizes the median function with \(k=1,2,...,\frac {n}{2}(n+1)\). The algorithm presented in the previous subsection finds the first best median path, but it is sometimes needed to locate the second, the third,..., etc., best median paths of the tree *T*. Therefore, this algorithm is modified. For the sake of simplicity, it is assumed that the best median path \(P^{\ast }=P_{v_{I},v_{Q}}\) with endpoints *v*_{I}∈*T*_{1} and *v*_{Q}∈*T*_{2}. To compute the second best path in *T*, the first median path \(P^{\ast }=P_{v_{I},v_{Q}}\) is excluded and the second median path is located by updating the quantities *α*_{i(j)} in linear time as follows:

## Two-phase method to solve BMP problem

The two-phase method is based on computing the supported and unsupported Pareto solutions separately (see [32]). In phase 1, the supported Pareto solutions are computed by solving the weighted sum problem. In phase 2, the unsupported Pareto solutions are computed by an enumerative approach. The search space in phase 2 is restricted due to information obtained from phase 1 since it is restricted to triangles given by two consecutive supported non-dominated points. These triangles are said to be the viable regions.

### Phase 1

It is used to find the supported Pareto solutions whose corresponding supported non-dominated points lie on the boundary of the convex hull. The weighted-sum scalarization is one of the most common methods used for this purpose. In this technique, the individual criteria are combined together so that one can solve a series of single objective problems. Consider the following minimization problem:

where 0≤*λ*≤1. The problem (14) is equivalent to finding a median path *P* in the tree *T* which minimizes the sum of weighted distances function

The idea of this phase is based on finding two solutions *P*_{1} and *P*_{2} with *D*(*P*_{1})=(*x*_{1},*y*_{1}), and *D*(*P*_{2})=(*x*_{2},*y*_{2}) obtained by solving the problem (15) for each criterion separately. These solutions must be supported Pareto solutions. If they are identical, then the BMP problem has unique minimum solution. Otherwise another supported Pareto solution *P* with *D*(*P*)=(*x*,*y*) between *D*(*P*_{1}) and *D*(*P*_{2}) is computed (if there exists such one).

###
**Theorem 2**

The running time of Phase 1 algorithm is *O*(*r**n* log*n*), where *r* is the number of the supported non-dominated points.

**Proof:** The running time of Median Path algorithm is *O*(*n* log*n*). The uniobjsearch procedure can be applied at most 2*r* time, where *r* is the number of the supported non-dominated points. Hence, the overall time of the phase 1 algorithm is *O*(*r**n* log*n*).

### Phase 2

The unsupported non-dominated points lie within triangles, viable regions, formed by two consecutive supported non-dominated points. Phase 2 searches for unsupported non-dominated points separately in each viable region.

###
**Theorem 3**

The running time of phase 2 algorithm is *O*(*R**n* log*n*), where \(R=\left \vert \mathcal {D}_{N}\right \vert \).

## An illustrative example

The computations of algorithms phase 1 and phase 2 are illustrated by using the following tree given in Fig. 5. The following (BMP) problem is studied:

where \(\mathcal {P}=\{P\subset T:L(P)\leq 26\}\).

It is equivalent to locating the median path in the tree depicted in Fig. 6 with different values of *λ*. Table 2 shows the use of phase 1 and resulting three supported Pareto solutions. The supported Pareto solutions in order obtained are \(P^{1} = P_{v_{7}, v_{11}}, P^{2} = P_{v_{1}, v_{12}},\) and \(P^{3} = P_{v_{7}, v_{12}}\). Their corresponding supported non-dominated points are *s*^{1}=(131,689),*s*^{2}=(219,350), and *s*^{3}=(169,474). Figure 7 shows the two viable regions sketched by these points.

Table 3 shows the application of phase 2 algorithm to the first viable region (first V.R.) defined by the triangle whose vertices are *s*^{1}=(131,689),*s*^{3}=(169,474) and (169,689). The point *s*^{4}=(139,676) is located in the first V.R. After that phase 2 is applied to the second viable region (2nd V.R.) which is given by the triangle whose vertices are *s*^{3}=(139,474),*s*^{2}=(219,350), and (219,474). The two unsupported points *s*^{5}=(177,461) and *s*^{6}=(194,447) are lying in the 2nd V.R. The unsupported points found by phase 2 are shown in Fig. 7.

## Case study

Mahmoud et al. [18] gave a case study as an application to the multi-objective location problem. They presented a methodology based on geographic information system (GIS) and multi-criteria decision analysis (MCDA) for regionally locating and sizing desalinization facilities for domestic water supply. The GIS allows consideration of complex spatial terrain and topographic impacts on locating desalination facilities and MCDA procedure maximizes utility using a 0−1 integer programming model for selecting cities to be served under specified budget allocations. This methodology is applied to a graph with *N* vertices representing a region with *N* municipalities. The total number of combinations *S* up to *N* municipalities receiving desalinated water supply from various combinations of plants is \(S=\sum _{i=1}^{N}\left (\begin {array}{c} N \\ i \end {array} \right)\). The *S* alternatives are identified as binary variables *p*_{i} (*i*=1,...,*S*), with \(\mathcal {M}_{i}(p_{i})\) representing the discrete set of municipalities receiving water from desalination facility alternative *i* if *p*_{i}=1; otherwise, \(\mathcal {M}_{i}(p_{i})= \phi \) if *p*_{i}=0 and \(\mathcal {T}_{i}(z_{i})\) are the sets for each municipality *i*=1,...,*N* representing the desalination plant alternatives capable of delivering water to city *i*, assuming binary variable *z*_{i}=1, indicating that city *i* is delivering desalinated water. They considered the model

where setting *p*_{i}=1 in (16) places plant *i* at spatial location *x*_{i},

*W*_{j} means the municipal demand at location *ℓ*_{j},

*d*(*x*_{i},*ℓ*_{j}) is the distance between the plant and city \(j, ~ j \in \mathcal {M}_{i}(p_{i})\),

\(U_{i} = \sum _{k = 1}^{R} w_{k}u_{ik}, \forall i = 1,..., N\), such that *w*_{k} is weight-assigned by a decision-maker to each criterion *k*=1,...,*R*; and *u*_{ik} is a score for city *i* related to criterion *k*, and

*C*_{max} is the least-cost selection of plants that supply water to only the selected cities.

They applied this model to the Northwestern coast of Egypt far from the freshwater sources in the Nile Valley and the Delta to optimally locate and size desalinization facilities over the region (see Fig. 8).

## Conclusion

The problem of siting special types of subgraphs such as trees and paths of the underlying network is considered as an extensive facility location problem. There are many applications in which several weights per each vertex need to be considered representing demand, importance, population, etc. This paper concentrates on the location problem of a path-shaped facility with bounded length on a doubly weighted tree network. A two-phase method is presented to finding all Pareto solutions.

The proposed problem in this paper is considered as desirable facilities that people like to be nearby. However, there also exist facilities that are undesirable and obnoxious such as nuclear reactors, military installations, and chemical plants (see [21,27]). For the future directions, one aims to study undesirable and obnoxious facilities in a multi-criteria networks.

## Availability of data and materials

Not applicable.

## References

Aboutahoun, A. W., El-Safty, F.: A linear algorithm for a minimax location of a path-shaped facility with a specific length in a weighted tree network. Int. J. Oper. Res. 1. https://doi.org/10.1504/IJOR.2021.10016889.

Alizadeh, B., Etemad, R.: Linear time optimal approaches for reverse obnoxious center location problems on networks. Optimization. 65, 2025–2036 (2016).

Averbakh, I., Berman, O.: Algorithms for path medi-centers of a tree. Comput. Oper. Res.26, 1395–1409 (1999).

Becker, R. I.: Inductive algorithms on finite trees. Quaest. Math.13, 165–181 (1990).

Becker, R. I., Chang, Y. I., Lari, I., Scozzari, A., Strochi, G.: Finding the

*ℓ*-core of a tree. Discrete Appl. Math. 118, 25–42 (2002).Becker, R. I., Lari, I., Scozzari, A.: Algorithms for central-median paths with bounded length on trees. European J. Oper. Res. 179, 1208–1220 (2007).

Bhattacharya, B., Shi, Q., Tamir, A.: Optimal algorithm for the path/tree shaped facility location problems on trees. Algorithmica. 55, 601–618 (2009).

Chankong, V., Haimes, Y. Y.: Multiobjective decision making: theory and methodology. Dover publications, New York (2008).

Colebrook, M., Sicilia, J.: A ploynomial algorithm for the multicriteria cent-dian location problem. European J. Oper. Res. 179, 1008–1024 (2007).

Ehrgott, M.: Multicriteria Optimization. Springer, Berlin (2005).

Ehrgott, M., Gandibleux, X.: Bound sets for biobjective combinatorial optimization problems. Comput. Oper. Res. 34, 2674–2694 (2007).

Ghezavati, V., Hosseinifar, P.: Application of efficient metaheuristics to solve a new bi-objective optimization model for hub facility location problem considering value at risk criterion. Soft Comput. 22, 195–212 (2016).

Goldman, A. J.: Optimum center location in simple networks. Transport. Sci. 5, 212–221 (1971).

Hamacher, H. W., Labbe, M., Nickel, S.: Multicriteria network location problems with sum objectives. Networks. 33, 79–92 (1999).

Hassin, R., Ravi, R., Salman, F. S.: Multiple facility location on a network with linear reliability order of edges. J. Comb. Optim. 34, 931–955 (2017).

Kahag, M. R., Niaki, S. T. A., Seifbarghy, M., Zabihi, S.: Bi-objective optimization of multi-server intermodel hub-location-allocation problem in congested systems: modeling and solution. J. Ind. Eng. Int. 15, 221–248 (2019).

Kariv, O., Hakimi, S. L.: An algorithmic approach to network location problems, Part I, The

*p*-centers. SIAM J. Appl. Math. 37, 513–538 (1979).Mahmoud, M. R., Fahmy, H., Labadie, J. W.: Multicriteria siting and sizing of desalination facilities with geographic information system. J. Water Res. Pl- ASCE. 128, 113–120 (2002).

Minieka, E., Patel, N. H.: On finding the core of a tree with a specified length. J. Algorithms. 4, 345–352 (1983).

Morgan, C. A., Slater, P. J.: A linear algorithm for a core of a tree. J. Algorithms. 1, 247–258 (1980).

Nguyen, K., Vui, P.: The inverse

*p*-maxian problem on trees with variable edge lengths. Taiwanese J. Math. 20, 1437–1449 (2016).Peng, S., Lo, W.: Efficient algorithms for finding a core of a tree with specified length. J. Algorithms. 20, 445–458 (1996).

Puerto, J., Rodrigues-Chia, A. M., Tamir, A., Perez-Brito, D.: The bi-criteria doubly weighted center-median path problem on a tree. Networks. 47, 237–247 (2006).

Raith, A., Ehrgott, M.: A comparison of solution strategies for biobjective shortest path problems. Comput. Oper. Res. 36, 1299–1331 (2009).

Raith, A., Ehrgott, M.: A two-phase algorithm for the biobjective integer minimum cost flow problem. Comput. Oper. Res. 36, 1945–1954 (2009).

Ramos, R. M., Ramos, M. T., Colebrook, M., Sicilia, J.: Locating a facility on a network with multiple median-type objectives. Ann. Oper. Res. 86, 221–235 (1999).

Rana, R., Garg, D.: Algorithm for obnoxious facility location problem. Int. J. Adv. Technol. 5, 96–106 (2014).

Slater, P. J.: Locating central paths in a graph. Transport. Sci. 16, 1–18 (1982).

Steiner, S., Radzik, T.: Computing all efficient solutions of the biobjective minimum spanning tree problem. Comput. Oper. Res. 35, 198–211 (2008).

Tamir, A., Puerto, J., Mesa, J. A., Rodriguez-Chia, A. M.: Conditional location of path and tree shaped facilities on trees. J. Algorithms. 56, 50–75 (2005).

Tamir, A., Puerto, J., Perez-Brito, D.: The centdian subtree on tree network. Discrete Appl. Math. 118, 263–278 (2002).

Ulungu, E. L., Teghem, J.: The two-phases method: an efficient procedure to solve bi-objective combinatorial optimization problems. Found. Comput. Decision Sci. 20, 149–165 (1995).

Wang, H. L.: An optimal algorithm for the weighted backup 2-center problem on a tree. Algorithmica. 77, 426–439 (2017).

Zaferanieh, M., Fathali, J.: Finding a core of a tree with pos/neg weight. Math. Meth. Oper. Res. 76, 147–160 (2012).

## Acknowledgements

The authors would like to thank the anonymous referees for their valuable comments and suggestions, which greatly improved the presentation of this paper.

## Funding

Not applicable.

## Author information

### Authors and Affiliations

### Contributions

AWA suggested and analyzed the algorithms of the considered problem. FE applied the algorithms to an illustrative example and was a major contributor in writing the manuscript. Both authors read and approved the final manuscript.

### Corresponding author

## Ethics declarations

### Competing interests

The authors declare that they have no competing interests.

## Additional information

### Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

## Rights and permissions

**Open Access** This article is distributed under the terms of the Creative Commons Attribution 4.0 International License(http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

## About this article

### Cite this article

Aboutahoun, A., El-Safty, F. An algorithm for solving the bi-objective median path-shaped facility on a tree network.
*J Egypt Math Soc* **28**, 3 (2020). https://doi.org/10.1186/s42787-019-0063-4

Received:

Accepted:

Published:

DOI: https://doi.org/10.1186/s42787-019-0063-4