JP2018116511A - State estimator, and program - Google Patents

State estimator, and program Download PDF

Info

Publication number
JP2018116511A
JP2018116511A JP2017007125A JP2017007125A JP2018116511A JP 2018116511 A JP2018116511 A JP 2018116511A JP 2017007125 A JP2017007125 A JP 2017007125A JP 2017007125 A JP2017007125 A JP 2017007125A JP 2018116511 A JP2018116511 A JP 2018116511A
Authority
JP
Japan
Prior art keywords
state
weight
distribution
particle
filter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2017007125A
Other languages
Japanese (ja)
Other versions
JP6820204B2 (en
Inventor
青木 勝典
Katsunori Aoki
勝典 青木
澁谷 一彦
Kazuhiko Shibuya
一彦 澁谷
啓之 濱住
Hiroyuki Hamazumi
啓之 濱住
浩一郎 今村
Koichiro Imamura
浩一郎 今村
亜紀子 山里
Akiko Yamasato
亜紀子 山里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
NHK Engineering System Inc
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting Corp
NHK Engineering System Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Hoso Kyokai NHK, Japan Broadcasting Corp, NHK Engineering System Inc filed Critical Nippon Hoso Kyokai NHK
Priority to JP2017007125A priority Critical patent/JP6820204B2/en
Publication of JP2018116511A publication Critical patent/JP2018116511A/en
Application granted granted Critical
Publication of JP6820204B2 publication Critical patent/JP6820204B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Complex Calculations (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a state estimator and a program which can estimate, when a state is estimated, with smaller calculation amount, short delay and high accuracy upon a state estimation using a system model regulating a time change of a predetermined state vector and which can remove influence of observation error.SOLUTION: A state estimator 1 according to the present invention a likelihood calculating unit 11 for calculating likelihood respectively corresponding to state vectors of a plurality of particles following a predetermined system model from input observation values, a filter distribution updating unit 12 for calculating a prediction distribution by subjecting a previously calculated filter distribution to diffusion process in accordance with the predetermined system model and for calculating, as a current filter distribution, a filter distribution obtained by subjecting weight of a state vector of each particle to a range adjusting processing for setting it within a predetermined range by allocating the likelihood, a weight register 13 for updating and holding weight of a state vector of each particle upon every calculation, and an estimated value calculating unit 14 for deriving a predetermined estimated value from the current filter distribution.SELECTED DRAWING: Figure 1

Description

本発明は、所定の状態ベクトルの時間変化を規定するシステムモデルを用いて状態推定を行う状態推定器、及びプログラムに関する。   The present invention relates to a state estimator and a program that perform state estimation using a system model that defines a temporal change of a predetermined state vector.

時系列データ等の所定の状態ベクトルに関する状態推定を行う状態推定器として、大別すると、線形或いはガウス型の時系列データを扱うものと、非線形或いは非ガウス型の時系列データを扱うものがある。   State estimators that perform state estimation related to predetermined state vectors such as time series data can be broadly classified into those that handle linear or Gaussian time series data and those that handle nonlinear or non-Gaussian time series data. .

特に、非線形或いは非ガウス型の時系列データを扱う状態推定器は、IP(Internet Protocol)ネットワークを介して時刻を同期させるシステムの時刻オフセット計測に用いることができる。   In particular, a state estimator that handles nonlinear or non-Gaussian time series data can be used for time offset measurement in a system that synchronizes time via an IP (Internet Protocol) network.

まず、この時刻を同期させる技法として、一般的には、IEEE1588PTP(precision time protocol)が知られており(例えば、特許文献1参照)、この技法に基づいて時刻同期を確立するための時刻制御装置を構成する例も知られている(例えば、特許文献2参照)。   First, as a technique for synchronizing this time, generally, IEEE 1588 PTP (precision time protocol) is known (for example, refer to Patent Document 1), and a time control apparatus for establishing time synchronization based on this technique is known. The example which comprises is also known (for example, refer patent document 2).

特許文献2には、その時刻制御装置として、マスター装置とスレーブ装置で交換されるパケットの時刻情報から時刻差を算出する減算部及び除算部、時刻差から平均値を算出する平均値算出部、PID(Proportional-Integral-Differential)制御部、及び時刻調整部を備えるよう構成する例が示されている。   In Patent Document 2, as the time control device, a subtraction unit and a division unit that calculate a time difference from time information of packets exchanged between a master device and a slave device, an average value calculation unit that calculates an average value from the time difference, An example is shown in which a PID (Proportional-Integral-Differential) control unit and a time adjustment unit are provided.

PTPではマスター装置からスレーブ装置に定期的に送信されるSyncメッセージの送信間隔と受信間隔の差が等しくなるように、スレーブ装置の時計の発振周波数を調整することで発振周波数を同期させる。そして、発振周波数同期が確立した後で、スレーブ装置からDelay_reqを送信し、その返信であるDelay_resを受信し、それらのパケットの送信時刻及び受信時刻を用いて、マスター装置の時刻とスレーブ装置の時刻差を計測し、時刻差が0となるようにスレーブ装置の時刻を調整する。この時刻差の計測では、Delay_reqの伝送遅延、Delay_reqの伝送遅延が等しいことを想定している。   In PTP, the oscillation frequency is synchronized by adjusting the oscillation frequency of the clock of the slave device so that the difference between the transmission interval and the reception interval of the Sync message periodically transmitted from the master device to the slave device becomes equal. Then, after the oscillation frequency synchronization is established, it transmits Delay_req from the slave device, receives Delay_res as a reply, and uses the transmission time and reception time of those packets, the time of the master device and the time of the slave device The difference is measured, and the time of the slave device is adjusted so that the time difference becomes zero. In the measurement of the time difference, it is assumed that the Delay_req transmission delay and the Delay_req transmission delay are equal.

IPネットワークは、ルータやスイッチなどが次の装置へとパケットを中継することで、IPネットワークに接続するどの装置に対してもパケットを送ることができるネットワークであるが、一時的にパケットが集中するとパケットが中継されるまでの時間が長くなる。このため伝送遅延時間が変動するパケットジッタと呼ばれる現象が発生する。   An IP network is a network in which packets can be sent to any device connected to the IP network by relaying the packet to the next device using a router or switch. The time until the packet is relayed becomes longer. For this reason, a phenomenon called packet jitter in which the transmission delay time fluctuates occurs.

この結果、Syncメッセージの送信間隔と受信間隔の差や、計測したマスター装置の時刻とスレーブ装置の時刻差は、パケットジッタの影響を受け観測誤差が多く含まれる。   As a result, the difference between the transmission interval and the reception interval of the Sync message, and the measured time difference between the master device and the slave device are influenced by packet jitter and contain many observation errors.

当該PID制御部は、入力値、入力の積分値、入力の微分値のそれぞれに係数をかけて合計した値を用いて目標の値に制御を行うものであるが、パケットジッタや雑音など不規則に変化する成分を多く含む信号は、高周波成分を多く含み、微分値が過大になりPID制御に悪影響を及ぼすことがある。   The PID control unit controls the input value, the integrated value of the input, and the differential value of the input by multiplying each of the coefficients to a target value. A signal including a large amount of components that change to a large amount includes a high frequency component, and an excessive differential value may adversely affect PID control.

(ローパスフィルタの利用)
そこで、IPネットワークを介して時刻を同期させるシステムでは、観測した時刻差をそのまま時刻制御に使用するのではなく、平均値を用いたり、ローパスフィルタを用いて観測誤差や雑音の制御への影響を軽減することが行われている。
(Use of low-pass filter)
Therefore, in a system that synchronizes the time via the IP network, the observed time difference is not used for time control as it is, but the average value is used or the influence on the control of observation error and noise is reduced by using a low-pass filter. Mitigation has been done.

ただし、ローパスフィルタでは、振幅の大きなパルス状の雑音が加わった場合に、その低周波成分が信号として加味され、わずかであるが出力に悪影響を与えることがある。   However, in the low-pass filter, when pulse-like noise having a large amplitude is added, the low-frequency component is added as a signal, which may slightly affect the output.

このため、ローパスフィルタのように時系列データと雑音の周波数分布の違いを利用して信号の観測精度を高める代わりに、時系列データを扱うシステムの状態空間モデルを作成し、観測信号から状態空間モデルの状態を予測し、予測した状態空間モデルの状態からの観測信号を抽出することで、信号の観測精度を高めたり、観測遅延を短くしたり、予測した状態そのものを直接制御に利用することが行われている。   For this reason, instead of using the difference between the frequency distribution of time series data and noise like a low-pass filter to improve the signal observation accuracy, a state space model of the system that handles time series data is created and the state space is Predict model states and extract observed signals from predicted state-space model states to improve signal observation accuracy, shorten observation delays, and use the predicted states themselves for direct control Has been done.

そして、状態及び観測値の統計的性質を利用することによって時系列モデルの状態を推定する状態推定器として、カルマンフィルタや粒子フィルタが知られている。   Kalman filters and particle filters are known as state estimators that estimate the state of a time-series model by using the statistical properties of states and observation values.

(カルマンフィルタの利用)
カルマンフィルタは、状態や観測値に含まれる雑音が正規分布に従う線形のシステムに適用できる技法であり広く利用されている。しかし、カルマンフィルタは、正規分布に従わないシステムや非線形なシステム、或いは時系列に急激な構造変化がみられるような場合では良い結果が得られない。
(Use of Kalman filter)
The Kalman filter is a technique that can be applied to a linear system in which noise included in a state or an observation value follows a normal distribution, and is widely used. However, the Kalman filter does not give good results in a system that does not follow a normal distribution, a nonlinear system, or a case where a sudden structural change is observed in time series.

(粒子フィルタの利用)
そこで、非線形或いは非ガウス型の時系列データを扱うシステムに適用できる状態推定器として、粒子フィルタが知られており(例えば、非特許文献1)、粒子フィルタは画像中における被写体の追尾などにも利用されている(例えば、特許文献3参照)。
(Use of particle filter)
Therefore, a particle filter is known as a state estimator applicable to a system that handles nonlinear or non-Gaussian time series data (for example, Non-Patent Document 1), and the particle filter is also used for tracking a subject in an image. (See, for example, Patent Document 3).

粒子フィルタは、1次元もしくは複数次元ベクトルで表現された状態ベクトルの時間変化を規定する所定のシステムモデルを用いて状態推定を行う状態推定器であり、状態ベクトルとその状態ベクトルに対応する重みの集合によって状態の確率分布を表現する。予測対象の状態の確率分布を確率変数をxとする確率密度関数p(x)とすると、これを或る状態ベクトルx(以下、状態xとする)とその状態xの重みwを粒子とする集合によって表現することが特徴である。重みwは、個々の状態xの尤度を示す。 The particle filter is a state estimator that performs state estimation using a predetermined system model that defines a time change of a state vector expressed by a one-dimensional or multi-dimensional vector, and has a weight corresponding to the state vector and the state vector. The probability distribution of the state is expressed by the set. When the random variable a probability distribution over states of the prediction target and probability density function p (x) to x, which a certain state vector x i (hereinafter, the state x i) and the weight w i of the state x i It is characterized by being expressed by a set of particles. The weight w i indicates the likelihood of each state x i .

状態xの確率分布をN個の状態ベクトルxi(i=1,2...N)とその状態ベクトルの重みw(i=1,2...N)を用いて、確率密度関数p(x)は式(1)のように表すことができる。 Probability density function of state x using N state vectors x i (i = 1, 2... N) and weights w i (i = 1, 2... N) of the state vectors. p (x) can be expressed as in equation (1).

ここでδはディラックのデルタ関数であり、状態ベクトルとその状態ベクトルの重みを粒子と呼ぶ。尚、粒子フィルタでは、フィルタ分布計算によりwの値が1以外の値をとるが、直後のリサンプル処理を行うことでwの値は1となる。 Here, δ is a Dirac delta function, and the state vector and the weight of the state vector are called particles. In the particulate filter, the values of w i by the filter distribution calculation takes a value other than 1, the value of w i by performing a resampling processing immediately becomes one.

例えば、図8に示す粒子フィルタの処理手順を基に、図9を参照して、移動物体(図示する例では車両)の位置と速度を推定する例を説明する。図8は、従来からの粒子フィルタによる処理を示すフローチャートである。また、図9は、従来からの粒子フィルタにおける全体的な動作例を示す説明図である。   For example, an example of estimating the position and speed of a moving object (vehicle in the illustrated example) will be described with reference to FIG. 9 based on the processing procedure of the particle filter shown in FIG. FIG. 8 is a flowchart showing processing by a conventional particle filter. Moreover, FIG. 9 is explanatory drawing which shows the example of the whole operation | movement in the conventional particle filter.

ここで、x(t), y(t), v(t), u(t)を、それぞれ時刻tにおける状態ベクトル(以下、状態x(t)とする)、観測値のベクトル(以下、観測値y(t)とする)、システム雑音のベクトル(以下、雑音ベクトルv(t)とする)、観測雑音のベクトル(以下、観測雑音u(t)とする)を表すものとする。そして、時系列データの状態空間モデルが、状態x(t)=F(x(t−1),v(t))のシステムモデルと、観測値y(t)=H(x(t),u(t))の観測モデルに従うものとする。   Here, x (t), y (t), v (t), and u (t) are respectively a state vector at time t (hereinafter referred to as state x (t)) and an observation value vector (hereinafter referred to as observation). Value y (t)), system noise vector (hereinafter referred to as noise vector v (t)), and observation noise vector (hereinafter referred to as observation noise u (t)). Then, the state space model of the time series data includes the system model of the state x (t) = F (x (t−1), v (t)) and the observed value y (t) = H (x (t), Suppose that it follows the observation model of u (t)).

尚、図9に示す動物体の時系列データの状態推定システムの例では、状態x(t)をシステム雑音を加えた時刻tにおける位置Xa([km])と速度Xb([km/h])で構成される2次元のベクトル(Xa,Xb)とし、観測値y(t)については、時刻tにて観測する位置Xa(t)に観測雑音u(t)を加えたものとしている。   In the example of the state estimation system of the time series data of the moving object shown in FIG. 9, the position Xa ([km]) and the velocity Xb ([km / h]) at the time t when the system noise is added to the state x (t). The observed value y (t) is obtained by adding the observation noise u (t) to the position Xa (t) observed at time t.

まず、図8に示すように、粒子フィルタの処理は、最初に重みが1の粒子を用いて初期状態x(t=0)の分布に対応する粒子を設定する (ステップS110)。粒子フィルタの処理は、初期時刻t=0以後、時刻t=1,2,…として単位時間ステップ毎にサンプリングされて時系列に処理し、図9に示すように、前回時刻t−1の状態推定結果を粒子で近似して示す分布(以下、x(t−1|t−1)と記す)とシステムモデルから、今回時刻tの状態を予測し(以下、観測値y(t)を用いずに予測した、状態の予測結果を予測分布x(t|t−1)と記す)、この予測分布x(t|t−1)と観測値y(t)を用いて今回時刻tの状態を推定する処理を繰り返すことになる。以下、予測分布x(t|t−1)と観測値y(t)を用いて推定した状態の分布をフィルタ分布x(t|t)と記す。   First, as shown in FIG. 8, the particle filter process first sets particles corresponding to the distribution of the initial state x (t = 0) using particles having a weight of 1 (step S110). The processing of the particle filter is sampled for each unit time step as time t = 1, 2,... After the initial time t = 0, and processed in time series, as shown in FIG. The state at the current time t is predicted from the distribution (hereinafter referred to as x (t−1 | t−1)) that approximates the estimation result with particles and the system model (hereinafter, the observed value y (t) is used). The state predicted at the current time t using the predicted distribution x (t | t−1) and the observed value y (t). Will be repeated. Hereinafter, the distribution estimated using the predicted distribution x (t | t−1) and the observed value y (t) is referred to as a filter distribution x (t | t).

続いて、図8及び図9に示すように、粒子フィルタの処理は、前回時刻t−1の状態の推定結果のフィルタ分布x(t−1|t−1)を構成する粒子を基に、その粒子毎に、擬似乱数を計算し、システムモデルx(t)=F(x(t−1),v(t))に、各粒子の状態ベクトルxをx(t−1)に、疑似乱数から生成したシステム雑音をv(t)に代入して、各粒子の新たな状態を更新することにより、時刻tの状態の予測分布x(t|t−1)を計算する(ステップS120)。 Subsequently, as shown in FIGS. 8 and 9, the particle filter processing is based on the particles constituting the filter distribution x (t−1 | t−1) of the estimation result of the state at the previous time t−1. For each particle, a pseudo-random number is calculated, the system model x (t) = F (x (t−1), v (t)), the state vector x i of each particle is x (t−1), By substituting the system noise generated from the pseudo random number into v (t) and updating the new state of each particle, the predicted distribution x (t | t−1) of the state at time t is calculated (step S120). ).

図10を参照して、より具体的に、本例における時刻tの状態の予測分布x(t|t−1)の計算について説明する。図10は、従来からの粒子フィルタにおける予測分布計算の動作例を示す説明図である。   With reference to FIG. 10, the calculation of the predicted distribution x (t | t−1) in the state at time t in this example will be described more specifically. FIG. 10 is an explanatory diagram showing an operation example of predictive distribution calculation in a conventional particle filter.

予測分布の計算にあたって、粒子フィルタの処理は、時刻t−1の各粒子に対して、各粒子の状態ベクトルと疑似乱数から生成したシステム雑音v(t)をシステムモデルx(t)=F(x(t−1),v(t))に与えることで計算する。   In the calculation of the predicted distribution, the particle filter process calculates the system noise v (t) generated from the state vector of each particle and the pseudo random number for each particle at time t−1 as the system model x (t) = F ( x (t-1), v (t)).

粒子フィルタでは非線形のシステムモデルを扱うことができるが、簡単のためシステムモデルをx(t)=Fx(x(t−1))+Fv(v(t))と表せる線形モデルを例として説明する。時刻tにおける各粒子の状態ベクトルは、システム雑音が無ければ、時刻t−1における各粒子の状態ベクトル(図10(a)のx(t−1)の各点の値を参照)とv(t)=0をシステムモデルに与えて得られた状態Fx(x(t−1))となる(図10(b)参照)。システムモデルでは雑音の影響がFv(v(t))の項として加わるため、Fx(x(t−1))の値に、擬似乱数を用いてv(t)を生成して計算したFv(v(t))を加える。これが時刻tにおける各粒子の状態ベクトルの予測値となる(図10(c)参照)。これらの予測した粒子で表現される分布が予測分布t(t|t−1)である。   The particle filter can handle a non-linear system model, but for simplicity, a linear model that can express the system model as x (t) = Fx (x (t−1)) + Fv (v (t)) will be described as an example. . If there is no system noise, the state vector of each particle at time t is the state vector of each particle at time t−1 (refer to the value of each point of x (t−1) in FIG. 10A) and v ( The state Fx (x (t−1)) obtained by giving t) = 0 to the system model is obtained (see FIG. 10B). Since the influence of noise is added as a term of Fv (v (t)) in the system model, Fv (t) calculated by generating v (t) using a pseudorandom number as the value of Fx (x (t−1)). v (t)) is added. This is the predicted value of the state vector of each particle at time t (see FIG. 10C). A distribution expressed by these predicted particles is a predicted distribution t (t | t−1).

図10(c)のように、システム雑音有りとして計算することで、時刻tにおける粒子の状態ベクトルの予測値に意図的に拡がりを持たせていることが分かる。システムモデルのモデル化誤差や、状態推定の誤差の影響が蓄積すると、粒子の状態ベクトルの予測値の誤差が大きくなる。粒子の状態ベクトルに拡がりがなくなると、実際のシステムの状態ベクトルと一致する状態ベクトルを持つ粒子が無くなってしまう。このようなシステム雑音を付与することで、状態推定誤差やモデル化誤差による大きな予測ずれに伴う推定誤りを予防する作用がある。   As shown in FIG. 10C, it can be seen that by calculating with the presence of system noise, the predicted value of the state vector of the particle at time t is intentionally expanded. If the effects of system model modeling errors and state estimation errors accumulate, the error in the predicted value of the particle state vector increases. If the particle state vector no longer spreads, there will be no particles with a state vector that matches the actual system state vector. By adding such system noise, there is an effect of preventing an estimation error accompanying a large prediction error due to a state estimation error or a modeling error.

続いて、図8及び図9に示すように、粒子フィルタの処理は、当該予測分布x(t|t−1)における各粒子に対して、観測値y(t)の尤度p(y|x)を計算し、その粒子の重みをwとしたフィルタ分布x(t|t)を計算する(ステップS130)。 Subsequently, as illustrated in FIGS. 8 and 9, the particle filter process performs the likelihood p (y |) of the observed value y (t) for each particle in the predicted distribution x (t | t−1). x i ) is calculated, and a filter distribution x (t | t) with the weights of the particles as w i is calculated (step S130).

ここで、各粒子が表す状態ベクトルは、動物体(本例では車両)の予測位置と予測速度を表している。各粒子の状態ベクトルの予測値は粒子毎に異なるが、実際に観測して得られた位置の観測値y(t)が10.2kmであったと仮定して(図9参照)、図11を参照して、より具体的に、本例における状態のフィルタ分布x(t|t)の計算について説明する。図11は、従来からの粒子フィルタにおけるフィルタ分布計算の動作例を示す説明図である。   Here, the state vector represented by each particle represents the predicted position and predicted speed of the moving object (vehicle in this example). Although the predicted value of the state vector of each particle varies from particle to particle, assuming that the observed value y (t) of the position actually observed is 10.2 km (see FIG. 9), FIG. The calculation of the state filter distribution x (t | t) in this example will be described more specifically with reference to FIG. FIG. 11 is an explanatory diagram showing an operation example of filter distribution calculation in a conventional particle filter.

時刻tの観測値y(t)=10.2kmが得られている場合でも、その観測結果には観測雑音が含まれるため、観測値と実際の位置は必ずしも一致しない。そこで、フィルタ分布の計算にあたって、粒子フィルタの処理は、予測分布x(t|t−1)における各粒子に対して(図11(a)参照)、時刻tの観測値y(t)=10.2kmと一致に対応する粒子に最も高い尤度を割り当て、この観測値y(t)に対応する粒子から遠ざかるに従い各粒子に低い尤度を割り当てる(図11(b)参照)。尤度計算には種々の技法があるが、ここでは単純な正規分布曲線に近似して割り当てる例とする。このように、粒子で表される各状態に対して、観測値が得られる尤度を計算しその値を各粒子の重みwとする(図11(c)参照)。図9及び図11(c)では、粒子の重みwを黒丸の大きさで表している。 Even when the observed value y (t) at time t is 10.2 km, since the observed noise is included in the observed result, the observed value does not necessarily match the actual position. Therefore, in calculating the filter distribution, the particle filter processing is performed for each particle in the predicted distribution x (t | t−1) (see FIG. 11A), and the observed value y (t) = 10 at time t. The highest likelihood is assigned to the particle corresponding to the coincidence with 2 km, and the lower likelihood is assigned to each particle as it moves away from the particle corresponding to the observed value y (t) (see FIG. 11B). There are various techniques for likelihood calculation. Here, an example of assigning by approximating a simple normal distribution curve is given. In this way, for each state represented by particles, the likelihood of obtaining an observed value is calculated, and the value is set as the weight w i of each particle (see FIG. 11C). In FIG. 9 and FIG. 11 (c), the particle weight w i is represented by the size of a black circle.

続いて、図8及び図9に示すように、粒子フィルタの処理は、フィルタ分布の各粒子に対し、粒子の重みの大きさに比例するように粒子を割り当て直すリサンプル処理を行う(ステップS140)。リサンプル処理は、状態xを持つ粒子の数が、ステップS130で計算した重みwに比例した数となるように重み1の新たな粒子を割り当て、或いは削除する処理であり、重みの大きな粒子は重み1の新たな粒子で複製し、重みの小さな粒子は削除する。このリサンプル処理の後、tに1を加算して次の時刻における予測を行うようステップS120に移行する。 Subsequently, as shown in FIGS. 8 and 9, the particle filter process performs a resample process for reassigning particles to each particle of the filter distribution in proportion to the size of the particle weight (step S140). ). The resampling process is a process of assigning or deleting a new particle having a weight of 1 so that the number of particles having the state x i is proportional to the weight w i calculated in step S130. Particles are duplicated with new particles with weight 1 and particles with lower weight are deleted. After this resampling process, the process proceeds to step S120 so that 1 is added to t and prediction at the next time is performed.

尤度に基づく重みづけの結果、リサンプル処理(ステップS140)後の粒子は、図9に例示するように、予測分布の計算(ステップS120)で得られる当該予測分布における粒子より集中し、高い密度の粒子分布が得られる。これらの粒子の集合が、時刻tにおける状態分布の推定結果を表すことから、粒子の状態ベクトルの期待値や、中央値、信頼区間を計算することで、時刻tの状態ベクトルの期待値や中央値、信頼区間を導出することができる(例えば位置の期待値として10.3km、速度の期待値として39km/h)。   As a result of the weighting based on the likelihood, the particles after the resampling process (step S140) are concentrated and higher than the particles in the predicted distribution obtained in the calculation of the predicted distribution (step S120) as illustrated in FIG. A density particle distribution is obtained. Since the set of these particles represents the estimation result of the state distribution at time t, by calculating the expected value, median, and confidence interval of the particle state vector, the expected value of the state vector at time t and the center are calculated. Value and confidence interval can be derived (for example, 10.3 km as an expected value of position and 39 km / h as an expected value of velocity).

このように粒子フィルタでは、直前の状態分布及びシステムモデル、観測値を用いて次の時間ステップの状態分布の推定を行い、その結果得られた状態分布を次の時刻の予測に用いる。この処理を逐次繰り返すとともに、粒子の集合に期待値計算など統計処理を行うことで、状態推定を行うことができる。   In this way, the particle filter estimates the state distribution of the next time step using the immediately preceding state distribution, system model, and observation value, and uses the resulting state distribution for prediction of the next time. By repeating this process sequentially and performing statistical processing such as expected value calculation on a set of particles, state estimation can be performed.

特開2010−190635号公報JP 2010-190635 A 特開2013−83450号公報JP2013-83450A 特開2016−58836号公報Japanese Patent Laid-Open No. 2006-58836

樋口 知之, “粒子フィルタ”, 電子情報通信学会誌, Vol.88, No.12, pp.989-994, 2005年12月01日発行Tomoyuki Higuchi, “Particle Filter”, Journal of IEICE, Vol.88, No.12, pp.989-994, published December 01, 2005

IPネットワークを介して時刻を同期させるシステムにおいて、時計や発信器の時刻を高い精度で同期させるためには、非常に低い周波数変化によるわずかな位相変化を検出し補正する必要がある。このため、低い周波数成分をもつ観測誤差や雑音まで十分に除去するフィルタ処理が必要になる。   In a system that synchronizes time via an IP network, in order to synchronize the time of a clock or a transmitter with high accuracy, it is necessary to detect and correct a slight phase change due to a very low frequency change. For this reason, it is necessary to perform a filtering process that sufficiently removes observation errors and noises having low frequency components.

そこで、ローパスフィルタを利用し、低い周波数成分の誤差や雑音を十分低減させるためには、フィルタのタップ数を増やす必要がある。ローパスフィルタのタップ数を長くすると遅延が増加し、観測に長い時間を要し、時刻を同期させるために要する時間が長くなる。また、パケットジッタは一時的なパケットの集中で発生し、パケットの集中度合いによってその大きさが変化するため、観測期間中に遅延が大きく変動し、観測精度が悪化したり、制御が不安定になる問題がある。   Therefore, in order to sufficiently reduce errors and noise of low frequency components using a low-pass filter, it is necessary to increase the number of filter taps. When the number of taps of the low-pass filter is increased, the delay increases, and it takes a long time for observation and the time required for synchronizing the time. In addition, packet jitter occurs due to temporary packet concentration, and the size of the packet jitter changes depending on the concentration of the packet. Therefore, the delay varies greatly during the observation period, and the observation accuracy deteriorates and the control becomes unstable. There is a problem.

また、ローパスフィルタでは、振幅の大きなパルス状の雑音が加わった場合に、その低周波成分が信号として加味され、出力に影響を与える問題がある。   In addition, the low-pass filter has a problem in that, when pulse-like noise having a large amplitude is added, the low-frequency component is added as a signal and affects the output.

また、カルマンフィルタは、状態及び観測誤差が正規分布に従うことを前提としている。しかし、パケットの時刻情報から算出される時刻差に含まれる雑音の多くは、IPネットワークの伝送遅延の変化に起因するものであり、これはIPネットワークの混雑状況に応じて複雑に変化し、誤差の分布が変化してしまう。カルマンフィルタは、時系列に急激な構造変化がみられるような場合や、正規分布に従わないシステムや非線形なシステムでは良い結果が得られない問題があった。   The Kalman filter is premised on the state and observation error following a normal distribution. However, most of the noise included in the time difference calculated from the packet time information is due to a change in the transmission delay of the IP network, which changes in a complicated manner depending on the congestion status of the IP network, and an error. The distribution of will change. The Kalman filter has a problem that good results cannot be obtained when a sudden structural change is observed in a time series, a system that does not follow a normal distribution, or a nonlinear system.

また、粒子フィルタは、複雑な分布に対応でき、尤度分布の変化に柔軟に対応できる利点がある。しかし、予測分布計算に粒子の数に比例した数の擬似乱数を作成する必要があり、また、リサンプル処理に大きな計算負荷が発生する。このため、粒子フィルタは計算負荷が大きく、高速に実時間で動作する用途に利用することが困難であった。   In addition, the particle filter has an advantage that it can cope with a complicated distribution and can flexibly cope with a change in likelihood distribution. However, it is necessary to create a number of pseudo-random numbers proportional to the number of particles in the prediction distribution calculation, and a large calculation load is generated in the resampling process. For this reason, the particle filter has a large calculation load, and it has been difficult to use the particle filter for applications that operate at high speed in real time.

つまり、IPネットワークを介して時刻を同期させるシステムに限らず、動物体の状態推定を行う制御装置などにおいても、高速に実時間で動作することが要望されるときには、少ない計算量且つ短い遅延にて精度よく状態を推定し、観測誤差の影響を除去可能とする状態推定器の利用が望まれる。   In other words, not only a system that synchronizes time via an IP network, but also a control device that estimates the state of a moving object, when it is desired to operate at high speed in real time, the amount of calculation is small and the delay is short. Therefore, it is desirable to use a state estimator that can accurately estimate the state and eliminate the effects of observation errors.

本発明の目的は、上述の問題に鑑みて、所定の状態ベクトルの時間変化を規定するシステムモデルを用いて状態推定を行う際に、少ない計算量且つ短い遅延にて精度よく状態を推定し、観測誤差の影響を除去可能とする状態推定器、及びプログラムを提供することにある。   In view of the above-described problems, the object of the present invention is to accurately estimate a state with a small amount of calculation and a short delay when performing state estimation using a system model that defines a time change of a predetermined state vector. It is an object to provide a state estimator and a program that can remove the influence of observation errors.

本発明の状態推定器は、1次元もしくは複数次元ベクトルの粒子で表現された状態ベクトルの時間変化を規定する所定のシステムモデルを用いて状態推定を行う状態推定器であって、状態ベクトルとその状態ベクトルの重みの集合によって表現される状態の確率分布に従い、入力される観測値に基づいて、前記所定のシステムモデルに従う複数の粒子の状態ベクトルにそれぞれ対応する尤度を計算する尤度計算部と、前記観測値の観測時刻毎に、前回計算したフィルタ分布を構成する各粒子の状態ベクトルに対し、システム雑音が無いものとして前記所定のシステムモデルに従って各粒子の状態ベクトルと該各粒子の状態ベクトルの重みを更新し、該重みに拡散処理を施して予測分布を構成する粒子を追加もしくは各粒子の重みを更新し、該重みに該予測分布を構成する各状態ベクトルに対し前記尤度計算部によって計算される尤度を乗じた値を新たな重みとして更新し、各粒子の状態ベクトルにおける該重みを一定の範囲に収めるレンジ調整処理を施し、該レンジ調整処理を施して得られる各粒子の状態ベクトルと該各粒子の状態ベクトルの重みで構成されるフィルタ分布を今回のフィルタ分布として計算するフィルタ分布更新部と、前記フィルタ分布更新部により当該フィルタ分布を計算する毎に、各粒子の状態ベクトルの重みを更新して保持する重みレジスタと、当該今回のフィルタ分布を構成する各状態ベクトルとその状態ベクトルの重みから所定の推定値を導出する推定値計算部と、を備えることを特徴とする。   The state estimator of the present invention is a state estimator that performs state estimation using a predetermined system model that defines a temporal change of a state vector represented by one-dimensional or multi-dimensional vector particles. A likelihood calculation unit that calculates likelihoods corresponding to the state vectors of a plurality of particles according to the predetermined system model based on the input observation values according to the state probability distribution expressed by a set of state vector weights. And for each observation time of the observation value, the state vector of each particle and the state of each particle according to the predetermined system model, assuming that there is no system noise with respect to the state vector of each particle constituting the previously calculated filter distribution Update the weight of the vector, and apply a diffusion process to the weight to add particles constituting the prediction distribution or update the weight of each particle, In addition, a value obtained by multiplying each state vector constituting the prediction distribution by the likelihood calculated by the likelihood calculating unit is updated as a new weight, and the weight in the state vector of each particle is kept within a certain range. A filter distribution update unit that performs a range adjustment process, calculates a filter distribution composed of a state vector of each particle obtained by performing the range adjustment process and a weight of the state vector of each particle as a current filter distribution, and Each time the filter distribution is calculated by the filter distribution updating unit, a weight register that updates and holds the weight of the state vector of each particle, the state vector that constitutes the current filter distribution, and the weight of the state vector are predetermined. And an estimated value calculation unit for deriving an estimated value.

また、本発明の状態推定器において、前記フィルタ分布更新部は、前記拡散処理として、当該前回計算したフィルタ分布を構成する各状態ベクトルに対し前記所定のシステムモデルに従って更新した各粒子の状態ベクトルと該各粒子の状態ベクトルの重みを基にして加重平均又はローパスフィルタ処理、もしくは全部もしくは一定範囲の状態ベクトルの重みに対し均等に一定値を加算する処理により新たな重みを計算する処理、を含むことを特徴とする。   In the state estimator according to the present invention, the filter distribution update unit may update the state vector of each particle updated according to the predetermined system model with respect to each state vector constituting the filter distribution calculated last time as the diffusion process. Including a weighted average or low-pass filter process based on the weight of the state vector of each particle, or a process of calculating a new weight by a process of uniformly adding a constant value to the weights of all or a certain range of state vectors. It is characterized by that.

また、本発明の状態推定器において、前記フィルタ分布更新部は、前記レンジ調整処理として、当該フィルタ分布内の複数の状態ベクトルの全ての重みを一定の比率で増減させ、最も大きな重みの値を一定の範囲に収める処理を含むことを特徴とする。   Further, in the state estimator of the present invention, the filter distribution updating unit increases or decreases all weights of a plurality of state vectors in the filter distribution at a constant ratio as the range adjustment process, and sets the largest weight value. It is characterized by including a process within a certain range.

また、本発明の状態推定器において、前記フィルタ分布更新部は、前記レンジ調整処理として、前記重みレジスタへと更新する重みの最大値が第1閾値を超えた場合、その全ての重みを一定の比率で小さくし、前記重みレジスタへと更新する重みの最大値が第2閾値以下となった場合に、全ての重みを一定の比率で大きくする処理を含むことを特徴とする。   In the state estimator of the present invention, when the maximum value of the weight updated to the weight register exceeds the first threshold as the range adjustment process, the filter distribution update unit sets all the weights to be constant. It includes a process of increasing all weights at a constant ratio when the ratio is decreased and the maximum weight updated to the weight register is equal to or less than a second threshold value.

また、本発明の状態推定器において、前記フィルタ分布更新部は、前記レンジ調整処理として、前記重みレジスタへと更新する重みの最大値が前記第1閾値を超える場合には、その全ての重みを1/2倍の比率で小さくし、前記重みレジスタへと更新する重みの最大値が前記第2閾値以下となる場合には、全ての重みを2倍の比率で大きくする処理を含むことを特徴とする。   In the state estimator according to the present invention, the filter distribution updating unit may calculate all the weights when the maximum weight updated to the weight register exceeds the first threshold as the range adjustment processing. Including a process of increasing all the weights by a ratio of 2 when the weight value is reduced by a ratio of 1/2 and the maximum weight value to be updated to the weight register is less than or equal to the second threshold value. And

また、本発明の状態推定器において、前記尤度計算部は、各粒子の状態ベクトルに対する尤度の合計を1とする正規化処理を省略して尤度を計算し、該尤度の値、若しくは該尤度の定数倍の値を前記フィルタ分布更新部に出力することを特徴とする。   Further, in the state estimator of the present invention, the likelihood calculation unit calculates the likelihood by omitting a normalization process in which the sum of the likelihoods for the state vector of each particle is 1, and the value of the likelihood, Alternatively, a value that is a constant multiple of the likelihood is output to the filter distribution updating unit.

更に、本発明のプログラムは、コンピュータを、本発明の状態推定器として機能させるためのプログラムとする。   Furthermore, the program of the present invention is a program for causing a computer to function as the state estimator of the present invention.

本発明によれば、所定の状態ベクトルの時間変化を規定するシステムモデルを用いて状態推定を行う際に、少ない計算量且つ短い遅延にて精度よく状態を推定し、観測誤差の影響を除去可能とする状態推定器を構成することができる。   According to the present invention, when estimating a state using a system model that defines a time change of a predetermined state vector, it is possible to accurately estimate a state with a small amount of calculation and a short delay, and to eliminate the influence of an observation error. A state estimator can be configured.

本発明による一実施形態の状態推定器の概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the state estimator of one Embodiment by this invention. 本発明による一実施形態の状態推定器におけるフィルタ分布更新処理を示すフローチャートである。It is a flowchart which shows the filter distribution update process in the state estimator of one Embodiment by this invention. 本発明による一実施形態の状態推定器におけるフィルタ分布更新部の全体的な動作例を示す説明図である。It is explanatory drawing which shows the example of a whole operation | movement of the filter distribution update part in the state estimator of one Embodiment by this invention. 本発明による一実施形態の状態推定器におけるフィルタ分布更新部のフィルタ分布計算処理に関する動作例を示す説明図である。It is explanatory drawing which shows the operation example regarding the filter distribution calculation process of the filter distribution update part in the state estimator of one Embodiment by this invention. 本発明による一実施形態の状態推定器におけるフィルタ分布更新部の処理に係る重みレジスタに関する動作例を示す説明図である。It is explanatory drawing which shows the operation example regarding the weight register which concerns on the process of the filter distribution update part in the state estimator of one Embodiment by this invention. 本発明による一実施形態の状態推定器におけるフィルタ分布更新部の処理に係る尤度計算に関する動作例を示す説明図である。It is explanatory drawing which shows the operation example regarding the likelihood calculation which concerns on the process of the filter distribution update part in the state estimator of one Embodiment by this invention. 本発明による一実施形態の状態推定器におけるフィルタ分布更新部のレンジ調整処理に関する動作例を示す説明図である。It is explanatory drawing which shows the operation example regarding the range adjustment process of the filter distribution update part in the state estimator of one Embodiment by this invention. 従来からの粒子フィルタによる処理を示すフローチャートである。It is a flowchart which shows the process by the conventional particle filter. 従来からの粒子フィルタにおける全体的な動作例を示す説明図である。It is explanatory drawing which shows the example of the whole operation | movement in the conventional particle filter. 従来からの粒子フィルタにおける予測分布計算の動作例を示す説明図である。It is explanatory drawing which shows the operation example of the prediction distribution calculation in the conventional particle filter. 従来からの粒子フィルタにおけるフィルタ分布計算の動作例を示す説明図である。It is explanatory drawing which shows the operation example of filter distribution calculation in the conventional particle filter.

以下、図1乃至図7を参照して、本発明による一実施形態の状態推定器1について説明する。   Hereinafter, a state estimator 1 according to an embodiment of the present invention will be described with reference to FIGS. 1 to 7.

(装置構成)
まず、図1に、本発明による一実施形態の状態推定器1の概略構成を示している。状態推定器1は、1次元もしくは複数次元ベクトルの粒子で表現された状態ベクトルの時間変化を規定する所定のシステムモデルを用いて、入力される観測値を基に状態推定を行う装置として構成され、状態ベクトルとその状態ベクトルの重みの集合によって状態の確率分布を表現することを特徴とし、尤度計算部11、フィルタ分布更新部12、重みレジスタ13、及び推定値計算部14を備える。
(Device configuration)
First, FIG. 1 shows a schematic configuration of a state estimator 1 according to an embodiment of the present invention. The state estimator 1 is configured as a device that performs state estimation based on an input observation value using a predetermined system model that defines a time change of a state vector expressed by one-dimensional or multi-dimensional vector particles. The state probability distribution is expressed by a set of state vectors and weights of the state vectors, and includes a likelihood calculating unit 11, a filter distribution updating unit 12, a weight register 13, and an estimated value calculating unit 14.

本発明に係る状態推定器1において、状態xの確率分布をN個の状態ベクトルx(i=1,2...N)とその状態ベクトルの重みw(i=1,2...N)を用いて、確率密度関数p(x)は上述した式(1)のように表すことができる。 In the state estimator 1 according to the present invention, the state x probability distribution is divided into N state vectors x i (i = 1, 2... N) and weights w i (i = 1, 2... N) of the state vectors. .N), the probability density function p (x) can be expressed as the above-described equation (1).

尤度計算部11は、入力された観測値から予測分布x(t|t−1)を構成する各粒子の状態ベクトルに対応する尤度を計算し、その値、若しくはその定数倍の値をフィルタ分布更新部12に出力する機能部である。尤度計算部11は、状態推定対象のシステムが状態ベクトルで表される状態であるときに観測値が得られる尤度を計算する。尤度の計算方法は、粒子フィルタで用いる尤度計算方法をそのまま用いることができる。   The likelihood calculation unit 11 calculates the likelihood corresponding to the state vector of each particle constituting the prediction distribution x (t | t−1) from the input observation value, and calculates the value or a value of a constant multiple thereof. This is a functional unit that outputs to the filter distribution updating unit 12. The likelihood calculation unit 11 calculates the likelihood that an observation value is obtained when the state estimation target system is in a state represented by a state vector. The likelihood calculation method used in the particle filter can be used as it is.

ただし、本発明に係る尤度計算部11によって計算される尤度は、各状態ベクトルに対する尤度の合計が1となるよう必ずしも正規化する必要はない。即ち、割算回路(割算処理)を設けて尤度を正規化する処理を省略し処理の高速化に寄与させるよう構成することができる。この正規化処理を省略しても、後述するレンジ調整処理が設けられていることから動作上の不具合が生じないようになっている。   However, the likelihood calculated by the likelihood calculating unit 11 according to the present invention does not necessarily have to be normalized so that the total likelihood for each state vector is 1. In other words, a division circuit (division process) can be provided to omit the process of normalizing the likelihood, thereby contributing to speeding up of the process. Even if this normalization process is omitted, since a range adjustment process, which will be described later, is provided, there is no problem in operation.

フィルタ分布更新部12は、観測時刻毎に、前回計算したフィルタ分布x(t−1|t−1)を構成する各粒子の状態ベクトルに対し、システム雑音が無いとして、1次元もしくは複数次元ベクトルで表現された状態ベクトルの時間変化を規定する所定のシステムモデルに従って、各粒子の状態ベクトル及び重みレジスタ13に保持されている各粒子の重みを更新し、更新した各粒子の状態ベクトル及びこの各粒子の状態ベクトルに対する重みに拡散処理を施し更新して予測分布x(t|t−1)を計算し、この予測分布x(t|t−1)を構成する各粒子に対して、当該入力された観測値を基に尤度計算部11によって計算される当該粒子の状態ベクトルに対する尤度を当該粒子の重みに乗じた値を新たな重みとすることにより更新して、レンジ調整前のフィルタ分布x’(t|t)を計算する。そして、フィルタ分布更新部12は、当該レンジ調整前のフィルタ分布x’(t|t)を構成する各粒子の重みについてレンジ調整処理を施し、当該重みレジスタ13に保持されていた重みを当該レンジ調整処理後の重みへ更新し、レンジ調整処理を施した重みが付与されている各粒子で表現されるフィルタ分布x(t|t)を、推定値計算部14へ出力する。   The filter distribution updating unit 12 determines that there is no system noise with respect to the state vector of each particle constituting the filter distribution x (t−1 | t−1) calculated at the previous time for each observation time. In accordance with a predetermined system model that defines the time change of the state vector expressed by the above, the state vector of each particle and the weight of each particle held in the weight register 13 are updated, and the updated state vector of each particle and each of these The prediction distribution x (t | t−1) is calculated by performing diffusion processing on the weights for the state vectors of the particles and updated, and for each particle constituting the prediction distribution x (t | t−1), the input Updating the likelihood of the particle state vector calculated by the likelihood calculation unit 11 based on the observed value by multiplying the weight of the particle by a new weight, Filter distribution before Nji adjustment x '(t | t) is calculated. Then, the filter distribution updating unit 12 performs range adjustment processing on the weight of each particle constituting the filter distribution x ′ (t | t) before the range adjustment, and the weight held in the weight register 13 is applied to the range. The weight is updated to the weight after the adjustment process, and the filter distribution x (t | t) expressed by each particle to which the weight subjected to the range adjustment process is given is output to the estimated value calculation unit 14.

より具体的には、フィルタ分布更新部12は、まず、観測値を得た時刻毎に前回計算したフィルタ分布x(t−1|t−1)を構成する各粒子の状態ベクトルに対して、重みレジスタ13に保持されている重みを基に、システム雑音が無いとして、観測値を得た時刻における状態ベクトルを計算して各粒子の状態ベクトルを更新し、重みレジスタ13に保持されている重みをこの更新後の各粒子の状態ベクトルに対応づけて更新する処理を行う。尚、フィルタ分布更新部12は、2つ以上の粒子の状態ベクトルの更新後の状態ベクトルが一致する場合には、粒子を1つにまとめ、それらの更新前の粒子の重みを加算した値をまとめた粒子の重みとする処理を行う。続いて、フィルタ分布更新部12は、このシステム雑音無しとして計算した各状態ベクトルに対応する重みに対し、加重平均又はローパスフィルタ処理、もしくは一定範囲の状態ベクトルの重みに均等に一定値を加算する処理により、予測分布の分散を拡大する拡散処理を行い、予測分布x(t|t−1)とする。   More specifically, the filter distribution updating unit 12 first calculates the state vector of each particle constituting the filter distribution x (t−1 | t−1) calculated at the previous time for each time when the observation value was obtained. Based on the weight held in the weight register 13, assuming that there is no system noise, the state vector at the time when the observation value is obtained is calculated to update the state vector of each particle, and the weight held in the weight register 13 Is updated in association with the updated state vector of each particle. Note that if the state vectors after the update of the state vectors of two or more particles match, the filter distribution update unit 12 collects the particles into one, and adds a value obtained by adding the weights of the particles before the update. The process of setting the weight of the collected particles is performed. Subsequently, the filter distribution updating unit 12 adds a constant value evenly to the weight corresponding to each state vector calculated as having no system noise, to the weighted average or low-pass filter processing, or the weight of the state vector in a certain range. Through the process, a diffusion process for expanding the variance of the predicted distribution is performed to obtain a predicted distribution x (t | t−1).

一定値を加算する一定範囲としては、例えば、前回推定した状態ベクトルの期待値を中心とする前回推定した状態ベクトルの標準偏差の定数倍の範囲内や、状態ベクトルの範囲を限定する場合はその範囲内全てとすることができる。   For example, when the range of the state vector is limited within the range of a constant multiple of the standard deviation of the previously estimated state vector centered on the expected value of the previously estimated state vector, All within range.

これにより、擬似乱数を用いてシステム雑音v(t)を計算することなしに、前回のフィルタ分布x(t−1|t−1)から計算した観測時刻における状態予測分布を拡散し、状態の予測範囲を意図的に拡がりを持たせることができる。このように、フィルタ分布更新部12は、前回計算したフィルタ分布x(t−1|t−1)を構成する各粒子の状態ベクトルと重み、システムモデルを用いて観測時刻におけるシステム雑音無しの状態予測分布を計算しこれに拡散処理を施すことで、擬似乱数を計算することなしに拡散された予測分布x(t|t−1)を計算する。   As a result, the state prediction distribution at the observation time calculated from the previous filter distribution x (t−1 | t−1) is diffused without calculating the system noise v (t) using pseudorandom numbers, and the state The prediction range can be intentionally expanded. Thus, the filter distribution updating unit 12 uses the state vector and weight of each particle constituting the previously calculated filter distribution x (t−1 | t−1), the system model, and the state without system noise at the observation time. A predicted distribution x (t | t−1) is calculated without calculating a pseudo-random number by calculating a prediction distribution and performing a diffusion process on the prediction distribution.

続いて、フィルタ分布更新部12は、拡散処理を施した予測分布x(t|t−1)を構成する各状態ベクトルに対して当該入力された観測値を基に尤度計算部11によって計算されている尤度を当該粒子の重みに乗じた値を新たな重みとすることにより、フィルタ分布x(t|t)を計算する。   Subsequently, the filter distribution updating unit 12 calculates the likelihood calculation unit 11 based on the input observation value for each state vector constituting the prediction distribution x (t | t−1) subjected to the diffusion process. The filter distribution x (t | t) is calculated by using a value obtained by multiplying the weight of the relevant particle by the weight of the particle as a new weight.

続いて、フィルタ分布更新部12は、当該フィルタ分布x(t|t)を構成する各状態ベクトルの重みに対して一定の範囲に収めるレンジ調整処理を施し、当該重みレジスタ13に保持されていた重みを当該レンジ調整処理後の重みで更新する。従って、フィルタ分布更新部12は、重みレジスタ13に対し、フィルタ分布を計算する毎に当該フィルタ分布を構成する各粒子の状態ベクトルの各々の重みを更新して保持させる。   Subsequently, the filter distribution updating unit 12 performs range adjustment processing for keeping the weight of each state vector constituting the filter distribution x (t | t) within a certain range, and is held in the weight register 13. The weight is updated with the weight after the range adjustment process. Accordingly, the filter distribution update unit 12 causes the weight register 13 to update and hold the weight of each state vector of each particle constituting the filter distribution every time the filter distribution is calculated.

レンジ調整処理は、当該フィルタ分布内の複数の状態ベクトルの全ての重みを一定の比率で増減させ、最も大きな重みの値を一定の範囲に収める処理である。特に、このレンジ調整処理は、重みレジスタ13へと更新する重みの最大値が第1閾値Th1を超える場合には、その全ての重みを一定の比率で小さくし、重みレジスタ13へと更新する重みの最大値が第2閾値Th2以下となる場合には、全ての重みを一定の比率で大きくする。このレンジ調整処理があるため、フィルタ分布を計算するために用いる尤度の正規化処理を省略し、全体的な動作を高速化させることができる。   The range adjustment process is a process for increasing / decreasing all the weights of a plurality of state vectors in the filter distribution at a certain ratio and keeping the largest weight value within a certain range. In particular, in the range adjustment process, when the maximum value of the weight updated to the weight register 13 exceeds the first threshold value Th1, all the weights are reduced by a certain ratio, and the weight updated to the weight register 13 is updated. When the maximum value of becomes less than or equal to the second threshold Th2, all weights are increased at a constant ratio. Since there is this range adjustment process, the likelihood normalization process used to calculate the filter distribution can be omitted, and the overall operation can be speeded up.

そして、フィルタ分布更新部12は、状態ベクトル及びレンジ調整処理を施した重みが付与されている粒子で表現されるフィルタ分布を推定値計算部14へ出力する。   Then, the filter distribution update unit 12 outputs the filter distribution expressed by the state vector and the particles to which the weight subjected to the range adjustment process is given to the estimated value calculation unit 14.

重みレジスタ13は、初期値として所定のシステムモデルに従う予め定められた複数の粒子の状態ベクトルにそれぞれ対応する重みを記憶しているが、フィルタ分布更新部12によりフィルタ分布を計算する毎に、当該フィルタ分布を構成する複数の粒子の状態ベクトルの重みを更新して保持する機能部である。つまり、重みレジスタ13は、今回計算するフィルタ分布を構成する粒子の状態ベクトルに対応づけるために前回値の重みを読み出し、今回計算後のフィルタ分布内の複数の状態ベクトルに対応づけて今回値の重みを書き込むことで、フィルタ分布を計算する毎に、当該フィルタ分布内の複数の状態ベクトルの重みを更新して保持する機能部である。尚、重みレジスタ13は、フィルタ分布更新部12が予測分布x(t|t−1)を計算する際にも用いられる。   The weight register 13 stores weights respectively corresponding to a plurality of predetermined state vectors of particles according to a predetermined system model as an initial value, but every time the filter distribution update unit 12 calculates the filter distribution, It is a functional unit that updates and holds the weights of the state vectors of a plurality of particles constituting the filter distribution. That is, the weight register 13 reads the weight of the previous value in order to associate with the state vector of the particles constituting the filter distribution calculated this time, and associates the current value with the plurality of state vectors in the filter distribution after the current calculation. Each time the filter distribution is calculated by writing the weight, the function unit updates and holds the weights of the plurality of state vectors in the filter distribution. The weight register 13 is also used when the filter distribution updating unit 12 calculates the predicted distribution x (t | t−1).

推定値計算部14は、フィルタ分布更新部12から得られるレンジ調整処理を施した重みが付与されている各粒子の状態ベクトル及び重みで表現される今回のフィルタ分布x(t|t)から、粒子の状態ベクトルの期待値や中央値或いは信頼区間などを計算することで推定した状態の期待値や中央値、或いは信頼区間を導出し、推定値として外部に出力する機能部である。   From the current filter distribution x (t | t) expressed by the state vector and the weight of each particle to which the weight subjected to the range adjustment process obtained from the filter distribution updating unit 12 is given the weight, the estimated value calculation unit 14 This is a functional unit that derives the expected value, median value, or confidence interval of the state estimated by calculating the expected value, median value, or confidence interval of the particle state vector, and outputs the result to the outside as an estimated value.

(装置動作)
以下、図1に示す状態推定器1の動作について、従来技法の粒子フィルタと対比可能にするために、図2及び図3に示すフィルタ分布更新処理を中心に詳細に説明する。図2は、本発明による一実施形態の状態推定器1におけるフィルタ分布更新部12の処理(フィルタ分布更新処理)を示すフローチャートである。図3は、本発明による一実施形態の状態推定器1におけるフィルタ分布更新部12の全体的な動作例を示す説明図である。
(Device operation)
Hereinafter, the operation of the state estimator 1 shown in FIG. 1 will be described in detail focusing on the filter distribution update processing shown in FIGS. 2 and 3 in order to be able to compare with the particle filter of the conventional technique. FIG. 2 is a flowchart showing a process (filter distribution update process) of the filter distribution update unit 12 in the state estimator 1 according to the embodiment of the present invention. FIG. 3 is an explanatory diagram illustrating an overall operation example of the filter distribution updating unit 12 in the state estimator 1 according to the embodiment of the present invention.

図2及び図3を参照して説明する前に、まず、本実施形態に係る状態推定器1は、予測対象の状態(確率変数)Xの確率密度関数p(X)を、状態xとその状態の重みwを粒子とする集合によって表現する点で粒子フィルタと同様であるが、大きな相違点として、疑似乱数ではなく拡散処理によりシステム雑音の付与に相当する予測分布の拡散を行う点と、フィルタ分布に基づく状態推定結果を得るにあたり、リサンプル処理を行うのではなくレンジ調整を行う点で相違している。 Before describing with reference to FIG. 2 and FIG. 3, first, the state estimator 1 according to the present embodiment uses a probability density function p (X) of a state to be predicted (a random variable) X as a state x i . It is the same as the particle filter in that the weight w i of the state is expressed by a set of particles, but the main difference is that the prediction distribution corresponding to the addition of system noise is performed not by pseudorandom numbers but by diffusion processing. The difference is that, in obtaining the state estimation result based on the filter distribution, the range adjustment is performed instead of the resampling process.

また、x(t), y(t), v(t), u(t)は、それぞれ時刻tにおける状態のベクトル、観測値のベクトル、システム雑音のベクトル、観測雑音のベクトルを表すものとする。そして、時系列データの状態空間モデルが、状態x(t)=F(x(t−1),v(t))のシステムモデルと、観測値y(t)=H(x(t),u(t))の観測モデルに従うものとする。   In addition, x (t), y (t), v (t), and u (t) represent a state vector, an observation value vector, a system noise vector, and an observation noise vector at time t, respectively. . Then, the state space model of the time series data includes the system model of the state x (t) = F (x (t−1), v (t)) and the observed value y (t) = H (x (t), Suppose that it follows the observation model of u (t)).

そして、図3に示す動物体の時系列データの状態推定システムの例では、状態x(t)をシステム雑音を加えた時刻tにおける位置Xa([km])と速度Xb([km/h])で構成される2次元のベクトル(Xa,Xb)とし、観測値y(t)については、時刻tにて観測する位置Xa(t)に観測雑音u(t)を加えたものとしている。時刻tにおける状態x(t)の取りうる状態xを仮にXa={10.1, 10.2, 10.3, 10.4, 10.5, 10.6}, Xb={39,40,41}に限定して、その動作を説明する。この場合、状態(Xa,Xb)はXaとXbを組みあわた18の状態をとりうる。本例の処理上では、時刻tにおいてはこの18通りのいずれかの状態をとるよう構成する例を説明するが、時間経過とともに取りうる状態は更新されるべきものであり、また、内挿補間するよう構成することもできる。 In the example of the state estimation system of the time series data of the moving object shown in FIG. 3, the position Xa ([km]) and the speed Xb ([km / h]) at the time t when the system noise is added to the state x (t). The observed value y (t) is obtained by adding the observation noise u (t) to the position Xa (t) observed at time t. The possible states x i of the state x (t) at time t are assumed to be Xa = {10.1, 10.2, 10.3, 10.4, 10.5, 10.6}, Xb = {39, 40 , 41}, the operation will be described. In this case, the state (Xa, Xb) can take the state of 18 in which Xa and Xb are combined. In the processing of this example, an example in which any one of these 18 states is taken at time t will be described. However, the states that can be taken as time elapses should be updated, and interpolation interpolation is performed. It can also be configured.

ここで、状態x(t)の取りうる各状態をビット列や数値に対応させるのが好適である。例えば、Xaに対して{“001”, “010”, “011”, “100”, “101”, “110”, “111” }を、Xbに対して{“00”, “01”, “10”}を対応させることで、(Xa,Xb)の状態を、これら2進数を結合した5ビットの2進数に対応づけることができ、処理構成を容易化し高速処理に寄与させることができる。このほか、18種類の各状態に順番に1から18までの整数を対応させてもよい。   Here, it is preferable that each state that the state x (t) can take corresponds to a bit string or a numerical value. For example, {“001”, “010”, “011”, “100”, “101”, “110”, “111”} for Xa and {“00”, “01”, By making "10"} correspond, the state of (Xa, Xb) can be associated with a 5-bit binary number obtained by combining these binary numbers, and the processing configuration can be simplified and contributed to high-speed processing. . In addition, an integer from 1 to 18 may correspond to each of the 18 types of states in order.

図1に示す状態推定器1におけるフィルタ分布更新部12は、尤度計算部11から得られる尤度と、重みレジスタ13に保持されている重みを基に、本例では2次元で表される状態の変化を規定するシステムモデルに従って、観測値y(t)を得る毎に前回計算したフィルタ分布x(t−1|t−1)から、推定値を導出可能な今回のフィルタ分布x(t|t)を求め、今回のフィルタ分布とするよう動作する。   The filter distribution updating unit 12 in the state estimator 1 shown in FIG. 1 is expressed in two dimensions in this example based on the likelihood obtained from the likelihood calculating unit 11 and the weight held in the weight register 13. The current filter distribution x (t, from which the estimated value can be derived from the filter distribution x (t−1 | t−1) previously calculated every time the observation value y (t) is obtained according to the system model that defines the change in state. | T) is obtained, and the operation is performed to obtain the current filter distribution.

尤度計算部11は、観測値y(t)= yを入力し、状態x(t)がxの時に観測値yを観測する尤度p(y|x)を計算し、その値、若しくはその定数倍の値をフィルタ分布更新部12に出力する。 Likelihood calculating unit 11 receives the observation value y (t) = y, the state x (t) is the likelihood p to observe the observed value y when x i | calculates the (y x i), the value Or a value of a constant multiple thereof is output to the filter distribution updating unit 12.

尤度計算部11とフィルタ分布更新部12との接続は、例えばフィルタ分布更新部12がフィルタ分布を計算する過程において、その計算に必要となった状態xの尤度を尤度計算部11に対し逐次要求し、尤度計算部11は、その要求された状態xについての観測値yに基づく尤度を計算してフィルタ分布更新部12に出力する構成とすることができる。この状態xの尤度の要求は、状態x(t)の取りうる各状態xを対応させた当該ビット列や数値を用いることで指定することができる。このほか、尤度計算部11は、当該取りうる状態xの尤度を一度に計算して、当該状態xに対応するビット列や数値を対応する順序で、一括してフィルタ分布更新部12に出力する構成とすることもできる。 The likelihood calculation unit 11 and the filter distribution update unit 12 are connected, for example, in the process in which the filter distribution update unit 12 calculates the filter distribution, the likelihood of the state x i required for the calculation is calculated by the likelihood calculation unit 11. The likelihood calculating unit 11 can calculate the likelihood based on the observed value y for the requested state x i and output the likelihood to the filter distribution updating unit 12. Request of the likelihood of the state x i may be specified by using the bit string or a number that each state x i is made to correspond that can be taken of the state x (t). In addition, the likelihood calculating unit 11 calculates the likelihood of the possible state x i at a time, and collectively applies the bit string and the numerical value corresponding to the state x i in the order corresponding to the filter distribution updating unit 12. It can also be set as the structure output to.

そして、重みレジスタ13は、特定の状態x(t)=xを持つ粒子の重みwを記憶し、その重みwを状態x(t)=xに対応づけて読み出す機能及び書き込む機能を持つ記憶部である。以下、時刻tの状態xに対応する重みレジスタをwとする。また、図3に例示する動物体の位置予測を行うシステムにおける、状態(Xa,Xb)の重みをW(Xa,Xb)とする。 The weight register 13 stores the weight w i of particles having a specific state x (t) = x i , and the function of reading and writing the weight w i in association with the state x (t) = x i It is a memory part with. Hereinafter, the weight register corresponding to the state x i at time t is denoted by w i . Further, the weight of the state (Xa, Xb) in the system for predicting the position of the moving object illustrated in FIG. 3 is assumed to be W (Xa, Xb).

上述したように、状態x(t)の取りうる状態は、本例では、XaとXbの組み合わせ18通りである。これらの各状態に対応する重みがあることから、重みレジスタ13は、18通りの重みWを記憶し、フィルタ分布更新部12の制御によって各状態に対応する重みWを指定して読み出し、書き込みを行うよう動作する。そして、前述したように、各状態をビット列や数値に対応させることで、重みレジスタ13においても各状態を図示しない記憶装置のアドレスに対応づけることができ、容易に実装でき、処理の高効率化を図ることができる。   As described above, the states x (t) can be in 18 possible combinations of Xa and Xb in this example. Since there is a weight corresponding to each of these states, the weight register 13 stores 18 kinds of weights W, specifies the weight W corresponding to each state under the control of the filter distribution update unit 12, and reads and writes the weights. Operates to do. As described above, each state can be associated with an address of a storage device (not shown) in the weight register 13 by associating each state with a bit string or a numerical value. Can be achieved.

(フィルタ分布更新処理)
まず、図2に示すように、状態推定器1におけるフィルタ分布更新部12は、その処理に先立ち、重みレジスタ13に初期重みを設定する(ステップS1)。ここで、各状態の初期分布を予測できる場合にはその値を設置するが、予測できない場合は、均等な重みを設定してもよい。以後、重みレジスタ13に保持されている重みは、フィルタ分布更新部12の処理によって、以下に説明する前回のフィルタ分布x(t−1|t−1)に基づくシステム雑音を無しとした予測分布x’(t|t−1)の計算時、続いて拡散処理を施して得られる予測分布x(t|t−1)の計算時、続いて尤度を加味したフィルタ分布x(t|t)の計算時、最後にレンジ調整処理を施したフィルタ分布x(t|t)の計算時にて、各粒子の状態ベクトルの更新に対応付けて更新される。
(Filter distribution update process)
First, as shown in FIG. 2, the filter distribution updating unit 12 in the state estimator 1 sets an initial weight in the weight register 13 prior to the processing (step S1). Here, when the initial distribution of each state can be predicted, the value is set, but when it cannot be predicted, an equal weight may be set. Thereafter, the weight held in the weight register 13 is a predicted distribution with no system noise based on the previous filter distribution x (t−1 | t−1) described below by the processing of the filter distribution updating unit 12. When calculating x ′ (t | t−1), subsequently calculating the prediction distribution x (t | t−1) obtained by performing the diffusion process, and subsequently, the filter distribution x (t | t taking into account the likelihood. ) At the time of calculation, and at the time of calculation of the filter distribution x (t | t) that is finally subjected to the range adjustment processing, it is updated in association with the update of the state vector of each particle.

そして、フィルタ分布更新部12は、「前回のフィルタ分布x(t−1|t−1)」における各粒子(状態ベクトル及びその重み)に対して重みレジスタ13に保持されている重みを基に拡散処理を施して予測分布x(t|t−1)を計算し(ステップS2)、この予測分布における各粒子に対して当該入力された観測値y(t)を基に尤度計算部11によって計算される尤度を当該粒子の重みに乗じた値を新たな重みとすることにより、フィルタ分布x(t|t)を計算する(ステップS3)。   Then, the filter distribution update unit 12 based on the weight held in the weight register 13 for each particle (state vector and its weight) in the “previous filter distribution x (t−1 | t−1)”. Prediction distribution x (t | t−1) is calculated by performing diffusion processing (step S2), and likelihood calculation unit 11 is based on the input observation value y (t) for each particle in the prediction distribution. The filter distribution x (t | t) is calculated by using a value obtained by multiplying the likelihood calculated by the weight of the particle as a new weight (step S3).

そして、フィルタ分布更新部12は、当該フィルタ分布x(t|t)における各粒子における重みについてレンジ調整処理を施し(ステップS4)、当該重みレジスタ13に保持されていた重みを当該レンジ調整処理後の重みへ更新し、レンジ調整処理を施した重みが付与されている各粒子で表現される今回のフィルタ分布x(t|t)を推定値計算部14へ出力する。このステップS2乃至S4の繰り返しで、フィルタ分布が更新される。   Then, the filter distribution updating unit 12 performs a range adjustment process on the weight of each particle in the filter distribution x (t | t) (step S4), and the weight held in the weight register 13 is applied to the weight after the range adjustment process. The current filter distribution x (t | t) expressed by each particle to which the weight subjected to the range adjustment process is applied is output to the estimated value calculation unit 14. The filter distribution is updated by repeating steps S2 to S4.

以下、図3を参照しながら、フィルタ分布更新部12におけるステップS2乃至S4の各処理を順に説明する。   Hereinafter, each processing of steps S2 to S4 in the filter distribution update unit 12 will be described in order with reference to FIG.

まず、フィルタ分布更新部12は、前回のフィルタ分布x(t−1|t−1)から拡散処理に基づく予測分布x(t|t−1)を計算する(ステップS2)。   First, the filter distribution updating unit 12 calculates a predicted distribution x (t | t−1) based on the diffusion process from the previous filter distribution x (t−1 | t−1) (step S2).

ここで、前述した粒子フィルタの処理では擬似乱数v(t)を作成した後、システムモデルx(t)=F(x(t−1),v(t))に適用することで予測分布x(t|t−1)を計算するものとなっているが、この擬似乱数の計算に多くの計算資源が必要となり、高速処理の妨げとなる。   Here, in the processing of the particle filter described above, a pseudo-random number v (t) is generated and then applied to the system model x (t) = F (x (t−1), v (t)), thereby predicting the distribution x. Although (t | t−1) is calculated, a large amount of calculation resources are required for the calculation of the pseudo-random number, which hinders high-speed processing.

そこで、本発明に係るフィルタ分布更新部12は、擬似乱数の生成を行うことなく、重みレジスタ13に保持されている重みを基に状態変数空間上で近傍に存在する粒子に拡散するよう構成している。   Therefore, the filter distribution updating unit 12 according to the present invention is configured to diffuse to particles present in the vicinity in the state variable space based on the weight held in the weight register 13 without generating a pseudo-random number. ing.

この拡散処理は例えば、近傍に存在する粒子の重みを用いた加重平均やローパスフィルタ、もしくは一定範囲の状態ベクトルの重みに均等に一定値を加算する処理を用いることができる。以後、拡散処理を行った各粒子の新たな重みが予測分布x(t|t−1)に用いられる。   For example, the diffusion process can be a weighted average using the weights of particles existing in the vicinity, a low-pass filter, or a process of adding a constant value evenly to the weights of a certain range of state vectors. Thereafter, the new weight of each particle subjected to the diffusion process is used for the predicted distribution x (t | t−1).

この拡散処理に加重平均やローパスフィルタを用いると、粒子の重みが状態変数空間上で近傍にある粒子に拡散されるため、従来技法の粒子フィルタにおける擬似乱数によって各粒子を拡散する処理と類似の効果を与えることができる。   If a weighted average or low-pass filter is used for this diffusion process, the weight of the particles is diffused to the nearby particles in the state variable space, so it is similar to the process of diffusing each particle with pseudorandom numbers in the conventional particle filter. Can give an effect.

より具体的には、従来技法の粒子フィルタでは、予測分布の計算を粒子毎に行うために粒子の数×システム雑音の次元数の擬似乱数を計算する必要があったが、本発明に係るフィルタ分布更新部12では、擬似乱数を用いる代わりに拡散処理とすることで、大幅な計算量の削減が可能である。拡散処理は、例えば、時刻(t)におけるシステム雑音を無しとして予測した各粒子について、それぞれの注目粒子の周囲(例えば4点)に粒子がなければ重み0の新たな粒子を追加し、各粒子に対してその粒子の周囲の重みを加重平均した値を新たな重みとして与えることにより拡散する。   More specifically, in the conventional particle filter, it is necessary to calculate a pseudo-random number of the number of particles × the number of dimensions of system noise in order to calculate a prediction distribution for each particle. The distribution updating unit 12 can significantly reduce the calculation amount by performing diffusion processing instead of using pseudorandom numbers. In the diffusion process, for example, for each particle predicted as having no system noise at time (t), a new particle having a weight of 0 is added if there is no particle around each particle of interest (for example, four points). Is diffused by giving, as a new weight, a weighted average of the weights around the particles.

また、別の例としては、図4(b)における全ての格子点に相当する、前回推定したフィルタ分布x(t−1|t−1)の期待値の近傍の状態ベクトルを持つ粒子について、時刻tにおける状態ベクトルの予測値を含む一定範囲の等間隔の状態ベクトルに対し新たな重みを与えて拡散する際に、時刻tの時点で既に粒子が存在しなければ、重み0の粒子を追加した後、全ての粒子に対して、その周囲の重みを加重平均した値、もしくはローパスフィルタ処理を施した値、もしくは元の重みに一定の値を加算した値を、新たな重みとして与えることにより拡散する。   As another example, for particles having a state vector near the expected value of the previously estimated filter distribution x (t−1 | t−1) corresponding to all the lattice points in FIG. When spreading by assigning a new weight to a constant range of equally spaced state vectors including the predicted value of the state vector at time t, a particle with a weight of 0 is added if no particle already exists at time t After that, by giving a weighted average value of the surrounding weights, a value subjected to low-pass filter processing, or a value obtained by adding a constant value to the original weight as a new weight for all particles Spread.

より具体的には、予測分布の計算にあたって、フィルタ分布更新部12は、新たな観測値を得る毎に、まず、前回計算したフィルタ分布x(t−1|t−1)(図4(a)参照)から、重みレジスタ13に保持されている重みを基に、システムモデルx(t)=F(x(t−1),v(t))におけるシステム雑音無しとして、x’(t)=F(x(t−1),0)の予測分布x’(t|t−1)を計算する(図4(b)参照)。図4(a)等では、粒子の重みwを黒丸の大きさで表している。 More specifically, when calculating the predicted distribution, the filter distribution updating unit 12 first obtains a newly calculated filter distribution x (t−1 | t−1) (FIG. 4A). ))), Based on the weight held in the weight register 13, x ′ (t) is determined as no system noise in the system model x (t) = F (x (t−1), v (t)). = Predicted distribution x ′ (t | t−1) of F (x (t−1), 0) is calculated (see FIG. 4B). In FIG. 4A and the like, the particle weight w i is represented by the size of a black circle.

例として、状態推定の対象とするシステムが次式で表せる2次元の状態ベクトルをもつ線形のシステムモデルであるとして説明する。
Xa(t)=Xa(t−1)+ Xb(t−1)*Δt +v1(t)
Xb(t)=Xb(t−1)+v2(t)
ここで、2次元の状態ベクトルはXaとXbの要素をもち、時刻tにおける状態ベクトルがXa(t),Xb(t)とで構成され、Δtは前回の観測時刻から今回の観測時刻までの経過時間であり、v1(t),v2(t)は時刻tのシステム雑音とする。
As an example, a description will be given assuming that the system that is the target of state estimation is a linear system model having a two-dimensional state vector that can be expressed by the following equation.
Xa (t) = Xa (t−1) + Xb (t−1) * Δt + v1 (t)
Xb (t) = Xb (t-1) + v2 (t)
Here, the two-dimensional state vector has elements Xa and Xb, the state vector at time t is composed of Xa (t) and Xb (t), and Δt is from the previous observation time to the current observation time. Elapsed time, and v1 (t) and v2 (t) are system noises at time t.

従来の粒子フィルタでは、各粒子の予測値を計算する毎に疑似乱数を計算して、時刻t−1の粒子の状態ベクトルと、疑似乱数から計算したv1(t)、v2(t)を当該システムモデルに代入することにより状態ベクトルの予測値を計算していた。従来の粒子フィルタでは、リサンプル処理によって粒子が複製されるため、同じ状態ベクトルをもつ粒子が多数存在するが、疑似乱数の項があるため、時刻t−1の状態ベクトルが同じ値をもつ粒子であっても、状態ベクトルの予測値は同一の値とならない。このように、システム雑音は予測分布の分散を大きくする効果をもっている。   In the conventional particle filter, a pseudo random number is calculated every time a predicted value of each particle is calculated, and v1 (t) and v2 (t) calculated from the state vector of the particle at time t-1 and the pseudo random number are The predicted value of the state vector was calculated by assigning it to the system model. In the conventional particle filter, since the particles are duplicated by the resampling process, there are a large number of particles having the same state vector. However, since there is a pseudo-random term, the particles having the same value at the time t−1 in the state vector. Even so, the predicted value of the state vector is not the same value. Thus, the system noise has the effect of increasing the variance of the prediction distribution.

一方、本発明に係る状態推定器1では、疑似乱数の計算を行わないものとしている。このため本発明に係る状態推定器1は、システム雑音を無しとして、すなわちv1(t),v2(t)を0として、各粒子のt−1の状態を当該システムモデルに代入することで、粒子の状態ベクトルの予測値を計算した後、状態ベクトルの拡散処理を行う。このようにして、本発明に係る状態推定器1では、拡散処理により予測分布の分散を大きくすることで、システム雑音の付与と同様の効果を得ることができる。   On the other hand, the state estimator 1 according to the present invention does not calculate pseudo random numbers. For this reason, the state estimator 1 according to the present invention assigns the state of each particle t-1 to the system model with no system noise, that is, v1 (t) and v2 (t) as 0, After calculating the predicted value of the state vector of the particle, the state vector is diffused. In this way, the state estimator 1 according to the present invention can obtain the same effect as the application of the system noise by increasing the variance of the prediction distribution by the diffusion process.

本発明に係る状態推定器1では、図5に示すように、システム雑音を無しとして、すなわちv1(t),v2(t)を0として、各粒子の状態(Xa,Xb)をこのシステムモデルに代入し、システム雑音を無しとした状態予測値を計算し、予測前の各粒子の重みをそのまま対応付けて設定する。尚、2つ以上の粒子の予測後の状態が一致する場合には、粒子を1つにまとめ、それらの更新前の粒子の重みを加算した値をまとめた粒子の重みとする。このようにして、図4(a)に示すフィルタ分布x(t−1|t−1)から図4(b)に示す予測分布x’(t|t−1)を計算する。   In the state estimator 1 according to the present invention, as shown in FIG. 5, there is no system noise, that is, v1 (t) and v2 (t) are set to 0, and the state (Xa, Xb) of each particle is this system model. The state prediction value with no system noise is calculated, and the weight of each particle before prediction is set in association with it as it is. When two or more particles have the same predicted state, the particles are combined into one, and a value obtained by adding the weights of the particles before the update is used as the combined particle weight. In this way, the predicted distribution x ′ (t | t−1) shown in FIG. 4B is calculated from the filter distribution x (t−1 | t−1) shown in FIG.

図5に示す例ではW’(Xa+Xb*Δt,Xb)=W(Xa, Xb)となる。ここで、W’(Xa,Xb)はシステム雑音を無しとしたときの重みである。   In the example shown in FIG. 5, W ′ (Xa + Xb * Δt, Xb) = W (Xa, Xb). Here, W ′ (Xa, Xb) is a weight when there is no system noise.

続いて、フィルタ分布更新部12は、重みレジスタ13に保持されている重みを基に、当該フィルタ分布における各粒子に対する近傍位置に新たな粒子を追加する拡散処理を行うことにより、システム雑音v1(t),v2(t)を与え、各粒子の状態x(t)を示す予測分布x(t|t−1)を計算する(図4(c)参照)。   Subsequently, the filter distribution updating unit 12 performs a diffusion process for adding new particles to the vicinity of each particle in the filter distribution based on the weight held in the weight register 13, so that the system noise v <b> 1 ( t) and v2 (t) are given, and a predicted distribution x (t | t−1) indicating the state x (t) of each particle is calculated (see FIG. 4C).

例えば、加重平均で拡散処理を行う例として、
W’’(Xa,Xb)=(W’(Xa−0.1,Xb)
+W’(Xa,Xb)*12
+W’(Xa+0.1, Xb)
+W’(Xa,Xb−1)
+W’(Xa,Xb+1))/16
とするように、注目粒子の周囲4点を加えたシステム雑音を無しとしたときの各粒子の重みW’(Xa,Xb)の加重平均で、拡散後の各粒子の重みW’’(Xa,Xb)を計算することができる(図5参照)。
For example, as an example of performing diffusion processing with a weighted average,
W ″ (Xa, Xb) = (W ′ (Xa−0.1, Xb)
+ W ′ (Xa, Xb) * 12
+ W '(Xa + 0.1, Xb)
+ W ′ (Xa, Xb−1)
+ W ′ (Xa, Xb + 1)) / 16
As described above, the weighted average of the weights W ′ (Xa, Xb) of each particle when the system noise obtained by adding four points around the target particle is eliminated, and the weight W ″ (Xa) of each particle after diffusion. , Xb) can be calculated (see FIG. 5).

続いて、フィルタ分布更新部12は、拡散処理を施した予測分布x(t|t−1)における各粒子の状態xに対して(図6(a)参照)、当該入力された観測値y(t)=yを基に尤度計算部11によって計算されている尤度p(y|x)を割り当て(図6(b)参照)、図6(c)に示すフィルタ分布を計算する(ステップS3)。このとき、フィルタ分布更新部12は、状態x(t)=xの重みwに尤度p(y|x)を乗じた値を、状態x(t)=xの新たな重みw(図5に示すW’’’)として、重みレジスタ13に保持されている重みを更新する(図4(d)及び図5参照)。 Subsequently, filter the distribution updating unit 12, the prediction was subjected to diffusion treatment distribution x | against state x i of each particle in the (t t-1) (see FIG. 6 (a)), the input observations The likelihood p (y | x i ) calculated by the likelihood calculating unit 11 is assigned based on y (t) = y (see FIG. 6B), and the filter distribution shown in FIG. 6C is calculated. (Step S3). At this time, the filter distribution updating unit 12 uses a value obtained by multiplying the weight w i of the state x (t) = x i by the likelihood p (y | x i ) as a new weight of the state x (t) = x i. As w i (W ′ ″ shown in FIG. 5), the weight held in the weight register 13 is updated (see FIG. 4D and FIG. 5).

続いて、フィルタ分布更新部12は、当該フィルタ分布における各粒子における重みを一定の範囲に収めるレンジ調整処理を施し、当該重みレジスタ13に保持されていた重みを当該フィルタ分布における各粒子に対応付けたレンジ調整処理後の重みへ更新する(ステップS4)。従って、フィルタ分布更新部12は、重みレジスタ13に対し、フィルタ分布を計算する毎に当該フィルタ分布内の複数の粒子の各々の重みを更新して保持させる。   Subsequently, the filter distribution updating unit 12 performs a range adjustment process for keeping the weight of each particle in the filter distribution within a certain range, and associates the weight held in the weight register 13 with each particle in the filter distribution. The weight is updated to the weight after the range adjustment process (step S4). Accordingly, the filter distribution updating unit 12 causes the weight register 13 to update and hold the weight of each of the plurality of particles in the filter distribution every time the filter distribution is calculated.

このように、従来技法の粒子フィルタでは、前述したようにフィルタ分布の計算後にリサンプル処理を行うが、本発明に係るフィルタ分布更新部12は、リサンプル処理を行わずにレンジ調整を行うよう動作する。   As described above, in the conventional particle filter, as described above, the resampling process is performed after the filter distribution is calculated. However, the filter distribution updating unit 12 according to the present invention performs the range adjustment without performing the resampling process. Operate.

フィルタ分布の計算後では、重みwの値が全体的に小さくなることがあり、その場合には計算精度が低下する。また、重みwの値が極端に大きくなることもあり、オーバーフローが発生して正しい重みから大きく外れてしまい、その場合にも計算精度が低下する。例えば、観測値における観測雑音がその観測真値に対してプラス方向に極めて大きいとき、フィルタ分布内の全体の粒子の重みが影響を受けてしまい、その全ての重みが全体的に小さくなってしまうことがある。また、尤度計算部11の出力は尤度の定数倍としているため、定数の値によっては重みwの値が極端に大きくなる場合もある。 After the calculation of the filter distribution, the value of the weight w i may become smaller as a whole, in which case the calculation accuracy is reduced. In addition, the value of the weight w i may become extremely large, and an overflow occurs and deviates greatly from the correct weight. In this case, the calculation accuracy also decreases. For example, when the observed noise in an observed value is extremely large in the positive direction with respect to the observed true value, the weight of the entire particle in the filter distribution is affected, and all the weights become smaller overall. Sometimes. In addition, since the output of the likelihood calculation unit 11 is a constant multiple of the likelihood, the value of the weight w i may be extremely large depending on the value of the constant.

そこで、フィルタ分布更新部12は、フィルタ分布の計算後に、当該フィルタ分布内の複数の粒子の全ての重みを一定の比率で増減させ、最も大きな重みの値を一定の範囲に収めるレンジ調整処理を行う。   Therefore, after the filter distribution is calculated, the filter distribution updating unit 12 increases / decreases all the weights of the plurality of particles in the filter distribution at a certain ratio, and performs a range adjustment process for keeping the largest weight value within a certain range. Do.

特に、本実施形態のフィルタ分布更新部12では、図7に示すように、このレンジ調整処理として、重みレジスタ13へと更新する重みの最大値が第1閾値Th1を超えた場合、その全ての重みを一定の比率で小さくし、重みレジスタ13へと更新する重みの最大値が第2閾値Th2以下となった場合に、全ての重みを一定の比率で大きくする。このレンジ調整処理があるため、フィルタ分布を計算するために用いる尤度の正規化処理を省略し、全体的な動作を高速化させることができる。   In particular, in the filter distribution updating unit 12 of the present embodiment, as shown in FIG. 7, when the maximum value of the weight updated to the weight register 13 exceeds the first threshold value Th1 as the range adjustment process, When the weight is reduced by a certain ratio and the maximum value of the weight updated to the weight register 13 is equal to or less than the second threshold Th2, all the weights are increased by a certain ratio. Since there is this range adjustment process, the likelihood normalization process used to calculate the filter distribution can be omitted, and the overall operation can be speeded up.

更に、重みレジスタ13へと更新する重みの最大値が第1閾値Th1を超えた場合、その全ての重みを「1/2倍」の比率で小さくし、重みレジスタ13へと更新する重みの最大値が第2閾値Th2以下となった場合に、全ての重みを「2倍」の比率で大きくするよう構成すると、1動作クロックによるビットシフトにより実現されるため、より一層、高速化に寄与するものとなる。   Furthermore, when the maximum value of the weight updated to the weight register 13 exceeds the first threshold Th1, all the weights are reduced by a ratio of “½ times”, and the maximum weight updated to the weight register 13 is set. When the value is equal to or less than the second threshold Th2, if all the weights are increased by a ratio of “2 times”, it is realized by a bit shift by one operation clock, which contributes to further speedup. It will be a thing.

そして、フィルタ分布更新部12は、レンジ調整処理を施した重みが付与されている各粒子で表現された今回のフィルタ分布を推定値計算部14へ出力する。   Then, the filter distribution updating unit 12 outputs the current filter distribution expressed by each particle to which the weight subjected to the range adjustment process is given to the estimated value calculation unit 14.

推定値計算部14は、フィルタ分布更新部12から得られるレンジ調整処理を施した重みが付与されている各粒子で表現された今回のフィルタ分布から、粒子の期待値、中央値、或いは信頼区間を導出し、状態推定結果として外部に出力する。   The estimated value calculation unit 14 obtains the expected value, median value, or confidence interval of the particle from the current filter distribution expressed by each particle to which the weight subjected to the range adjustment processing obtained from the filter distribution update unit 12 is given. Is derived and output to the outside as a state estimation result.

例えば、図3に示す動物体の状態推定システムの例では、推定値計算部14は、位置Xaの期待値Eaは、重みレジスタ13に保持される時刻tの全ての粒子(状態x(t))の重みW(Xa,Xb)を全て読み出し、ΣXa*W(Xa,Xb)/ ΣW(Xa,Xb)により計算することができる。尚、Σは全ての状態に対する加算処理を表す。   For example, in the example of the moving object state estimation system shown in FIG. 3, the estimated value calculation unit 14 determines that the expected value Ea of the position Xa is all particles (state x (t)) at time t held in the weight register 13. ) Weights W (Xa, Xb) can be read out and calculated by ΣXa * W (Xa, Xb) / ΣW (Xa, Xb). Note that Σ represents addition processing for all states.

以上のように、本発明に係る状態推定器1は、フィルタ分布更新部12により、複数次元で表される状態の変化を規定する所定のシステムモデルに従って観測値を得る毎に前回計算したフィルタ分布における各状態ベクトルに対して重みレジスタ13に保持されている重みを基に拡散処理を施して予測分布を計算するよう構成しているため、精度よく高速処理が可能である。   As described above, the state estimator 1 according to the present invention uses the filter distribution update unit 12 to calculate the filter distribution previously calculated every time an observation value is obtained in accordance with a predetermined system model that defines a change in state represented in a plurality of dimensions. Since the prediction distribution is calculated by performing a diffusion process on each state vector based on the weight held in the weight register 13, high-speed processing with high accuracy is possible.

また、本発明に係る状態推定器1は、1つの状態に対する粒子が1つにまとめられて、予測分布からフィルタ分布を算出し、リサンプル処理を行うことなくレンジ調整処理を施すよう構成しているため、より一層、高速処理を可能にしている。   Further, the state estimator 1 according to the present invention is configured such that particles for one state are collected into one, a filter distribution is calculated from the predicted distribution, and the range adjustment process is performed without performing the resampling process. Therefore, higher speed processing is possible.

一方で、従来技法の粒子フィルタでは、予測分布の計算を粒子毎に行うため、粒子の数に比例した数の擬似乱数を計算する必要となり、粒子の状態の分布が集中する状態推定システムなど、膨大な計算量を要し、高速に実時間で動作する用途に利用することが困難であった。   On the other hand, in the conventional particle filter, the prediction distribution is calculated for each particle, so it is necessary to calculate the number of pseudo-random numbers proportional to the number of particles. It requires a huge amount of calculation and is difficult to use for applications that operate at high speed in real time.

そして、従来技法の粒子フィルタでは、擬似乱数が関与する処理以外の処理は状態ごとに処理をまとめられるが、リサンプル処理によって粒子のコピーが作られるため、同一の状態を持つ粒子が複数存在することになり、状態と粒子やその重みを1対1で対応づけることができなくなる。このため、従来技法の粒子フィルタは、汎用性が高まるものの非常に処理効率が悪いものとなる。   In the particle filter of the conventional technique, processing other than processing involving pseudo-random numbers can be grouped for each state, but a copy of the particles is created by the resampling processing, so there are a plurality of particles having the same state. As a result, it becomes impossible to associate the state with the particle and its weight on a one-to-one basis. For this reason, although the particle filter of the conventional technique increases versatility, the processing efficiency is very poor.

本発明に係る状態推定器1は、これらの粒子フィルタの問題を解決し、少ない計算量且つ短い遅延にて精度よく状態を推定し、尚且つ観測誤差の影響を除去可能とすることができる。   The state estimator 1 according to the present invention can solve these particle filter problems, accurately estimate the state with a small amount of calculation and a short delay, and can remove the influence of the observation error.

そして、本発明に係る状態推定器1は、粒子フィルタの利点を生かしつつ、計算負荷の大きい擬似乱数の計算やリサンプル処理を必要としない構成としているため、少ない計算負荷によって、線形或いはガウス型の時系列データを扱うシステムに限らず、正規分布に従わないモデルや非線形なモデルに基づく時系列データの状態推定システムや、尤度分布の変化が大きなシステムの状態推定にも実用的な構成となっている。   The state estimator 1 according to the present invention has a configuration that does not require calculation or resampling processing with a large calculation load while taking advantage of the particle filter, so that it is linear or Gaussian with a small calculation load. It is not limited to systems that handle time-series data, but is also a practical configuration for state-estimation systems for time-series data based on models that do not follow the normal distribution or nonlinear models, and for systems that have a large change in likelihood distribution. It has become.

尚、本発明に係る状態推定器1は、コンピュータとして機能させることができ、当該コンピュータに、各構成要素を実現させるためのプログラムは、当該コンピュータのメモリに記憶される。当該コンピュータに備えられる中央演算処理装置(CPU)などの制御で、各構成要素の機能を実現するための処理内容が記述されたプログラムを、適宜、当該メモリから読み込んで各構成要素の機能を当該コンピュータに実現させることができる。   The state estimator 1 according to the present invention can function as a computer, and a program for causing the computer to realize each component is stored in a memory of the computer. Under the control of a central processing unit (CPU) provided in the computer, a program in which processing content for realizing the function of each component is described is appropriately read from the memory, and the function of each component is It can be realized on a computer.

本発明に係る状態推定器1及びプログラムは、上述した実施形態の例に限定されるものではなく、特許請求の範囲の記載によってのみ制限される。   The state estimator 1 and the program according to the present invention are not limited to the above-described embodiments, but are limited only by the description of the scope of claims.

本発明によれば、時系列データの状態推定を行う際に、少ない計算量且つ短い遅延にて精度よく状態を推定し、尚且つ観測誤差の影響を除去可能とするので、状態空間モデルに基づく時系列データの制御装置、時系列解析装置、或いは動物体追跡等の信号処理装置の用途に有用である。   According to the present invention, when estimating the state of time-series data, the state is accurately estimated with a small amount of calculation and a short delay, and the influence of the observation error can be removed. It is useful for the use of a signal processing device such as a time-series data control device, a time-series analysis device, or tracking of a moving object.

1 状態推定器
11 尤度計算部
12 フィルタ分布更新部
13 重みレジスタ
14 推定値計算部
DESCRIPTION OF SYMBOLS 1 State estimator 11 Likelihood calculation part 12 Filter distribution update part 13 Weight register 14 Estimated value calculation part

Claims (7)

1次元もしくは複数次元ベクトルの粒子で表現された状態ベクトルの時間変化を規定する所定のシステムモデルを用いて状態推定を行う状態推定器であって、
状態ベクトルとその状態ベクトルの重みの集合によって表現される状態の確率分布に従い、入力される観測値に基づいて、前記所定のシステムモデルに従う複数の粒子の状態ベクトルにそれぞれ対応する尤度を計算する尤度計算部と、
前記観測値の観測時刻毎に、前回計算したフィルタ分布を構成する各粒子の状態ベクトルに対し、システム雑音が無いものとして前記所定のシステムモデルに従って各粒子の状態ベクトルと該各粒子の状態ベクトルの重みを更新し、該重みに拡散処理を施して予測分布を構成する粒子を追加もしくは各粒子の重みを更新し、該重みに該予測分布を構成する各状態ベクトルに対し前記尤度計算部によって計算される尤度を乗じた値を新たな重みとして更新し、各粒子の状態ベクトルにおける該重みを一定の範囲に収めるレンジ調整処理を施し、該レンジ調整処理を施して得られる各粒子の状態ベクトルと該各粒子の状態ベクトルの重みで構成されるフィルタ分布を今回のフィルタ分布として計算するフィルタ分布更新部と、
前記フィルタ分布更新部により当該フィルタ分布を計算する毎に、各粒子の状態ベクトルの重みを更新して保持する重みレジスタと、
当該今回のフィルタ分布を構成する各状態ベクトルとその状態ベクトルの重みから所定の推定値を導出する推定値計算部と、
を備えることを特徴とする状態推定器。
A state estimator that performs state estimation using a predetermined system model that defines a time change of a state vector represented by one-dimensional or multi-dimensional vector particles,
A likelihood corresponding to each of the plurality of particle state vectors according to the predetermined system model is calculated based on an input observation value according to a state probability distribution expressed by a set of state vectors and weights of the state vectors. A likelihood calculator,
At each observation time of the observation value, the state vector of each particle and the state vector of each particle are determined according to the predetermined system model, assuming that there is no system noise with respect to the state vector of each particle constituting the previously calculated filter distribution. The weight is updated, and the weight is subjected to diffusion processing to add particles constituting the prediction distribution or update the weight of each particle, and the likelihood calculating unit applies the weight to each state vector constituting the prediction distribution. A value obtained by multiplying the calculated likelihood is updated as a new weight, a range adjustment process is performed to keep the weight in the state vector of each particle within a certain range, and the state of each particle obtained by performing the range adjustment process A filter distribution updating unit that calculates a filter distribution composed of a vector and a weight of a state vector of each particle as the current filter distribution;
Each time the filter distribution is calculated by the filter distribution update unit, a weight register that updates and holds the weight of the state vector of each particle;
An estimated value calculation unit for deriving a predetermined estimated value from each state vector constituting the current filter distribution and the weight of the state vector;
A state estimator comprising:
前記フィルタ分布更新部は、前記拡散処理として、当該前回計算したフィルタ分布を表現する各状態ベクトルに対し前記所定のシステムモデルに従って更新した状態ベクトルとその状態ベクトルの重みを基にして加重平均又はローパスフィルタ処理、もしくは全部もしくは一定範囲の状態ベクトルの重みに対し均等に一定値を加算する処理により新たな重みを計算する処理、を含むことを特徴とする、請求項1に記載の状態推定器。   The filter distribution updating unit performs a weighted average or low pass based on the state vector updated according to the predetermined system model and the weight of the state vector for each state vector expressing the filter distribution calculated last time as the diffusion process. The state estimator according to claim 1, further comprising: a filter process or a process of calculating a new weight by a process of adding a constant value evenly to all or a predetermined range of state vector weights. 前記フィルタ分布更新部は、前記レンジ調整処理として、当該フィルタ分布内の複数の状態ベクトルの全ての重みを一定の比率で増減させ、最も大きな重みの値を一定の範囲に収める処理を含むことを特徴とする、請求項1又は2に記載の状態推定器。   The filter distribution update unit includes, as the range adjustment process, a process of increasing / decreasing all the weights of a plurality of state vectors in the filter distribution at a certain ratio and keeping the largest weight value within a certain range. The state estimator according to claim 1, wherein the state estimator is characterized. 前記フィルタ分布更新部は、前記レンジ調整処理として、前記重みレジスタへと更新する重みの最大値が第1閾値を超えた場合、その全ての重みを一定の比率で小さくし、前記重みレジスタへと更新する重みの最大値が第2閾値以下となった場合に、全ての重みを一定の比率で大きくする処理を含むことを特徴とする、請求項1から3のいずれか一項に記載の状態推定器。   When the maximum value of the weight updated to the weight register exceeds the first threshold as the range adjustment process, the filter distribution update unit reduces all the weights by a certain ratio, and transfers to the weight register. The state according to any one of claims 1 to 3, further comprising a process of increasing all the weights at a constant ratio when the maximum weight value to be updated is equal to or less than the second threshold value. Estimator. 前記フィルタ分布更新部は、前記レンジ調整処理として、前記重みレジスタへと更新する重みの最大値が前記第1閾値を超える場合には、その全ての重みを1/2倍の比率で小さくし、前記重みレジスタへと更新する重みの最大値が前記第2閾値以下となる場合には、全ての重みを2倍の比率で大きくする処理を含むことを特徴とする、請求項4に記載の状態推定器。   The filter distribution update unit, as the range adjustment processing, when the maximum value of the weight to be updated to the weight register exceeds the first threshold, all the weights are reduced by a factor of 1/2, 5. The state according to claim 4, further comprising a process of increasing all weights by a ratio of 2 when a maximum value of weights to be updated to the weight register is equal to or less than the second threshold value. Estimator. 前記尤度計算部は、各状態ベクトルに対する尤度の合計を1とする正規化処理を省略して尤度を計算し、該尤度の値、若しくは該尤度の定数倍の値を前記フィルタ分布更新部に出力することを特徴とする、請求項1から5のいずれか一項に記載の状態推定器。   The likelihood calculation unit calculates a likelihood by omitting a normalization process in which the total likelihood for each state vector is 1, and calculates the likelihood value or a value of a constant multiple of the likelihood as the filter. The state estimator according to claim 1, wherein the state estimator is output to a distribution updating unit. コンピュータを、請求項1から6のいずれか一項に記載の状態推定器として機能させるためのプログラム。   The program for functioning a computer as a state estimator as described in any one of Claim 1 to 6.
JP2017007125A 2017-01-18 2017-01-18 State estimator and program Active JP6820204B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017007125A JP6820204B2 (en) 2017-01-18 2017-01-18 State estimator and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017007125A JP6820204B2 (en) 2017-01-18 2017-01-18 State estimator and program

Publications (2)

Publication Number Publication Date
JP2018116511A true JP2018116511A (en) 2018-07-26
JP6820204B2 JP6820204B2 (en) 2021-01-27

Family

ID=62983955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017007125A Active JP6820204B2 (en) 2017-01-18 2017-01-18 State estimator and program

Country Status (1)

Country Link
JP (1) JP6820204B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110497915A (en) * 2019-08-15 2019-11-26 太原科技大学 A kind of vehicle driving state estimation method based on Weighted Fusion algorithm
CN110497916A (en) * 2019-08-15 2019-11-26 太原科技大学 Vehicle driving state estimation method based on BP neural network
CN113642887A (en) * 2021-08-12 2021-11-12 中国民航大学 Flight operation risk analysis and prediction method based on DDDAS
JP2022520903A (en) * 2019-03-11 2022-04-01 三菱電機株式会社 Model-based control with uncertain motion model

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000349002A (en) * 1999-06-03 2000-12-15 Semiconductor Leading Edge Technologies Inc Simulation method for pattern line width and simulator for pattern line width
US20130132454A1 (en) * 2011-11-21 2013-05-23 The Board Of Trustees Of The University Of Illinois Feedback-Based Particle Filtering
JP2016114988A (en) * 2014-12-11 2016-06-23 株式会社メガチップス State estimation device, program and integrated circuit
WO2016114134A1 (en) * 2015-01-14 2016-07-21 日本電気株式会社 Motion condition estimation device, motion condition estimation method and program recording medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000349002A (en) * 1999-06-03 2000-12-15 Semiconductor Leading Edge Technologies Inc Simulation method for pattern line width and simulator for pattern line width
US20130132454A1 (en) * 2011-11-21 2013-05-23 The Board Of Trustees Of The University Of Illinois Feedback-Based Particle Filtering
JP2016114988A (en) * 2014-12-11 2016-06-23 株式会社メガチップス State estimation device, program and integrated circuit
WO2016114134A1 (en) * 2015-01-14 2016-07-21 日本電気株式会社 Motion condition estimation device, motion condition estimation method and program recording medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
本多泰理: "クロックスキューを考慮した片道遅延推定方式", 電子情報通信学会技術研究報告, vol. Vol.108,No.60,(IN2008-1〜8), JPN6020046816, 22 May 2008 (2008-05-22), JP, pages 43 - 47, ISSN: 0004402204 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022520903A (en) * 2019-03-11 2022-04-01 三菱電機株式会社 Model-based control with uncertain motion model
JP7224501B2 (en) 2019-03-11 2023-02-17 三菱電機株式会社 Model-based control with uncertain motion model
CN110497915A (en) * 2019-08-15 2019-11-26 太原科技大学 A kind of vehicle driving state estimation method based on Weighted Fusion algorithm
CN110497916A (en) * 2019-08-15 2019-11-26 太原科技大学 Vehicle driving state estimation method based on BP neural network
CN113642887A (en) * 2021-08-12 2021-11-12 中国民航大学 Flight operation risk analysis and prediction method based on DDDAS
CN113642887B (en) * 2021-08-12 2024-04-26 中国民航大学 DDDAS-based flight operation risk analysis and prediction method

Also Published As

Publication number Publication date
JP6820204B2 (en) 2021-01-27

Similar Documents

Publication Publication Date Title
Mahmoud et al. Fundamental issues in networked control systems
Das et al. Consensus+ innovations distributed Kalman filter with optimized gains
Gholami et al. TDOA based positioning in the presence of unknown clock skew
JP6820204B2 (en) State estimator and program
Zhang et al. Optimal linear estimation for networked systems with communication constraints
Zhang et al. Robust weighted H∞ filtering for networked systems with intermittent measurements of multiple sensors
Summers et al. Distributed model predictive consensus via the alternating direction method of multipliers
KR20170058167A (en) Method and apparatus for synchronizing time
Wang et al. Gaussian smoothers for nonlinear systems with one-step randomly delayed measurements
Van de Velde et al. Improved censoring and NLOS avoidance for wireless localization in dense networks
KR102614829B1 (en) Apparatus and method for synchoronizing clock
Hlinka et al. Distributed sequential estimation in asynchronous wireless sensor networks
Guruswamy et al. Minimax optimum estimators for phase synchronization in IEEE 1588
Andrievsky et al. Robustness of Pecora–Carroll synchronization under communication constraints
Garcia et al. Parameter estimation in time-triggered and event-triggered model-based control of uncertain systems
Garcia-Ligero et al. Estimation from a multisensor environment for systems with multiple packet dropouts and correlated measurement noises
Seshadhri et al. Dynamic controller for Network Control Systems with random communication delay
Giordano et al. Consistency aspects of Wiener-Hammerstein model identification in presence of process noise
Caballero-Águila et al. Covariance‐Based Estimation from Multisensor Delayed Measurements with Random Parameter Matrices and Correlated Noises
JP7073920B2 (en) Time setting method, time setting device and program
Guruswamy et al. Performance lower bounds for phase offset estimation in IEEE 1588 synchronization
Wang et al. Recursive estimation for sensor systems with one-step randomly delayed and censored measurements
Caballero-Águila et al. Least‐Squares Filtering Algorithm in Sensor Networks with Noise Correlation and Multiple Random Failures in Transmission
Straka et al. Design of pure propagation unscented Kalman filter
Yang et al. Strong tracking filtering algorithm of randomly delayed measurements for nonlinear systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191202

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201112

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210104

R150 Certificate of patent or registration of utility model

Ref document number: 6820204

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250