Simultaneous Position and Orientation Planning of Nonholonomic Multi-Robot Systems: A Dynamic Vector Field Approach

Xiaodong He and Zhongkui Li,  This work was supported by the National Natural Science Foundation of China under grants 61973006, T2121002, and by Beijing Natural Science Foundation, China under grant JQ20025. Corresponding author: Zhongkui Li. The authors are with the State Key Laboratory for Turbulence and Complex Systems, Department of Mechanics and Engineering Science, College of Engineering, Peking University, Beijing 100871, China (e-mail: hxdupc@pku.edu.cn; zhongkli@pku.edu.cn)
Abstract

This paper considers the simultaneous position and orientation planning of nonholonomic multi-robot systems. Different from common researches which only focus on final position constraints, we model the nonholonomic mobile robot as a rigid body and introduce the orientation as well as position constraints for the robot’s final states. In other words, robots should not only reach the specified positions, but also point to the desired orientations simultaneously. The challenge of this problem lies in the underactuation of full-state motion planning, since three states need to be planned by mere two control inputs. To this end, we propose a dynamic vector field (DVF) based on the rigid body modelling. Specifically, the dynamics of the robot orientation are brought into the vector field, implying that the vector field is not static on the 2-D plane anymore, but a dynamic one varying with the attitude angle. Hence, each robot can move along the integral curve of the DVF to arrive at the desired position, and in the meantime, the attitude angle can converge to the specified value following the orientation dynamics. Subsequently, by designing a circular vector field under the framework of the DVF, we further study the obstacle avoidance and mutual-robot-collision avoidance in the motion planning. Finally, numerical simulation examples are provided to verify the effectiveness of the proposed methodology.

Motion planning, multi-robot system, dynamic vector field, nonholonomic mobile robot.

I Introduction

Motion planning is a fundamental problem in the field of robotics and control, which aims at finding paths or trajectories to guide mobile robots moving from initial conditions to their respective destinations, while avoiding collisions with obstacles and other robots. One of the most typical robotic systems is the nonholonomic mobile robot, which is also referred to as the unicycle-type vehicle. Although neglected by a number of persons, two facts regarding the nonholonomic mobile robot should be mentioned above all. One is that the theoretical model of such a kind of robot is essentially a rigid body rather than a point of mass [3], since the robot states include both position and orientation (or attitude). Different from a 3-degree-of-freedom (DOF) rigid body moving freely on a plane, such a robot has no lateral velocity due to the nonholonomic constraint, which naturally brings about the other fact that the nonholonomic mobile robot is indeed an underactuated system [4]. To be more specific, the robot has three DOFs (two translation DOFs and one rotation DOF), while possessing only two control inputs (one linear velocity and one angular velocity). These two facts make the motion planning for nonholonomic mobile robots more challenging and demanding.

Although a variety of methodologies have been proposed for motion planning, such as roadmap [18, 1, 22], cell decomposition [6, 35, 8], sampling-based algorithm [17, 14, 30], they cannot be applied to nonholonomic mobile robots resulting from omitting the kinematics or only considering the model of the point of mass. Regarding the nonholonomic model, some researchers employ the optimization-based methods [13, 11, 36, 2, 25, 7, 37, 23]. For example, Bloch et al. in [2] formulate the problem as dynamic interpolation on Riemannian manifolds and provide the necessary conditions for optimality. Li et al. in [25] propose a prioritized optimization method so as to compute the planning results efficiently. In [7], Cichella et al. utilize the Bernstein polynomials to transform the motion planning into a discrete optimization approximately. There is no denying that optimization methods have the advantage of easily handling unicycle models, because the nonholonomic constraints can always be included as the optimization constraints. Nevertheless, the feasibility of such optimization problems are unable to be guaranteed, or they suffer from extremely heavy computational burden. Another drawback is that the control inputs derived from optimization are open-loop, relying only on time, thereby are not robust to disturbances.

Given above shortages, researchers are motivated to investigate feedback motion planning algorithms for mobile robots. A typical closed-loop methodology is the velocity vector field, where a velocity vector related to the state is defined at every point in the configuration space and the integral curve of the vector field converges to the goal point. The most common vector field is defined by the gradient of a potential function, also referred to as the potential field [10, 12, 34, 16, 21, 33], but one of its inherent limitations is the possible local minina other than the desired state [20]. Particular forms of potential function overcome such a drawback, that is, harmonic function [19, 9, 28] and navigation function [32, 27, 24]. However, the former has demanding computational complexity related to PDEs, while the latter is difficult to implement since a lower bound to ensure no local minima is unknown in advance.

As a matter of fact, the velocity vector field does not necessarily have to be given by a potential gradient. Instead, it can be defined directly over the configuration space. To the best of our knowledge, few works focus on motion planning via non-gradient-based vector fields, except two seminal papers by Lindemann et al. [26] and Panagou [31]. In [26], the environment with obstacles is decomposed into convex polytopes, in which simple local vector fields are defined and smoothly blended to form a global vector field convergent to the desired point. The author in [31] proposes a family of 2-D analytic vector fields, which exhibit different patterns (such as attractive or repulsive) by choosing the value of an parameter, so that the overall vector field can finally be obtained by a suitable blending design.

Regardless of open-loop or feedback algorithms, the aforementioned results rarely consider a significant yet implicit fact typically occurring in real-world scenarios. Actually, apart from the position constraints, the orientation of a robot is also usually required to reach a desired direction at the terminal time. For instance, in the multi-robot surveillance mission, the final orientation of each robot should point to a certain direction so as to obtain the largest overall surveillance area. Similarly, the attitudes of missiles are generally specified in the terminal guidance so as to realize a better performance of coordinated attack. Thus, these practical demands strongly motivate us that it is necessary to incorporate the orientation constraints into the motion planning. Additionally, such a motivation is further strengthened from a theoretical point of view. As mentioned above, the model of a nonholonomic mobile robot is a rigid body. Then, serving as a state, the attitude angle should also be specified to be a desired value, similar to the position, rather than being left randomly, which can be referred to as full-state motion planning. Since the nonholonomic mobile robot is an underactuated system, the biggest challenge lies in how to achieve full-state planning by fewer control inputs.

Motivated by above discussions, in this paper we consider the simultaneous position and orientation planning of nonholonomic multi-robot systems by designing a non-gradient-based velocity vector field. To begin with, the mobile robot is modelled as a rigid body with nonholonomic constraints rather than a point of mass. More importantly, besides the desired position constraint, we take into account the orientation constraint at the final time instant as well. Next, different from common static vector fields on a 2-D plane, we propose a novel dynamic vector field (DVF) in the sense that the dynamics of the attitude angle are introduced into the vector field. This implies that the velocity direction at a certain point is decided by not only the position but also the orientation of robot that passes such a point. Thus, by moving along the integral curve of the DVF, the robot can reach the specified position at the terminal time, and meanwhile the attitude angle can converge to the desired value following the orientation dynamics. Subsequently, the control inputs or velocities are designed based on the DVF, where the feedback of an extra angle in the body-fixed frame is brought in as an additional angular velocity, with the result that the robot orientation can be tuned along the direction of the DVF to deal with the lack of lateral velocity. Moreover, under the frame work of the DVF, the problems of obstacle avoidance and mutual-robot-collision avoidance are studied by proposing a circular vector field, where robots can move along the tangential directions of the round obstacles so as to evade collisions. Note that such two kinds of collision avoidance problems are both able to be solved by one circular vector field, which greatly simplifies the design of planned trajectories.

Apart from the dynamical characteristics, the following merits also distinguish our method from the existing motion planning results which also utilize non-gradient-based vector fields. As opposed to [26], the proposed dynamic vector field is unnecessary to be derived based on a cell decomposition of the whole environment, then advanced high-level discrete motion planning is not required in this paper. In contrast to [31], the dynamic vector field is global over the state space in the sense that the initial and final configurations can both be chosen arbitrarily, while the vector field in [31] has a separatrix (or mirror line) where the integral curves can become divergent possibly.

The organization of this paper is given below. Section II provides mathematical preliminaries and formulates the motion planning problem. Section III proposes the dynamic vector field approach, under which the problems of obstacle avoidance and collision avoidance are solved by designing a circular vector field in Section IV and Section V, respectively. Section VI gives several numerical simulation examples to verify the effectiveness of the proposed vector fields. Finally, conclusions end the whole paper in Section VII.

Ii Preliminaries and Problem Statement

Several commonly-used notations are defined in advance. The identity matrix in is denoted by . The base vectors of are denoted by . The symbol represents a matrix in with all zero components. The Euclidean norm of a vector is denoted by . Moreover, variables denoting vectors and matrices are written in bold, while those denoting scalars are not.

As mentioned in the Introduction, the model of the nonholonomic mobile robot is a rigid body. Thus, before providing the nonholonomic model, we firstly consider a fully actuated planar rigid body moving in a 2-D Euclidean space. Let denote the earth-fixed frame, and let represent the body-fixed frame, which is attached to the center of mass of the rigid body. The position of the rigid body in is given by a vector , and the attitude is specified by a rotation matrix , which depicts the rotation of relative to . Herein, the rotation matrix can be parameterized by a scalar , that is,

(1)

where is interpreted as the attitude angle of the rigid body. Let and denote the rigid body’s angular velocity and linear velocity in the body-fixed frame . Then, the kinematics of the fully actuated rigid body can be given by

(2a)
(2b)
(2c)

Regarding nonholonomic mobile robots, due to no side slip of the wheels, the robot cannot move sideways. In other words, the velocity along the -axis of the body-fixed frame is always zero, that is, . Such a constraint is named the nonholonomic constraint, since its reformulation in the earth-fixed frame which is a differential equation given by

cannot be integrated to be an algebraic equation. Thus, according to (2), the kinematic model of a nonholonomic mobile robot degenerates to

(3a)
(3b)
(3c)

Given the fact that the nonholonomic mobile robot moves in an environment possibly populated with obstacles, we assume that each obstacle can be bounded by a circular region with radius . Moreover, suppose that multiple nonholonomic mobile robots move in a common workspace simultaneously. Therefore, the potential collisions with obstacles and among robots should both be taken into account in the motion planning process. To acquire the information of obstacles and other robots positions, the robot () is assumed to have a circular sensing range with radius , which can be defined by

where is the current position vector of the robot . Then, once obstacles and other robots appear into the sensing region , the robot can obtain the position information of them.

The motion planning problem for multiple nonholonomic mobile robots can be formulated below.

Problem Statement: Regarding nonholonomic mobile robots described by (3), design linear velocity and angular velocity for the robot (), such that each controlled trajectory of the robots, which starts from the initial condition , can reach the specified destination , and meanwhile avoid the obstacles and mutual collisions with other robots.

Iii Dynamic Vector Fields

In this section, we construct a non-gradient-based vector field to solve the motion planning problem for a nonholonomic mobile robot in an obstacle-free environment. With the loss of generality, we assume that the destination of the robot is chosen as . For the sake of simplicity, we firstly rewrite the kinematics (2) and (3) in a more compact form.

Define the following matrix

(4)

which is uniquely decided by the rotation matrix and the position vector , and we call the configuration of the rigid body. Similarly, the velocity can be formulated in a matrix as

(5)

where the hat operator defines a map from a scalar to a skew symmetric matrix in . Therefore, based on (4) and (5), the fully actuated kinematic model (2) can be redefined by

(6)

where the configuration and the velocity serve as the state and control input, respectively. Correspondingly, the nonholonomic kinematic model can be rewritten as (6) with an additional nonholonomic constraint

where () are standard basis in .

To design the vector field, a transformation is introduced for the configuration . By utilizing the matrix logarithmic map proposed in [4, 5], we obtain the logarithm of configuration as follows

(7)

where is a skew symmetric matrix with respect to , similar to the form of in (5), and the vector is given by

(8)

Once defining a matrix

(9)

the formula (8) can be simplified as

(10)

where is the position vector. Then, we refer to given in (7) as the transformed configuration, which is uniquely defined by the attitude angle and position vector . According to [5], under the transformed configuration , the kinematics (6) can be reformulated as

(11)

where the transformed configuration is the state, the velocity is the control input, and is a state-dependent matrix satisfying

(12)

We recommend [5] for readers who are interested in more information about the kinematics (11) and matrix .

Remark 1

As a matter of fact, the formulas (4)-(12) are all originated from the geometric control theory of mechanical systems. Specifically, the configuration is an element in the Lie group ; the body velocity is a twist in the Lie algebra ; is called the exponential coordinate of , which also lies in the Lie algebra but represents the configuration. Since the framework of geometric control is established on fully actuated rigid bodies, we introduce related preliminaries at the beginning of Section II, in advance of the nonholonomic mobile robots. Although we subsequently design the vector field with these variables in geometric control, for the sake of readability, the concepts such as Lie group and Lie algebra are not introduced in this paper. This is because we do not utilize any complicated properties from geometric control theory, and it is believed that the aforementioned modelling preliminaries are sufficient for the completeness and explicitness of this paper. The readers interested in geometric control are recommended to refer to [4, 29, 3].

Now, we propose a vector field , whose components and are given by

(13a)
(13b)

where serve as an internal parameter satisfying

(14)
Remark 2

In contrast to common planner vector fields which are maps of , such as in [31, 15], one more parameter is introduced to the vector field in this paper. More importantly, has an explicit physical meaning, that is, the attitude angle of the robot. To bring into the vector field is naturally motivated by the fact that the nonholonomic mobile robot is essentially a kind of rigid bodies rather than a point of mass. Consequently, as a state of the robot, the attitude angle are not supposed to be set free at the destination. Instead, it should be guided to the specified value, like positions, after the motion planning procedure. Moreover, the designation of the final attitude angle has a more practical value in the sense that it specifies the initial velocity direction of the subsequent period of motion. Thus, we incorporate the attitude information into the vector field, leading to the result that is decided by not only position but also orientation. Then, the vector field in is “dynamic” instead of a “static” one. Herein, the “dynamic” means will vary with the initial value of , which evolves following (14). Therefore, even if for the same one point, the vector direction is probably different due to the attitude angle of the robot. In light of this fact, we refer to as a dynamic vector field. Fig. 1 provides two dynamic vector fields with initial condition and , respectively.

The convergence of is provided in the following theorem.

Dynamic vector field
(a)
Dynamic vector field
(b)
Fig. 1: Dynamic vector field with different initial parameter
Theorem 1

The dynamic vector field given in (13), (14) converges to asymptotically.

Proof:

Firstly, we prove that the transformed configuration converges to asymptotically. Let and . By comparing with the kinematics (2), we obtain that the velocity or the control input can be expressed as

(15)

where the condition (14) is utilized. Define a Lyapunov function , where represents the inner product. Taking the time derivative of along the trajectory of (11), we have

(16)

Substituting (15) into (16), there holds

(17)

where the property (12) is used. Thus, we obtain that the transformed configuration converges to asymptotically, implying and as .

Next, we prove that the position vector can asymptotically converge to . By using the L’Hospital’s rule, we have

so that there holds

where represents the determinant and the matrix is given in (9). Therefore, based on the formulation in (10), we obtain that if and only if . \qed

In the following, we extend the dynamic vector field to an arbitrarily-specified final state . Based on (4), once there holds , the corresponding configuration matrix becomes a identity matrix . Thus, the dynamic vector field given in (13), (14) can drive to , indeed. Let denote the corresponding configuration matrix of the final state . Then, the problem now becomes how to define a dynamic vector field which can drive the configuration to . Motivated by the fact that achieves ,, we define a new configuration

(18)

which contains the information of the desired final state . The parameterized description of , denoted by , can be given by , , . Based on above definitions, we present the following theorem.

Theorem 2

For an arbitrarily-specified final state , design a dynamic vector field , whose components and are given by

(19a)
(19b)

where satisfies . Then, the dynamic vector field converges to asymptotically.

Proof:

According to Theorem 1, the dynamic vector field will converge to asymptotically. That is to say, can drive the configuration to the identity matrix . Then, according to the definition of in (18), we have , i.e., , implying that . \qed

Having obtained the dynamic vector field , we can further design the control inputs and . It should be noted that the dynamic vector field in (19), (14) is defined in the earth-fixed frame . In contrast, the control inputs are the velocities given in the body-fixed frame . Thus, for the purpose of a simple controller design, we transform the dynamic vector field from the earth-fixed frame to the body-fixed frame . Let denote the dynamic vector field in . Then, can be obtained by

(20)

where is the rotation matrix defined in (1). Thus, based on (20), it will be straightforward to design the motion planning controller of fully actuated rigid bodies, which can be obtained by making the body velocity equivalent to , that is

(21)

where are positive scalars.

Orientation of the nonholonomic mobile robot and direction of the vector field
Fig. 2: Orientation of the nonholonomic mobile robot and direction of the vector field

However, regarding nonholonomic mobile robots, there does not exist any control input along the direction of . Hence, only and can be used to make the robot “follow” the dynamic vector field . To this end, we introduce an additional rotation in , which is a negative feedback relevant to the angle between the orientation of the robot and the direction of . Specifically, as shown in Fig. 2, the orientation of the robot is along the -axis of , but the integral curve of the vector field moves along the direction of . The angle between these two directions which is denoted by can be given by

(22)

where the negative sign means rotates along a counter direction with respect to the attitude angle . Note that for nonholonomic mobile robots, the linear velocity has the same direction as the orientation. Therefore, in order to make the robot “follow” the vector field, the orientation of the robot should be rotate to the direction of . Then, we can construct an additional angular velocity, which is an negative feedback of , so as to rotate the robot orientation to the direction of . Thus, based on (21), the motion planning controller for nonholonomic mobile robots is designed to be

(23a)
(23b)

where are all positive scalars.

Iv Dynamic Vector Fields with Obstacle Avoidance

This section focuses on the motion planning problem involving obstacle avoidance. Instead of using a repulsive vector field directly, we design a circular vector field around the obstacle, and then blend it with the dynamic vector field which is convergent to the desired configuration.

Consider a circular obstacle with radius located at . Suppose that the obstacle avoidance vector field lies in the following area

where is the radius of the sensing region . Once the robot enters the area , we define a repulsive vector

(24)

which points from the obstacle to the nonholonomic mobile robot. Then, the distance between obstacle and robot can be obtained by . Let denote the a vector satisfying the following two conditions

(25)

where is the velocity vector in the body-fixed frame of the nonholonomic mobile robot. Intuitively, the vector is perpendicular to and projected positively onto the velocity direction . According to such a definition, we can derive that the vector always points to a collision-free direction with respect to the obstacle, since will be tangent to a certain circle located at with radius (). Thus, all the vectors in the area can constitute a circular vector field surrounding the obstacle.

Nevertheless, it is fairly unreasonable to construct the obstacle avoidance vector field only by , since there must exist some situations where the nonholonomic mobile robot will never collide with the obstacle although moving in the area . In such cases, it is unnecessary to construct obstacle avoidance vector field for the robot with the help of . Otherwise, the results would become rather conservative. Therefore, in the following, we will design the obstacle avoidance vector fields in the area , denoted by , according to different situations of the robot with respect to the obstacle. The detailed construction of are provided below.

Obstacle avoidance vector fields. Cases 1,2,3 depict three different situations when the robot is approaching the obstacle.
Fig. 3: Obstacle avoidance vector fields. Cases 1,2,3 depict three different situations when the robot is approaching the obstacle.

Assume that the robot has entered the area , that is, the distance satisfying . Let represent the angle between the velocity direction and the line segment connecting robot and obstacle, as shown in Fig. 3, which can be computed by

Hence, according to the value of , three different cases can be proposed as follows.

  1. If , as shown in Case 1 of Fig. 3, the robot does not have the risk of colliding with the obstacle. Then, in this case, the obstacle avoidance vector field can absolutely be chosen as the convergent dynamic vector field in the free space, i.e., .

  2. If , as shown in Case 2 of Fig. 3, it is possible that the robot will collide with the obstacle in a future time. Thus, we set the obstacle avoidance vector field to be , i.e., , which is defined in (25). Then, the robot will turn to the direction that is perpendicular to the radius of the obstacle so as to achieve the obstacle avoidance.

  3. Except for above two cases, the rest one is , as shown in Case 3 of Fig. 3. Generally, in such a case, it is referred to as the deadlock of a robot, which corresponds to a local minima of an artificial potential. Once , it can be derived that , indicating the vector is perpendicular to the velocity , so that we cannot define the obstacle avoidance vector field by checking whether the projection of onto is positive, as given in (25). Actually, the reason why we choose the positively projected onto is that such a vector can make the robot turn a smaller attitude angle for obstacle avoidance than the negatively projected one. However, when , the rotation angle from to is always , either clockwise or anticlockwise. Thus, we can directly choose one of these two rotation directions to define the obstacle avoidance vector field , and in this paper, is defined by rotating clockwise through , that is, , where is rotation matrix given in (1) with .

To summarize, based on above definitions under different situations, the obstacle avoidance vector field can be given by

(26)

Therefore, we can present the dynamic vector fields with obstacle avoidance in as follows

(27)

Note that the vector field given in (27) would be discontinuous at . To make the vector field continuous, we introduce the following transition function

(28)

where is a small positive constant. It is obvious that the transition function continuously varies from to as the distance varies from to . Therefore, the vector fields proposed in (27) can be revised to be a continuous form, that is

(29)

We summarize above results into the following theorem.

Theorem 3

Let denote an arbitrarily-specified final state. The dynamic vector field proposed in (29) asymptotically converges to and avoids the collision with the obstacle meanwhile.

Proof:

The convergence of has been proved by Theorem 1, so that we merely need to prove that will not cause collision of the robot with the obstacle. According to (24)-(26), the vector field can be rewritten as

(30)

where represents the rotation matrix with . Define the following distance function

(31)

then there holds for . To ensure obstacle avoidance, the distance function should be guaranteed always positive. Assume that once the robot enters the obstacle avoidance region , the inital value of is a constant . Taking the time derivative along the vector field , we have

(32)

which demonstrates that the distance function will maintain in the future time, indicating that integral curve of the vector field will maintain a constant distance with respect to the obstacle, thus achieving obstacle avoidance by a circular motion. \qed

Although Theorem 3 is derived based on only one obstacle, it can be simply extended to the case of multiple obstacles. Regarding obstacles, the dynamic vector field is designed to be

(33)

where is the convergent dynamic vector field, is the obstacle avoidance vector field around the th obstacle, is the transition function regarding the th obstacle.

Having obtained the vector field in (33), it would not be difficult to design the controller for the nonholonomic mobile robot. Similar to (20), we transform the vector field into the body-fixed frame by

(34)

Then, inspired by (23), the controller can be given by

(35a)
(35b)

where are all positive scalars.

V Dynamic Vector Fields with Collision Avoidance Among Robots

In this section, we consider the problem of collision avoidance among multiple nonholonomic mobile robots during the motion planning. For simplicity, the collision avoidance between two robots is taken into account at first.

Motivated by the circular vector field presented in the obstacle avoidance, intuitively, we can introduce a virtual obstacle between two robots so that they are able to avoid each other by avoiding the virtual obstacle. To be more specific, as shown in Fig. 4(a), regarding two robots positioned at and , when there is a potential collision risk in their sensing ranges, a virtual obstacle is set on the line segment . According to the obstacle avoidance vector field in Section IV, the robots will turn to the direction of and , respectively, as the green vectors in Fig. 4(a), which are projected positively along and , respectively. Then, two robots will follow the vectors and to avoid the virtual obstacle clockwise. In this way, the collision avoidance between two robots can be realized completely.

Nevertheless, in Fig. 4(a), it should be noted that the velocities and lie in the different sides of the line segment . Once and lie in the same side of , as given in Fig. 4(b), the obstacle avoidance vectors and which are projected positively along and will point to the opposite rotation directions around the virtual obstacle, i.e., clockwise and anticlockwise, respectively. Then, two mobile robots will turn to such directions and cause the collision eventually. Therefore, the obstacle avoidance vector field cannot be extended to collision avoidance straightforwardly by introducing an virtual obstacle between two robots.

collision avoidance between two robots in different situations
(a) and lying in different sides of the line segment
collision avoidance between two robots in different situations
(b) and lying in the same side of the line segment
Fig. 4: collision avoidance between two robots in different situations

Based on abovementioned analysis, the key point of the collision avoidance is how to define the direction of vectors and so as to make them both clockwise or both anticlockwise. To solve this problem, we still consider two robots located at and , and suppose that they have been into each other’s sensing range, i.e., . In addition, we assume that the distance threshold for starting collision avoidance denoted by satisfies . That is to say, as shown in Fig. 5, when , two robots are supposed to have a potential risk of collision, and the vector fields should be converted from the mode of target navigation to collision avoidance.

Following the idea of virtual obstacle, we define a circular obstacle with radius , whose position vector is given by

(36)

Note that can be regarded as the minimum safe distance for no-collision. In other words, two robots will collide with each other if . Thus, the collision avoidance vector field will lie in the following area

Let us take the robot for example. Similar to the obstacle avoidance, the repulsive vector can be defined by

(37)

Subsequently, we define the vector perpendicular to as follows

(38)

where is rotation matrix in (1) with . Note that rotates anticlockwise the velocity direction by , then the vector points exactly to the -axis of the body-fixed frame . Thus, different from (25) in the obstacle avoidance, in (38) becomes the vector which is projected positively onto -axis rather than -axis (i.e., the direction of ), as the green vectors illustrated in Fig. 5. Due to the fact that for each robot the -axis is always obtained by rotating anticlockwise -axis through , all the robots will rotate anticlockwise to follow the vector field once having a collision risk. Therefore, the robots will move along the anticlockwise rotation direction to accomplish the collision avoidance.

Collision avoidance of two nonholonomic mobile robots by vectors
Fig. 5: Collision avoidance of two nonholonomic mobile robots by vectors and

According to given in (37), for robot , the dynamic vector field with collision avoidance in can be proposed as follows

(39)

where the transition function is obtained from (28) by replacing with . Above results are summarized in the theorem below.

Theorem 4

Let denote an arbitrarily-specified final state for the robot . The dynamic vector field proposed in (39) asymptotically converges to and avoids the collision with other robots.

Proof:

Similar to the proof of Theorem 3, we need to prove that will not cause collisions between the robots. Define the following distance function

(40)

which satisfies for . Taking the time derivative along the vector fields and , we have

(41)

which implying that the distance between robot and robot will keep constant in the area . Note that the distance function satisfies at the initial time for collision avoidance, then there will still hold in the future time. Hence, the robot will not collide with robot in the movement. \qed

Based on the vector field designed in (39), we can present the control inputs and further. Similar to aforementioned sections, the controller is still proposed with the aid of the vector field given in the body-fixed frame . Let denote the formulation of expressed into the body-fixed frame , which can be obtained by

(42)

Nonetheless, there are two facts worth noting in the design of and , which are different from the controllers in above sections. One fact is that the linear velocities of the robot and robot should be equivalent, when these two robots move around the virtual obstacle for collision avoidance. Actually, the definitions in (36) and (38) implicitly guarantees that and have the same amplitudes, so that in (V) holds. Therefore, once the robots enter the collision avoidance field, we set the linear velocities to be a common constant denoted by , which can be decided according to the range of speed for real robots. The other fact is that the angle between the directions of and , similar to the angle defined in (22), belongs to instead of . This is because the vector is not ensured for positive projection onto -axis, but onto -axis. Then, the angle from the direction of to should be decided by

(43)

Therefore, based on above two facts, the controller can be designed as

(44a)
(44b)

where are all positive scalars.

Having investigated the collision avoidance of two robots, it will be not difficult to handle the collision avoidance problem for multiple nonholonomic mobile robots in the motion planning process. Still following above ideas, a virtual obstacle can be introduced for the multi-robot collision avoidance. As we can see from the analysis for two robots, the crucial problem for such an approach is how to define the position of the virtual obstacle. Regarding two robots, the virtual obstacle is set at the middle point of the line segment connecting two robot positions. Such a point can also be interpreted as the convex combination of the two positions with coefficient . Inspired by this fact, we can employ the concept of convex combination to decide the position of the virtual obstacle.

At a certain instant, regarding robot , we assume that there are robots () whose distance with the robot is less than the collision avoidance threshold . Let denote the set which is constituted by the serial numbers of these robots, so that it follows for . The positions of these robots are denoted by , then we can define the following convex combination

(45)

Further, we place the virtual obstacle at the convex combination and make these robots move round the virtual obstacle, as the case of two robots given in Fig. 5, so as to achieve the collision avoidance among these robots. Once the position of the virtual obstacle is decided, the collision avoidance vector field can be easily obtained by (37) and (38). In addition, the control inputs can also be straightforwardly derived as (44).

Vi Numerical Simulation Examples

In this section, four numerical simulation examples are provided, i.e., 1) motion planning in an obstacle-free space, 2) motion planning with obstacle avoidance, 3) coordinated motion planning with collision avoidance, 4) coordinated motion planning with both obstacle and collision avoidance.

Case No.
Initial condition
Specified final state
1
2
3
4
5
6
TABLE I: Initial and final states for motion planning in an obstacle-free space
Example 1 (Motion planning in an obstacle-free space)

The dynamic vector field (19) is employed in this example to verify the effectiveness of motion planner in an obstacle-free space. The initial and final states of the nonholonomic mobile robot are given in Table I, where we choose six different final states including positions and orientations. Note that this is an example for one robots under various requirements of final states, instead of coordinated motion planning of multiple robots. Fig. 6(a) depicts the initial and specified final states of the robot. It should be mentioned that the case of is a quite challenging one, because it is in the lateral direction and has a same attitude as the initial state, while the robot cannot move sideways. The simulation results of robot trajectories are provided in Fig. 6(b), which shows that the robot reaches the specified positions as well as the desired orientations.

Simulation results of motion planning in an obstacle-free space
(a) Initial and specified final states of the robot
Simulation results of motion planning in an obstacle-free space
(b) Trajectories of the robot by motion planning
Fig. 6: Simulation results of motion planning in an obstacle-free space
Case No.
Initial condition
Specified final state
1
2
3
TABLE II: Initial and final states for motion planning with obstacle avoidance
Simulation results of motion planning in an obstacle environment
(a) s
Simulation results of motion planning in an obstacle environment
(b) s
Simulation results of motion planning in an obstacle environment
(c) s
Simulation results of motion planning in an obstacle environment
(d) s
Fig. 7: Simulation results of motion planning in an obstacle environment
Simulation results of coordinated motion planning with collision avoidance (Scenario 1)
(a) s
Simulation results of coordinated motion planning with collision avoidance (Scenario 1)
(b) s
Simulation results of coordinated motion planning with collision avoidance (Scenario 1)
(c) s
Simulation results of coordinated motion planning with collision avoidance (Scenario 1)
(d) s
Fig. 8: Simulation results of coordinated motion planning with collision avoidance (Scenario 1)
Simulation results of coordinated motion planning with collision avoidance (Scenario 2)
(a) s
Simulation results of coordinated motion planning with collision avoidance (Scenario 2)
(b) s
Simulation results of coordinated motion planning with collision avoidance (Scenario 2)
(c) s
Simulation results of coordinated motion planning with collision avoidance (Scenario 2)
(d) s
Fig. 9: Simulation results of coordinated motion planning with collision avoidance (Scenario 2)
Example 2 (Motion planning with obstacle avoidance)

This example considers the motion planning in an obstacle environment, so that the dynamic vector field with obstacle avoidance should be utilized. The initial and final states of one robot is provided in Table II, where we choose three different initial conditions. The radius of the obstacle is set to be , while the radius of the region with obstacle-avoidance vector field is . The simulation time is chosen as s, and the trajectories of three different scenarios are given in Fig. 7. It can be seen that the robot can arrive at the specified final states and avoid the obstacles meanwhile.

Example 3 (Coordinated motion planning with collision avoidance)

In this example, we provide two scenarios of coordinated motion planning of multiple robots with collision avoidance. In the first scenario, five robots start from a line formation with parallel orientations, as shown in Fig. 8(a). These robots are required to reach their own position in another line formation and keep the same orientations as their initial ones. The trajectories of the robots at different time instants are illustrated in Fig. 8(b)-Fig. 8(d), which indicates that achieve the desired final states and avoid collisions with each other. The second scenario considers six robots on a circle, which are expected to exchange their positions with the opposite one and at the same time maintain the initial orientations at the final instant. Such a scenario cause possibly deadlocks for artificial potential or optimization methods, but the vector field proposed in this paper is applicable to this problem, which can be observed from the simulation results in Fig. 9.

Simulation results of coordinated motion planning with both of obstacle and collision avoidance
(a) s
Simulation results of coordinated motion planning with both of obstacle and collision avoidance
(b) s
Simulation results of coordinated motion planning with both of obstacle and collision avoidance
(c) s
Simulation results of coordinated motion planning with both of obstacle and collision avoidance
(d) s
Fig. 10: Simulation results of coordinated motion planning with both of obstacle and collision avoidance
Minimum distance among all pairs of robots at each time instant
Fig. 11: Minimum distance among all pairs of robots at each time instant
Example 4 (Coordinated motion planning with both obstacle and collision avoidance)

The last example handles the multi-robot motion planning in an obstacle environment, so that we have to take into account the obstacle avoidance as well as the collision avoidance with each other. In this example, the number of the robots is and the safe distance between any pair of robots is set to be . Besides, the radius of the obstacle is chosen to be , while the radius of the region with obstacle-avoidance vector field is . The motions of all robots at different time instants are depicted in Fig. 10, in which the final states of the robots are line formations with desired parallel orientations. It can also be viewed from Fig. 10 that the trajectories of the robots have no overlaps with obstacles, implying that the mission of obstacle avoidance is realized successfully. The minimum distance among all pairs of robots at each time instant is shown in Fig. 11, which demonstrates that the safe threshold is not violated during the motion period.

Vii Conclusion

This paper has studied the simultaneous position and orientation planning of multiple nonholonomic mobile robots. Such a planning problem takes into account the position and orientation requirements simultaneously, indicating that the robot can reach the goal point with a specified attitude angle. In contrast to the existing open-loop algorithms, we have proposed a novel global feedback motion planning method, namely, a dynamic vector field, under which the directions of velocity vectors over the 2-D plane are decided by both of position and orientation and the nonholonomic constraint can be handled. In addition, by blending with a circular vector field, the dynamic vector field has been extended to the cases of obstacle and collision avoidance. Future works will focus on the vector-field-based motion planning under more realistic occasions, such as input saturations, external disturbances, measurement noises.

References

  • [1] P. Bhattacharya and M. L. Gavrilova (2008-06) Roadmap-based path planning: using the voronoi diagram for a clearance-based shortest path. IEEE Robot. Autom. Mag. 15 (2), pp. 58–66. Cited by: §I.
  • [2] A. Bloch, M. Camarinha, and L. Colombo (2021-03) Dynamic interpolation for obstacle avoidance on Riemannian manifolds. Int. J. Control 94 (3), pp. 588–600. Cited by: §I.
  • [3] A. M. Bloch (2015) Nonholonomic mechanics and control, second edition. Springer, New York, NY. Cited by: §I, Remark 1.
  • [4] F. Bullo and A. D. Lewis (2005) Geometric control of mechanical systems: modeling, analysis, and design for simple mechanical control systems. Springer, New York, NY. Cited by: §I, §III, Remark 1.
  • [5] F. Bullo and R. Murray (1995-09) Proportional derivative (PD) control on the Euclidean group. In Proc. European Control Conference, Rome, Italy, pp. 1091–1097. Cited by: §III.
  • [6] C. Cai and S. Ferrari (2009-06) Information-driven sensor path planning by approximate cell decomposition. IEEE Trans. Syst., Man, Cybern. B 39 (3), pp. 672–689. Cited by: §I.
  • [7] V. Cichella, I. Kaminer, C. Walton, N. Hovakimyan, and A. M. Pascoal (2021-04) Optimal multivehicle motion planning using bernstein approximants. IEEE Trans. Autom. Control 66 (4), pp. 1453–1466. Cited by: §I.
  • [8] R. V. Cowlagi and P. Tsiotras (2012-10) Multiresolution motion planning for autonomous agents via wavelet-based cell decompositions. IEEE Trans. Syst., Man, Cybern. B 42 (5), pp. 1455–1469. Cited by: §I.
  • [9] S. Garrido, L. Moreno, D. Blanco, and F. M. Monar (2010-07) Robotic motion using harmonic functions and finite elements. J. Intell. Robot. Syst. 59 (1), pp. 57–73. Cited by: §I.
  • [10] S. Ge and Y. Cui (2002-11) Dynamic motion planning for mobile robots using potential field method. Auton. Robot. 13 (3), pp. 207–222. Cited by: §I.
  • [11] A. J. Häusler, A. Saccon, A. P. Aguiar, J. Hauser, and A. M. Pascoal (2016-05) Energy-optimal motion planning for multiple robotic vehicles with collision avoidance. IEEE Trans. Control Syst. Technol. 24 (3), pp. 867–883. Cited by: §I.
  • [12] L. Huang (2009-01) Velocity planning for a mobile robot to track a moving target: A potential field approach. Auton. Robot. 57 (1), pp. 55–63. Cited by: §I.
  • [13] I. I. Hussein and A. M. Bloch (2008-04) Optimal control of underactuated nonholonomic mechanical systems. IEEE Trans. Autom. Control 53 (3), pp. 668–682. Cited by: §I.
  • [14] L. Jaillet, J. Cortes, and T. Simeon (2010-08) Sampling-based path planning on configuration-space costmaps. IEEE Trans. Robot. 26 (4), pp. 635–646. Cited by: §I.
  • [15] Y. A. Kapitanyuk, A. V. Proskurnikov, and M. Cao (2018-07) A guiding vector-field algorithm for path-following control of nonholonomic mobile robots. IEEE Trans. Control Syst. Technol. 26 (4), pp. 1372–1385. Cited by: Remark 2.
  • [16] C. S. Karagöz, H. I. Bozma, and D. E. Koditschek (2014-12) Coordinated navigation of multiple independent disk-shaped robots. IEEE Trans. Robot. 30 (6), pp. 1289–1304. Cited by: §I.
  • [17] S. Karaman and E. Frazzoli (2011-06) Sampling-based algorithms for optimal motion planning. Int. J. Robotics Res. 30 (7), pp. 846–894. Cited by: §I.
  • [18] L. E. Kavraki, P. Svestka, J. C. Latombe, and M. H. Overmars (1996-08) Probabilistic roadmaps for path planning in high-dimensional configuration spaces. IEEE Trans. Robot. Autom. 12 (4), pp. 566–580. Cited by: §I.
  • [19] J.-O. Kim and P. K. Khosla (1992-06) Real-time obstacle avoidance using harmonic potential functions. IEEE Robot. Autom. Mag. 8 (3), pp. 338–349. Cited by: §I.
  • [20] Y. Koren and J. Borenstein (1991-04) Potential field methods and their inherent limitations for mobile robot navigation. In Proc. IEEE International Conference on Robotics and Automation, Sacramento, CA, USA, pp. 1398–1404. Cited by: §I.
  • [21] B. Kovacs, G. Szayer, F. Tajti, M. Burdelis, and P. Korondi (2016-08) A novel potential field method for path planning of mobile robots by adapting animal motion attributes. Auton. Robot. 82, pp. 24–34. Cited by: §I.
  • [22] P. Lehner and A. Albu-Schaffer (2018-10) The repetition roadmap for repetitive constrained motion planning. IEEE Robot. Autom. Lett. 3 (4), pp. 3884–3891. Cited by: §I.
  • [23] B. Li, Y. Ouyang, Y. Zhang, T. Acarman, Q. Kong, and Z. Shao (2021-04) Optimal cooperative maneuver planning for multiple nonholonomic robots in a tiny environment via adaptive-scaling constrained optimization. IEEE Robot. Autom. Lett. 6 (2), pp. 1511–1518. Cited by: §I.
  • [24] C. Li and H. G. Tanner (2019-02) Navigation functions with time-varying destination manifolds in star worlds. IEEE Trans. Robot. 30 (1), pp. 35–48. Cited by: §I.
  • [25] J. Li, M. Ran, and L. Xie (2021-04) Efficient trajectory planning for multiple non-holonomic mobile robots via prioritized trajectory optimization. IEEE Robot. Autom. Lett. 6 (2), pp. 405–412. Cited by: §I.
  • [26] S. R. Lindemann and S. M. LaValle (2009-05) Simple and efficient algorithms for computing smooth, collision-free feedback laws over given cell decompositions. Int. J. Robotics Res. 28 (5), pp. 600–621. Cited by: §I, §I.
  • [27] S. G. Loizou and K. J. Kyriakopoulos (2008-02) Navigation of multiple kinematically constrained robots. IEEE Trans. Robot. 24 (1), pp. 221–231. Cited by: §I.
  • [28] A. A. Masoud (2012-06) Motion planning with gamma-harmonic potential fields. IEEE Aerosp. Electron. Syst. Mag. 48 (4), pp. 2786–2801. Cited by: §I.
  • [29] R. M. Murray, Z. Li, and S. S. Sastry (1994) A mathematical introduction to robotic manipulation. CPC Press, Boca Raton, Florida. Cited by: Remark 1.
  • [30] Y. Oh, K. Cho, Y. Choi, and S. Oh (2021-12) Chance-constrained multilayered sampling-based path planning for temporal logic-based missions. IEEE Trans. Autom. Control 66 (12), pp. 5816–5829. Cited by: §I.
  • [31] D. Panagou (2017-03) A distributed feedback motion planning protocol for multiple unicycle agents of different classes. IEEE Trans. Autom. Control 62 (3), pp. 1178–1193. Cited by: §I, §I, Remark 2.
  • [32] E. Rimon and D. Koditschek (1992-10) Exact robot navigation using artificial potential functions. IEEE Robot. Autom. Mag. 8 (5), pp. 501–518. Cited by: §I.
  • [33] Y. Tian, X. Zhu, D. Meng, X. Wang, and B. Liang (2021-07) An overall configuration planning method of continuum hyper-redundant manipulators based on improved artificial potential field method. IEEE Robot. Autom. Lett. 6 (3), pp. 4867–4874. Cited by: §I.
  • [34] L. Valbuena and H. G. Tanner (2012-12) Hybrid potential field based control of differential drive mobile robots. J. Intell. Robot. Syst. 68 (3-4), pp. 307–322. Cited by: §I.
  • [35] L. Zhang, Y. J. Kim, and D. Manocha (2008-11) Efficient cell labelling and path non-existence computation using c-obstacle query. Int. J. Robotics Res. 27 (11-12), pp. 1246–1257. Cited by: §I.
  • [36] G. Zhao and M. Zhu (2021-09) Pareto optimal multirobot motion planning. IEEE Trans. Autom. Control 66 (9), pp. 3984–3999. Cited by: §I.
  • [37] G. Zhao and M. Zhu (2022-06) Scalable distributed algorithms for multi-robot near-optimal motion planning. Automatica 140. Note: art. no. 110241 Cited by: §I.