Calibration of a multi-sensor fusion system for inertial navigation

The use of optimized covariance matrices in Kalman filters, via natural gradient descent, addresses the precision and accuracy issues in navigation systems by dynamically adapting to environmental changes, enhancing the performance of multi-sensor fusion systems.

FR3148472B1Active Publication Date: 2025-04-25SAFRAN SA +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
FR2023004486
Authority / Receiving Office
FR · FR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2023-05-04
Publication Date
2025-04-25
Estimated Expiration
2043-05-04

AI Technical Summary

Technical Problem

Current Kalman filter-based navigation systems face challenges in precision and accuracy due to suboptimal calibration of covariance matrices, which do not account for distribution changes and can lead to convergence difficulties, especially in dynamic environments.

Method used

A navigation assistance process using an extended Kalman filter with optimized covariance matrices through natural gradient descent, where covariance matrices are either fixed before a mission (static mode) or dynamically adapted during the mission (dynamic mode), ensuring improved modeling of uncertainties and precision.

Benefits of technology

Enhances the precision and accuracy of navigation estimates by effectively adapting covariance matrices to changing conditions, improving the performance of multi-sensor fusion systems in both structured and unstructured environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000017_0000
    Figure 00000017_0000
  • Figure 00000017_0001
    Figure 00000017_0001
  • Figure 00000017_0002
    Figure 00000017_0002
Patent Text Reader

Abstract

A navigation aid method comprising a prediction of the position of an agent, said prediction comprising: acquisition of a set of measurements (20) related to the movement of said agent; determination of said position by calibration of an extended Kalman filter applied to said set of measurements (20), said calibration comprising a quantification of a divergence from a current distribution of uncertainties associated with the measurements. Figure for the abstract: Fig. 1
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: Calibration of a multi-sensor fusion system for inertial navigation FIELD OF THE INVENTION

[0001] The present invention relates to the estimation of the position of an agent from a previous position and measurements related to its movement and / or its position. It allows in particular the prediction of the trajectory followed by the agent.

[0002] The inference of the navigation, or movement, of an agent (pedestrian, vehicle, drone, etc.) can typically be done using a Kalman filter merging measurements coming for example from an inertial unit on board or associated with this agent or other sensors such as cameras, Lidar, GPS, odometers (which can measure the speed of the wheels for example), etc. The Kalman filter makes it possible to infer its position, from its last position and the various measurements, but also potentially its speed, its acceleration, etc.

[0003] The Kalman filter estimates, during successive iterations, a navigation state of the agent via matrix equations, therefore linear, by means of noisy measurements provided by these sensors. It assimilates the measurements to a dynamic system governed by linear equations, which is a restrictive limitation and does not allow the behavior of the sensors to be modeled precisely.

[0004] The Extended Kalman Filter (EKF) has been proposed to take into account dynamic systems governed by non-linear equations. This method is notably described in Hargrave PJ, “A tutorial introduction to Kalman filtering”, IEE colloquium on Kalman filters: introduction, applications and future development, IET, 1989, or Terejanu Gabriel A, “Extended Kalman filter tutorial”, University of Buffalo, 2008.

[0005] The extended Kalman filter includes an additional step consisting of linearizing, at each new iteration of the filter, the equations governing the non-linear system at a point in the vector space estimated, typically, during a previous iteration. The matrices resulting from this linearization can thus be used to estimate a new state according to the classical Kalman filter method.

[0006] Extended Kalman filtering is commonly used for various measurement fusion problems, for example to merge inertial measurements with GPS, camera, lidar, odometer measurements, etc. Examples include Barrau A, “Non-linear State error based extended Kalman filters with applications to navigation”, doctoral thesis, Mines Paris-tech, 2015, or Potokar ER, Norman K, Mangelson JG “Invariant extended Kalman filtering for un- derwater navigation”, IEEE Robotics and Automatic Letters, 6(3), 5792-5799, 2021.

[0007] Other methods than Kalman filters exist for performing measurement fusions and enabling the estimation of a future state (trajectory in particular), but they tend to be generally more computationally expensive, which can prove problematic for real-time estimation.

[0008] The performance, in terms of precision and accuracy of the estimation, of the Kalman filter (classical or extended) relies to a significant extent on the calibration of the covariance matrices modeling the uncertainty associated with the different sensors.

[0009] We can cite the article Abbeel P. et al., “Discriminative Training of Kalman Filters”, in Robotics: Sciences and Systems, vol. 2, p. 1, 2005 which describes several algorithms for learning covariance parameters for extended Kalman filters, from a history of trajectories.

[0010] It is also possible to provide that the covariance matrices are dynamically adapted by a neural network, the latter being trained on the history of the trajectories, as for example described in Brossard M., Barrau A., Bonnabel S., “Al-IMU Dead-Reckoning” in IEEE Transactions on Intelligent Vehicles, 5(4), 585-595, 2020.

[0011] However, the optimization of covariance matrices generally encounters convergence difficulties, in particular because they do not take into account the distribution changes induced by the updating of the covariances.

[0012] Furthermore, some optimization techniques do not respect the constraint that the covariance matrices must necessarily be positive. Summary of the invention

[0013] There is therefore a need to improve the current proposals of the state of the art. The invention thus aims in particular to improve the performance of the calibration of a multi-sensor fusion system for inertial navigation.

[0014] In particular, according to a first aspect, the present invention can be implemented by a navigation assistance method comprising a prediction of a position of an agent, said prediction comprising: - acquisition of a set of measurements linked to the movement of said agent; - determination of said position by calibration of an extended Kalman filter applied to said set of measurements, said calibration comprising a quantification of a divergence from a current distribution of uncertainties associated with the measurements.

[0015] The invention may also retain a navigation assistance method comprising a prediction of a position of an agent comprising steps of: - acquisition of a set of measurements linked to the movement of said agent, and, - determination of said position by applying an extended Kalman filter to said set of measurements, said extended Kalman filter being parameterized by at least one covariance matrix determined by optimizing a given optimization criterion by natural gradient descent.

[0016] Modifying the covariance matrix allows for modifying the modeling of uncertainties on the measurements. Modifying the modeling of uncertainties allows for modifying the way in which the extended Kalman filter inferring navigation weights the measurements relative to the a priori estimated state.

[0017] According to preferred embodiments, the invention comprises one or more of the following features which can be used separately or in partial combination with each other or in total combination with each other: - said quantification is used to calculate a natural gradient allowing the distribution of uncertainties to be updated. The natural gradient is a probabilistic gradient that allows us to quantify the variation in the distribution of a criterion, regardless of how this distribution is parameterized. - said at least one covariance matrix, R, is factorized in the form R=L.LT where L is a second matrix, and in which the optimization is performed on said at least one second matrix; - said optimization takes place upstream of the mission of said agent, so that said at least one covariance matrix is ​​fixed during said mission; - said natural gradient descent is performed on said at least one second matrix - said natural gradient is expressed by: [Math.l] VC(L)=ULrgL

[0018] in which dL represents the Euclidean gradient of said optimization criterion, C, as a function of said at least one covariance matrix, R, and VC(L) represents said natural gradient. - said optimization takes place during said mission so that said at least one covariance matrix is ​​dynamically adapted according to said measurement set; - said optimization is carried out by means of an adaptation module taking as input said set of measurements and whose parameters are determined by said natural gradient descent; - said natural gradient is approximated by the expression:

[0019]

[0020]

[0021]

[0022]

[0023]

[0024]

[0025]

[0026]

[0027]

[0028]

[0029]

[0030] [Math.2] in which is the Euclidean gradient of said optimization criterion C as a function of said at least one covariance matrix, R, ât represents the Euclidean gradient of said at least one second matrix, L, with respect to said parameters, 0, and VC( B) represents said natural gradient Another aspect of the invention relates to a computer program comprising instructions for implementing a method as previously described. Another aspect of the invention relates to a device for predicting a position of an agent, comprising a processor adapted for acquiring a set of measurements linked to the movement of said agent and for implementing an extended Kalman filter adapted for determining said position from said set of measurements, and a calibration device adapted for parameterizing at least one covariance matrix of said extended Kalman filter, determined by optimizing a given optimization criterion by natural gradient descent. According to preferred embodiments, this device may comprise one or more of the features previously mentioned in relation to the method, which may be used separately or in partial combination with each other or in total combination with each other. Other characteristics and advantages of the invention will appear on reading the following description of a preferred embodiment of the invention, given by way of example and with reference to the appended drawings. BRIEF DESCRIPTION OF THE FIGURES The accompanying drawings illustrate the invention: [Fig.l] schematically illustrates a high-level functional architecture of a trajectory prediction device. [Fig.2] schematically represents a high-level functional architecture of a calibration device according to one embodiment. [Fig.3] schematically represents a high-level functional architecture of a calibration device according to another embodiment. [Fig.4] schematically represents a high-level functional architecture of an optimization module according to one embodiment. [Fig.5] illustrates examples of performance using different trajectory prediction methods. DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION According to one embodiment, the method described relates to the inference of the inertial navigation of an agent (pedestrian, vehicle or terrestrial, aerial or marine drone). This agent is typically a mobile carrier, i.e. an individual or a system (vehicle, drone, etc.) carrying or embarking a device enabling the proposed method to be implemented.

[0031] Thus, the agent is equipped with one or more inertial measurement units (IMU or UMI for "Inertial Measurements Unit") as well as, possibly, one or more other sensors such as a positioning sensor (GPS, etc.), an odometer, a camera, a lidar, etc.

[0032] Inertial measurement units, or inertial measurement units, are equipment used in navigation and are capable of integrating the movements of a mobile (acceleration and angular velocity) to estimate its orientation (roll, pitch and heading angles), its speed and its position.

[0033] [Fig.l] illustrates a high-level functional architecture of a trajectory prediction device.

[0034] This device 10 acquires a set of measurements 20 linked to the movement of said agent. Depending on a state at a time (or iteration) t, the prediction device can infer a state 21 at a following time (or iteration) t+1 depending on the measurements 20 acquired. This state can represent the position of the agent at this following time, or iteration, and thus make it possible to describe the trajectory of the agent iteratively.

[0035] In [Fig.l], three arrows representing measurements 20 are shown, but it is of course possible to take into account a different number of input measurements.

[0036] The trajectory prediction device 10 comprises a multi-sensor fusion system 11, which may for example be an extended Kalman filter.

[0037] This extended Kalman filter applied to the set of measurements 20 makes it possible to merge them to estimate a position of the agent at the following iteration.

[0038] The extended Kalman filter 11 is parameterized by the covariance matrices 23 of the uncertainties associated with the different measurements. We therefore typically have a covariance matrix per measurement source, i.e. per sensor. These covariance matrices are determined by a calibration device 13.

[0039] For this calibration, the device accumulates the trajectory data in a trajectory database 12 (or trajectory history). The trajectory data can be recovered at the output of the Kalman filter as illustrated in [Fig.l], but they can also be accumulated at the input of the filter or at any other time during the fusion by the filter.

[0040] According to another embodiment, the trajectory database 12 is previously constituted and may not need to be enriched by the trajectories estimated by the extended Kalman filter 11. In other words, the history is based on previous movements, or missions, of the agent or other agents, and does not take into account the behavior of the agent during the current mission.

[0041] The trajectory data stored in the database 12 may include the measurements acquired by the sensors, 20, matrices and vectors calculated by the extended Kalman filter 11 (these matrices and vectors can typically be Jacobian matrices and innovation vectors).

[0042] The calibration device 13 determines the covariance matrix(s) 23 using trajectory data 22 retrieved from the database 12.

[0043] In a first embodiment, the calibration can be carried out statically. In this mode, the calibration device 13 only takes as input the trajectory data 22 from the history 12.

[0044] As illustrated in [Fig.2], the calibration device 13 comprises an optimization module 131 which takes as input the historical trajectory data 22 and provides an optimized quantity 23. Generally speaking, the optimization block has the role of optimizing a quantity according to a given criterion. In the present case, the optimized quantity is the covariance matrix or matrices.

[0045] As seen previously, a matrix per measurement can be provided, so that the optimization module can implement an optimization algorithm for each of the acquired measurements 20.

[0046] The optimization of the covariance matrices 23 can be carried out upstream of the navigation phase, for example before the agent leaves for the mission. Once in the mission phase, the matrices remain fixed until the mission is completed or an operator has triggered a new matrix calibration phase. This is why, in this embodiment, the calibration of the covariance matrices is described as static.

[0047] In a second embodiment, the calibration of the covariance matrices of the sensors is carried out dynamically, that is to say by taking into account the set of measurements 20 acquired during the mission.

[0048] In other words, the progress of the current mission influences the correlation matrices 23 which allow the Kalman filter to infer a future position 21.

[0049] To do this, as illustrated in [Fig. 3], the calibration device 13 comprises an adaptation module 132 designed to predict the covariance matrices 23 from the set of acquired measurements 20 and meta-parameters 133 (or parameters) determined by the optimization module 131 from the historical trajectory data 22.

[0050] In other words, in this embodiment, the adaptation takes place during the agent's mission, so that the covariance matrix is ​​dynamically adapted according to the measurement set.

[0051] This adaptation module 132 can implement a function therefore making it possible to determine a covariance matrix as a function of this input data.

[0052] This function can for example be implemented by a mechanism machine learning. For example, the adaptation module 132 may be a neural network. In particular, it may be a convolutional neural network (CNN), as for example described in Brossard M., Barrau A., and Bonnabel S. “AI-IMU Dead-reckoning”, previously cited.

[0053] All the acquired measurements 20 are provided to the input layer of this neural network. The latter generates a covariance matrix 23 on its output layer.

[0054] In this embodiment, the optimization module 131 may operate in a similar manner to the first embodiment but instead of optimizing a covariance matrix, it optimizes a set of meta-parameters, or parameters, of the neural network. These meta-parameters include in particular the synaptic weights of the neural network which form the predictive model represented by the neural network.

[0055] The calibration device 13 can operate in two phases.

[0056] In a first phase, the optimization module 131 determines the parameters 133 of the neural network from the historical trajectory data 22.

[0057] This first phase can be implemented upstream of the mission, that is to say before the agent's departure.

[0058] Once on mission, a second phase can be triggered during which the parameters of the neural network 132 are fixed until the mission is completed or until an operator has triggered a new parameter optimization phase (using new historical trajectory data, collected during the mission).

[0059] In this second phase, the calibration device 13 takes as input the set of measurements 20 acquired and dynamically generates the covariance matrices 23, by means of the neural network 132 configured by the parameters 133 set during the first upstream phase. Thus, the covariance matrices change according to the acquired measurements 20. This is why, in this embodiment, the calibration of the covariance matrices is described as dynamic.

[0060] Through the phase of optimizing its parameters upstream of the mission phase, the neural network 132 has learned to calculate the covariance matrices 22 which make it possible to obtain the best performances in terms of navigation inference, in the sense of a criterion making it possible to optimize its parameters.

[0061] The first embodiment, based on static calibration, can be used in an environment that changes relatively little, typically for short navigations in a structured environment. Conversely, it is preferable to use the second embodiment, based on dynamic calibration, when the environment can vary greatly during navigation, typically for na- long journeys or in unstructured environments.

[0062] Among the causes of environmental variability, we can cite: - Variation in weather conditions during navigation can modify the uncertainty associated with certain sensors (cameras, in particular) - The geographical environment may present more or fewer points of interest, which modifies the density of the mapping obtained with the Lidar and / or the cameras; - The GPS signal may be degraded depending on the areas crossed.

[0063] The calibration device 13 can calibrate a set of covariance matrices 23 which parameterize the extended Kalman filter 11. A covariance matrix can be determined for each measurement of the set of measurements 20 acquired by the trajectory prediction device 10.

[0064] The following description concerns a covariance matrix. It is understood that this described method can be repeated for all the sensors.

[0065] We denote by R the covariance matrix associated with a given sensor. This covariance matrix can be calibrated as described previously in a static or dynamic manner.

[0066] Since the matrix R is a covariance matrix, it must be symmetrical and positive.

[0067] In order to ensure the positivity and symmetry of this covariance matrix, we factorize the matrix R so that R=L.LT where the symbol T indicates the matrix transposition.

[0068] This factorization can for example be carried out by Cholesky factorization, but other methods are available in the state of the art. In the case of a Cholesky factorization, this matrix L is a lower triangular matrix, but the method described is more general and can be applied without imposing such a constraint on the matrix L.

[0069] In the static embodiment, illustrated by [Fig.2], the optimization module 131 determines, by optimization, the matrix L. The calibration device 13 can then directly determine and provide the covariance matrix R by R=L.LT to the extended Kalman filter 11.

[0070] In the dynamic embodiment, illustrated by [Fig. 3], the optimization module 131 determines the parameters 133, denoted 0, of the neural network 132. This neural network then provides, in the mission phase, the matrix L(x, 0), where x represents the acquired measurements. The calibration device 13 can then directly determine and provide the covariance matrix R by R=L(x, 0).L(x, 0)T to the extended Kalman filter 11.

[0071] The optimization module 131a therefore aims to optimize a matrix L according to a certain criterion C.

[0072] This criterion can be any.

[0073] It may for example be a likelihood of the matrix L, in particular a log-likelihood, as for example described in the article by Abbeel P. et al, “Dis-criminative Training of Kalman Filters” previously cited.

[0074] However, the proposed method can be based on different criteria, this not depending on the criterion to be optimized as such.

[0075] The optimization of criterion C can be carried out by a classic gradient descent method.

[0076] The gradient algorithm, also called gradient descent algorithm, designates an iterative optimization algorithm, where, at each iteration, we seek to improve the current solution by moving in a direction opposite to the gradient so as to decrease the criterion to be minimized. The gradient algorithm is also known as the steepest descent algorithm because the gradient is the slope of the linearized function at the current point and is therefore, locally, its steepest slope (a notion which depends on the scalar product).

[0077] The gradient descent algorithm is extensively described in the scientific literature. The corresponding Wikipedia page can be consulted as an example and entry point:

[0078] http s: / / fr. wikipedia. org / wiki / Algorithme_du_gradient

[0079] https: / / en.wikipedia.org / wiki / Gradient_descent

[0080] [Fig.4] illustrates a functional view of the optimization module 131.

[0081] The optimization module 131 takes as input the historical trajectory data 22, from which a module 134 calculates a gradient VC(V), C being the criterion to be minimized, and V being a quantity for which the value minimizing this criterion C is sought. This value V is referenced 135 in [Fig.4] and it can be the matrix L or the parameters 0 of the neural network 132.

[0082] Thus, in a static embodiment where one seeks to optimize the matrix L, the optimization module 135 iteratively operates the natural gradient descent:

[0083] [Math.3] L^L-aAVC(L)

[0084] In a dynamic embodiment, where the aim is to optimize the parameters 0, 133, of the neural network, the optimization module 135 iteratively operates the natural gradient descent:

[0085] [Math.4] 3^6-aAVC(d)

[0086] These operations (depending on the embodiments) are repeated as indicated in FIG. 4. Thus, following the calculation of the gradient VC(V) by the functional block 134 (V designating L or 9 depending on whether we are in the static or dynamic embodiment), this gradient is multiplied by a descent step a. This descent step is a parameter that can be fixed beforehand. The circle, in the figure, illustrates the operation V - a VC( V), the result of which provides a new value of the quantity V at the following iteration. This new value is reintroduced at the input of gradient calculation block 134 in order to provide a new iteration.

[0087] Conventionally, this iterative process ends when an optimization criterion is reached, that is to say when the criterion reaches a single determined value or when the gradient no longer evolves sufficiently (VC(V) is lower than another threshold), or when a sufficient number of iterations have been carried out, etc.

[0088] The gradient VC( V ) could be calculated using a Euclidean gradient. This Euclidean gradient can be written as 2L, or: - in static mode: . - in dynamic mode:

[0089] However, this Euclidean gradient does not allow to take into account the change of distribution induced by the update of the sensor covariance matrix. This leads to difficulties in convergence of the gradient descent, and to a difficult adjustment of the descent step a.

[0090] Strategies have been proposed to improve gradient descent, such as, for example, the “Adam” mechanism for neural networks. This mechanism is described, in particular, in the seminal article: Kingma, DP, B A. J, “Adam: A method for stochastic optimization”, 2014, arXiv: 1412.6980.

[0091] However, these mechanisms do not allow all the problems to be resolved and, in particular, the adjustment of the descent step remains delicate.

[0092] It is proposed to perform a gradient descent based on the natural gradient, instead of the Euclidean gradient.

[0093] Natural gradient descent makes it possible to take into account the change in distribution induced by the change in covariance R=L.LT. In particular, it makes it possible to take into account that the parametric space in which optimization is sought is not necessarily a Euclidean space but, more generally, a Riemann space.

[0094] The natural gradient and its use for the optimization of a criterion C by gradient descent is notably described in the article by Amari S., “Natural Gradient Works Efficiently in Learning”, Neural Computation, 10(2), 251-276, 1998, or in the article Amari, Shun'ichi (1983). “A foundation of information geometry”. Electronics and Communications in Japan. 66 (6): 1-10. doi:10.1002 / ecja.4400660602

[0095] The natural gradient makes it possible to quantify the divergence (i.e. a non-symmetrical distance, such as the Kullback-Leibler divergence) with respect to the current distribution of uncertainties associated with the sensor, when an infinitesimal variation is applied to the quantity considered (the matrix L or the 0 parameters of the neural network).

[0096] To calculate the natural gradient with respect to V, parameterizing a probability law AjV) (typically, a centered Gaussian law parameterized by its covariance matrix), we calculate the Kullback-Leibler divergence between the law A)V) ct + , where ÔV corresponds to a variation of V; this divergence is noted

[0097] [Math.5] ÆL(X|V' + 5V)|| / >-) )

[0098] The development limited to the second order of this divergence makes it possible to reveal a scalar product ( <5V]ô V ):

[0099] [Math.6] KL^V+ÔV^V))^ < r V

[0100] The scalar product ( ) is the Fisher information metric (FIM). It is this scalar product which allows the natural gradient to be calculated: it is noted, between 5V and ÔV' by: { ÔVpV' )

[0101] By considering a cost function C(VL the natural gradient VC(V) of C with respect to V is then identified by showing the scalar product { | ) in the development limited to order 1 of C(V + ÔV):

[0102] [Math.7] C(V + ÔV) *C(V) + ( VC(V)|ôV ) v.

[0103] The difficulty inherent in the natural gradient descent method is the difficulty in determining its expression, and in particular in determining the Fischer information matrix.

[0104] In particular, in the present case, a difficulty is to determine the expression of the natural gradient with respect to the matrix L or with respect to the parameters of the neural network.

[0105] In the static embodiment, it is proposed to express the natural gradient VC(L) by the expression:

[0106] [Math.8] ^ClL^jLL^L

[0107] âC is the Euclidean gradient of the criterion C to be minimized with respect to the co- matrix variance R.

[0108] In the dynamic embodiment, the natural gradient of the criterion C with respect to the parameters 0 of the neural network are difficult to calculate analytically, because the expression of the neural network L(0) is complex to manipulate to carry out calculations.

[0109] We can decompose the Euclidean gradient 2L using the chain rule: dd

[0110] [Math.9] ac _ dC dL df) dL ' d0

[0111] H is the Euclidean gradient of the matrix L with respect to the 0 parameters of the neural network. This gradient is calculated automatically by the back-propagation algorithm in the neural network 132. It is thus directly accessible and usable.

[0112] To approximate the natural gradient, we can fix the gradient VC( 6 ) by replacing the term with the expression of VC(L) given above for the static embodiment.

[0113] We thus obtain an approximate expression of the natural gradient for the dynamic case:

[0114] [Math. 10]

[0115] [Fig.5] illustrates the convergence performance of the method for the static mode (covariance matrix R fixed along the mission).

[0116] The figure shows 4 situations of evolution of criterion C, evaluated by its negative log-likelihood (nll for "negative log likelihood" in English) on the abscissa, as a function of a number of iterations.

[0117] Curve Ci shows the progressive minimization of criterion C with respect to matrix L by a Euclidean gradient descent.

[0118] Curve C2 shows the progressive minimization of criterion C with respect to matrix L by a natural gradient descent VC( L ).

[0119] We see that curve C2 descends lower than curve Ci, which denotes a better minimization of the criterion by natural gradient descent.

[0120] Curves C3, C4 illustrate the progressive minimization of criterion C with respect to the covariance matrix R, respectively by a natural gradient descent and by a Euclidean gradient descent. We note here again that curve C3 descends lower than curve C4, which reflects a better minimization of criterion C using a natural gradient.

[0121] The proposed method differs from the state of the art, firstly, by the use of a natural gradient, in the gradient descent mechanism, instead of the gradient.

[0122] As described previously, this natural gradient descent can be used in a static embodiment to directly obtain a matrix L which makes it possible to obtain the covariance matrix R for the Kalman filter, and in a dynamic embodiment, to obtain parameters of a neural network which makes it possible to obtain this covariance matrix.

[0123] The method also proposes to decompose this covariance matrix R into a product L.LT and to carry out the optimization on this matrix L, in order to be able to guarantee the positivity of the covariance matrix R.

[0124] According to another embodiment, the optimization can be carried out directly on the covariance matrix R, both in static mode and in dynamic mode.

[0125] In order to respect the requirement of positivity of the covariance matrix R, a monitoring mechanism can be implemented. In particular, a monitoring mechanism on the eigenvalues ​​can be put in place, but this increases the computation time. In this case, the following formulas are proposed:

[0126] In static mode:

[0127] [Math. 11] R^Ra VC(R)

[0128] With VC(R) fixed to the natural gradient of the criterion C with respect to the covariance matrix R, such that

[0129] [Math. 12] VC(R)=R^R

[0130] where is the Euclidean gradient of C with respect to the covariance matrix R.

[0131] In dynamic mode, the covariance matrix R=R(x; 0) can be given by a neural network with parameters 0. We optimize these parameters according to a natural gradient descent, as indicated previously:

[0132] [Math. 13] 3^3-aAVC(3)

[0133] As seen previously, VC( 3) can be an approximation of the natural gradient.

[0134] With the same approach as previously, we can in fact replace the term dC dL of the expression of the natural gradient by the expression of VC{L) given above for the static embodiment. We thus obtain an approximate expression of the natural gradient for the dynamic case:

[0135] [Math. 14] VC(3) = ^C(R)^ = k 7 ' ' dtf dK def

[0136] The method therefore also proposes original expressions of the natural gradient, according to different embodiments, in the specific case of the optimization of a covariance matrix for Kalman filter. Furthermore, in the dynamic case, an approximation of this natural gradient is proposed.

[0137] Of course, the present invention is not limited to the examples and the embodiment described and shown, but is defined by the claims. It is in particular susceptible of numerous variants accessible to those skilled in the art.

Claims

Claims

1. A method for assisting navigation comprising a prediction of a position of an agent, said prediction comprising: the acquisition of a set of measurements (20) linked to the movement of said agent; the determination of said position by calibrating an extended Kalman filter applied to said set of measurements (20), said calibration comprising a quantification of a divergence with respect to a current distribution of the uncertainties associated with the measurements in which said extended Kalman filter is parameterized by at least one covariance matrix determined by optimizing a given optimization criterion by natural gradient descent, said at least one covariance matrix, R, is factorized in the form R=L.LT where L is a second matrix, and wherein the optimization is performed on said at least one second matrix, and wherein said natural gradient is determined as a function of a quantity ~LLT^L in which is the Euclidean gradient of said optimization criterion C as a function of said at least one covariance matrix, R.

2. Method according to the preceding claim, in which said quantification is used to calculate a natural gradient making it possible to update the distribution of uncertainties.

3. Method according to the preceding claim, in which said optimization takes place upstream of the mission of said agent, so that said at least one covariance matrix is ​​fixed during said mission.

4. Method according to the preceding claim, wherein said natural gradient descent is performed on said at least one second matrix.

5. Method according to the preceding claim in which said natural gradient is expressed by: [Math. 15] VC(L)=1_LLT^L in which and VC(L) represents said natural gradient.

6. A method according to claim 1 or 2, wherein said optimization takes place during said mission such that said at least one covariance matrix is ​​dynamically adapted as a function of said set of measure (20).

7. Method according to the preceding claim, in which said optimization is carried out by means of an adaptation module (132) taking as input said set of measurements (20) and the parameters of which are determined by said natural gradient descent.

8. Method according to the preceding claim, wherein said natural gradient is approximated by the expression: [Math. 16] VC(S) in which represents the Euclidean gradient of said at least one second matrix, L, with respect to said parameters, &, and VC( 6 ) represents said natural gradient

9. Computer program comprising instructions for implementing a method according to one of the preceding claims.

10. Device (10) for predicting a position of an agent, comprising a processor adapted for acquiring a set of measurements (20) related to the movement of said agent and for implementing an extended Kalman filter (11) adapted for determining said position by calibrating an extended Kalman filter applied to said set of measurements (20), said calibration comprising a quantification of a divergence with respect to a current distribution of the uncertainties associated with the measurements in which said extended Kalman filter is parameterized by at least one covariance matrix determined by optimizing a given optimization criterion by natural gradient descent, said at least one covariance matrix, R, is factorized in the form R=L.LT where L is a second matrix, and in which the optimization is carried out on said at least one second matrix, and in which said natural gradient is determined as a function of a quantity ld£.£T⣣ in which is the Euclidean gradient of said 2 dA dR optimization criterion C as a function of said at least one covariance matrix, R.