The present application claims the benefit of priority to Korean Patent Application No. 10-2023-0070904 filed on Jun. 1, 2023, in the Korean Intellectual Property Office. The aforementioned application is hereby incorporated by reference in its entirety.
The present disclosure relates to state estimation of an object, and more particularly, to a method and apparatus of estimating a current state of an object based on state information and observation information for dynamically replicating the object.
The problem of state estimation through a noisy observation in a dynamic system having states is an important field in signal processing technology. Problems such as target tracking through radar, surrounding environment detection for an autonomous driving system, relative position measurement of a driving object, and simultaneous localization and mapping (SLAM) of a robot may be modeled as state estimation problems in the dynamic system. Here, a Kalman filter is a representative algorithm for recursive state estimation in a linear dynamic system with additive white gaussian noise (AWGN). The Kalman filter estimates a state by repeating state prediction using information of the dynamic system and prediction correction through a noisy observation. For recursive state estimation of a general dynamical system, a variation of Kalman filter, including an extended Kalman filter for a nonlinear dynamical system, has been proposed.
In addition, a recursive state estimation algorithm using a KalmanNet that uses model-based deep learning has been proposed as a method for reducing state estimation performance degradation due to model mismatch. The KalmanNet performs state estimation by replacing a Kalman gain matrix calculation, which is affected by model mismatch, with an artificial neural network (deep neural network (DNN)) during a calculation process of the Kalman filter. This approach may achieve the state estimation performance of the Kalman filter without model mismatch through a smaller-scale neural network and a smaller number of data than when the artificial neural network is trained through data-only learning, which is a conventional deep learning method.
However, the KalmanNet learns the effects of state change noise, observation noise, and nonlinear noise that affect the Kalman gain matrix all at once without separating them. Therefore, the KalmanNet has difficulty in learning an accurate Kalman gain matrix because it cannot separate the effects of noise and the effects of nonlinearity in a dynamic system having a large nonlinearity.
In order to solve the foregoing problems, the development of an algorithm that can learn an accurate Kalman gain matrix even in nonlinear dynamic systems is required.
(Patent Document 1) Korean Patent Registration No. 10-18295600000
An aspect of the present disclosure is contrived to solve the foregoing problems, and an aspect of the present disclosure is to provide an apparatus and method of estimating a current state of an object.
In addition, an aspect of the present disclosure is to provide a state estimation apparatus to which a deep learning-based Split-KalmanNet structure of separating and training the effect of a source of noise on a Kalman gain matrix is applied, and a method therefor.
In order to achieve the foregoing objectives, there is provided a state estimation apparatus of estimating a current state of an object based on state information and observation information for dynamically replicating the object according to an embodiment of the present disclosure, the state estimation apparatus including an input unit that receives the observation information, and a current state estimation unit that generates current state estimation information through the observation information, wherein the current state estimation unit includes a prediction information generation unit that generates state prediction information through inputting past state estimation information obtained by delaying the current state estimation information by one time unit into a previously prepared state prediction model, and a prediction information correction unit that calculates a Kalman gain matrix associated with a degree of correction of the state prediction information through at least one artificial neural network, and corrects the state prediction information through the observation information and the Kalman gain matrix to generate the current state estimation information.
In order to achieve the foregoing objectives, there is provided a state estimation method of estimating a current state of an object based on state information and observation information for dynamically replicating the object according to an embodiment of the present disclosure, the state estimation method including a process of receiving the observation information, and a process of generating current state estimation through the observation information, wherein the process of generating the current state estimation information includes a process of generating state prediction information through inputting past state estimation information obtained by delaying the current state estimation information of the object by one time unit into a previously prepared state prediction model, and a process of calculating a Kalman gain matrix associated with a degree of correction of the state prediction information through at least one artificial neural network, and correcting the state prediction information through the observation information and the Kalman gain matrix to generate the current state estimation information.
According to an aspect of the present disclosure as described above, the present disclosure provides a state estimation apparatus to which a Split-KalmanNet structure through model-based deep learning is applied, and a method therefor, thereby having an effect of providing state estimation performance that is more robust to model mismatch compared to a KalmanNet.
In addition, in a process of learning elements constituting a Kalman gain matrix affected by model mismatch, noise from a noise source that is dominantly affected by the elements is independently considered, thereby obtaining an advantage of providing better state estimation performance compared to a KalmanNet method in a system having a large difference in a noise level from a noise source or having a large nonlinearity.
The detailed description of the present disclosure described below refers to the accompanying drawings, which show, by way of illustration, specific embodiments to carry out the present disclosure. These embodiments are described in sufficient detail to enable those skilled in the art to carry out the present disclosure. It should be understood that various embodiments of the present disclosure are different from one another but are not necessarily mutually exclusive. For example, specific shapes, structures and characteristics described herein may be implemented in other embodiments without departing from the concept and scope of the present disclosure in connection with one embodiment. In addition, it should be understood that the locations or arrangement of individual elements within each disclosed embodiment may be changed without departing from the concept and scope of the present disclosure. Therefore, the following detailed description is not to be taken in a limiting sense, and the scope of the present disclosure is defined only by the appended claims along with the entire scope of equivalents thereof, if properly described. The similar reference numerals refer to the same or similar functions in various aspects.
Elements according to the present disclosure may be elements that are defined not by physical properties but by functional properties, and thus each element may be defined by its function. Each element may be implemented as hardware and/or a program code and a processing unit for performing a function thereof, and functions of two or more elements may also be included and implemented in a single element. Accordingly, it should be noted that names of elements in embodiments to be described below are given to imply representative functions performed by each of the elements rather than to physically distinguish each of the elements, and the technical spirit of the present disclosure is not limited by the names of the elements.
Hereinafter, preferred embodiments of the present disclosure will be described in more detail with reference to the drawings.
Referring to
Here, the object may be, for example, a target object tracked through radar, a driving object for autonomous driving, a mobile robot, or the like, and the system shown in
The monitoring apparatus 100 includes a state update unit 102 and an observation information generation unit 104, and the current state estimation unit of the state estimation apparatus 110 includes a prediction information generation unit 112 and a prediction information correction unit 114.
The state update unit 102 receives past (time t−1) state information xt−1 of an object to output current (time t) state information xt. Here, the current state information of the object xt may be determined decisively by the past state information or determined randomly by a specific probability density function P(xt|xt+1).
The observation information generation unit 104 receives the current state information xt of the object to output observation information yt observed in a current state. Here, the observation information yt may be determined decisively depending on the current state or determined randomly by a specific probability density function P(yt|xt). In this manner, the monitoring apparatus 100 acquires state information and observation information, and dynamically replicates an object based on the state information and the observation information.
The prediction information generation unit 112 receives past state estimation information {circumflex over (x)}t−1 obtained by delaying the current state estimation information by one time unit to output current state prediction information {circumflex over (x)}t|t−1 and observation prediction information yt|t−1. The current state prediction information is information predicting a current state based on the past state estimation information, and the observation prediction information is information observed in the predicted current state.
The prediction information correction unit 114 receives current state prediction information xt|t−1 and observation prediction information yt|t−1 that are output from the prediction information generation unit 112, and observation information yt output from the observation information generation unit 104 to output current state estimation information {circumflex over (x)}t of the object.
In this manner, the state estimation apparatus 110 estimates a current state of an object through correcting state prediction information predicted by itself using observation information generated by the monitoring apparatus 100. Hereinafter, the state estimation apparatus 110 will be described in more detail with reference to
Referring to
The prediction information generation unit 112 generates state prediction information of an object using a state prediction model, and generates observation prediction information using an observation prediction model. Equation 1 below represents a state prediction model, and Equation 2 below represents an observation prediction model.
Functions f(·) and h(·) in Equations 1 and 2 may be determined as a differentiable function, and may be determined by prior knowledge of the monitoring apparatus 100 of (
(
In addition, the prediction information generation unit 112 calculates a Jacobian matrix, Ht of the observation prediction model function h(·), which is a matrix necessary for calculating a Kalman gain matrix. The Jacobian matrix is given by Equation 3 below.
The Jacobian matrix Ht according to Equation 3 is a matrix in which a derivative function of the observation prediction model function h(·) is evaluated in the current state prediction information {circumflex over (x)}t|t−1.
The state estimation information calculation unit 114-2 modifies the state prediction information {circumflex over (x)}t|t−1 calculated by the prediction information generation unit 112 according to Equation 4 below.
That is, in order to obtain a current state estimation information {circumflex over (x)}t of an object, the state prediction information {circumflex over (x)}t|t−1 acquired from the prediction information generation unit 112 is corrected by using a vector obtained by multiplying a vector corresponding to a difference between the observation information yt acquired from the monitoring apparatus 100 of t(Θ1,Θ2,Ht) from acquired the Kalman gain matrix calculation unit 114-1. Here, the Kalman gain matrix is associated with a degree of correction of the state prediction information.
Meanwhile, the Kalman gain matrix calculation unit 114-1 may calculate a Kalman gain matrix using a covariance matrix corresponding to a second moment of the probability density functions P(xt|xt−1) and P(yt/xt). However, the covariance matrix of the probability density function depends not only on noise generated in a process of updating a state of the monitoring apparatus 100 and generating observation information, but also on the state and model mismatch between observation prediction model functions f(·) and h(·) and thus it is difficult to accurately know the covariance matrix, and an inaccurate covariance matrix deteriorates the state estimation performance of the state estimation apparatus 110.
Accordingly, the Kalman gain matrix calculation unit 114-1 according to an embodiment of the present disclosure acquired the Kalman gain matrix using an artificial neural network. The Kalman gain matrix calculation unit 114-1 calculates a Kalman gain matrix using a Jacobian matrix Ht acquired from two artificial neural networks and the prediction information generation unit 112.
In particular, the Kalman gain matrix calculation unit 114-1 calculates a Kalman gain matrix through output values of two artificial neural networks trained to separate the effects of a mismatch between the state prediction model and the observation prediction model, noise in the state prediction information acquired from the state prediction model, and noise in the observation prediction information acquired from the observation prediction model. That is, the Kalman gain matrix is calculated as a product of a Jacobian matrix of the observation prediction model and two different matrices, which are output values of at least two artificial neural networks. In particular, assuming that the output values of the two artificial neural networks constituting the Kalman gain matrix calculation unit 114-1 are t1(Θ1) and
t2(Θ2), the Kalman gain matrix is calculated as shown in Equation 5 below. Here, Θ1 and Θ2 represent parameter values of the two artificial neural networks.
As can be seen from Equation 5, in an embodiment of the present disclosure, the elements of the Kalman gain matrix may be trained using artificial separate neural networks, thereby providing, through this structure, compared to the KalmanNet, which learns the Kalman gain matrix at once, better state estimation performance in a system having a large difference in a noise level from a noise source or having a large nonlinearity.
In order to assist in understanding a method of calculating a Kalman gain matrix in a Split-KalmanNet according to an embodiment of the present disclosure, an architecture of calculating a Kalman gain matrix in a Kalman filter will be described as follows. A Kalman gain matrix Kt in a general Kalman filter is calculated by Equation 6 to Equation 8 below.
The calculation of Σt|t−1 in Equation 7 requires a covariance matrix of a probability density function P(xt|xt−1) that describes the randomness of a state change, and the calculation of St in Equation 8 requires a covariance matrix of a probability density function P(yt|xt) that describes the randomness of observation information. Accordingly, the Split-KalmanNet according to an embodiment of the present disclosure replaces it with an artificial neural network. In addition, as can be seen in Equation 5, the Split-KalmanNet maintains an architecture that combines the elements of the Kalman gain matrix in the Kalman filter through matrix multiplication to directly reflect the effect of each covariance matrix.
The artificial neural network constituting the Kalman gain matrix calculation unit 114-1 may use, for example, a recurrent neural network (RNN), and may use various other architectures. A recurrent neural network has a capability of remembering past information input into the neural network through an internal state of the neural network. The matrices Σt|t−1 and St used to calculate the Kalman gain matrix may be interpreted as a state at a specific time t, and this state changes at each discrete time according to Equation 9 to Equation 11 below.
Here, and R represent the covariance matrices of probability density functions P(xt/xt−1) and P(yt|xt), respectively. Furthermore, F represents a matrix in which a derivative function of the state prediction model f(·) is evaluated at {circumflex over (x)}xt−1, which is a past estimation state. Therefore, in an embodiment of the present disclosure, a recurrent neural network having an artificial neural network as an internal state is used.
The selection of an input for an artificial neural network is important because it must include information necessary for learning an output value of the artificial neural network. The optimal input is selected in consideration of the following characteristics 1) to 3), and the Split-KalmanNet using the selected input shows good state inference performance.
As an example, inputs in consideration of characteristic 1) are {circumflex over (x)}t−xt−1 and {tilde over (y)}t=yt−yt−1. That is, a vector corresponding to a difference between current state estimation information and past state estimation information of an object becomes an artificial neural network input 1 of the Kalman gain matrix calculation unit 114-1, and a vector corresponding to a difference between current observation information and past observation information of the object becomes an artificial neural network input 2 of the Kalman gain matrix calculation unit 114-1.
As an example, inputs in consideration of characteristic 2) are {circumflex over (x)}t−{circumflex over (x)}t|t−1 and yt−ŷt|t−1. That is, a vector corresponding to a difference between current state estimation information and current state prediction information of an object becomes an artificial neural network input 1 of the Kalman gain matrix calculation unit 114-1, and a vector corresponding to a difference of current observation information and current observation prediction information of the object becomes an artificial neural network input 2 of the Kalman gain matrix calculation unit 114-1.
As an example, inputs in consideration of characteristic 3) are h({circumflex over (x)}t|t−1)−Ht{circumflex over (x)}t|t−1 and Ht. That is, a vector corresponding to a difference between a value of the current state prediction information input to the observation prediction model and a product of the Jacobian matrix and the current state prediction information becomes an artificial neural network input 1 of the Kalman gain matrix calculation unit 114-1, and the Jacobian matrix becomes an artificial neural network input 2 of the Kalman gain matrix calculation unit 114-1.
Additionally, learning data and a loss function are required to train an artificial neural network. For artificial neural network learning data, for example, the observation information of an object and state estimation information closest to the state information of the object are used in the case of supervised learning, and observation prediction information acquired through the observation information of the object and observation prediction information acquired through the observation prediction model are used in the case of unsupervised learning.
In addition, in the case of supervised learning, a loss function is defined as a mean square error reflecting a difference between the state estimation information of an object and state estimation information closest to the state information of the object acquired from learning data, and supervised learning is performed in a direction of minimizing the defined loss function.
In the case of unsupervised learning, a loss function is defined as a mean square error reflecting a difference between observation prediction information acquired through the observation prediction model and the observation information of an object, and unsupervised learning is performed in a direction of minimizing the defined loss function.
Learning data ={(
,
)
consists of a path of L state values/observation values. The
-th path consists of
data samples (
,
). Here, each data sample consists of
=[
,
, . . .
] and
=[
,
, . . . ,
]. Using this, an empirical loss function may be defined as shown in Equation 12 below. The loss function defined in Equation 12 is defined as an example, and the form of the loss function may be defined appropriately depending on an environment in which the Split-KalmanNet is used.
Using the learning data and the empirical loss function, the parameters Θ1 and Θ2 of the artificial neural network may be optimized in a direction of minimizing Equation 12. To this end, the loss function of Equation 12 may be differentiated with respect to artificial neural network parameters using chain rules of Equations 13 and 14, and differential values of Equation 15.
Here, =
−
, and
=
−
.
In order to optimize parameters using the differential values, an algorithm such as stochastic gradient descent (SGD) may be used. In addition, an optimization method that repeats a process of fixing a parameter Θ2 and applying stochastic gradient descent in a direction of making Equation 13 equal to zero, then fixing a parameter Θ1 and applying stochastic gradient descent in a direction of making Equation 14 equal to zero may be used.
First, the state change and observation data of a linear uniform circular motion system are given according to Equations 16 and 17 below.
Here, wt and vt represent probability vectors that follow multivariate normal distribution probability density functions (0,10−3I) and
(0,10−3νI) respectively. In addition, θ represents a rotation angle according to discrete time in units of radians, and is assumed to be a value known in advance by the state estimation algorithm. ν represents a variable introduced to control a state change and a level of noise in observation data.
Referring to
In S304, the state estimation apparatus receives the current state prediction information generated in S302 into the previously prepared observation prediction model to generate current observation prediction information and proceeds to S306.
In S306, the state estimation apparatus calculates a Kalman gain matrix associated with a degree of correction of the state prediction information through at least one artificial neural network and proceeds to S308.
In S308, the state estimation apparatus corrects the current state prediction information generated in S302 with the Kalman gain matrix calculated in S306 to generate current state estimation information of the object.
Referring to
When the effects of two noises are similar, that is, when ν is small, it can be seen that all algorithms perform state estimation that produces the minimum mean square error. However, it can be seen that when noise in observation data increases, that is, when ν is large, the Split-KalmanNet according to an embodiment of the present disclosure performs state estimation that produces the minimum mean square error without using information on a covariance matrix of the noise, but this is not the case with the extended Kalman filter and the KalmanNet.
Referring to
Here, a tan 2(·) represents a function that outputs an angle between an x-axis and a state vector in radians on a Euclidean plane. Furthermore, wt and vt represent probability vectors that follow multivariate normal distribution probability density functions (0,10−3I) and
(0,10−3νI), respectively. In addition, θ represents a rotation angle according to discrete time in units of radians, and is assumed to be known in advance by the state estimation algorithm. ν represents a variable introduced to control a state change and a level of noise in observation data.
In
Given nonlinear observational data, when the extended Kalman filter can no longer estimate a state with a minimum mean square error, particularly when the effects of two noises are similar, that is, when ν is small, it can be seen that the KalmanNet and the Split-KalmanNet exceed the state estimation performance of the extended Kalman filter that accurately uses a covariance matrix of the noise. In particular, the Split-KalmanNet shows superior state estimation performance than the KalmanNet, which is due to the fact that the Split-KalmanNet, unlike the KalmanNet, additionally considers information in the local form of an observation model through a Jacobian matrix and a linearization error when calculating a Kalman gain matrix.
When noise in the observation data increases, that is, when ν is large, the KalmanNet fails to learn a Kalman gain matrix as in the case of a linear data observation, but the Split-KalmanNet according to an embodiment of the present disclosure shows state estimation performance that is close to that of an extended Kalman filter that accurately uses a covariance matrix of noise. Through this, it can be seen that the Split-KalmanNet according to an embodiment of the present disclosure more effectively handles the effects of noise due to various noise sources compared to general algorithms.
The method of estimating a current state of an object proposed in the present disclosure may be implemented in the form of program instructions that can be executed through various computer elements, e.g., a processor or central processing unit (CPU, and recorded on a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, and the like separately or in combination.
The program instructions stored on the computer-readable recording medium may be specially designed and configured for the present disclosure, or may also be known and available to those skilled in the computer software field.
Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as compact disk-read only memory (CD-ROM) and digital versatile disks (DVDs), magneto-optical media such as floptical disks, and hardware devices such as read-only memory (ROM), random access memory (RAM), and flash memory, which are specially configured to store and execute program instructions.
Examples of the program instructions include not only machine language codes created by a compiler or the like, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware devices may be configured to operate as one or more software modules in order to perform the operation of the present disclosure, and vice versa.
While various embodiments of the present disclosure have been shown and described above, it will be of course understood by those skilled in the art that various modifications may be made without departing from the gist of the disclosure as defined in the following claims, and it is to be noted that those modifications should not be understood individually from the technical concept and prospect of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
10-2023-0070904 | Jun 2023 | KR | national |