Minimax Regret 1-Median Problem in Dynamic Path Networks

  • Yuya Higashikawa
  • Siu-Wing Cheng
  • Tsunehiko Kameda
  • Naoki Katoh
  • Shun Saburi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9843)

Abstract

This paper considers the minimax regret 1-median problem in dynamic path networks. In our model, we are given a dynamic path network consisting of an undirected path with positive edge lengths, uniform positive edge capacity, and nonnegative vertex supplies. Here, each vertex supply is unknown but only an interval of supply is known. A particular assignment of supply to each vertex is called a scenario. Given a scenario s and a sink location x in a dynamic path network, let us consider the evacuation time to x of a unit supply given on a vertex by s. The cost of x under s is defined as the sum of evacuation times to x for all supplies given by s, and the median under s is defined as a sink location which minimizes this cost. The regret for x under s is defined as the cost of x under s minus the cost of the median under s. Then, the problem is to find a sink location such that the maximum regret for all possible scenarios is minimized. We propose an \(O(n^3)\) time algorithm for the minimax regret 1-median problem in dynamic path networks with uniform capacity, where n is the number of vertices in the network.

Keywords

Minimax regret Sink location Dynamic flow Evacuation planning 

1 Introduction

The Tohoku-Pacific Ocean Earthquake happened in Japan on March 11, 2011, and many people failed to evacuate and lost their lives due to severe attack by tsunamis. From the viewpoint of disaster prevention from city planning and evacuation planning, it has now become extremely important to establish effective evacuation planning systems against large scale disasters in Japan. In particular, arrangements of tsunami evacuation buildings in large Japanese cities near the coast has become an urgent issue. To determine appropriate tsunami evacuation buildings, we need to consider where evacuation buildings are located and how to partition a large area into small regions so that one evacuation building is designated in each region. This produces several theoretical issues to be considered. Among them, this paper focuses on the location problem of the evacuation building assuming that we fix the region such that all evacuees in the region are planned to evacuate to this building. In this paper, we consider the simplest case for which the region consists of a single road.

In order to represent the evacuation, we consider the dynamic setting in graph networks, which was first introduced by Ford et al. [11]. In a graph network under the dynamic setting, each vertex is given supply and each edge is given length and capacity which limits the rate of the flow into the edge per unit time. We call such networks under the dynamic setting dynamic networks. Unlike in static networks, the time required to move supply from one vertex to a sink can be increased due to congestion caused by the capacity constraints, which require supplies to wait at vertices until supplies preceding them have left. In this paper, we consider the flow on dynamic networks as continuous, that is, each input value is given as a real number, and supply, flow and time are defined continuously. Then each supply can be regarded as fluid, and edge capacity is defined as the maximum amount of supply which can enter an edge per unit time. The 1-sink location problem in dynamic networks is defined as the problem which requires to find the optimal location of a sink in a given dynamic network so that all supplies are sent to the sink as quickly as possible.

In order to evaluate an evacuation, we can naturally consider two types of criteria: completion time criterion and total time criterion. In this paper we adopt the latter one (for the former one, refer to [12, 15, 17, 18]). We here define a unit as an infinitesimally small portion of supply. Given a sink location x in a dynamic network, let us consider an evacuation to x starting at time 0 and define the evacuation time of a unit to x as the time when the unit reaches x in the evacuation. The total time for the evacuation to x is defined as the sum of evacuation times over all infinitesimal units to x. Then, the minimum total time for all possible evacuations to x could be the criterion for the optimality of sink location, which we adopt. Given a dynamic network, we define the 1-median problem as the problem which requires to find a sink location minimizing the minimum total time, and the optimal solution is called the median.

Although the above criterion is reasonable for the sink location, it may not be practical since the number of evacuees in an area may vary depending on the time (e.g., in an office area in a big city, there are many people during the daytime on weekdays while there are much less people on weekends or during the night time). So, in order to take into account the uncertainty of population distribution, we consider the maximum regret for a sink location as another evaluation criterion assuming that for each vertex, we only know an interval of vertex supply. Then, the minimax regret 1-median problem in dynamic path networks is formulated as follows. A particular assignment of supply to each vertex is called a scenario. Here, for a sink location x and a scenario s, we denote the minimum total time by \(\varPhi ^s(x)\). Also let \(m^s\) denote the median under s. The problem can be understood as a 2-person Stackelberg game as follows. The first player picks a sink location x and the second player chooses a scenario s that maximizes the regret defined as \(\varPhi ^s(x)-\varPhi ^s(m^s)\). The objective of the first player is to choose x that minimizes the maximum regret.

Related to the minimax regret facility location in graph networks, especially for trees, some efficient algorithms have been presented by [2, 3, 5, 6, 7, 9]. For dynamic networks, Cheng et al. [8] first studied the minimax regret 1-center problem in path networks, which requires to find a sink location in a path that minimizes the maximum regret where the completion time criterion is adopted instead of the total time one. They presented an \(O(n \log ^2 n)\) time algorithm. Higashikawa et al. [13] improved the time bound by [8] to \(O(n \log n)\), and also Wang [19] independently achieved the same time bound of \(O(n \log n)\) with better space complexity. Very recently, Bhattacharya et al. [4] have improved the time bound to O(n). The above problem was extended to the multiple sink location version by Arumugam et al. [1]. For the minimax regret k-center problem in dynamic path networks with uniform capacity, they presented an \(O(kn^3 \log n)\) time algorithm, and this time bound was improved to \(O(kn^3)\) recently [12]. On the other hand, for dynamic tree networks, only the minimax regret 1-center problem was solved in \(O(n^2 \log ^2 n)\) time [14, 16].

This paper first considers the minimax regret median problem in dynamic networks while all the above works for dynamic networks treated center problems. In this paper, we address the minimax regret 1-median problem in dynamic path networks with uniform capacity and present an \(O(n^3)\) time algorithm.

2 Preliminaries

2.1 Dynamic Path Networks Under Uncertain Supplies

Let \(P =(V, E)\) be an undirected path with ordered vertices \(V = \{ v_1, v_2, \ldots , v_n \}\) and edges \(E = \{ e_1, e_2, \ldots , e_{n-1} \}\) where \(e_i=(v_i,v_{i+1})\) for \(i \in \{1, \ldots , n-1\}\). Let \(\mathcal {N} = (P, l, w, c, \tau )\) be a dynamic network with the underlying path graph P; l is a function that associates each edge \(e_i\) with positive length \(l_i\), w is a function that associates each vertex \(v_i\) with positive weight \(w_i\), amount of supply at \(v_i\); c is the capacity, a positive constant representing the amount of supply which can enter an edge per unit time; \(\tau \) is a positive constant representing the time required for a flow to travel a unit distance. In our model, instead of the weight function w on vertices, we are given the weight interval function W that associates each vertex \(v_i \in V\) with an interval of supply \(W_i = [w^-_i, w^+_i]\) with \(0 < w^-_i \le w^+_i\). We call such a network \(\mathcal {N} = (P, l, W, c, \tau )\) with path structures a dynamic path network under uncertain supplies.

In the following, we write \(p \in P\) to indicate that a point is a vertex of P or lies on one of the edges of P. For any point \(p \in P\), we abuse this notation by also letting p denote the distance from \(v_1\) to p. Informally we can regard P as being embedded on a real line with \(v_1 = 0\). For two points \(p, q \in P\) satisfying \(p < q\), let [pq] (resp. [pq), (pq] and (pq)) denote an interval in P consisting of all points \(x \in P\) such that \(p \le x \le q\) (resp. \(p \le x < q\), \(p < x \le q\) and \(p< x < q\)).

2.2 Scenarios

Let \(\mathcal{S}\) denote the Cartesian product of all \(W_i\) for \(i \in \{1, \ldots , n\}\):
$$\begin{aligned} \mathcal{S} = \prod _{i=1}^n W_i. \end{aligned}$$
(1)
An element of \(\mathcal{S}\), i.e., a particular assignment of weight to each vertex, is called a scenario. Given a scenario \(s \in \mathcal{S}\), we denote by \(w^s_i\) the weight of a vertex \(v_i\) under s.

2.3 Evacuation on a Dynamic Path Network

In our model, the supply is defined continuously. We define a unit as an infinitesimally small portion of supply. Given a sink location \(x \in P\) and a scenario \(s \in \mathcal{S}\), without loss of generality, an evacuation to x under s is assumed to satisfy the following assumptions. When a unit arrives at a vertex v on its way to x, it has to wait for the departure if there are already some units waiting for leaving v. All units waiting at v for leaving v are processed in the first-come first-served manner. We show the details below.

As shown in Fig. 1, let us consider a path with only three vertices, say \(v_1\), \(v_2\) and x, and two edges. Supplies of \(w_1\) and \(w_2\) are given at vertices \(v_1\) and \(v_2\), respectively, and a sink is at a vertex x, Both edges have capacity c. For a unit of supply, it takes \(\tau (v_2-v_1)\) time to cross the edge \((v_1,v_2)\) and \(\tau (x-v_2)\) time to cross the edge \((v_2,x)\). Suppose that all supplies start evacuating to x at time 0. First consider the evacuation of supply given at \(v_2\). Since the amount of supply which can enter an edge in unit time is c, the last unit of \(v_2\) leaves \(v_2\) at time \(w_2/c\) and reaches x at time \(\tau (x-v_2) + w_2/c \).
Fig. 1.

Illustration of a path with three vertices and two edges

Next consider the evacuation of supply given at \(v_1\). At time \(\tau (v_2-v_1)\), the first unit of \(v_1\) reaches \(v_2\). Then one of the following three situation occurs.

(1) No congestion: If \(\tau (v_2-v_1) > w_2/c\), there is no supply waiting at \(v_2\) when the first unit of \(v_1\) reaches \(v_2\). In this case, every unit from \(v_1\) continues through to x without waiting, say \(v_1\) gets no congestion at \(v_2\). Then the last unit of \(v_1\) reaches x at time
$$\begin{aligned} \tau (x-v_1) + \frac{w_1}{c}. \end{aligned}$$
(2)
(2) Congestion: If \(\tau (v_2-v_1) < w_2/c\), there is some supply waiting at \(v_2\) when the first unit of \(v_1\) reaches \(v_2\). In this case, every unit from \(v_1\) has to wait at \(v_2\), say \(v_1\) gets congestion at \(v_2\). Then the last unit of \(v_1\) reaches x at time
$$\begin{aligned} \tau (x-v_2) + \frac{w_1 + w_2}{c}. \end{aligned}$$
(3)
(3) Touching: If \(\tau (v_2-v_1) = w_2/c\), the last unit of \(v_2\) just leaves \(v_2\) when the first unit of \(v_1\) reaches \(v_2\), say \(v_1\) gets touching at \(v_2\). Then the last unit of \(v_1\) reaches x at time
$$\begin{aligned} \tau (x-v_1) + \frac{w_1}{c} = \tau (x-v_2) + \frac{w_1 + w_2}{c}. \end{aligned}$$
(4)
Note that if \(v_1\) gets congestion or touching at \(v_2\), we can transform the input so that supply of \(w_1\) is moved from \(v_1\) to \(v_2\), which never changes the time when each unit reaches x.

2.4 Total Evacuation Time

For a given \(x \in P\) and \(s \in \mathcal{S}\), let us consider an evacuation to x under s starting at time 0 and define the evacuation time of a unit to x under s as the time when the unit reaches x. Let \(\varPhi ^s(x)\) denote the sum of evacuation times over all infinitesimal units to x under s. Also let \(\varPhi ^s_L(x)\) (resp. \(\varPhi ^s_R(x)\)) denote the sum of evacuation times to x under s for all units on \([v_1, x)\) (resp. \((x, v_n]\)). Then, \(\varPhi ^s(x)\) is obviously the sum of \(\varPhi ^s_L(x)\) and \(\varPhi ^s_R(x)\), i.e.,
$$\begin{aligned} \varPhi ^s(x) = \varPhi ^s_L(x) + \varPhi ^s_R(x). \end{aligned}$$
(5)
Without loss of generality, we assume \(\varPhi ^s_L(v_1) = 0\) and \(\varPhi ^s_R(v_n) = 0\).
We will show the formula of \(\varPhi ^s(x)\) that has been proved in [15, 17]. Suppose that x is located in an open interval \((v_h, v_{h+1})\) with \(1 \le h \le n-1\), i.e., \(x \in e_h\). We here show only the formula of \(\varPhi ^s_L(x)\) (the case of \(\varPhi ^s_R(x)\) is symmetric). First, let us define the vertex indices \(\rho _1, \ldots , \rho _k\) inductively aswhere \(\rho _0 = 0\). Obviously \(\rho _k = h\) holds. We then call a set of all units on \([v_{\rho _{i-1}+1},v_{\rho _i}]\) the i-th left cluster for x (the i-th right cluster for x is symmetrically defined), and a vertex \(v_{\rho _i}\) the head of i-th cluster (see Fig. 2). Also, for \(i \in \{1, \ldots , k\}\), we define \(\sigma _i\) as \(\sigma _i = \sum _{l =\rho _{i-1}+1}^{\rho _i} w^s_l\), which is called the weight of i-th cluster.
Fig. 2.

Illustration of left clusters for x where i-th cluster is headed by a vertex \(v_{\rho _i}\)

The definition of (6) can be interpreted as follows. Looking at the i-th left cluster, we find that \(v_{\rho _i-1}\) gets congestion or touching at \(v_{\rho _i}\). Therefore transforming the input so that supply of \(w_{\rho _i-1}\) is moved from \(v_{\rho _i-1}\) to \(v_{\rho _i}\) and \(v_{\rho _i-1}\) is removed never changes the evacuation time of each unit to x, which implies that \(\varPhi ^s_L(x)\) is never changed. After that, \(v_{\rho _i-2}\) also gets congestion or touching at \(v_{\rho _i}\), thus \(w_{\rho _i-2}\) can be moved from \(v_{\rho _i-2}\) to \(v_{\rho _i}\) and \(v_{\rho _i-2}\) can be removed without changing \(\varPhi ^s_L(x)\). In the similar manner, even if we transform the input so that all supplies on \([v_{\rho _{i-1}+1},v_{\rho _i})\) are moved to \(v_{\rho _i}\) for every \(i \in \{1, \ldots , k\}\), \(\varPhi ^s_L(x)\) is never changed. In the following, we call such a transformation the left-clustering for x (the right-clustering for x is symmetrically defined). Note that after left-clustering for x, heads of left clusters only remain in the left side of x and \(v_{\rho _{i-1}}\) gets no congestion at \(v_{\rho _i}\) for any \(i \in \{2, \ldots , k\}\), that is,
$$\begin{aligned} \tau (v_{\rho _i}-v_{\rho _{i-1}}) > \frac{\sigma _i}{c}. \end{aligned}$$
(7)
In other words, the first unit of each head can reach x without any stop on its way to x. Thus, as in [15, 17], \(\varPhi ^s_L(x)\) can be written as
$$\begin{aligned} \varPhi ^s_L(x)= & {} \sum _{i=1}^k \left( \sigma _i\tau (x-v_{\rho _i}) + \frac{{\sigma _i}^2}{2c} \right) . \end{aligned}$$
(8)

2.5 Minimax Regret Formulation

For a scenario \(s \in \mathcal{S}\), let \(m^s\) be a point in P that minimizes \(\varPhi ^s(x)\) over \(x \in P\), called the median under s. We now define the regret for x under s as
$$\begin{aligned} R^s(x)= & {} \varPhi ^s(x) - \varPhi ^s(m^s). \end{aligned}$$
(9)
Moreover, we also define the maximum regret for x as
$$\begin{aligned} R_\mathrm{max}(x)= & {} \max \{ R^s(x) \mid s \in \mathcal {S} \}. \end{aligned}$$
(10)
If \(\hat{s} = \text {argmax} \{ R^s(x) \mid s \in \mathcal {S} \}\), we call \(\hat{s}\) the worst case scenario for x. The goal is to find a point \(x^* \in P\), called the minimax regret median, that minimizes \(R_\mathrm{max}(x)\) over \(x \in P\), i.e., the objective is to
$$\begin{aligned} \mathrm{minimize} \ \{ R_\mathrm{max}(x) \mid x \in P\}. \end{aligned}$$
(11)

2.6 Known Properties for the Fixed Scenario Case

We here show some properties on the 1-median problem in a dynamic path network \(\mathcal {N} = (P = (V, E), l, w^s, c, \tau )\) when a scenario \(s \in \mathcal{S}\) is given, which were basically presented in [15, 17]. We first introduce the following two lemmas.

Lemma 1

[15, 17]. For a scenario \(s \in \mathcal{S}\), \(m^s\) is at a vertex in V.

Lemma 2

[15, 17]. For a scenario \(s \in \mathcal{S}\), all \(\varPhi ^s(v_i)\) over \(i \in \{1, \ldots , n\}\) can be computed in O(n) time in total.

We then can see a corollary of these lemmas.

Corollary 1

[15, 17]. For a scenario \(s \in \mathcal{S}\), \(m^s\) and \(\varPhi ^s(m^s)\) can be computed in O(n) time.

Now let us look at the formula of (8). Even if x is moving on an edge \(e_i\) (not including endpoints \(v_i\) and \(v_{i+1}\)), the formation of left clusters for x does not change over \(x \in e_i\). Therefore, \(\varPhi ^s_L(x)\) is a linear function of \(x \in e_i\), and symmetrically, \(\varPhi ^s_R(x)\) is also a linear function. For \(i \in \{1, \ldots , n-1\}\), letting \(a^s_i\) and \(b^s_i\) be the values such that for \(x \in e_i\),
$$\begin{aligned} \varPhi ^s(x) = a^s_ix + b^s_i, \end{aligned}$$
(12)
we can derive the following lemma from [15, 17].

Lemma 3

For a scenario \(s \in \mathcal{S}\), all \(a^s_i\) and \(b^s_i\) over \(i \in \{1, \ldots , n-1\}\) can be computed in O(n) time in total.

3 Properties of Worst Case Scenarios

In this section, we show the important properties which worst case scenarios have. In our problem, a main difficulty lies in evaluating \(R^s(x)\) over \(s \in \mathcal{S}\) to compute \(R_\mathrm{max}(x)\) even for a fixed x since the size of \(\mathcal{S}\) is infinite. We thus aim to find a scenario set with a finite size (in particular, a polynomial size) which includes a worst case scenario for any \(x \in P\). In order to do this, we introduce a new concept, the gap between two points \(x, y \in P\) under a scenario \(s \in \mathcal{S}\), defined by
$$\begin{aligned} \varGamma ^s(x, y) = \varPhi ^s(x) - \varPhi ^s(y). \end{aligned}$$
(13)
By Lemma 1 and the definition of (9), we have
$$\begin{aligned} R^s(x) = \max \{ \varGamma ^s(x, y) \mid y \in V \}, \end{aligned}$$
(14)
and by (10) and (14),
$$\begin{aligned} R_\mathrm{max}(x)= & {} \max \{ \max \{\varGamma ^s(x, y) \mid y \in V \} \mid s \in \mathcal{S} \} \nonumber \\= & {} \max \{ \max \{\varGamma ^s(x, y) \mid s \in \mathcal{S} \} \mid y \in V \}. \end{aligned}$$
(15)
From (15), if we can compute \(\max \{\varGamma ^s(x, y) \mid s \in \mathcal{S} \}\) for a fixed pair \(\langle x, y \rangle \in P \times V\), \(R_\mathrm{max}(x)\) can also be computed by repeating the same maximization over \(y \in V\). We call a scenario that maximizes \(\varGamma ^s(x, y)\) for a fixed \(\langle x, y \rangle \) a worst case scenario for \(\langle x, y \rangle \). In the following, we show a scenario set of size O(n) that includes a worst case scenario for a fixed \(\langle x, y \rangle \), which implies a scenario set of size \(O(n^2)\) that includes a worst case scenario for a fixed x.

3.1 Bipartite Scenario

We first introduce the concept of the bipartite scenario, which was originally introduced as the dominant scenario in [8, 13]. Let us consider a scenario \(s \in \mathcal{S}\). A scenario s is said to be left-bipartite (resp. right-bipartite) if \(w^s_j = w^+_j\) (resp. \(w^-_j\)) over \(j \in \{1, \ldots , i\}\) and \(w^s_j = w^-_j\) (resp. \(w^+_j\)) over \(j \in \{i+1, \ldots , n\}\) for some \(i \in \{1, \ldots , n-1\}\). Obviously the number of such scenarios is O(n). The authors of [8, 13] treated the minimax regret 1-center problem in dynamic path networks, which requires to find a sink location in a path that minimizes the maximum regret similarly defined as (10) where the completion time criterion is adopted instead of the total time one. They proved that for any point in an input path, at least one worst case scenario is left-bipartite or right-bipartite.

3.2 Pseudo-bipartite Scenario

We here introduce the concept of the pseudo-bipartite scenario. A scenario s is said to be left-pseudo-bipartite (resp. right-pseudo-bipartite) if \(w^s_j = w^+_j\) (resp. \(w^-_j\)) over \(j \in \{1, \ldots , i-1\}\) and \(w^s_j = w^-_j\) (resp. \(w^+_j\)) over \(j \in \{i+1, \ldots , n\}\) for some \(i \in \{2, \ldots , n-1\}\). In this definition, we do not care about the weight of a vertex \(v_i\), called the intermediate vertex. Given a pseudo-bipartite scenario with the intermediate vertex \(v_i\), we call intervals \([v_1, v_i)\) and \((v_i, v_n]\) the left part and the right part, respectively. Let \(\mathcal{S}_L\) (resp. \(\mathcal{S}_R\)) denote a set of all left-pseudo-bipartite scenarios (resp. right-pseudo-bipartite scenarios). We then prove the following lemma (the proof is omitted).

Lemma 4

Given a pair \(\langle x, y \rangle \in P \times V\) satisfying \(y < x\) (resp. \(x < y\)), there exists a worst case scenario for \(\langle x, y \rangle \) belonging to \(\mathcal{S}_L\) (resp. \(\mathcal{S}_R\)) such that x is in the right part (resp. the left part), and y is in the left part (resp. the right part) or at the intermediate vertex.

3.3 Critical Pseudo-bipartite Scenario

By Lemma 4, we studied the property of a worst case scenario for a fixed \(\langle x, y \rangle \in P \times V\), however the sizes of \(\mathcal{S}_L\) and \(\mathcal{S}_R\) are still infinite since the weight of the intermediate vertex in a pseudo-bipartite scenario is not fixed. In the rest of this section, we focus on the weight of the intermediate vertex in a pseudo-bipartite scenario which is worst for \(\langle x, y \rangle \).

Given a pair \(\langle x, y \rangle \in P \times V\) satisfying \(y < x\), let us consider a scenario \(s \in \mathcal{S}_L\) such that the intermediate vertex is \(v_i\) and \(y \le v_i < x\). Suppose that the weight of \(v_i\) is set as the minimum, i.e., \(w^s_i=w^-_i\). Performing the right-clustering for y under s (mentioned in Sect. 2.4), we will get right clusters for y such that the head of l-th cluster is \(\rho _l\) for \(l \in \{1, \ldots , k\}\) satisfying \(\rho _k< \ldots < \rho _1\), and the weight of l-th cluster is \(\sigma _l\). Suppose that the intermediate vertex \(v_i\) belongs to the j-th cluster.

Let us increase the weight of \(v_i\), little by little, without changing the weight of any other vertex. Let s(w) be a scenario in \(\mathcal{S}_L\) such that the intermediate vertex is \(v_i\) whose weight is \(w \in [w^-_i, w^+_i]\). Note that \(v_{\rho _{j-1}}\) gets no congestion at \(v_{\rho _j}\) under s, i.e., \(s(w^-_i)\). When the weight of \(v_i\) reaches some value \(\omega \), \(v_{\rho _{j-1}}\) may get touching at \(v_{\rho _j}\). If so, the following equality holds:
$$\begin{aligned} \tau (v_{\rho _{j-1}}-v_{\rho _j}) = \frac{\sigma _j+(\omega -w^-_i)}{c}. \end{aligned}$$
(16)
Here \(\sigma _j+(\omega -w^-_i)\) corresponds to the weight of j-th cluster under \(s(\omega )\). At that moment, by the definition of (6), the \((j-1)\)-th cluster is immediately merged to the j-th cluster. We then call \(s(\omega )\) a critical left-pseudo-bipartite scenario for y. Note that such critical scenarios may occur several times while increasing the weight of \(v_i\) from \(w^-_i\) to \(w^+_i\). Also, \(s(w^-_i)\) and \(s(w^+_i)\) are assumed to be critical left-pseudo-bipartite scenarios for y even if any merge does not occur at those moments. Critical right-pseudo-bipartite scenarios for y are symmetrically defined. Let \(\mathcal{S}_y\) denote a set of all critical left-pseudo-bipartite scenarios and critical right-pseudo-bipartite scenarios for y, and \(\mathcal{S}^* = \bigcup _{y \in V}\mathcal{S}_y\). We will show two lemmas (the proof of Lemma 5 is omitted).

Lemma 5

Given a pair \(\langle x, y \rangle \in P \times V\), there exists a worst case scenario for \(\langle x, y \rangle \) belonging to \(\mathcal{S}_y\).

Lemma 6

For a vertex \(y \in V\), the size of \(\mathcal{S}_y\) is O(n), and all scenarios in \(\mathcal{S}_y\) can be computed in O(n) time.

Proof

We first prove that the number of critical left-pseudo-bipartite scenarios for y is O(n) (the case of critical right-pseudo-bipartite scenarios is symmetric). Suppose that \(y = v_j\). For \(i \in \{j+1, \ldots , n\}\) and \(w \in [w^-_i, w^+_i]\), let s(iw) be a scenario in \(\mathcal{S}_L\) such that the intermediate vertex is \(v_i\) whose weight is w. Here, let us define the total ordering between two scenarios s(iw) and \(s(i', w')\): \(s(i, w) \prec s(i', w')\) holds if and only if (a) \(i < i'\) or (b) \(i = i'\) and \(w < w'\). For \(i \in \{j+1, \ldots , n\}\), we also define \(p_i\) and \(q_i\) as follows. Let \(p_i\) be the number of critical left-pseudo-bipartite scenarios for y such that the intermediate vertex is \(v_i\) (including \(s(i, w^-_i)\) and \(s(i, w^+_i)\)). Let \(q_i\) be, under a scenario \(s(i, w^+_i)\), the number of right clusters for y that follow a cluster including \(v_i\).

Let us consider computing all critical left-pseudo-bipartite scenarios for y in ascending order, and suppose that the weight of \(v_i\) now increases from \(w^-_i\) to \(w^+_i\). Here let c be the right cluster for y including \(v_i\). While the weight increases, since \(p_i-2\) critical left-pseudo-bipartite scenarios for y occur (except \(s(i, w^-_i)\) and \(s(i, w^+_i)\)), and at each such scenario, one or more clusters are merged into c, at least \(p_i-2\) clusters are merged into c in total. We thus have \(q_i \le q_{i-1} - (p_i-2)\) for \(i \in \{j+1, \ldots , n\}\), i.e.,
$$\begin{aligned} p_i \le q_{i-1} - q_i + 2. \end{aligned}$$
(17)
Note that the total number of critical left-pseudo-bipartite scenarios for y is exactly \(1+\sum _{i=j+1}^n (p_i-1)\). By (17), we have
$$\begin{aligned} \sum _{i=j+1}^n (p_i-1) \le \sum _{i=j+1}^n (q_{i-1} - q_i + 1) = q_j - q_n + (n-j), \end{aligned}$$
(18)
which is O(n) since \(q_j \le n-j\) and \(q_n = 0\).

In the rest of the proof, we show that all critical left-pseudo-bipartite scenarios for \(y = v_j\) can be computed in O(n) time. Recall that all critical left-pseudo-bipartite scenarios for y are computed in ascending order. The algorithm first gets \(s(j+1, w^-_{j+1})\), and performs the right clustering for y under \(s(j+1, w^-_{j+1})\). As claimed in [15, 17], it is easy to see that the right clustering for a fixed y can be obtained in O(n) time.

Suppose that for particular \(i \in \{j+1, \ldots , n\}\) and \(\omega \in [w^-_i, w^+_i]\), \(s(i, \omega )\) is critical for y, and the algorithm has already obtained \(s(i, \omega )\) and the right clusters for y. We then show how to compute the subsequent critical left-pseudo-bipartite scenario. Let \(c_y\) be a right cluster for y including \(v_i\) and \(c'_y\) be a right cluster for y immediately following \(c_y\). Also, let \(\rho _y\) (resp. \(\rho '_y\)) be the index of a vertex that corresponds to the head of \(c_y\) (resp. \(c'_y\)), and \(\sigma _y\) (resp. \(\sigma '_y\)) be the weight of \(c_y\) (resp. \(c'_y\)).

There are two cases: [Case 1] \(\omega < w^+_i\); [Case 2] \(\omega = w^+_i\). For Case 2, we notice that \(s(i+1, w^-_{i+1})\) is equivalent to \(s(i, w^+_i)\). Therefore, this case immediately results in Case 1 by letting i be \(i+1\) and \(\omega \) be \(w^-_{i+1}\) (although a right cluster for y including \(v_{i+1}\) may be \(c'_y\), not \(c_y\)). We thus consider only Case 1 in the following.

The algorithm will compute the subsequent critical left-pseudo-bipartite scenario \(s(i, \omega ')\) where \(\omega '\) satisfies \(\omega < \omega ' \le w^+_i\). In order to compute \(\omega '\), the algorithm test if there exists \(w \in (\omega , w^+_i]\) such that
$$\begin{aligned} \tau (v_{\rho '_y}-v_{\rho _y})=\frac{\sigma _y + (w - \omega )}{c}, \end{aligned}$$
(19)
which is similar to (16). If yes, for such w, the algorithm returns \(\omega '=w\) and updates the right clusters for y by merging \(c'_y\) into \(c_y\). Otherwise, \(\omega '=w^+_i\) is just returned. Such testing and updating are done in O(1) time. Since the number of critical left-pseudo-bipartite scenarios for y is O(n) and each of those is computed in O(1) time, we completes the proof.    \(\square \)

By (15), we have a corollary of Lemma 5.

Corollary 2

Given a point \(x \in P\), there exists a worst case scenario for x belonging to \(\mathcal{S}^*\).

Also, a corollary of Lemma 6 immediately follows.

Corollary 3

The size of \(\mathcal{S}^*\) is \(O(n^2)\), and all scenarios in \(\mathcal{S}^*\) can be computed in \(O(n^2)\) time.

4 Algorithm

In this section, we show an algorithm that computes the minimax regret median, which minimizes \(R_\mathrm{max}(x)\) over \(x \in P\). The algorithm basically consists of two phases:

[Phase 1] Compute \(R_\mathrm{max}(v_i)\) over \(i \in \{1, \ldots , n\}\), and

[Phase 2] Compute \(\min \{R_\mathrm{max}(x) \mid x \in e_i\}\) over \(i \in \{1, \ldots , n-1\}\).

After these, the algorithm evaluates all the \(2n-1\) values obtained and finds the minimax regret median in O(n) time.

By Corollary 2, we only have to consider scenarios in \(\mathcal{S}^*\) to compute \(R_\mathrm{max}(x)\) for any \(x \in P\). Therefore, the algorithm computes all scenarios in \(\mathcal{S}^*\) in advance, which can be done in \(O(n^2)\) time by Corollary 3. Subsequently, it computes all the values \(\varPhi ^s(m^s)\) over \(s \in \mathcal{S}^*\) for Phase 1 and Phase 2. By Corollaries 1 and 3, this can be done in \(O(n^3)\) time in total.

First let us see details in Phase 1. For a fixed scenario \(s \in \mathcal{S}^*\), since all \(\varPhi ^s(v_i)\) over \(i \in \{1, \ldots , n\}\) can be computed in O(n) time by Lemma 2 and \(\varPhi ^s(m^s)\) has already been computed before Phase 1, all \(R^s(v_i)\) over \(i \in \{1, \ldots , n\}\) can also be computed in O(n) time (refer to (9)). After the algorithm obtains \(R^s(v_1), \ldots , R^s(v_n)\) over \(s \in \mathcal{S}^*\) in \(O(n^3)\) time, for each \(i \in \{1, \ldots , n\}\), \(R^s(v_i)\) over \(s \in \mathcal{S}^*\) are evaluated to obtain \(R_\mathrm{max}(v_i)\). Thus, it is easy to see that Phase 1 can be done in \(O(n^3)\) time in total.

We next focus on Phase 2. As mentioned at the end of Sect. 2.6, for a fixed scenario \(s \in \mathcal{S}^*\), \(\varPhi ^s(x)\) is a linear function of \(x \in e_i\) for each \(i \in \{1, \ldots , n-1\}\) (not including \(v_i\) and \(v_{i+1}\)). Therefore, \(R^s(x)\) is also linear for \(x \in e_i\) for each i. Referring to (12), a function \(R^s(x)\) on an edge \(e_i\) is written as
$$\begin{aligned} R^s(x) = a^s_ix + b^s_i - \varPhi ^s(m^s). \end{aligned}$$
(20)
Recall that \(\varPhi ^s(m^s)\) has already been computed. Then, by Lemma 3, \(R^s(x)\) on \(e_i\) over \(i \in \{1, \ldots , n-1\}\) can be computed in O(n) time. After the algorithm does the same computation over \(s \in \mathcal{S}^*\) in \(O(n^3)\) time, on each edge \(e_i\), we have \(O(n^2)\) linear functions \(R^s(x)\) over \(s \in \mathcal{S}^*\). By the definition of (10), \(\min \{R_\mathrm{max}(x) \mid x \in e_i\}\) can be obtained by solving a linear programming problem in two dimensions with \(O(n^2)\) constraints, i.e.,This problem can be solved in \(O(n^2)\) time by [10]. Repeating the same operations over \(i \in \{1, \ldots , n-1\}\), Phase 2 is completed in \(O(n^3)\) time.

Theorem 1

The minimax regret 1-median problem in dynamic path networks with uniform capacity can be solved in \(O(n^3)\) time.

5 Conclusion

In this paper, we address the minimax regret 1-median problem in dynamic path networks with uniform capacity and present an \(O(n^3)\) time algorithm. Additionally, this is the first work that treats the minimax regret facility location problem in dynamic networks where the total time criterion is adopted. Two natural questions immediately follow. The first one is whether we can reduce the number of scenarios to be considered. The other one is whether we can extend the problem to the k-median version with \(k \ge 2\), or the problem in more general networks.

References

  1. 1.
    Arumugam, G.P., Augustine, J., Golin, M.J., Srikanthan, P.: A polynomial time algorithm for minimax-regret evacuation on a dynamic path. CoRR abs/1404.5448. arXiv:1404.5448
  2. 2.
    Averbakh, I., Berman, O.: Algorithms for the robust \(1\)-center problem on a tree. Eur. J. Oper. Res. 123(2), 292–302 (2000)MathSciNetCrossRefMATHGoogle Scholar
  3. 3.
    Bhattacharya, B., Kameda, T.: A linear time algorithm for computing minmax regret 1-median on a tree. In: Gudmundsson, J., Mestre, J., Viglas, T. (eds.) COCOON 2012. LNCS, vol. 7434, pp. 1–12. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  4. 4.
    Bhattacharya, B., Kameda, T.: Improved algorithms for computing minmax regret 1-sink and 2-sink on path network. In: Zhang, Z., Wu, L., Xu, W., Du, D.-Z. (eds.) COCOA 2014. LNCS, vol. 8881, pp. 146–160. Springer, Heidelberg (2014)Google Scholar
  5. 5.
    Bhattacharya, B., Kameda, T., Song, Z.: A linear time algorithm for computing minmax regret \(1\)-median on a tree network. Algorithmica 62, 1–20 (2013)MathSciNetMATHGoogle Scholar
  6. 6.
    Brodal, G.S., Georgiadis, L., Katriel, I.: An \(O(n \log n)\) version of the Averbakh-Berman algorithm for the robust median of a tree. Oper. Res. Lett. 36(1), 14–18 (2008)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Chen, B., Lin, C.: Minmax-regret robust 1-median location on a tree. Networks 31(2), 93–103 (1998)MathSciNetCrossRefMATHGoogle Scholar
  8. 8.
    Cheng, S.-W., Higashikawa, Y., Katoh, N., Ni, G., Su, B., Xu, Y.: Minimax regret 1-sink location problems in dynamic path networks. In: Chan, T.-H.H., Lau, L.C., Trevisan, L. (eds.) TAMC 2013. LNCS, vol. 7876, pp. 121–132. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  9. 9.
    Conde, E.: A note on the minmax regret centdian location on trees. Oper. Res. Lett. 36(2), 271–275 (2008)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Dyer, M.E.: Linear time algorithms for two- and three-variable linear programs. SIAM J. Comput. 13(1), 31–45 (1984)MathSciNetCrossRefMATHGoogle Scholar
  11. 11.
    Ford Jr., L.R., Fulkerson, D.R.: Constructing maximal dynamic flows from static flows. Oper. Res. 6, 419–433 (1958)MathSciNetCrossRefGoogle Scholar
  12. 12.
    Higashikawa, Y.: Studies on the Space Exploration and the Sink Location under Incomplete Information towards Applications to Evacuation Planning. Doctoral Dissertation, Kyoto University (2014)Google Scholar
  13. 13.
    Higashikawa, Y., Augustine, J., Cheng, S.W., Katoh, N., Ni, G., Su, B., Xu, Y.: Minimax regret 1-sink location problem in dynamic path networks. Theor. Comput. Sci. 588, 24–36 (2015). doi:10.1016/j.tcs.2014.02.010 MathSciNetCrossRefMATHGoogle Scholar
  14. 14.
    Higashikawa, Y., Golin, M.J., Katoh, N.: Minimax regret sink location problem in dynamic tree networks with uniform capacity. In: Pal, S.P., Sadakane, K. (eds.) WALCOM 2014. LNCS, vol. 8344, pp. 125–137. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  15. 15.
    Higashikawa, Y., Golin, M.J., Katoh, N.: Multiple sink location problems in dynamic path networks. In: Gu, Q., Hell, P., Yang, B. (eds.) AAIM 2014. LNCS, vol. 8546, pp. 149–161. Springer, Heidelberg (2014)Google Scholar
  16. 16.
    Higashikawa, Y., Golin, M.J., Katoh, N.: Minimax regret sink location problem in dynamic tree networks with uniform capacity. J. Graph Algorithms Appl. 18(4), 539–555 (2014)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Higashikawa, Y., Golin, M.J., Katoh, N.: Multiple sink location problems in dynamic path networks. Theor. Comput. Sci. 607(Part 1), 2–15 (2015). doi:10.1016/j.tcs.2015.05.053 MathSciNetCrossRefMATHGoogle Scholar
  18. 18.
    Mamada, S., Uno, T., Makino, K., Fujishige, S.: An \(O(n \log ^2 n)\) algorithm for the optimal sink location problem in dynamic tree networks. Discrete Appl. Math. 154(16), 2387–2401 (2006)MathSciNetCrossRefMATHGoogle Scholar
  19. 19.
    Wang, H.: Minmax regret 1-facility location on uncertain path networks. In: Cai, L., Cheng, S.-W., Lam, T.-W. (eds.) Algorithms and Computation. LNCS, vol. 8283, pp. 733–743. Springer, Heidelberg (2013)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Yuya Higashikawa
    • 1
    • 6
  • Siu-Wing Cheng
    • 2
  • Tsunehiko Kameda
    • 3
  • Naoki Katoh
    • 4
    • 6
  • Shun Saburi
    • 5
  1. 1.Department of Information and System EngineeringChuo UniversityTokyoJapan
  2. 2.Department of Computer Science and EngineeringThe Hong Kong University of Science and TechnologyHong KongChina
  3. 3.School of Computing ScienceSimon Fraser UniversityBurnabyCanada
  4. 4.Department of InformaticsKwansei Gakuin UniversitySandaJapan
  5. 5.Department of Architecture and Architectural EngineeringKyoto UniversityKyotoJapan
  6. 6.CREST, Japan Science and Technology Agency (JST)KawaguchiJapan

Personalised recommendations