1 Introduction
The problem of cops and robber on a graph has received considerable attention. Started as a pure pursuitevasion game it has shown interesting theoretical implications and importance in graph searching, network decontamination, motion planning, security and environment control. As a consequence many versions of the problem have been studied, tipically depending on the type of graph, the knowledge of the actors on the positions of the others, the type and speed of movements allowed.
In the basic version of the problem cops and robber stay on the vertices of a graph and can move to adjacent vertices or stay still, starting from initial positions chosen first by the cops, then by the robber. The chase proceed in rounds, each of which is composed of a parallel move of the cops followed by a move of the robber which is captured when a cop reaches its vertex and the game terminates. We study the problem in this basic version if the graph is a toroidal grid, also revisiting some known results on grids.
1.1 A brief analysis of the literature
The cops and robber problem was defined by Quillot [27] and Nowakowski and Winkler [25] as a pursuitevasion game with one cop, to generate a complex theory in the following years. After studying graphs where the game can be won by a single cop, the attention was directed to solve the problem on different classes of graphs with a minimum number of cops, called the cop number. A general survey in this direction can be found in the comprehensive book by Bonato and Nowakowski [7] which brings together the main structural and algorithmic results on the field known when the book appeared. In particular they thoroughly discuss the still open Meyniel conjecture on the sufficiency of cops for capturing the robber in an arbitrary graph of vertices.
Many variants of the basic problem exist for general graphs or for particular classes of graphs, such as considering more than one robber; or cops and robber moving at different speeds; or a robber being invisible for some rounds; or, more recently, the robber escaping surveillance if it maintains a given distance from the cops [8].
With specific reference to two dimensional grids and toroidal grids studied in this paper, the proof that the cop number is 2 in a twodimensional grid was originally given in [20], and the capture time was determined in [22]. The cop number 2 for semitori and 3 for tori can be derived from the results of [24] where the rob capture is studied for products of graphs. Several variations were proposed, in particular if the visibility of each cop is limited to edges and vertices of its row or column. In [9, 23] the cops win if they can see the robber, and in [28] it is shown that the problem with limited visibility has application in motion planning of multiple robots. The study of [28] has been revisited in [10] and algorithms for the capture using one, two or three cops having constant maximal speed are given. In [4] the cop number is determined if the robber can move at arbitrary speed. A more recent work [11] assumes that the initial positions of cops and robber are chosen randomly. In [3] the study is extended to dimensional grids. As some of the grids studied here are planar, it is worth noting that the problem has been studied for planar graphs in [1], where it is shown that the cop number for such graphs is at most 3, and in [26] where a strategy is presented with capture time for graphs of vertices.
Other important problems with a relation with the one of cops and robber were born in the field of distributed computing with moving agents: such as graph search, see for example [21]; intruder capture, see for example [5, 13]; and network decontamination, see for example [18]. A survey of many of these problems can be found in [2].
Finally we recall some studies on complexity issues related to the cops and robber problem for general graphs. In [14] it was proved that determining the cop number is EXPTIMEcomplete if the initial positions of cops and robber are given, and in [16] it has been shown that the problem is EXPTIMEcomplete without those restrictions. In fact, in [12] it is proved that computing the cop number is NPhard. Changing the perspective, in [5] it was shown that determining the number of cops needed for the capture in no more than a given capture time is NPhard, and this result was also found in [6].
1.2 Our contribution
Among a wealth of possibilities, we limit our treatment to the standard game on 2dimensional grids starting from the results of [22], and then extend it to toroidal grids. Our new results are the following. In Section 2 we introduce some new concepts on the capture valid for general graphs, to be used in Section 3 for showing how the results of [22] can be found with a new different approach. In Section 4 this approach is applied to semitori (i.e. grids with toroidal closure in one dimension, also called cylindrical grids) and to tori, for which we give efficient algorithms for the capture that use two or three cops respectively together with a new proof that these numbers are the minimal possible. In Section 5 we then treat the capture problem as a function of any (hence not necessarily minimum) number of cops, giving efficient algorithms also for these cases.
For any given capture time we also determine the minimum number of cops needed for the capture in at most rounds using our algorithms. In this context we adopt the concept of work of an algorithm run by cops in total time inherited from parallel processing [15, 17], discussing the speedup that emerges using a larger number of cops. Note that a related study has been carried out in [19] for butterfly decontamination.
2 Basic model and properties
We adopt the basic model of the cops and robber problem on a simple undirected and connected graph . One or more cops and one robber, collectively called agents, are placed on the vertices of . The game develops in consecutive rounds, each composed of a cops turn followed by a robber turn. In the cops turn each cop may move to an adjacent vertex or stay still. In the robber turn, the robber may move to an adjacent vertex or stay still. The game is over when a cop reaches the vertex of the robber.
The initial positions of the cops are arbitrarily chosen, then the initial position of the robber is chosen accordingly. The aim of the cops is capturing the robber in a number of rounds as small as possible, called capture time ; while the robber tries to escape the capture as long as possible. If needed two or more cops can stay on the same vertex and move along the same edge. All agents are aware all the time of the locations of the other agents. , the cop number, denotes the smallest number of cops needed to capture the robber.
As discussed in the following sections we will direct our study to 2dimensional grids, whose bounding edges may also be connected in the form of a semitorus or a torus. However, first we pose some preliminary properties valid for all undirected and connected graphs , partly extending known facts. For a vertex , let denote the set of neighbors of , and let denote the closed set of neighbors. We pose:
Definition 1.
A siege of a vertex is a minimum set of vertices containing cops, such that at least one vertex is in , and . Among all the sieges of , denotes one of these sets of minimal cardinality.
Definition 1 depicts the situation shown in Figure 1, where black and white circles on the graph denote vertices occupied by the cops, or by the robber, respectively. Let the robber be in , and assume that the cops have just been moved into the vertices of . Now the robber has to complete the current round, but whether it moves or stands still it will be captured in the next round. In fact the condition indicates that all the escape routes for the robber have been cut. We immediately have:
Lemma 1.
The robber is captured in round if and only if at round the robber is in a vertex and there is a siege .
A lower bound on the number of cops needed to capture the robber immediately follows from Lemma 1, namely:
Lemma 2.
Let be a vertex for which has minimal cardinality among all the vertices of the graph. Then .
Based on the definition of siege we can also establish a lower bound on the capture time . In fact once the initial positions of the cops have been chosen, we shall determine an initial position and a moving strategy of the robber that forces the cops to make at least a certain number of moves for establishing a siege. For this purpose we pose:
Definition 2.
For a graph and an integer , an eloop is a chordless cycle of e vertices where each vertex of is adjacent to at most one vertex of .
Note that a single cop would chase forever a robber that moves inside an loop. We have:
Lemma 3.
Let the initial positions of the cops be established; let be the initial position of the robber; let be the distances (number of edges in the shortest paths) of from ; and let be the cardinality of a minimal siege for , . We have:
(i) ;
(ii) if belongs to an loop, .
Proof. (i) Since the robber must be reached by one cop, and may stand still until a cop becomes adjacent to it, we have .
(ii) At least rounds are needed to bring to a vertex adjacent to , while the other cops may also move towards the robber. At this point either the robber is surrounded by a siege and the game ends in the next round with ; or the robber completes the current round moving away, in particular to another vertex of the loop that may be one step closer to the other cops. For the capture, must wait the arrival of other cops to set up a siege and may chase the robber along the loop to force it to move further towards the other cops up to a loop vertex . For computing a lower bound, must be at a minimum distance from the other cops, and this happens if the robber moves of further positions after the one reached in the first move when has reached it. Since in a siege cop must be at a distance 2 from the robber, the total number of moves of must be at least , and the final capture move in the siege must be added to this number.
3 Capture on grids
An elegant approach to studying the capture on an grid has been presented in [22], where the grid is treated as the Cartesian product of two paths. This leads to prove that two cops are needed, the capture time is , and this result is optimum. We examine this problem under a different viewpoint, as a basis for studying robber capture on toroidal grids.
Formally an grid is a graph whose vertices are arranged in rows and columns, where each vertex , and is connected to the four vertices , , , , whenever these indices stay inside the closed intervals and respectively. Then the vertices can be divided into three sets, namely: corner vertices, where both the subscripts and have the values 0 or , and 0 or , respectively; border vertices, where one of the subscripts and has the value 0 or , or 0 or , respectively; internal vertices, i.e. all the others. Corner, border, and internal vertices have two, three, and four neighbors each.
If two vertices of a grid are adjacent, the set is empty. If is at a distance two from , the set contains one or two vertices. This implies that the siege has cardinality three if is an internal vertex, or cardinality two if is a border or corner vertex, see Figure 2. This bears some initial consequences.
Since the minimal siege for a grid has cardinality two, the number of cops needed to capture the robber is by Lemma 2, and in fact two cops suffice as already proved in [22]. Moreover Lemma 1 shows that any algorithm using two cops must push the robber to a border or to a corner vertex to establish a siege around it, as three cops would be needed for a siege around an internal vertex. This is what our algorithm will do, capturing the robber in rounds as in [22].
Furthermore it can be easily shown that, wherever the cops are initially placed, there is a vertex where the robber can be placed that is at a distance from the closest cop, or at a distance from the other cop. Since all the vertices of a grid belong to an loop consisting of square cycles of vertices we have , hence by Lemma 3 case (i) or (ii), that confirms the lower bound of [22].
A new concept is the one of the shadow cone of a cop , namely a zone (set of vertices) of the grid ending on the border, from where the robber is impeded by to escape. To this end let be in vertex and consider two straight lines at through that divide the grid into four zones whose borders contain vertices placed on the two lines, called edges of the zone, and vertices placed on the border of the grid, see Figure 3. The shadow cone of is one of the four zones, chosen by . In particular the robber is said to stay within the cone if it stays in the cone but not on one of its edges.
Without loss of generality, let the shadow cone of lay ”below” the cop as shown in Figure 3. Two cases may occur, to which the following Cone Rule applies. Once the shadow cone is established at the beginning of the operations as the one containing the robber, the role of the Cone Rule is to keep the robber in the cone, possibly moving the cone by one position to compensate the robber’s movement (point 2. of the rule). An important consequence is the following lemma.
CONE RULE The cop is in vertex , and the robber is in the shadow cone of . Let be the cop’s turn to move. If the robber is within the cone (vertex in Figure 3) the cop moves “down” to vertex thereby reducing the size of the cone while keeping the robber in it. If the robber is on an edge of the cone (e.g. in vertex ) the cop does not move. Let be the robber’s turn to move. If the robber remains in the cone the subsequent cop’s move takes place as specified in points 1. or 1. whichever applies. If the robber moves out of the cone from one of its edges (e.g. from vertex , moving “up” or “to the right”), the cop moves across to vertex thereby shifting its shadow cone by one positions to keep the robber in the cone.
Lemma 4.
By applying the Cone Rule, if the robber reaches an edge of the cone it will never be able to reach the opposite edge.
Proof. For reaching the opposite edge of the cone the robber should traverse the cone, and at each round the cop would become closer to it (point 2. of the cone rule), to become adjacent to the robber in the center of the cone and capture it.
Note that if at each round the robber stands on an edge of the cone, the cop would not be able to reach the robber. In fact two cops , are needed for the capture. We now give the following algorithm GRID that runs in rounds as for the algorithm of [22], but is useful for the discussion that follows on toroidal grids. W.l.o.g. we let , , , , .
To understand how the algorithm works some observations are in order. The cops are initially adjacent, then their cones have a large portion in common but their edges are disjoint, see Figure 4. Then, up to the round in which the siege is established, they move in parallel so their mutual positions do not change. At the beginning the robber is in at least one of the shadow cones and is kept in this condition after each cops’ move. Note that to delay the capture as much as possible the robber must eventually escape from one side of a cone. By Lemma 4, however, it is forced to escape always from the same side until it ends up in a siege, in a grid corner. We can state the following Theorem 1.
algorithm GRID(,)
1. initial positions of the cops :
for even and odd (), or for , place
in and
in ;
for , place is in and is in , see
figure 4.;
for , place is in and is in ;
// assume to work on an grid (the others are treated similarly)
// the shadow cones are chosen so that at least one of them will contain
the robber; assume that they lay below the cops as in Figure 4
2. initial position of the robber:
place the robber in any vertex not adjacent to a cop ;
3. repeat
3.1
if (the robber is in the two cones)
move both cops one step down
3.2
else (the robber is on the edge of a cone but outside the other
cone) or (the robber is outside the two cones)
move both cops horizontally in the direction of the robber ;
move the robber in any way to try to escape from the cops
4. until the robber makes its last move inside a siege;
// the siege is established with the robber in a grid corner (figure 4.c)
5. capture the robber;
Theorem 1.
In a grid two cops can capture the robber in rounds.
Proof. Use algorithm GRID.
(i) Capture. After the execution of one round (steps 3, 4), either the shadow cones become tighter around the robber (step 3.1), or the robber exits from the edge of one cone and moves towards the border of the grid. By Lemma 4 this exit may be repeated in further rounds only from the same edge. Then the robber will be eventually pushed by the cops to the border of the grid, and from there to a corner, surrounded by a siege. Step 5 completes the capture.
(ii) Evaluation of . Each movement of the cops up to establishing a siege reduces by one their distance from a grid corner where the robber is eventually pushed. With the chosen initial displacement, is the maximum distance between a grid corner and the closest cop. Then the siege is reached in rounds and the capture is done in rounds.
4 Capture on toroidal grids
We now extend our study to 2dimensional grids in the form of semitori and tori . In (also called cylinder) a toroidal closure occurs in the first dimension, that is each vertex is connected with by an edge, . In the toroidal closure occurs in both dimensions, that is also each vertex is connected with , . Then semitori have a top and a bottom border and tori have no borders.
From the known results on the cop number for the capture on products of graphs proved in [24] we have that 2 and 3 cops are needed for semitori and for tori, respectively. Based on Lemma 2 we confirm these numbers as lower bounds, give two algorithms for the capture that use 2 and 3 cops respectively, and compare the time required by these algorithms with the lower bound given in Lemma 3.
4.1 Capture on semitori
Consider a with the toroidal closures on the rows, and let to avoid trivial cases. At least two cops are needed since the vertices on the border have a siege of minimum cardinality 2. In fact the following algorithm SGRID uses two cops.
The cops are initially placed in row , and columns 0 and respectively, so that there are two copfree gaps of columns between and , and of columns between and (around the semitorus), see Figure 5.a. A crucial configuration is the one of a presiege where the robber is in vertex , cop is in vertex , and cop is in vertex , see Figure 5.b, so the robber can move only one vertex down and will eventually be pushed to a siege in the bottom row (if the robber is already in the bottom row the presiege is in fact a siege).
algorithm SGRID(,)
1. initial positions of the cops :
place
in ; place
in ;
let be the shadow cones of ;
// assume that are chosen below the cops as in Figure 5.a
2. initial position of the robber :
place the robber in any vertex not adjacent to a cop;
3. repeat
3.1
if ( is outside and )
move and horizontally towards
3.2
else
if ( is within and/or within )
move and down
3.3 else
if ( is on an edge of (resp. )
and outside (rep. ))
move (resp. ) horizontally towards that edge
3.4 else
if ( is on an edge of and on an edge of )
{if (the cops are in different rows)
move down the cop in the highest row
else
move down one of the cops};
3.5 move the robber in any way to try to escape from the cones
4. until the robber makes its last move inside a siege;
// the siege is established with the robber on the lower border of the grid
5. capture the robber;
To understand how algorithm SGRID works observe the following.

If the robber is initially in a gap between the cops and outside both cones it will always remain in that gap. In fact the cops move towards (step 3.1) until is on the edge of a cone and will not be allowed to reach the opposite edge by the Cone Rule that is enforced in steps 3.3 and 3.4. Therefore in the longest chase the robber will be captured on the bottom border, in a column of the larger gap.

If is initially within a cone of a cop it will be kept in this cone by that moves down reducing the size of the cone around at each round (step 3.2). If reaches an edge of the cone, steps 3.3 and 3.4 maintain in the gap where the capture will take place.

If is on an edge of the cone of and not on an edge of the other cone, and escapes from the cone in its turn to move, then moves the cone to recapture in its cone (step 3.1 or 3.3) and the gap between the cops becomes smaller. If is on an edge of both cones and escapes from one or both of them, it is recaptured in one or both cones (step 3.1 or 3.3).

The cops are kept in the same row in steps 3.1, 3.2, and 3.3, and may occupy two adjacent rows in step 3.4. However they will never be at a larger vertical distance, and will regain the same row with a new application of step 3.4.

The cops always move towards , but only one cop moves in a round in steps 3.3 and 3.4. This has an impact on the capture time that is maximized if the robber forces the cops to repeat these two steps as many times as possible.
Theorem 2.
In a semitorus two cops can capture the robber in time:
(i) , for ;
(ii) , for .
Proof. Use algorithm SGRID.
Capture. If the robber is within or outside both cones, the two cops become closer to it with one move, and repeat the round until the robber ends up on the edge of one or both cones. Now one cop moves closer to the robber and the other remains still. This inevitably bring cops and robber in a siege or in a presiege condition, with the robber pushed down to a siege on the border. Then the capture takes place in the next round.
Evaluation of . The cops always move in the direction of the robber, either horizontally or vertically, until the robber is captured in a border vertex , with . Let and respectively denote the sum of the horizontal and of the vertical distances between the initial positions of the two cops and . Note that and are independent of . Letting be the number of rounds respectively executed in steps of the algorithm, the siege is reached in rounds subject to the conditions and , because when the siege is reached the values of and are respectively reduced to 2 and 1. The highest value of then occurs when and are minimized. For this purpose the robber must stay on the edge of a cone and not within the other cone, for as many rounds as possible.
(i) For the robber can force the cops to always apply steps 4.3 and 4.4 if it starts in the lowest vertex of the edge of one of the cones, e.g in vertex , and stays still until the siege is built. The total number of rounds will be then including the last round following the siege, subject to the conditions and , for a total of .
(ii) For the two cones and intersect and the cops will always be able to apply steps 4.1 and/or 4.2 for some times. To reduce and/or as much as possible the robber must start on the lowest vertex on the edge of a cone (say ) and not within the other cone, and stay there until a presiege is built. For such a vertex we have , , with . To build a presiege steps 4.3 and 4.4 are applied in rounds, subject to the conditions , and since is at a vertical distance from both cops. We then have . Once a presiege is built, the robber must move down and step 4.2 is applied until reaches the siege in border in row , in rounds. In total .
Since all the vertices of a grid belong to an loop consisting of square cycles of vertices, a lower bound can be established by Lemma 3 on the capture time on . We have:
Lemma 5.
The capture time in a semitorus admits a lower bound .
Proof. For any vertex of the semitorus there is a vertex whose distance from is at least (e.g this occurs between vertices and ). If is initially placed in , then can be placed in and we have from Lemma 3: .
Letting be the upper bound to given in Theorem 2 we have:
Corollary 1.
In a semitorus the ratio for and for .
Proof. For case (i) of Theorem 2 applies and we have: .
For case (ii) of Theorem 2 applies and we have: .
Corollary 1 shows that if is much greater or is much smaller than , algorithm SGRID tends to be optimal with regard to the capture time.
4.2 Capture on tori
The capture on tori is more difficult as there are no borders where to push the robber. All the vertices now admit a siege of cardinality 3, then at least three cops are needed, see Figure 2. The following capture algorithm TGRID calls the procedures GUARD and CHASE and uses three cops with shadow cones .
Without loss of generality we define the algorithm for (simply exchange rows with columns if ), and let and to avoid trivial cases. Place all the cops in row , and in columns 0, , and , respectively (see Figure 6). Note that initially there is a copfree gap of columns between and , and a copfree gap of or columns between and and between and around the torus. Starting with the cops in any row will be the same because we work on a torus. The strategy is to bring a cop to guard the robber (procedure GUARD), that is the cop will reach the column of and then follow if it moves horizontally, so to build a virtual border along the row of the guard that prevents from traversing it. When the guard is established, the other cops start chasing (procedure CHASE) with an immediate extension of algorithm SGRID. Without loss of generality we assume that the initial position of the robber is such that or becomes the guard.
algorithm TGRID(,)
1. initial positions of the cops :
place
in ; place
in ;
place
in ;
let be the shadow cones of ;
2. initial position of the robber :
place in any vertex not adjacent to a cop;
// w.l.o.g let the column of lie in the closed interval

3. GUARD ;
// and move to establish the guard; upon exit is the guard
//
and is in column to start chasing together with ,
//
with =2, =3, or =3, =2
4. CHASE ;
// is captured by with an extension of algorithm SGRID
// is the guard
To understand how algorithm TGRID works observe the following.

After steps 1 and 2 to establish the initial positions of cops and robber, the algorithm is divided in a phase GUARD to establish the guard , with =2 or =3, followed by a phase CHASE of chasing. GUARD is repeated until reaches the column to start the chase together with even if the guard has been established in a previous round.
phase GUARD 1. let be the columns of respectively; ; // =0, =2, =3 respectively denote that: the guard has not // yet been established, or is the guard, or is the guard; 2. repeat // establishing the guard
2.1 if () {; move to the right (=);} 2.2 else if () {; move to the left (=);} 2.3 else {move to the right; move to the left;}
2.4 move the robber in any way to try to escape the guard; 3. until ; 4. if () else ; // now is the guard 5. repeat // cop reaches the initial chasing position 5.1. move horizontally to follow ; 5.2. move horizontally towards column ; 5.3. move the robber in any way; 6. until reaches column ; 
For the CHASE phase all the considerations made for SGRID apply. In particular the shadow cones lie below the cops . As before the robber must start on the edge of a cone to delay the capture as much as possible, but now the best position for it is not below row (Figure 6), otherwise and would chase it “from the bottom” of the torus.

When and have established a presiege, must move down. The novelty here is that moves towards in step 1.6, reducing its distance from hence the number of rounds for the capture.
Computing a lower and an upper bound to the capture time of algorithm TGRID implies using floor and ceilings approximations depending on the parity of and , and on the divisibility of by 3. The results are reported in the following Theorem 3.
phase CHASE
1. repeat // chasing with cops and , while is the guard
1.1
if ( is outside and )
move and horizontally towards
1.2
else
if ( is within and/or within )
move and down
1.3 else
if ( is on an edge of (resp. )
and outside (rep. ))
move (resp. ) horizontally towards that edge
1.4 else
if ( is on an edge of and on an edge of )
{if (the cops are in different rows)
move down the cop in the highest row
else
move down one of the cops};
1.5
if ( and are in different columns)
move to the column of
1.6
else
if ( build a presiege)
move from its row to row mod ;
1.7 move the robber in any way to try to escape from the cones ;
2. until the robber makes its last move inside a siege;
// the siege is established with the robber adjacent to
3. capture the robber;
Theorem 3.
In a torus three cops can capture the robber in time such that:
(i) , for ;
(ii) , for .
Proof. Use algorithm TGRID.
Capture. In algorithm GUARD the guard is established by with an obvious procedure, and is brought to column to start the chase with . Depending on the position of the robber, either one or both cops move closer to it in each round until a presiege is inevitably built around , which is then pushed towards to end in a siege, and then is captured.
Evaluation of . The algorithm requires three consecutive times , respectively needed for the guard phase, the construction of a presiege, and the construction of a siege, plus an additional round for final capture. is the time to bring to column , that is at most for . The values of and depend on the value of .
(i) Let . Starting in row , in the lowest vertex on the edge of a cone and not inside the other cone, the robber forces the cops to apply steps 1.3 and 1.4 as many times as possible until a presiege is established in that row while is moved to row , and the robber makes a step down to row . As shown in the proof of Theorem 2, this requires steps 1.3 plus steps 1.4, then we have . At this point there is a gap of copfree rows between the robber and , with . From now on and move down pushing down, and moves up, until becomes equal to zero or to one and a siege is established. Since at each round the value of decreases by two we have . We have . With easy approximations to substitute floor and ceiling operators we obtain the bounds specified in the theorem.
(ii) Let . Even in this case the robber must start on the lowest possible row on the edge of a cone and not inside the other cone to force the cops to apply steps 1.3 and 1.4 as many times as possible, but the value of is smaller than in case (i) because the cones have a larger intersection. We have for even, or for odd (note that now does not depend on ). So steps 1.3 plus steps 1.4 are required in the first case, that is for even; or steps 1.3 plus steps 1.4 are required in the second case, that is for odd. The robber is now pushed down along a gap of copfree rows, with for even, or for odd, and the siege is reached in rounds. Also here we have , and with easy approximations we obtain the lower and upper bounds specified in the theorem, respectively computed for odd and even.
For of Figure 6, case (i) of Theorem 3 applies and we have , that is since must be an integer. Computing without approximation, using the exact values shown in the proof of the theorem, we have hence .
We can establish a lower bound on the capture time in a torus identical to the one of Lemma 5, namely:
Lemma 6.
The capture time in a torus admits a lower bound .
Proof. For any vertex of a torus there is a vertex in a 4loop whose distance from is exactly . If cop is initially placed in , then can be placed in , and we have from Lemma 3: .
Letting be the value of given in Theorem 3 we immediately have:
Corollary 2.
In a torus the ratio for and for .
It is worth noting that letting , new values for are simply built from the ones of Theorem 3 exchanging with , while the lower bound of Lemma 6 holds unchanged. So the first statement of Corollary 2 is rephrased as: for . Comparing all these results with the ones found in Theorem 2 and Corollary 1 for semitori we see that both algorithms improve performance for increasing difference of the grid dimensions. The reason why algorithm SGRID performs comparatively better than TGRID depends in the latter on guard phase and on the necessity of pushing the robber towards the guard that is at a larger distance than the border of a semitorus.
5 Using larger teams of cops
The cops and robber problem is traditionally focused on studying the minimum number of cops needed for capturing a robber in a given family of graphs, and on the algorithms to successfully attain the capture. Let us now take a new approach, discussing how the capture time decreases using an increasing number of cops, and conversely which is the minimum number of cops needed to attain the capture within a given time.
This approach has a twofold purpose. On one hand, the possibility of employing the cops immediately in a new chase when they have completed their previous job. For example assume that a capture can be done by 2 cops in 8 rounds, and by 4 cops in 3 rounds. If 4 cops are available, 2 robbers can be captured in 8 rounds with two parallel chases with 2 cops each, or in 6 rounds with two sequential chases with 4 cops each. Depending on the requests of the problem the latter approach may be preferred. The second purpose is completing a job within a required time when a smaller team of cops cannot meet that deadline.
For this new approach we inherit the concept of speedup introduced in parallel processing, where the work of a process carried out by agents in time is defined as , and the speedup between the actions of over agents to catch the robber is defined as . If the algorithms run by the two teams of and agents are provably optimal, the speedup is an important measure of the efficiency of parallelism. Referring to the cops and robber problem, the speedup is a measure of the gain obtained using an increasing number of cops with the best available algorithms. In this paper we obviously direct our investigation to twodimensional grids, semitori, and tori.
5.1 cops on a grid
Let us consider the case of cops on a grid , with to avoid trivial cases. W.l.o.g let . A new algorithm GRIDK can be designed as an extension of algorithm GRID, taking even. The structure of GRIDK is given below, limited to its main lines for brevity. Still this formulation is sufficient for computing the capture time.
The cops are placed in pairs of adjacent cops, with . The cops of each pair are placed in rows and , and the pairs are almost equally spaced, with and copfree columns between them, except for the leftmost and the rightmost groups of columns of almost equal sizes whose sum is again or , for example see Figure 7 for .
In algorithm GRIDK the robber may be captured on a left or on a right corner of the grid by the leftmost or by the rightmost pair of cops; or it may be captured on the top or on the bottom border by two cops, one from each pair, in a vertex between the two pairs. We have:
Theorem 4.
In a grid , cops, with , can capture the robber in rounds.
Proof. Use algorithm GRIDK. If the robber is chased by repetitions of steps 1 and 2 it is captured in a corner in rounds as in algorithm GRID. If the robber is chased by repetitions of steps 1 and 3, it is pushed to the border in an almost central vertex between the pairs and is captured there, again in rounds.
ALGORITHM GRIDK (SCHEMATIC)
Let the cones lay below the cops.
If the robber is in both cones of a pair (vertex of Figure 7), all the cops move vertically towards
If is in a column at the right (resp. left) of the rightmost (resp. leftmost) pair of cops and is not within a cone of the pair (vertices ,w of the Figure), is captured in a corner as in algorithm GRID by repetitions of steps 1 and 2.
If is in a column between two pairs of cops and not within a cone (vertices of the figure), both pairs of cops move horizontally towards until it ends in a pair of cones. Then steps 1 and 3 are repeated until is pushed in a siege on the border with the concurrence of both pairs of cops.
For example in of Figure 7 we have . The longest capture takes place in the rightmost corner, or in the border between the two pairs of cops. Note that, if computed with , the result of Theorem 4 does not coincide with the one of Theorem 1 for odd and even.
We now compute the minimum number of cops needed to attain the capture within a given time using algorithm GRIDK, that is the best algorithm known for this problem. From Theorem 4 we have and we easily derive:
valid for . (1)
In the example of Figure 7 we have seen that 4 cops capture the robber in 4 rounds. If we wish to attain the capture in rounds we must employ cops, that is 3 pairs of cops are needed.
The speedup for cops versus 2 cops is given by:
.
For example for a grid we have with , hence . Applying algorithm GRIDK with we have and , so the speedup is one in this case.
5.2 cops on a semitorus
Let us now consider the case of cops on a semitorus , with to avoid trivial cases. A new algorithm SGRIDK, whose main lines are given below, can be built as an immediate extension of algorithm SGRID. This simplified formulation is however sufficient for computing the capture time.
ALGORITHM SGRIDK (SCHEMATIC)
Let the chase take place in the cones below the cops.
Until the robber is within one or more cones, all the cops move down vertically. This eventually brings on the edge of a cone.
Until is in the gap between two consecutive cops and outside of their cones, the two cops move horizontally towards . This eventually brings on the edge of a cone.
If is on the edge of a cone, and therefore between two consecutive cops, it is captured by these two cops with algorithm SGRID.
As for algorithm SGRID, the cops are placed in row , with in column 0 and the others almost equally spaced along the row, with a gap between two consecutive cops of or copfree columns according to the value of . In the longest chase of algorithm SGRIDK the robber is captured by two cops separated by a larger gap.
Using algorithm SGRIDK, and considering the column gap instead of between the leftmost cops in the proof of Theorem 2, we have with straightforward computation:
Theorem 5.
In a semitorus cops can capture the robber in time:
(i) , for ;
(ii) , for .
Theorem 5 is an immediate extension of Theorem 2 and coincides with it for . We now compute the minimum number of cops needed to attain the capture within a given time using algorithm SGRIDK. From Theorem 5 we have:
Case (i) , hence , for even; (2.1)
, hence , for odd. (2.2)
Case (ii) , hence , for even; (2.3)
, hence , for odd. (2.4)
In relations (2.1) to (2.4) note that, for a given the desired time must be large enough to make the denominator greater than zero.
As an example of speedup consider the semitorus in Figure 8. For (Figure 5) we have already found hence . For , case (ii) of Theorem 5 applies and we have , hence and . This is a case of superlinear speedup computed with the best available algorithms for semitori. Recall that the speedup may be different and clearly more significant using provably optimal algorithms if they were known.
5.3 cops on a torus
Let us now consider cops working on a torus with . W.l.o.g. let , and let to avoid trivial cases. As before a schematic formulation of TGRIDK, given as an immediate extension of TGRID, is sufficient for computing the capture time.
The cops are placed in row 0 in the order , with the first in column 0 and the others almost equally spaced along the row, with a gap between two consecutive cops of or copfree columns according to the value of . Assume that the larger gaps occur between the cops at the beginning of the sequence, so and respectively start in columns and . W.l.o.g. assume that cop will be the guard and the longest chase will be done by and .
ALGORITHM TGRIDK (SCHEMATIC)
Let the robber start in the gap between and .
GUARD PHASE.
moves rightwards and move leftwards, concurrently in row 0, until they reach their proper positions for the chase. eventually becomes the guard and the phase ends when reaches column .
CHASE PHASE.
2.1 While the robber is within one or more cones, all the cops except move down vertically. This eventually brings on the edge of a cone. If needed, moves horizontally to stay in the same column of .
2.2 While is in the gap between two consecutive cops (assume that they are and for the longest chase), or on the edge of one or both cones, it is captured by these two cops as in the CHASE phase of algorithm TGRID run by them together with the guard .
In the guard phase of algorithm TGRIDK the guard is established by and the cops are brought to almost equally spaced positions in row 0 (the new gaps will be or ) to be prepared for chasing the robber (which, in the longest chase, will be captured by and ). For this purpose move together rightwards for the needed number of steps, depending on the sizes of the gaps between the cops. In any case is placed in column with moves, and no other cop makes more moves in this phase of the algorithm. In the chase phase of the algorithm, first the robber is confined in a set of columns between two cops (say and ), then is chased as in TGRID in this narrower section of the torus.
For torus with , the initial positions of the cops and the robber, and their evolution according to algorithm TGRIDK, are indicated in Figure 9. The analysis of TGRIDK is an extension of the one of TGRID. We have:
Theorem 6.
In a torus , cops can capture the robber in time such that:
(i) , for ;
(ii)
Comments
There are no comments yet.