Keywords

1 Introduction

Search problems are concerned with the exploration of a domain, aiming to identify the location of a hidden object. More particularly, in evacuation-type problems where the domain is the unit disk, introduced recently by Czyzowicz et al. in [16], a group of mobile agents collectively search for a hidden item (the exit) placed on the perimeter of the disk, attempting to expedite the time it takes for the last agent to evacuate, i.e. reach the exit. As it was the case in [16], as well as in a series of follow-up improvements and problem variations, the main objective was the design of evacuation algorithms that minimize the worst case performance. In contrast, real-life search-and-rescue operations, in which current problems find applications, are mostly concerned with good average performance. Keeping also in mind that, in realistic search tasks, mobile agents do not have unbounded resources and at the same time it is imperative that the search terminates successfully with probability 1, one is motivated to study average case - worst case trade-offs for evacuation search problems.

In this direction, we initiate the study of the traditional evacuation problem first introduced in [16] from the perspective of average case analysis, which in our case is equivalent to designing efficient randomized algorithms. More specifically, we introduce problem \(_2{\textsc {Evac}}_{F2F}^w\) which, at a high level, asks for efficient evacuation algorithms that perform well on average, given that their worst case performance does not exceed w (which can be thought as the maximum time robots can operate, e.g. due to energy restrictions). The problem seems particularly challenging given that the worst case performance analysis of all known evacuation algorithms require tedious analysis, tailored to robots’ trajectories, and followed by intense, computer-assisted calculations, which are always numerical. Our results pertain to new families of evacuation algorithms, whose worst case performance analysis can be done rigorously, and whose average case analysis requires again intense computer-assisted calculations, achieving average case - worst case trade-offs for a wide spectrum of values. Our computer-assisted calculations rely on a novel theoretical and unified approach to compute the cost of any evacuation algorithm and for any placement of the hidden item without relying on tedious analysis specific to robots’ trajectories. Equipped with these techniques, we also verify, somehow surprisingly, that the best evacuation algorithms known prior to this work, designed to perform well in the worst case, do not perform well for \(_2{\textsc {Evac}}_{F2F}^w\), adding this way to the motivation of our problem.

1.1 Related Work

In search problems, mobile agents, commonly referred as robots, aim to locate efficiently a hidden item placed in some geometric domain. Numerous search-types problems have been introduced and studied since the 60’s, when two seminal papers on probabilistic search, [8] and [9], were concerned with minimizing the expected time to locate the item. The number of search-type variants, along with the difficulty of the underlying mathematical problems and the elegance of many results soon gave rise to what is known nowadays as Search Theory. Many of the variants have been classified in surveys, e.g. [10, 23], while a number of books provide a comprehensive study for similar problems, e.g. see [1, 4, 35] and the most recent [5].

Search-type problems have also been studied under the perspective of exploration in [2, 3, 22, 29] by a single robot, and in [12, 36, 37] by multiple robots. Terrain mapping has been the main search task even in problems where exploration is not the primary objective, e.g. [30, 32, 34]. Numerous other search-type problems have been introduced and classified as hide-and-seek and pursuit-evasion games, e.g. see [14, 25, 31, 33]. Overall the list of search-type problems is enormous, and having given a representative list above, in what follows we refer only to the most relevant ones.

The perception of a search-type problem as an evacuation problem, from a theoretical perspective, appeared almost a decade ago, e.g. in [7, 24]. The problem we study here is a direct follow-up to the evacuation problem \(_2{\textsc {Evac}}_{F2F}\) (a search-type problem) first introduced in [16], which included many variants based on the number of robots and the communication model between them. In the variant \(_2{\textsc {Evac}}_{F2F}\) which is relevant to our work, two robots start from the center of the unit disk, while an exit is hidden somewhere on the perimeter. The robots move at speed 1, their perception of their environment is restricted to their location and they can exchange information only by meeting. The goal is to minimize the worst case evacuation time, i.e. the time it takes the last robot to reach the exit, over all exit placements. The upper bound of 5.73906 in [16] was later improved to 5.628 in [21], and further to the currently best known 5.625 in [11], while the best lower bound known for the problem is 5.255 due to [21].

Since the introduction of \(_2{\textsc {Evac}}_{F2F}\) in [16], a number of variants emerged, focusing on different geometric domains, different number of robots and robots’ specifications, different communication models etc. Examples include evacuation from the disk with more than 1 exits in the wireless model [15], evacuation of a group of robots on a line [13] (generalization of the celebrated Cow-Path problem [6]), evacuation in the presence of faulty robots in a line [20] and in a disk [17], evacuation with advice [28] while more recently evacuation with combinatorial requirements on the robots that need to evacuate, e.g. [18, 19, 26, 27].

1.2 Outline of Our Results and Paper Organization

We initiate the study of evacuating 2 robots from the disk in the face-to-face model from an average case complexity perspective. In particular we introduce problem \(_2{\textsc {Evac}}_{F2F}^w\) in which one tries to minimize the expected performance of randomized evacuation algorithms, subject to that the worst case performance does not exceed w. The problem is particularly challenging given that existing positive results, from a worst case complexity perspective, rely on tedious theoretical analysis tailored to algorithmic solutions, and supported by intense computer-assisted calculations. One of our main contributions is a unified and simple approach to quantify the performance of any evacuation algorithm and for any input. Equipped with this technique, we first verify that none of the previously known evacuation algorithms has good average case performance. Then, we introduce families of evacuation algorithms that have competitive average case performance, given that their worst case performance does not exceed w, for a wide range of w’s. Our results rely on rigorous and technical worst case performance analysis for the newly proposed algorithms. Building upon our new technique for efficiently evaluating the cost of evacuation algorithms for any input, we are able to numerically compute the average case performance of our algorithms, as well as to quantify formally the induced average case -worst case trade-offs.

In Sect. 2.1 we formally define \(_2{\textsc {Evac}}_{F2F}^w\) and we give a high-level outline of the results we establish. Section 2.2 contains one of our main contributions, which is a systematic process to compute the performance of any evacuation algorithm, given that robots’ trajectories have convenient representations, described in Sect. 2.3. In Sect. 3 we analyze two benchmark algorithms for \(_2{\textsc {Evac}}_{F2F}^w\), as well as we motivate further the problem for certain values of w, among others showing, somehow surprisingly, that none of the previously proposed evacuation algorithms is efficient for our problem. Section 4 describes our main contributions in the form of new families of evacuation algorithms. Then, in Sect. 5 we perform rigorous worst case analysis for all new algorithms and in Sect. 6 we perform average case analysis, using our results from Sect. 2.2 along with heavy computer-assisted calculations. In the same section, we also quantify formally all our results for \(_2{\textsc {Evac}}_{F2F}^w\). Finally, in Sect. 7 we conclude with some open problems. All omitted proofs of statements in the main body of the paper can be found in the Appendix A.

2 Preliminaries

2.1 Problem Definition and Main Results

In \(_2{\textsc {Evac}}_{F2F}\), two searchers (robots) start from the center of the unit disk. Moving at maximum speed 1, the two robots can move anywhere on the plane. Somewhere on the perimeter of the disk there is a hidden object (exit) that can be located by any of the robots only if the robot is co-located with the exit.

The two robots do not see each other from distance, neither can they exchange messages unless they meet (face-to-face model), but they can agree in advance on each other’s trajectories. A feasible evacuation algorithm is determined by the trajectories of the robots, in which eventually both robots reach the exit. For simplicity, we also require, w.l.o.g. that eventually any robot stays idle. For convenience, we think that the center of the unit disk lies at the origin (0, 0) of a Cartesian system, and we denote by \(\mathrm {cycle}(x)\) the point \((\cos \left( {x}\right) , \sin \left( {x}\right) )\), which will be referred to as an instance of \(_2{\textsc {Evac}}_{F2F}\) when the exit is placed at \(\mathrm {cycle}(x)\). Given instance \(\mathrm {cycle}(x)\), we define the evacuation time \(\mathcal {C}(x)\) of the feasible evacuation algorithm as the time it takes the last robot to reach the exit.

In this work we are concerned with determining tradeoffs between the worst case and the average case performance (of uniform placements of the exit) of evacuation algorithms for \(_2{\textsc {Evac}}_{F2F}\). More specifically, we say that an evacuation algorithm \(\mathscr {A}\) with evacuation cost \(\mathcal {C}(x)\) on instance \(\mathrm {cycle}(x)\) is (aw)-efficient if

$$\begin{aligned}&\mathrm {Avg}\left( \mathscr {A}\right) := \mathrm {E}_{x\in [0,2\pi )}[\mathcal {C}(x)] \le a, \\&\mathrm {Wrs}\left( \mathscr {A}\right) := \sup _{x\in [0,2\pi )} \{ \mathcal {C}(x) \} \le w. \end{aligned}$$

where the expectation is with respect to the uniform distribution over \([0,2\pi )\). Special to our problem is that \(\mathrm {Avg}\left( \mathscr {A}\right) \) can also be interpreted as the expected performance of a randomized algorithm based on \(\mathscr {A}\). Indeed, consider an algorithm which first performs a random rotation of the disk around the origin of angle \(\theta \), where \(\theta \) is chosen uniformly at random from \([0,2\pi )\), and then simulates \(\mathscr {A}\). This random step is equivalent to choosing a deployment point uniformly at random on the disk. Due to the symmetry of the domain, it is irrelevant where the adversary will place the unique exit, and hence the expected performance of this randomized algorithm equals \(\mathrm {Avg}\left( \mathscr {A}\right) \).

For algorithms \(\mathscr {A}(p)\) parameterized by parameter(s) p, the pair \(\left( \mathrm {Avg}\left( \mathscr {A}(p)\right) ,\mathrm {Wrs}\left( \mathscr {A}(p)\right) \right) \) will correspond to a subset of \(\mathbb {R}^2\) (and a curve if p is only one parameter), that we will refer to as the Efficient Frontier. We also adopt an optimization perspective of the problem, and we introduce the following optimization problem \(_2{\textsc {Evac}}_{F2F}^w\) on parameter w:

figure a

Due to an analysis we perform later, \(_2{\textsc {Evac}}_{F2F}^w\) is interesting as long as \(w_1\le w\le w_2\). At a high level, values \(w_1,w_2\) above are obtained from two benchmark algorithms, \(\mathscr {B}_{1}, \mathscr {B}_{2}\), where \(\mathrm {Wrs}\left( \mathscr {B}_{1}\right) =w_1\approx 5.739, \mathrm {Avg}\left( \mathscr {B}_{1}\right) =a_1\approx 5.1172, \mathrm {Wrs}\left( \mathscr {B}_{2}\right) =w_2\approx 7.283, \mathrm {Avg}\left( \mathscr {B}_{1}\right) =a_2 \approx 7.28319\), hence \(\mathscr {B}_{1}\) being efficient in worst case and inefficient in average case, while \(\mathscr {B}_{2}\) being efficient in average case and inefficient in worst case. As it is common for \(_2{\textsc {Evac}}_{F2F}\) (and many follow-up variation problems) closed forms for the cost of best-solutions known do not exist, and upper and lower bounds are given numerically. Our results involve upper bounds for a continuous spectrum of parameters w for problem \(_2{\textsc {Evac}}_{F2F}^w\). In particular we propose families of algorithms \(\mathscr {A}\) (over some parameters) so that, as their parameters vary, we obtain \(\mathrm {Wrs}\left( \mathscr {A}\right) =w\) and \(\mathrm {Avg}\left( \mathscr {A}\right) =g(w)\), for each \(w\in [w_1,w_2]\). The curve (g(w), w) summarizing our results is depicted in Fig. 1, and it is later quantified in Theorem 7 (see Sect. 5).

Fig. 1.
figure 1

Illustration of the performance of our solution to \(_2{\textsc {Evac}}_{F2F}^w\), for every \(w \in [w_1,w_2]\). Depicted curve corresponds to parametric curve (g(w), w), where wg(w) are the worst case performance and average case performance of three different families of evacuation algorithms \(\mathscr {A}_1, \mathscr {A}_2', \mathscr {A}_2\), discussed formally in Sect. 4. Note that the magenta curve is not a straight line and, as we show next, induces decreasing worst case performance (as the average case performance increases). (Color figure online)

Note that an (aw)-efficient algorithm gives a solution of value a for \(_2{\textsc {Evac}}_{F2F}^w\). Our approach to prove Theorem 7 is to define families of evacuations algorithms \(\mathscr {A}(p)\) parameterized by parameter(s) p. We will prove that these algorithms are (u(p), v(p))-efficient for some functions u(p), v(p), and in particular the evaluation of the worst case performance will be exact and monotone in p, while the computation of v(p) will be computer-assisted. Then we will set \(p=v^{-1}(w)\), and will be able to describe the average case performance as a function of w as \(g(w):=u(v^{-1}(w))\).

2.2 Computing Evacuation Times

For any feasible evacuation algorithm, we define by \(\mathcal {S}(x)\), the first time that \(\mathrm {cycle}(x)\) is visited by any robot. Clearly, when a robot, say \(\mathscr {R}_{1}\) locates the exit at \(\mathrm {cycle}(x)\), it may attempt to catch \(\mathscr {R}_{2}\) while moving along \(\mathscr {R}_{2}\)’s trajectory along the shortest line segment, say of length \(\mathcal {E}(x)\). Once robots meet, they return together to \(\mathrm {cycle}(x)\), inducing total evacuation cost \( \mathcal {C}(x) = 1+\mathcal {S}(x) + 2\mathcal {E}(x). \)

All existing results for \(_2{\textsc {Evac}}_{F2F}\), from a worst case complexity perspective, rely on numerical computer-assisted estimation of \(\sup _x \mathcal {C}(x)\), after identifying properties of the maximizer. In this section, we elevate existing arguments, and we propose a generalized and unified approach for computing \(\mathcal {C}(x)\), for any x and for any robots’ trajectories. For the sake of formality, as well as for practical purposes, robots’ trajectories will be defined by parametric functions \(\mathcal {F}(t)=(f(t), g(t))\), where \(f,g:\mathbb {R}\mapsto \mathbb {R}\) are continuous and piecewise differentiable. In particular, search protocols for the two robots will be given by trajectories \(\mathscr {R}_{1}(t),\mathscr {R}_{2}(t) \), where \(\mathscr {R}_{i}(t)\) will denote the position of robot \(\mathscr {R}_{i}\) at time \(t\ge 0\). Therefore, any evacuation algorithm will be identified by a tuple \((\mathscr {R}_{1},\mathscr {R}_{2})\). To simplify notation, we will only determine the trajectories from the moment the two robots reach the perimeter of the circle, and until the entire circle is searched, and we will silently assume that robots stay put after exploration is over.

Lemma 1

Consider instance \(\mathrm {cycle}(x)\) of \(_2{\textsc {Evac}}_{F2F}\), and suppose that for a feasible evacuation algorithm \((\mathscr {R}_{1},\mathscr {R}_{2})\), robot 1 is the first robot that finds the exit. Then \(\mathcal {E}(x) = \bar{t} - \mathcal {S}(x)\), where \(\bar{t}=\bar{t}(x)\) is the smallest root, no less than \(\mathcal {S}(x)\), of function

(1)

Proof

First observe that \(h_x(t)\) is continuous, and assuming that the two robots are not co-located when the exit is found, we have \(h_x(\mathcal {S}(x))>0\). At the same time, since the evacuation algorithm is feasible, \(\mathscr {R}_{2}(t)\) is eventually a constant, and hence for big enough t we have that \(h_x(t)\) becomes eventually negative. By the mean value theorem, there is \(t_0>0\) for which \(h_x(t_0)=0\).

Now consider the smallest positive root \(\bar{t}\) of \(h_x\), no less than \(\mathcal {S}(x)\). At time \(\bar{t}\), \(\mathscr {R}_{2}\) is located at point \(\mathscr {R}_{2}(\bar{t})\), and it is \(\left|| \mathscr {R}_{2}(\bar{t}) - \mathscr {R}_{1}(\mathcal {S}(x)) \right||\) away from the location \(\mathrm {cycle}(x)\) of the discovered exit. At the same time, \(\mathscr {R}_{1}\) moves with speed 1 along the shortest path to catch \(\mathscr {R}_{2}\) in her trajectory. Hence it takes \(\mathscr {R}_{1}\) some \(\bar{t} - \mathcal {S}(x)\) extra time from the moment the exit is found till she reaches point \(\mathscr {R}_{2}(\bar{t})\). By definition we have \(\mathscr {R}_{1}(\bar{t})=\mathscr {R}_{2}(\bar{t})\), and therefore \(\mathcal {E}(x) = \bar{t} - \mathcal {S}(x)\) as claimed.    \(\square \)

For some special trajectories, \(\mathcal {E}(x)\) admits a simpler description that we describe next. Before that, we introduce some notation pertaining to a function \(\delta :[0,\pi ]\mapsto \mathbb {R}_+\), which we widely use in the remaining of the paper:

(2)

To simplify notation, we will also abbreviate \(\delta (x)\) by \(\delta _x\). The fact that \(\delta _x\) is well defined follows easily from the monotonicity of \(\sin \) in \([0,\pi ]\).

Lemma 2

For some instance \(\mathrm {cycle}(x)\) of \(_2{\textsc {Evac}}_{F2F}\), suppose that for a feasible evacuation algorithm \((\mathscr {R}_{1},\mathscr {R}_{2})\), \(\mathscr {R}_{1}\) is the founder of the exit, say at time \(t_0=\mathcal {S}(x)\). Assume that both \(\mathscr {R}_{1}(t_0), \mathscr {R}_{2}(t_0)\) lie on the circle at arc distance \(2\alpha \), and suppose that \(\mathscr {R}_{2}\)’s movement is along the perimeter of the circle toward the complementary arc of length \(2\pi -\alpha \). Then, \(\mathcal {E}(x)=\delta _\alpha \).

Proof

The lemma follows by applying transformation \(t-\mathcal {S}(x)=d\) in the definition of \(h_x(t)\) in Lemma 1, so that \(\mathcal {E}(x) = t-\mathcal {S}(x)=d\).    \(\square \)

We are ready to conclude with a corollary that will be handy for computing evacuation times numerically, and without relying on excessive case analysis, as it was the case before.

Corollary 1

Consider feasible evacuation algorithm \((\mathscr {R}_{1},\mathscr {R}_{2})\) for \(_2{\textsc {Evac}}_{F2F}\). For any instance \(\mathrm {cycle}(x)\) for which \(\mathscr {R}_{1}\) is the exit founder, the evacuation cost can be computed as \( \mathcal {C}(x) = 1+2\bar{t} -\mathcal {S}(x), \) where \(\bar{t}=\bar{t}(x)\) is the smallest root, at least \(\mathcal {S}(x)\), of \(h_x(t):= \left|| \mathscr {R}_{2}(t) - \mathscr {R}_{1}(\mathcal {S}(x)) \right|| -t +\mathcal {S}(x) \).

2.3 Trajectories’ Description

Robots’ trajectories will be described in phases. We will always omit the “deployment phase”, i.e. the movement from the circle center to its perimeter, and we will only describe the trajectories from the moment robots start searching the circle. In each phase, robot \(\mathscr {R}_{}\), will be moving between two explicit points, either along an arc, or along a line segment (chord of an arc), see Observations 1 and 2 below. We will summarize robot’s trajectories in tables of the following format.

figure b

In order to ease notation, trajectory \(\mathscr {R}_{}(t)\) of phase i will be described with parametric equations as if the time is reset to 0 after time \(t_0 + t_1+t_2+ \ldots +t_{i-1}\), where \(t_0=1\) (this is the time that robots reach the circle). The two fundamental trajectory components are movements along arcs and movements along line segments.

Observation 1

Let \(b \in [0,2\pi )\) and \(\sigma \in \{-1,1\}\). The trajectory of an object moving at speed 1 on the perimeter of a unit circle with initial location \(\mathrm {cycle}(b)\) is given by the parametric equation \( \mathrm {cycle}(\sigma t+b)=(\cos \left( {\sigma t+b}\right) , \sin \left( {\sigma t+b}\right) ). \) If \(\sigma =1\) the movement is counter-clockwise (ccw), and clockwise (cw) otherwise.

Observation 2

Consider distinct points \(A=(a_1,a_2), B=(b_1,b_2)\) in \(\mathbb {R}^2\). The trajectory of a speed 1 object moving along the line passing through AB and with initial position A is given by the parametric equation \( \mathrm {line}(A,B,t):=\left( \frac{b_1-a_1}{\left||A-B\right||}t+a_1, \frac{b_2-a_2}{\left||A-B\right||}t+a_2 \right) . \)

Finally, the analysis of our algorithms’ trajectories will give rise to a number of constants. For the reader’s convenience, we list here the numerical values of the most common constants that will be encountered later; \( w_1 \approx 5.73906, w_0 \approx 6.11953, w' \approx 6.12851, w_2 \approx 7.28319, \alpha ' \approx 1.15468, \bar{\alpha }\approx 1.54419, \beta ' \approx 0.0241653, \beta _0 \approx 0.04388. \) All constants are formally defined when they are first introduced.

3 Two Benchmark Algorithms and Motivation

In this section we describe two benchmark algorithms for \(_2{\textsc {Evac}}_{F2F}\), as well as perform average case analysis to algorithms previously proposed in the literature. The reader may consult Fig. 2 for the algorithms analyzed in this section. Czyzowicz et al. [16] were the first to introduce an evacuation algorithm for \(_2{\textsc {Evac}}_{F2F}\), which we denote here by \(\mathscr {B}_{1}\) (see Fig. 2 on the left).

Fig. 2.
figure 2

Robots’ Trajectories for algorithms \(\mathscr {B}_{1}, \mathscr {B}_{2}, \mathscr {A}_0\). The depicted trajectories show the search of the circle, and not the evacuation step that is performed once the exit is found.

Definition 1

(Benchmark Algorithm \(\mathscr {B}_{1}\)). For all \(t \in [0,\pi ]\), \(\mathscr {R}_{1}(t)=cycle(t)\) and \(\mathscr {R}_{2}(t)=cycle(-t)\).

Observation 3

Benchmark Algorithm \(\mathscr {B}_{1}\) is (5.1172, 5.73906)-efficient.

\(\mathscr {B}_{1}\) should be understood as being efficient in the worst case, but inefficient on average. The claim becomes transparent by introducing the following naive algorithm for \(_2{\textsc {Evac}}_{F2F}\) that we depict in the middle of Fig. 2.

Definition 2

(Benchmark Algorithm \(\mathscr {B}_{2}\)). \(For\ each\ t \in [0, 2\pi ]\), \(\mathscr {R}_{1}(t)=\mathscr {R}_{2}(t)=cycle(t)\).

Observation 4

Benchmark Algorithm \(\mathscr {B}_{2}\) is \((1+\pi , 1+2\pi )\)-efficient.

\(\mathscr {B}_{2}\) should be understood as highly efficient on average, but inefficient in the worst case. Moreover, it should be clear that \(\mathscr {B}_{1}, \mathscr {B}_{2}\) are feasible solutions to \(_2{\textsc {Evac}}_{F2F}^w\), for \(w=5.1172\) and \(w=1+2\pi \), respectively. We conjecture that \(\mathscr {B}_{1}\) is indeed the optimal evacuation algorithm among all algorithms with worst case performance no more than \(1+2\pi \). At the same time, below we show that \(\mathscr {B}_{2}\) is the best algorithm for \(_2{\textsc {Evac}}_{F2F}^w\), when \(w=5.1172\), among those previously used to improve upon the worst case performance. The importance of this observation is twofold; first we are motivated to study \(_2{\textsc {Evac}}_{F2F}^w\) for the entire spectrum of \(w\in [\mathrm {Wrs}\left( \mathscr {B}_{1}\right) ,\mathrm {Wrs}\left( \mathscr {B}_{2}\right) ]\), and second we deduce that in order to perform well on average, we need to devise and analyze new evacuation algorithms.

Upper bounds for the worst case performance of \(\mathscr {B}_{1}\) were later improved in [11, 21], first to 5.628, and then to 5.625, using refined algorithms, respectively. The main idea behind the improvement is to understand the monoticity of \(\mathcal {C}(x)\) for algorithm \(\mathscr {B}_{1}\). Indeed, the following lemma was implicit in both [11, 21], and can be obtained numerically.

Lemma 3

There is \(\alpha _0\), where \(\alpha _0 \approx 0.96782\), so that evacuation cost \(\mathcal {C}(x)\) of \(\mathscr {B}_{1}\) for \(_2{\textsc {Evac}}_{F2F}\) on instance \(\mathrm {cycle}(x)\) is strictly increasing for \(x\in [0,\alpha _0]\), and strictly decreasing in \(x\in [\alpha _0, \pi ]\). In particular, \(\mathrm {Wrs}\left( \mathscr {B}_{1}\right) =\mathcal {C}(\alpha _0) \approx 5.73906\).

Consider now an execution of \(\mathscr {B}_{1}\) in which one of the robots, say \(\mathscr {R}_{2}\) continues searching on the circle and is close to approach a location that would be the meeting point if the instance was \(\mathrm {cycle}(\alpha _0)\). In an attempt to help expedite a potential meeting (in case \(\mathscr {R}_{1}\) is approaching) and effectively reducing the cost of the worst case, \(\mathscr {R}_{2}\) would make a minor detour toward the interior of the disk, before returning back to the exploration of the circle. This simple idea was explored in [21] where the following family of algorithms were introduced, parameterized by \(\alpha \in [0,\pi ] \) and point B within the unit disk, see also right of Fig. 2.

Definition 3

(1-Detour Algorithm \(\mathscr {A}_0(\alpha ,B)\)). For all \(t \in [0,\pi +2\left||\mathrm {cycle}\right. \left. (\alpha )-B\right||]\), the trajectory of \(\mathscr {R}_{1}\) is defined as

figure c

The trajectory of \(\mathscr {R}_{2}\) is symmetric with respect to the horizontal axis.

The crux of the contribution of [21] was to prove that there exists \(\alpha ,B\) for which the worst case performance is no more than 5.644 (and a delicate refinement is needed to achieve 5.628). Notably, their analysis is tedious and lengthy, whereas we can obtain the same result, relying again on numerical calculations, with minimal effort. Then, [11] introduced variations of \(\mathscr {A}_0(\alpha ,B)\) in which each robot performs more than 1 detours (see Phases 2,3 of \(\mathscr {A}_0(\alpha ,B)\)). Hence, t-detour algorithms are parameterized by a sequence \(\alpha _1, \ldots , \alpha _t\), where \(\alpha _i\ge 0\) and \(\sum _i \alpha _i \le \pi \), and points \(B_i\) in the disk. Even 2-detour algorithms achieve worst case performance 5.625, while for each \(t\ge 2\), t-detour algorithms do induce strictly improved performance (for appropriate choices of the parameters) but the improvement is negligible.

Motivated by the results in [11, 21], one is tempted to ask whether any algorithm in the family \(\mathscr {A}_0(\alpha ,B)\) improves upon \(\mathscr {B}_{1}\) with respect to the average case analysis.

Theorem 5

For every \(\alpha \in [0,\pi )\) and for every B in the unit disk \(\mathrm {Avg}\left( \mathscr {A}_0(\alpha ,B)\right) \ge \mathrm {Avg}\left( \mathscr {B}_{1}\right) \).

Theorem 5 provides strong motivation for studying problem \(_2{\textsc {Evac}}_{F2F}^w\), since it shows that in oder to establish good upper bounds, i.e. our main results depicted in Fig. 1 and quantified later in Theorem 7, one needs to employ new evacuation algorithms. Recall that even \(\mathrm {Wrs}\left( \mathscr {B}_{1}\right) \) that was first calculated in [16], or \(\mathrm {Wrs}\left( \mathscr {A}_0(\alpha ,B)\right) \) first calculated in [21] for various \(\alpha ,B\), were all estimated with computer-assisted calculations. Due to the nature of the problem, we are bound to rely on computer-assisted calculations as well. Notably, our much more intense computational work is feasible only because we employ the brand new method for computing evacuation times due to Corollary 1 and Definition 3 of \(\mathscr {A}_0(\alpha ,B)\) trajectories. Overall, in order to verify Theorem 5 we compute pairs \(\left( \mathrm {Avg}\left( \mathscr {A}_0(\alpha ,B)\right) , \mathrm {Wrs}\left( \mathscr {A}_0(\alpha ,B)\right) \right) \) for more than 500,000 different parameter values and we depict them in Fig. 3.

Fig. 3.
figure 3

Performance analysis of \(\mathscr {A}_0(\alpha ,B)\) for various values of parameters \(\alpha ,B\). Blue points (aw) correspond to (aw)-efficient algorithms \(\mathscr {A}_0(\alpha ,B)\). The red point is \(\left( \mathrm {Avg}\left( \mathscr {B}_{1}\right) , \mathrm {Wrs}\left( \mathscr {B}_{1}\right) \right) \), i.e. the performance of \(\mathscr {B}_{1}\) in the average-worst case space. Note that no algorithm \(\mathscr {A}_0\) performs better on average than \(\mathscr {B}_{1}\), while all \(\mathscr {A}_0(t,\mathrm {cycle}(t))\) is exactly \(\mathscr {B}_{1}\) for every point \(t\in [0,\pi ]\). (Color figure online)

4 New Evacuation Algorithms

In this section we propose families of evacuation algorithms for problem \(_2{\textsc {Evac}}_{F2F}^w\), for the entire spectrum of \(w \in [\mathrm {Wrs}\left( \mathscr {B}_{1}\right) ,\mathrm {Wrs}\left( \mathscr {B}_{2}\right) ] \). Our algorithms are summarized in Fig. 4.

Fig. 4.
figure 4

Robots’ Trajectories for algorithms \(\mathscr {A}_{1},\mathscr {A}_{2}, \mathscr {A}_{2}'\). The depicted trajectories show the search of the circle, and not the evacuation step that is performed once the exit is found. Arcs that are searched by both robots are also searched simultaneously, i.e. robots are co-located and search together.

First we define families of evacuation algorithms that, as we show next, perform well for \(_2{\textsc {Evac}}_{F2F}^w\) in the “neighborhood of \(\mathscr {B}_{1}\)”, i.e. for w close to \(\mathrm {Wrs}\left( \mathscr {B}_{1}\right) \). Our algorithms are parameterized by \(\alpha \), and their circle exploration lasts \(2\pi -\alpha \).

Definition 4

(Algorithm \(\mathscr {A}_{1}(\alpha )\)). For all \(t \in [0,2\pi -\alpha ]\), the trajectory of \(\mathscr {R}_{1}\) is defined as

figure d

where \(\delta _a\) is defined in (2). The trajectory of \(\mathscr {R}_{2}\) is defined as \(\mathscr {R}_{2}(t)=\mathrm {cycle}(-t)\), for all \(t \in [0,2\pi -\alpha ]\).

\(\mathscr {A}_{1}\) is depicted in Fig. 4 on the left. At a high level \(\mathscr {A}_{1}(\alpha )\) is a modification of \(\mathscr {B}_{1}\) that is based on the following idea. The execution of \(\mathscr {A}_1(\alpha )\) is the same as in \(\mathscr {B}_{1}\) till each robot searches an arc of length \(\alpha \) (and hence \(\mathscr {A}(\pi )\) coincides with \(\mathscr {B}_{1}\)). After time \(\alpha \), \(\mathscr {R}_{1}\) abandons her trajectory and catches \(\mathscr {R}_{2}\), on the perimeter of the circle resembling a trajectory as if the exit was located at \(\mathscr {R}_{1}(\alpha )\). It is not difficult to see that the definition of \(\delta _\alpha \) above satisfies \(\mathscr {R}_{1}(\alpha +\delta _\alpha )=\mathscr {R}_{2}(\alpha +\delta _\alpha )=\mathrm {cycle}(-\alpha -\delta _\alpha )\).

Next we define a family of algorithms \(\mathscr {A}_2\) which, as we show later, perform well in the “neighborhood of \(\mathscr {B}_{2}\)”, i.e. for w close to \(\mathrm {Wrs}\left( \mathscr {B}_{2}\right) \). For this recall definition (2) of \(\delta _a\). We let \(\gamma _0 \approx 2.2412\) be the root of \(2\alpha +\delta _{\alpha /2} = 2\pi \). For every \(\alpha \le \gamma _0\) we define a family of algorithms on parameter \(\alpha \) whose circle exploration lasts \(2\pi -\alpha \).

Definition 5

(Algorithm \(\mathscr {A}_{2}(\alpha )\)). For all \(t \in [0,2\pi -\alpha ]\), the trajectory of \(\mathscr {R}_{1}\) is defined as

figure e

The trajectory of \(\mathscr {R}_{2}\) is defined as \(\mathscr {R}_{2}(t)=\mathrm {cycle}(\alpha +t)\), for all \(t \in [0,2\pi -\alpha ]\).

\(\mathscr {A}_2\) is depicted in the middle of Fig. 4. The condition that \(\alpha \le \gamma _0\) is added for simplicity to ensure that the latest catching point occurs while the other robot is still searching, and is not mandatory. At a high level \(\mathscr {A}_{2}(\alpha )\) is a generalization of \(\mathscr {B}_{2}\) (note that \(\mathscr {A}_{2}(0)=\mathscr {B}_{2}\)). For the first \(\alpha \) time units, robots search in the same direction till \(\mathscr {R}_{1}\) arrives at the deployment point of \(\mathscr {R}_{2}\). Then, \(\mathscr {R}_{1}\) catches \(\mathscr {R}_{2}\) on the circle, as if the exit was located at \(\mathscr {R}_{1}(\alpha )\) (which by Lemma 2 happens in \(\delta _{\alpha /2}\) extra time).

Finally we introduce a family of evacuation algorithms which will perform well for \(_2{\textsc {Evac}}_{F2F}^w\) for intermediate values of \(w\in [\mathrm {Wrs}\left( \mathscr {B}_{1}\right) ,\mathrm {Wrs}\left( \mathscr {B}_{2}\right) ]\). For this we generalize family \(\mathscr {A}_{2}\) so that the two robots perform two alternating jumps, with parameters \(\alpha , \beta \) satisfying \(2\alpha +2\beta + \delta _{(\alpha +\beta )/2}+ \delta _{\beta /2}\le 2\pi \), see right of Fig. 4.

Definition 6

(Algorithm \(\mathscr {A}_{2}'(\alpha ,\beta )\)). For notational convenience, we set \(\zeta _{\alpha ,\beta }:=2\alpha + \beta + \delta _{(\alpha +\beta )/2}\). For all \(t \in [0,2\pi -\alpha -\beta ]\), the trajectories of \(\mathscr {R}_{1}, \mathscr {R}_{2}\) are defined as follows

figure f

Robots’ trajectories \(\alpha , \beta \) have the following meaning. As in the family of algorithms \(\mathscr {A}_{2}\), parameter \(\alpha \) represents the arc distance the two robots have before the one preceding decides to jump ahead. In \(\mathscr {A}_{2}\) the two robots meet again once the jumper reaches the perimeter of the circle. In \(\mathscr {A}_{2}'\) the jumper deploys a little further away on the circle so that when the other robot reaches the deployment point of the jumper, the two robots are at arc distance \(\beta \). As a result, the time it takes both robots to complete searching the entire circle is \(2\pi -\alpha -\beta \), as well as \(\mathscr {A}_2(\alpha ,0)\) coincides with \(\mathscr {A}_2(\alpha )\). Finally, note that even though \(\mathscr {A}_{2}'\) will be eventually invoked for seemingly restricted values of \(\beta \) (\(\beta \le \beta _0 \approx 0.04388\)), the deviation in the performance will be significant enough (e.g. \(\delta _{\beta _0/2}\approx 0.977997\)) to account for its utilization in our upper bounds.

5 Worst Case Performance Analysis

In this section we perform worst case analysis for all algorithmic families \(\mathscr {A}_1, \mathscr {A}_2, \mathscr {A}_2'\) with respect to their parameters. Notably, results in this section are quantified formally and exactly by closed formulas. At a high level, each of \(\mathscr {A}_1, \mathscr {A}_2, \mathscr {A}_2'\) will be invoked to solve \(_2{\textsc {Evac}}_{F2F}^w\) for different values of \(w\in [\mathrm {Wrs}\left( \mathscr {B}_{1}\right) ,\mathrm {Wrs}\left( \mathscr {B}_{2}\right) ]\), and each of them will have competitive average case performance for the corresponding worst case performance w. As an easy warm-up, we analyze \(\mathscr {A}_1\).

Lemma 4

(Worst Case Analysis for \(\mathscr {A}_1\)). Let \(\bar{\alpha }= 1+2\pi - w_{1}\), where \(w_{1}= \mathrm {Wrs}\left( \mathscr {B}_{1}\right) \). Then, for all \(\alpha \in [0, \pi ]\), we have that

$$ \mathrm {Wrs}\left( \mathscr {A}_{1}(\alpha )\right) = \left\{ \begin{array}{ll} 1+2\pi -\alpha , &{} \forall \alpha \in [0,\bar{\alpha }) \\ \mathrm {Wrs}\left( \mathscr {B}_{1}\right) , &{} \forall \alpha \in [\bar{\alpha }, \pi ] \end{array} \right. . $$

In a similar fashion, we can easily analyze \(\mathscr {A}_2\).

Lemma 5

(Worst Case Analysis for \(\mathscr {A}_2\)). For all \(\alpha \le \pi -2\), we have \(\mathrm {Wrs}\left( \mathscr {A}_{2}(\alpha )\right) =1+2\pi -\alpha \).

Next, our goal is to analyze \(\mathscr {A}_2'(\alpha ,\beta )\), which is much more technical. For this we will invoke \(\mathscr {A}_2'\) only for special parameters, whose choice is motivated by the following observation pertaining to the performance of \(\mathscr {A}_2\) (whose generalization is \(\mathscr {A}_2'\)). From the proof of Lemma 5, it follows that among all algorithms \(\mathscr {A}_{2}(\alpha )\), where \(\alpha \le \gamma _0\) (see discussion before Definition 5), the one with minimum worst case evacuation cost is \(\mathscr {A}_{2}(\pi -2)\), and the cost becomes \(3+\pi \). In fact, for all \(w\in [3+\pi , 1+2\pi ]\) there are two different values of \(\alpha \) for which \(\mathrm {Wrs}\left( \mathscr {A}_{2}(\alpha )\right) =w\), and we restrict \(\alpha \in [0,\pi -2]\) so that we obtain evacuation algorithms with minimum average case cost. Moreover, \(\alpha =\pi -2\) is the only parameter for which \(\mathrm {Wrs}\left( \mathscr {A}_{2}(\alpha )\right) =3+\pi \) and as a byproduct, it is the algorithm in the family \(\mathscr {A}_{2}\) that minimizes the worst case.

By Lemma 5 we know that as \(\beta \rightarrow 0\), the value of \(\alpha \) that minimizes \(\mathrm {Wrs}\left( \mathscr {A}_{2}'(\alpha ,\beta )\right) \) approaches \(\pi -2\). That value of \(\alpha \) is what made the evacuation cost of \(\mathscr {A}_{2}(\alpha )\) attain the same value in two different (worst case) exit placements. Motivated by this, and for values of \(\beta >0\) not too big, we still find the optimal choices of \(\alpha \) that minimize the worst case performance.

Lemma 6

(Worst Case Analysis for \(\mathscr {A}_2'\)). Let \(\beta _0=0.0438855\), and set \(\alpha _\beta := \pi - \beta /2 - 2\cos \left( {\beta /4}\right) \). Then for all \(\beta \in [0,\beta _0]\) we have \( \mathrm {Wrs}\left( \mathscr {A}_{2}'(\alpha _\beta , \beta )\right) = 1+\pi - \beta /2+2\cos \left( {\beta /4}\right) . \)

6 Average Case Performance Analysis and the Efficient Frontier

In this section we perform average case analysis for all algorithmic families \(\mathscr {A}_1, \mathscr {A}_2, \mathscr {A}_2'\), with respect to their parameters. For the sake of exposition of our results, we set \(w_1=\mathrm {Wrs}\left( \mathscr {B}_{1}\right) \approx 5.73906, w_2=\mathrm {Wrs}\left( \mathscr {B}_{2}\right) =1+2\pi \approx 7.28319\) and for \(\beta _0 \approx 0.04388\), as in Lemma 6, we set \(w_0:=\mathrm {Wrs}\left( \mathscr {A}_{2}'(\alpha _{\beta _0}, \beta _0)\right) \approx 6.11953\). We also recall \(\bar{\alpha }\approx 1.54419\) of Lemma 4. Finally, we set

$$\begin{aligned} v(\alpha )&:= 1+2\pi -\alpha \\ v_2(\beta )&:= 1+\pi - \beta /2+2\cos \left( {\beta /4}\right) \\ u_1(\alpha )&:= 0.00889 \alpha ^3-0.16944 \alpha ^2+0.71518 \alpha +4.23089\\ u_2'(\beta )&:= 530.673 \beta ^3 - 78.5498 \beta ^2 + 7.36219 \beta + 4.70493 \\ u_2(\alpha )&:= 0.093056 \alpha ^2+0.346659 \alpha +4.1719 \end{aligned}$$

Combined with our findings of Sect. 5, the main result of the current section is the following.

Theorem 6

For every \(w\in [w_1,w_2]\) there is algorithm \(\mathscr {A}\in \{\mathscr {A}_1, \mathscr {A}_2',\mathscr {A}_2\}\) and unique parameter(s) p such that \(\mathrm {Wrs}\left( \mathscr {A}(p)\right) =w\). In particular,

  • for all \(\alpha \in [1, \bar{\alpha }]\), \(\mathscr {A}_1(\alpha )\) is \((u_1(\alpha ), v(\alpha ))\)-efficient, and \(v( [1, \bar{\alpha }] ) =[w_1,2\pi ]\),

  • for all \(\beta \in [0,\beta _0] \), \(\mathscr {A}_2'(\alpha _\beta , \beta )\) is \((u_2'(\beta ), v_2(\beta ))\)-efficient, and \(v_2([0,\beta _0])=[w_0,3+\pi ]\),

  • for all \(\alpha \in [0,\pi -2]\), \(\mathscr {A}_2(\alpha )\) is \((u_2(\alpha ), v(\alpha ))\)-efficient, and \(v( [0,\pi -2])=[3+\pi ,w_2]\).

Finally, we aim to formally quantify the efficient frontier of our algorithms as depicted in Fig. 1 (see Sect. 2.1). The parametric curves described in Theorem 6 provide, strictly speaking, an upper bound for the parametric curve of Fig. 1. Next, we compute \(g:\mathbb {R}\mapsto \mathbb {R}\), so that the parametric curves of Theorem 6 are written in the form \(\{(g(w), w)\}_{w\in [w_1,w_2]}\). That would also imply that there is a solution to \(_2{\textsc {Evac}}_{F2F}^w\) of cost at most g(w).

In that direction, we study each evacuation algorithm family \(\mathscr {A}(p)\) with worst case performance, say, v(p), and average case upper bound, say, u(p). For each \(w \in [w_1,w_2]\) in the range of \(\mathscr {A}(p)\), we set \(p=v^{-1}(w)\) so that the average case performance achieved becomes \(u(v^{-1}(w))\).

Recall that \(\mathrm {Wrs}\left( \mathscr {A}_i(\alpha )\right) =v(\alpha )\), so that \(v^{-1}(w)=1+2\pi -w\), and hence for algorithms \(\mathscr {A}_i\) we can easily compute \(u_i(v^{-1}(w))\), \(i=1,2\). For \(\mathscr {A}_2'\) we recall that \(\mathrm {Avg}\left( \mathscr {A}_2'(\alpha _\beta ,\beta )\right) \) is decreasing in \(\beta \). Since \(v_2^{-1}\) does not admit a closed form, we need to observe that \(2.999+\pi -\beta /2 \le v_2(\beta )\le 3+\pi -\beta /2\) for all \(\beta \in [0,\beta _0]\) so that an upper bound for \(\mathrm {Avg}\left( \mathscr {A}_2'(\alpha _\beta ,\beta )\right) \) admitting worst case performance w can be computed by \(u_2'(12.2812 -2w)\).

Now for each \(w \in [w_1,w_2]\) we need to specify which of the evacuation algorithms we will invoke. Note that in Theorem 6 we chose the range of \(\alpha \) in \(\mathscr {A}_1\) to start from 1 so that as to guarantee that \(\mathrm {Wrs}\left( \mathscr {A}_1(1)\right) \ge w_0\). We note that \(u_2'(12.2812 -2w) = u_1(1+2\pi -w)\) for \(w'\approx 6.12851\), so algorithm \(\mathscr {A}_1\) should be invoked for \(w\in [w_1,w']\) (and \(w'\) is obtained for \(\alpha ':=1+2\pi -w'\approx 1.15468\)), then \(\mathscr {A}_2'\) for \(w\in [w',3+\pi ]\) (and \(w'\) is obtained for \(\beta '\) so that \(v_2(\beta ') = w'\), where \(\beta '\approx 0.0241653\)), and \(\mathscr {A}_2\) for \(w\in [3+\pi ,w_2]\). We conclude with the next Theorem (for convenience, the values of all constants are summarized at the end of Sect. 2.3).

Theorem 7

For every \(w \in [w_1,w_2]\), the optimal solution to \(_2{\textsc {Evac}}_{F2F}^w\) is at most g(w), where

$$\begin{aligned} g(w) = \left\{ \begin{array}{ll} -0.00889 w^3+0.0248026 w^2+0.338241 w+3.88629, &{} w\in [w_1,w'] ~~(\mathscr {A}_{1}(\alpha ), ~~\alpha \in [\alpha ', \bar{\alpha }]) \\ -4245.38 w^3+77893.3 w^2-476397. w+971235, &{} w\in [w',3+\pi ] ~~(\mathscr {A}_{2}(\alpha _\beta , \beta ), ~~\beta \in [0, \beta ']) \\ 0.093056 w^2-1.70215 w+11.6328, &{} w\in [3+\pi ,w_2] ~~(\mathscr {A}_{2}(\alpha ), ~~\alpha \in [0, \pi -2]) \end{array} \right. \end{aligned}$$

7 Conclusion and Open Problems

Our work suggests a number of open problems directly aiming to understand \(_2{\textsc {Evac}}_{F2F}^w\) better. Apart from generally improving our upper bounds, we find the following list of questions particularly interesting and challenging:

  1. (a)

    Note that when \(w=\mathrm {Wrs}\left( \mathscr {B}_{1}\right) \), we presented algorithm \(\mathscr {A}_1(\alpha )\) which, for certain value of \(\alpha \), has worst case performance equal to w and average case performance less that \(\mathrm {Avg}\left( \mathscr {B}_{1}\right) \). Is there an algorithm whose average case performance is no more than \(\mathrm {Avg}\left( \mathscr {B}_{1}\right) \), and worst case performance strictly less than w?

  2. (b)

    Is it true that the best possible efficient frontier is given by a smooth transition between families of evacuation algorithms? Note that \(\mathscr {A}_2\) naturally extends \(\mathscr {B}_{2}\), \(\mathscr {A}_2'\) naturally extends \(\mathscr {A}_2\), and that \(\mathscr {A}_1\) naturally extends \(\mathscr {B}_{1}\). However, \(\mathscr {A}_1\) and \(\mathscr {A}_2'\) behave differently, even though their efficient frontier agrees for certain values of the parameters.

  3. (c)

    \(\mathrm {Avg}\left( \mathscr {B}_{2}\right) =1+\pi \), and none of our algorithms beat this performance. We conjecture that this is the best possible average evacuation time, even in the wireless model, and for any number of robots.

    Apart from the list above, we believe that the direction of studying randomized algorithms for evacuation-type problems, especially with respect to average case/worst case trade-offs is of special interest, and should be considered for existing as well as for new search problems in the area.