Optimal and Resilient Pheromone Utilization in Ant Foraging

Optimal and Resilient Pheromone Utilization in Ant Foraging

Yehuda Afek {afek, roman.kecher, moshe.sulamy}@cs.tau.ac.il
Tel-Aviv University
Roman Kecher {afek, roman.kecher, moshe.sulamy}@cs.tau.ac.il
Tel-Aviv University
Moshe Sulamy {afek, roman.kecher, moshe.sulamy}@cs.tau.ac.il
Tel-Aviv University
July 14, 2019

Pheromones are a chemical substance produced and released by ants as means of communication. In this work we present the minimum amount of pheromones necessary and sufficient for a colony of ants (identical mobile agents) to deterministically find a food source (treasure), assuming that each ant has the computational capabilities of either a Finite State Machine (FSM) or a Turing Machine (TM). In addition, we provide pheromone-based foraging algorithms capable of handling fail-stop faults.

In more detail, we consider the case where identical ants, initially located at the center (nest) of an infinite two-dimensional grid and communicate only through pheromones, perform a collaborative search for an adversarially hidden treasure placed at an unknown distance . We begin by proving a tight lower bound of on the amount of pheromones required by any number of FSM based ants to complete the search, and continue to reduce the lower bound to for the stronger ants modeled as TM. We provide algorithms which match the aforementioned lower bounds, and still terminate in optimal time, under both the synchronous and asynchronous models. Furthermore, we consider a more realistic setting, where an unknown number of ants may fail-stop at any time; we provide fault-tolerant FSM algorithms (synchronous and asynchronous), that terminate in rounds and emit no more than the same asymptotic minimum number of pheromones overall.

1 Introduction

While performing mostly simple and local computations, ants solve complicated problems in collaboration. Such collaborative work, with limited communication and computational power, is at the heart of distributed computing. By studying and understanding the behavior of ants from a distributed computing perspective, progress and insights can be made for both distributed computing and biology.

One task that is successfully solved by ants on a daily basis is that of foraging; this is the basis for the Ants Nearby Treasure Search (ANTS) problem, first presented by Feinerman, Korman, Lotker and Sereni [6]. In the original ANTS problem, identical ants start at the origin (i.e., the nest) of an infinite grid, and their goal is to find a treasure (i.e., the food) which is located at an unknown (Manhattan) distance from the nest. The ants are modeled as randomized mobile Turing Machines (henceforth TM), traveling along , and it is assumed that they cannot communicate after leaving the nest. Once any ant steps onto the grid point containing the food, the food is found and the algorithm terminates. The lower bound on the time required to find the food, , is also noted.

However, it is known that real ants have limited means of communication; for instance, ants are able to produce, emit and sense pheromones [9]. This work considers a variant of the aforementioned ANTS problem, in which ants are able to communicate only through pheromones [11]. We present a tight lower bound of on the number of pheromones necessary by deterministic mobile Finite State Machines (henceforth FSM) to guarantee a successful search, and show that this amount of pheromones is in fact enough to complete the search in optimal time. Moreover, fault-tolerant synchronous and asynchronous FSM algorithms are provided for the case where an unknown number of the ants may fail-stop at any time; these algorithms terminate in time, whilst only consuming the same number of pheromones. In an attempt to reduce the number of required pheromones, stronger ants modeled as TM are considered. While TM ants do not have to use pheromones to conduct a thorough search, it is shown that pheromones are required in order to achieve an optimal time search.


The rest of this document is organized as follows. The current section proceeds with a summary of related and previous work on the ANTS problem, and concludes with a concise summary of the contributions of this research. Section 4 covers the models in use: it describes the general model of ANTS with pheromones, the complexity measures employed throughout this work, and the synchronous and asynchronous scheduling models. Section 5 presents tight lower bounds on the amount of pheromones required by FSM ants (synchronous and asynchronous), and section 6 provides fault-tolerant FSM algorithms. Section 9 reduces the lower bound for TM ants, while still maintaining an optimal run-time. Section 12 summarizes this work and its results.

2 Related work

Feinerman, Korman, Lotker and Sereni have introduced the original ANTS problem in [6]. They have shown that if each ant is a randomized TM which cannot communicate after leaving the nest, then matching the optimal runtime of requires that ants have knowledge or a constant approximation of , their total number. In a later work, Feinerman and Korman [5] have also analyzed the trade-offs between the exact memory size available to each individual agent (ant) and the best achievable run-time.

Another line of work, presented in [3, 4, 2, 10], assumes that when ants are sufficiently close to each other, they are able to communicate through messages of constant size; in [3, 4] Emek et al. model ants as mobile (probabilistic) FSM with said communication capabilities, and show that the optimal run-time can be achieved in this model as well. The successful termination of these distributed algorithms relies on the communication patterns of the ants; therefore, Emek et al. also discuss the minimum number of ants that are required [2]. Finally, a fault-tolerant FSM algorithm is presented by Langner et al. in [10], but only for the synchronous case. This algorithm assumes that an unknown number of the ants may fail-stop, and it is shown that it terminates in time with high probability.

A more realistic model of communication is based on the capability of ants to use chemical signals called pheromones, that can be emitted by one ant and sensed by another [9]. A corresponding model of the ANTS problem, which supports communication through pheromones, has been introduced by Lenzen and Radeva [11]. In that model, each ant is a deterministic mobile FSM, that is able to emit and sense pheromones. It is assumed that ants emit a pheromone on every explored spot, and so an algorithm that uses pheromones and terminates in optimal time is presented.

Pheromones are a biological resource which might be limited in quantity or costly to use in nature. Therefore, in our model [1] ants are able to choose whether or not to emit a pheromone upon exploring a grid point. Thus, analyzing the minimum amount of pheromones that is required in order to find the food, under various computational models, is a natural research direction.

The use of pheromones or similar chemical signals during the foraging process of real biologic ants is still not entirely clear, and constitutes an active research area in biology. Some reports suggest that ants use pheromones only to mark the trail to a food item that has been already found, while other observations support the claim that pheromones do, in fact, control the foraging direction [8, 7]. In this work we consider this question from a theoretic distributed computing perspective, but still hope that it may help with understanding real ants.

3 Contributions

The contributions of this work are as follows:


The model of Lenzen and Radeva [11] is extended in a natural direction, by allowing ants to choose whether to emit pheromones or not. Communication through pheromones is modeled carefully for both synchronous and asynchronous settings.

Lower bounds

It is shown that FSM ants must use pheromones (where is the distance to the food) to complete the search, and TM ants must use pheromones (where is the total number of ants) to find the treasure in an optimal amount of time.

Upper bounds

Four different algorithms are provided, for each combination of FSM/TM ants and synchronous/asynchronous settings. These algorithms terminate in optimal time and require pheromones for FSM and for TM ants, proving the lower bounds to be tight.


Another set of two (synchronous and asynchronous FSM) algorithms is provided for the case where of the ants may fail-stop at any time. These algorithms terminate in time, whilst only requiring the same number of pheromones.

One interesting quality of the algorithms presented in this work, is that they do not differ that much; we have made a big effort to keep the algorithms as similar as possible, and have constructed one on top of the other in an incremental manner wherever possible.

4 Model

We consider the ANTS problem in which identical mobile agents (ants) are traveling along the discrete two-dimensional grid , foraging for food. All ants start at the center of the grid, a point which is also referred to as the nest. A single food source (treasure) is located at some distance from the nest, such that the position of the treasure and the distance to it are unknown. Manhattan distance is used, such that a treasure at is said to be at distance . Each ant executes the same algorithm until the treasure is found, at which point the distributed search process terminates successfully. We only consider uniform algorithms, i.e. every single algorithm should work for all .

The only way in which ants may communicate is through pheromones; under the proposed model even two ants sharing the same exact location are not aware of this fact. Every ant is able to emit a pheromone in its current location, as well as sense a pheromone previously emitted at that spot by others (including itself). An ant can choose whether to emit a pheromone, or not. There is only a single type of pheromone, and once a pheromone is emitted it will stay at that grid point forever. We assume that the quantity of the pheromones is unlimited, but discuss the required amount throughout this paper.

We start by considering deterministic FSM ants with a constant size memory, and proceed to consider stronger deterministic TM ants with unbounded amount of memory. However, even in the case of TM ants, we actually only require space111Assuming , which will be a prominent assumption throughout this work..


Execution advances with ants performing steps. A single, atomic step of an ant consists of the following sequence: (1) sense if a pheromone exists in the current location, (2) use all local information (current state, memory contents and pheromone sensing) to decide on the current actions (pheromone emission and move direction222Four move directions are labeled as North, East, South and West. Holding current position is also possible.) and state transition, and (3) execute the optional pheromone emission and then the move, and update state. The arrival to the next grid point and the repeated execution from (1) are considered to be part of the next step.

Both synchronous and asynchronous scheduling models are considered. In the asynchronous case, an adversary scheduler repeatedly selects a single ant to perform one step. It follows that in the asynchronous case, sensing and emitting a pheromone on the current location of an ant is atomic, and is carried out entirely in a single step.

In the synchronous scheduling model, all the active ants perform a single step together in each round of the algorithm. Therefore, two ants standing on the same spot will both notice the existence, or lack thereof, of a pheromone at the beginning of their steps, and might make the same decisions from that point onwards. They will not have any means to break the symmetry in this case. Due to this issue, in the synchronous case we will assume a gradual release of the ants from the nest at , such that no two ants leave the nest at the same time333Mechanisms that achieve this are referred to as emission schemes[3, 4], and are beyond the scope of this work.. Our analysis of the expected run time (which is measured in rounds, defined below) will assume this ”nest emission” time to be negligible compared to the total search time.


The running-time of the proposed algorithms is measured in rounds. The definition is the same for both scheduling models: a round ends as soon as every ant took at least a single step. Note that this definition is not equivalent to defining the number of rounds to be the number of steps taken by the slowest ant [11] (the ant who has made the least number of steps), because this alternative definition is absolutely indifferent to the scheduling order in the asynchronous case.

Besides time, the other quantity this work is concerned with, is the total amount of pheromones that are emitted during the execution of an algorithm.


The concept of faults manifests itself in reality, when a number of ants might stop participating in a foraging process [10], e.g., due to an ant eater performing its natural task. To model this possibility, we assume that an unknown number of ants may fail-stop at any given moment during the execution of an algorithm. When devising fault-tolerant algorithms we require that the treasure is still guaranteed to be found, in spite of any such failures.

5 The case of FSM Ants

This section is concerned with ants modeled as mobile deterministic FSM, that are able to emit and sense pheromones. We begin by proving a lower bound on the number of pheromones that must be utilized in order to conduct a successful search for a food source, and follow with algorithms (both synchronous and asynchronous) that achieve this bound, but still terminate in optimal time.

5.1 Lower Bound

Theorem 5.1.

A deterministic FSM ants algorithm must emit at least pheromones to find a treasure located at arbitrary distance .


Let us assume by contradiction that an FSM exists which is able to find a treasure located at any distance , while only emitting pheromones. Let be the number of different states in .

Definition 5.2 (Layer).

A layer is the set of grid cells at distance from the origin, i.e., .

A distance exists, such that during ’s search for a treasure located at that distance, there are consecutive pheromone-free layers. Otherwise, at least pheromones are emitted for every , in contradiction to the assumption. Let us denote these pheromone-free layers as layers (where ).

Consider the first time an ant arrives at layer , and let be the state in which it arrives at layer . If we look at the last locations (the last one being at ) this ant has visited, all of them are within layers to . By the pigeon-hole principle there must be a loop, and the last state () is part of it. Therefore, state must be reached at least once more in the last steps. Assume w.l.o.g., that happens in layer . So we have a path starting at a location in layer with state and ending at a location in with the same state. During this path the FSM does not encounter nor emit any pheromones, and therefore this path will now repeat itself forever.

The FSM repeating this path ad infinitum will not find a treasure located outside of the repeated pattern formed by this path, in contradiction to the original assumption. ∎

Observation 5.3.

Theorem 5.1 holds for a single ant. Applying the same argument to a group of ants implies that unless pheromones are emitted, each of the ants will eventually converge to repeating some (possibly distinct) pattern. Any such patterns cannot cover the whole plain.

Corollary 5.4.

A lower bound on the number of pheromones that must be emitted by deterministic FSM ants, searching for a treasure located at an unknown distance , is pheromones.

5.2 An asynchronous FSM Ant algorithm

Definition 5.5 (Ray).

A ray of pheromones is a set of consecutive grid cells that extend from the nest in a specific direction (north, east, south or west), such that each cell on the ray contains a pheromone. E.g., the northern ray contains the grid cells such that where is the last grid cell that still contains a pheromone. Note that the nest itself, , is not considered to be part of any ray, and remains pheromone-free throughout the algorithm.

Similar to [3], such pheromone rays are utilized as markers that enable FSM ants to perform a spiral shaped search, without having to count.

The asynchronous algorithm is therefore straightforward; an ant first travels along the eastern ray to extend it by an extra pheromone, and then returns back to the nest (which is at the first pheromone-free grid cell at the western end of the ray). It then repeats this process for the southern and western rays. Once the eastern, southern and western rays are extended, the ant travels along the northern ray until the first pheromone-free grid cell. It emits a pheromone at that grid cell and then starts executing zig-zag moves to the south-east (pairs of a step to the south followed by a step to the east) until the eastern ray is encountered, at which point the zig-zag’s direction is changed to south-west, until the southern ray is encountered. The process continues in a similar manner until the layer is fully explored and the ant is back at the northern ray, from which it is able to travel back to the nest. After arriving back at the nest, the ant restarts the process to explore another new layer. This process is repeated until the treasure is eventually found. See algorithm 1 for a more formal description, and figure 1 for an illustration of the process.


















































Figure 1: Visualization of algorithm 1: ray extension and exploration. Circles mark pheromones.
Theorem 5.6.

For any asynchronous FSM ants and a food source located at an arbitrary distance from the nest, algorithm 1 successfully terminates in rounds, using pheromones.


The northern ray is never longer than the eastern, southern or western rays. Therefore, the required pheromone guides will always exist in every explored layer.

Each layer is explored only by a single ant due to the definition of the asynchronous model: only one ant senses the lack of a pheromone and emits one on the first grid cell of each layer (which is part of the northern ray).

Moreover, under the asynchronous model, the number of steps taken by the slowest ant is an upper bound on the total number of rounds. Therefore, we may assume that all ants move at the same pace (once per round), which leads directly to the fact that ants explore layers in rounds, or layers in rounds.

Each layer requires a single pheromone on every ray, which is pheromones per layer. See remark 1 below, which establishes that a total of pheromones is sufficient. ∎

1:while  do
2:     go(east), emit(), go(west) go(dir) repeats step while sensing a pheromone.
3:     go(south), emit(), go(north) emit() emits a pheromone.
4:     go(west), emit(), go(east)
5:     go(north), emit() Four rays extended, ready to explore.
6:     explore(east, south) explore(zig, zag) alternates steps until a pheromone is sensed.
7:     explore(south, west)
8:     explore(west, north)
9:     explore(north, east) New layer explored.
10:     go(south) Back to nest.
11:end while
Algorithm 1 Asynchronous FSM; distributed treasure search.
Remark 1.

There exists a schedule for algorithm 1, in which the ants emit a potentially unbounded number of pheromones (e.g., if the ant that is about to find the treasure is never scheduled to make that crucial step). However, we only consider the minimum required amount of pheromones; i.e., if the ants were not able to emit more than pheromones, the given algorithm would eventually still be able to find the treasure at any location .

At any rate, the fault-tolerant algorithms presented in section 6 overcome this issue altogether.

5.3 A synchronous FSM Ant algorithm

The asynchronous algorithm 1 under-performs in the synchronous case, due to the new risk of collisions: new ants may leave the nest for the first time exactly at the wrong moment, so that they collide with ants passing through the nest after completing an exploration phase. From that point onwards, collided ants will have no way to distinguish one from the other, and will perform the same work. In turn, this analysis concludes a worst case running-time of rounds.

We propose a synchronous algorithm that is similar to the asynchronous one, except for its ability to solve the aforementioned issue. This is based on the observation, that if two ants do not collide when extending the eastern ray, then they never collide; the distance between any two such ants can only increase as the algorithm progresses. Therefore, the ants are divided to two logical groups: newbie ants and veteran ants. An ant is considered a veteran as soon as it starts exploring its first layer, and is a newbie until that point. Both newbie and veteran ants operate exactly as any ant in the asynchronous case, except for a subtle difference in the way the eastern ray is extended.

1:while  ==  do
2:     if  ==  then Newbie ants.
3:          step(east)
4:          if sense() ==  then emit() end if sense() checks for pheromones.
5:          step(north) Go north anyway to keep gaps.
6:          idle() Wait an extra round for veterans.
7:          if sense() ==  then emit(),  end if
8:          step(south) Back to ray, and to nest if extended.
9:     else Veteran ants.
10:          step(east)
11:          if sense() ==  then
12:               emit(),
13:               step(north), emit()
14:               step(south)
15:          end if
16:     end if
17:end while
Algorithm 2 Synchronous FSM; eastern ray extension. Rest follows algorithm 1.

When veteran ants attempt to extend the eastern ray, they emit two pheromones: a pheromone on the grid cell , which extends the eastern ray (as before), and another one on the grid cell directly to the north. This mechanism allows newbie ants, during their similar attempt to extend the eastern ray, to wait a single round for that extra northern pheromone to appear, which will indicate a possible collision with a veteran ant; if a collision is detected, the newbie ant will proceed to the next pheromone-free grid cell on the eastern ray, to try again. Note that newbie ants should perform this check of the northern grid cells in every step on the eastern ray – this is in order to keep newbie ants from colliding with other newbies, by maintaining the gaps introduced by the gradual emission process of the ants. If there’s no collision, newbie ants will emit the second pheromone exactly as would veterans, so that the first part of the exploration phase would always look for two consecutive pheromones to alter its zig-zag exploration pattern. A formal description of the key modification in the extension of the eastern ray is provided in algorithm 2.

Theorem 5.7.

For any synchronous FSM ants and a food source located at an arbitrary distance from the nest, algorithm 2 successfully terminates in rounds, using pheromones.


Layer exploration phase is correct for the same reasons as before; the northern ray is never longer than any other ray.

The most important new property that has to be proven, is that there are no collisions, i.e., every ant explores distinct layers. This is the case because: (1) the gaps between newbie ants are kept, so newbies do not collide with other newbies, (2) newbie ants do not collide with veteran ants due to the new signaling mechanism, which introduces gaps between them, and (3) veteran ants cannot collide with other veteran ants because the gaps between veterans can only grow: if ant starts exploring layer before ant starts layer , then , and will finish exploring before would finish (at which point ant would head back to the nest, and remain ahead of ant ). This induction holds initially since every veteran starts exploring its first layer as a newbie. Therefore, no two ants perform the same work, and the algorithm is both complete and correct. ∎

6 The case of Fault-Tolerant Ants

This section extends the analysis of mobile deterministic FSM ants, by considering the case where ants may fail-stop at any point during the search. We propose synchronous and asynchronous fault-tolerant algorithms that consume pheromones as before, but still guarantee successful termination. The presented algorithms execute in rounds, which presents an additional price of rounds to handle failures.

7 An asynchronous Fault-Tolerant FSM Ant algorithm

When ants may fail-stop, the asynchronous algorithm 1 may fail to find the food source; e.g., the ant that starts exploring layer , which contains the food, may die just before finding it. In this case, no other ant will ever explore layer again.

To recap, the aforementioned algorithm proceeds in phases, for each ant: first, there is the ray extension phase, that extends the four rays, and then there is the exploration phase, that explores a certain layer and relies on the pheromones emitted during the first phase. These two phases are repeated until the food is found. To present a fault-tolerant algorithm, we modify the exploration phase and introduce a verification phase right after it. These two modifications are described below.

After finishing an exploration phase, an ant emits an extra pheromone on the newly explored layer, at the grid cell directly to the east of the northern ray, i.e., as the final step in exploring layer , a pheromone is emitted on grid cell . This pheromone indicates that the layer has been fully explored. Once this pheromone is emitted and the ant is back at the northern ray, it initiates the verification phase; it travels along the northern ray back to the nest, and verifies that every layer on that path is fully explored – re-exploring every incomplete layer. A formal description is provided in algorithm 3.

1:while sense() ==  do Still on the northern ray, not at the nest.
2:     step(east)
3:     if sense() ==  then Found unfinished layer.
4:          explore_layer_fsm() Explore (using pheromones) and get back to northern ray.
5:          step(east) Mark layer as completed,
6:          emit() by emitting a pheromone.
7:     end if
8:     step(west) Back to northern ray.
9:     step(south)
10:end while
Algorithm 3 Asynchronous Fault-Tolerant FSM; verification phase. Rest follows algorithm 1.
Theorem 7.1.

For any asynchronous FSM ants, any ants fail-stopping during the algorithm, and a food source located at an arbitrary distance from the nest, algorithm 3 successfully terminates in rounds, using pheromones.


An ant proceeds to explore a new layer after completing layer , only if it has verified that all layers are fully explored. This proves that no more than pheromones will be emitted444Thereby resolving remark 1., and that every layer will eventually be explored.

To analyze the running-time, let us begin by assuming that no failures are possible. Under this assumption, consider the case where an ant that has just finished exploring layer also re-explores layers during its verification phase, whereas is the last layer ant explores before reaching the nest. When ant started exploring , there was already another ant at layer (otherwise ant wouldn’t proceed). Since , it then follows that ant has done less than steps by the time that ant has reached layer (otherwise layer would have already been fully explored), and therefore no more than rounds could have passed. Hence, to conclude: without fail-stops, every rounds, every ant explores a new layer. Overall, it takes no more than rounds for the ants to find the treasure in this case.

The previous analysis holds for every set of layers which has been successfully explored without any ant failing in it. When an ant that explores layer fails, then we have, according to the previous analysis: after at most rounds all the ants will get to layer , and after another rounds the layer will be fully explored. So, in the worst case, each fail-stop event is associated with extra rounds, which amounts to at most additional rounds. ∎

8 A synchronous Fault-Tolerant FSM Ant algorithm

To handle the added risk of fail-stops, the synchronous algorithm 2 has to be extended in the same manner as presented in the asynchronous fault-tolerant algorithm 3. That is, the synchronous algorithm (presented in section 5.3), which uses newbie and veteran ants in order to prevent collisions, and progresses in alternating phases of ray extension and exploration, should now be updated to mark explored layers with an extra pheromone, and has to conduct a verification phase after each exploration. A full description is provided in algorithm 4.

1: Synchronous ants start as newbies.
2:while  do
3:      Algorithm 2; eastern ray extension.
4:     while  ==  do
5:          if  ==  then Newbie ants.
6:               step(east)
7:               if sense() ==  then emit() end if sense() and emit() pheromones.
8:               step(north) Go north anyway to keep gaps.
9:               idle() Wait an extra round for veterans.
10:               if sense() ==  then emit(),  end if
11:               step(south) Back to ray, and to nest if extended.
12:          else Veteran ants.
13:               step(east)
14:               if sense() ==  then
15:                    emit(),
16:                    step(north), emit()
17:                    step(south)
18:               end if
19:          end if
20:     end while
21:     go(west) go(dir) repeats step while sensing a pheromone.
22:     go(south), emit(), go(north)
23:     go(west), emit(), go(east)
24:     go(north), emit() Four rays extended, ready to explore. Now back at the northern ray.
25:     explore_layer_fsm() Explore (zigzags with pheromones), get back to northern ray.
26:     step(east), emit(), step(west) Mark new layer as explored.
27:     step(south) Still on the northern ray.
28:     while sense() ==  do Algorithm 3; verification phase.
29:          step(east)
30:          if sense() ==  then Found unfinished layer.
31:               explore_layer_fsm()
32:               step(east) Mark layer as completed,
33:               emit() by emitting a pheromone.
34:          end if
35:          step(west) Back to northern ray.
36:          step(south)
37:     end while
38:end while
Algorithm 4 Synchronous Fault-Tolerant FSM; combination of algorithms 2 and 3.
Theorem 8.1.

For any synchronous FSM ants, any ants fail-stopping during the algorithm, and a food source located at an arbitrary distance from the nest, algorithm 4 successfully terminates in rounds, using pheromones.


As shown in the proof for theorem 7.1, every layer is eventually explored, and at most pheromones are emitted during the search.

The main new risk introduced by the synchronous model is that of collisions between ants, i.e., ants performing the same work at the same rounds. The proposed algorithm, in fact, does not allow such collisions to occur; newbie and veteran ants cannot collide during the ray extension or exploration phases for the same reasons noted in the proof for theorem 5.7. For a collision to occur during the verification phase, ant has to finish exploring a layer , and then converge with another ant on its way to the nest along the northern ray. But ant checks every layer to make sure that it is explored - so it either senses the pheromone at , in which case ant is strictly after ant , or it does not, in which case ant also explores layer , but ant is already done with it.

The key point is to observe the round in which ant marks with a pheromone: if ant arrives to that cell strictly after or strictly before that round, then there is no collision. Otherwise both ants and arrive to at the same round – but that happens when is at the end of its exploration phase (it is about to emit a pheromone and get back to the northern ray), and senses the lack of a pheromone and heads to explore layer . Hence there is no collision.

Since there are no collisions, every ant explores new layers as long as there are no failures. Every failure ”wastes” at most rounds, which amounts to no more than extra rounds overall. ∎

9 The case of TM Ants

In an attempt to further reduce the number of required pheromones, a stronger computational model is considered. In this section, every ant has the computational capabilities of a Turing Machine, but actually requires no more than memory bits. We assume that there are no faults nor failures.

10 Lower Bound

A single TM ant can find the treasure with no pheromones in time, by performing a spiral shaped search. However, we argue that pheromones must be used for the search to be cooperative, and complete in optimal time.

Theorem 10.1.

Performing a distributed search for a treasure at an unknown distance by TM ants in rounds under the synchronous model, requires pheromones.


Assume by contradiction that is a TM ant which is able to find a treasure at any distance in rounds with any ants, while only using pheromones. We will devise a specific ant emission scheme, dependent on , which does not achieve the assumed running-time – thus reaching a contradiction.

Let us analyze the behavior of a group of ants implemented by TM . We start by emitting only one ant at round . That ant must stop emitting pheromones at some round (perhaps right away), denoted as . only emits pheromones, therefore must exist. We emit the second ant at round , and again wait until round when both ants finish emitting all of their pheromones. We emit the third ant at time and repeat the process until we get to emit the first ant which does not emit any pheromones: ant , emitted at time . There is at least one such ant, since the total number of pheromones is . Notice that two invariants hold once ant is emitted: (i) no extra pheromones will be emitted by all ants according to our assumption (their view of the world does not change), and (ii) all ants operate exactly as ant , since they are deterministic and share a common view of the world. Also worth noting is that , for all , are constants which only depend on the specification of TM .

We now increase the number of ants and keep emitting them, a single ant per round, until a total of ants have been emitted. Ants know neither nor , therefore the aforementioned behavior does not change. However, since all (at least) ants operate in the same way, there exists some such that it takes the ants rounds to find the treasure, in contradiction to our assumption. ∎

Theorem 10.2.

Performing a distributed search for a treasure at an unknown distance by TM ants in rounds under the asynchronous model, requires pheromones.


Let us assume by contradiction that is a TM ant that finds a treasure at any distance in asynchronous rounds for any ants, while using no more than pheromones.

Let there be some ant group size , distance and scheduling , such that it takes the ants rounds and less than pheromones to find the treasure. This is a tight lower bound on the running-time, therefore there must exist such a scenario. There is at least one ant which has not emitted any pheromones throughout the run; let us denote one such ant as .

Consider a different group of ants, where some ants are scheduled exactly as in schedule and the other ants are scheduled to take a single step each, one after the other, right after each step of ant . Ant emits no pheromones, so it shares its view of the world with the ants that follow it, and all these ants operate exactly the same (due to being deterministic). The number of rounds remains , in contradiction to our assumptions. ∎

11 Asynchronous and synchronous TM Ant algorithms

The same algorithm works for both the asynchronous and synchronous models. The main idea is to perform a renaming of the ants using pheromones, followed by a static partition of the search space, which is based on the names (IDs) of the ants. We use pheromones to provide each ant with: (1) a unique id , and (2) an estimate on the total number of participating ants. Given these two numbers, each ant is able to compute all layers , which it has to explore.

The full algorithm is as follows. Upon leaving the nest, each ant travels along the northern ray until it encounters the first pheromone-free grid cell, . It emits a pheromone at that grid cell and sets its . At this point its estimate of the total number of participating ants is . The ant then starts exploring layers . After exploring every new layer, the ant returns to the northern ray to check for new pheromones; if it discovers that the first (closest to the nest) pheromone-free grid cell on the northern ray is , it updates and restarts the search from layer . A formal definition is provided in algorithm 5.

1:, , step(north)
2:while sense() ==  do Searching for the first pheromone-free grid cell.
3:     step(north)
4:     ,
5:end while
7:while  do Repeating exploration phase.
8:     explore_layer_tm() Explore by counting steps.
9:     if update_total() then If a new pheromone has appeared.
11:     end if
12:      Proceed to next layer.
13:end while
Algorithm 5 Asynchronous and synchronous TM; distributed treasure search.
Theorem 11.1.

For any asynchronous/synchronous TM ants and a food source located at an arbitrary distance from the nest, algorithm 5 terminates in rounds, using pheromones.


Each ant only emits a single pheromone, which amounts to pheromones overall.

For the asynchronous case, we have previously established the assumption that each ant makes a single step in every round (otherwise, the total number of rounds may only decrease). Therefore, each ant explores at least one new layer every steps, and the search terminates in rounds.

In the synchronous case, there are no collisions because ants never leave the nest at the same round. Once all the ants leave the nest, the algorithm terminates in rounds, as it takes at most rounds for every ant to update the new total (due to the assumption that ), and from that point each ant explores its own set of layers according to the static partition defined by the algorithm. ∎

12 Summary

We have presented different approaches to solving the ANTS problem with pheromones. We have analyzed the amount of pheromones necessary and sufficient under different scheduling models and various computational capabilities, and in the presence of fail-stop faults. Table 1 summarizes our results.

FSM Fault-Tolerant FSM TM
Pheromones - Lower bound
Pheromones - Upper bound
Rounds - Lower bound
Rounds - Upper bound
Table 1: Research summary; results hold for both asynchronous and synchronous models, whereas is the distance to the food, is the total number of participating ants, and is the number of fail-stops.

We have presented Fault-tolerant algorithms that are resilient to fail-stops, but still only require the computational capabilities of FSM, and no more than the minimum amount of pheromones. Whether or not the performance or pheromone utilization of these algorithms can be improved in the TM model, remains an open question.

Moreover, to the best of our knowledge, no lower bounds on the running-time for the fault-tolerant case have ever been presented – the lower bound of rounds still holds, while our algorithm terminates in rounds, which leaves a gap.

Another major part of a real ant foraging process is what happens once the food (treasure) is actually found; commonly, the discovering ant has to find its way back to the nest and inform other ants of the discovery in order to get assistance in carrying the food back. This task can make use of pheromones, and as such it poses a similar problem of devising efficient algorithms, both in terms of running-time and pheromone utilization.

Other topics for related future research could be: coping with obstacles, considering a similar cooperative search originating from multiple nests, or utilizing different flavors of pheromones (possibly with limited lifespan).


  • [1] Y. Afek, R. Kecher, and M. Sulamy. Optimal Pheromone Utilization. In 2nd Workshop on Biological Distributed Algorithms (BDA), Austin, Texas, USA, October 2014.
  • [2] Y. Emek, T. Langner, D. Stolz, J. Uitto, and R. Wattenhofer. How Many Ants Does It Take To Find the Food? In 21th International Colloquium on Structural Information and Communication Complexity (SIROCCO), Hida Takayama, Japan, July 2014.
  • [3] Y. Emek, T. Langner, J. Uitto, and R. Wattenhofer. Ants: Mobile finite state machines. CoRR, abs/1311.3062, 2013.
  • [4] Y. Emek, T. Langner, J. Uitto, and R. Wattenhofer. Solving the ANTS problem with asynchronous finite state machines. In Automata, Languages, and Programming - 41st International Colloquium, ICALP 2014, Copenhagen, Denmark, July 8-11, 2014, Proceedings, Part II, pages 471–482, 2014.
  • [5] O. Feinerman and A. Korman. Memory lower bounds for randomized collaborative search and implications for biology. In Distributed Computing, pages 61–75. Springer, 2012.
  • [6] O. Feinerman, A. Korman, Z. Lotker, and J.-S. Sereni. Collaborative search on the plane without communication. In Proceedings of the 2012 ACM Symposium on Principles of Distributed Computing, PODC ’12, pages 77–86, New York, NY, USA, 2012. ACM.
  • [7] D. M. Gordon. Ant encounters: interaction networks and colony behavior. Princeton University Press, 2010.
  • [8] M. J. Greene and D. M. Gordon. How patrollers set foraging direction in harvester ants. The American Naturalist, 170(6):943–948, 2007.
  • [9] D. E. Jackson and F. L. Ratnieks. Communication in ants. Current biology, 16(15):R570–R574, 2006.
  • [10] T. Langner, D. Stolz, J. Uitto, and R. Wattenhofer. Fault-Tolerant ANTS. In 28th International Symposium on Distributed Computing (DISC), Austin, Texas, USA, October 2014.
  • [11] C. Lenzen and T. Radeva. The Power of Pheromones in Ant Foraging. In 1st Workshop on Biological Distributed Algorithms (BDA), Jerusalem, Israel, October 2013.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description