Next Article in Journal
Fault Detection in Induction Motor Using Time Domain and Spectral Imaging-Based Transfer Learning Approach on Vibration Data
Next Article in Special Issue
xRatSLAM: An Extensible RatSLAM Computational Framework
Previous Article in Journal
Design and Optimization for a New XYZ Micropositioner with Embedded Displacement Sensor for Biomaterial Sample Probing Application
Previous Article in Special Issue
Development of an Online Adaptive Parameter Tuning vSLAM Algorithm for UAVs in GPS-Denied Environments
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Kinematic/Dynamic SLAM for Autonomous Vehicles Using the Linear Parameter Varying Approach

Institut de Robòtica i Informàtica Industrial (CSIC-UPC), Llorens i Artigas, 4-6, 08028 Barcelona, Spain
*
Author to whom correspondence should be addressed.
Sensors 2022, 22(21), 8211; https://doi.org/10.3390/s22218211
Submission received: 30 August 2022 / Revised: 19 October 2022 / Accepted: 21 October 2022 / Published: 26 October 2022

Abstract

:
Most existing algorithms in mobile robotics consider a kinematic robot model for the the Simultaneous Localization and Mapping (SLAM) problem. However, in the case of autonomous vehicles, because of the increase in the mass and velocities, a kinematic model is not enough to characterize some physical effects as, e.g., the slip angle. For this reason, when applying SLAM to autonomous vehicles, the model used should be augmented considering both kinematic and dynamic behaviours. The inclusion of dynamic behaviour implies that nonlinearities of the vehicle model are most important. For this reason, classical observation techniques based on the the linearization of the system model around the operation point, such as the well known Extended Kalman Filter (EKF), should be improved. Consequently, new techniques of advanced control must be introduced to more efficiently treat the nonlinearities of the involved models. The Linear Parameter Varying (LPV) technique allows working with nonlinear models, making a pseudolinear representation, and establishing systematic methodologies to design state estimation schemes applying several specifications. In recent years, it has been proved in many applications that this advanced technique is very useful in real applications, and it has been already implemented in a wide variety of application fields. In this article, we present a SLAM-based localization system for an autonomous vehicle considering the dynamic behaviour using LPV techniques. Comparison results are provided to show how our proposal outperforms classical observation techniques based on model linearization.

1. Introduction

The European Parliament Research Service (EPRS) considers autonomous driving as one of the top ten technologies that will change people’s lives during this century [1]. The reason is that benefits provided by the autonomous driving are many and affect many social spheres. The most relevant ones are the significant reduction in the number of traffic accidents, by the elimination of the human error; the social inclusion of people with reduced mobility, by the generation of economic door-to-door services; the reduction in the traffic congestion, through the communication between vehicles and the use of an intelligent agent of the transport; and the reduction in the energetic consumption and the pollution, by the use of electric actuators and sophisticated control techniques.
To develop an autonomous vehicle, it is necessary that the vehicle software architecture includes a localization system that provides the vehicle location to the controller and the surrounding map to the trajectory planner. Then, the planner generates references and provides them to the controller to execute the vehicle control, and, finally, the localization system has to make new estimations for the carried actions. Therefore, this three modules are intimately joined, and none of them can be designed without taking the characteristics of the others into account. The authors have already largely explored the motion control [2] and the trajectory planner [3] for vehicles with evident dynamic response. Now, we are interested in extending this knowledge to build a localization node based on the solution of a Simultaneous Localization and Mapping (SLAM) problem. This problem, in the context of autonomous vehicles, has recently been reviewed in [4,5] with special emphasis on visual SLAM methods.
An important aspect to bear in mind when designing a localization system for an autonomous vehicle is its dynamic behaviour. Traditionally, SLAM algorithms have been developed for mobile platforms that move at low velocities and consequently can be modelled by only applying kinematic models [6,7]. However, for velocities larger than 5 m/s (18 km/h), kinematic models cannot describe the behaviour of a vehicle correctly enough [8]. An autonomous vehicle can very easily exceed the 5 m/s threshold during its usual operation. Therefore, the modelling of its dynamic response becomes a fundamental issue for autonomous driving. Consequently, the dynamic behaviour of the vehicle must be considered for both the control and the localization system of the autonomous vehicle.
Methods considering the dynamic model for autonomous driving of vehicles have just recently started to appear. In [9], a dynamic predictive control for the vehicle is proposed, while the localization system based on the SLAM problem is still based on a kinematic model. Although the dynamic states of the vehicle are observed, dynamics are only modelled by the integration of the accelerations of the vehicle without using a dynamic model of the vehicle, which takes into account the forces acting on it. To date, literature in this field has not yet explored SLAM for autonomous vehicles considering dynamic models. During the last decade, the development of SLAM-based techniques for autonomous driving has been focused on perception techniques and on the descriptors, especially on map management and on collaborative solutions [4]. However, all the proposed solutions still use a kinematic model for the vehicle. Therefore, it is interesting to investigate SLAM approaches for autonomous vehicles considering dynamic models.
Another relevant aspect to take into account is that vehicles are systems with an important nonlinear behaviour, especially when its dynamic response is considered [8]. Therefore, both for the observation and for the control of the vehicle, it is necessary to use nonlinear techniques. In the SLAM literature, EKF is the predominant approach (see previous referenced reviews [4,5]). UKF and CKF have also been considered as a manner to deal with the nonlinearity problem related to the SLAM for autonomous vehicles (see, e.g., [10,11]), but the the increased computational complexity is not justified by the improvement in the accuracy achieved. In terms of control, there are a few nonlinear methodologies which allow systematic tuning. The Linear Parameter Varying (LPV) technique allows working with nonlinear models and establishing systematic methodologies to tune the controller and the observer by applying various specifications using Linear Matrix Inequalities (LMI). In recent years, it has been proved that this technique of advanced control is very useful in real applications and has been implemented in a huge variety of fields [12]. There are tuning methodologies based on the LPV technique for Model Predictive Control (MPC), an optimal control methodology which is very interesting when combining the vehicle controller with the trajectory planner module. In addition, in terms of observation, LPV techniques avoid the linearization of the nonlinear problem around the operation point and allow guaranteeing the global stability of the system by keeping the Lyapunov conditions for nonlinear systems. This is the opposite of classical observation techniques, such as the Extended Kalman Filter (EKF), which only guarantee stability around the point where the linearization is calculated. Considering the coupling between the software modules, which allow the autonomous driving and the benefits provided by the LPV techniques in systems with a huge nonlinear response, it is logical to think that if the LPV technique has been applied to the vehicle controller [2], it can also be applied to the localization system. However, the LPV technique has not yet been applied to the SLAM problem. The most similar approach found in the literature is an EKF-SLAM problem solved by means fuzzy models using the Takagi–Sugeno technique and applying a purely kinematic conception [13]. It is already known that the Takagi–Sugeno technique has strong connections with LPV techniques [14]. Hence, this approach is a good reference to rewrite the SLAM problem to solve it applying LPV techniques and to incorporate the dynamic response of the vehicle, which is needed for the autonomous driving of vehicles.
In this article, a SLAM-based localization system for an autonomous vehicle in the LPV framework is proposed. The proposed approach takes into account the dynamic behaviour of the vehicle and it is adapted to the kinematic/dynamic controller architecture for an autonomous vehicle previously presented in [2]. This controller is also implemented using LPV techniques and executed into two separate layers that work with different time periods. The fastest layer is in charge of the dynamic response of the vehicle, while the slowest layer is in charge of its kinematic response. Therefore, the proposed vehicle state estimation scheme should also be organized into two separate layers. The dynamic observation must serve the dynamic controller, being part of the fastest layer. In the slowest layer, the solution to a SLAM problem should allow executing the localization task so as to serve the kinematic controller. At the same time, it should allow the map generation of the surroundings of the vehicle so as to serve as the trajectory planner module.
The main contributions with respect to the SLAM state of the art are the following:
  • A SLAM LPV KF scheme is proposed that does not require the linearization of the nonlinear vehicle model but instead embeds the nonlinearities in the varying parameters.
  • The proposed SLAM approach considers both the kinematic and dynamic model of the vehicle, allowing it to operate at higher speeds compared to the pure kinematic schemes available in the literature.
  • A design procedure based on the LMI framework allows the offline design of the LPV KF, reducing the online computational complexity.
  • The LMI framework is rooted in the Lyapunov stability theory guaranteeing the quadratic stability of the LPV KF scheme.
This article is structured as follows. Section 2 presents the kinematic and dynamic models for the autonomous vehicle considered as a case study. Section 3 describes the proposed SLAM approach formulated in the LPV framework. Section 4 shows the design procedure for the kinematic and the dynamic state estimation scheme. Section 5 presents the simulation results using the considered case study. Finally, Section 6 shows the conclusions of this work.

2. Problem Statement

To formulate a SLAM problem, firstly, it is necessary to define a motion model for the vehicle and an observation model for the map. The motion model defines how the vehicle moves inside the map, and the observation model allows determining how the landmarks of the map are seen from the vehicle in movement. Therefore, the motion model is a state transition function and the observation model is a kinematic transform inside the same state representation.
In this article, a two dimensional environment is considered, and, therefore, the vehicle can only do a planar movement (x and y translations and yaw rotation). Hence, ground unevenness and vehicle instabilities are not taken into account.

2.1. Vehicle Modelling

As already stated, mobile robotics addresses the SLAM problem using a purely kinematic model formulation. However, in the case of autonomous vehicles, because of the increase in the mass and velocities, a kinematic model is not enough to characterize some physical effects as, e.g., the slip angle. Experimental results show that during the turns of a vehicle, the linear velocity vector v detaches from the longitudinal direction of the vehicle and lateral forces appear at the wheels, which can result in drifting situations. Therefore, the motion model of the vehicle must take its kinematic and dynamic response into account.
The bicycle model proposed at [8] (see Figure 1) is taken to model the dynamic behaviour of the vehicle. Alcalá et al. [2] show that this simplified model is sufficient for dynamically controlling the vehicle and providing a good balance between representativeness and simplicity. The control actions are the traction force of the rear wheel F x R (accelerator and breaker) and the steering angle of the front wheel δ (steering wheel). In addition, the opposition forces acting on the vehicle are the aerodynamic force ( F d r a g = 1 2 C d ρ A ( v + v w i n d ) 2 ), the friction force between the vehicle and the ground ( F f r i c t i o n = μ m g ), and the lateral forces that appear on the wheels during the turns ( F y F i F y R ). On the one hand, a windless environment is considered ( v w i n d = 0 ) , and, therefore, the aerodynamic force is known. On the other hand, a variable friction is considered, and, therefore, the friction force acts as an unknown perturbation to the system. The dynamic states are the linear velocity v, the angular velocity ω , and the slip angle α ; the latter appear between the linear velocity vector and the longitudinal direction of the vehicle. Applying Newton’s second law, considering a polar frame formed by the velocity vectors of the vehicle, leads to the following dynamic vehicle model
v ˙ = F x R cos α + F y F sin ( α δ ) + F y R sin α C D v 2 m μ g , α ˙ = F x R sin α + F y F cos ( α δ ) + F y R cos α m v ω , ω ˙ = F y F a cos δ F y R b I
where
F y F = C x ( δ α a ω v ) , F y R = C x ( α + b ω v ) , C D = 1 2 C d ρ A
To exemplify the results in this paper, an autonomous vehicle based on a Tazzari Zero used in the Elektra research project (http://adas.cvc.uab.es/elektra/, accessed on 24 October 2022) will be used as a case study. For this vehicle, the parameters of the dynamic model (1) are summarized in Table 1.
The kinematic model of the vehicle describes, to a fixed observer placed at the origin of the world frame { W } , how the centre of gravity of the vehicle { B } moves, giving the kinematic states x and y, corresponding to the vehicle position, and θ , corresponding to its orientation (see Figure 1). Considering the dynamic effects, the linear velocity v is rotated by the slip angle α , leading to the following kinematic model for the vehicle
x ˙ = v s . cos ( θ + α ) , y ˙ = v s . sin ( θ + α ) , θ ˙ = ω .
Note that the slip angle α is the link between both dynamic and kinematic models.

2.2. Map Modelling

The observation model of the map allows performing the kinematic transformation between the observations of the surroundings of the vehicle measured from the absolute world frame { W } and the same observations measured from the mobile frame of the vehicle { V } . In this section, the observation model is derived for an exteroceptive sensor with range and bearing measures, such as a laser sensor. To do so, firstly, some considerations must be made:
  • The sensor is not placed at the centre of gravity of the vehicle { V } but at a fixed point of the vehicle frame described by the pose ( s , t ) and the orientation β . The new frame that can be defined from this point is called the sensor frame { S } .
  • To reduce the nonlinearity of the observation model, a transformation block of polar coordinates to Cartesian coordinates is installed at the sensor output:
    x l s ( k ) y l s ( k ) = j ( y ( k ) ) = cos ( α ( k ) ) 0 sin ( α ( k ) ) 0 d ( k ) α ( k ) ,
    where ( x l s , y l s ) is the sensor measurement Cartesian representation and ( d , α ) is its polar representation given by the original sensor. Using this block, it is considered that the sensor provides a Cartesian measurement to the SLAM system, as is suggested in [13].
According to the diagram presented in Figure 2, the observation model of the map corresponds to the geometric transform T w s ( k ) , which goes from the world frame { W } to the sensor frame { S } . Nevertheless, there is not enough information available to determine it completely, and it is necessary to pass by the vehicle frame { V } . Therefore, if T w v ( k ) is the homogeneous transform which goes from the world frame to the vehicle frame (which is variable depending on the vehicle position) and if T v s is the homogeneous transform which goes from the vehicle frame to the sensor frame (which is constant), then:
T w s ( k ) = T w v ( k ) T v s .
Considering that the vehicle is placed at the position ( x v w , y v w ) described from the world with an orientation θ and the sensor is placed at the position ( s , t ) described from the vehicle with an orientation β , when the pertinent transforms are applied, the analytic observation model is
x l s ( k ) = x v w ( k ) cos ( θ ( k ) + β ) y v w ( k ) sin ( θ ( k ) + β ) + x l w ( k ) cos ( θ ( k ) + β ) + y l w ( k ) sin ( θ ( k ) + β ) + N 1 , y l s ( k ) = x v w ( k ) sin ( θ ( k ) + β ) y v w ( k ) cos ( θ ( k ) + β ) x l w ( k ) sin ( θ ( k ) + β ) + y l w ( k ) cos ( θ ( k ) + β ) + N 2 ,
where
N 1 = s cos β t sin β , N 2 = s sin β t cos β ,
and the installation parameters of the exteroceptive sensor are described in Table 2.
Apart from the observation model of the map, a dynamic model of the map is needed to describe the dynamic evolution of its landmarks. Since fixed landmarks at the world frame { W } are considered, modelling its performance from this frame is very easy:
x ˙ l w = 0 , y ˙ l w = 0 .
where ( x l w , y l w ) is the position of a landmark represented in the world frame { W } .

2.3. Motion Model for the SLAM System

To develop a SLAM scheme using the proposed LPV approach, a linear observation model for the system is necessary. Otherwise, the complexity of the interpolation of the vertices of the polytopic LPV model grows notably. To accomplish this restriction, the map observation model must be introduced with the system motion model; thus, all system sensor measurements also become states and the observation model becomes trivial. Hence, the kinematic transform of Equation (3) must be converted into a state transition function. To do so, the time derivative of the kinematic transform is taken, and it is forced by the dynamic model of the map (Equation (4)). The following kinematic motion model for the map is obtained:
x ˙ l s = v s . cos ( α β ) + ω ( y l s N 2 ) , y ˙ l s = v s . sin ( α β ) ω ( x l s N 1 ) ,
where N 1 and N 2 are defined in Equation (3), the sensor parameters are in Table 2, and ( x l s , y l s ) is the position of a landmark represented in the sensor frame { S } . This model describes how the static landmarks in the world frame { W } are moving with respect to a static observer placed at the sensor frame { S } , which introduces a robocentric point of view to the SLAM problem.
With the benefits of this derived model, now, the problem state vector includes all sensor measurements, and it is possible to write a linear observation model for the SLAM problem. Additionally, a conceptual reorganization of the problem models could be conducted as follows:
  Vehicle dynamic model ( Equation ( 1 ) ) v s . α ω Direct observation model ( Equation ( 3 ) ) Vehicle kinematic Map kinematic model ( Equation ( 2 ) ) model ( Equation ( 5 ) ) x v w y v w θ x l s y l s Inverse observation model ( Equation ( 6 ) ) Map dynamic model ( Equation ( 4 ) ) x l w y l w
Note that the dynamic model defines the vehicle behaviour and provides the necessary data to the two kinematic models. These two models allow one to perform the two kinematic interpretations needed for the SLAM problem: vehicle displacement respect to the static observer at the world frame and world displacement with respect to the static observer at the vehicle frame. The direct and inverse observation models are the transforms between these two kinematic conceptions. Finally, a dynamic model for the landmarks is needed to define its evolution in the world map. However, as static landmarks at the world frame are considered, the map dynamic model is very simple, and, with the purpose of simplicity, it has been forced into the map kinematic model. Consequently, this model is not explicit in the SLAM system motion model. Hence, the static position of each landmark in the world frame is not explicit in the problem state vector and, if it is needed, it has to be obtained at each iteration applying the inverse map observation model to the state vector:
x l w ( k ) = x v w ( k ) + x l s ( k ) cos ( θ ( k ) + β ) y l s ( k ) sin ( θ ( k ) + β ) + M 1 , y l w ( k ) = y v w ( k ) + x l s ( k ) sin ( θ ( k ) + β ) + y l s ( k ) cos ( θ ( k ) + β ) + M 2 ,
where
M 1 = s cos β t sin β , M 2 = s sin β + t cos β ;
which results from inverting Equation (3).
To summarize, the resulting motion model for the dynamic SLAM problem is:
v ˙ = F x R cos α + F y F sin ( α δ ) + F y R sin α C D v 2 m μ g , α ˙ = F x R sin α + F y F cos ( α δ ) + F y R cos α m v ω , ω ˙ = F y F a cos δ F y R b I , x v w ˙ = v s . cos ( θ + α ) , y v w ˙ = v s . sin ( θ + α ) , θ ˙ = ω , x ˙ l s = ω y l s cos ( α β ) v s . + ( t cos β s sin β ) ω , y ˙ l s = ω x l s sin ( α β ) v s . ( t sin β + s cos β ) ω ,
where:
F y F = C x ( δ α a ω v ) , F y R = C x ( α + b ω v ) , C D = 1 2 C d ρ A
and its parameters are presented in Table 1 and Table 2.

3. Proposed Solution

Before we introduce in detail the proposed kinematic/dynamic SLAM approach, firstly, an overall overview is presented. To develop a SLAM system that suits the kinematic/dynamic controller proposed in [2], it is necessary to structure it in layers. The fastest layer is in charge of the vehicle dynamics estimation, while the slowest layer addresses the SLAM problem using the results provided by the fastest layer (see Figure 3). Hence, the motion model (7) is divided into two submodels, one per layer. On the one hand, the state estimator of the fastest layer has to estimate the vehicle dynamic state x d = v s . α ω T for the dynamic controller of the autonomous driving system. As inputs, it has the dynamic control signals u d = F x R δ T and the unknown input n = μ , using the sensor measurements y d = v s . ω T to correct the estimation. On the other hand, the kinematic state estimator must estimate the vehicle kinematic state x k = x v w y v w θ T and the states of the incremental map built by the SLAM, to serve the kinematic controller and the trajectory planner system of the autonomous driving system. As input, it has the state estimation provided by the dynamic state estimator x d = v s . α ω T that uses the sensor measurements y k = x v w y v w θ x l 1 s y l 1 s x l m s y l m s T to correct the estimation.
Once an overview of the proposed two-layer estimation scheme is provided, in the following subsections, the detail description of each estimator is provided.

3.1. Dynamic State Estimation

To estimate the dynamic behaviour of the vehicle, the vehicle dynamic model (1) is considered as the motion model. This model is temporally discretized by applying the Euler approximation using the dynamic sampling time τ d . This allows one to obtain a pseudolinear representation applying the LPV state-space formulation by embedding the nonlinearities in the varying parameters as follows:
x d ( k ) = f d ( x d ( k 1 ) , u d ( k 1 ) , n ( k 1 ) ) = Φ ( ψ d ) k 1 x d ( k 1 ) + Γ ( ψ d ) k 1 u d ( k 1 ) + η n ( k 1 )
where
Φ ( ψ d ) k = Φ 11 Φ 12 Φ 13 0 Φ 22 Φ 23 0 Φ 32 Φ 33 ,
Φ 11 = 1 τ d 1 2 C d ρ A v m , Φ 12 = τ d C x sin ( α δ ) + sin α m , Φ 13 = τ d C x b sin α a sin ( α δ ) m v , Φ 22 = 1 τ d C x cos ( α δ ) + cos α m v , Φ 23 = τ d C x b cos α a cos ( α δ ) m v 2 τ d , Φ 32 = τ d C x b a cos δ I , Φ 33 = 1 τ d C x b 2 + a 2 cos δ I v ,
Γ ( ψ d ) k = Γ 11 Γ 12 Γ 21 Γ 22 0 Γ 32 ,
Γ 11 = τ d cos α m , Γ 12 = τ d C x sin ( α δ ) m , Γ 21 = τ d sin α m v , Γ 22 = τ d C x cos ( α δ ) m v , Γ 32 = τ d C x a cos δ m ,
η = τ d g 0 0 ,
the model parameters are in Table 1 and the dynamic scheduling vector is ψ d ( k ) = δ ( k ) v ( k ) α ( k ) T .
If velocities v and ω are measured, the output equation for the dynamic system using the LPV formulation is:
y d ( k ) = h d ( x d ( k ) ) = C d x d ( k )
where
C d = 1 0 0 0 0 1 .
Using these sensor measurements, the dynamic LPV system (8) is observable for all the values of the varying parameters.
The dynamic motion model (8) is additionally affected by an unknown input n that acts as a perturbation and is due to the friction force that is a function of the friction coefficient μ ( k ) that varies and in general is not known exactly. To be able to estimate the dynamic states without having this force, an Unknown Input Observer (UIO) scheme is proposed [16]. According to this reference, to apply the UIO, firstly, the condition r a n k { C η } = r a n k { η } must be verified. As matrix C is constant and given by (9), it is easy to see that the condition is satisfied. Therefore, the UIO could be implemented. According to [16], a possible implementation is based on the transformation matrix Ω :
Ω = I η ( C η ) T C η 1 ( C η ) T C = 0 0 0 0 1 0 0 0 1 .
which allows one to produce a new motion model decoupled from the perturbation and can be estimated using the input/output measurements:
x d ( k ) = f d ( x d ( k 1 ) , u d ( k 1 ) , y d ( k ) ) = Φ ¯ ( ψ d ) k 1 x d ( k 1 ) + Γ ¯ ( ψ d ) k 1 u d ( k 1 ) + Σ y d ( k )
where
Φ ¯ ( ψ d ) k = Ω Φ ( ψ d ) k , Γ ¯ ( ψ d ) k = Ω Γ ( ψ d ) k , Σ = η ( C η ) T C η 1 ( C η ) T ,
Note that all the involved matrices are defined in Equation (8).

3.2. Kinematic State Estimation and SLAM

To solve the SLAM problem, the motion and observation models of the kinematic layer must be defined. The motion model includes the vehicle kinematic model (2), the map kinematic model, and the implicit map dynamic model. As in the case of the dynamic model, they are temporally discretized by applying the Euler approximation using the kinematic sampling time τ k and expressed in pseudolinear representation using the state-space LPV representation based on nonlinear embedding the nonlinearities in the varying parameters. In the case of considering n landmarks, the obtained LPV representation is:
x k ( k ) = f k ( x k ( k 1 ) , x d ( k 1 ) ) = Φ ( ψ k ) k 1 x k ( k 1 ) + Γ ( ψ k ) k 1 x d ( k 1 ) ,
where
Φ ( ψ k ) k = 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 ϕ 0 0 0 0 0 ϕ 1 0 0 0 0 0 0 0 1 ϕ 0 0 0 0 0 ϕ 1 ,
ϕ = τ k ω ,
Γ ( ψ k ) k = Γ 11 0 0 Γ 21 0 0 0 0 Γ 33 Γ 41 0 Γ 43 Γ 51 0 Γ 53 Γ 41 0 Γ 43 Γ 51 0 Γ 53 ,
Γ 11 = τ k cos ( θ + α ) , Γ 21 = τ k sin ( θ + α ) , Γ 33 = τ k , Γ 41 = τ k cos ( α β ) , Γ 43 = τ k ( t cos β s sin β ) , Γ 51 = τ k sin ( α β ) , Γ 53 = τ k ( t sin β + s cos β ) ,
where the model parameters are summarized in Table 2 and the kinematic scheduling vector is ψ k ( k ) = α ( k ) ω ( k ) θ ( k ) . Matrix Φ ( ψ k ) k is square with dimension 3 + 2 n and the dimensions of matrix Γ ( ψ k ) k are ( 3 + 2 n ) × 3 .
To solve the SLAM problem, it is necessary to bear in mind that the kinematic state vector is formed by the n discovered landmarks which form the incremental map. Note that technically it is only possible to consider a subset of the discovered landmarks, called the active landmarks. From that subset of active landmarks, a group of measurements are correlated with the known landmarks of the map, which are used to perform the kinematic observation task. The rest of active landmarks are new discoveries and will be included in the map once the kinematic observation is performed. Hence, the measurements of the kinematic system are the pose of the vehicle in the world frame and the position of the m correlated active landmarks measured in the sensor frame are
y k = x v w ( k ) y v w ( k ) θ x l 1 s ( k ) y l 1 s x l m s ( k ) y l m s ( k ) T .
The resulting observation model is
y k ( k ) = h k ( x k ( k ) ) = C k x k ( k )
where
C k = 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1
with dimensions ( 3 + 2 m ) × ( 3 + 2 n ) .
x ^ k ( k ) = x ^ k + ( k ) + L k ( k ) y k ( k ) C k x ^ k + ( k )

3.3. State Estimation Scheme

Once the models used for state estimation and SLAM have been introduced, they are used through the following estimation structure,
x ^ d ( k ) = x ^ d + ( k ) + L d ( k ) y d ( k ) C d ( k ) x ^ d + ( k )
where C d is the output matrix defined in Equation (9) in the case of the dynamic estimation or in Equation (12) in the case of SLAM. The difference between the different proposed estimators is the considered model described in previous subsections and the way the correcting gain L d ( k ) is obtained using the design procedures presented in the next section.
Using (13) at every time iteration k, the vehicle motion model must be evaluated using the control signals u d ( k 1 ) and previous state estimations x ^ d + ( k ) . The sensor measurements y d ( k ) are used to correct the state estimations provided by the model through the correcting factor L d ( k ) .

4. Design Procedures

In this section, two different procedures are proposed to determine the correction gain L d ( k ) required for the state estimation scheme (13). The first approach is based on solving online the Ricatti equation as in EKF [17]. However, the proposed approach avoids the linearization of the model required in EKF by using the pseudolinearization offered by the LPV formulation of the model presented in the previous section for the different models considered. The second approach is based on using the polytopic representation of the LPV model. This approach allows solving the Ricatti equations formulated as LMIs [17] offline only in the vertices of the polytopic model. During the online operation, the value of correction gain L d ( k ) at each operation point is calculated online by interpolation of the solution found offline at the vertices of the polytopic LPV model [12].

4.1. Online Approach

To apply the online approach, the matrices of the pseudolinear system model representation are evaluated at the current operating point. The calculation of the gain L d ( k ) is based on solving the Ricatti Equation of the Kalman Filter using the current value of system matrices. This implies performing the following calculations at each time iteration k to determine the gain L d ( k ) and the covariance matrix P d ( k )
P d + ( k ) = Φ ¯ ( ψ d ) k 1 P d ( k 1 ) Φ ¯ ( ψ d ) k 1 T + Γ ¯ ( ψ d ) k 1 Q d Γ ¯ ( ψ d ) k 1 T + Σ R d Σ , Z ( k ) = C d P d + ( k ) C d T + R d , L d ( k ) = P d + ( k ) C d T Z ( k ) 1 , P d ( k ) = P d + ( k ) L d ( k ) C d T P d + ( k ) .
Matrices Φ ¯ ( ψ d ) k 1 , Φ ¯ ( ψ d ) k 1 and Σ are defined in Equation (10), matrix C d is defined in Equation (9), and Q d and R d are, respectively, the covariance matrices of the disturbances and sensor measurements.
In the case of SLAM, the following calculation must be performed at each iteration to determine the gain L k ( k ) and the covariance matrix P k ( k ) :
P k + ( k ) = Φ ( ψ k ) k 1 P k ( k 1 ) Φ ( ψ k ) k 1 T + Γ ( ψ k ) k 1 P d ( k 1 ) Γ ( ψ k ) k 1 T , Z ( k ) = C k P k + [ r l , r l ] ( k ) C k T + R k , L k ( k ) = P k + [ r m , r l ] ( k ) C k T Z ( k ) 1 , P k ( k ) = P k + [ r m , r m ] ( k ) L k ( k ) C k T P k + [ r l , r m ] ( k ) .
Matrices Φ ( ψ k ) k 1 and Γ ( ψ k ) k 1 are defined in Equation (11), and matrix C k is defined in Equation (12). P d ( k 1 ) is the covariance matrix of the dynamic estimation applied to the kinematic estimation. In contrast, P k ( k 1 ) is the variance matrix of the kinematic estimation carried out on the previous iteration. As seen, both layers are linked by the variance matrix P d . Finally, r l refers to the dimensions of matrix P k + ( k ) corresponding to the vehicle kinematics and to the active landmarks, and r m refers to all dimensions of matrix P k + ( k ) .

4.2. Offline Approach

The offline approach is based on the use of the polytopic LPV vehicle model.
To define the polytopic LPV vehicle model, firstly, it must be noted that the dimension of the dynamic scheduling vector ψ d is n ψ = 3 . Hence, the dynamic polytopic model has n Ψ = 8 vertices ψ d i , which are:
Ψ d = δ ̲ v ̲ α ̲ δ ̲ v ̲ α ¯ δ ̲ v ¯ α ̲ δ ̲ v ¯ α ¯ δ ¯ v ̲ α ̲ δ ¯ v ̲ α ¯ δ ¯ v ¯ α ̲ δ ¯ v ¯ α ¯ ,
where the underlined and the overlined represent, respectively, the lowest and the highest limit for each scheduling variable.
Then, the following Kalman Filter Ricatti equation expressed in LMI form [17] must be solved for each vertex of the polytopic LPV model:
Y d Y d Φ ¯ ( ψ d i ) W ( ψ d i ) C d Y d Q ¯ ( ψ d i ) T W ( ψ d i ) Φ ¯ ( ψ d i ) T Y d C d T W ( ψ d i ) T Y d 0 0 Q ¯ ( ψ d i ) Y d 0 I 0 W ( ψ d i ) T 0 0 R 1 0 f o r i = 1 n Ψ
where
Q ¯ ( ψ d i ) = Γ ¯ ( ψ d i ) Q d Γ ¯ ( ψ d i ) T + Σ R d Σ T , W ( ψ d i ) = Y d 1 L d ( ψ d i ) .
Φ ¯ ( ψ d i ) , Γ ¯ ( ψ d i ) and Σ are defined in Equation (10), and C d is the output matrix defined in Equation (9). Q d and R d are the variance matrices of the control signals and sensor measurements. An additional LMI has to be included to guarantee the stability in the Lyapunov sense of the resulting polytopic LPV estimation scheme:
γ I I I Y d 0 ,
where I is a three-dimensional identity matrix.
Finally, an optimization problem considering the previous LMIs (14) and (15) as constraints must be solved, where the minimization goal is the scalar γ and the decision variables are matrix Y d = P d 1 and matrices W ( ψ d i ) . The problem solution provides the gain L d ( ψ d i ) for each vertex of the dynamic polytopic LPV model.
Once the gains L d ( ψ d i ) for each vertex of the polytopic model are obtained offline, the gain L d ( ψ d ) ( k ) is adapted in function of the operation point as follows
L d ( ψ d ) ( k ) = i = 1 n Ψ μ d i ( k ) L d ( ψ d i ) .
where the interpolation factors μ d i ( k ) for each vertex of the polytopic model are obtained as follows:
μ d i ( k ) = j = 1 n ψ ε i j ( η 0 j ( k ) , η 1 j ( k ) ) f o r i = 1 n Ψ
with
η 0 j ( k ) = ψ j ¯ ψ j ( k ) ψ j ¯ ψ j ̲ , η 1 j ( k ) = 1 η 0 j ( k ) , f o r j = 1 n ψ ,
taking into account the limits for each scheduling variable ψ j ( k ) .
Using the LPV polytopic approach to solve a SLAM problem requires limiting the dimension of the map state vector of the kinematic system to only the m active landmarks correlated with the known map. In this way, the dimension of the state vector does not grow indefinitely as the problem advances and, by fixing a limit ρ to the maximum number of correlated active landmarks at each iteration, the possible ρ + 1 dimensions for the state vector can be forecast in advance. As the kinematic scheduling vector is not affected by the position of any landmark, the polytopic model generated for the subset of m correlated active landmarks is valid for any subset of active landmarks, while the dimension of the subset remains at m. Following this approach, it is possible to tune ρ + 1 different gains offline. Furthermore, during the observation algorithm, it is possible to choose the convenient set of gains depending on the m correlated active landmarks available at each operation point. Unlike with the online Ricatti methodology, the SLAM problem solved by means of the polytopic approach uses a limited memory considering only the landmarks close to the surroundings of the vehicle to perform the localization task, without doing corrections to the entirety of the incremental map built during the whole execution. Nevertheless, this problem relaxation allows the observability condition of the kinematic layer to be accomplished.
To define the polytopic model of the kinematic system, firstly, it must be noted that the dimension of the kinematic scheduling vector ψ k is n ψ = 3 . Hence, the kinematic polytopic model has n Ψ = 8 vertices ψ k i defined as follows:
Ψ k = α ̲ ω ̲ θ ̲ α ̲ ω ̲ θ ¯ α ̲ ω ¯ θ ̲ α ̲ ω ¯ θ ¯ α ¯ ω ̲ θ ̲ α ¯ ω ̲ θ ¯ α ¯ ω ¯ θ ̲ α ¯ ω ¯ θ ¯ ,
where the underlined and the overlined represent, respectively, the lowest and the highest limit for each scheduling variable.
The dimension of the kinematic system is variable because of the number of landmarks considered in the SLAM problem. Therefore, if ϵ [ 0 , ρ ] is the number of active landmarks correlated with the known map for an operation point of the observer system, then a tuning process must be performed for each possible dimension ϵ for the correlated active landmarks subset. Hence, ρ + 1 different sets of gains must be calculated, because the case without any measured known landmarks should be taken into account. To tune the set of gains for ϵ landmarks, the LMI for the optimum gain [17] has to be considered for each vertex of the polytopic model:
Y k ϵ Y k ϵ Φ ϵ ( ψ k i ) W ϵ ( ψ k i ) C k ϵ Y k ϵ Q ¯ ( ψ k i ) T W ϵ ( ψ k i ) Φ ϵ ( ψ k i ) T Y k ϵ C k ϵ T W ϵ ( ψ k i ) T Y k ϵ 0 0 Q ¯ ( ψ k i ) Y k ϵ 0 I 0 W ϵ ( ψ k i ) T 0 0 R k ϵ 1 0 f o r i = 1 n Ψ
where
Q ¯ ( ψ k i ) = Γ ϵ ( ψ k i ) P d Γ ϵ ( ψ k i ) T , W ϵ ( ψ k i ) = Y k ϵ 1 L ϵ ( ψ k i ) .
Φ ϵ ( ψ k i ) and Γ ϵ ( ψ k i ) are defined in Equation (11), C k ϵ is the output matrix defined in Equation (12), and R k and P d are, respectively, the covariance matrices of the sensor measurements and the dynamic estimations used. As can be seen, all matrices are defined according to the fixed ϵ active landmarks, and the covariance matrix P d is the link between the kinematic/dynamic estimation layers. Next, an additional LMI must be included to guarantee the global stability of the polytopic estimation scheme to accomplish Lyapunov conditions:
H = γ I I I Y k ϵ 0 ,
where I is an n + 2 ϵ dimensional identity matrix.
Finally, the optimization problem defined by the resulting LMIs must be solved, where the minimization goal is the scalar γ and the decision variables are the matrix Y k ϵ and the matrices W ϵ ( ψ k i ) . The problem solution provides a gain L ϵ ( ψ k i ) for each vertex of the kinematic polytopic model. This set of gains for the subset of ϵ active landmarks must be saved in the vehicle estimator memory because it must be used during the estimation process every time ϵ correlated active landmarks are available. The described process must be repeated for each ρ + 1 possible subset of active landmarks.
To determine the polytopic gain L ϵ ( ψ k i ) ( k ) for each operation point inside the estimation loop, firstly, the ϵ active landmarks correlated with the map must be determined, that is, for which map landmarks are the vehicle sensors able to obtain measurements at the current iteration. This information allows fixing the system state x k [ r l ] ( k ) for the operation point. Next, the set of gains L ϵ ( ψ k i ) for ϵ active landmarks has to be searched in the vehicle estimator memory. Afterwards, the direct and inverse unit scaling of each scheduling variable must be determined according to the previous kinematic estimations x k ( k 1 ) , applying Equation (18) for each scheduling variable. Then, the interpolation factors μ k i ( k ) for each vertex of the polytopic estimator must be determined by applying Equation (17) and following the logic used to define Ψ k . Lastly, the interpolated gain must be calculated by applying Equation (16) and the interpolation factors μ k i ( k ) previously found.

5. Simulation Results

In this section, simulation results are provided to illustrate the performance of the proposed approaches and compare the differences between the two design procedures presented in Section 4. Furthermore, a comparison with the classical EKF is provided to prove the interest of the introduced techniques.

5.1. Simulation Set-Up

To conduct these simulations, a handmade Matlab environment inspired by the SLAM Toolbox for Matlab [18] is used, and the control data are taken from the experimentation carried in a previous work [2]. As a world map, a synthetic map is taken, formed by a mesh of 12 × 40 elements uniformly distributed between coordinates 50 m and 1050 m in the x direction and between 50 m and 450 m in the y direction. Hence, the vehicle has 480 available landmarks along its path, although a limit of ρ = 10 active landmarks at each iteration is set. Simulations are conducted considering the Tazzari Zero autonomous vehicle, whose parameters are shown in Table 1, as well as the exteroceptive sensor installation parameters shown in Table 2. The limits for the scheduling variables of the kinematic/dynamic LPV models are set as follows:
δ ̲ = 25 , δ ¯ = 25 , v ̲ = 2 m / s , v ¯ = 18 m / s , α ̲ = 0.1 rad , α ¯ = 0.1 rad , θ ̲ = 90 , θ ¯ = 160 , ω ̲ = 0.2 rad / s , ω ¯ = 0.2 rad / s .
A sampling time of τ d = 1 ms is used for the dynamic state estimation layer, while a sampling time of τ k = 100 ms is considered for the SLAM layer. For the design of the dynamic state estimator, diagonal covariance matrices Q d = 1 , 1 × 10 4 , and R d = 1 × 10 2 , 1 × 10 4 are considered. For the SLAM layer, diagonal covariance matrices R k = 1 × 10 2 , 1 × 10 2 , 1 × 10 6 , and R m = 1 × 10 2 , 1 × 10 2 are used, where R k is related to the kinematic sensors of the vehicle and R m is related to the measure of a single landmark. To design the polytopic LPV estimators following the offline approach presented in Section 4, Mosek solver [19] is used to solve all the involved optimization problems.

5.2. Simulation Scenarios

Two different experiments are conducted. In both cases, a variable friction between the vehicle and the ground is considered, as well as additive perturbations and sensor noise. All perturbations and noises are assumed to be Gaussian and are generated according to their corresponding covariance matrices Q and R, which were previously defined. In Figure 4, top right, the variable friction applied to the system is shown, and in Figure 4 left, the dynamic control signals u d with additive Gaussian disturbances are presented. Using these data as inputs to the vehicle simulator and the sensor measurements y d obtained, the dynamic response of the vehicle could be estimated. In both simulation scenarios, these inputs are common, and consequently, the dynamic estimation results are the same. These results are shown in Figure 5, where it can be observed that both estimation techniques provide good results with a very similar performance. Both techniques filter the system disturbances, although the polytopic LPV approach presents less estimation error accumulation. As will be shown next, this result will be amplified in the kinematic SLAM layer. Furthermore, in Figure 5 it is shown that for state α , which is not measured, a good estimation is achieved. In contrast to all of that, in Figure 4, right, the friction estimation performed by the UIO is shown. It can be seen that this estimation is equivalent for both estimation techniques, although the UIO associates most of the disturbances received with the friction, complicating the distinction between process disturbances and friction force. Furthermore, the application of an UIO to this specific problem implies that the measurement of the state v is analytically assigned directly to the estimation, blocking any correction or filtering process to that state. This phenomenon is shown in Figure 5, where it is seen how the estimation of the state v could not be filtered. In conclusion, although the UIO is necessary to compensate the variable perturbation introduced by the vehicle friction, it cannot completely eliminate the effect of additive Gaussian disturbances.
Using the dynamic estimations, the kinematic SLAM estimation can be performed. Two experiments are proposed to evaluate the robustness of the proposed SLAM approach. In the first experiment, initialization of landmarks is corrupted with an additive Gaussian noise with a standard deviation of 10 m, which allows modelling an exteroceptive sensor with a very bad state initialization. The results in this case are shown in Figure 6, where significant differences are observed between the online and offline design approaches. For this reason, the classical solution using an EKF, based on first-order linearization, is also plotted and used as a reference for comparison. On the one hand, it can be observed that the online approach presents significant biases, following the same trend as the EKF but accumulating more error. On the other hand, the offline design approach based on the polytopic LPV estimator accumulates less error than the EKF and provides a vehicle localization with an order accuracy of a few decimeters for the position, one order of magnitude less than the estimation performed by the Ricatti observer. These error accumulations appear during the vehicle turns, when the v direction is detached from the longitudinal direction of the vehicle, dynamic effects become evident and drifts can appear at the vehicle wheels. As the dynamic behaviour is affected by important nonlinearities, these results show how the polytopic observer is able to deal with the nonlinearities problem, and therefore, it becomes the most dynamically sensitive, improving the classical EKF. Despite this, note that the estimation for the polytopic observer is a bit more noisy than the EKF, especially for the vehicle orientation. However, the global accuracy improves with respect to the EKF, and it can be concluded that the polytopic observer stands out for the localization task.
Figure 7, left, shows the results of the mapping task for this experiment. It can be seen how, unless using a sensor with bad accuracy for the initialization of landmarks, both proposed techniques are robust enough to converge close to the real landmark’s position. Furthermore, note how the vehicle discovers its closest surroundings and accurately places the landmarks in the incremental map. At the same time, the vehicle trajectory on the map can also be determined correctly. Therefore, the mapping task is carried out properly for both techniques, and no significant differences are observed.
The second experiment belongs to a critical case in which no state initialization mechanism is available. The EKF-SLAM technique is very sensitive if new discovered landmarks are not properly initialized. In [20], the initialization process for the SLAM system state vector x and the SLAM system variance matrix P is described. This process was applied in the previous experiment, but now it is removed and all landmarks initialization are set to nearly zero. This will allow us to more deeply analyse the robustness of the proposed SLAM solution and check if this initialization is needed for the proposed methodologies. Figure 8 shows the kinematic results for this experiment. It is seen how, as expected, the EKF is not able to deal with this high uncertainty. Similarly, the Riccati observer also cannot assume it, but, on the contrary, the polytopic approach is able to perform a good localization with an error of decimetres for the vehicle position. These results show how this technique outperforms the robustness of the classical EKF when no accuracy on landmark initialization is able. Furthermore, Figure 7, right, shows the results of the mapping task for this experiment. It can be observed how only the polytopic observer is able to converge and accurately place the discovered landmarks in the incremental map. For the other techniques, a significant drift on the vehicle trajectory is appreciated, and in particular for the EKF, significant oscillations appear in every landmark discovery.
In conclusion, the presented results show how the the dynamic estimation tasks are developed correctly for both proposed techniques, apparently without significant differences at this level. However, achieving accuracy in the vehicle location becomes more complex, and the best estimation is provided by the polytopic observer. The Ricatti observer is conceived as the direct evolution of the EKF-SLAM methodology to include the dynamic response of the vehicle and use LPV techniques. It is seen how this approximation fails, and the results become worse with respect to the classical EKF. For this reason, it is necessary to go in depth into the LPV techniques and find a new approximation of the SLAM problem based on the polytopic models and tuning methodologies based on the optimization of a set of LMIs. This approximation turns out to be more accurate because it avoids updating the system model at the operation point, performing an interpolation for the whole problem domain. This weighing allows Lyapunov stability conditions to be accomplished for the global system and allows one to reach a better observation of the nonlinear problem. This is the improvement to the SLAM problem introduced in this article.

6. Conclusions

In this article, the SLAM problem is solved by applying a methodology based on kinematic/dynamic models using the LPV framework. The proposed SLAM approach is designed for mobile platforms with a considerable mass and not operated at low velocities, such as autonomous vehicles. For this type of mobile platform, its dynamic response becomes evident and contrasts with the mobile robots considered in classical SLAM problems, where only kinematic effects are modelled. A difference from those classical approaches is that in this proposal, an estimation mechanism of the dynamic response of the vehicle is provided, which is combined with the solution to a SLAM problem. Furthermore, this approach proves that to solve a problem with important nonlinear behaviour, it is necessary to go in depth into advanced control techniques, avoiding the classical EKF, which linearizes the system model around the operation point. The approach introduced in this paper is based on the use of the LPV technique, which considers the whole problem domain and avoids any linearization, and it has been verified in simulation, showing the advantages of the polytopic stationary observer with respect to the Ricatti iterative observer. To implement the polytopic estimator, a reformulation of the SLAM problem has been necessary, developing the map kinematic model presented in Equation (5), which allows a linear observation model for the SLAM problem and introduces a robocentric point of view to it. Furthermore, the polytopic technique only requires considering the measurable surroundings of the vehicle, avoiding the maintenance of the whole discovered map. It is verified in simulation that these relaxations do not have adverse effects to the localization task and allows it outperform the classical EKF-based methods.
Moreover, the proposed approach considers an observation system with an architecture that couples with the kinematic/dynamic controller structured in layers for an autonomous vehicle proposed at [2]. Both systems are built using the same vehicle models and are implemented with gain-scheduling LPV techniques. Both systems allow showing that it is possible to separate the kinematic and dynamic responses, permitting perform the dynamic treatment independently to the kinematic treatment. At the same time, in this article is shown how the vehicle kinematic estiamted layer can be combined with a SLAM problem, in the same way as in [3] the vehicle kinematic control layer is combined with the trajectory planner. Therefore, the presented kinematic/dynamic localization system allows to advance in the development of a layered software which permits the autonomous driving of a vehicle.
As future work, the following aspects will be further researched:
  • The proposed approach will be applied and tested in the real vehicle in the context of current ongoing research project.
  • The extension of the proposed observation approach to take into account 3D scene factors (such as ground unevenness and vehicle instability) will be explored.
  • The inclusion of range sensors instead of state sensors will also be considered.

Author Contributions

Conceptualization, P.V. and V.P.; methodology, P.V. and V.P.; software, P.V.; writing—original draft preparation, P.V.; writing—review and editing, V.P.; supervision, V.P. All authors have read and agreed to the published version of the manuscript.

Funding

This work has been co-financed by the Spanish State Research Agency (AEI) and the European Regional Development Fund (ERFD) through the project SaCoAV (ref. MINECO PID2020-114244RB-I00), by the European Regional Development Fund of the European Union in the framework of the ERDF Operational Program of Catalonia 2014–2020 (ref. 001-P-001643 Looming Factory) and by the DGR of Generalitat de Catalunya (SAC group ref. 2017/SGR/482). Authors are also supported by an Industrial PhD AGAUR grant (Ref. 2019 DI 040).

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

All the required data is included in the paper.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Woensel, L.V.; Arccher, G.; Panades-Estruch, L.; Vrscaj, D. Ten Technologies which Could Change Our Lives; European Union: Brussels, Belgium, 2018. [Google Scholar]
  2. Alcalà, E.; Puig, V.; Quevedo, J.; Escobet, T. Gain Scheduling LPV Control for Autonomous Vehicles including Friction Force Estimation and Compensation. IET Control Theory Appl. 2018, 12, 1683–1693. [Google Scholar] [CrossRef]
  3. Alcalà, E.; Puig, V.; Quevedo, J.; Rosolia, U. Autonomous Racing using Linear Parameter Varying - Model Predictive Control (LPV-MPC). Control Eng. Pract. 2020, 95, 104270. [Google Scholar] [CrossRef]
  4. Bresson, G.; Alsayed, Z.; Yu, L.; Glaser, S. Simultaneous Localization and Mapping: A Survey of Current Trends in Autonomous Driving. IEEE Trans. Intell. Veh. 2017, 2, 194–220. [Google Scholar] [CrossRef] [Green Version]
  5. Cheng, J.; Zhang, L.; Chen, Q.; Hu, X.; Cai, J. A review of visual SLAM methods for autonomous driving vehicles. Eng. Appl. Artif. Intell. 2022, 114, 104992. [Google Scholar] [CrossRef]
  6. Durrant-Whyte, H.; Bailey, T. Tutorial Simultaneous Localization and Mapping: Part 1. IEEE Robot. Autom. Mag. 2006, 13, 99–110. [Google Scholar] [CrossRef] [Green Version]
  7. Durrant-Whyte, H.; Bailey, T. Tutorial Simultaneous Localization and Mapping: Part 2. IEEE Robot. Autom. Mag. 2006, 13, 108–117. [Google Scholar] [CrossRef] [Green Version]
  8. Rajamani, R. Vehicle Dynamics and Control; Springer: Berlin/Heidelberg, Germany, 2012. [Google Scholar]
  9. Kabzan, J.; Valls, M.; Reijgwart, V.; Hendrikx, H.; Ehmke, C.; Prajapat, M.; Bühler, A.; Gosala, N.; Gupta, M.; Sivanesan, R.; et al. AMZ Driverless: The full autonomous racing system. J. Field Robot. 2020, 37, 1267–1294. [Google Scholar] [CrossRef]
  10. D’Alfonso, L.; Lucia, W.; Muraca, P.; Pugliese, P. Mobile robot localization via EKF and UKF: A comparison based on real data. Robot. Auton. Syst. 2015, 74, 122–127. [Google Scholar] [CrossRef]
  11. Chandra, K.P.B.; Gu, D.; Postlethwaite, I. Cubature Kalman Filter based Localization and Mapping. IFAC Proc. Vol. 2011, 44, 2121–2125. [Google Scholar] [CrossRef]
  12. Rotondo, D. Advances in Gain-Scheduling and Fault Tolerant Control Techniques; Springer: Berlin/Heidelberg, Germany, 2018. [Google Scholar]
  13. Watanabe, K.; Pathiranage, C.; Izumi, K. A Fuzzy Kalman Filter aproach to the SLAM problem of nonholonomic mobile robots. In Proceedings of the Third International Conference on Information and Automation for Sustainability, Melbourne, Australia, 4–6 December 2007. [Google Scholar]
  14. Rotondo, D.; Puig, V.; Nejjari, F.; Witezak, M. Automated generation and comparaison of Takagi-Sugeno and polytomic quasi-LPV models. Fuzzy Sets Syst. 2015, 277, 44–64. [Google Scholar] [CrossRef]
  15. Elektra Research Project. Available online: http://adas.cvc.uab.es/elektra/about/ (accessed on 29 August 2022).
  16. Witczak, M. Fault Diagnosis and Fault-Tolerant Control Strategies for Non-Linear Systems; Lecture Notes in Electrical Engineering; Springer: Berlin/Heidelberg, Germany, 2014; Volume 266. [Google Scholar]
  17. Ostertag, E. Mono- and Multivariable Control and Estimation (Linear, Quadratic and LMI Methods); Springer: Berlin/Heidelberg, Germany, 2011. [Google Scholar]
  18. SLAM Toolbox for Matlab. Available online: https://www.iri.upc.edu/people/jsola/JoanSola/eng/toolbox.html (accessed on 29 August 2022).
  19. Mosek Solver. Available online: https://www.mosek.com/ (accessed on 29 August 2022).
  20. Solà, J. Simultaneous Localization and Mapping with the Extended Kalman Filter; UPC: Wallisellen, Switzerland, 2014. [Google Scholar]
Figure 1. Two-wheels bicycle model used as vehicle motion model. { W } is the global world frame and { B } is the local vehicle frame.
Figure 1. Two-wheels bicycle model used as vehicle motion model. { W } is the global world frame and { B } is the local vehicle frame.
Sensors 22 08211 g001
Figure 2. Observation model diagram. { W } is the absolute world frame, { V } is the local vehicle frame, and { S } is the local sensor frame.
Figure 2. Observation model diagram. { W } is the absolute world frame, { V } is the local vehicle frame, and { S } is the local sensor frame.
Sensors 22 08211 g002
Figure 3. Kinematic and dynamic control architecture for an autonomous vehicle proposed in [2].
Figure 3. Kinematic and dynamic control architecture for an autonomous vehicle proposed in [2].
Sensors 22 08211 g003
Figure 4. Vehicle dynamic inputs in the simulation with friction and Gaussian noise.
Figure 4. Vehicle dynamic inputs in the simulation with friction and Gaussian noise.
Sensors 22 08211 g004
Figure 5. Vehicle dynamic state estimation from the simulation with friction and Gaussian noise/disturbances.
Figure 5. Vehicle dynamic state estimation from the simulation with friction and Gaussian noise/disturbances.
Sensors 22 08211 g005
Figure 6. Vehicle kinematic state estimation from the simulation with friction, Gaussian noise, and noisy initialization of landmarks.
Figure 6. Vehicle kinematic state estimation from the simulation with friction, Gaussian noise, and noisy initialization of landmarks.
Sensors 22 08211 g006
Figure 7. Vehicle trajectory at the world map. Up: Simulation with noisy initialization of landmarks. Down: Simulation with zero initialization of landmarks.
Figure 7. Vehicle trajectory at the world map. Up: Simulation with noisy initialization of landmarks. Down: Simulation with zero initialization of landmarks.
Sensors 22 08211 g007
Figure 8. Vehicle kinematic state estimation from the simulation with friction, Gaussian noise and zero initialization of landmarks.
Figure 8. Vehicle kinematic state estimation from the simulation with friction, Gaussian noise and zero initialization of landmarks.
Sensors 22 08211 g008
Table 1. Dynamic model parameters of Tazzari Zero vehicle, which belongs to the Elektra research project [15].
Table 1. Dynamic model parameters of Tazzari Zero vehicle, which belongs to the Elektra research project [15].
Dynamic Model Parameters of Tazzari Zero Vehicle
Par.DescriptionValue
aDistance from CoG to front shaft0.758 m
bDistance from CoG to rear shaft1.036 m
mVehicle mass683 kg
IVehicle inertia561 kg· m 2
C x Tire stiffness coefficient15,000 N rad
C d Vehicle drag coefficient0.5
AVehicle frontal area4 m 2
ρ Air density at 25 °C1.2 kg m 3
μ Friction coefficient tire-groundvariable
Table 2. Installation parameters of the exteroceptive sensor on the Tazzari Zero vehicle.
Table 2. Installation parameters of the exteroceptive sensor on the Tazzari Zero vehicle.
Installation Parameters of LIDAR Sensor
Par.DescriptionValue
sDistance from CoG to sensor on the vehicle longitudinal direction0.3 m
tDistance from CoG to sensor on the vehicle cross direction0.1 m
β Sensor orientation respect to the vehicle longitudinal direction90°
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Vial, P.; Puig, V. Kinematic/Dynamic SLAM for Autonomous Vehicles Using the Linear Parameter Varying Approach. Sensors 2022, 22, 8211. https://doi.org/10.3390/s22218211

AMA Style

Vial P, Puig V. Kinematic/Dynamic SLAM for Autonomous Vehicles Using the Linear Parameter Varying Approach. Sensors. 2022; 22(21):8211. https://doi.org/10.3390/s22218211

Chicago/Turabian Style

Vial, Pau, and Vicenç Puig. 2022. "Kinematic/Dynamic SLAM for Autonomous Vehicles Using the Linear Parameter Varying Approach" Sensors 22, no. 21: 8211. https://doi.org/10.3390/s22218211

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

Article Metrics

Back to TopTop