Search on a Line by Byzantine Robots

We consider the problem of fault-tolerant parallel search on an infinite line by $n$ robots. Starting from the origin, the robots are required to find a target at an unknown location. The robots can move with maximum speed $1$ and can communicate in wireless mode among themselves. However, among the $n$ robots, there are $f$ robots that exhibit {\em byzantine faults}. A faulty robot can fail to report the target even after reaching it, or it can make malicious claims about having found the target when in fact it has not. Given the presence of such faulty robots, the search for the target can only be concluded when the non-faulty robots have sufficient verification that the target has been found. We aim to design algorithms that minimize the value of $S_d(n,f)$, the time to find a target at a distance $d$ from the origin by $n$ robots among which $f$ are faulty. We give several different algorithms whose running time depends on the ratio $f/n$, the density of faulty robots, and also prove lower bounds. Our algorithms are optimal for some densities of faulty robots.


Introduction
Searching on a line (also known as a single-lane cow-path or a linear search) problem is concerned with a robot looking for a target placed at an unknown location on an infinite line; the robot moves with uniform (constant) speed and can change direction (without any loss in time) along this line. The ultimate goal is to find the target in optimal time [5]. Searching is central to many areas of computer science including data structures, computational geometry, and artificial intelligence. A version of the problem was first posed in 1963 by Bellman [12] and independently considered in 1964 by Beck [7], where the target was placed according to a known probability distribution on the real line, the robot was moving with uniform speed, and the goal was to find the target in minimum expected time.
In this paper, we consider the problem of parallel, co-operative search on the infinite line by n mobile robots at most f of which are faulty. The target is placed at a distance unknown to the robots. The robots start at the same time and location and can communicate instantaneously in wireless mode at any distance on the real line. While searching, the robots may co-operate by exchanging (broadcasting) messages; however, the search may be impeded by some of the robots (at most f ) which may exhibit byzantine faults. The ultimate goal is to minimize the time it takes all non-faulty robots to be certain that the correct location of the target has been found.

Motion and communication model
To begin, we describe the robots' locomotive and communication models used in a search algorithm.
Robots and their trajectories. Robots are assumed to start at a common location, considered to be the origin of the line. They can move at maximum unit speed either along the positive direction (described as moving right ) or along the negative direction (described as moving left ); any robot can change direction arbitrarily often (by turning) without any loss in time. An algorithm for parallel search specifies a trajectory unique to each robot that is given by its turning points, and the speed(s) to follow between turning points. Since each robot has a distinct identity, it may also follow a distinct trajectory. Robots are assumed to have full knowledge of all trajectories, and moreover can communicate instantaneously with each other in wireless mode at any distance. Since robots know all the trajectories, the only kind of message broadcast by a robot R is whether or not it has found the target at some location; if R stays silent while visiting some location, the implicit assumption made by the other robots is that R did not detect the target there. Thus R follows its predefined trajectory until either it finds the target, in which case it announces that it has found the target, or it hears some other robot R ′ announce that it has found the target, at which point R may change its trajectory to participate in a verification protocol in regard to the announcement.

Messages and communication.
All n robots know that f of the robots are faulty but they cannot differentiate in advance which among them are faulty; instead they must distinguish faulty from non-faulty ones based on conflict resolution and verification of messages received throughout the communication exchanges taking place during the execution of the search protocol. To this end, robots are equipped with pairwise distinct identities which they cannot alter at any time (in that respect our model is similar to the weakly Byzantine agent in [22]). In addition to the correct identity, the current location of a robot is automatically included in any broadcast message sent by the robot. Consequently, a faulty robot that does not follow its assigned trajectory can be immediately detected as faulty by the other robots, if it chooses to broadcast at some stage. In all other ways, faulty robots are indistinguishable from non-faulty (reliable) robots, except that the former can make deliberate positive and negative detection errors as follows. A non-faulty or reliable robot never lies when it has to confirm or deny the existence of the target at some location. Contrast this with a faulty robot that may stay silent even when it detects or visits the target, or may claim that it has found the target when, in fact, it has not found it. Thus, a reliable robot cannot necessarily trust an announcement that the target has been found, nor can it be certain that a location -visited silently by another robot -does not contain the target. In other words, the search for a target can terminate only after at least one robot that is provably reliable has visited the target and announced that it has been found. This requirement is critical to all our algorithms: if at some time, multiple robots make conflicting announcements at a location then the resulting (conflicting) votes can only be resolved if something is known about the number of reliable robots that participated in the vote. For instance, if three robots vote and it is known that two of them are reliable, then the majority vote would be the truth.

Preliminaries and notation
Consider a parallel search algorithm for a target located at distance d from the origin. First we define the search time of the algorithm and its corresponding competitive ratio.
Definition 1 (Search Time) Let S d (n, f ) denote the time it takes for a search algorithm using a collection of n robots at most f of which are faulty, to find in parallel the location of a target placed at a distance d (unknown to the robots) from the starting position (the origin) of the robots on the line. Definition 2 (Competitive Ratio) The corresponding competitive ratio is defined as S d (n, f )/d, which is the ratio of the algorithm's search time and the lower bound d on the time taken by any algorithm for the problem.
For larger values of n and f , it will be more convenient to express our results in terms of the density, β = f n , of faulty robots. This leads to the following definition.

Definition 3 (Asymptotic Competitive Search Ratio)
Extend the definition of S d (n, f ) above to noninteger values of n by replacing n with ⌈n⌉ while the parameter f remains integral. Let β = f n . Then denotes the asymptotic competitive search ratio of any algorithm with search time S d (n, f ).
Note that if n ≥ 4f + 2, then in any partition of the robots into two groups each of size at least 2f + 1, we will always have at least f + 1 reliable (non-faulty) robots per group. Therefore, an algorithm that sends the corresponding robots in the two groups in opposite directions is guaranteed to find the target in time d, because when the target is visited by one of the groups, a straightforward majority vote in the group confirms its presence reliably. Hence, S d (4f + 2, f ) = d, which is optimal. On the other hand, if n ≤ 2f , there is no algorithm to complete the search: the f faulty robots may always completely disagree with the reliable ones, making it impossible to be certain of the location of the target. Therefore, in the sequel, we examine the interesting case where 2f + 1 ≤ n ≤ 4f + 1.

Our results
In Section 2, we are concerned mostly with upper bounds. Subsection 2.1 establishes the guiding principles for the design of algorithms.
We begin our study of upper bounds in Subsection 2.2 by establishing bounds for S d (n, f ) for specific small values of n and f . These results are summarized in Table 1. For a comparison, we include in Table 1 known results on the search time for algorithms on the line with faulty robots that exhibit only crash faults [19], i.e., when the faulty robots never send any messages.
For larger values of n and f we express our results in terms of the density β = f n and show how to extend our algorithms from small values of n and f to this setting. and 1 3 the resulting search time is between 2d and 3d. In Section 3, we derive two lower bounds on the search time.

Related work
A search problem is usually seen as localization of a hidden target using searchers capable to move in the environment. It is an optimization question, usually attempting to minimize the time needed to complete the search. The question has been studied in numerous variations involving static or moving targets, one or many searchers, known or unknown environment, synchronous or asynchronous settings, different speed agents and many others (cf. [23]).
In several studies, when the environment is not known in advance, search implies exploration, often involving mapping and localizing searchers within the environment [2,3,21,24,26,30]. However, even for the case of a known, simple environment like a line, there were several interesting studies attempting to optimize the search time. They started with the independent works of Bellman [12] and Beck [7], in which the authors attempted to minimize the competitive ratio in a stochastic setting. More exactly, they proved that time 9d is needed to guarantee finding the target situated at a (a priori unknown) distance d from the origin. Several other works on linear search followed (e.g. see [4,7,8,9,10,11,12]). More recently the search by a single searcher was studied for different models, e.g., when the turn cost was considered [20], when the bounds on the distance to the target are known in advance [14], and when the target was moving or for more general linear cost functions [13].
Most recently variants of linear search were studied for collections of collaborating searchers (robots). [16] considered linear group search, when the process is completed when the target is reached by the last robot visiting it. The robots collaborate attempting to minimize the group search time. However, [16] shows that having many robots does not help and the optimal search time is still bounded from below by 9d. Group search using a pair of robots having distinct maximal speeds was studied in [6], in which techniques producing optimal search time were designed.
Fault tolerance was studied in distributed computing in various settings in the past (e.g., see [25,28,29]). However, the subject of unreliability was mainly for static components of the environment (e.g. network nodes or links), which was sometimes modelled by dynamically evolving environments (cf. [15,27]). The malfunctions arising to mobile robots were investigated for various problems of gathering or pattern forming [1,17,22,31] or patrolling [18]. Recently [19] investigated crash faults of robots performing linear search, where the time of finding the target by the first reliable robot was optimized. However, dealing with Byzantine agents is in general more tricky, requiring to identify and to refute the most malicious adversarial behavior (e.g., see [22]).

Upper Bounds
As already observed, if n ≥ 4f + 2, linear search can be performed optimally in time d, and no algorithm exists if n ≤ 2f . Therefore, we consider below the case when 2f + 1 ≤ n ≤ 4f + 1. Clearly, the robots can always stay together as a group, and perform the doubling zig-zag strategy that is optimal for a single robot and that has competitive ratio 9 [5,7]. Since the reliable robots (at least f + 1) are always in a majority, we are guaranteed to find the target. This yields the following upper bound: In the remainder of this section, we provide upper bounds that, in general, are better than those suggested by Theorem 1 for the search problem. We do so by identifying and using some guiding principles to design search algorithms in the presence of faulty robots.

Principles for the design of algorithms
The general framework of our algorithms involves five basic principles, namely Partition into Groups, Symmetry of Algorithms, Resolution of Conflicts, Simultaneous Announcements, and Computations by the Robots, which we describe below in detail.

Partition into Groups.
Depending on the ratio of faulty robots, we partition the robots into a certain number of groups. Two of the groups lead the exploration in opposite direction from the origin of the line. Further, each of these two groups will have at least f + 1 robots so that at least some of the robots would announce the target when it is reached.
Symmetry of Algorithms. The algorithms are symmetric as far as left and right part of the line is concerned. We therefore typically discuss the behavior of the algorithm with respect to one side of the line only.
Resolution of Conflicts. If at any time there is an announcement of a target, the robots in the search groups stop until the claim is resolved. In the meantime, robots from some other group(s) move to resolve the claim. Once the claim is resolved, either the target is found and the robots stop, or a certain number of faulty robots is identified. From this time onward, the algorithm disregards any message from these faulty robots, effectively reducing the number of faulty robots to contend with, and the groups continue the search. Thus, each such announcement exposes more of the faulty robots, until eventually, we can be certain of a majority of robots in each search group being reliable, in which case the remaining search can be easily finished.
Simultaneous Announcements. When two announcements are being made at the same time, as usual with wireless transmissions, the algorithm deals only with one of them at a time, chosen arbitrarily. After the resolution of the first announcement is done and the search is possibly restarted, the robots redo their observation, and then the announcement is repeated if needed, thus taking into consideration the situation after the resolution of the first announcement. We show it does not influence the search time.
Computations by the Robots We assume that the time spent on calculations is negligible in comparison with the time spent in moving. Thus, we count only the time needed in movements of the robots until the target is found.
As indicated above, throughout the execution of the algorithms, conflicts will be resolved by voting. More precisely, we define V (x, t) to be the vote of the robots about position x at time t. If y robots have claimed that the target is at x at or before time t, while z have claimed (by visiting and keeping silent) that it is not at x, then we say V (x, t) = (y, z).

Definition 4 (Conflict) We say there is a conflict at position
The following two simple observations are used extensively in the proofs in this section. To build intuition, we start with giving algorithms with at most 2 faulty robots, and later show how to use these techniques to give algorithms with asymptotic ratios for general values of n and f .
Proof. (Proposition 1) Partition all robots into two search groups, L, and R, with two robots in each group. Each robot in R (L) moves right (left resp.) at speed 1 until it finds the target or hears an announcement that the target has been found. Suppose now that there is an announcement at time x from position x > 0. If V (x, x) = (2, 0), by Lemma 1, the target has been found at x and the algorithm terminates. Suppose that V (x, x) = (1, 1). Then one of the robots in L, say A, travels to x to resolve the conflict, taking additional time 2x, while all other robots remain stationary. At time 3x, the robot A reaches x. If V (x, 3x) = (2, 1), by Lemma 1, the target has been found, and the algorithm terminates. If instead V (x, 3x) = (1, 2), then by Lemma 1, the faulty robot is identified, and all other robots can be inferred to be reliable. Now the search continues with the groups moving in opposite directions with only the reliable robots being considered, until the target is found. Notice that an announcement at −x, simultaneous with that at x, would be resolved at time 3x with reliable robots. Therefore, if the target is at d or −d, the time taken to find it is ≤ 3x + d − x = 2x + d ≤ 3d since d > x. Thus in all cases, S d (4, 1) ≤ 3d.
If the number of robots increases to n = 5 (while f still equals 1), then it is possible to send two groups of size 2 in opposite directions as in the algorithm above, but keep one spare robot at the origin for conflict resolution. This improves the search time to at most 2d since the spare is always at a distance d from a conflicting vote, and moreover, the spare is definitely reliable since the faulty robot is part of the conflicting vote..
Proof. (Proposition 2) Partition the robots into three groups, two of them, L and R being the search groups. There are two robots in L which moves left at speed 1, one robot (designated as A for convenience) remains stationary at the origin, and one search group of two robots R moves right at speed 1. Suppose that there is an announcement at time x from position x > 0. If V (x, x) = (2, 0), then by Lemma 1, the search terminates in time d. If instead V (x, x) = (1, 1), then the robot A joins R at position x, taking additional time x to resolve the conflict, while all other robots remain stationary. If V (x, 2x) = (2, 1), by Lemma 1, the target has been found, and the algorithm terminates. If instead V (x, 2x) = (1, 2), then by Lemma 1, the faulty robot is identified, and all remaining robots can be inferred to be reliable. Now each group L and R with reliable robots continues moving in opposite directions until the target is found. Notice that an announcement at −x, simultaneous with that at x, would be resolved at time 2x with reliable robots. If the target is at d or −d, the time taken to find it is ≤ 2x + d − x = x + d ≤ 2d since d > x.Thus in all cases, S d (5, 1) ≤ 2d.
Note that the cases, (n, f ) = (5,2) or (n, f ) = (3, 1), satisfy n = 2f + 1, the bare minimum of robots necessary to guarantee termination. For these cases, it seems very difficult to improve upon the upper bound on S d (n, f ) ≤ 9d from Theorem 1. In fact, we conjecture that this best possible for the pairs (5, 2) and (3, 1) stated above.
By ensuring an appropriate redistribution of robots past the announcement of a conflict, we can show the following result: Proof. (Proposition 3) We partition the robots into two groups of size three and have the two search groups move at speed 1 from the origin in opposite directions. Assume that when the groups reach −x and x for some 0 < x ≤ d an announcement of a target is sent from −x. We only need to consider the cases when the vote is V (−x, x) = (2, 1) or (1, 2).
Case 1: V (−x, x) = (2, 1). In this case we send two robots from x to −x and redo the vote. There are three possibilities: V (−x, 3x) = (4, 1); (3, 2); (2, 3). In the first two cases the target has been found and we are done in 3d. In the last case, the two "yes" voters are the two faulty robots and may be eliminated. Since we now have only good robots (three at −x and one at x) we finish in d − x for a total of d + 2x ≤ 3d.
Case 2: V (−x, x) = (1, 2). Again we send two robots from x to −x and redo the vote. Simultaneously, we send one of the "no" voting robots to the origin and one "yes" and one "no" voter to x. There are three possibilities for V (−x, 3x) : (3, 2), (2, 3), (1,4). If the vote is (3, 2) we have found the target and are done. If the vote is (2, 3), the two "yes" votes are the faulty robots and may be eliminated. There is at least one good robot at x and at −x and so the search may be completed in d − x for at total of less than or equal to 3d.
In the final case, we have two robots who voted "no" at −x one of which may be faulty and we have one robot that voted "no" plus one robot that hasn't voted at x (plus the "yes" voter who may be eliminated) one of which may be faulty. I.e., at each of x and −x we have two robots at most one of which may be faulty plus one robot at the origin which may be faulty. We complete the search as in the case of five robots one of which is faulty: I.e. at the next conflict, say at x ′ ≤ d, the center robot resolves the conflict and reveals the last faulty robot at the cost of an additional x ′ time. The search now completes in time d − x ′ for a total of 3x + (x ′ − x) + x ′ + d − x ′ ≤ 4d. This completes the proof.

Algorithms for large n
We now consider the case of large n, with different values of the density, β = f /n, of faulty robots. We start with generalizing the results from the previous subsection, then build recursive techniques that allow us to deal with larger densities of faulty robots, while paying a price in terms of the search time.
Proof. (Theorem 2) Partition the robots into three groups L, R, and C of sizes 4f +1 3 , 4f +1 3 and 2f +2 3 respectively. Robots in L and R, are the search groups that move left and right at speed 1 respectively, and robots in C stay stationary until an announcement is made. Suppose there is an announcement at time x at position x > 0, and let V (x, x) = (y, z) with y > 0. There are three possible cases. If y > f , then by Lemma 1, the search is concluded in time x = d. If z > f , the target is not at x, and y faulty robots have been identified. In this case, we disregard these robots from now on and the remaining robots in L and R continue moving in their original directions until a genuine conflict occurs (i.e., both y and z are less than the number of faulty robots remaining) or the target is found. It remains to consider the case when max{y, z} ≤ f . Observe that min{y, z} ≥ f +1 3 . In this case, the algorithm moves the robots in C in time x to location x. Consider now V (x, 2x) = (y ′ , z ′ ). Since at time 2x there are 2f + 1 robots at x, either the search is concluded or at least y ′ ≥ y ≥ f +1 3 robots faulty robots have been identified and may be disregarded.
Consider the remaining robots; there are at most f ′ = f − y ′ faulty robots among them. There are 2f + 1 − y ′ robots (after the faulty y ′ have been identified) remaining in the group R, and 4f +1 3 robots in group L. It is easy to verify that with f +1 3 ≤ y ′ ≤ f , we have at least 2f ′ + 1 robots in both L and R. Therefore, the robots in L and R can continue exploration of the line in their original directions and the time required to reach the target is at most 2x + (d − x) ≤ 2d. Observe that all the quantities mentioned are integral in the case that f ≡ 2 mod 3. This completes the proof.
Using the fact that S d (n + k, f ) ≤ S d (n, f ) for any k ≥ 0 and thatŜ(β) ≤Ŝ(β ′ ) if β ≤ β ′ we can easily derive the following corollary: As above, the following corollary is immediate: As illustrated in the proofs of Theorems 2 and 3, when an announcement of a target is made, either the target can be confirmed, or the number of unidentified faulty robots can be reduced by an exchange of robots between the two search groups. For higher densities of faulty robots this technique can be repeated, for which we pay by an increase in the search time. This is the motivation for the recurrence formulas below that are used to obtain search algorithms for higher densities of robots.

Definition 5
Let T x (l, s, r, f ) be the minimum search time required by the robots to find the target given that initially, l robots are located at −x, s robots are at the origin 0, r robots are at +x, and f robots are faulty.
Since, as in the algorithms described so far, one way to solve our search problem is to send two equal-sized groups of robots to positions x and −x, we get the following upper bound.
If there is an announcement at x, we can identify some of the faulty robots, and by paying a price in terms of additional time, we can reduce it to a new problem with a smaller number of faulty robots. This can be encapsulated in the following lemma: Lemma 4 Let k > 0 be even. Suppose there is an announcement at distance x from the origin. Then for all a ≥ x, T x (f + k, 0, f + k, f ) ≤ 2x + T a (f + k/2, 0, f + k/2, f − k).

Proof. (Lemma 4)
Assume there are f + k robots each at x and −x, with at most f faulty robots in all, and that a conflict occurs at x > 0 at some time t. Let V (x, x) = (y, z). Then k ≤ min{y, z} ≤ max{y, z} ≤ f . Now the robots move as follows: 1. All f + k robots at position x move to −x.
2. f + k/2 of the robots at −x move to x.
Note that these movements take time 2x, and there are now f + k/2 robots at x and f + k/2 + k robots at −x. Since 2f + 3k/2 robots have now visited x, the vote V (x, 3x) is enough to resolve the conflict, and there remain at most f − k faulty robots among the total 2f + k robots. This proves the lemma.
Lemma 4 along with Theorem 3 can be used to obtain slower algorithms for higher densities. We have Suppose that an announcement occurs at x ≤ d. Then for all a ≥ x, Points (a) and (c) above follow from Lemma 3 and point (b) follows from Lemma 4 taking k = 2f +2 5 . Since an announcement must occur either before or at time d, together the above imply S d 14f +4 5 , f ≤ 2x + d for some x ≤ d. To extend this to higher densities we apply Lemma 4 multiple times.
Consider an f that is a multiple of 19 and let n = 46f 19 + 12. By Lemma 4 we may conclude that if there is an announcement at some x ≤ d, then for all a ≥ x, holds. Thus after a single announcement, we have reduced our problem to one that may solved using the approach from Theorem 3. From this we can conclude that for f a multiple of 19 and n = 46f 19 + 12, if the announcements occur at from which it follows thatŜ(β) ≤ 5 for β ≤ 46/19. Applying the lemma one more time, we can shoŵ S(β) ≤ 7 for β ≤ 146/65. Similar to Lemma 4 the following lemma establishes a recurrence that can be used to extend Theorem 2 to higher densities (at a cost of a higher competitive ratio).
Lemma 5 Suppose there is an announcement at distance x from the origin. Then for all a ≥ x and k ≥ f /4: Proof. (Lemma 5) Assume there are f + k robots each at x and −x, with at most f faulty robots in all, and that a conflict occurs at x at some time t. Let V (x, t) = (y, z). Then k ≤ min{y, z} ≤ max{y, z} ≤ f . Now the robots move as follows: Note that these actions take 2x time, and it is clear that there remain 4(f −k)

3
, 3k robots at −x, 0, and x, respectively. At this time, we take another vote at position x, adding to it the votes of robots that were at x at time t but were relocated. Observe that the total number of votes tallied is 2f , and therefore the conflict can be resolved. Furthermore, by Lemma 1, at least k faulty robots have been identified, so the number of faulty robots that remain is f − k.
Using a similar argument to that used in Theorem 4 we can apply Lemma 5 and Theorem 2 to get:  3 10 ≤ β < 1 3

Algorithms for
Finally we discuss a new class of algorithms for densities of f n between 3 10 and 1 3 whose search time is between 2d and 3d.
Informally, in any of these algorithms, the robots are partitioned into two search groups, that move in opposite directions at speed 1, and i middle groups, i odd, i ≥ 3, positioned at regular intervals between the search groups. These i groups are used to solve any conflict reached by the search groups. The positioning of the middle groups between the search groups is achieved by them moving at a fraction of the maximal speed.
When a vote arises that cannot be resolved using Lemma 1, the middle groups are moved to the point of conflict in sequence at speed 1 until a resolution of the conflict is obtained. The middle groups not used in the resolution of a conflict on one side can be used to resolve a conflict on the other side. This approach allows a fine-grain resolution of a conflict by taking into account the result of the vote each time a group arrives to the conflict point.
Proof. (Lemma 6) In our algorithm we partition the robots into i+2 groups. Two of these groups, the search groups, are of size i+2 i+1 f + 1 and they move at speed 1 in opposite directions. Each of the remaining i groups, called middle groups, are of size 1 i+1 f and they move at speed less than 1 so that when the search groups are located at −x and x, they are located at points −d + 2d between −x and x, i.e., i points that divide the interval (−x, x) into equal size segments. Assume that at time x there is a conflicting vote V (x, x) = (y, z) at point x on the line that cannot be resolved using Lemma 1, i.e., max{y, z} ≤ f and thus min{y, z} ≥ f i+1 . We start to shift the middle groups to x at full speed, and observe the vote after the arrival of each middle group. If after the arrival of j middle groups the conflict is not solved, then at that point V (x, x + 2x/(i + 1)j) = (y j , z j ) with min{y j , z j } ≥ (j+1)f i+1 and thus the group of robots now located at x contains at least (j+1)f i+1 faulty robots and the search group on the left contains at most i−j i+1 faulty robots. Thus we can conclude that after arrival of (i − 1)/2 middle groups to x, the search group on the right contains the majority of reliable robots and the middle groups are not needed in solving conflicts on the left. Observe that prior to arrival of (i − 1)/2 robots groups to x, the middle groups located to the left of 0 contain sufficient number of robots to solve any conflict at −x. On the other hand, after the arrival of all i middle groups to x we have 2f + 1 robots there which resolves the conflict, and sufficient number of faulty robots is identified to continue the search with the majority of reliable robots on the right as well. Thus in time x + (2x − 2x i+1 ) = 3x − 2x i+1 the search is either finished or can be done in time at most

Lower Bounds
It is straightforward to see that to achieve search time d, 4f + 2 robots are necessary; with 4f + 1 or fewer robots, at time d, either d or −d can be visited by at most 2f robots. The adversary can make f of these 2f robots faulty, and it is impossible to be certain about the answer. Formally we can prove the following result.
The next theorem shows that the density f /n = 3 10 in Theorem 2 is also a lower bound on this ratio if we want to maintain the search time to be at most 2d. , and by s the number of robots at the origin 0, respectively. By assumption l + r + s = (10/3 − ǫ)f . Observe that robots which are located at points different from −d, 0, d at time d may not be helpful in reducing the 2d search time. Thus, without loss of generality we may assume that at time d only the points −d, 0, +d are occupied by robots. Without loss of generality assume that r ≤ l. We derive a contradiction by considering two cases.
1. Either l or r ≥ 4 3 f . In this case we have that r + s = 10 Thus, s + r robots are not sufficient to resolve conflicts on the right possibly involving f faulty robots within time 2d.
2. Assume that there exists ǫ > 0 such that both, l, r ≤ ( 4 3 − ǫ)f . In particular, consider r ≤ ( 4 3 − ǫ)f . Consider time d and suppose that up to min{r, 1 3 f } of robots at d claim to find the target. For the algorithm to attain time 2d, robots must be send from the start position 0 at time d to position d so as to verify the claim. Since among the robots sent to +d from 0 we could have all remaining faulty robots, the number of robots sent from 0 must be at least 2f + 1 − r so that we a decision at time 2d can be made. However, if the target is not at +d then the adversary could make it so that only 1 3 f robots are faulty at +d from among 2f + 1 robots. However, now we have at most 10 3   Proof. (Lemma 8) The upper bound S d (3f + 1, f ) ≤ 3d has been proved in Theorem 3. To prove the lower bound S d (3f + 1, f ) ≥ 3d we argue as follows. Consider visits to the set of symmetric positions {−d, +d} by the robots. In particular, consider the first time t that at least f + 1 robots complete visits to the second of the positions in the set. For instance, without loss of generality, assume that position −d is visited first by at least f + 1 robots and later (or instantaneously) by at least f + 1 robots. Clearly the time t is at least d. The adversary arranges for a conflict at position +d. Note that unless t ≥ 3d, the sets of robots visiting the two positions must be disjoint, and hence, the conflict at position +d involves at most 2f robots participating in a vote, i.e. to resolve the conflict, at least one of the robots that visited −d must move to +d. It follows that the total time required is at least t + 2d ≥ 3d.
Note that Lemma 8 implies a lower bound for densities β in the range 1/3 > β > 3/10. In case n = 3, f = 1, we can show the following lower bound on the search time. Proof. (Lemma 9) We start by considering three positive real numbers x, y, α such that We will show that an α satisfying Inequalities (2) above is the competitive ratio of all search algorithms for three robots with one Byzantine fault. Moreover, using Mathematica it can be shown that the maximum value of α that satisfies (2) is 3.93. Consider numbers −y, −x, −1, 0, 1, x, y on the real line and the movement of the three robots with respect to these points. Assume on the contrary the competitive ratio is some value ρ such that ρ < α. Throughout the arguments below we are using Inequalities (2).
Observe that two robots must visit the points −1, 1 before time α, otherwise we get a contradiction to the competitive ratio because of Inequality (2). Therefore there exists a robot, say A, that visited both of these points before time α. Same argument applies for points −x, x. There exist a robot that visits both points −x, x before time αx. Observe that this robot cannot be A. Indeed, otherwise it takes either time 2x + 1 to reach point −1 or time 2 + 3x to reach point x. Let B be the robot that visits both points −x, x before time αx. Because of the time constraints in Inequalities (2) the robot B must have either positive trajectory (i.e., visiting x before −x) or negative trajectory (i.e., visiting −x before x). However, it is easy to see that B cannot have a positive trajectory because it would be too far to confirm an target placed at −1. This proves the lemma

Discussion
In this paper, we considered a generalization of the well-known cow-path problem by having the search done in parallel with a group of n robots, with up to f of them being byzantine faulty. We presented optimal search algorithms for several ranges of values for β = f /n, the fraction of faulty robots, and gave non-trivial upper and lower bounds in many cases. Several interesting problems in the setting remain open, the most interesting one being to give tight upper and lower bounds in the case n = 2f + 1.