This section describes how the two pheromone maps, PI and PC, are built from the two conspicuity maps, CI and CC. For this purpose, a given p-ant, pm, is created and associated with a given visual feature, m∈{I, C}. The other visual feature is represented by m'. While being iterated for η times, pm will move on Cm, influenced by the pheromone present in Pm. While moving, this p-ant deploys pheromone in each position visited in Pm with a magnitude Φ(pm, href) and a small portion of it, υ, in Pm':
(6)
where β is an empirically defined weighting factor, ε is an empirically defined pheromone level baseline, and
is the probability of the p-ants' path,
, to belong to the trail (T), given the learned appearance model href. Rather than having p-ants deploying a constant level of pheromone along their paths, this approach compels p-ants to deploy higher doses of pheromone on regions of the visual field whose appearance is similar to that of the trail.
The probability
is approximated by the average probability of pixels visited by the p-ant of belonging to the trail. These pixels are represented by the set
, and their individual probabilities are obtained directly from the normalized histogram href, according to a technique known as histogram backprojection (see Figure 4 for typical results). As the experimental results will show, this simple approach suffices to help p-ants tracking the trail.
After the iterations for this p-ant, a p-ant associated with the other visual feature, pm', is created and iterated following the same procedure. Afterward, the two p-ants are removed from the system and the process is repeated n times, meaning that 2n p-ants are created and iterated (see Algorithm 1).
Allowing p-ants to affect both pheromone maps enables a loosely coupled cross-modality influence, thus allowing each p-ant to exploit multiple cues indirectly while maintaining their simplicity. As will be shown, the deployed pheromone is a function of p-ants' sensations across their trajectories. Hence, it is influenced by the activity occurring in distant regions of the map. This long-range spatial connectivity allows the potentially large size of trails to be handled in a robust and parsimonious way.
3.5.1 p-ant's Creation
The chances of creating a p-ant pm on a given location
of the conspicuity map Cm depends on the level of conspicuity at that location and on the level of pheromone at the same location in the corresponding pheromone map, Pm. Hence, p-ants are progressively and probabilistically deployed where there are more chances of there being a trail, under the assumptions that (1) trails tend to be conspicuous; (2) the trail has been successfully detected in the previous frame (represented by the feedback provided by the delayed neural field state); and (3) the pheromone accumulated by p-ants deployed in the current frame builds up mostly around the actual trail's location.
By assuming that trails often start from the bottom of the image, p-ants are deployed with a small randomly selected offset z∈[0, 0.1·h] of the bottom of the conspicuity map in question, i.e., at row r∈[h−z, h], where h is the height of the map.1 This random small offset reduces sensitivity to any noise potentially present at the map's boundaries.
To determine the column where pm is deployed, a unidimensional vector vm=(vm0, …, vmw) is first computed. The element vmk of vm refers to the average conspicuity level of the pixels in a small window centered on column k and with a randomly selected offset from the bottom row of the map, r:
(7)
where Cm(l, j) returns the conspicuity level in position (l, j), and δw and δh are the width and the height of the window, respectively. The same windowing process is applied to build a vector for the pheromone field in question, um=(um0, …, umw). However, this time, element umk corresponds to the maximum pheromone level found in the window:
(8)
where Pm(l, j) returns the pheromone level in position (l, j). The max operator is employed to benefit those regions where the paths of p-ants overlap more often and consequently where there is a higher consensus on the trail's skeleton position. Using these two vectors in the following test, which is repeated until it succeeds, the chances of deploying a p-ant in a randomly selected column z2·w are as high as the conspicuity and pheromone levels at the deployment region:
(9)
where z1∈[0,1] and z2∈[0,1] are numbers sampled from a uniform distribution each time the test is performed, and ρ is a weight factor used to trade off the influence of both pheromone and conspicuity information. By starting with a small value, ρ0, and by linearly growing at each iteration by an amount Δρ, ρ operates as an adaptive process, compelling the system to move from a conspicuity-driven operation (exploration) to a pheromone-driven operation (refinement/exploitation).
3.5.2 p-ant's Execution
Before specifying the p-ants' behaviors, it is necessary to specify their sensory and action spaces. To reduce both sensitivity to noise and computational cost, the sensory input is defined by five coarse receptive fields disposed around the p-ant's current position, R1, …, R5 (see Figure 5). For a given visual feature m and p-ant's position
,
and
return the average conspicuity and pheromone levels of the pixels constituting receptive field Rk, respectively. Parameter
is used to transform the p-ant's centered receptive field onto the map's frame of reference. To refer directly to the pixel-wise conspicuity and pheromone levels at the p-ant's position,
and
are used, respectively. An action a∈A moves the p-ant to one of the five neighbor pixels not behind the current p-ant's position. The action space is thus defined by the set A= {1, 2, 3, 4, 5} (see Figure 5).
At each iteration of a maximum η, p-ant pm executes a set of behaviors B = {greedy, track, center, ahead, commit}, which independently vote on each possible action in A. Following a typical approach of behavior coordination (Rosenblatt, 1995), the most voted action is the one taken by the p-ant. Table I summarizes, for each behavior, which regions in the neighborhood of the p-ant are associated with the most preferred action.
Table I. p-ant behaviors for trail detection| Behavior | Voting Preferences |
|---|
| greedy | Regions of higher levels of conspicuity, under the assumption that trails are salient in the input image. |
| track | Regions whose average level of conspicuity is more similar to the average level of conspicuity of all the pixels visited by the p-ant, under the assumption that the trails' appearance is homogeneous. |
| center | Regions that maintain the p-ant equidistant to the boundaries of the trail hypothesis being pursued. That is, the p-ant will prefer regions that are closer to the centroid of the horizontal segment in the conspicuity map where the current p-ant is. The segment is obtained by considering all pixels, represented by the set , that are connected to the p-ant's current position, , through a set of pixels sharing the same row and a similar, within a given margin ζ, conspicuity level of the former. See Figure 6 for an illustration. |
| ahead | Upward regions under the assumption that trails are often vertically elongated. |
| commit | Region targeted by the motor action at the previous iteration, under the assumption that the trails' orientation tends to be monotonous. |
To allow the system to operate with unstructured trails, these behaviors are simple and make little assumptions regarding the trail's structure. Each behavior exploits a specific trail's shape or appearance a priori knowledge to partially contribute to the goal of producing a p-ant's trajectory representative of the trail skeleton. For instance, under the assumption that trails are somewhat monotonous structures, p-ants should move under the influence of some inertia. This is implemented by having the commit behavior voting more strongly on the action that is most similar to the one selected in the previous iteration.
As will be shown, all these behaviors contribute for p-ants' trajectories that closely represent the trail's skeleton. The absence of an explicit scoring function, which would require a model-based imposition of constraints on the trail's shape, hampers a post-ranking of all deployed p-ants to determine the “best trajectory.” Moreover, not all p-ants will be deployed on the trail and so not all are able to follow the actual trail. To overcome these challenges, two ingredients of the system are key.
The first ingredient comes in the form of positive feedback brought about by the amplification of random fluctuations. With additive random fluctuations at the p-ants' actuation level, those that are deployed off the trail will diverge, whereas p-ants deployed on the trail will converge toward its vanishing point, thanks to the center behavior. Hence, there will be higher concentrations of pheromone on trail regions. This happens because the presence of the trail tends to be a global constraint that is only felt by the p-ants deployed on it. In a sense, the trail operates as an attractor for the self-organizing system.
The second ingredient is the use of stigmergy in the form of pheromone-based interactions. By making p-ants attracted by high pheromone concentration regions, we positively reinforce the difference between diverging and converging p-ants (symmetry breaking). This is further reinforced by the influence imposed by the appearance model. Hence, this second ingredient ensures that, in time, the structure imposed by the presence of the trail on the center behavior will be stronger than the effects of random fluctuations. This effect is magnified by the fact that p-ants are deployed according to the level of pheromone already present in the pheromone maps, which are in turn influenced by the neural field. This positive feedback is counterbalanced by the negative feedback resulting from pheromone evaporation occurring at the neural field level. Moreover, the fact that robot forward motion tends to make the neural field skew toward the bottom of the image allows regions of highest activity in further regions of the visual field to be more likely to recruit p-ants. The use of pheromone-based interactions has the additional advantage of overcoming the unreliability of controlling p-ants based on myopic behaviors. The local interruption of a trail, which could inhibit the center behavior from properly leading the p-ant along the trail, is overcome by having p-ants progressively building a pheromone “bridge” over the interruption thanks to commit and ahead behaviors.
To take these considerations into account, in each iteration a p-ant pm selects its action
by maximizing the following utility function, which incorporates behaviors' votes, pheromone-based interactions, and random fluctuations:
(15)
where αb is a user-defined weight accounting for the contribution of behavior b∈B, and γ is the weight accounting for stochastic behavior, where q∈[0,1] is a number sampled from a uniform distribution each time the action is evaluated. To match the randomness magnitude with the scale of the image, which is typically smaller for pixels in the upper regions of the image, the weight γ starts with an initial value γ0 and exponentially decays by a constant factor γτ at each iteration.
If an immediate loop is detected, i.e., the p-ant moving recurrently from one pixel to another, then the action for the current iteration is randomly selected. Finally, the p-ant's position
is updated according to the selected action. Algorithm 2 outlines the overall iteration process.