Good One

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 25

Research Article

Advances in Mechanical Engineering


2018, Vol. 10(1) 1–25
Ó The Author(s) 2018
Simultaneous localization, mapping, DOI: 10.1177/1687814017736653
journals.sagepub.com/home/ade
and path planning for unmanned
vehicle using optimal control

Demim Fethi1, Abdelkrim Nemra1, Kahina Louadj2


and Mustapha Hamerlain3

Abstract
Among the huge number of functionalities that are required for autonomous navigation, the most important are localiza-
tion, mapping, and path planning. In this article, investigation of the path planning problem of unmanned ground vehicle is
based on optimal control theory and simultaneous localization and mapping. A new approach of optimal simultaneous
localization, mapping, and path planning is proposed. Our approach is mainly affected by vehicle’s kinematics and environ-
ment constraints. Simultaneous localization, mapping, and path planning algorithm requires two main stages. First, the
simultaneous localization and mapping algorithm depends on the robust smooth variable structure filter estimate accu-
rate positions of the unmanned ground vehicle. Then, an optimal path is planned using the aforementioned positions.
The aim of the simultaneous localization, mapping, and path planning algorithm is to find an optimal path planning using
the Shooting and Bellman methods which minimizes the final time of the unmanned ground vehicle path tracking. The
simultaneous localization, mapping, and path planning algorithm has been approved in simulation, experiments, and
including real data employing the mobile robot Pioneer P3AT. The obtained results using smooth variable structure
filter–simultaneous localization and mapping positions and the Bellman approach show path generation improvements in
terms of accuracy, smoothness, and continuity compared to extended Kalman filter–simultaneous localization and map-
ping positions.

Keywords
Localization, map building, unmanned ground vehicle, path planning, optimal control, Shooting’s method, Pontryagin’s
principle, Bellman’s method

Date received: 21 December 2016; accepted: 23 August 2017

Handling Editor: Francesco Massi

Introduction
In this article, an optimal path planning problem for
1
unmanned vehicle navigation is investigated. This topic Laboratoire Robotique et Productique, Ecole Militaire Polytechnique
is once in a lifetime of diverse categories of control the- (EMP), Algiers, Algeria
2
Laboratoire d’Informatique, de Mathématiques, et de Physique pour
ory; however, it is one of serious researches. Path plan- l’Agriculture et les Forêts (LIMPAF), University of Bouira, Bouira, Algeria
ning for unmanned ground vehicle (UGV) is very 3
Division Productique et Robotique, Center for Development of
interesting for many applications (monitoring, recon- Advanced Technologies (CDTA), Algiers, Algeria
naissance, mapping, etc.). Moreover, optimal path
Corresponding author:
planning requires accurate and robust UGV localiza- Demim Fethi, Laboratoire Robotique et Productique, Ecole Militaire
tion. For this purpose, we propose in this article a new Polytechnique (EMP), BP 17, Bordj El Bahri, Algiers 16111, Algeria.
approach for simultaneous localization, mapping, and Email: demifethi@gmail.com

Creative Commons CC BY: This article is distributed under the terms of the Creative Commons Attribution 4.0 License
(http://www.creativecommons.org/licenses/by/4.0/) which permits any use, reproduction and distribution of the work without
further permission provided the original work is attributed as specified on the SAGE and Open Access pages (https://us.sagepub.com/en-us/nam/
open-access-at-sage).
2 Advances in Mechanical Engineering

path planning (SLAMPP). This system contains two can compromise with uncertainties and modeling errors
important parts, accurate localization and optimal path of odometer/laser sensor system of UGV. It is robust
planning. and stable to modeling uncertainties making it suitable
First, a new solution of UGV localization is consid- for UGV localization and mapping problem. The strat-
ered, based on the simultaneous localization and map- egy of SVSF-SLAM algorithm is presented, this new
ping (SLAM) utilizing the smooth variable structure concept ensures the stability and robustness faculties in
filter (SVSF). SLAM algorithm is the mechanism that modeling uncertainties.
helps a UGV to localize itself and construct a map In the second part of this work, a path planning
where globally accurate position data (e.g. global posi- algorithm using two methods (direct and indirect meth-
tioning system (GPS)) are not accessible. In this respect, ods) is investigated. Indirect methods based on the
UGV-SLAM solution is crucial and has shown signifi- Pontryagin principle of maximum14–16 are known for
cant promise for remote exploration.1,2 their speed and precision in the treatment of optimal
The SLAM framework based on the stochastic map control problems. The Shooting method16 is an indirect
approach was introduced in a seminal paper by Smith method of optimization which attempts to solve the
and Cheeseman in 1986. The SLAM techniques use in true optimization problem by solving the two-point
formation from onboard robot sensors to provide fea- boundary value problem (TPBVP).16 The initial condi-
ture relative localization give an apriori map of the tions sensitive to the co-state equations cause a big
environment using the extended (EKF) which is pre- problem with indirect methods. Therefore, direct meth-
sented Moutarlier and Chatila.3 This approach focuses ods are often used to initialize indirect methods when
on stochastic estimation techniques ‘‘extended EKF’’ to solving function optimization problems.17 Dynamic
estimate the position of the robot and to construct the programming (DP) based on the Bellman principle is
map. The work on the EKF-SLAM algorithm imple- the best which solves the direct method problem, by
mentations can be found in different environments, reducing the initial hypothesis, and bringing a discrete
such as indoors, outdoors, aerial space, and underwater time approximation to the optimal function of time,
submarine.4,5 In addition, the update of the EKF cov- since DP algorithms are of order (N ) in the parameter
ariance matrix increases quadratically in the size of the optimization.17,18
number of detecting landmarks.6–8 A nonlinear version In this article, a robust system for localization, map-
of the Kalman filter proposed in Davison9 is the ping, path planning, and optimal control (see Figure 1)
unscented Kalman filter (UKF) that employs a particu- is developed. The local navigator is a susceptible pro-
lar representation of a Gaussian random variable in cess that depends on the current sensor data to keep
(N ) dimensions using (2N + 1) samples, labeled sigma vehicle safe and stable during movement quick as possi-
points. Among the advantages of the UKF, noise can ble. The path planning with optimal control using the
be considered in a nonlinear mode to account for non- Shooting and Bellman method based on different
Gaussian noise. On the other hand, it suffers less from approaches of localization, as reviewed in this work, is
linearization, although it is not exempt. Like EKF, the a deliberative technique which regards forward to the
UKF does not fully recover from poor landmarks. future and uses information about the world to pro-
Another algorithm of estimation is known as Fast- duce a safe path for the robot.
SLAM. This algorithm uses a Rao-Blackwellized This article is organized as follows. Section ‘‘Process
Particle Filter to estimate the robot’s pose and map. model of UGV’’ depicts the process model of UGV. In
Each particle represents a possible robot’s position. section ‘‘EKF-SLAM algorithm,’’ the EKF-SLAM
The uncertainty about the knowledge of this position is algorithm is detailed and compared with the proposed
represented by the distribution of these particles in SVSF-SLAM algorithm. The implementation of this
space. The implementation of the Fast-SLAM algo- latter is presented in section ‘‘SVSF-SLAM algorithm.’’
rithm is resolved successfully with thousands of land- In section ‘‘Optimal control,’’ we describe path plan-
marks and compared to the EKF-SLAM algorithm ning with optimal control. Finally, results and discus-
which can use only a few hundreds of landmarks. The sion are provided in section ‘‘Results and discussion’’
Fast-SLAM is demonstrated that it is not suitable for followed by conclusion and perspectives.
real-time implementation.10,11 In 2007, the progress of
a new predictor–corrector estimator was established on
Process model of UGV
the variable structure theory and sliding mode con-
cepts.11–13 The Pioneer P3-AT which used in this work is a non-
In this article, we investigate this new approach, holonomic robot with small four-wheel (see Figure 2).
known as the SVSF. It is used to solve SLAM prob- It is a differential drive robot, offers an installed PC
lems. It provides accurate and stable solution without alternative, opening the path for locally available vision
any assumptions about noise characteristics. The SVSF handling, Ethernet-based interchanges, laser (see Figure
Fethi et al. 3

Figure 1. State estimation EKF/SVSF-SLAM and optimal control for mobile robot.

Figure 2. Mobile robot (P3-AT) Robotic Laboratory—EMP.

3), DGPS (differential global positioning system), and


different independent capacities. P3-AT’s powerful
motors and can reach speeds of 0.8 m/s and carry a pay-
load of up to 12 kg. Let the vector ½Xr ; Yr ; ur T with
(Xr ; Yr ) the coordinates of the robot in the global coor-
dinate and ur its orientation. The non-holonomic con-
straint is written as follows15

Xr X_ r sin(ur )  Yr Y_ r cos(ur ) = 0 ð1Þ

From Figure 4 and Sfeir,15 the state transition equa-


tion of the robot is given by
8
< X_ r = vx cos(ur )  vy sin(ur )
Y_ = vy sin(ur ) + vy cos(ur ) ð2Þ Figure 3. SICK 2D laser range finder (LMS-200).
: r
u_ r = w

where (vx , vy ) are translation velocities of the robot fol- measurement observation model are used to describe
lowing XL axes and YL axes, respectively, and w is the the motion and the status of the robot.
rotation velocity. Mobile robot’s model and
4 Advances in Mechanical Engineering

Direct observation point–based model


mi presents the landmark which is detected in the envi-
ronment of the map. If a landmark mi is detected for
the first time, it will be initialized and added to the state
vector. If it is already observed, then the UGV uses it
to update the robot pose state.20,21 In the case of point-
based landmark representation, each point of the scan
is considered as landmark and is represented by two
parameters ½ri , bi .
The representation of point coordinates in the global
frame according to its coordinates in the local frame is
given by20

Xmig = Xrl cos(ur )  Yrl sin(ur ) + Xr
ð6Þ
Ymig = Xrl sin(ur ) + Yrl cos(ur ) + Yr
Figure 4. Kinematic model of the UGV.
The overall transformation to local inverse model is
given as follows
When vy = 0, the kinematic model of the robot will
(
be Xrl = (Xmig  Xr )cos(ur ) + (Ymig  Yr )sin(ur )
0 1 0 1 0 1 ð7Þ
X_ r v cos(ur ) exr Yrl =  (Xmig  Xr )sin(ur ) + (Ymig  Yr )cos(ur )
@ Y_ r A = @ v sin(ur ) A + @ eyr A ð3Þ
u_ r w eur where (Xmig ; Ymig ) represents the coordinates of land-
mark in the global frame; (Xrl ; Yrl ) represents the coor-
The odometry depends on the assumption which is dinates of landmark in the local frame; (Xr , Yr )
only true if there is no slipping in the robot’s wheels. represents the position of the robot in the global frame;
The angular velocity delivered by the gyroscope can be and ur represents the orientation of the robot.
integrated to provide the orientation (ur (k + 1) The subscript i is the ith sample in landmark sam-
= ur (k) + wDT ). In this case, w is obtained from the ple sets. The observation is given by Zik = ½rik , bik T . It
gyroscope which has a large drift error. It can be mod- contains the range and bearing of a landmark in the
eled by an exponential curve and determined experi- local frame. The direct observation model is expressed
mentally as done by Barshan and Durrant-Whyte.19 as
When v = vx , and by discretizing equation (3), the 2 qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 3
model will be written as follows  
(Xmig  Xr )2 + (Ymig  Yr )2
Zi = 4 Y Y  5 + er i ð8Þ
0 1 0 1 0 1 m
tan1 Xmig X  ur
r eb i
Xr (k + 1) Xr (k) + DTvk cos(ur (k)) exr ig r
@ Yr (k + 1) A = @ Yr (k) + DTvk sin(ur (k)) A + @ eyr A
ur (k + 1) ur (k) + DTw(k) eu r where eri is the noise of measured range and ebi is the
ð4Þ noise of bearing in the UGV local coordinate frame.

DT is time step and exr yr ur is the noise that arises from


the encoder and wheels slipping. The robot evolution Inverse observation point–based model
model reflects the relationship between the robot previ- The landmark mapping model is an inverse observation
ous states XR (k) and its current state XR (k + 1): Let model. Knowing the robot state and the landmark
Uk = ½v, wT be control vector, which is assigned with coordinate, the inverse observation model Xmnew can be
the robot (translation and rotation velocity). During given by20,22
navigation, the robot moves on a 2D plane. In SLAM,
the system state vector has a position of the UGV (XR ). Xmnew , k = h1 ð9Þ
i (Xk , Zik )
It is represented by XR = ½Xr , Yr , ur T 2 R3 and the map  
is presented by mi = ½x1 , y1 ; :::; xM , yM T 2 R2M with M Xr + ri cos(ur )cos(bi )  ri sin(ur )sin(bi )
Xmnew (k) =
is the total number of landmarks. We can write equa- Yr + ri sin(ur )cos(bi ) + ri cos(ur )sin(bi )
tion (4) as follows ð10Þ
XR (k + 1) = f (XR (k), U (k)) + exr yr ur ð5Þ where h represents a continuous observation model.
Fethi et al. 5

Direct observation line–based model Rk , respectively. The EKF Steps are presented as
The direct observation model is given by 20,23 follows:

  " pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi    #  Initial estimates for


ril rig  Xr2 + Yr2 cos big  tan1 XYrr
Zi, line = =
bil big  ur
Project the state X^k + 1 ahead
ð11Þ
X^k + 1 = f (X^k , Uk + 1 ) + rFX (Xk  X^k=k ) + exr , yr , ur ð15Þ
½ril , bil T is the polar parameters in the local coordinate
frame of the ith line feature and ½rig , big T the polar
parameters in the global coordinate frame of the ith  Prediction
line feature.
Project the error covariance ahead. The prediction cov-
ariance matrix Pk + 1=k is written as follows
Inverse observation line–based model
The mapping model is an inverse observation model Pk + 1=k = rFX Pk=k rFX T + rFU Qk rFU T ð16Þ
mnew, line which can be written as follows
where rFX and rFU be the Jacobian matrices of f (:)
  " pffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi    # with respect to Xk + 1 evaluated at an elsewhere speci-
rig ril + Xr2 + Yr2 cos bil  tan1 XYrr
mnew, line =
big
= fied point denoted by
bil + ur
2 3 2 3
ð12Þ J1 0 ... 0 J2
60 1 ... 07 607
There are many types of features association ‘‘line to rFX = 6
4 ... .. .. .. 7 , rFU = 6 7
4 ... 5
. . .5
line,’’24,25 ‘‘point to line,’’26 and ‘‘point to point.’’24,27 In
0 0 ... 1 0
this article, we will do a comparative’s survey between
2 3
two types of association ‘‘point to point’’ and ‘‘line to where   1 0 v sin(ur )DT
∂f (:) ∂f (:) ∂f (:)
line.’’ Since the processing time of the EKF/SVSF- J1 = ; ; = 4 0 1 v cos(ur )DT 5
SLAM approach ‘‘point to point’’ is very important ∂xr ∂yr ∂Yr
2 0 0 13
and allocates a large memory space, thus, in the associ-   cos(ur )DT 0
∂f (:) ∂f (:)
ation step, we propose to use a method based on ‘‘line J2 = ; = 4 sin(ur )DT 0 5
∂v ∂w
to line’’ that is quicker than the standard ‘‘point-to- 0 DT
point’’ approach. In our work, we used the method  2   2 
‘‘Split and Merge’’ which is largely used for line s 0 sri 0
Qk = v , Rk =
extraction.24,25 0 s2w 0 b2i

 Observation and update


EKF-SLAM algorithm
The discretization form of the system and nonlinear Linearization of the observation model Z^k + 1 around
model measurement used for state estimation can be ^
Xk + 1=k
written as follows
Z^k + 1 = h(X^k + 1=k ) + Hk + 1 (X^k + 1=k  Xk + 1 ) + eri , bi
Xk + 1 = f (Xk , Uk ) + exr , yr , ur ð13Þ
ð17Þ
Zk + 1 = h(Xk ) + eri , bi ð14Þ
The update cycle of the Kalman filter is applied to
The EKF provides an approximation of the optimal X^k + 1=k + 1 and Pk + 1=k + 1
estimate. Xk + 1 is the state of the vector and Uk is the Compute the Kalman gain Kk + 1
input control vector. The objective of the EKF-SLAM
problem is to recursively estimate the state Xk of the Kk + 1 = Pk + 1=k HkT+ 1 ½Hk + 1 Pk + 1=k HkT+ 1 + Rk 1 ð18Þ
landmark as stated by the measurement Zk + 1 . The
Update estimate with measurement Zk + 1
noise that arises from the encoder, wheels slipping is
represented by exr , yr , ur and eri , bi are the noise of mea-
X^k + 1=k + 1 = X^k + 1=k + Kk + 1 ½Zk + 1  Hk + 1 X^k + 1=k 
sured range and the noise of bearing in the local frame
which are having recognized by the covariances Qk and ð19Þ
6 Advances in Mechanical Engineering

Update error covariance Pk + 1=k + 1

Pk + 1=k + 1 = ½I  Kk + 1 Hk + 1 Pk + 1=k ð20Þ

Even as the environment is investigated, new fea-


tures are detected and should be put on the accumula-
tion map. In this case, the state vector and the output
error estimate matrix are calculated from the new
observation.

 Map management

Add anew to the state vector X^k + 1=k + 1


Initialization of the covariance matrix Pnew 2 R22 of
anew

Pnew = rh1 1 T 1 1 T
R PR (rhR ) + rhZ Rk (rhZ ) Figure 5. SVSF estimation concept.
where rh1
R and rh1
Z are the Jacobian matrices,
denoted by
A corrective term, referred to as the SVSF gain, is
  computed as a function of the error in the predicted
1 0 ri sin(ur + bi )
rh1
R = output, as well as a gain matrix and the smoothing
0 1 ri cos(ur + bi )
boundary layer width.30,32,33 The corrected term calcu-
and lated in equation (21) is then used in equation (24) to
  find a posteriori state estimate. The priori and poster-
cos(ur + bi ) ri sin(ur + bi ) iori output error estimates are considered as critical
rh1
Z = sin(ur + bi ) ri cos(ur + bi ) variables which are defined by equations (25) and (26),
respectively32,33 The estimation progression makes a
Initialization of the inter-covariance matrix summary of equations (21)–(28) and is repeated itera-
Pnew, X 2 R23M of anew tively. Uk is the input control vector. The gain is com-
puted32 as follows
Pnew, X = rh1
R PR, X
^ +
KkSVSF
+ 1 = (Hk + 1 ) diag½(jezk + 1=k jAbs + gjezk=k jAbs )8
Increment the state vector X^Incremt ð21Þ
 1 ezk + 1=k )½diag(ezk + 1=k )1
Sat(u
X^Incremt = ½X^k + 1 ; anew 
where 8 represents ‘‘Schur’’ element-by-element multi-
Increment the covariance matrix PIncremt plication; + refers to the pseudo inverse of a matrix;
  Hk + 1, j = hk + 1, j (FX , i ) is the measurement matrix that is
P PX , new derivative of h with respect to the state vector Xk + 1 ; we
PIncremt =
Pnew, X Pnew note that h depends only on the robot pose Rk + 1 and
the location of the ith landmark, where i is the detected
M = M + 1 is the total number of current land-
landmark index at time k and j is the index of an indi-
marks. The EKF diverge if the linearization consecu-
vidual landmark observation in the hk + 1, j . FX , i is calcu-
tive is not good linearized.26,28,29
lated as follows
2 3
SVSF-SLAM algorithm 1 0 0 0 ... 0 0 0 0 ... 0
60 1 0 0 ... 0 0 0 0 ... 07
6 7
The variable structure filter (VSF) was created in 2003, 60 0 1 0 ... 0 0 0 0 ... 07
FX , i = 6
60
7
as a new estimator using a sliding mode concept where 6 0 0 0 ... 0 1 0 0 ... 077
switching gain is used to ensure that the estimates con- 40 0 0 0   0 0 1 0   05
|{z} |{z}
verge to true state values.30 As shown in Figure 5, the 2i2 2M2i
SVSF utilizes a switching gain to converge the estimates ð22Þ
to within a boundary of the true state values (i.e. exis-
tence subspace).31,32 This equation (Hk + 1 )+ can be written as follows
Fethi et al. 7

(Hk + 1 )+ = (FX , i )T (hk + 1, j )+ , with the knowledge


that
hk + 1, j = ½ri ; bi  = h(Xk + 1, mi ) is the observation
model of the SVSF-SLAM algorithm.

  1 is a diagonal matrix constructed from the


u
smoothing boundary
0 1 layer vector1 u, such that
u 0 0
B 1 . C
1 1
 = ½diag(u) = @ 0
u B .. 0 C A
0 0 u1M
i
with Mi represents the number of measurements.

  1 ezk + 1=k ) represents the saturation function


Sat(u

8 ezi, k + 1=k Figure 6. Steps of the EKF/SVSF-SLAM principle.


> 1
< e+ 1,
> ui
ezi, k + 1=k
zi, k + 1=k
 1 ezk + 1=k ) =
Sat(u ui , 1\ ui \1 ð23Þ
>
> ezi, k + 1=k
: 1,  1 Optimal control
ui
In this section, we provide a path planning algorithm
The update of the state estimates can be calculated
based on optimal control theory. In the beginning, we
as follows
use the Shooting methods based on the Pontryagin’s
principle.16,34 In this principle, we determine an optimal-
X^k + 1=k + 1 = X^k + 1=k + KkSVSF
+ 1^ezk + 1=k ð24Þ
ity equation, that is, a differential algebraic equation sys-
The priori and posteriori output error estimates are tem is provided with an initial condition and a final
defined as follows condition and the adjoint equations. In other words, we
should note that in the adjoint equation, derived from
ezk + 1=k = Zk + 1  Z^k + 1=k ð25Þ the Pontryagin’s principle, no information is given con-
cerning the initial or the final conditions. Consequently,
ezk + 1=k + 1 = Zk + 1  Z^k + 1=k + 1 ð26Þ this equation is hard to be used numerically. Thus, in
order to determine the initial condition of the adjoint
The SVSF filter provides a robust and stable esti- state, we use the Shooting indirect method for the
mate to modeling uncertainties and errors.31,33 numerical procedure.34 After this, we present the results
The calculation of the SVSF gain is needed to use of numerical experiments implemented using MATLAB
two main parameters. The first parameter is (g) which facilities. For classical method problems, the solution
control the speed of convergence, where the second (u) can be obtained analytically or numerically. On the
refers to the boundary layer width which is used to other hand, we use the Bellman principle which is the
smooth out the switching action.30,32 These parameters direct method and gives an appropriate condition to the
must be suitably selected. g is a diagonal matrix whose optimality solution.35–37
elements were set to the following21,23

0\g i  1 ð27Þ Numerical solution with the Shooting method


As maintained by Sfeir,15 the estimation process is The optimal control problem of the robot is stated as
stable and converges to the existence subspace if the fol- follows: Find the control u = (v, w) that minimizes the
lowing circumstances are contented31 final time (tf )

jek=k jAbs .jek + 1=k + 1 jAbs ð28Þ J = tf ! min ð29Þ

Two association approaches are proposed: ‘‘point to subject to the differential constraints
point’’ and ‘‘line to line.’’ The steps of SVSF-SLAM 8
algorithm is illustrated in the algorithm 1.20,22 In this < x_ r = v cos ur
>
work, we also treat the problem of optimal control, y_ r = v sin ur ð30Þ
>
:_
focusing on two main methods which have proven to be ur = w
effective on mobile robots: the Shooting and Bellman
methods. The prescribed boundary conditions
8 Advances in Mechanical Engineering

Algorithm 1: SVSF-SLAM Algorithm The Euler–Lagrange equations are given by

x At each step time t


8
> ∂H
} Initial Estimate >
> x_ r =
>
> ∂p1
^ 0 and ez0
X >
>
>
>
} Prediction Time Update >
> ∂H
} Project state Ahead >
> y_ r =
>
> ∂p
^ k + 1=k = f (X ^ k=k , Uk ) % state prediction using process >
> 2
X >
>
model >
> ∂H
>
> u_ r =
} Observation and Update >
> ∂p3
>
>
} For all features observation Zk + 1, j : >
>
} if the correspondence is founded before seen the
>
> ∂H
>
< p_ 1 = 
feature ∂xr
} Calculate a posteriori measurements error >
^k + 1=k, i >
> ∂H
^ezk + 1, i = Zk + 1, j  Z >
> p_ 2 = 
>
> ∂yr
(Hk + 1, j ) = (FX, i ) (hk + 1, j )+
+ T
>
>
>
>
} Compute the SVSF Gain KkSVSF + 1:
>
> ∂H
>
> p_ 3 = 
SVSF ^ +
Kk + 1 = (Hk + 1, j ) diag½(j^ezk + 1, i jAbs + >
> ∂u
>
> r
gjezk, i jAbs )8Sat(u  1^ezk + 1, i )½diag(ezk + 1, i )1 >
>
>
> ∂H
^ k + 1=k + 1 : >
> 0= 
} Update of the State estimate vector X >
> ∂v
>
>
^ k + 1=k + 1 = X
X ^ k + 1=k + KSVSF ^ezk + 1, i >
> ∂H
k+1 >
:0= 
} calculate a priori measurements error vector ∂w
ezk + 1, i = zk + 1, j  h(R ^k + 1 , mi )
8
}End if > x_ r = v cos ur
>
>
}End For >
>
>
} Map Management > y_ r = v sin ur
>
>
}For all non-associated features. >
>
< u_ r = w
} Initial a new feature anew :
anew = h1 (X ^ k + 1=k + 1 , Zk + 1=k ) >
^ k + 1=k + 1. > p_ 1 = 0
>
} Add anew to the state vector X >
>
} Use equation (28) to initialize a posteriori
>
>
>
> p_ 2 = 0
measurements error >
>
:
eZk + 1, new of the new landmark. p_ 3 =  ½p1 v sin ur + p2 v cos ur 
eZk + 1, new = Zk + 1  h(X ^ k + 1=k + 1 , anew )
} Add eZk + 1, new to a posteriori measurement error From Hamiltonian H, a control u = (v, w) verifies
vector eZk + 1, i :
} Increment the state vector X ^ Incremt
^ Incremt = ½X
X ^ k + 1 ; anew  H(t, x(t), p(t), u(t)) = min H(t, x(t), p(t),
u2U
M = M + 1 % total number of current landmarks.
} End For u(t)) = min H(t, x(t), p(t), u(t))
f1  v  1, 1  w  1g
x End
The following equation is given to find a control U

∂H ∂H
= p1 cos ur + p2 sin ur , = p3
t0 = 0, xr0 = 0, yr0 = 0, ur0 = 0 ∂v ∂w
ð31Þ
xrf = 0, yrf = 0, urf = 0 then
U = f(v, w)=  1  v  1,  1  w  1g ð32Þ
p1 (t)cos ur + p2 (t)sin ur = min
f1  v  1g
Equation (29) is equivalent to
(p1 (t)cos ur + p2 (t)sin ur ), p3 (t) = min p3 (t)
f1  w  1g
ðtf
dt ! min ð33Þ Consequently, we deduce
0
v(t) = sign(p1 cos ur + p2 sin ur ), w(t) = sign(p3 (t))
The Hamiltonian is given by
In the numerical solution, we used the Shooting indi-
H(t, x(t), p(t), u(t)) = p1 (v cos ur ) + p2 (v sin ur ) + p3 w  1 rect method to determine a final time. Then we have to
solve the following system
Fethi et al. 9

8
>
> y_ 1 = v cosy3 where i = 1, N, N is a number of steps. The values func-
>
>
>
> y_ 2 = v siny 3 tion is defined by
>
>
>
>
>
> y_ 3 = w
>
> tf = inf ftjx(:) = (xr (:), yr (:), thetar (:))g ð35Þ
>
> y_ 4 = 0
>
>
>
< y_ = 0 where x(:) is solution of equation (34). To determine a
5
control (v, w), we use the Pontryagin’s principle.
>
> y_ 6 = y4 v siny3  y 5 v cosy3
>
> 8
>
> > p1 ( j + 1) = p1 ( j) + tf =N 3 0
> = sign(p1 cos ur + p2 sin u)
> v >
<
>
> p2 ( j + 1) = p2 ( j) + tf =N 3 0
>
> w = sign(p3 (t))
>
>
>
> >
> p ( j + 1) = p3 ( j) + tf =N 3 (p1 ( j + 1)v(i)sin(u(i))
>
> y 1 (0) 2 R, y 2 (0) 2 R, y 3 (0) 2 R : 3
>
: + p2 ( j + 1)v(i)cos(u(i)))
y 4 (0) 2 R, y 5 (0) 2 R, y 6 (0) 2 R
ð36Þ
Let y(t, xr0 , yr0 , ur0 , p1 , p2 , p3 ) be the solution of the where i = 1, N , j = 1, N  i + 1, and tf is the final time
previous system at time t with the initial condition established by each method (SVSF-SLAM, EKF-
(y1 (0), y 2 (0), y 3 (0), y 4 (0), y5 (0), y6 (0)). We construct a SLAM, and the odometer). The initial condition of
Shooting function which is a nonlinear algebraic equa- adjoint system is the values founded by the Shooting
tion of the variable c at time t = 0. The equation of method. Then, the control (v, w) is defined as follows
Shooting method is computed by integrating the differ-
(
ential equation (using a numerical solution for example v(i) = sign(p1 (i)cos(ur (i)) + p2 (i)sin(u(i)))
Euler method, Runge–Kutta method). The Shooting ð37Þ
function is defined by w(i) = sign(p3 (i))

0 1 where i = 1, N.
y 1 (tf , xr0 , yr0 , ur0 , p1 , p2 , p3 )  xrf
u(p) = @ y 2 (tf , xr0 , yr0 , ur0 , p1 , p2 , p3 )  yrf A
y3 (tf , xr0 , yr0 , ur0 , p2 , p3 , p4 )  urf Results and discussion
Solving the problem, we can write: Find p(0) such SLAM results
that u(p(0)) gives the desired value of Simulation results. The simulation results of the proposed
x(tf ) = (xrf , yrf , urf ). The algorithm for numerical solu- SVSF-SLAM algorithm for UGV localization problem
tion of this problem will then be completely defined if are presented. The results of our proposed algorithm
one gives oneself: are compared with EKF-SLAM algorithm. The sam-
pling rates used for each filter and sensors used in this
1. The integration algorithm of a differential sys- study are as follows20
tem with initial condition (i.e. the Euler or
Runge–Kutta procedure) to compute the fodometer = flaser = fEKFSLAM = fSVSFSLAM = 10 Hz
Shooting function u (implemented in ‘‘ode45’’
Figure results which are presented show the esti-
of MATLAB which is a method of Runge–
mated position of the UGV using EKF and SVSF, with
Kutta 4/5 with variable pitch).
sx = sy = 104 m, su = 104 rad, the convergence rate
2. The solution algorithm u(y) = 0 which in our
matrix g = diag(0:8, 0:8), and the width of the smooth-
case uses the quasi-Newton method (implemen-
ing boundary layer vector used is u = ½10; 12.
ted in ‘‘fsolve’’ of MATLAB).
 Test 1: zero-mean Gaussian noise
Numerical solution with the Bellman method
In the first experiment, we use a white centered
In this section, we use the Bellman principle to solve Gaussian noise for process and observation model
the same system with free final time which is the direct where sv = 0:1 m=s, sw = 0:25 rad=s, sr = 0:1 m,
method. We consider the control of a discrete time sb = 0:25 rad
dynamical system    
8 (0:1)2 0 (0:1)2 0
Qk = 2 , Rk =
< xr (i + 1) = xr (i) + tf =Nv(i)cos(ur (i))
> 0 (0:25) 0 (0:25)2
yr (i + 1) = yr (i) + tf =Nv(i)sin(ur (i)) ð34Þ
>
:
ur (i + 1) = ur (i) + tf =Nw(i)  Test 2: colored noise
10 Advances in Mechanical Engineering

Figure 7. Pose estimation with zero-mean Gaussian noise.

Figure 8. Error position of the robot with zero-mean Gaussian noise.

In this experiment, we use a white noise with bias for Figure 7 shows proposed algorithms and provide
process and observation model where sv = accurate positions when process and measurement
0:1 m=s, sw = 0:08 rad=s, sr = 0:045 m, sb = 0:045 rad noise are zero-mean and Gaussian. The position errors
    are shown in Figure 8. We note that the EKF-SLAM
(0:1)2 (0:045)2 (0:045)2 (0:03)2 algorithm gives higher quality in estimation error terms
Qk = 2 , Rk
(0:045)2 (0:08) (0:03)2 (0:045)2 compared with SVSF-SLAM algorithm. At 1550 itera-
tion, we note significant increase of the SVSF-SLAM
Fethi et al. 11

Figure 9. Position RMSE under zero-mean Gaussian noise.

algorithm consistency in comparison to EKF-SLAM SLAM algorithms, in appearance of colored noise, we


algorithm caused by closing-loop detection. The robot note that the RMSE showed the best outcomes with
closes the loop making the error in the environment to colored noise as can be seen from Figure 12. SVSF-
decrease at 1550 iteration when it frequently moves SLAM algorithm is more accurate than EKF-SLAM
into pre-visited regions. algorithm in terms of position.
In the first test, by looking at the root mean square The structure of SVSF-SLAM algorithm reveals
error (RMSE) of EKF/SVSF-SLAM algorithms, within that it reduces the computational complexity of the
the sight of zero-mean Gaussian noise, we can show algorithm. One inconvenient of the EKF-SLAM algo-
that the EKF notices better results with zero-mean rithm is the use of the full dimension of the state vector
Gaussian noise. This can be found in Figure 9. EKF- to update the pose and the map estimation. In this
SLAM algorithm gives the best position results and is way, the computation time will increment with the size
more accurate than SVSF-SLAM algorithm. This can of the state vector. On the other hand, the SVSF-
be translated as follows: In this case, the EKF gives a SLAM algorithm uses just the posture of UGV and the
good accuracy when the process and observation noise current feature to update the map and the pose estima-
are uncorrelated zero-mean Gaussian with known cov- tion which makes the computational time independent
ariance. On other hand, when the control noise is of the size of the state vector. The SVSF-SLAM algo-
colored, the EKF-SLAM algorithm is unsuccessful rithm remains nearly constant per iteration depending
with high error in comparison to the SVSF-SLAM on the number of visible landmarks (Figure 13).
algorithm. For this situation, the map created by the
proposed SVSF-SLAM algorithm with colored noise is
not debased in quality as can be seen in Figure 10. Experimental results. Figure 14 shows the visited places
The position errors are appeared in Figure 11, we (three (03) rooms (see (a), (b), and (c)) + corridor (see
note that the SVSF-SLAM algorithm performs alto- (d)) of the building (indoor environment). We made a
gether superior to the EKF-SLAM algorithm in terms trip over a distance of 100 m with a speed of 0:5 m=s.
of estimation error. The SVSF is in a position to get the When the robot moves in the map, it uses a laser to
best of information in a short time and come up with a detect landmarks such as points and lines. In this
relatively estimate. experiment, the maximum range of the SICK laser is
Figure 12 puts in view the evaluation results of an 15 m. Each scan provides 361 points which are repre-
investigation in comparison to the convergence RMSE sented in polar coordinates. They are spread over a
of both algorithms. As for the results of the second range from 08 to 1808. The experimental used data
experiment in comparison to the RMSE of EKF/SVSF- are collected from experimented locations. This
12 Advances in Mechanical Engineering

Figure 10. Pose estimation with colored noise.

Figure 11. Error position of the robot with colored noise.

environment is used for the algorithm application shows that our results are consistent and realistic in
SLAM UGV with metric maps. comparison to the EKF-SLAM algorithm. We see
Trajectory estimated by the SVSF-SLAM algorithm, clearly as shown in Figure 15(a) that the pose errors of
as shown in Figure 15, is more accurate in comparison the EKF-SLAM algorithm increase significantly and
to the EKF-SLAM algorithm. The SVSF-SLAM algo- the robot is so far and does not arrive to the initial
rithm provides the best position in comparison to the position because of the previous errors made through
EKF-SLAM algorithm. The SVSF-SLAM algorithm its trajectory. Moreover, from Figure 15(b), at the final
Fethi et al. 13

Figure 12. Position RMSE under colored noise.

Figure 13. Computational time comparison.

time, we can remark that the robot detects a common The structure of the SLAM algorithm–based line has
feature which improves the consistency of the SVSF- been shown to decrease the computational time in com-
SLAM as well as the EKF-SLAM algorithm. parison to the SLAM algorithm–based point which is
From the starting position to the final position (loop proportional to the state vector length. EKF-SLAM
closure at (0, 0)), the SVSF-SLAM algorithm converges algorithm allocates a large memory space and requires
into a very accurate solution in comparison to the heavy significant computational time (see Figure 16).
EKF-SLAM algorithm either with feature association– In this environment, we note that the path given
based point or with feature association–based line. by the odometer is completely drift and this is due to
14 Advances in Mechanical Engineering

Figure 14. Shots of visited places.

Figure 15. Result of SVSF/EKF-SLAM algorithms based on point and line approaches in real time.

the great range done by the robot. Besides, the how a better localization of the robot makes the possi-
SVSF-SLAM algorithm is better than EKF-SLAM bility of a coherent environment map building (see
algorithm. According to these results, we can confirm Figure 15).
Fethi et al. 15

Figure 16. Computational time of EKF/SVSF-SLAM algorithms based on point and line approaches in real time.

Table 1. True and estimated positions for all different trajectories (EKF/SVSF-SLAM and odometer).

True position Estimated position (xr (m), yr (m), ur (rad))


(xr , yr , ur ) SVSF-SLAM EKF-SLAM Odometer

(0,0,0) (0,0,0) (0,0,0) (0,0,0)


V = 0 (m/s), w = 0 (rad/s), t = 0 (s)
(4.90;0.70;0.29) (4.87;0.85;0.30) (4.84;0.75;0.32) (4.92;0.67;0.27)
V = 0.35 (m/s), w = 0.02 (rad/s), t = 14.2 (s)
(7.20;1.61;0.70) (7.16;1.81;0.70) (7.04;1.98;0.84) (7.30;1.50;0.59)
V = 0.2 (m/s), w = 0.13 (rad/s), t = 22.3 (s)
(7.77;2.80;1.58) (7.77;3.03;1.571) (7.43;3.22;1.77) (8.02;2.61;1.42)
V = 0.2 (m/s), w = 0.13 (rad/s), t = 29.1 (s)
(6.13;4.54;2.43) (6.19;4.77;2.37) (5.43;4.57;2.64) (6.72;4.69;2.21)
V = 0.2 (m/s), w = 20.15 (rad/s), t = 41.9 (s)
(5.80;6.16;1.10) (5.93;6.33;1.05) (4.73;6.01;1.38) (6.80;6.32;0.81)
V = 0.2 (m/s), w = 20.15 (rad/s), t = 50.8 (s)
(8.52;8.27;1.42) (8.67;8.41;1.39) (7.15;8.62;1.59) (10.06;7.47;1.03)
V = 0.3 (m/s), w = 0.01 (rad/s), t = 65.1 (s)
(8.53;10.33;2.52) (8.75;10.39;2.48) (6.64;10.73;2.69) (10.97;9.34;2.00)
V = 0.1 (m/s), w = 0.2 (rad/s), t = 75.7 (s)
(23.35;8.82;3.75) (23.17;9.28;3.71) (24.73;6.52;3.99) (20.50;13.42;3.24)
V = 0.1 (m/s), w = 0.2 (rad/s), t = 110.4 (s)
(23.55;2.36;4.72) (23.92;2.73;4.62) (24.28;0.37;4.76) (23.07;7.58;4.42)
V = 0.3 (m/s), w = 0.2 (rad/s), t = 135.4 (s)
(23.36;0.47;5.36) (23.85;0.74;5.28) (23.86; 21.53;5.41) (23.44;5.71;5.05)
V = 0.2 (m/s), w = 0.2 (rad/s), t = 142.9 (s)
(0.08;0.09;6.30) (20.38;0.26;6.25) (0.09;0.02;6.42) (20.19;4.28;6.02)
V = 0.2 (m/s), w = 0.2 (rad/s), t = 155.1 (s)

Optimal control results the two methods we used to solve the SLAM localiza-
tion. Numerical solution provides the following results
The path planning with optimal control. We have implemen-
with the Shooting and Bellman methods. To improve
ted the methods (Shooting and Bellman) using EKF/
the position accuracy of the numerical solution of opti-
SVSF-SLAM localization. Table 1 depicts the results of
mal control problems, we use the Bellman method
16 Advances in Mechanical Engineering

Table 2. The Shooting method (SVSF-SLAM). Table 5. The Bellman method (EKF-SLAM).

xr (m) yr (m) ur (rad) xr (m) yr (m) ur (rad)

0 0 0 0 0 0
0.0104 0.0445 20.0089 20.0241 0.1255 14.0000
4.9620 1.8240 20.0412 4.8487 0.7518 0.3204
7.0336 2.1621 0.7743 7.0405 1.9790 0.8427
8.6238 9.9804 20.5499 7.4374 3.2203 1.7680
6.5188 7.9142 2.2464 5.4386 4.5743 2.6401
5.4368 12.5223 0.2323 4.7271 6.0134 1.3792
7.7459 14.9626 0.0502 7.1512 8.6169 1.5855
8.3090 21.4742 3.1229 6.6441 10.7262 2.6917
22.3921 16.0587 2.8101 24.7272 6.5180 3.9861
23.4041 2.4282 4.5972 24.2812 0.3738 4.7561
22.2606 1.8989 5.3109 23.8639 21.5264 5.4088
20.3574 0.7865 6.1960 0.0871 0.0242 6.4186

Table 6. The Shooting method (odometer).


Table 3. The Bellman method (SVSF-SLAM).
xr (m) yr (m) ur (rad)
xr (m) yr (m) ur (rad) 0 0 0
0.0114 0.0412 20.0094
0 0 0
5.0751 1.4653 0.0511
0.2347 20.0126 14.0000
7.8570 0.6748 0.5899
4.8701 0.8434 0.3049
9.9409 10.5034 0.4596
7.1620 1.8106 0.7046
7.1834 7.8435 2.5400
7.7710 3.0310 1.5713
7.4595 11.9491 20.0820
6.1909 4.7703 2.3716
9.3109 12.3822 20.2362
5.9325 6.3291 1.0534
10.5109 24.7952 3.1537
8.6694 8.4055 1.3912
1.8898 28.5927 215.8027
8.7541 10.3931 2.4790
22.3851 7.3407 4.6600
23.1722 9.2848 3.7126
22.3799 6.0224 5.2756
23.9216 2.7342 4.6181
0.0734 5.2376 5.9845
23.8461 0.7447 5.2782
20.3823 0.2597 6.2493
Table 7. The Bellman method (odometer).

xr (m) yr (m) ur (rad)


Table 4. The Shooting method (EKF-SLAM).
0 0 0
xr (m) yr (m) ur (rad) 0.5441 0.1360 14.0000
4.9155 0.6565 0.2612
0 0 0 7.3070 1.4974 0.5892
0.0107 0.0358 20.0094 8.0209 2.6101 1.4267
5.0729 1.8867 0.0305 6.7214 4.6862 2.2099
7.3223 1.6664 0.7740 6.8020 6.3225 0.8069
9.4357 9.5588 2.8671 10.0647 7.4671 1.0277
5.4607 6.0168 2.8377 10.9708 9.3438 2.0048
3.9588 15.2038 15.6792 20.5026 13.4171 3.2365
7.3412 14.7279 2.2658 23.0654 7.5815 4.4208
6.7042 21.6882 3.2895 23.4404 5.7083 5.0539
23.4118 17.6088 2.3423 20.1935 4.2843 6.0231
23.3100 20.0507 4.7511
0.5717 1.2401 5.2740
0.1316 0.8493 6.0910 Table 8. Final time with the Shooting and Bellman methods for
three methods (EKF-SLAM, SVSF-SLAM, and odometer).

compared to the Shooting method which has low accu- Method Final time (s)
racy and decreases the convergence of the robot posi- Shooting method Bellman method
tion. We compare the true positions (Table 1) with the
results given by the Shooting and Bellman methods SVSF-SLAM 158.6 156.5
(Tables 2 and 3), (Tables 4 and 5), and (Tables 6 and EKF-SLAM 161.7 158
Odometer 163 162.4
7), respectively.
Fethi et al. 17

Figure 17. Control of V and W in an indoor environment–based point (SVSF-SLAM/EKF-SLAM/odometer).

Table 9. Final time with the Shooting and Bellman methods for three methods (EKF-SLAM, SVSF-SLAM, and odometer).

Shooting method (EKF-SLAM) Bellman method (EKF-SLAM) Shooting method (SVSF-SLAM) Bellman method (SVSF-SLAM).

327.5330 s 327.5330 s 111.3860 s 315.8968 s

Through the two methods, best results are obtained proposed approach (see Table 8). We can say that the
by SVSF-SLAM compared to EKF-SLAM and the result sets using the Bellman method are much better
odometer; moreover, short time is required by the than the Shooting method. The Shooting method is not
18 Advances in Mechanical Engineering

Figure 18. Control of V and W with the Shooting method in an indoor environment–based point (SVSF-SLAM).

accurate compared to the Bellman method, because the the results of optimal control with the Shooting and
initial conditions of adjoint state are sensible, that make Bellman methods.
us away from the correct positions. The solution for The final time is the minimum time to come to the
SLAM problem and the accuracy of the result are con- last time point corresponding at 155.1 s (final time) to
trolled by the accuracy of the Bellman method used as the final position (0,0,0). From Table 9, note that the
opposed to the Shooting method with the use of the final time found by the Bellman method is better than
Euler–Lagrange equations. The following figures show the Shooting method. As can be seen from Table 8, the
Fethi et al. 19

Figure 19. Control of V and W with the Bellman method in an indoor environment–based point (SVSF-SLAM).

minimal final time is given with SVSF-SLAM localiza- method is better than Shooting method that the SVSF-
tion. Then, we compared the true positions of our SLAM localization is used. The results conform with
experiments for different positions of localization such our data (see Figures 17–19).
as SVSF, EKF, and odometer. We determined the From Figures 20 and 21, we noted that the results
robot controls for each localization of two methods found using the Bellman principle are much better than
and we made a comparison between them. We notice the Shooting method, and the points (xr , yr ) given by
that the robot control parameters using the Bellman SVSF-SLAM are very close to the true points of the
20 Advances in Mechanical Engineering

Figure 20. Control optimal of UGV with the Shooting method: SVSF-SLAM, EKF-SLAM, and odometer.

Figure 21. Control optimal of UGV with the Bellman method: SVSF-SLAM, EKF-SLAM, and odometer.

polygons. Consequently, SVSF-SLAM gives good control of V and W with the Shooting and Bellman
results with the Bellman method (see Figure 22). For methods of EKF-SLAM, SVSF-SLAM, and odometer.
our experiment where the robot begins on the path, the Table
P 9 shows the energy of the robot orientation
trajectories produced by EKF-SLAM, SVSF-SLAM, E = ( u2i ) with different approaches. Smoothest
and odometer were the same. Then on the contrary, the trajectories present less energy (less maneuverability). As
trajectories of EKF-SLAM and odometer bring the shown in this table, SVSF-SLAM presents less energy in
robot on the wrong path. Figures 23–28 show the both methods which confirm the obtained results.
Fethi et al. 21

Figure 22. Comparison of the Shooting and Bellman methods.

Figure 23. Control of V with the Shooting and Bellman methods (EKF-SLAM).

Conclusion
the kinematics of the vehicle and the environment con-
In this article, SLAMPP algorithm have been proposed straints are considered.
for UGV navigation. As this UGV operates at low Based on SVSF-SLAM algorithm localization and
speed, path planning and optimization strategies are optimal control theory, the proposed algorithm
developed without considering vehicle dynamics. Only (SLAMPP) improves the path in terms of continuity by
22 Advances in Mechanical Engineering

Figure 24. Control of W with the Shooting and Bellman methods (EKF-SLAM).

Figure 25. Control of V with the Shooting and Bellman methods (SVSF-SLAM).
Fethi et al. 23

Figure 26. Control of W with the Shooting and Bellman methods (SVSF-SLAM).

Figure 27. Control of V with the Shooting and Bellman methods (odometer).

providing a smoother and more comfortable trajectory realistic conditions and good performances are
tracking. In addition, the proposed algorithm requires obtained by the SVSF-SLAM compared to the EKF-
less computation time to achieve the improvement. The SLAM algorithm. As perspectives, we propose to
proposed approach is validated using simulation and extend the proposed approach for multiple robots
experimental data. Several experiments are tested under (UGVs, UAVs, and AUVs).
24 Advances in Mechanical Engineering

Figure 28. Control of W with the Shooting and Bellman methods (odometer).

Declaration of conflicting interests international conference on field and service robotics,


The author(s) declared no potential conflicts of interest with Espoo, 10–13 June 2001. Helsinki, Finland: Yleissjhal-
respect to the research, authorship, and/or publication of this jennhos-Painophorssi.
article. 6. Guivant JE and Nebot EM. Optimization of the simulta-
neous localization and map-building algorithm for real
time implementation. IEEE T Robotic Autom 2001; 17:
Funding 242–257.
The author(s) received no financial support for the research, 7. Durrant-Whyte H and Bailey T. Simultaneous localisa-
authorship, and/or publication of this article. tion and mapping: part I. IEEE Robot Autom Mag 2006;
13: 99–110.
8. Jensfelt P, Kragic D, Folkesson J, et al. A framework for
References vision based bearing only 3D SLAM. In: Proceedings of
1. Golombek MP, Cook RA, Economou T, et al. Overview the IEEE international conference on robotics and automa-
of the mars pathfinder mission and assessment of landing tion, Orlando, FL, 15–19 May 2006. New York: IEEE.
site predictions. Science 1997; 278: 1743–1748. 9. Davison AJ. Real-time simultaneous localisation and
2. Thrun S, Ferguson D, Haehnel D, et al. A system for mapping with a single camera. In: Proceedings of the 9th
volumetric robotic mapping of abandoned mines. In: IEEE international conference on computer vision, Nice,
Proceedings of the 2003 IEEE international conference on 13–16 October 2003. Washington, DC: IEEE.
robotics and automation, Taipei, Taiwan, 14–19 Septem- 10. Montemerlo M, Thrun S, Koller D, et al. FastSLAM
ber 2003. New York: IEEE. 2.0: an improved particle filtering algorithm for simulta-
3. Moutarlier P and Chatila R. Stochastic multisensory neous localization and mapping that provably converges.
data fusion for mobile robot location and environment In: Proceedings of the 6th international joint conference on
modeling. In: Proceedings of the 5th international sympo- artificial intelligence, Acapulco, Mexico, 9–15 August
sium of robotics research, Tokyo, Japan, 28–31 August 2003. San Francisco, CA: Morgan Kaufmann Publishers.
1989. MIT Press Cambridge. 11. Montemerlo M, Thrun S, Koller D, et al. FastSLAM: a
4. Leonard JJ, Newman PM, Rikoski RJ, et al. Towards factored solution to the simultaneous localization and
robust data association and feature modelling for concur- mapping problem. In: Proceedings of the AAAI 18th
rent mapping and localization. In: Jarvis RA and Zelinsky national conference on artificial intelligence, Edmonton,
A (eds) Robotics research, vol. 6 (Springer tracts in advanced AB, Canada, 28 July–1 August 2002. Menlo Park, CA:
robotics). Berlin; Heidelberg: Springer, 2003, pp.7–20. American Association for Artificial Intelligence.
5. Williams SB, Dissanayake G and Durrant-Whyte H. 12. Doucet A, Freitas NDE and Gordon N. Sequential
Constrained initialization of the simultaneous localiza- Monte Carlo methods in practice (Statistics for engineer-
tion and mapping algorithm. In: Proceedings of the 3rd ing and information science). New York: Springer, 2001.
Fethi et al. 25

13. Lemaire T, Berger C, Jung IK, et al. Vision-based SLAM: environments. In: Proceedings of the 1st Euromicro work-
stereo and monocular approaches. Int J Comput Vision shop on advanced mobile robot, Kaiserslautern, 9–11 Octo-
2007; 74: 343–364. ber 1996. New York: IEEE.
14. Arras KO and Siegwart RY. Feature extraction and scene 25. Yaqub T, Tordon MJ and Katubitiya J. Line segment
interpretation for map-based navigation and map build- based scan matching for concurrent mapping and locali-
ing. In: Proceedings of the SPIE 3210, mobile robotics zation of a mobile robot. In: Proceedings of the 9th inter-
XII, Pittsburgh, PA, 25 January 1998. Bellingham, WA: national conference on control, automation, robotics and
SPIE. vision, Singapore, 5–8 December 2006. New York: IEEE.
15. Sfeir J. Navigation D’un Robot Mobile En Environnement 26. Diosi A and Kleeman L. Laser scan matching in polar
Inconnu Utilisant Les Champs De Potentiels Artificiels. coordinates with application to SLAM. In: Proceedings
Mémoire de maı̂trise électronique, Génie de la produc- of the IEEE/RSJ international conference on intelligent
tion automatisée, École de Technologie Supérieure, Mon- robots and systems (IROS 2005), Edmonton, AB,
tréal, QC, Canada, 2009. Canada, 2–6 August 2005. New York: IEEE.
16. Hull DG. Optimal control theory for applications 27. Dissanayake G, Newman PM, Durrant-Whyte HF, et al.
(Mechanical engineering series). New York: Springer- An experimental and theoretical investigation into simul-
Verlag, 2003. taneous localisation and map building. In: Corke PI and
17. Habibi S, Burton R and Chinniah Y. Estimation using a Trevelyan J (eds) Experimental robotics VI, vol. 250. 2nd
new variable structure filter. In: Proceedings of the IEEE ed. London: Springer, 2000, pp.265–274.
American control conference, Anchorage, AK, 8–10 May 28. Orderud F. Comparison of Kalman filter estimation
2002. New York: IEEE. approaches for state space models with nonlinear mea-
18. Robinett RD III, Eisler GR and Hurtado JE. Applied surements. In: Proceedings of the Scandinavian conference
dynamic programming for optimization of dynamical sys- on simulation and modeling, vol. 7491, Trondheim, 2005,
tems (Advances in design and control, Book Code: DC09, pp. 7–9.
xviii-255). Philadelphia, PA: Society for Industrial and 29. Grewal MS and Andrews AP. Kalman filtering: theory
Applied Mathematics, 2005. and practice using MATLAB. 2nd ed. New York: John
19. Barshan B and Durrant-Whyte HF. Inertial navigation Wiley & Sons, 1993.
systems for mobile robots. IEEE T Robotic Autom 1995; 30. Habibi SR and Burton R. The variable structure filter. J
11: 328–342. Dyn Syst: T ASME 2003; 125: 287–293.
20. Demim F, Nemra A and Louadj K. Robust SVSF-SLAM 31. Habibi SR. The smooth variable structure filter. P IEEE
for unmanned vehicle in unknown environment. IFAC 2007; 95: 1026–1059.
PapersOnLine 2016; 49: 386–394. 32. Al-Shabi M. The general Toeplitz/observability SVSF.
21. Demim F, Nemra A, Louadj K, et al. A new approach to PhD Thesis, Department of Mechanical Engineering,
improve the success and solving the UGVs Cooperation McMaster University, Hamilton, ON, Canada, 2011.
for SLAM Problem, using a SVSF Filter. In: Proceedings 33. Gadsden SA, Dunne D, Habibi SR, et al. Comparison of
of the Mediterranean conference on pattern recognition and extended and unscented Kalman, particle, and smooth
artificial intelligence, Tebessa, Algeria, 22–23 November variable structure filters on a bearing-only target tracking
2016, pp.56–63. New York: ACM. problem. In: Proceedings of the SPIE 7445, signal and
22. Demim F, Nemra A, Louadj K, et al. Simultaneous loca- data processing of small targets, San Diego, CA, 3 Sep-
lization and mapping algorithm for unmanned ground tember 2009, paper no. 74450B-74451. Bellingham, WA:
vehicle with SVSF filter. In: Proceedings of the IEEE 8th SPIE.
international conference on modelling, identification and 34. Trelat E. Contrôle Optimal: The´orie et Applications. Paris:
control, Algiers, Algeria, 15–17 November 2016. New
Vuibert, Collection Mathématiques Concrètes, 2005.
York: IEEE.
35. Bellman RE and Dreyfus SE. Applied dynamic program-
23. Demim F, Boucheloukh A, Nemra A, et al. A new adap-
ming. Santa Monica, CA: The Rand Corporation, 1962.
tive smooth variable structure filter SLAM algorithm for
36. Mauch H. Dynamic programming. Berlin; Heidelberg:
unmanned vehicle. In: Proceedings of the 6th international
Springer, 2007.
conference on systems and control, Batna, Algeria, 7–9
37. Dreyfus E. Some types of optimal control of stochastic
May 2017. New York: IEEE.
systems. J Soc Ind Appl Math 1964; 2: 120–134.
24. Gutmanand JS and Schlegel C. AMOS: comparison of
scan matching approaches for self-localization in indoor

You might also like