• Aucun résultat trouvé

Robots witk Byzantine Faults (BF)

Communication phase. Once a robot is aware of the location of the target, it will share this information both with the robot on its right and with the robot on its

Algorithm 2: CrashRobots 1 Initialisation phase

3.4 Robots witk Byzantine Faults (BF)

To sum up we hâve proved the following theorem.

Theorem 2 (Crash-Faults Robots). Algorithm 2 complétés the search sucxessfully fork robots, including at most f ofwhich are crash-faulty, in worst-case time

+ °(^2)

7rd2 (/+ 1 -j)

omax<j<f

E Uvi

2

where Vi for 1 < i < k is the speed ofrobot r, and d is the distancefrom the origin O to the target, when the communication isface-to-face. This is asymptotically optimal.

3.4 Robots witk Byzantine Faults (BF)

In thissection, weintroduceanalgorithmforrobotswithweak Byzantinefaults, prove its correctness and analyse its complexity. Weak Byzantine robots may expérience

crash-faults, as described above. In addition to those faults, they may choose to propagate information that will hinder the progress of the algorithm. They can lie about everything but their own identity (a Byzantine robot couldn’t prétend to be a healthy robot). Thenotion ofweakByzantinerobotexists incontrast tothe notionof strongByzantine robots, whichhâve the capabilityto lie about everything, including their own identity. In this thesis, we focus on weak Byzantine robots.

3.4.1 Wireless communication

The algorithm works in a fashion similarto the one for Crash-Faulty Robots for the wireless communication model. Ail phases are in fact identical. However, in the CF case each phase is executed once only while in the case ofByzantine faults, the sequence ofphases is iterated /+ 1 times. In each itération, when a target signalled turns out to be false, the robot responsible for its announcement is rejected and the remaining robots reorganize and continue to search the next annulus. Eventually, the target is found in one of the subséquent itérations or the robots eliminate ail faulty robots and in the (/+l)-st itération the real target is effectively found. With respect to the CF case an extra cost is paid for the robots reorganization, between consecutive itérations of the algorithm. The total time is asymptotically dominated by the exploration cost, which does not increase. This is based on the fact that the search by k robotscontainingat most /faulty ones is more costlythan thesearch by ki robots with f—i faulty ones for i > 0

Iftwotargetsare identified atthesametime, ailrobots agrééononeofthetargets to visit (using any given algorithm), then go visit the other.

Lemma 7. The wireless algorithmforbyzantine robots describedabove complétés the

gathering ofail reliable robots at the location ofthe target in time +27v[d/2\{[d/2\ + 1) |mffl j

2[d/2\+4(d+!)(/ +!) /+ 1-J

Vi

Proof. The total time required for ail reliable robots to gatherat the location ofthe target is equal to the total time required to identify the target, plus the total time required to investigate each potential target.

Thetime required to identify the location ofthe target is again at most 2\_d/2\ ttj(2+ 4+ •• • +2|_d/2j)

K

V\

which is equal to

2|M + 2,rLd/2J(L<i/2J+l)

max /+1 -j (3.9)

o<j<f

Etlvi

If the adversary décidés to place the location of ail possible targets on the last annulus to be explored (that is, every potential target is at a distance exactly (d+1) oftheorigin), thenT\ hastocoveradistance ofat most4(d+1)(/+1) beforearriving at the location ofthe realtarget.

This takes time ofat most

4 (d+!)(/ + !)

(3.10)

Vl

and the totalexecution time is bound by

2\d/2\ +4(d+ 1)(/+ 1) +2ix[d/2\(\_d/2\ + 1) (max ( /+ 1 -3 (3.9) + (3.10) =

Vk-t

V\

This proves Lemma 7.

3.4.2 Face-to-face communication

We introduce the following two algorithms to solve the byzantine face-to-face com­

munication problem.

The (/-I- l)-Confirmations Algorithm

In this algorithm, we cover each annulus 2/ + 1 times, instead of / + 1 as we did with the crash-faulty robots. Each robot follows its own exploration path until it receives / + 1 confirmations ofthe same location of the target, before switching to the gatheringphase. Specifically, we hâve:

Initialisationphase: the robotsdivide theplaneinangularsectors,in afashionsimilar to what was done in the crash-faults scénario. Each point ofthe plane is covered by 2/ + 1 different robots.

Explorationphase: identical to the crash-fault scénario.

Communicationphase: eachrobot thatfindsthe targetexecutes +1 extrasteps, goingonlycounter-clockwise (insteadofchangingdirection ateverystep), thus meet­

ing every other robot which is still in its exploration phase. Once this is done, they execute their gathering phase. A robot that does not find the target stays in its exploration phase until it is informed about the same location ofthe target by f+1 incoming robots, then executes its gatheringphase.

Gathering phase: the robot moves in a straight line toward the target.

Lemma 8. The algorithm described above is correct, i.e. the target is alwaysfound and the robots eventually gather at the location ofthe target.

Proof. In order to prove thecorrectnessofthealgorithm, wehâve toshow 1) that the target is alwaysfound, and 2) that ail the robots are eventually informed and gather

at the target. To prove the first part, we note that at each step of the exploration phase, the robots scan an annulus whose innercircle has radius 2i— 1, and the outer circle has radius 2i +1, with i being the current step. Each point of the annulus is visited by 2/ + 1 robots, thus ensuring that at least (/+ 1) reliable robots see the target. As ail points are visited at least once by (/+ 1) reliable robots, the target is guaranteed to be found.

Oncethe robots hâvefound the target, theystart informingeveryother robot. As the algorithmdoes not allow for arobot todeviate fromits explorationcourse before receiving (/+1) confirmations, the robotsare guaranteed to meetevery otherrobot, and the byzantine robots willbe unable to sway any reliable robot. Since each robot that saw the target will eventually meet every other reliable robot, it is guaranteed thateveryreliable robotthat didnot see thetargetdirectlywillhearaboutthe target at least (/+ 1) times. Once this is doue, they hâve a confirmation ofthe location of

the target.

Lemma 9. The search performed by the algorithm described above is completed in time

Proof. Suppose that the target is found at a point situated at a distance d from the origin O, say by robot rx. This happens in step \d/2\ of the exploration phase. For simplicity,we assumethatthe targetmayonlybefoundduringthecircular movement ofthe robots. Indeed, the union ofthe robots’ positions during circular movements cover the entire plane (2/ + 1) times. Once the location of the target has been identified by a robot, the information needs to be shared. The robot which holds the information needs to go in the counterclockwise direction covering arcs of the entire

circle, and then one extra step to meet a robot he may hâve missed because both robots were moving in the same direction. Consequently, we need +1 extra steps at most. As the speed of the robot to identify the target is also at least 1+ the total time required for both exploration and communication phase is bound by:

2(lrf/2J+2flfl+1) , ^(2/ + l)([d/2J+2[g] + l)(Ld/2j+2fg+2)

Vl

V'

(3.11) The last robot informed (say, rj) will hâve to go to the location of the target. By the time r, is informed, it will be at a distance

2 [\d/2\

+ 2 + l) from the origin

O.

In the worst case, the target is located at a point directly opposed to r,, hence r, will hâve to cover that distance plus

d

to reach the target, walking at its maximal speed. Therefore, the worst gathering time (when the slowest robot

r\

is the last one informed) is bound by

2

([d/2\

+2 r 2^1

(3.12) + 1 ) +

d.

ai

The total time is obtained by summing Formulas (3.11) and (3.12); we conclude