Next Article in Journal
Dual Hashing Index Cancellable Finger Vein Template Based on Gaussian Random Mapping
Next Article in Special Issue
Impact of Brownian Motion on the Analytical Solutions of the Space-Fractional Stochastic Approximate Long Water Wave Equation
Previous Article in Journal
Analysis of Symmetrical/Asymmetrical Loading Influence of the Full-Suspension Downhill Bicycle’s Frame on the Crack Failure Formation at a Critical Point during Different Driving Scenarios and Design Improvement
Previous Article in Special Issue
A Critical Review of Works Pertinent to the Einstein-Bohr Debate and Bell’s Theorem
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Virtual Attractive-Repulsive Potentials Control Theory: A Review and an Extension to Riemannian Manifolds

1
Graduate School of Mechatronic Engineering, Politecnico di Torino, 10129 Turin, Italy
2
Graduate School of Automation and Control Engineering, Politecnico di Milano, 20133 Milan, Italy
3
Department of Information Engineering, Marches Polytechnic University, 60121 Ancona, Italy
*
Author to whom correspondence should be addressed.
Submission received: 25 October 2021 / Revised: 24 November 2021 / Accepted: 24 January 2022 / Published: 28 January 2022
(This article belongs to the Special Issue Mathematical Modelling of Physical Systems 2021)

Abstract

:
The present paper is concerned with an instance of automatic control for autonomous vehicles based on the theory of virtual attractive-repulsive potentials (VARP). The first part of this paper presents a review of the VARP control theory as developed specifically by B. Nguyen, Y.-L. Chuang, D. Tung, C. Hsieh, Z. Jin, L. Shi, D. Marthaler, A. Bertozzi and R. Murray, in the paper ‘Virtual attractive-repulsive potentials for cooperative control of second order dynamic vehicles on the Caltech MVWT’, which appeared in the Proceedings of the 2005 American Control Conference, (Portland, OR, USA) held in June 2005 (pp. 1084–1089). The aim of the first part of the present paper is to recall the mathematical and logical steps that lead to controlling an autonomous robot by a VARP-based control theory. The concepts recalled in the first part of the present paper, with special reference to the physical interpretation of the terms in the developed control field, serve as the starting point to develop a more convoluted control theory for (second-order) dynamical systems whose state spaces are (possibly high-dimensional) curved manifolds. The second part of this paper is, in fact, devoted to extending the classical VARP control theory to regulate dynamical systems whose state spaces possess the mathematical structure of smooth manifolds through manifold calculus. Manifold-type state spaces present a high degree of symmetry, due to mutual non-linear constraints between single physical variables. A comprehensive set of numerical experiments complements the review of the VARP theory and the theoretical developments towards its extension to smooth manifolds.

1. Introduction

Most control problems of interest in engineering and applied sciences concern positioning, path planning and obstacles avoidance. A noteworthy example is given by the need of commanding a spacecraft in such a way that it avoids bright objects yet maintaining communication with ground station, as discussed in [1]. Further noteworthy examples are found in landing maneuvering of manned electric vehicles [2], interception of mobile search vehicles [3], and manual guidance of robotic manipulators [4]. Virtual potentials prove effective in solving non-linear control problems as they appear to be versatile and widely applicable. In order to control a particular dynamical system, it is necessary to build a virtual potential field. Such construction may be effected within a number of mathematical frameworks. For instance, a virtual potential field may be constructed by the use of harmonic functions and Laplace’s equations [5,6], artificial gyroscopic forces [7] and stream functions from fluid dynamics [8].
The study of potential fields took originally its moves from physics, chemistry and biology [9] although its versatility makes it advantageous in several different fields such as vehicle coordination [10]. In fact, potential fields have been widely used to control different types of vehicles such as cylindrical robots [11], helicopters [12], road vehicles [13] and unmanned ground vehicles [14].
A special acknowledgment should be paid to Koditschek and Rimon who, in a series of papers, laid the foundation of the VARP theory. In particular, in the contribution [15], the authors proposed “a methodology for exact robot motion planning and control that unifies the purely kinematic path planning problem with the lower level feedback controller design”. The innovative aspect of their work was to encode complete information about a freespace and goal in the form of a special virtual potential function, termed navigation function. Such navigation function gives rise to a feedback controller for the robot that guarantees collision-free motion and convergence to the destination. The authors of [15] developed a family of navigation functions that serve to guide a point-mass robot through a generalized sphere world. The simplest member of such family of navigation functions is obtained by puncturing a disk by an arbitrary number of smaller disjoint disks that represent obstacles. More complex spaces (and obstacles) are obtained from this model by suitable coordinate transformations. The study [15] was essentially devoted to planar scenarios and appears as an application of more general results presented earlier in [16], where the general problem of constructing navigation functions on arbitrary manifolds (not only those obtainable as deformations of sphere words) was dealt with.
Over the years, potential fields have been applied to constrained attitude control, as they enable to handle simultaneously a large number of forbidden and mandatory zones, while guaranteeing computational tractability and convergence [17]. Potential fields have also been applied to slew maneuver of satellites; see, e.g., the paper [18] that introduced a ‘Sun avoidance potential’. The manuscript [19] introduced the notion of exponential repulsive potential whose gradient returns a protection control field to prevent aircraft accidents. The contribution [20] utilizes virtual potential functions to generate trajectories to be used as initial guesses for a ‘general pseudospectral optimal control’ algorithm. The research work published in [21] presents a real-time hybrid guidance method which fuses the flexibility and robustness of harmonic potential functions with a rapidly-expanding random-tree method; such research outcome allows to plan near-fuel-optimal trajectories on cluttered environments. The paper [22] outlines a method based on the theory of virtual potential fields combined with sliding mode control for spacecraft maneuvers in the presence of obstacles; guidance and control algorithms devised in such manner were validated through a six degree-of-freedom omorbital simulator. Guidance algorithms based on artificial potential functions play an increasingly important role in hazard avoidance, although local minima might cause a spacecraft to be unable to reach the desired target landing point in complex terrains. In the paper [23], a novel hazard avoidance guidance method was developed by improving the traditional virtual potential function structure.
Potential fields may also be utilized in conjunction with other control strategies. For example, Cao et al. [24] suggested using potential fields in order to adjust the path planned by a neural network in such a way that an autonomous underwater vehicle avoids obstacles. Baxter et al. [25] developed a control method based on the exchange of information regarding potential fields between robots belonging to the same local group of vehicles. Huang [26] proposed a path and speed planning strategy based on the use of a potential field for a robot located in a dynamic environment where obstacles and targets are moving.
Potential function-based proportional-derivative as well as augmented-proportional-derivative control laws were developed in [27] to govern the motion of an underactuated autonomous underwater vehicle in an obstacle-rich environment; for obstacle avoidance, a mathematical potential function was devised, which formulates the repulsive force between the vehicle and the solid obstacles intersecting a vehicle’s desired path. The guidance and control framework proposed in [28] integrates offline optimal path planning with a safety distance constrained A* algorithm, and an online extended adaptively-weighted virtual potential field-based path following approach with dynamic collision avoidance, based on unmanned surface vehicles maneuvering response times. An adaptive potential function approach originally developed for ground robots was modified in [29] and employed as a guidance law for a class of rotary-wing unmanned aerial vehicles that must also avoid obstacles located in a three-dimensional workspace.
The use of potential fields has been extensively studied and some alternatives have been proposed to overcome those difficulties that it might entail. An often encountered difficulty is that a local minimum in the potential field might trap a controlled vehicle and consequently prevent it from reaching the global minimum, which represents the actual goal. Lee et al. [30] proposed a solution to such problem based on the placement of a virtual repulsive obstacle in a local minimum to keep a robot adequately distant from it. A further solution to the aforementioned problem is to invoke hybrid strategies based on virtual potentials and BUG algorithms [31,32,33,34,35], as proposed by Wang et al. [36]. A further common difficulty to be aware of in the use of potential fields is the oscillation of the controlled vehicle around obstacles and targets. Several proposals have been presented to address such problem. Ren et al. [37] proposed the use of a modified Newton’s method (MNM) for robot navigation based on an approximation of a potential field function, which is often a complicated non-linear function, by a quadratic form. Li et al. [38] presented a regression search method, based on an improved artificial potential field, capable of mitigating local minima as well as oscillations. Such solution consists in redefining potential functions in order to delete local minima and in utilizing virtual local targets for a robot to escape oscillations. Regression search was then used to optimize the path followed by a vehicle.
On the basis of the consistent literature accumulated on this subject, the authors of [39] proposed a workable feedback control theory, termed VARP (that stands for virtual attractive-repulsive potentials) that they applied to drive a simple robotic platform (named ‘Kelly robot’). The control algorithm developed by the authors Nguyen, Chuang, Tung, Hsieh, Jin, Shi, Marthaler, Bertozzi and Murray was proven effective through experiments conducted at the Caltech University’s multi-vehicle wireless testbed facility. One of the main ideas developed in the paper [39] was to endow each element in the environment, including the controlled robot as well as obstacles and targets, by both an attractive and a repulsive potential to improve maneuverability and control flexibility.
Since such VARP control theory was specifically designed to control a simple robotic platform with three degrees of freedom (two positional coordinates and an orientation angle), it cannot be extended directly to more complicated dynamical systems such as a six degree-of-freedom drone. The aim of the present paper is to design an artificial control field based on the virtual attractive-repulsive potentials to be applied to a wide class of dynamical systems. In fact, in the present paper, a VARP-based method will be developed to control different dynamical systems whose state-space equations insist on different mathematical spaces. In particular, manifold-type state spaces shall be dealt with, which present a high degree of symmetry, due to mutual non-linear constraints that single physical descriptive variables are subjected to. In order to formulate a VARP-on-manifold control theory, a special branch of mathematics will be accessed, namely manifold calculus. In addition, in order to implement the devised VARP-on-manifold control theory on a computing platform, specific numerical algorithms have been developed, which are based on manifold calculus. As a reference on coordinate-free (embedded) manifold calculus in system theory and control, interested readers might consult the tutorial paper [40].
The present document is organized as follows.
Section 2 describes the theory of virtual attractive-repulsive potentials as introduced in [9,39]. The aim of this section is to recall the main concepts related to the VARP theory and its main theoretical features.
Section 3 presents a description of a prototypical wheeled robot, used at the Caltech University for testing the devised VARP principle. This section also explains how to implement the VARP control method on a computation platform in order to evaluate numerically its effectiveness in controlling a small robot. In particular, in this section, results of numerical experiments obtained by varying the parameters of the VARP method will be presented and discussed, in order to illustrate its features. The numerical experiments were performed on purpose by a low-precision numerical scheme (the forward Euler method) to recap this method that will be extended to manifold in the following section. The analysis presented in this section is propaedeutic to the following development as the understanding of details concerning the application of the VARP control theory to drive a small robot will be beneficial in extending the VARP theory to control more complicated systems whose state evolves on smooth manifolds.
Section 4 recalls generalities of Riemannian manifolds and recaps the theory of second-order dynamical system whose state equations are formulated on the tangent bundle of a manifold. This section then illustrates how the VARP method can be extended in order to control a dynamical system whose state equations are formulated on a Riemannian manifold (M-VARP). As a case-study, the M-VARP method will be illustrated on the manifold S 2 (a three-dimensional unit sphere). The numerical algorithms to implement such control scheme will be shown to arise from a specifically-tailored version of a forward Euler method on manifolds.
Section 5 completes the present document, focusing on conclusions and future works.

2. Introduction to the VARP Control Theory

The virtual attractive-repulsive potentials-based control theory stems from the construction of a virtual potential field made of virtual points. To each point it will be assigned both an attractive and a repulsive potential. The points on the virtual field may represent obstacles, targets or different sorts of objects in a state space. In this document, we shall recall how the VARP control theory may be employed to control different dynamical systems associated to different state spaces.

2.1. Virtual Potentials for Swarming Models in Biology

Virtual potentials provide a convenient framework for autonomous vehicle control and path planning. Such potentials arise from swarming models in biology and may be formulated as in the discrete particle model proposed by the Levine-Rappel-Cohen group [9].
Given N particles labeled i = 1 , 2 , , N , the model proposed in [9] that governs the motion of each particle is described by:
m i d v i d t = α f ^ i β v i grad V , d x i d t = v i ,
where m i > 0 denotes the mass of each particle, x i R 3 and v i R 3 its position and velocity, respectively. Each particle experiences a unit-norm self-propelling force f ^ i R 3 with fixed magnitude α > 0 . To prevent the particles from reaching large speeds, a friction force with coefficient β > 0 was introduced.
In addition, each particle is subjected to an attraction force (that depends only on the distance from one particle to the others) which is characterized by an interaction range a > 0 . This force is responsible for the aggregation of the particles. To prevent a collapse of the aggregate, a shorter-range repulsive force was introduced with interaction range r > 0 . The authors of [9] verified experimentally that qualitative results are independent of the explicit expression of the interaction potential. Levine’s model is, in fact, based on exponentially decaying interactions described by virtual potentials of the kind:
V : = j , j i C a exp x i x j a + j , j i C r exp x i x j r ,
where C a > 0 , C r > 0 determine the strength of the attractive and repulsive forces, respectively. (The original potential has reversed sign with respect to the one reported here: We have chosen the above form for consistency with the remainder of the paper.) We underline that Levine’s model is based on parameters whose values are identical for each particle, while in the next sections we shall define specific parameters for each obstacle and target.

2.2. VARP Control Theory

From Levine’s model, a VARP theory to control and coordinate a group of vehicles was developed in [39]. Given an i-th vehicle and N concurrent agents labeled j = 1 , 2 , , N , the VARP control method is described by the following general coupled equations:
d z i d t = w i , m i d w i d t = α ξ ^ i β w i grad z i j = 1 j i N V j r ( d ( z i , q j ) ) V j a ( d ( z i , q j ) ) ,
where the notation used has the following meaning:
  • the symbol ξ ^ i denotes a unit vector in a reference frame attached to each i-th vehicle rotated with respect to the inertial reference frame x ^ y ^ by an angle θ , as illustrated in Figure 1;
  • the symbol z i = ( z x i , z y i ) denotes the position of the i-th vehicle at time t;
  • the symbol w i denotes the velocity of the i-th vehicle at time t;
  • the constant m i denotes the mass of the i-th vehicle;
  • the quantity d ( z i , q j ) = z i q j denotes the Euclidean distance between the i-th vehicle and the j-th agent that is located at q j = ( q x j , q y j ) at time t; in this context, an agent could represent an obstacle, a target point or another vehicle; in the case of multiple vehicle control, each vehicle other than the i-th one will be considered as an obstacle for the i-th vehicle, therefore the position of the i-th vehicle is denoted as z i while the position of the j-th obstacle will be denoted as q j ;
  • the constant α > 0 denotes the magnitude of the self-propelling force; the self-propelling term determines a speed-up of the motion of a vehicle and helps escaping unwanted plateaus of the potential function; the amplitude α of the self-propelling term modulates these positive effects but may also cause instability in the system and unwanted oscillations around the way-point;
  • the constant β > 0 denotes a friction coefficient; viscous-type friction brakes the motion of a vehicle and generally has the positive effect of stabilizing its motion; friction has however the side effect of slowing down the navigation of a vehicle; the friction coefficient β should hence be chosen sufficiently large to stabilize the system and sufficiently small not to delay excessively reaching the way-point;
  • symbols V j a e V j r denote, respectively, the attractive and repulsive potential functions, defined as:
    V j a ( ϕ ) : = C j a e ϕ / j a , V j r ( ϕ ) : = C j r e ϕ / j r ,
    where constants C j a > 0 , C j r > 0 denote the “magnitude of the potentials”, constants j a > 0 , j r > 0 their “characteristic lengths”, and ϕ denotes a real positive variable.
In the biology-inspired model proposed in [9], potentials serve to organize a group of self-propelled particles into a mill-like formation. In the VARP theory, attractive potentials are used to direct vehicles towards way points and attractive/repulsive potentials to keep vehicles avoiding each other and stationary obstacles. Namely, a point-to-point control strategy arises from the VARP theory.

3. VARP Control Theory Applied to a Wheeled Robot Navigation on a Plane

In the present section, we shall recall how the VARP control theory was exploited to control a small self-driven wheeled vehicle termed ‘Kelly robot’. Full mathematical details are reported and commented, since these details are deemed interesting to understand the meaning of each terms in Equation (3) in view of a successive extension of the plain VARP theory to Riemannian manifolds.

3.1. Kelly Robot Description and Mathematical Model

The Kelly robot was developed at the Caltech University and it was taken as a prototypical model for testing the VARP feedback control principle. Such robot was realized as a fiberglass structure that includes an onboard micro-controller (that implements the algorithm for movement control), onboard sensors and a 802.11b wireless card through which it may communicate. Further interesting characteristics are low-friction omnidirectional casters (which allow the Kelly robot to move over the floor) and two high-performance ducted fans, each capable of producing up to 4.5 N of continuous thrust. Caltech tests have been conducted at the Multi-Vehicle Wireless Testbed (MVWT), which is a platform designed for validating theoretical advances in multiple-vehicle coordination and cooperative control. The MVWT is equipped by a wireless network, an arena for multi-vehicle operations, a lab positioning system based on overhead cameras, and a computer network. The smooth floor where the vehicles maneuver has dimensions of approximately 6.5 m × 7.0 m. Vehicles are marked with binary symbols on their hats, that the vision system uses to identify their location and orientation.
The Kelly robot is modeled by a nonlinear dynamical system described by the following equations:
m d u d t = μ u + ( F R + F L ) cos θ , m d v d t = μ v + ( F R + F L ) sin θ , J d Ω d t = ψ Ω + ( F R F L ) r f ,
where the symbols used take the following meanings:
  • the symbols F R and F L denote the magnitudes of the forces generated by, respectively, the ducted fans located at the right-hand side and the left-hand side of the robot’s rear end, which are separated by a distance 2 r f as shown in Figure 1, where r f = 0.124 m;
  • the constant m denotes the mass of the Kelly vehicle, whose value is 5.15 kg;
  • the constant μ denotes the linear friction coefficient, whose value, in the case of the MVWT testbed, is 4.5 kg/s;
  • the constant ψ denotes an angular friction coefficient, whose value, in the case of the MVWT testbed, is 0.064 kg m 2 /s;
  • the variables u = d z x d t and v = d z y d t denote the components of the linear velocity of the vehicle, where z x and z y denote the positional coordinates of the vehicle;
  • the variable Ω = d θ d t denotes the angular velocity with respect to the x ^ y ^ reference frame, expressed in rad/s, and the angle θ denotes the orientation of the vehicle (with respect to the same x ^ y ^ reference frame), expressed in radians;
  • the constant J denotes the moment of inertia of the vehicle and its value is 0.5 kg m 2 .
The quantities μ , ψ , m, J and r f denote physical constants of the vehicle, while the variables u, v, Ω and θ are the results of its dynamics and play the role of internal states of a vehicle’s model. The quantities F R and F L may be regarded as inputs of the system and are subjected to the action of a controlling algorithm, which may determine their amplitude according to a desired control strategy.
The aim of the VARP-based design is to determine expressions of the forces F R and F L in such a way that the mathematical model encoded by Equation (5) transforms into the VARP Equation (3). Such development is detailed in the next section.

3.2. VARP Control Theory Applied to the Kelly Robot

Combining Kelly robot’s equations of motion (5) and the equations that describe the VARP theory (3), it is possible to obtain a direct definition of the right-hand and left-hand fan forces, which represent input/control variables in the mathematical model (5).
Plugging into the second equation of (3) the explicit expressions of the potential functions leads to:
f i : = α ξ i ^ β w i grad z i j = 1 j i N C j a e d ( z i , q j ) j a + C j r e d ( z i , q j ) j r .
Applying the gradient to the sum we obtain:
f i = α ξ ^ i β w i j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) x ^ + ( z y i q y j ) y ^ d ( z i , q j ) .
The vehicle-fixed ξ ^ ζ ^ reference frame is obtained by rotating the inertial x ^ y ^ reference frame by an angle θ . Namely, the two reference frames are related by:
x ^ = ξ i ^ cos θ i ζ i ^ sin θ i , y ^ = ξ i ^ sin θ i + ζ i ^ cos θ i .
Plugging Equation (8) in Equation (7) gives:
f i = α ξ ^ i β w i + j = 1 j i N [ C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) cos θ i + ( z y i q y j ) sin θ i d ( z i , q j ) ξ ^ i + + C j a C j a e d ( z i , q j ) C j a C j r j r e d ( z i , q j ) C j r ( z x i q x j ) sin θ i + ( z y i q y j ) cos θ i d ( z i , q j ) ζ ^ i ] .
The forcing term (9) may be decomposed in components along the ξ ^ i and ζ ^ i axes. From the scalar product between both sides of the relation (9) and the unit vector ξ i ^ we obtain, in particular, the component of the forcing term f i along the direction of motion:
f i : = α ξ ^ i β w i + j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) cos θ i + ( z y i q y j ) sin θ i d ( z i , q j ) ξ ^ i .
The component of the force along the ξ ^ i direction, in turn, may be decomposed in two components, one along the x ^ direction, and one along the y ^ direction, which read, respectively:
f i , x : = α cos θ i β u i + j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) cos 2 θ i + ( z y i q y j ) cos θ i sin θ i d ( z i , q j ) ,
f i , y : = α sin θ i β v i + j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) cos θ i sin θ i + ( z y i q y j ) sin 2 θ i d ( z i , q j ) .
In addition, from the scalar product between the force (9) and the unit vector ζ i ^ , we obtain the component of the total forcing term perpendicular to the direction of motion, which reads:
f i : = j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) sin θ i + ( z y i q y j ) cos θ i d ( z i , q j ) ζ ^ i .
The above component of the total force acting on one side of the body of the vehicle is responsible for the rotational motion of the vehicle which, in turn, determines its steering ability.
It is instructive to devise a physical interpretation of the above terms. From the Figure 1, it is noticed that the velocity w is directed along the ξ ^ direction while it is null along ζ ^ . The perpendicular component d w d t | (projected into ζ ^ ) of the robot acceleration is related to its rotation about a perpendicular axis sticking off the floor.
It could be convenient to think of a inter-fan vector of length r f , with a direction consistent to the fact that d w d t | is directed along ζ ^ . Multiplying d w d t | by the robot’s mass, one obtains a force along the ζ ^ direction, which is responsible for Kelly robot’s spinning over the floor. Such force may be decomposed in two components, each of them taking half of its magnitude. Consequently the two virtual forces, with a moment arm r f , establish a torque that causes the rotation of the system.
Formally, since the force f i is responsible for the change of the angular momentum of the vehicle, it is sensible to define the mechanical torque magnitude as:
r f f i = r f j = 1 j i N [ C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r × ( z x i q x j ) sin θ i + ( z y i q y j ) cos θ i d ( z i , q j ) ] .
The right-hand side of Equation (14) is the magnitude of the mechanical torque acting on the vehicle’s body, which is computed as the product between the position vector of the force r f and the component (13) of the force perpendicular to Kelly robot’s direction.
Now, the VARP-based control equations for a Kelly robot may be derived by matching the above equations with Kelly robot’s equations of motion. In this way, one may obtain the sought control relationships between VARP features and Kelly robot’s inputs and parameters.
Specifically, by matching the first equation in (5) to Equation (11), we obtain:
μ u i + ( F R , i + F L , i ) cos θ i = α cos θ i β u i j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) cos 2 θ i + ( z y i q y j ) cos θ i sin θ i d ( z i , q j ) .
The parameter β may be chosen arbitrarily, hence we shall impose β : = μ . Furthermore, deleting the factor cos θ i from both sides of the above equation, gives:
F R , i + F L , i = α j = 1 j i N [ C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r × ( z x i q x j ) cos θ i + ( z y i q y j ) sin θ i d ( z i , q j ) ] .
Then, comparing the third equation in (5) with the relation (14) and taking ψ = 0 , gives:
F R , i F L , i = j = 1 j i N [ C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r × ( z x i q x j ) sin θ i + ( z y i q y j ) cos θ i d ( z i , q j ) ] .
Notice that the constant ψ does not match with any parameter in the VARP equations, hence it must be assumed of zero value to retain consistency [39], which, in practice, is equivalent to considering it of negligible value.
From Equations (16) and (17) we may obtain the right-hand fan thrust as well as the left-hand fan trust as:
F R , i = α 2 1 2 j = 1 j i N [ C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r × ( z x i q x j ) ( cos θ i sin θ i ) + ( z y i q y j ) ( sin θ i + cos θ i ) d ( z i , q j ) ] ,
F L , i = α 2 1 2 j = 1 j i N [ C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r × ( z x i q x j ) ( cos θ i + sin θ i ) + ( z y i q y j ) ( sin θ i cos θ i ) d ( z i , q j ) ] .
Notice that the above expressions present a number of repeating terms. Collecting such repeating terms from the Equations (18) and (19), we may define:
F 1 , i : = 1 2 j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z x i q x j ) d ( z i , q j ) ,
F 2 , i : = 1 2 j = 1 j i N C j a j a e d ( z i , q j ) j a C j r j r e d ( z i , q j ) j r ( z y i q y j ) d ( z i , q j ) .
Ultimately, we obtain two equations for the right-hand fan and the left-hand fan thrusts:
F R , i = α 2 + ( cos θ i sin θ i ) F 1 , i + ( sin θ i + cos θ i ) F 2 , i ,
F L , i = α 2 + ( cos θ i + sin θ i ) F 1 , i + ( sin θ i cos θ i ) F 2 , i ,
which are in full accordance with those presented in [39].
In the present research work, we are mainly interested in the theoretical aspects that allow one to match the equations in the mathematical model of a vehicle to the structure of the general VARP control theory. In addition, we are especially interested in performing numerical experiments on the basis of the devised equations in order to gain a sufficient insight into the effects that the values of the parameters induce on the behavior of a vehicle. The numerical aspects of the present analysis are covered in the following section.

3.3. Numerical Scheme to Simulate a Controlled Dynamical System

The aim of the present subsection is to recall, from the specialized literature, a numerical scheme, namely the forward Euler method, to approximately solve the differential equations that govern the motion of a Kelly robot. Although such method is standard in numerical calculus, we deemed it appropriate to recall it in some details to set up a common ground in view of its extension to manifolds in Section 4.
The forward Euler method (hereafter denoted as fEul) is a numerical integration scheme used to approximate the solution of an ordinary differential equation starting from a known initial value, namely an initial value problem (IVP). A first-order IVP may be expressed as:
x ˙ ( t ) = f t , x ( t ) , t t 0 , x ( t 0 ) = x 0 .
The fEul method is based on two key ideas, namely, uniform time-discretization of the state-variable and approximation of its first-order derivative by means of an incremental ratio. To approximate the solution x ( t ) to the IVP (24), define a uniform succession of time-steps, separated by a reasonably short interval h > 0 termed stepsize, which are denoted by t 1 = t 0 + h , t 2 = t 1 + h and so forth. According to the fEul method, for reasonably small values of h, the first time-derivative x ˙ can be approximated by the incremental ratio:
x ˙ ( t ) x ( t + h ) x ( t ) h .
Denoting by x n an approximated value of the exact solution x ( t n ) at the n-th step, the IVP (24) for a generic time t n may be approximated by the difference equation:
f ( t n , x n ) = x n + 1 x n h ,
from which the iterative fEul method arises:
x n + 1 = x n + h f ( t n , x n ) .
The fEul method will be employed to approximate the solutions to the differential Equation (5) for simulation purposes. In the following mathematical steps, we will only show how to apply such method to the first equation of (5), because for the remaining differential equations the procedure is similar.
For the sake of notation conciseness, hereafter we shall assume the presence of a single Kelly robot, so as to drop the index “i” from the equations of motion. The first of the differential Equation (5) is a second-order equation in the variable x. At time t = 0 , the Kelly robot presents an initial x-coordinate denoted as x 0 and an initial velocity u 0 along the x-axis. The IVP (5) may be split into two IVPs:
IVP 1 : = u ˙ = μ m u + ( F R + F L ) cos θ m , u ( 0 ) = u 0 . IVP 2 : = x ˙ = u , x ( 0 ) = x 0 .
For the second IVP, an application of the fEul method yields the iteration:
x n + 1 = x n + h u n ,
while for the first IVP, an application of the fEul method yields the iteration:
u n + 1 = u n + h μ m u n + ( F R , n + F L , n ) cos θ n m .
Likewise, for the second equation of the system (5) we obtain:
y n + 1 = y n + h v n , v n + 1 = v n + h μ m v n + ( F R , n + F L , n ) sin θ n m ,
and for the third differential equation in the system (5) we obtain:
θ n + 1 = θ n + h Ω n , Ω n + 1 = Ω n + h ψ J Ω n + ( F R , n F L , n ) r f J .
By applying fEul iteration, the values of the robot’s location and orientation may be approximated. The more the sampling step is small, the more such approximations will result accurate.
It is important to recall that the forward Euler method is poorly-performing in comparison to higher-order methods such as the 4th order Runge–Kutta method. Nevertheless, in the present paper we decided, in contrast to other papers on numerical methods on manifolds written by the third author, to invoke only the forward Euler method because usage of more accurate methods would have required a more extensive introduction on higher-order methods on manifolds that would have hindered the main flow of discussion, namely the extension of VARP method to smooth manifolds.

3.4. Simulations and Results of VARP Control Method

In the present subsection, results of numerical simulations will be discussed in order to illustrate how the VARP method was employed to control a Kelly robot and how the values of the VARP parameters, with special reference to constants C a , a , C r and r impact on control outcomes. The value of the chosen numerical stepsize in every simulation in this section is h = 0.01 (s).
Figure 2 shows the result of a numerical simulation referred to a single target point and no obstacles. From the six panels of such figure it may be readily recognized that the robot traverses the state space from the initial point directly to the target. After the Kelly robot reaches the target, it keeps revolving around the way-point due to the action of the self-propelling term. During vehicle’s journey, the thrusts generated by the left-hand fan and by the right-hand fan look in sync, because the vehicle travels along a straight line, and the orientation of the vehicle keeps almost constant until it reaches the target.
In the next two simulations, an obstacle between the initial location and the target location was added. From Figure 3 it is readily observed how the robot could reach the target and managed to avoid the obstacle. In particular, while the vehicle is located sufficiently far away from the target to ignore its repulsive action, its trajectory resembles a straight line. As soon as the vehicle enters the sphere of influence of the obstacle, its trajectory bends to the left, which corresponds to a sudden increase of the thrust exerted by the right-hand fan around t = 200 s, to get around the obstacle. After reaching the target, both thrusts stabilize around a value giving rise to a forcing action necessary to counter-act the self-propelling term. Figure 4 shows a result obtained under the same conditions of Figure 3 except that the magnitude of the self-propelling term was increased. In this case, the thrust is quite large, hence the vehicle approaches the target location quickly except then starting to revolve around the target in a pronounced way. Such effect is well visible because the self-propelling term prevails over the attraction pull of the target. Nevertheless, despite the overly irregular movement of the vehicles, the robot draws circular revolving trajectories around the target point.
The trajectory followed by a vehicle under the control action of a VARP-based algorithm may be smoothed out by increasing the attractive magnitude of the target to counteract the self-propelling term, as illustrated in Figure 5. Although the robot appears to reach and then wander around the target point, with such a large value of the parameter α , it is necessary to consider carefully the irregular trend of the thrusts generated by the propellers. Experimental results show that the self-propelling term must range from 0.1 to 0.5 in order to induce a reasonable trajectory on the vehicle: the higher the value of the self-propelling amplitude α , the higher the average thrust required to the ducted fans.
A further interesting experiment consisted in building a ‘barrier’ between the starting point and the target location. A barrier, in this context, is constructed by placing a number of obstacles represented by repulsive potentials. Figure 6 shows the results of such numerical experiment. From the 3D potentials graph, it can be readily noticed a potential ‘bulge’ that represents the repulsive influence of the obstacles in the barrier. Even in such a case, a vehicle controlled by a VARP algorithm manages to reach the target location by getting around the barrier.
It can be noticed from Figure 7 that, if a larger value of the parameter r O is set, the Kelly robot tends to follow a wider trajectory since the obstacles result to be more cumbersome and their influence, in terms of repulsive potentials, is perceived farther by the robot’s control system. The 3D graph displayed in such figure shows how the virtual potential field influences the vehicle in every point of its state space. Indeed, the areas where the repulsive potentials are located correspond to a cumbersome ‘bulge’ in the 3D potentials graph. Compared to Figure 6, the ‘bulge’ appears wider and taller since the repulsive range of obstacles takes a larger value. Instead, the attractive potential corresponding to the target location may be visualized as a depression/dip in the same 3D graph.
In general, the larger the value of the repulsive range, the wider the influence of the obstacles, which could be visualized as wider ‘bulges’ in the potential surface.
Upon choosing, instead, lower values for the repulsive range of the potentials describing the barrier obstacles, a vehicle tends to approach the barrier while, being attracted by the target and as well as being repelled from the obstacles, it might get trapped near the barrier as testified by the numerical experimental result illustrated in Figure 8. It can be noticed from the 3D potentials graph that the vehicle is trapped behind the ‘bulge’ which appears to be less tall than in the previous experiments, since the repulsive range of obstacles takes a lower value. In this case, in order to make a robot be able to overcome the barrier, it is advisable to choose a large value of the self-propelling term coefficient as illustrated by the results displayed in Figure 9.
The previous simulations illustrated cases of study with a few obstacles and one target point. Building a more complex virtual potential field on the basis of more obstacles and/or more targets could lead to a more involved control algorithm yet to a more precise control action on a moving vehicle. As an instance, Figure 10 illustrates how to make a vehicle follow a previously planned path. In such numerical experiment, a vehicle reaches the prescribed target by following a ‘guiding wall’ built through virtual potentials. It is remarkable how, in such simulated experiment, the thrusts exerted by the propellers on the vehicle’s body keep limited in amplitude until the vehicle reaches the target location.
Further simulations were performed by considering different initial orientations of a moving vehicle. Even in these cases, the control algorithm is able to steer the robot towards the prescribed target. Results of numerical simulations are illustrated in Figure 11, Figure 12, Figure 13 and Figure 14. From the results illustrated in Figure 11, in particular, it may be noticed that the Kelly robot reaches the prescribed target without any difficulty and without any particular effort required to the propellers, as testified by the results shown in the panels about the thrusts exerted by the fans, which exhibit a rather regular course over time. In addition, the results displayed in Figure 14 may be compared to the simulation results shown in Figure 13; it is interesting to notice that, in this case, the Kelly robot will turn counterclockwise in order to steer towards the target. This aspect could also be noticed from the Kelly robot orientation graph where the plot reaches 2 π and suddenly drops to 0.
The numerical simulations presented in this section are meaningful in view of an extension of the standard VARP control theory to state manifolds and serve as a guide in the development of illustrative numerical experiments concerning the next part of the paper. In fact, the large number of numerical results were designed to gain (and to guide readers through) a deeper understanding about the effects of the values of the parameters on the control outcomes.
As mentioned in the Introduction, the pursued extension of the VARP theory to state manifolds was partially inspired by the earlier work of Koditschek and Rimon [16], which however considered simpler gradient systems and was more theoretical-oriented (in particular, the work [16] is notable for the use of topological arguments to prove the existence of navigation functions on a large class of manifolds).
Notice that all the obstacles located in have been supposed to be stationary, although this is not a strict requirement for the devised theory to hold.

4. Extension of the VARP Control Theory to Riemannian Manifolds

The aim of the present section is to design a VARP-like principle to control second-order dynamical systems whose state space is a Riemannian manifold. This method will be referred to as M-VARP as it represents an extension of the original VARP control method to a generic Riemannian manifold.
A number of real-world dynamical systems may be framed as systems on manifolds. An example is a flying drone or an orbital gyrostat whose attitude is represented by a special orthogonal matrix belonging to a manifold denoted as SO(3) as illustrated, for example, in [41,42,43].
Successively, the devised M-VARP principle will be implemented and simulated for the case of study where it controls an abstract dynamical system whose state space is the sphere S 2 (which will be denoted as S 2 -VARP). As in the previous experiments, we shall consider the presence of a single agent (as a matter of fact, in this paper we do not deal with ‘cooperative control’). As a general reference to manifold calculus, interested readers might want to refer to the Symmetry tutorial paper [40].

4.1. Generalities on Riemannian Manifolds

Let M denote a smooth manifold. At a point x M , the tangent space to the manifold M is denoted as T x M . The symbol T M denotes the tangent bundle associated to the manifold M defined as T M : = { ( x , v ) x M , v T x M } .
A Riemannian manifold M is endowed with a bilinear, positive-definite form · , · x : T x M × T x M R that associates a scalar (or inner) product to each tangent space T x M . A local metric · , · x also defines a local norm v x : = v , v x , for v T x M .
The Riemannian gradient of a scalar-valued function ψ : R M evaluated at a point x M is denoted as grad x ψ . The Riemannian gradient is associated to a specific metric.
A manifold exponential map  exp : T M M maps a pair ( x , v ) T x M to a point y = exp x ( v ) on the manifold. The exponential map ‘shifts’ a point x along a geodesic curve in the direction of v to get to the point y. Its inverse ‘log’ is defined only locally and is termed manifold logarithm. Given points x , y M , a manifold logarithm computes a tangent vector v = log x ( y ) T x M such that exp x ( v ) = y .
Given two points x , y M connectable by a geodesic arc, their Riemannian distance is denoted by d ( x , y ) . On a Riemannian manifold, the distance between two nearby points may be evaluated by:
d ( x , y ) = log x ( y ) x .
A fundamental result of the calculus on manifolds states that the Riemannian gradient of a squared distance function reads:
grad x d 2 ( x , y ) = 2 log x ( y ) ,
wherever the logarithm is defined (for a proof, see, e.g., [40]).
The covariant derivative, a generalization of directional derivative of calculus, of a vector field w x T x M in the direction of a vector v T x M is denoted as v w . We assume M to be endowed with a metric connection (namely, that the covariant derivative of the metric tensor is identically zero).
The parallel transport operator P : T M 2 T M maps a tangent vector v T x M at a given point x M into a tangent vector w T y M at another given point y M , which is denoted as w = P x y ( v ) . Parallel transport moves the tangent vector v from T x M to T y M along the geodesic curve that connects the point x to the point y (if any) preserving its tangency along the geodesic arc and the angle formed to the tangent to the geodesic, in such a way to realize a conformal isometry.
Parallel transport and covariant derivation are closely related to one another, in particular, covariant derivation may be expressed in terms of parallel transport as follows:
( v w ) x = lim h 0 P γ ( h ) x ( w γ ( h ) ) w x h ,
where γ denotes any smooth curve with prescribed foot-point and direction, namely such that γ ( 0 ) = x M and γ ˙ ( 0 ) = v T x M . For practical/computational purposes, such smooth curve is often taken as a geodesic arc. Such relationship leads to a numerical approximation of the covariant derivative at a point x, as it will be pointed out in Section 4.3.

4.2. Extension of the VARP Principle to Riemannian Manifolds

In order to extend the VARP principle to control dynamical systems whose state spaces are Riemannian manifolds, it is necessary to recall a fairly broad class of second-order dynamical systems. In the present context, it is sufficient to take into account a class of second-order dynamical systems whose state-transition equations are formulated on the tangent bundle of a manifold M , described by:
x ˙ ( t ) = v ( t ) , v ( t ) v ( t ) = μ v ( t ) + u ( t ) .
In such equations, the following notation has been used:
  • the function x ( t ) M denotes the state of the dynamical system (it could be thought of as the position of a pointwise mass on the manifold at time t);
  • the function v ( t ) T x ( t ) M denotes the tangent vector to the trajectory x ( t ) at the time t (it could be thought of as the velocity of a pointwise mass on the manifold);
  • the vector field v v represents the covariant derivative of the vector field v with respect to itself (it could be thought of as the acceleration of the pointwise mass on the manifold); if v v = 0 the acceleration is zero, thus the pointwise mass will follow a uniform geodesic trajectory (which represents the counterpart, in the ordinary space, of a straight uniform motion);
  • the constant μ > 0 denotes a ‘viscous’ friction coefficient (therefore, the term μ v could be thought of as a friction force which brakes the motion of a pointwise mass sliding over the manifold);
  • the function u ( t ) denotes a control action at time t (it could be thought of as a force whose purpose is to make a pointwise mass move on a manifold and deviate with respect to a purely geodesic trajectory); such control action is a vector field which is tangent to the manifold at the state x ( t ) .
On the basis of the above formulation of a dynamical system on manifold, it is viable to extend the VARP control principle recalled in Section 2. In fact, an extension to manifold-type state-space systems of the type (36) consists in setting the control action u according to a manifold-consistent translation of the terms in the VARP principle (3). The proposed extension is outlined in the following:
x ˙ ( t ) = v ( t ) , v ( t ) v ( t ) = μ v ( t ) + α v ^ ( t ) grad x ( t ) V , V ( x ) = j = 1 N V j r ( d 2 ( x , q j ) ) V j a ( d 2 ( x , q j ) ) .
The terms appearing in the above equations may be explained as follows:
  • the term α v ^ , with α > 0 , represents a self-propelling term, where v ^ : = v / v if v 0 otherwise v ^ = 0 ;
  • the function V ( x ) denotes the total potential which depends on the state x; the functions V j r and V j a denote, respectively, the repulsive and attractive components of the potential function, as they were already defined for Euclidean spaces in Section 2.2; note that the components are indexed by the index j: this indexing does not appear explicitly in [39] while, in the present case, each obstacle and target has its own coefficient;
  • the N terms labeled q j represent obstacle-associated and target-associated locations on the manifold M ;
  • the function d 2 ( · , · ) denotes the squared Riemannian distance between two points on the state manifold M ; notice that, in the equations, it appears squared because such choice, generally, simplifies the calculation of derivatives.
Combining together the Equations (36) and (37), it can be readily seen that the control field u takes the expression:
u : = α v ^ grad x j = 1 N V j r ( d 2 ( x , q j ) ) V j a ( d 2 ( x , q j ) ) = = α v ^ j = 1 N V ˙ j r ( d 2 ( x , q j ) ) V ˙ j a ( d 2 ( x , q j ) ) grad x d 2 ( x , q j ) .
Recalling the relationship (34) for Riemannian manifolds leads to the expression:
u = α v ^ 2 j = 1 N V ˙ j a ( d 2 ( x , q j ) ) V ˙ j r ( d 2 ( x , q j ) ) log x ( q j ) ,
where V ˙ j a : = d V j a ( ϕ ) d ϕ and V ˙ j r : = d V j r ( ϕ ) d ϕ .
Coherently with what was expected, the results show that u T x M .
In analogy to the VARP principle formulated on Euclidean spaces (see Equation (4)), exponential-type attractive and repulsive potential functions have been chosen as:
V j a ( ϕ ) : = C j a e ϕ / j a , V j r ( ϕ ) : = C j r e ϕ / j r ,
where C j a and C j r denote the ‘magnitude of the potentials’, j a and j r their ‘characteristic lengths’ and ϕ denotes a real positive variable. Their derivatives with respect to ϕ take the expressions:
d V j a ( ϕ ) d ϕ = C j a 2 j a ϕ e ϕ / j a , d V j r ( ϕ ) d ϕ = C j r 2 j r ϕ e ϕ / j r ,
therefore the control field (39) ultimately reads:
u ( t ) = α v ^ ( t ) j = 1 N C j r j r e d ( x ( t ) , q j ) / j r d ( x ( t ) , q j ) C j a j a e d ( x ( t ) , q j ) / j a d ( x ( t ) , q j ) log x ( t ) ( q j ) .
The M-VARP-controlled dynamical system (in analogy to a VARP-controlled Kelly robot described in Section 3.2) is hence described by the following system of equations:
x ˙ ( t ) = v ( t ) , v ( t ) v ( t ) = μ v ( t ) + α v ^ ( t ) j = 1 N C j r j r e d ( x ( t ) , q j ) / j r d ( x ( t ) , q j ) C j a j a e d ( x ( t ) , q j ) / j a d ( x ( t ) , q j ) log x ( t ) ( q j ) .
The first equation governs the evolution of the state x of the dynamical system on the basis of its (tangent) velocity v, while the second equation governs the evolution of the velocity on the basis of the chosen potentials, of the state and of the state-velocity itself. Notice that again all the obstacles located in q j have been supposed to be stationary, although this is not a strict requirement for the devised theory to hold.

4.3. Extended Euler Scheme for the Numerical Simulation of the M-VARP Control Method

In the preset subsection, we shall illustrate an extension of the previously-recalled forward Euler method to numerically simulate a controlled system on manifold.
The system (43) to be simulated numerically may be recast in compact form as:
x ˙ ( t ) = v ( t ) , v ( t ) v ( t ) = σ ( x ( t ) , v ( t ) ) , x ( 0 ) = x 0 , v ( 0 ) = v 0 ( i n i t i a l c o n d i t i o n s ) ,
where σ : T M T M is the function on the right-hand side of the second equation in (43) that maps a point x and a tangent vector v T x M into a tangent vector in T x M .
To solve numerically the system of differential Equation (44), namely to simulate the controlled system (43), we introduce three discrete-time sequences that arise from time discretization with a step size h > 0 :
  • the sequence x k M , with k = 0 , 1 , 2 , 3 , , represents a time-discretized version of the state x ( t ) , namely x k denotes a numerical approximation of the exact state x ( k h ) ;
  • the sequence v k M , with k = 0 , 1 , 2 , 3 , , represents a time-discretized version of the velocity v ( t ) , namely v k denotes a numerical approximation of the exact state-velocity v ( k h ) ;
  • the sequence u k M , with k = 0 , 1 , 2 , 3 , , represents a time-discretized version of the control field u ( t ) , namely u k denotes a numerical approximation of u ( k h ) , that is:
    u k : = α v ^ k j = 1 N C j r j r e d ( x k , q j ) / j r d ( x k , q j ) C j a j a e d ( x k , q j ) / j a d ( x k , q j ) log x k ( q j ) .
Notice that the discrete-time index is denoted by a superscript ( k ) to avoid confusing it with the obstacle/target index which is denoted by subscript ( j ). Once a time discretization of the variables that describe the state of a dynamical system has been performed, an extension of the forward Euler method (fEul) to manifolds may be devised. To express such fEul-like method, the exponential map and the parallel transport operators recalled in Section 4.1 shall be invoked.
As a further consideration that motivates the usage of a simple numerical scheme, such as the forward Euler one, when more precise schemes are available (such as the ones in the Runge–Kutta class), we notice that such higher-order schemes would require evaluating the control field in points of the trajectory that are not available within the numerical schemes, hence causing additional computational efforts and accumulation of additional numerical errors.
It is important to remind that the parallel transport operator is fundamental in the calculation of the covariant derivative. Let us denote by w x a vector field on T M (in each point x of the manifold, w x defines a tangent vector at x) of which the covariant derivative is sought, and by v x another vector field along which such covariant derivative needs to be calculated. The sought covariant derivative is then defined as:
( v w ) x = lim h 0 w exp x ( h v x ) P x exp x ( h v x ) ( w x ) h .
Indeed, the covariant derivative ( v w ) x represents the rate of change of the vector field w along the direction prescribed by the vector field v, namely, moving away from x toward a direction v.
Let us consider numerical resolution of the first equation in (44) that is:
d x ( t ) d t = v ( t ) , x ( 0 ) = x 0 M ,
which is an IVP on the tangent bundle T M . An algorithm that implements the numerical solution in a fEul-like fashion reads:
x k + 1 = exp x k ( h v k ) , k = 0 , 1 , 2 , 3 , ,
with x 0 and v 0 known from the initial conditions.
Let us consider now numerical resolution of the second equation of (44), that is:
v ( t ) v ( t ) = σ ( x ( t ) , v ( t ) ) , v ( 0 ) = v 0 T x 0 M ,
which represents a further IVP on the tangent bundle T M .
The relation (46), applied to the vector field v with respect to itself, could be numerically approximated as:
v ( h k ) v ( h k ) v k + 1 P x k x k + 1 ( v k ) h .
(We notice that the above relationship is somewhat arbitrary, albeit natural. In fact, the quantities x k + 1 and v k + 1 are not related to the quantities x k and v k as much as in the exact relationship (46) and, in particular, are not related to h by a straighforward relationsip, hence the division by h may appear somewhat arbitrary.) Therefore, an algorithm that implements the numerical solution of (49) in a fEul-like fashion reads:
v k + 1 = P x k x k + 1 ( v k + h σ ( x k , v k ) ) , k = 0 , 1 , 2 , 3 , ,
with x 0 and v 0 known from the initial conditions.
In summary, the numerical iteration that will be made use of in order to simulate a controlled second-order system on manifold reads:
x k + 1 = exp x k ( h v k ) , u k = α v ^ k j = 1 N C j r j r e d ( x k , q j ) / j r d ( x k , q j ) C j a j a e d ( x k , q j ) / j a d ( x k , q j ) log x k ( q j ) , v k + 1 = P x k x k + 1 ( 1 h μ ) v k + h u k , k = 0 , 1 , 2 , 3 , ,
with x 0 and v 0 known from the initial conditions.
In the following section, numerical results will illustrate a number of features of the devised control strategy on manifold, with reference to the unit hyper-sphere as exemplary case. Let us recall that, in the case of hyper-sphere ( M : = S n 1 ), the canonical operators and the Riemannian distance required for the numerical implementation take the following expressions:
exp x ( v ) = x cos ( v ) + v v 1 sin ( v ) , i f v 0 , x , otherwise , d ( x , y ) = | arccos ( x y ) | , log x y = d ( x , y ) sin d ( x , y ) ( I n x x ) y , P x y ( v ) = I n ( y + x ) y 1 + x y v .
The expression given about the logarithmic map is continuous in x = y , in fact it is easily seen that:
lim d ( x , y ) 0 d ( x , y ) sin d ( x , y ) ( I n x x ) y = 0 .
In the expression of parallel transport, it is understood that points x and y need not be antipodal, namely x y 1 .

4.4. Simulations Results about the S 2 -VARP Method

In the present subsection, results of numerical simulations will be reported in order to illustrate salient features of the M-VARP control method on the unitary sphere S 2 . The values of the parameters displayed in the figure captions were determined on the basis of a trial-and-error procedure, since the non-linear control algorithm is not prone to theoretical determination of optimal coefficients in any analytic way. Notice that in an abstract system the ‘temporal’ parameter t is immaterial, hence the duration of each numerical simulation is expressed in terms of computing steps. The value of the chosen numerical stepsize in every simulation in this section is h = 0.01 (s).
The first five numerical simulation results concern a case study where a single target is present while no obstacles were placed over the sphere. Figure 15a shows the state trajectory followed by an abstract second-order dynamical system on the sphere and, as expected, the system state reaches the prescribed target. Across the following subfigures, the self-propelling coefficient was gradually increased, which explains why the system gradually follows a wider path, as illustrated in Figure 15b,c. With an higher value of the coefficient α , self-propulsion is stronger than the attractive influence of the target, hence the system state will wander around the sphere without ever reaching the target, as displayed in Figure 15d. However, by increasing the attractive magnitude of the target ( C a T = 7 ), the attractive potential is able to counteract the self-propelling term in order to make the system state reach the target again, as shown in Figure 16.
A further set of experiments were designed that include one obstacle between the start location and the target location. The state trajectory of the system looks interesting, and aligned to the corresponding behavior seen in Section 3. In fact, the state trajectory of the system at the beginning of the simulation takes the shortest path to reach the target but, when the state gets close enough to the obstacle, it gets repelled and takes a detour to reach the target. As soon as the system approaches the target, its state trajectory reveals an interesting aspect of the VARP control method: since each location in the virtual potential field (that could represent an obstacle or a target) may be associated with both an attractive and a repulsive action, the system will not turn around the target since it is repelled by both the target and the obstacle, as illustrated in Figure 17. Reducing the magnitude of the repulsive potential of the target and of the obstacle, the system state would keep go round the target as shown in Figure 18. From such simulation, we can also notice that, before being repelled, the system state comes closer to the obstacle since its repulsive action was diminished.
Setting suitable parameters values, the controlled system is able to reach the target also in the presence of two (or more) obstacles, by avoiding the virtual potential bump, as illustrated in Figure 19.
Even in the present set of experiments concerning the M-VARP control method, it is interesting to observe how the controlled system behaves when a barrier made of pointwise obstacles is placed between the starting location and the target. Figure 20a illustrates how the controlled dynamical system is able to get around a barrier in order to reach the target. From this figure it is readily appreciated how the controlled agent is unable to get close to the target since the range of influence of the obstacles and their repulsive potentials exert a strong action. By setting lower values for both the repulsive range parameter and the repulsive magnitude of the obstacles makes the controlled system get closer and turn around the target, as illustrated in Figure 20b.
By increasing both the repulsive strength of the obstacles and the self-propelling coefficient, the system will loose control and will start a rapid oscillatory behavior around the barrier and the target, as it can be observed from Figure 20c. It is interesting to notice that, despite the system propulsion induced by the self-propelling term is way stronger than necessary and the system’s state wanders all over the sphere, yet the agent will never hit the barrier. To make the trajectory smoother and bound to the target, it pays to set a higher attractive magnitude for the target in order to counteract the self-propelling term. Such a conclusion may be drawn by observing the simulation result presented in the Figure 20d.

5. Conclusions and Future Work

The VARP theory developed in [39] was originally designed to control a dynamical system whose state equations were formulated on a Euclidean space. The first part of the present contribution aimed at presenting a review of such an instance of VARP control methods as well as a comprehensive set of numerical experiments to illustrate its features in controlling a simple robot with three degrees of freedom. A limited portion of such review was devoted to recall a numerical method to simulate a controlled system as well as to implement the VARP control method on a computing platform.
Based on the understanding acquired on the VARP theory and on its numerical implementation, the second part of the present paper introduced an extension of the VARP control method to regulate the dynamics of second-order systems whose state space takes the form of Riemannian manifolds. Extensive numerical experiments conducted on the S 2 manifold proved the effectiveness of the introduced M-VARP theory to control the motion of a dynamical system presenting holonomic constraints in its state-variables. Besides of the present proof-of-concept, applications of the devised theory to realistic engineering cases are currently being pursued.
From a methodological viewpoint, the encouraging results displayed within the present paper suggest a number of further investigations, which are briefly outlined in the following:
  • the control method termed M-VARP has been shown effective through numerical experiments; it would be interesting to conduct a theoretical analysis (i.e., Lyapunov-like) about its effectiveness and about its applicability;
  • the displayed experiments confirmed that the construction of a potential barrier represents a viable method to guide a dynamical system toward a predefined target; the notion of potential barrier might be extended by the notion of potential corridor that might afford better control of a systems’ trajectory;
  • the original VARP control theory was developed to achieve cooperative control; such important feature has not been exploited in the present study, since it has been assumed the presence of a single controlled agent; nevertheless, the M-VARP theory itself inherits cooperative control ability from the VARP method; it would hence be interesting to apply the M-VARP method in a multi-agent environment;
  • the M-VARP theory holds in general for Riemannian manifolds and might therefore be applied seamlessly to Lie groups; such observation implies that the devised M-VARP control theory may be applied to complex systems presenting a roto-translational dynamics, such as quadcopter drones.
Such interesting research challenges might be tackled in forthcoming endeavors.

Author Contributions

Conceptualization, L.B., F.P. and S.F.; writing—original draft preparation, L.B., F.P. and S.F.; writing—review and editing, S.F.; supervision, S.F. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Acknowledgments

The authors would like to gratefully thank Toshihisa Tanaka (TUAT—Tokyo University of Agriculture and Technology) for having hosted the authors L.B. and F.P. during an internship in January–March 2020 and for having invited the author S.F. as a visiting professor at the TUAT in February–March 2020.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Hablani, H.B. Attitude commands avoiding bright objects and maintaining communication with ground station. J. Guid. Control. Dyn. 1999, 22, 759–767. [Google Scholar] [CrossRef]
  2. Wang, Z.; Mao, S.; Gong, Z.; Zhang, C.; He, J. Energy efficiency enhanced landing strategy for manned eVTOLs using L1 adaptive control. Symmetry 2021, 13, 2125. [Google Scholar] [CrossRef]
  3. Galyaev, A.A.; Lysenko, P.V.; Rubinovich, E.Y. Optimal stochastic control in the interception problem of a randomly tacking vehicle. Mathematics 2021, 9, 2386. [Google Scholar] [CrossRef]
  4. Reyes-Uquillas, D.; Hsiao, T. Compliant human–robot collaboration with accurate path-tracking ability for a robot manipulator. Appl. Sci. 2021, 11, 5914. [Google Scholar] [CrossRef]
  5. Connolly, C.; Grupen, R. The application of harmonic functions to robotics. J. Robot. Syst. 1993, 10, 931–946. [Google Scholar] [CrossRef] [Green Version]
  6. Connolly, C.I.; Burns, J.B.; Weiss, R. Path planning using Laplace’s equation. In Proceedings of the IEEE International Conference on Robotics and Automation, Sacramento, CA, USA, 13–18 May 1990; Volume 3, pp. 2102–2106. [Google Scholar]
  7. Chang, D.; Shadden, S.; Marsden, J.; Olfati-Saber, R. Collision Avoidance for Multiple Agent Systems. In Proceedings of the 42nd IEEE Conference on Decision and Control, Maui, HI, USA, 9–12 December 2003; pp. 539–543. [Google Scholar]
  8. Waydo, S.; Murray, R.M. Vehicle motion planning using stream functions. In Proceedings of the IEEE International Conference on Robotics and Automation, Taipei, Taiwan, 14–19 September 2003; Volume 2, pp. 2484–2491. [Google Scholar]
  9. Levine, H.; Rappel, W.J.; Cohen, I. Self-organization in systems of self-propelled particles. Phys. Rev. E 2000, 63, 017101. [Google Scholar] [CrossRef] [Green Version]
  10. Leonard, E.; Fiorelli, E. Virtual Leaders, Artificial Potentials and Coordinated Control of Groups. In Proceedings of the 40th IEEE Conference on Decision and Control, Orlando, FL, USA, 4–7 December 2001; pp. 2968–2973. [Google Scholar]
  11. Chen, Y.B.; Luo, G.C.; Mei, Y.S.; Yu, J.Q.; Su, X.L. UAV path planning using artificial potential field method updated by optimal control theory. Int. J. Syst. Sci. 2016, 47, 1407–1420. [Google Scholar] [CrossRef]
  12. Paul, T.; Krogstad, T.R.; Gravdahl, J.T. Modelling of UAV formation flight using 3D potential field. Simul. Model. Pract. Theory 2008, 16, 1453–1462. [Google Scholar] [CrossRef]
  13. Rasekhipour, Y.; Khajepour, A.; Chen, S.; Litkouhi, B. A Potential Field-Based Model Predictive Path-Planning Controller for Autonomous Road Vehicles. IEEE Trans. Intell. Transp. Syst. 2017, 18, 1255–1267. [Google Scholar] [CrossRef]
  14. Shimoda, S.; Kuroda, Y.; Iagnemma, K. Potential Field Navigation of High Speed Unmanned Ground Vehicles on Uneven Terrain. In Proceedings of the 2005 IEEE International Conference on Robotics and Automation, Barcelona, Spain, 18–22 April 2005; pp. 2828–2833. [Google Scholar] [CrossRef] [Green Version]
  15. Rimon, E.; Koditschek, D. Exact robot navigation using artificial potential functions. IEEE Trans. Robot. Autom. 1992, 8, 501–518. [Google Scholar] [CrossRef] [Green Version]
  16. Koditschek, D.; Rimon, E. Robot navigation functions on manifolds with boundary. Adv. Appl. Math. 1990, 11, 412–442. [Google Scholar] [CrossRef] [Green Version]
  17. Lee, U.; Mesbahi, M. Feedback control for spacecraft reorientation under attitude constraints via convex potentials. IEEE Trans. Aerosp. Electron. Syst. 2014, 50, 2578–2592. [Google Scholar] [CrossRef]
  18. McInnes, C.R. Large angle slew maneuvers with autonomous sun vector avoidance. J. Guid. Control. Dyn. 1994, 17, 875–877. [Google Scholar] [CrossRef]
  19. Sun, D.; Hovakimyan, N.; Jafarnejadsani, H. Design of command limiting control law using exponential potential functions. J. Guid. Control. Dyn. 2021, 44, 441–448. [Google Scholar] [CrossRef]
  20. Gaudet, B.; Linares, R.; Furfaro, R. Spacecraft rendezvous guidance in cluttered environments via artificial potential functions and reinforcement learning. In Proceedings of the AAS/AIAA Astrodynamics Specialist Conference, Snowbird, UT, USA, 19–23 August 2018; pp. 813–827. [Google Scholar]
  21. Zappulla, R.I.; Virgili-Llop, J.; Romano, M. Near-optimal real-time spacecraft guidance and control using harmonic potential functions and a modified RRT. In Proceedings of the 27th AAS/AIAA Spaceflight Mechanics Meeting, San Antonio, TX, USA, 5–9 February 2017. [Google Scholar]
  22. Bloise, N.; Capello, E.; Dentis, M.; Punta, E. Obstacle avoidance with potential field applied to a rendezvous maneuver. Appl. Sci. 2017, 7, 1042. [Google Scholar] [CrossRef] [Green Version]
  23. Zhu, S.; Yang, H.; Cui, P.; Xu, R.; Liang, Z. Anti-collision zone division based hazard avoidance guidance for asteroid landing with constant thrust. Acta Astronaut. 2022, 190, 377–387. [Google Scholar] [CrossRef]
  24. Cao, X.; Chen, L.; Guo, L.; Han, W. AUV Global Security Path Planning Based on a Potential Field Bio-Inspired Neural Network in Underwater Environment. Intell. Autom. Soft Comput. 2021, 27, 391–407. [Google Scholar] [CrossRef]
  25. Baxter, J.L.; Burke, E.K.; Garibaldi, J.M.; Norman, M. Multi-Robot Search and Rescue: A Potential Field Based Approach. In Autonomous Robots and Agents; Mukhopadhyay, S.C., Gupta, G.S., Eds.; Springer: Berlin/Heidelberg, Germany, 2007; pp. 9–16. [Google Scholar] [CrossRef]
  26. Huang, L. Velocity planning for a mobile robot to track a moving target—A potential field approach. Robot. Auton. Syst. 2009, 57, 55–63. [Google Scholar] [CrossRef]
  27. Sahu, B.; Subudhi, B. Potential function-based path-following control of an autonomous underwater vehicle in an obstacle-rich environment. Trans. Inst. Meas. Control. 2017, 39, 1236–1252. [Google Scholar] [CrossRef]
  28. Tamzidul, M.; Yogang, S.; Byung-Cheol, M. Maneuvering ability-based weighted potential field framework for multi-USV navigation, guidance, and control. Mar. Technol. Soc. J. 2020, 54, 40–58. [Google Scholar] [CrossRef]
  29. Bellini, A.; Lu, W.; Naldi, R.; Ferrari, S. Information driven path planning and control for collaborative aerial robotic sensors using artificial potential functions. In Proceedings of the 2014 American Control Conference, Portland, OR, USA, 4–6 June 2014; pp. 590–597. [Google Scholar] [CrossRef]
  30. Lee, M.C.; Park, M.G. Artificial potential field based path planning for mobile robots using a virtual obstacle concept. In Proceedings of the 2003 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM 2003), Kobe, Japan, 20–24 July 2003; Volume 2, pp. 735–740. [Google Scholar] [CrossRef]
  31. Choset, H.; Lynch, K.M.; Hutchinson, S.; Kantor, G.A.; Burgard, W.; Kavraki, L.E.; Thrun, S. Principles of Robot Motion—Theory, Algorithms, and Implementations; MIT Press: Boston, MA, USA, 2005. [Google Scholar]
  32. Kamon, I.; Rimon, E.; Rivlin, E. TangentBug: A Range-Sensor-Based Navigation Algorithm. Int. J. Robot. Res. 1998, 17, 934–953. [Google Scholar] [CrossRef]
  33. Kamon, I.; Rivlin, E. Sensory-Based Motion Planning with Global Proofs. IEEE Trans. Robot. Autom. 1997, 13, 814–822. [Google Scholar] [CrossRef] [Green Version]
  34. Lumelsky, V.; Stepanov, A. Dynamic path planning for a mobile automaton with limited information on the environment. IEEE Trans. Autom. Control. 1986, 31, 1058–1063. [Google Scholar] [CrossRef]
  35. Magid, E.; Rivlin, E. CautiousBug: A competitive algorithm for sensory-based robot navigation. In Proceedings of the 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE Cat. No.04CH37566), Sendai, Japan, 28 September–2 October 2004; Volume 3, pp. 2757–2762. [Google Scholar]
  36. Wang, M.; Su, Z.; Tu, D.; Lu, X. A hybrid algorithm based on Artificial Potential Field and BUG for path planning of mobile robot. In Proceedings of the 2013 2nd International Conference on Measurement, Information and Control, Harbin, China, 16–18 August 2013; Volume 2, pp. 1393–1398. [Google Scholar] [CrossRef]
  37. Ren, J.; McIsaac, K.A.; Patel, R.V. Modified Newton’s method applied to potential field-based navigation for mobile robots. IEEE Trans. Robot. 2006, 22, 384–391. [Google Scholar] [CrossRef]
  38. Li, G.; Yamashita, A.; Asama, H.; Tamura, Y. An efficient improved artificial potential field based regression search method for robot path planning. In Proceedings of the 2012 IEEE International Conference on Mechatronics and Automation, Chengdu, China, 5–8 August 2012; pp. 1227–1232. [Google Scholar] [CrossRef]
  39. Nguyen, B.; Chuang, Y.L.; Tung, D.; Hsieh, C.; Jin, Z.; Shi, L.; Marthaler, D.; Bertozzi, A.; Murray, R. Virtual attractive-repulsive potentials for cooperative control of second order dynamic vehicles on the Caltech MVWT. In Proceedings of the 2005 American Control Conference, Portland, OR, USA, 8–10 June 2005; pp. 1084–1089. [Google Scholar]
  40. Fiori, S. Manifold calculus in system theory and control–Fundamentals and first-order systems. Symmetry 2021, 13, 2092. [Google Scholar] [CrossRef]
  41. Fiori, S.; Cervigni, I.; Ippoliti, M.; Menotta, C. Extension of a PID control theory to Lie groups applied to synchronizing satellites and drones. IET Control. Theory Appl. 2020, 14, 2628–2642. [Google Scholar] [CrossRef]
  42. Tarsi, A.; Fiori, S. Lie-group modeling and numerical simulation of a helicopter. Mathematics 2021, 9, 2682. [Google Scholar] [CrossRef]
  43. Fiori, S.; Del Rossi, L. Minimal control effort and time Lie-group synchronization design based on proportional-derivative control. Int. J. Control. 2022, 95, 138–150. [Google Scholar] [CrossRef]
Figure 1. Schematic of Kelly robot’s geometry and of the reference systems used to model its dynamics, as well as of the thrusts acting on Kelly robot’s body as generated by the fan-type propellers.
Figure 1. Schematic of Kelly robot’s geometry and of the reference systems used to model its dynamics, as well as of the thrusts acting on Kelly robot’s body as generated by the fan-type propellers.
Symmetry 14 00257 g001
Figure 2. Experiment: Single target and no obstacles. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 4 and target attractive range a T = 5 . Simulation time t f = 300 s. In the 3D potentials graph, the red line represents the trajectory of the Kelly robot and the blue potential pit denotes the attractive influence of the target point: considering the Kelly robot as a rolling ball, it will ‘fall’ into the potential pit. The orientation of the Kelly robot is measured in radians (in the range [ 0 , 2 π ] ) hence, in the orientation graph, the spikes correspond to a jump from 0 to 2 π or vice versa. (a) Target approaching; (b) control figures.
Figure 2. Experiment: Single target and no obstacles. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 4 and target attractive range a T = 5 . Simulation time t f = 300 s. In the 3D potentials graph, the red line represents the trajectory of the Kelly robot and the blue potential pit denotes the attractive influence of the target point: considering the Kelly robot as a rolling ball, it will ‘fall’ into the potential pit. The orientation of the Kelly robot is measured in radians (in the range [ 0 , 2 π ] ) hence, in the orientation graph, the spikes correspond to a jump from 0 to 2 π or vice versa. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g002
Figure 3. Experiment: Single obstacle and target. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 4 and target attractive range a T = 5 . Obstacle repulsive magnitude C r O = 3 and obstacle repulsive range r O = 0.5 . Simulation time t f = 300 s. In the 3D potentials graph, it may be noticed a spike in the potential function surface that represents the repulsive influence of the obstacle. (a) Target approaching; (b) control figures.
Figure 3. Experiment: Single obstacle and target. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 4 and target attractive range a T = 5 . Obstacle repulsive magnitude C r O = 3 and obstacle repulsive range r O = 0.5 . Simulation time t f = 300 s. In the 3D potentials graph, it may be noticed a spike in the potential function surface that represents the repulsive influence of the obstacle. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g003
Figure 4. Experiment: Single obstacle and target. Self-propelling coefficient α = 1 (i.e., five times larger than in Figure 3). Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 6 and target attractive range a T = 5 . Obstacle repulsive magnitude C r O = 3 and obstacle repulsive range r O = 0.5 . Simulation time t f = 600 s. Even in this case, in the 3D potentials graph, it may be noticed the red line proceeding toward the bottom of the potential pit and a spike in the potential function surface that represents the obstacle.
Figure 4. Experiment: Single obstacle and target. Self-propelling coefficient α = 1 (i.e., five times larger than in Figure 3). Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 6 and target attractive range a T = 5 . Obstacle repulsive magnitude C r O = 3 and obstacle repulsive range r O = 0.5 . Simulation time t f = 600 s. Even in this case, in the 3D potentials graph, it may be noticed the red line proceeding toward the bottom of the potential pit and a spike in the potential function surface that represents the obstacle.
Symmetry 14 00257 g004
Figure 5. Experiment: Single obstacle and target. Self-propelling coefficient α = 1 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 5 . Notice that the target attractive magnitude C a T has an higher value compared to the simulation in Figure 4, hence the potential depression appears to be sharper. Obstacle repulsive magnitude C r O = 3 and obstacle repulsive range r O = 0.5 . Simulation time t f = 300 s.
Figure 5. Experiment: Single obstacle and target. Self-propelling coefficient α = 1 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 5 . Notice that the target attractive magnitude C a T has an higher value compared to the simulation in Figure 4, hence the potential depression appears to be sharper. Obstacle repulsive magnitude C r O = 3 and obstacle repulsive range r O = 0.5 . Simulation time t f = 300 s.
Symmetry 14 00257 g005
Figure 6. Experiment: Construction of a barrier. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 10 . Obstacles repulsive magnitude C r O 1 , 4 = 2 , C r O 2 , 3 = 3 and obstacles repulsive ranges r O 1 , 4 = 1 , r O 2 , 3 = 2 , where the footers denote obstacles indexes as illustrated in the target approaching panel. Simulation time t f = 300 s. (a) Target approaching; (b) control figures.
Figure 6. Experiment: Construction of a barrier. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 10 . Obstacles repulsive magnitude C r O 1 , 4 = 2 , C r O 2 , 3 = 3 and obstacles repulsive ranges r O 1 , 4 = 1 , r O 2 , 3 = 2 , where the footers denote obstacles indexes as illustrated in the target approaching panel. Simulation time t f = 300 s. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g006
Figure 7. Experiment: Construction of a barrier. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 10 . Obstacles repulsive magnitude C r O 1 , 4 = 2 and obstacles repulsive ranges C r O 2 , 3 = 3 , r O = 3 . Simulation time t f = 300 s. (a) Target approaching; (b) control figures.
Figure 7. Experiment: Construction of a barrier. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 10 . Obstacles repulsive magnitude C r O 1 , 4 = 2 and obstacles repulsive ranges C r O 2 , 3 = 3 , r O = 3 . Simulation time t f = 300 s. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g007
Figure 8. Experiment: Construction of a barrier. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 30 and target attractive range a T = 10 . Obstacles repulsive magnitudes C r O 1 , 4 = 7 , C r O 2 , 3 = 7 and obstacles repulsive ranges r O = 1 . Simulation time t f = 600 s. (a) Target approaching; (b) control figures.
Figure 8. Experiment: Construction of a barrier. Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 30 and target attractive range a T = 10 . Obstacles repulsive magnitudes C r O 1 , 4 = 7 , C r O 2 , 3 = 7 and obstacles repulsive ranges r O = 1 . Simulation time t f = 600 s. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g008
Figure 9. Experiment: Construction of a barrier. Self-propelling coefficient α = 1.4 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 30 . Obstacles repulsive magnitudes C r O 1 , 4 = 7 , C r O 2 , 3 = 7 and obstacles repulsive ranges r O = 1 . Simulation time t f = 600 s. (a) Target approaching; (b) control figures.
Figure 9. Experiment: Construction of a barrier. Self-propelling coefficient α = 1.4 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 10 and target attractive range a T = 30 . Obstacles repulsive magnitudes C r O 1 , 4 = 7 , C r O 2 , 3 = 7 and obstacles repulsive ranges r O = 1 . Simulation time t f = 600 s. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g009
Figure 10. Experiment: Path planning by a guiding potential wall. Self-propelling coefficient α = 0.1 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 5 and target attractive range a T = 5 . Obstacle repulsive magnitude C r O = 2 and obstacle repulsive range r O = 0.3 . Simulation time t f = 300 s. In the 3D potentials graph, potential spikes–representing obstacles–that drive a Kelly robot towards the target point are clearly visible. (a) Target approaching; (b) control figures.
Figure 10. Experiment: Path planning by a guiding potential wall. Self-propelling coefficient α = 0.1 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 5 and target attractive range a T = 5 . Obstacle repulsive magnitude C r O = 2 and obstacle repulsive range r O = 0.3 . Simulation time t f = 300 s. In the 3D potentials graph, potential spikes–representing obstacles–that drive a Kelly robot towards the target point are clearly visible. (a) Target approaching; (b) control figures.
Symmetry 14 00257 g010
Figure 11. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = 0 . Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 4 , target attractive range a T = 5 . Simulation time t f = 300 s.
Figure 11. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = 0 . Self-propelling coefficient α = 0.2 . Friction coefficient β = 4.5 kg/s. Target attractive magnitude C a T = 4 , target attractive range a T = 5 . Simulation time t f = 300 s.
Symmetry 14 00257 g011
Figure 12. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = π 2 . Values of the parameters as in Figure 11.
Figure 12. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = π 2 . Values of the parameters as in Figure 11.
Symmetry 14 00257 g012
Figure 13. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = π . Values of the parameters as in Figure 11.
Figure 13. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = π . Values of the parameters as in Figure 11.
Symmetry 14 00257 g013
Figure 14. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = 3 2 π . Values of the parameters as in Figure 11.
Figure 14. Experiment: Single target, no obstacles, initial orientation  θ ( 0 ) = 3 2 π . Values of the parameters as in Figure 11.
Symmetry 14 00257 g014
Figure 15. Experiment by the S 2 -VARP method: Single target, no obstacles. Simulation parameters: C a = 3 , a = 0.2 , C r = 0.5 , r = 0.2 . (a) Parameter α = 1 . steps = 500; (b) parameter α = 2.5 . steps = 500; (c) parameter α = 3 , steps = 500; (d) parameter α = 4 , steps = 5000.
Figure 15. Experiment by the S 2 -VARP method: Single target, no obstacles. Simulation parameters: C a = 3 , a = 0.2 , C r = 0.5 , r = 0.2 . (a) Parameter α = 1 . steps = 500; (b) parameter α = 2.5 . steps = 500; (c) parameter α = 3 , steps = 500; (d) parameter α = 4 , steps = 5000.
Symmetry 14 00257 g015
Figure 16. Experiment by the S 2 -VARP method: Single target, no obstacles. Simulation parameters: α = 4 , C a = 7 . Steps = 500.
Figure 16. Experiment by the S 2 -VARP method: Single target, no obstacles. Simulation parameters: α = 4 , C a = 7 . Steps = 500.
Symmetry 14 00257 g016
Figure 17. Experiment by the S 2 -VARP method: Target and one obstacle. Simulation parameters: C a T = 5 , C r T = 0.3 , C r O = 2 (where T stands for Target and O stands for Obstacle).
Figure 17. Experiment by the S 2 -VARP method: Target and one obstacle. Simulation parameters: C a T = 5 , C r T = 0.3 , C r O = 2 (where T stands for Target and O stands for Obstacle).
Symmetry 14 00257 g017
Figure 18. Experiment by the S 2 -VARP method: Target and one obstacle. Simulation parameters: C a T = 5 , C r T = 0.1 , C r O = 1 (where T stands for Target and O stands for Obstacle).
Figure 18. Experiment by the S 2 -VARP method: Target and one obstacle. Simulation parameters: C a T = 5 , C r T = 0.1 , C r O = 1 (where T stands for Target and O stands for Obstacle).
Symmetry 14 00257 g018
Figure 19. Experiment by the S 2 -VARP method: Target and two obstacles. Simulation parameters: C a T = 5 , C r T = 0.1 , C r O = 1 (where T stands for Target and O stands for Obstacle).
Figure 19. Experiment by the S 2 -VARP method: Target and two obstacles. Simulation parameters: C a T = 5 , C r T = 0.1 , C r O = 1 (where T stands for Target and O stands for Obstacle).
Symmetry 14 00257 g019
Figure 20. Experiment by the S 2 -VARP method: Potential wall (or ‘barrier’). (In the subcaptions, superscript T stands for Target while superscript O stands for Obstacle). (a) Parameters: C r O = 4 , r O = 0.1 , C a T = 5 , α = 2 ; (b) parameters: C r O = 2 , r O = 0.07 , C a T = 5 α = 2 ; (c) parameters: C r O = 4 , r O = 0.1 , C a T = 5 , α = 4 ; (d) parameters: C r O = 4 , r O = 0.1 , C a T = 10 , α = 4 .
Figure 20. Experiment by the S 2 -VARP method: Potential wall (or ‘barrier’). (In the subcaptions, superscript T stands for Target while superscript O stands for Obstacle). (a) Parameters: C r O = 4 , r O = 0.1 , C a T = 5 , α = 2 ; (b) parameters: C r O = 2 , r O = 0.07 , C a T = 5 α = 2 ; (c) parameters: C r O = 4 , r O = 0.1 , C a T = 5 , α = 4 ; (d) parameters: C r O = 4 , r O = 0.1 , C a T = 10 , α = 4 .
Symmetry 14 00257 g020
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Bigelli, L.; Polenta, F.; Fiori, S. Virtual Attractive-Repulsive Potentials Control Theory: A Review and an Extension to Riemannian Manifolds. Symmetry 2022, 14, 257. https://0-doi-org.brum.beds.ac.uk/10.3390/sym14020257

AMA Style

Bigelli L, Polenta F, Fiori S. Virtual Attractive-Repulsive Potentials Control Theory: A Review and an Extension to Riemannian Manifolds. Symmetry. 2022; 14(2):257. https://0-doi-org.brum.beds.ac.uk/10.3390/sym14020257

Chicago/Turabian Style

Bigelli, Luca, Federico Polenta, and Simone Fiori. 2022. "Virtual Attractive-Repulsive Potentials Control Theory: A Review and an Extension to Riemannian Manifolds" Symmetry 14, no. 2: 257. https://0-doi-org.brum.beds.ac.uk/10.3390/sym14020257

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop