Abstract
This paper conducts research on collision and obstacle avoidance of multi-agent systems without mapping ability, while the constrained agent can only detect obstacles within a limited distance, then a velocity programing strategy is proposed considering the lack of a high-resolution map and the challenge of the modeling of complex obstacles. Based on the detecting information of nearby members and obstacles, a discontinuous velocity programing space is constructed by imposing the constraints on the velocity. To obtain expansive programing space, two different ways are utilized to establish the velocity constraints of avoiding various obstacles. For obstacles that can be viewed as virtual circular obstacles, a barrier function is introduced to restrict the radial component of the velocity. As for the obstacle that can only be detected partially, we use the border lines to construct a velocity feasible domain, and the domain is approximated by the polygonal region using the convex theory. Then, the nominal velocity is utilized as the objective and a nonlinear dynamic programing regulator is proposed. Furtherly, velocity limits generated from the system kinematic constraints are incorporated into the regulator. Finally, three tests are carried out and the feasibility of the proposed regulator is verified.
Keywords
Introduction
Motion control for multi-agent systems is still a hot topic, and obstacle avoidance is critical and difficult in complex circumstances.1,2 Without loss of generality, we view collision avoidance as internal obstacle avoidance. Research on obstacle avoidance previously mainly focused on path planning, analytical law designing, and dynamic programing.
The heuristic algorithms3–7 are typical for path planning methods, which will provide globally optimal paths for agents. Considering the lack of dynamic constraints, intelligent algorithms, 8 points selecting, 5 cost function revision, 6 and the Bessel curve and Dubins curve9–12 are used to smooth the paths. However, those static algorithms require high-resolution maps and can only provide one path for a single agent, which is not applicable for multi-agent systems.
Differing from path optimizing, the artificial potential field (APF) focuses on acceleration control with various forces. Traditional APF requires that obstacles can be viewed as virtual circular obstacles (VCOs). 1 As for obstacles with complex boundaries, 2 applies the panel method for potential field design, but the mathematical model requires full information about obstacles. Besides, some system constraints are ignored. In terms of the angular rate constraint, Song et al. 13 proposes a speed segmental adjustment strategy for field design, but it provides no methods for processing complex obstacles. Instead of field designing for each obstacle, global field functions have attracted much attention. Harmonic functions14–17 can help avoid local traps, but they cannot be incorporated with dynamic constraints due to fixed forms. Homeomorphism transform gives flexible ways for constructing global filed.18–23 The homeomorphism transform can stretch or compress irregular obstacles to VCOs or point obstacles, but the demand for full information about obstacles hinders the use of this method in complex circumstances.
Similar to APF, the interference field (IF) technology24–27 control the velocity with a coefficient matrix, which will be updated by referring to the IF function at each point. Hence, the radial component of the relative velocity is restricted, and obstacle avoidance is realized. However, geometric models of obstacles are required for building IF, and maps containing full information about obstacles are demanded. Although memory storage and segment 1 can help the robot escape the unknown asymmetric trap, the segment will be complex facing multiple obstacles, and agents might fall into traps created by the bucking effect. Apart from the above methods, velocity planning28–30 is also applied to void obstacles. 29 uses the tangent lines as the velocity guidance, 30 proposes the dynamic circular boundary for velocity planning. Despite those results, research about velocity planning still focuses on VCOs with fewer constraints. Recently, deep learning algorithms31,32 are surveyed for obstacle avoidance, but networks need plentiful practical data for training.
Based on the above analysis, complex obstacle avoidance is still a challenge. Since complex obstacles have long and complex boundaries, VCOs’ processing will compress motion space for agents, the worst situation is that VCOs might intersect with each other and no feasible space is available. Besides, limited detection cannot provide full information about obstacles, which cannot be solved well with existing methods. Thus, avoiding complex obstacles without modeling obstacles deserves to be surveyed. In this paper, the dynamic programing (DP) method33–35 is introduced to plan the velocity of agents. Multistep prediction 36 performs well for consensus control, but the boundaries of the obstacles might be time-varying due to limited detection. With the DP method, motion control can be treated as velocity programing, and obstacle avoidances can be viewed as velocity constraints. Differing the regulator designed for collision avoidance among robots, 33 nonlinear constraints will be built for complex obstacles and a nonlinear dynamic programing (NDP) regulator will be created in this paper. The velocity requirements for obstacle avoidance will be converted to various constraints of the regulator. For the sake of concise, we introduce the concept of rounded obstacles and non-rounded obstacles. Rounded obstacles represent obstacles that can be viewed as VCOs, and non-rounded obstacles are obstacles having complex boundaries and large areas. Internal agents causing interferences can be viewed as rounded obstacles. As for rounded obstacle avoidance, the velocity of the agent is planned by revising the radial component of the relative component. As for non-rounded obstacles, a feasible domain is defined and approximated with the convex hull algorithm for velocity planning. Firstly, the accessible relative velocity space is expressed as a circular domain with the radius being the maximum value of the relative velocity. Then, a convex hull can be created by rotating the border lines related to the boundaries of detected parts of non-rounded obstacles. The convex hull must cover the velocity space. Next, a polygonal feasible domain for velocity planning can be obtained by removing the infeasible parts. Based on the convex theories, 37 velocity constraints for non-rounded obstacle avoidance are built. The regulator with the above constraints can offer robust feasible solutions for agents. Although the regulator provides no analytical solutions due to nonlinear complex constraints, it shall offer feasible solutions and doesn’t need mathematical models of non-rounded obstacles, which will release the demand for full information about obstacles. Moreover, extra constraints can be added to the regulator in different environments.
The contributions of the paper can be summarized as follows: (1) A velocity programing strategy is proposed for collision and obstacle avoidance. Compared with the statistic heuristic algorithms, the proposed regulator does not need a high-resolution map and can provide feasible velocity when agents can only obtain local information about the environment; (2) A concise way is proposed to establish the velocity constraints for obstacles that cannot be detected wholly. By using the border lines and the convex theory, a feasible velocity space is constructed for complex obstacles, thus the challenge of modeling the complex obstacles that exist in the analytical law searching methods is avoided; (3) The system constraints can easily be incorporated into the regulator, while the statistic heuristic algorithms and the analytical law searching methods can easily encounter the input saturation.
The rest of the paper is organized as follows. Section 1 describes the problem of obstacle avoidance. Then, Section 2 gives the various velocity constraints of the programing model, and the programing regulator is proposed in Section 3. The simulation is conducted in Section 4, and Section 5 is the conclusion.
Obstacle avoidance
Assuming there exist
Defining the nominal velocity at the time
Considering the difficulty in designing analytical solutions, the re-planning strategy
34
is introduced to build an NDP regulator for obstacle avoidance. Taking the nominal velocity
Where
The objective function is given below:
Where
Then, the NDP regulator can be expressed as:
Defining
Where
Without velocity reference, the equation (4) can be revised as:
Where
Whatever the objective, the design of constraints
Constraints of the regulator
In this section, we discuss various constraints for obstacle avoidance in different situations.
Rounded obstacles
The coordinate used in this paper is the inertial reference frame

Rounded obstacles avoidance.
Based on the above analysis, the demand for rounded obstacles avoidance discussed above can be expressed with the following constraints:
Where
Equation (6) cannot be directly used as the velocity constraints considering the following two factors: (1) The control is not smooth if the constraint (6) is imposed on the velocity instantaneously due to the condition
The left side of the inequality in (8) represents the radial component of the relative velocity. Since we have
Non-rounded obstacles
Non-rounded obstacles cannot be viewed as VCOs, as the radius of the VCO related to a non-rounded obstacle might be big enough to compress velocity planning space, such as roadside, the canyon, and riverbank. Thus, the regulator might have no feasible solutions. The segmentation method has been used in Wu et al. 1 for non-rounded obstacle processing, but fields aroused from discrete VCOs might counteract at some positions, which will cause traps. Instead of dividing non-rounded obstacles, the strategy of designing a feasible domain for velocity is proposed in this paper.
As seen in Figure 2, the relative velocity of the agent should not point to the obstacle for obstacle avoidance, which can be realized by constructing an exclusive space for unexpected relative velocity. The exclusive space might be created with tangential lines to the obstacle, such as gray parts sandwiched by dotted blue border lines in Figure 2. However, a complete exclusive velocity space contains more than a sector due to system constraints, namely maximum velocity and angular rate limitations. Therefore, using exclusive space to establish constraints is difficult. Instead, a feasible domain for relative velocity will be created, with which the agent can avoid the obstacles. For the construction of the feasible domain, the convex hull algorithm will be applied here.

Velocity requirements for non-rounded obstacles avoidance.
Defining border lines as
Since
In this paper, polygons fenced with lines are applied for constructing bounded domains, such as the hexagonal domain

The polygonal domain with
Considering that the velocity of obstacles is restricted, we have

Construction of the polygonal domain with
By dividing the feasible domain into
It should be stated that the number of constraints will increase with increasing
Choosing
Firstly, the positions of
Then, the positions of other vertexes can be computed with the following equation:
Where
Based on equations (9) and (10), the constraints are given with
Referring to (12), the line
Where
According to the definition,
Where
Since
Referring to
Where
Compared with analytic solutions, NDP with inequality constraint in (13) is more robust.
Rigid constraints
In practice, the feasible domain in section 2.2 can be minimized considering that the backward movement of agents is not expected. Hence, the earthy yellow domain in Figure 3 should be removed and rigid constraints will be created. Next, we give rigid constraints with
For the symmetry point in the earthy yellow domain, its position can be obtained as
As seen from (17) and (18), equation (16) holds for any point in the gray and earthy yellow domain. Finally,
Because

The domain construction for roadsides avoidance.
Substituting (20) into (19), and we can get new rigid constraints.
Output constraints
Maximum velocity and angular rate should be considered for the regulator design due to dynamic constraints. The velocity will be limited by:
As for the maximum angular rate restriction, a formula 38 confining both the velocity and the angular rate is introduced here. Then the maximum angular rate restriction can be realized by:
Nonlinear dynamic programing model
Defining agents set causing interferences as
Where
Constraints can be denoted as the compact matrices in
Where
Where
Where
Compared with other matrices, the computation of
Where
Where
Where
Referring to (24) to (32), we can rewrite (23):
Where ° indicates Hadamard product.
Simulation
Three tests are conducted in this section. In test 1, agents execute missions independently, there are no external obstacles. Test 2 and test 3 verify non-rounded obstacle avoidance of the formation, agents will counter the narrow passage in test 2, and the formation must pass the road with a 90-degree turn in test 3. The nominal law
Collision avoidance
Agents causing interferences can be viewed as rounded obstacles, so in test 1 no external obstacles are designed. There are six agents executing missions in a scaled space independently, similar tests have been reported in Kiefer et al.
34
The initial positions and goals are shown in Table 1, and we have
Initial positions and goals of agents.
Positions at steps 25, 35, and 45 are shown in Figure 6, the red crosses in subfigure (a) represent the goals, which are labeled from 1 to 6, and the blue circles indicate agents. we display the velocity of agents with blue arrows, of which ranges are scaled. The results proved that agents avoided collision successfully.

Positions of agents at different time: (a) t = 10, (b) t = 25, (c) t = 35, (d) t = 40, (e) t = 45, and (f) t = 70.
Velocity and angular rate are shown in Figures 7 and 8 respectively, it can be seen that the output constraints are satisfied. Although the change of the velocity is fast sometimes, the constrained velocity makes the change limited in a reasonable scope. It seems that the accelerations might exceed the limits according to Figures 7 and 8, but the maximum change of the velocity can be controlled simultaneously, which means the accelerations limits can be fulfilled by restricting the upper and lower limit of the velocity with the proposed regulator in this paper.

Velocity of agents.

Angular rate of agents.
Narrow passage
The narrow passage is set as the non-rounded obstacle, the formation is expected to pass the passage. Parameters of agents are given in Table 2. Figure 9 displays the location of agents at varying steps, which showed that agents could pass the narrow passage without collisions with the proposed NDP strategy.
Initial positions of agents.

Positions of agents at different time: (a) t = 1, (b) t = 20, (c) t = 35, and (d) t = 60.
Roadside
Completely autonomous motion control on road is a hot topic for agents. Assuming that agents could recognize the roadside, agents are expected to pass the turning road. Initial positions of agents are set as:
Test results are displayed in Figure 10, where (a) – (d) display the positions of agents from a global perspective and (e) to (h) show the magnification of those position diagrams. Results prove that all agents could turn left safely.

Positions of agents at different time: (a) t = 10, (b) t = 25, (c) t = 30, (d) t = 50, (e) t = 10 (magnification), (f) t = 25 (magnification), (g) t = 30 (magnification), and (h) t = 50 (magnification).
Conclusion
This paper focuses on obstacle and collision avoidance of systems with multiple constrained agents, and a nonlinear dynamic programing regulator is proposed for velocity control. Based on the proposed barrier function, the velocity constraints for avoiding the rounded obstacles that could be regarded as virtual circular obstacles are established, and the mathematical analysis has proved the effectiveness of the proposed velocity constraints. Considering the lack of mapping ability and limited detection while avoiding non-rounded obstacles with complex boundaries, a feasible velocity domain is created by constructing multiple half spaces based on the border lines of obstacles and convex theory, which helps release the challenge of modeling the complex obstacles. The proposed regulator is concise and easy to be realized without complex parameters compared with analytical laws, and the extensive programing space provides more feasible choices of the velocity, thus can help avoid some traps in applications. In addition, multiple kinematic constraints that are difficult to overcome via the analytical laws can be incorporated into the regulator. Through collisions and obstacles avoiding tests, the feasibility of the proposed regulator is verified, and the proposed regulator can lead agents to the destinations with only detecting information. Future work will focus on the velocity programing for obstacle and collision avoidance in three-dimensional space and more complex environments.
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This research was supported by Natural Science Foundation of Hubei Province 2018CFC865.
