Content uploaded by Ali Marzoughi
Author content
All content in this area was uploaded by Ali Marzoughi on Mar 29, 2022
Content may be subject to copyright.
Navigating A Mobile Robot to Avoid Moving
Obstacles Using Virtual Source/Sink Force Field
Ali Marzoughi
School of Electrical and Telecommunication Engineering
The University of New South Wales
Sydney, Australia
a.marzoughi@student.unsw.edu.au
Abstract—This paper proposes a novel navigation
strategy for a unicycle mobile robot in a cluttered area with
moving obstacles based on the virtual field force algorithm.
We consider each obstacle as a virtual source and each
obstacle free area between every two obstacles as a virtual
sink, which exert repulsive and attractive field forces on the
robot. The mathematical proof of the navigation law is
provided, and the validity of the proposed method is
confirmed using computer simulation.
Keywords—Navigation; Virtual Field Force; Mobile
Robots; Obstacle Avoidance
I. INTRODUCTION
Safe maneuvering in a dynamic environment is part of
essential requirements for mobile robots [1]. Extensive research
has resulted in remarkable solutions to this problem, however,
more studies on the subject of deficiency are required [2]. The
maneuvering and navigation is classified as global and local [3].
A prerequisite for global path planning is prior knowledge of the
environment. However, local path planning relies on available
information collected by the onboard sensors every time
[4][5][6].
Furthermore, there are various strategies for proper path
planning and navigation. Some of them with the most
prominent features include the leaderfollower control
algorithm [7][8][9], animal swarm and flocking algorithm
[10][11], controlling agents based on a virtual structure
[12][13][14], behavioralbased method [15], decentralized
gamebased decision making [16], and the biologically inspired
reaction control method [17][18]. In the leaderfollower
method, one of the agents should be assigned as the leader, and
the rest of the team are supposed to follow the leader’s decisions
[19]. The advantage of this method is less calculation as the
leader is the only one calculating the path to make critical
decisions. However, any mistake by the leader affects the
performance of the whole team.
A general proposed definition of flocking [20] implies the
capability of a selforganized mobile robotic network to
coordinate the behavior of the group in a certain mission.
The main issue in the behavioral based method is detecting
the target while avoiding obstacles in the region and the
required behaviors are previously prescribed for the robots
[21][22].
In the virtual structure based method, the robots need to
have a geometric relationship based on a predefined virtual
variable and functions such as virtual agents, virtual points, and
virtual force fields [23][24]. The agents do not follow the
leader, so failure of any robot doesn’t affect the performance of
the others. Furthermore, there is neither a prescribed behavioral
strategy nor a priori knowledge about the region. A position
estimation switching algorithm is developed [25]. Despite the
robustness and reliability of the model, it is designed for a group
of mobile robots to avoid a single static obstacle.
The focus of this research is based on the virtual structure
method.
We proposed a novel navigation algorithm that resulted in
avoiding any dynamic or static obstacles by a unicyclelike
mobile robot in an unknown bounded region. Avoiding
dynamic obstacles is more challenging as compared to [26]
static obstacles; therefore, we consider the case that all
obstacles move in the bounded region. The virtual force method
is a reliable and robust method to succeed in dealing with the
problem of obstacle avoidance [27][28]. In some cases, a
repulsive force was applied to avoid collision between the robot
and obstacles, see e.g. [21][28][29]. In some other cases,
researchers applied potential field for collision avoidance
between agents, see e.g. [30][31], where the potential field was
applied to prevent any collision between aerial vehicles and
obstacles in small scale. In this research, we applied virtual,
repulsive, and attractive force fields on the robot. We
considered any object in the area to be a virtual source of the
repulsive force field and any objectfree space between the
obstacles as a virtual sink of attractive force field. The polar
angle of the resultant force vector determines the updated
direction of the robot, and we proved that the amplitude of the
resultant force vector in a certain interval implies the maximum
distance the robot can travel safely in the region with no risk of
collision in the interval of frequent sojourn times.
The paper is organized as follows. Section II and III
describe the problem statement, the dynamic model of a
unicycle robot and the navigation strategy, which results in
avoidance of any collision between the robot and the dynamic
obstacles in the region. The simulation in Section IV confirms
This work was supported in part by Australian Research Council (ARC)
9781538637425/17/$31.00 © 2017 IEEE 344
Proceedings of the 2017 IEEE
International Conference on Robotics and Biomimetics
December 58, 2017, Macau SAR, China
the validity of the proposed algorithm and a brief conclusion is
offered in section V.
II.PROBLEM STATEMENT
We consider a standard nonlinear model that describes the
kinematic of a planar pointwise robot as follows:
;d8:
d8*47 Ad8
<d8:
d87.3 Ad8
Ad89
d8
DA
d8 (1)
The nonholonomic model (1) is applied to different types
of vehicles such as unmanned groundbased ones, aerial
vehicles, missiles, etc. See e.g. [32][33][34][35], and any
references therein.
Where ;d8 and <d8 denote the Cartesian coordinates of
the robot and Ad8 represents the heading of the robot i in a
bounded areaE$$ X. Furthermore, :d8 is considered
as the linear velocity and Dd8 is considered as the angular
velocity of the agent i.
The magnitude of the linear velocity :d8 of the robot i
varies in each interval : and the heading Ad takes value of
B.
The area is smooth and bounded, and the robot is
surrounded by impenetrable moving obstacles with the
capability of rotation, deformation, and merging. The linear
velocity of each obstacle :hx satisfies the following constraint
where 2 denotes the number of obstacles:
:hx8:
d846/ 2 (2)
Moreover, we assume a smooth Jordan curve bounds the
outer face of each obstacle thus we ignore cusps and cavity
effects to the sensor measurements.
We assume the coordinates of the robot’s center of mass as
the origin of a reference frame attached to the robot with the
heading towards the ; axis of the frame. Therefore, the robot
measures a set of polar angles =d
e and a set of distances
+d
e=d
e 8 in each time where .2 denotes the number
of finite visible points on the obstacle / at time 8.
Each obstacle assumes to be a distinct member of the
obstacle set '4
Y4
Z4
f and the robot treats any merged
obstacles as one obstacle.
The motion of the obstacles is not predictable by the robot.
III.THE NAVIGATION STRATEGY
In this scenario, the robot detects the obstacles within its
sensing range (. It is the fact of the matter that there are many
factors such as hardware circumstances and environmental
conditions, which result in a sensing range’s imperfect disk
shape [36]. However, for the sake of simplicity, we consider a
perfect sensing range for the robots.
Assumption 1: There is no predefined path or certain
orientation for the obstacles in the region E$. Therefore, the
obstacles are able to move arbitrarily in any direction with the
capability of merging. In fact, the configuration of the obstacle
set is 'el'
el8 8.
Let Me1
e
d represent a set of ray lines from a sensor to a
set of visible points eS
e
d of each obstacle, where .
3 denotes the number of visible points, and /2
denotes the number of obstacles in time 8. We suppose the line
1e
Yand 1e
g are tangent lines to the Jordan curve of each obstacle
corresponding to the points Se
Y and Se
g.
Assumption 2: Any neighbor obstacles //
F/ are
known as disjoint obstacle if
Se
gS
e
Y 6 (3)
Where /and / denotes the permutation of the neighbor
obstacles and 6 represents the circumradius of the hypothetical
circumscribed circle of the robot.
A.Virtual Force Formation Control
We consider obstacles as the sources of repulsive force to
the robot which means at time 8, each obstacle applies a
repulsive force vector 
jd
e at point Sd
e to the robot. On the other
hand, there are obstaclefree areas between the obstacles that
satisfy the inequality (3), that we consider them as the source of
attractive force and applies attract the obstacle with the force
vector 
bd
e.
As it shows in Fig.1, each point Sd
eFe as a particle applies
a repulsive force to the robot as we consider the robot as particle
either. Therefore, the repulsive virtual force between the
particles on each obstacle and the robot is defined as follow:
L
j 0j
g
d]Y
Tw
xTz
cw
xs
f
e]Y (4)
dpd
ee
Se
g
SY
e

bd
e
S
Y
Sd
e
+d
e
Sd
e

jd
e
KIG
H
U
U
χ
Q
Abd
e
Fig. 1. Robot’s sensing and measurements
345
Where Ljrepresents the resultant force of the all virtual
repulsive forces exerted from each point SdeFe of the obstacles
to the robot. We considered Tdeand Tjh as the charges of the
particles on the obstacles and the pointwise robot respectively.
To calculate the virtual attractive force, we consider a set of
lines &d
eethat connects point SY
e of any obstacle /F/ to point
Sg
e of any obstacle /F/.
The line dpd
ee &d
ee, represents the minimum
distance between the points Sg
e and SY
e. As dpd
eeis a virtual
line; therefore we need to define 3 virtual particles to exert
attractive forces to the robot as Sg
e5R
ee S
Y
e and
R3 with the coordinates:
PiR
xx
QiR
xx PiRtr
xx w~w
xx
g?
QiRtr
xx w~w
xx
g? (5)
And the attractive force equation:
Lb 0b
g
d]Y Tw
xTz
cw
xs
f
e]Y (6)
We decompose both repulsive and attractive force in (4) and
(6) so that:
Ljmn Ljm 0j
g
d]Y Tw
xTz
cw
xs
f
e]Y *47Ajd
e
Ljn 0j
g
d]Y Tw
xTz
cw
xs
f
e]Y 7.3Ajd
e (7)
Lbmn Lbm 0b
g
d]Y Tw
xTz
cw
xs
f
e]Y *47Abd
e
Lbn 0b
g
d]Y Tw
xTz
cw
xs
f
e]Y 7.3Abd
e (8)
where Ajd
e8)3\Y QSx
w\Qz
PSx
w\Pz and Abd
e8)3\Y Q{R
xx\Qz
P{R
xx\Pz .
T^_ and Ta` are supposed to be the electrical charges of each
virtual point and the robot respectively. We supposed the robot
as a pointwise vehicle, therefore, we presume T^_Ta`.
Furthermore, 0j and 0b are the positive constants and could be
consider as equal either.
Thereafter, we define a new constant:
C0jT^_Ta` 0bT^_Ta` (9)
The resultant force vector would be calculated as in:
%CL
jmn L
bmn (10)
The robot updates its heading and the linear velocity based
on the amplitude %land the polar angle A of the resultant force
vector (10) at time 8:
Pjhl % lA8
Qjhl % lA888 (11)
Theorem 1. Consider a set of dynamic obstacles and a
pointwise mobile robot satisfying (2), assumption 1 and
assumption 2. Furthermore, the robot updates its heading and
the linear velocity based on updating rule (11) at time J. The
robot avoids collision with any moving obstacle in the bounded
area E$ if:
Ccw
x
Z@ (12)
Proof of Theorem 1: we assume the robot surrounded by
finite numbers of circle shape moving obstacles in the plane and
(9), (10), and (11) are satisfied. Let +d
ebet the minimum
distance from the robot to the point S^ of the obstacle.
Moreover, 1Y
eand 1g
e denote the tangent lines to the maximum
visible points SY
e and Sg
e of the obstacleN_ to the robot and >
represents the angle between 1Y
e and 1g
e. We consider the case
that % +d
eand A> determine the maximum
desired distance and the polar angle that the robot moves from
its initial position Sa`u to reach its next position Sa`u where 8
and 8 denote the first and the second sojourn time. As the
obstacles, capable to move arbitrary thus any single point on the
outer face of the obstacle would be on the circumference of a
circle with the radius 6+d
e at 8. As shown in Fig 2., if the
obstacle moves toward the initial position SY
ewith its
maximum velocity OfbmhxOfbmd, then:
8 88 Zj cw
x[ojs
Oyv}zx (13)
V"!#
W
Sle
Vl
H
"
"
"
U
Fig. 2. Circle shape obstacle moving towards the initial position of the robot
346
Thus, it’s obvious that there is at least one point Sq
eFe at
time 88 where Sa`uS
l
e, except (12) holds.
It is obvious that (12) guarantees the obstacle avoidance
between each sojourn time independent from the orientation of
the robot and the obstacles.
In the worstcase scenario, if the robot and the closest
obstacle moving toward each other in, then there would be a
minimum allowed distance between the robot and the point
Sl
eFe as in:
Sa`uS
l
e@ (14)
According to Theorem 1, the collision between the robot
and obstacles could be happen while %lcw
x
Z, therefore, we
propose the following modification to apply in the navigation
algorithm:
C
. %lcw
x
Z
cw
x
Z@ . %lcw
x
Z
(15)
IV.SIMULATION AND DISCUSSION
The validation of the proposed algorithm is confirmed with
MATLAB simulation. Fig.3 illustrates how the robot avoids
collision with any dynamic obstacle in an unknown area. In this
simulation, we considered 3 ellipsoids and a circleshaped
smooth obstacle, capable of moving randomly in any direction
in the area and merging is possible while the constraint (2) is
applied. Furthermore, neither the robot nor obstacles have a
priori information of the region and the robot gathers the
information about the obstacle’s position, distances, repulsive,
and attractive forces from the sources and the sinks based on its
sensor measurement in each sojourn time. The sojourn time
(8khg, which is defined as the time required for sensing and
computation equals 0.01s in each measurement step and the
minimum allowable distance of the robot and the outer face of
the obstacles considered as @$,*.2,8,6. Fig.4 represents
the minimum distance between the robot and the obstacles in
each sojourn time. As shown in Fig.4, the robot traverses the
obstacles to a safe area while implementing the updating rule
(11) in 20 steps. As the sojourn time is 0.01s, the total time
required for computation of the algorithm is quite short which
leads to a fast motion of the robot in the cluttered area with no
danger of collision. Moreover, the minimum distance of the
robot and the obstacles in each sojourn step is illustrated in
Fig.4. The infimum of the minimum distances between the
robot and the obstacles is $,*.2,8,6, which is farther
enough to avoid any collision with the closest obstacle.
It is obvious that the robot chooses the best direction with
appropriate velocity to avoid collision without any concern
about the direction of the motion of the obstacles.
Fig. 3. Moving obstacles collision avoid ance
347
V.CONCLUSION
We have proposed a local navigation strategy based on the
virtual force field method to navigate a unicycle robot in an
unknown cluttered bounded region with moving obstacles. The
obstacles are supposed to move freely in any direction with the
capability of deformation, rotation, and merging. There is no
special limitation except the linear velocity of the obstacles that
should not exceed the maximum velocity of the robot. In this
research, each object is assumed to be a virtual repulsive force
field and any obstaclefree area between adjacent obstacles
considered as a sink of attractive force field. We
mathematically proved that any path the robot moved in, based
on the proposed navigation law, is safe and collision free. The
simulation confirmed the reliability and the robustness of the
proposed navigation law.
REFERENCES
[1] A. S. Matveev, M. C. Hoy, and A. V. Savkin, “A globally converging
algorithm for reactive robot navigation among moving and deforming
obstacles,” Automatica, vol. 54, pp. 292–304, Apr. 2015.
[2] A. V. Savkin and C. Wang, “Seeking a path through the crowd: Robot
navigation in unknown dynamic environments with moving obstacles
based on an integrated environment representation,” Rob. Auton. Syst.,
vol. 62, no. 10, pp. 1568–1580, Oct. 2014.
[3] L. Lapierre, R. Zapata, and P. Lepinay, “Combined Pathfollowing and
Obstacle Avoidance Control of a Wheeled Robot,” Int. J. Rob. Res., vol.
26, no. 4, pp. 361–375, Apr. 2007.
[4] A. V. Savkin and M. Hoy, “Reactive and the shortest path navigation of
a wheeled mobile robot in cluttered environments,” Robotica, vol. 31, no.
2, pp. 323–330, Mar. 2013.
[5] M. Hoy, A. S. Matveev, and A. V Savkin, “Algorithms for collisionfree
navigation of mobile robots in complex cluttered environments: a
survey,” Robotica, vol. 33, no. 3, pp. 463–497, 2015.
[6] I. Kamon and E. Rivlin, “Sensorybased motion planning with global
proofs,” IEEE Trans. Robot. Autom., vol. 13, no. 6, pp. 814–822, 1997.
[7] L. Consolini, F. Morbidi, D. Prattichizzo, and M. Tosques, “Leader
follower formation control of nonholonomic mobile robots with input
constraints,” Automatica, vol. 44, no. 5, pp. 1343–1349, 2008.
[8] H. G. Tanner, G. J. Pappas, and V. Kumar, “Leadertoformation
stability,” IEEE Trans. Robot. Autom., vol. 20, no. 3, pp. 443–455, 2004.
[9] T. Liu and Z. P. Jiang, “Distributed formation control of nonholonomic
mobile robots without global position measurements,” Automatica, vol.
49, no. 2, pp. 592–600, 2013.
[10] X. Chen, M. Wu, and Y. Li, “Formation control based on adaptive NN
with timevarying interaction among robots,” in Proceedings of the 27th
Chinese Control Conference, CCC, 2008, pp. 341–345.
[11] R. OlfatiSaber, “Flocking for multiagent dynamic systems: Algorithms
and theory,” IEEE Trans. Automat. Contr., vol. 51, no. 3, pp. 401–420,
2006.
[12] D. B. Nguyen and K. D. Do, “Formation Control of Mobile Robots,” Int.
J. Comput. Commun. Control, vol. 1, no. 3, p. 41, Jul. 2006.
[13] J. Minguez and L. Montano, “Robot Navigation In Very Complex,
Dense, And Cluttered Indoor/Outdoor Environments,” Prepr. 15 th
Trienn. IFAC World Congr. …, 2002.
[14] N. Bisnik, A. A. Abouzeid, and V. Isler, “Stochastic Event Capture Using
Mobile Sensors Subject to a Quality Metric,” IEEE Transactions on
Robotics, vol. 23, no. 4. pp. 676–692, 2007.
[15] T. Balch and R. C. Arkin, “Behaviorbased formation control for
multirobot teams,” IEEE Trans. Robot. Autom., vol. 14, no. 6, pp. 926–
939, 1998.
[16] A.Marzoughi, “Maximizing the probability of intrusion detection by a
fleet of mobile robots using an intelligent game theoretic approach,” in
Control Conference (CCC), 2017 36th Chinese, 2017.
[17] A. V. Savkin and C. Wang, “A simple biologically inspired algorithm for
collisionfree navigation of a unicyclelike robot in dynamic
environments with moving obstacles,” Robotica, vol. 31, no. 6, pp. 993–
1001, Sep. 2013.
[18] A. V. Savkin, “Coordinated collective motion of groups of autonomous
mobile robots: Analysis of Vicsek’s model,” IEEE Trans. Automat.
Contr., vol. 49, no. 6, pp. 981–983, 2004.
[19] A. Santos Brandao, M. SarcinelliFilho, R. Carelli, and T. F. Bastos
Filho, “Decentralized control of leaderfollower formations of mobile
robots with obstacle avoidance,” in 2009 IEEE International Conference
on Mechatronics, 2009, pp. 1–6.
[20] J. K. Parrish, S. V Viscido, and D. Grünbaum, “Selforganized fish
schools: an examination of emergent properties.,” Biol. Bull., vol. 202,
no. 3, pp. 296–305, Jun. 2002.
[21] Hiroshi Hashimoto, Shinichi Aso, Sho Yokota, Akinori Sasaki, Yasuhiro
Ohyama, and Hiroyuki Kobayashi, “Cooperative movement of human
and swarm robot maintaining stability of swarm,” in ROMAN 2008  The
17th IEEE International Symposium on Robot and Human Interactive
Communication, 2008, pp. 249–254.
[22] V. Gazi and K. M. Passino, “A class of attractions/repulsion functions for
stable swarm aggregations,” Int. J. Control, vol. 77, no. 18, pp. 1567–
1579, Dec. 2004.
[23] B. Varghese and G. McKee, “A Mathematical Model, Implementation
and Study of a Swarm System,” Rob. Auton. Syst., vol. 58, no. 3, pp. 287–
294, Oct. 2013.
[24] N. H. M. Li and H. H. T. Liu, “Formation UAV flight control using
virtual structure and motion synchronization,” in Proceedings of the
American Control Conference, 2008, pp. 1782–1787.
[25] A.Marzoughi, “A decentralized position estimation switching algorithm
Fig. 4. Minimum distance between the Robot and the Obstacles
348
to avoid a convex obstacle,” in Control Conference (CCC), 2017 36th
Chinese, 2017.
[26] A. S. Matveev, C. Wang, and A. V. Savkin, “Realtime navigation of
mobile robots in problems of border patrolling and avoiding collisions
with moving and deforming obstacles,” Rob. Auton. Syst., vol. 60, no. 6,
pp. 769–788, 2012.
[27] D. Zhuoning, Z. Rulin, C. Zongji, and Z. Rui, “Study on UAV Path
Planning Approach Based on Fuzzy Virtual Force,” Chinese J. Aeronaut.,
vol. 23, no. 3, pp. 341–350, Jun. 2010.
[28] G. H. Elkaim and R. J. Kelbley, “A Lightweight Formation Control
Methodology for a Swarm of NonHolonomic Vehicles,” in 2006 IEEE
Aerospace Conference, 2006, pp. 1–8.
[29] F. E. Schneider and D. Wildermuth, “A potential field based approach to
multi robot formation navigation,” in IEEE International Conference on
Robotics, Intelligent Systems and Signal Processing, 2003. Proceedings.
2003, 2003, vol. 1, pp. 680–685.
[30] T. Paul, T. R. Krogstad, and J. T. Gravdahl, “UAV formation flight using
3D potential field,” in 2008 16th Mediterranean Conference on Control
and Automation, 2008, no. July, pp. 1240–1245.
[31] G. Gowtham and K. S. Kumar, “Simulation of multi UAV flight
formation,” in AIAA/IEEE Digital Avionics Systems Conference 
Proceedings, 2005, vol. 2, p. 11.A.3111.A.36.
[32] A. V. Savkin, C. Wang, A. Baranzadeh, Z. Xi, and H. T. Nguyen,
“Distributed formation building algorithms for groups of wheeled mobile
robots,” Rob. Auton. Syst., vol. 75, pp. 463–474, Jan. 2016.
[33] H. Teimoori and A. V. Savkin, “A biologically inspired method for robot
navigation in a cluttered environment,” Robotica, vol. 28, no. 5, pp. 637–
648, 2010.
[34] A. S. Matveev, H. Teimoori, and A. V Savkin, “A method for guidance
and control of an autonomous vehicle in problems of border patrolling
and obstacle avoidance,” Automatica, vol. 47, no. 3, pp. 515–524, Mar.
2011.
[35] H. Teimoori and A. V. Savkin, “Equiangular navigation and guidance of
a wheeled mobile robot based on rangeonly measurements,” Rob. Auton.
Syst., vol. 58, no. 2, pp. 203–215, Feb. 2010.
[36] B. Liu, O. Dousse, P. Nain, and D. Towsley, “Dynamic coverage of
mobile sensor networks,” IEEE Trans. Parallel Distrib. Syst., vol. 24, no.
2, pp. 301–311, 2013.
349