## Abstract

Braitenberg vehicles are well-known models of animal behavior used as steering mechanisms in mobile robotics and artificial life. Because of their simplicity, they are mainly used for teaching robotics, while the lack of a quantitative theory has limited their use for research purposes. This article contributes to our formal understanding of Braitenberg vehicle 3a by presenting the convergence properties of its trajectories under parabolic-shaped stimuli. We show previously unreported features of the motion of the vehicle: the conditional stability, the oscillatory behavior, and the existence of periodic trajectories. The mathematical model used provides a theoretical relation between the environment, the internal control mechanism of the vehicle, and some morphological parameters, a link already found in experimental works. This work provides theoretical support for experimental research using Braitenberg vehicle 3a, and paves the way for further research in biology, robotics, and artificial life.

## 1 Introduction

Braitenberg vehicles [4] qualitatively model animal behavior at the steering level, and they have long been used on an empirical basis in robotics and artificial life [18, 23]. While, according to the original taxonomy, vehicles 2b and 3a model general taxis behavior, vehicles 2a and 3b model negative taxis. Specifically, vehicle 3a models tropotaxis, the behavior of an agent with two sensors moving toward high-intensity values of some stimulus [6], which can be used to implement target acquisition, for instance. Despite the taxis model proposed by Braitenberg being simple, intuitive, and efficient, it isonly a qualitative model that requires simulations to analyze its behavior. Therefore, no general conclusions can be derived or proved from the model as presented in [4]. This does not prevent Braitenberg vehicles from being used for research or as a teaching tool. Since they can be quickly understood qualitatively, without strong mathematical background, the vehicles represent the perfect tool to teach robotics [5], even at the school level [21].

Multiple instances of Braitenberg vehicles, or their principles, can be found in the robotics literature, in applications ranging from phototaxis to chemotaxis. Phonotaxis behavior is implemented in a robotic rat [2] that models the peripheral auditory system in mammals. Though the authors' main contribution consists in simplifying sound source localization through the pinnae and the cochlea model, they successfully implement the central auditory system, and also include a Braitenberg vehicle3a to control the robot motion. Another example of phonotaxis behavior is presented in [20], where the auditory system of a lizard is imitated. In fact, that implementation of the lizard ear model is good enough to work with a high success rate over a wide range of frequencies, using both aBraitenberg vehicle 2b and a bang-bang controller. Interestingly, the performance of the two controllers was similar even though they did not have a model of the vehicle to tune the behavior of the robot. In a series of works [8, 17, 24], a model of phonotaxis in the female cricket is implemented using spiking neural networks connected according to the principles of Braitenberg vehicles. This neural model of motion control is comparable to a combination of vehicles 2a and 3b, since excitatory units display a direct connection between sensors and motors, while inhibitory ones are crossed. The authors prove their robots perform very well even under quite adverse outdoor conditions.

Chemotaxis can also be found among the implementations of robotic Braitenberg vehicles. An experimental analysis of vehicles 3a and 3b for odor source localization is presented in [10], where the connection between sensors and motors is linear, but sensor readings are normalized. The authors present one of the first working robots for chemical source localization, which turns out to be a very complex task. Phototaxis, motion toward a light source, is used in [3] as a mechanism for target acquisition using vehicle 3a. Obstacle avoidance is achieved through an infrared-based Braitenberg vehicle 2b, which produces very smooth obstacle avoidance behavior. Though it is not possible to review all of them, there are many successful robotic applications of Braitenberg vehicles for target seeking, wandering, sound source localization, or obstacle avoidance.

Several evolutionary-based works have used Braitenberg vehicles for different purposes. The work in [11], for instance, presents an interesting study of the effect of sensor placement and range to achieve tasks of increasing complexity. The authors prove there is a relation between the number of sensors, their range, and the complexity of the task, a very interesting result in that it links behavior and morphology. Unfortunately, they need to include the controller within the evolutionary strategy, slowing down the evolution. Evolution of Braitenberg vehicle 2b using genetic algorithms and agent generative grammars is presented in [12], where the evolved vehicles outperform free random evolution of agent morphology and control. Through their experiments, the authors prove that random evolution can actually find features of Braitenberg vehicles, and the evolution of vehicle 2b produces a variant of vehicle 3a. Other works of interest use evolutionary techniques to design Braitenberg vehicle controllers in robots [13] or simulated agents [7].

Braitenberg vehicles also inspired the creation of artificial characters like the well-known *boids* [19], which show complex collective behaviors, like flocking or schooling, even though they are implemented using simple mechanisms. In fact, that article represents one of the first, and probably the best-known, of the research works in agent formation. A set of artificial fish, with behaviors also inspired by [4], are modeled and presented in [22]. Those authors' work goes much further than the simple generation of obstacle avoidance, target reaching, or wandering, since they propose a learning mechanism to acquire and associate simulated muscular motion with steering commands. However, they use simple behaviors at the steering level that can still be found among the Braitenberg vehicles. Many other works exist that model steering behaviors in simulated agents, but Braitenberg vehicles can be considered a de facto standard procedure to simulate agents performing foraging, target acquisition, and many other sensor-driven tasks.

As we have seen, Braitenberg vehicles are present in a wide range of areas and applications, eventhough their understanding is limited to intuition and experimental or simulated results. They successfully model sensory-driven motion and thereby provide a better understanding of animal motion that can be applied in robotics or further investigated in artificial life or biology. However, onlyrecently has a formal mathematical model to further understand and exploit the possibilities of Braitenberg vehicles been developed [15]. This article contributes to our understanding of Braitenberg vehicle 3a by presenting a mathematical analysis of their behavior in the vicinity of parabolic stimuli andinvestigating possible behaviors in more complex settings. Instead of relying on experimental data, we perform a top-down analysis of the general nonlinear differential equations describing their behavior,such that the results are valid for any application of vehicle 3b. New and unexpected results that actually challenge our empirical understanding of Braitenberg vehicle 3a are presented. This formal analysis is required to ensure applicability in real-world scenarios of the controllers presented by Braitenberg. So far, Braitenberg vehicles have had an impact only in a restricted scientific community, even though their potential is of high interest for a wider audience including roboticists and control engineers.

The rest of the article is organized as follows. Section 2 first reviews the assumptions and the mathematical model for Braitenberg vehicle 3a already presented in [15]. Then it presents some analytic solutions of the nonlinear dynamical system describing vehicle 3a under a parabolic, non-circularly-symmetric stimulus or potential field. This is a sufficiently general case, considering that many stimuli can be approximated by a parabolic function near the source. Results for circularly symmetric stimuli, which generate more complex behavior than the parabolic one, are presented at the end of the section. Section 3 contains a set of selected simulations that illustrate the theoretical results obtained. Finally, Section 4 presents a summary of the conclusions and future steps in the development of a theoretical framework for Braitenberg vehicles.

## 2 Vehicle 3a Model and Resulting Trajectories

A simple model of animal taxis is proposed in [4] for dual-drive wheeled vehicles as a thought experiment. Figure 1 shows the vehicle named 3a in the proximity of a light source with a reference frame on it. The wheels of the vehicle abstract the locomotive subsystems of animals to focus on the steering level [19]. In fact, similar steering models have been used to understand human motion [1]. As shown in the figure, the vehicle has two sensors, each connected to the ipsilateral wheel in such away as to decrease its velocity. An intuitive analysis shows that the vehicle will turn toward, andapproach, the light source. As it gets closer to the source, or maximum, it will slow down, and eventually, once it is close enough, it will stop in front of the light source. Since intuitively the motion converges to the stimulus, no further formalization or analysis was performed, even though Braitenberg vehicles were used in real robots and simulations of artificial agents. Therefore, all previous works assumed vehicle convergence to the stimulus under any circumstances.

We will briefly review the modeling assumptions leading to the motion equations for vehicle 3a (see [15] for further details). First, we will assume that the stimulus field can be modeled as a non-negative smooth scalar function *S*(**x**) of the position of the vehicle in its workspace, ; and *S*(**x**) is *C*^{∞}. If there is a single source or maximum, without loss of generality, we can set the origin of acoordinate system such that . This means the gradient of *S*(**x**) vanishes at the originwhile the Hessian matrix is negative definite, that is, ∇*S*(**0**) = **0** and **y**^{T}*D*^{2}*S*(**0**)**y** < 0 ∀**y** ∈ *R*^{2}. Probably the best-known example of Braitenberg vehicles is the one implementing phototaxis through light sensors, with a light source placed at some height *h*_{0} above the ground. It can be seen that, accordingto the inverse-square law, the light intensity will fulfill the above conditions. Furthermore, if the emission pattern of the light source is isotropic, the stimulus *S*(**x**) will be such that .

*s*and the wheel velocities

*v*

_{L/R}is direct and decreasing,we can model it as a smooth function

*F*(

*s*) such that: (i) , that is, the vehicle does not move backward and

*F*(

*s*) = 0 only at the source maximum; and (ii)

*F*′(

*s*) < 0—since the connection is decreasing, the derivative of

*F*(

*s*) must be negative. This function is usually selected to be just a linear function or an artificial neural network with the sensor readings as inputs and the outputs connected to the motors. Approximating the stimulus around the midpoint between the sensors of the vehicle (

**x**) as a Taylor series, we obtain the general motion equations for vehicle 3a (see [15]):where δ is the distance between the sensors,

*d*is the wheelbase of the vehicle, and

*ê*

_{p}= [−sin θ, cos θ] (see Figure 1). This is a general model that can be used to analyze the behavior of the vehicle or todesign

*F*(

*s*) for a known stimulus. Equations 1, 2, and 3 are valid for any smooth stimulus with anynumber of extrema, and they actually indicate that, while the value of

*F*(

*s*) directly affects the linearvelocity, its derivative is used to control the steering rate. This is an interesting new view of Braitenberg vehicles that does not rely on pure intuition.

### 2.1 Behavior under Parabolic Stimuli

*S*(

**x**) ≈

*S*(

**0**) −

**x**

^{T}Σ

**x**. If the stimulus has elliptic symmetry, we can generalize it as a function

*S*(ρ), where ρ =

**x**

^{T}Σ

**x**≥ 0 for all

**x**≠

**0**and for all ρ. Of course, this assumption is only valid in the workspace area where the approximated stimulus is positive, and infact the two functions match in a small neighborhood around the maximum. However, the approximation is qualitatively valid if the topological properties of the vector flow, Equations 1, 2, and 3, do not change. Without loss of generality, we can assume Σ is a diagonal matrix, which means the principal axes of the stimulus function coincide with the axes of the Cartesian coordinates. However, the elements of the diagonal may be unequal, therefore representing a nonsymmetric emission patternofa stimulus source. In the above-mentioned case of a light source, it can be seen this is an appropriate approach, and ρ

_{0}=

**x**

^{T}Σ

**x**corresponds to a curve with constant light intensity. Under theseconditions the motion equations of the vehicle can be stated aswhere

*F*′(

*s*) and

*S*′(ρ) represent the derivatives of the function w.r.t.

*s*and ρ, respectively.

We assumed the compound function *F*(*S*(ρ)) will only vanish at the origin, ρ = 0; therefore Equations 4 and 5 vanish simultaneously, while Equation 6 vanishes too, since ρ = 0 ⇔ **x** = **0**. This means the motion equations have an equilibrium point at the origin for parabolical-shaped stimuli, which according to the intuitive understanding of Braitenberg vehicles should be stable, that is, vehicles starting near the source will end up approaching it.

#### 2.1.1 Analytic Solutions to the Dynamic Equations

Given our assumptions, we can prove that the axes contain solution trajectories. If we consider Σ, a diagonal matrix, as diag(Σ) = (σ_{1}, σ_{2}), the condition for Equation 6 to be zero is −*x*σ_{1}sinθ + *y*σ_{2}cosθ = 0. This condition is fulfilled if *x* = 0 and cos θ = 0 simultaneously, or if *y* = 0 and sin θ = 0 simultaneously. Therefore, if the point *x* = 0, cos θ = 0 belongs to the trajectory, as the solution is unique, it is given by *x*(*t*) = 0, θ(*t*) = ±π/2, and , with the appropriate initial conditions. This means that a vehicle starting at the *y* axis with the right heading will move along that axis. Moreover, as we will see, the stability of the trajectory will depend on the position and heading of the vehicle. While intuition tells that a vehicle heading for the source will move along a straight line, the mathematical model says this is only the case for the principal axis if the stimulus has elliptic symmetry.

As a case study, let us analyze the situation of the vehicle starting on the Cartesian *x* axis, that is, *y*_{0}= 0. The trajectory will be a straight line only if sinθ_{0} = 0, which makes Equations 5 and 6 vanish simultaneously. The vehicle motion is described by the solution to , where the sign depends on whether θ_{0} = 0 or θ_{0} = π, giving two possible vehicle trajectories. It is worth recalling that*F*(*S*(**x**)) ≥ 0 and that the identity only occurs for **x** = **0**, which means the origin is an equilibrium point. However, the linear stability test does not work for the equation at hand, as *F*(*S*(**x**)) has an extremum at the origin. Moreover, the nonlinear differential equation describing the motion of vehicle 3a is conditionally stable, as shown in Figure 2. According to Figure 2a, when the initial headingof the vehicle is θ_{0} = 0, the equilibrium point at the origin is an attractor for initial conditions*x*_{0} < 0, and a repeller for *x*_{0} > 0. The interpretation of this result is straightforward: when the vehicle is heading toward the source from a negative position, it will move in a straight line approaching the origin. However, if the source lies exactly behind the vehicle, as the stimulus perceivedin both sensors is identical, the vehicle will move forward without turning, leaving the origin exactly at its back. In a real situation, where noise has an effect, there is some chance that the vehicle will get out of this perfectly symmetric case. The outcome of the symmetry breaking will be presentedin the next section when trajectories close to the straight line are analyzed. A similar analysis can be performed for the initial condition θ_{0} = π; however, the flow vectors point in the opposite direction, as shown in Figure 2b.

As a result, we found eight analytic solutions to the motion equations of Braitenberg vehicle 3a. When the vehicle initial condition lies on the principal axis of the stimulus function and the heading points toward the source, or in the opposite direction, the trajectories are straight lines toward, or moving away from, the source. These are represented in Figure 3a and correspond to the principal axes of the stimulus. As we will see in the next section, we can extract useful information from the obtained trajectories. Contrary to what one could expect, if the vehicle heads exactly toward the source somewhere off the main axis, its trajectory will not be a straight line unless the stimulus is circularly symmetric.

#### 2.1.2 Trajectories Close to the Analytic Solutions

*F*(

*S*(

**x**))

*ê*

^{T}is the 2 × 2 matrix resulting from the product of the gradient of

*F*(

*S*(

**x**)) and the heading unit vector of the vehicle

*ê*

^{T}= [cosθ, sinθ];

*F*(

*S*(

**x**))

*ê*

_{p}

^{T}is the vector orthogonal to the vehicle direction scaled with its linear velocity; is a 1 × 2 matrix formedby second-order cross derivatives of

*F*(

*S*(

**x**)); and ∂

_{ê}

*F*(

*S*(

**x**)) is the directional derivative of

*F*(

*S*(

**x**)) along the vehicle heading. To apply the linear stability test or to investigate trajectories close to the ones found, this matrix has to be evaluated at the analytic solutions and the linear system , for

**x**

_{Δ}=

**x**−

**x**

_{l}, solved to obtain the behavior of nearby trajectories. Specifically, the straight line trajectory can be stated as

*y*

_{l}(

*t*) = 0, θ

_{l}(

*t*) = 0 (or θ

_{l}(

*t*) = π), and

*x*

_{l}(

*t*) is the solution of . If we substitute the trajectory in the expression in Equation 7, taking the case θ

_{l}(

*t*) = 0, we obtain:where

*F*′ =

*F*′(

*S*(σ

_{1}

*x*

^{2})) and

*S*′ =

*S*′(σ

_{1}

*x*

^{2}) are the derivatives of

*F*(

*s*) and

*S*(ρ) w.r.t. their arguments along the trajectory

*x*

_{l}(

*t*), respectively. This linear time-dependent dynamical system describes the behavior of the trajectories close to the analytic solutions obtained earlier. We can compute the eigenvalues of the above matrix to check whether trajectories close to that solution converge to or diverge from it. Theeigenvalues λ

_{i}for the current case arewhere

*F*=

*F*(

*S*(σ

_{1}

*x*

^{2})) is evaluated along

*x*

_{l}(

*t*).

According to our assumptions, *S*′(ρ) < 0, *F*′(*s*) < 0, σ_{1} > 0, and σ_{2} > 0. Having this in mind, we can see that the sign of the first eigenvalue λ_{1} = 2*F*′*S*′σ_{1}*x* depends on the value of *x*. Moreover, since *F*′*S*′σ_{1} > 0, the trajectories of the linearized system will diverge from the straight line trajectory when *x* > 0. We saw that the vehicle with the initial conditions θ_{0} = 0, *y*_{0} = 0, and *x*_{0} > 0 will move away from the source, following the principal stimulus axis. However, if θ_{0} or *y*_{0} is not exactly zero, it will start turning to head toward the source and will diverge from the stimulus principal axis. It is worth noting that the second and third eigenvalues will produce the same effect, as they share this term, while the part inside the square root will always have an absolute value smaller than the first term. Therefore, all the eigenvalues have the same sign, and the vehicle will move away from the straight line trajectory. When *x* < 0 all the eigenvalues are negative; hence any trajectory starting close to the analytic solution will get closer to it. A complete analysis of the trajectories is presented in Figure 3b. In short, all the trajectories approximately heading toward the source will converge to one of the solutions, while the ones with the source at the back will move away from the axis. Therefore, an agent close to a stimulus maximum will always turn toward it and, eventually, reach it. This result nicely matches the intuitive understanding of Braitenberg vehicle 3a.

However, a previously unreported situation, not completely matching intuition, can occur if the expression inside the square root becomes negative, as the eigenvalues λ_{2,3} will then be complex numbers. If this happens, oscillatory behavior will be displayed by these vehicles; the specific condition for it is . We can see that the distance at which oscillations around the principal stimulus axis occur depends, among other factors, on the relation between σ_{2} and σ_{1}, but also on the morphology of the vehicle and its internal connection, the function *F*(*s*). This implies that for a given morphology and internal control, an adequate threshold distance should be selected to stop the vehicle if we do not want the trajectory to oscillate. Similar results can be obtained if the trajectories are analyzed around the other analytic solution, *x*_{l}(*t*) = 0, θ_{l}(*t*) = π, and , but with exchanged roles of σ_{1} and σ_{2}. This represents a theoretical relation, through an analytical formula, between an agent's body morphology and its behavior, which on the one hand shows how morphology affects behavior, and on the other hand implies that the internal control mechanism can compensate for morphological aspects in the resulting behavior.

### 2.2 The Case of Circular Symmetry

*S*(

**x**), and therefore

*F*(

*S*(

**x**)), can be expressed as a function of the distance to the origin. Therefore, we will write

*F*(

*S*(

*r*)), where

*r*is the polar coordinate of the vehicle, and the gradient of

*F*(

*S*(

*r*)) has only a radial component. This is the case, for instance, of a light source emitting equally in all directions. However, we will not impose any particular shape on

*S*(

*r*) or

*F*(

*s*), and therefore the stimulus will not follow the inverse-square law. Moreover, in this case, as a simplifying assumption, we will treat the composite function

*F*(

*S*(

*r*)) as a single function. Under this assumption, if we transform the system of differential equations in Equations 1, 2, and 3 to polar coordinates (

*r*, ψ) and we define a new variable η = ψ − θ, the system of differential equations describing the motion of the Braitenberg vehicle 3a iswhere

*F*(

*r*) =

*F*(

*S*(

*r*)) and η represents the vehicle heading relative to the polar coordinate ψ. Due to the symmetry of the problem, only the relative angle is a relevant variable, and it can be seen that η = 0 corresponds to the vehicle with the source at its back, while for η = π the vehicle points toward the origin and θ and ψ are complementary angles. Formulating the motion equations as a function of the relative heading simplifies the analysis of the trajectories, but the results of this analysis need to be interpreted accordingly. We will define the discriminant function , which can be used to analyze the stability of these equations and therefore of the Braitenberg vehicle 3a. It is important to note that

*G*(

*r*) defines a differential relation on

*F*(

*r*) and therefore the stability will depend on the shape of

*F*(

*r*).

One way to analyze the behavior of the system defined by Equations 9 and 10 is to qualitatively draw the phase plot, as done in Figure 4, where the directions of the arrows show how the variables change for different regions of the phase plane and the horizontal lines are the nullclines [9], the lines where a sign change in the angular flow occurs. While the sign of the radial flow component depends only on cos η, the sign of the angular component can change with the sign of the discriminant function. Figure 4a shows the flow vectors for a stable situation (*G*(*r*) < 0) where the vehicle movestoward the point in polar coordinates (0, π). This point corresponds to the vehicle oriented toward and moving toward the origin, the expected behavior of Braitenberg vehicle 3a, always reported in experimental works. If the discriminant function is positive (*G*(*r*) > 0), the vehicle will end up moving away from the stimulus as shown in Figure 4b; it will head along the angular coordinate η = 0, which implies its polar coordinate will be ψ = θ. This last situation cannot be easily guessed from the intuitive understanding of Braitenberg vehicle 3a, as intuition indicates a stable motion toward the source. This situation occurs, for instance, when the slope of the function *F*(*s*) is not strong enough, and it can be fixed by changing *F*(*s*) if the aim is to obtain taxis behavior. The different stability conditions, *G*(*r*) > 0 and *G*(*r*) < 0, actually define differential inequations, and correspond to a range of functions. It is worth noting that the morphological parameter δ/*d* has asignificant effect on the convergence, as it is a factor in *G*(*r*) multiplying the slope of *F*(*s*).

A more complex situation occurs if the sign of *G*(*r*) changes for different values of *r*, as shown in Figure 4c and d. For the flow corresponding to Figure 4c, any trajectory heading toward the origin within a range of π and starting on the left side of the phase plane will converge to the point (0, π), the stimulus source. However, initial conditions on the right side with the origin at the back will be unstable, making the vehicle move away from the source. Nothing general can be stated about the stability for other initial conditions. However, two unstable periodic solutions appear at the intersection of the lines defined by *G*(*r*) = 0 and θ = ±π/2, making the vehicle turn around the source in the clockwise and counterclockwise directions. In sum, trajectories heading toward the origin are prone to drive the vehicle to the source, while those with the origin at the back will probably make it go away. On the other hand, Figure 4c shows a flow where these two areas of the phase plane are swapped with respect to the previous case. This generates an equilibrium point at the intersection of the lines defined by *G*(*r*) = 0 and θ = ±π/2, with oscillatory trajectories close to it, namely, the superposition of two oscillatory motions. Even though theoretically possible, to the best knowledge of the author this behavior has never been reported before as the result of a Braitenberg vehicle 3a implementation or simulation. The techniques used to compute the frequencies of motion and approximate trajectories for Braitenberg vehicle 2b presented in [14] can also be used in this case. More complex situations can be produced by combining areas with different stability conditions, but the ones analyzed here are the most relevant, as they constitute the basic building blocks of the more complex ones (in the same way as the flow in Figure 4c and d can be viewed as combinations of the flow in Figure 4a and b).

## 3 Computer Simulations of the Model

This section illustrates the above-obtained theoretical results with several computer simulations of the dynamic equations describing the motion of the vehicle. However, only the most interesting results will be presented, using the appropriate stimulus functions.

### 3.1 Oscillatory Behavior

To illustrate the oscillatory behavior for nonsymmetric stimulus sources, we integrated the motion equations under a stimulus field for σ_{1} = 1 and different σ_{2} values. Note that this is a general setting, since values of σ_{1} ≠ 1 can be codified inside the derivative of the function *S*(ρ) with the proper scaling of σ_{2}. It is worth recalling that smooth stimuli coming from a source with an anisotropic emission pattern can always be approximated close to the source as a parabolic function; therefore, in the simulations presented in this section we used a parabolic stimulus approximation with a linear connection function, such that the compound function is actually *F*(*S*(**x**)) = σ_{1}*x*^{2} + σ_{2}*y*^{2}, while the value of the ratio δ/*d* was 0.75. In order to compare the results with the symmetric trajectory, we also plot the simulation corresponding to σ_{2} = 1.

Figure 5a shows the trajectories for σ_{2} = {1, 5, 10} with initial conditions close to the axis *y* = 0, specifically (*x*_{0}, *y*_{0}, θ_{0}) = (−5, 0.2, 0) for all trajectories. The initial pose of the vehicle is represented by the triangle. Since σ_{2} > σ_{1}, oscillations appear around the *x* axis, and they start earlier as σ_{2} increases relative to σ_{1}. Because λ_{1} is always negative and λ_{2,3} have a negative real part, the amplitude of oscillations decreases exponentially as a first-order approximation. This exponential modulation could make the oscillatory effect negligible in real applications. The point where oscillations start can be selected as a condition to switch to another behavior in a more complex scenario. The figure also shows that the spatial frequency of the oscillations increases as the vehicle approaches the stimulus maximum. However, since the forward velocity of the straight line solution, *F*(*S*(σ_{1}*x*^{2})), decreases, the temporal frequency actually decreases as the vehicle gets closer to the maximum of the stimulus. To the best knowledge of the author, this oscillatory behavior has not been reported in any experimental work using Braitenberg vehicle 3a, probably because the parameters on the controller function *F*(*s*) are experimentally tuned to avoid this situation. However, having a solution for the trajectories helps in tuning the value of *F*(*s*) to attenuate the oscillations.

Figure 5b shows the trajectories of the vehicle with initial conditions close to the axis *x* = 0 with (*x*_{0}, *y*_{0}, θ_{0}) = (0.2, 5, −π/2), using the same σ_{1} and σ_{2} values. As the figure shows, the trajectories quickly turn toward the *x* axis with increasing strength as σ_{2} increases. The figure scale does not make it apparent, but as the trajectories approach the *x* axis, they start to oscillate as in the previous case (except for the circularly symmetric case of σ_{2} = 1). Finally, we performed the simulations from random starting positions shown in Figure 6 to verify that trajectories indeed reach the source for different initial poses.

### 3.2 Different Stability Conditions

This section presents simulations of the symmetric stimulus for the stability conditions found. The value used for the ratio δ/*d* was 0.85 for all the simulations, and we always used different random starting poses, except for the periodic motion around the source. Figure 7a and b show results for the cases where the discriminant function does not change its sign, and therefore the stability is the same for all *r* values, meaning all trajectories converge to the source or move away from it. The initial pose of the vehicle is also drawn in the figures for each simulation. Specifically, for the stable case the composite stimulus function was *F*(*S*(*r*)) = *r*^{2}, and for the unstable case *F*(*S*(*r*)) = *r*. While the trajectories shown in Figure 7a (for *G*(*r*) < 0) are all stable, the ones in Figure 7b (*G*(*r*) > 0) are unstable. In the stable case the trajectories pointing initially away from the origin reach the source after turning to head toward the source. On the other hand, trajectories in the unstable case can first move toward the stimulus source and later diverge. It is worth noting that even though one of the trajectories in Figure 7b appears to head toward the origin (where the maximum of the stimulus occurs), it also diverges, following an almost straight line with a different direction.

Figure 7c shows the first sign-change case, where an *r*_{0} exists such that *G*(*r*) < 0 for *r* < *r*_{0} and *G*(*r*) > 0 for *r* > *r*_{0}. The composite function *F*(*S*(*r*)) used for this simulation was , with α = 0.0625. As already shown in Figure 4c, the stability of the trajectory depends on the initial conditions: for |η| > π/2 and *r* < *r*_{0} all the trajectories reach the source at the origin, for |η| < π/2 and *r* > *r*_{0} all move away from it, and any other trajectory will eventually reach one of these sets of the state space, therefore becoming stable or unstable. As can be seen, from the 10 random initial conditions, only trajectories close to the origin (*r*_{0} = 3.34 for the simulation) and pointing toward the source are stable. The case of trajectories oscillating around a fixed distance is presented in Figure 7d, where the distance is *r*_{0} = 4.3 and the function *F*(*r*) is with *a* = 6 and *b* = 8. As shown in the figure, the initial pose of the vehicle is in the region with the flow pointing toward the source. However, once the trajectory reaches the area where *G*(*r*) > 0, it moves away from the source. The motion of the vehicle can be approximated as the sum of a circular trajectory around the origin and an oscillation around it, as already reported for Braitenberg vehicle 2b [16]. Therefore the solution in this case is either periodic or quasi-periodic, depending on the ratio between the oscillation frequencies, but it will never reach the source. The functions used in these last simulations were selected to illustrate two cases of different stability regions: functions that generate a sign change in *G*(*r*). In general, given a circularly symmetric stimulus and a designated *F*(*s*), the sign of *G*(*r*) has to be checked to look for the stability of the vehicle.

## 4 Conclusions and Further Work

This article contributes to our theoretical understanding of Braitenberg vehicle 3a, a widely used qualitative model of animal steering control for goal seeking and target acquisition. Contrary to the intuitive understanding, we were able to theoretically predict the existence of unstable configurations, trajectories of the vehicle moving away from the stimulus, periodic trajectories around the stimulus, and oscillatory behavior when approaching the source. Moreover, we theoretically proved the linkage between morphological parameters, the sensor-motor connection, and the resulting behavior. While relations between morphology and control have been found in experimental works, instability of the behavior of Braitenberg vehicle 3a had not been previously reported. Nor had the possibility of having periodic trajectories. The existing experimental works used this Braitenberg vehicle in a limited range of working conditions, namely, the ones generating a proper taxis behavior, which is also explained by the theoretical model. Though we only provided the example of a light stimulus, any other stimulus following the inverse-square law, or even the inverse-distance law (i.e., sound pressure), can be used to implement taxis behavior. However, for real sensors the assumptions might not be adequate, as some are not omnidirectional. In robotics, for instance, this problem can be solved by adding sensors that cover the body of the robot and combining their measurements, or through virtual sensors that rely on perceptual history.

A limitation of the analysis can occur when the signal-to-noise ratio is too low and therefore the behavior is mostly driven by noise. This is an important point in the future development of the theory of Braitenberg vehicles, as it would provide fully theoretical coverage of existing simulated and real experimental works. This lack of theoretical basis is the most probable reason why the impact of Braitenberg vehicles in different research areas is not as high as it should be. In sum, the existence of a formal model of Braitenberg vehicles paves the way to a further development in many research areas, such as: robotics, where a formal biologically inspired controller can be used to steer robots; biology, as it provides a new deterministic model of tropotaxis behavior that accounts for an animal's heading direction; and artificial life, where the model allows computationally sound simulations of steering-related tasks.

## Acknowledgments

The author would like to thank Sebastian Noth and Elena Lazkano for their valuable comments on early drafts of this article.

## References

## Author notes

Intelligent Systems Research Centre, MS134, University of Ulster, Northland Road, Derry, Northern Ireland BT48 J7L. E-mail: i.rano@ulster.ac.uk