JP6894402B2 - システム同定装置及び方法及びプログラム及び記憶媒体 - Google Patents
システム同定装置及び方法及びプログラム及び記憶媒体 Download PDFInfo
- Publication number
- JP6894402B2 JP6894402B2 JP2018098503A JP2018098503A JP6894402B2 JP 6894402 B2 JP6894402 B2 JP 6894402B2 JP 2018098503 A JP2018098503 A JP 2018098503A JP 2018098503 A JP2018098503 A JP 2018098503A JP 6894402 B2 JP6894402 B2 JP 6894402B2
- Authority
- JP
- Japan
- Prior art keywords
- state
- filter
- unknown
- given
- matrix
- 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.)
- Active
Links
- 238000003860 storage Methods 0.000 title claims description 39
- 238000000034 method Methods 0.000 title claims description 36
- 239000011159 matrix material Substances 0.000 claims description 171
- 239000013598 vector Substances 0.000 claims description 132
- 238000012545 processing Methods 0.000 claims description 99
- 238000004422 calculation algorithm Methods 0.000 claims description 51
- 230000004044 response Effects 0.000 claims description 35
- 238000013461 design Methods 0.000 claims description 23
- 238000011156 evaluation Methods 0.000 claims description 23
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims 1
- 238000004364 calculation method Methods 0.000 description 25
- 238000010586 diagram Methods 0.000 description 16
- 238000007792 addition Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 9
- 230000002087 whitening effect Effects 0.000 description 8
- 238000005457 optimization Methods 0.000 description 7
- 230000014509 gene expression Effects 0.000 description 5
- 230000010354 integration Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000002360 preparation method Methods 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04R—LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
- H04R3/00—Circuits for transducers, loudspeakers or microphones
- H04R3/04—Circuits for transducers, loudspeakers or microphones for correcting frequency response
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H21/00—Adaptive networks
- H03H21/0012—Digital adaptive filters
- H03H21/0043—Adaptive algorithms
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
- G05B13/048—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators using a predictor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H17/00—Networks using digital techniques
- H03H17/02—Frequency selective networks
- H03H17/0248—Filters characterised by a particular frequency response or filtering method
- H03H17/0264—Filter sets with mutual related characteristics
- H03H17/0266—Filter banks
- H03H17/0269—Filter banks comprising recursive filters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/02—Details
- H04B3/20—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
- H04B3/21—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a set of bandfilters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/02—Details
- H04B3/20—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
- H04B3/23—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other using a replica of transmitted signal in the time domain, e.g. echo cancellers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L2021/02082—Noise filtering the noise being echo, reverberation of the speech
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03H—IMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
- H03H21/00—Adaptive networks
- H03H21/0012—Digital adaptive filters
- H03H21/0043—Adaptive algorithms
- H03H2021/0049—Recursive least squares algorithm
- H03H2021/005—Recursive least squares algorithm with forgetting factor
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Filters That Use Time-Delay Elements (AREA)
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Debugging And Monitoring (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
ここで、ukは入力、hiはシステムのインパルス応答であり、ykは観測時の雑音vkを含んだ出力である。
詳細は、非特許文献1などに示されている。
LMSは、入力ukと出力ykからシステムのインパルス応答xk=[h0、・・・、hN−1]Tを次のように推定する。
RLSは、入力ukと出力ykからシステムのインパルス応答xk=[h0、・・・、hN−1]Tを次のように推定する。
(なお、「^」、「v」は、推定値の意味であり、数式で示すように、本来、文字の真上に付されるものであるが、入力の都合上文字の右上に記載する場合がある。以下同様。)
状態空間モデルで表される線形システム
の状態xkの最小分散推定値x^k|kは、次のカルマンフィルタによって得られる。
xk:状態ベクトルまたは単に状態;未知であり、これが推定の対象となる。
yk:観測信号;フィルタの入力となり、既知である。
Hk:観測行列;既知である。
vk:観測雑音;未知である。
ρ:忘却係数;一般に試行錯誤で決定される。
Kk:フィルタゲイン;行列Σ^k|k−1から得られる。
Σ^k|k:x^k|kの誤差の共分散行列に対応;リカッチ方程式により得られる。
Σ^k+1|k:x^k+1|kの誤差の共分散行列に対応;リカッチ方程式により得られる。
Σ^0|−1:初期状態の共分散行列に対応;本来未知であるが、便宜上ε0Iが用いられる。
本発明は、以上の点に鑑み、大規模な音響系または通信系を高速かつ高精度に同定することを、ひとつの目的とする。また、本発明は、このような同定する方法/装置等をフィードバックキャンセラに適用することを、他の目的とする。
入出力データからシステムの高速実時間同定を行うシステム同定装置であって、
評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを備え、
前記フィルタは、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与えられ、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定装置が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
入出力データからシステムの高速実時間同定を行うシステム同定装置であって、
評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを備え、
前記フィルタは、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与えられ、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定装置が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
入出力データからシステムの高速実時間同定を行うシステム同定装置であって、
評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを備え、
前記フィルタは、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与えられ、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定装置が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
入出力データからシステムの高速実時間同定を行うシステム同定方法であって、
評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを用い、
前記フィルタを、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与え、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とするシステム同定方法が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
入出力データからシステムの高速実時間同定を行うシステム同定方法であって、
評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを用い、
前記フィルタを、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与え、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定方法が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
入出力データからシステムの高速実時間同定を行うシステム同定方法であって、
評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを用い、
前記フィルタを、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与え、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定方法が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラム、及び、前記プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
処理部が、前記フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラム、及び、前記プログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラム、及び、前記プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記処理部が、フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
処理部が、評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラム、及び、前記プログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラム、及び、前記プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
処理部が、フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
処理部が、評価基準として、外乱からフィルタ誤差への最大エネルギーゲインを、予め与えられた上限値γf 2より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラム、及び、前記プログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
本発明及び/又は本実施の形態の同定法により、入出力データから未知システムを実時間で高速かつ高精度に同定することが可能となる。また、本同定法は入力信号における白色性の仮定が適切に導入できるため、アルゴリズムを効果的に簡略化でき、大幅な計算量の削減が可能である。これらは、例えば補聴器などの閉ループ系のフィードバックキャンセラに有効である。
本発明及び/又は本実施の形態によると、例えば、以下を提供することができる。
1)入出力データから未知システムを実時間で高速かつ高精度に同定する方法・装置・プログラム・記録媒体。
2)入力信号に対して白色性の仮定を導入し、計算量を大幅に削減したシステム同定法。
3)補聴器などの閉ループ系のフィードバックキャンセラ。
また、本発明及び/又は本実施の形態においては、上記課題を解決するために、入力信号の事前線形予測誤差と事後線形予測誤差の変換係数を利用して、先に提案した高速H∞フィルタ(FHF)の計算量O(11N)をO(7N)まで低減するC−高速H∞フィルタ(Conversion Factor−based Fast H∞ Filter: C−FHF)を導出する。さらに、本発明及び/又は本実施の形態によると入力信号に白色性の仮定を導入して、計算量をO(2N)まで削減するC−白色化高速H∞フィルタ(Conversion Factor−based Whiten Fast H∞ Filter: C−WFHF)を提供する。また、その特殊な場合としてC−NLMSアルゴリズム(Conversion Factor−based Normalized Least Mean Square Algorithm)を与える。
本発明及び/又は本実施の形態による高速同定法は、大規模な音響系や通信系の同定に適用可能であり、スマートスピーカーやテレビ会議システムなどにおける音響エコーキャンセラやアクティブ騒音制御、音場再生などに有効である。また、本同定法は入力信号に対して白色性の仮定が適切に導入できるため、アルゴリズムを効果的に簡略化でき、大幅な計算量の削減が可能である。これらの簡易化されたアルゴリズムは補聴器や高速データ伝送の全二重中継局などの閉ループ系のフィードバックキャンセラに有効である。
まず、本実施の形態で用いる主な記号を説明する。
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。(Hk=[uk,・・・,uk−N+1]T)
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
z^k|k:観測信号y0〜ykまでを用いた時刻kの出力zkの推定値Hkx^k|k;フィルタ方程式によって与えられる。
z^k|k−1:観測信号y0〜yk−1までを用いた時刻kの出力zkの1ステップ予測値Hkx^k−1|k−1;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Σ^k|k:x^k|kの誤差の共分散行列に対応;リカッチ方程式によって与えられる。
Σ^k+1|k:x^k+1|kの誤差の共分散行列に対応;リカッチ方程式によって与えられる。
Σ^0|−1:初期状態の共分散行列に対応;本来未知であるが、便宜上ε0I、ε0>0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1やゲイン行列Kkから得られる。
ρ:忘却係数;γfが決まればρ=1−χ(γf)より決定される。γfと切り離して独立に決定することも可能である。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
Σ0 −1:状態の不確定性を表す重み行列の逆行列;便宜上Σ0=ε0I,ε0>0が用いられる。
ef,i:フィルタ誤差; ef,i=zv i|i−Hixi,zv i|iは出力推定値Hix^i|iである。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
γf:アッテネーションレベル;設計の際に与えられる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
O:計算量(オーダー);例えば、乗算回数がN2+2N+3のときO(N2)と表す。
なお、記号の上に付される”^”、”v”は、推定値の意味である。また、”〜”、” ”、”U”等は、便宜上付加した記号である。これらの記号は、入力の都合上、文字の右上に記載するが、数式で示すように、文字の真上に記載されたものと同一である。また、x、w、H、G,K、R、Σ、等はベクトルや行列であり、数式で示すように太文字で記されるものであるが、入力の都合上、普通の文字で記載する場合がある。
本システム同定方法又はシステム同定装置・システムは、その各手順をコンピュータに実行させるためのシステム同定プログラム、システム同定プログラムを記録したコンピュータ読み取り可能な記録媒体、システム同定プログラムを含みコンピュータの内部メモリにロード可能なプログラム製品、そのプログラムを含むサーバ等のコンピュータ、等により提供されることができる。
図14は、本実施の形態に関するハードウェアの構成図である。
このハードウェアは、中央処理装置(CPU)である処理部101、入力部102、出力部103、表示部104、記憶部105、インタフェース部(I/F)106を有する。また、処理部101、入力部102、出力部103、表示部104、記憶部105、インタフェース部(I/F)106は、スター又はバス等の適宜の接続手段で接続されている。記憶部105は、システム同定される「1.記号の説明」で示した既知のデータが必要に応じて記憶され、未知・既知のデータや計算されたC−高速H∞フィルタ等の本実施の形態の各フィルタに関するデータ・その他のデータが処理部101により、必要に応じて書き込み及び/又は読み出しされる。処理部101は、入出力データに基づいて、本実施の形態の各フィルタを表す式に従い計算処理を実行し、システムの入出力関係の数理モデルを推定(同定)する。処理部101は、例えば、状態推定値、出力予測値等を求めることができる。
通常のH∞フィルタと区別するため、モデル集合と重み集合に関してさらに最適化したH∞フィルタを、特にハイパーH∞フィルタと呼ぶことにする(非特許文献2−4)。このH∞フィルタは状態のダイナミックスが未知の場合でも適用できる特長を備えている。
状態空間モデル
ハイパーH∞フィルタの特徴は、エコーキャンセラ(状態推定)に重要な次の五つの性質、
1) 収束性、
2) エコー経路変動に対する追従能、
3) 近端話者信号に対するロバスト性、
4) 入力信号特性に関する不感度、
5) 数値的安定性
を調整できる点にある。
図1の丸印は、ハイパーH∞フィルタのパラメータ空間における解を表している。それぞれの解は異なるγfとσw 2の値をもつハイパーH∞フィルタに対応する。特に、直線γf=∞上の解は忘却係数RLSアルゴリズムと一致し、点(γf,σw 2)=(1,0)上ではステップサイズ1のNLMSアルゴリズムと一致する。よって、ハイパーH∞フィルタは従来の適応アルゴリズムであるNLMSやRLSを含んでいることがわかる。
ハイパーH∞フィルタの計算量はO(N2)であり、このままでは実時間処理には適さない。しかし、観測行列Hkがシフト特性Hk=[uk,Hk−1(1),Hk−1(2),・・・,Hk−1(N−1)]をもつとき、計算量O(N)の高速アルゴリズムが開発されている(非特許文献2、非特許文献3)。
観測行列Hkがシフト特性を満たすとき、Σ0=ε0I>0をもつハイパーH∞フィルタは次式によって実行できる。
このとき、次のスカラー存在条件を満たさなければならない。
4.1 準備
高速H∞フィルタの新しいアルゴリズムを導出するためにいくつかの命題を示す。その命題の証明には、次のように定義された(N+1)×(N+1)行列QU k が利用される。
ゲイン行列Kk:=Qk −1Ck Tは疑似ゲイン行列K〜 k:=Qk−1 −1Ck Tを用いて次のように表すことができる。
後方線形予測係数bk:=−Qk −1 t kの新たな更新式は次式で与えられる。
事後後方予測誤差e kは事前後方予測誤差e 〜 kを用いて次のように表すことができる。
事後前方予測誤差ekは事前前方予測誤差e〜 kを用いて次のように表すことができる。
後方線形予測係数bkは事後後方予測誤差e kを用いて次のように再帰的に更新できる。
前方線形予測係数a:=−Qk−1 −1 t kは事後前方予測誤差ekを用いて次式によって再帰的に更新できる。
疑似ゲイン行列K〜 kを計算するもう一つの形式は次式で与えられる。
事前後方予測誤差e 〜 kはμ〜 kを用いて次のように表すことができる。
式(36)の2×2行列Re,kは次式で再帰的に更新できる。
命題1から命題9を用いれば、前方線形予測係数ak と後方線形予測係数bk が事後前方予測誤差ekと事後後方予測誤差e kを用いて更新される新たな高速H∞フィルタ(C−高速H∞フィルタ)が次のように得られる。
ただし、各パラメータの設定や初期化は高速H∞フィルタの場合と同じである。このC−高速H∞フィルタは、変換係数(conversion factor)χkを用いた高速H∞フィルタの事後予測誤差形式に当たる。
C−高速H∞フィルタは高速H∞フィルタと理論的に等価であるが、計算量は少なくて済む。C−白色化高速H∞フィルタは、入力信号が白色であると仮定して、アルゴリズムを大幅に縮退させたC−高速H∞フィルタである。C−NLMSアルゴリズムはパラメータが特定の値であるときのC−白色化高速H∞フィルタに対応し、理論的にはNLMSアルゴリズムと等価であるが、計算量はO(2N)で済む。
図9に、高速H∞フィルタの処理と時間計算量の説明図(表1)を示す。
高速H∞フィルタの各式の計算に必要な乗算と加算の回数を図9(表1)にまとめた(特許文献1参照、比較のために記載)。高速H∞フィルタを実行するためには、図2のCore Algorithmで表の数式を上から順に(式番号が大きい番号から小さい番号へ降順に)計算することにより、一サンプル(単位時刻)当たりのフィルタが実行できる。この式の順序は一般的なフィルタの記述とは逆となっている。なお、各表中、「Mul.」は積算回数、「Add.」は加算回数を、それぞれ示す。
図10(表2)は、C−高速H∞フィルタに対する乗算と加算の回数を示している。ここで、演算回数の算出に当たり、Kk,Ck,e〜 k,ek,およびWの構造が利用された。例えば、Kk−1We〜 kは、Kk−1(:,1)=Kk−1(:,2)とe〜 k(1,1)=e〜 k(2,1)を用いて、(1−γf −2)Kk−1(:,1)e〜 k(1,1)に置き換えられた。同様に、Ck−1とak−1の積を求めるに当たり、Ck−1(2,:)ak−1はCk−1(1,:)ak−1で置換された。同じ組合せの2項の乗算が複数ある場合は最初の計算のみをカウントした。χk−1 −1は前のステップで計算したχk −1を用いた。スカラーによるベクトルの除算は、スカラーの逆数によるベクトルの乗算として処理した。加算回数の場合も同様な方法で算出した。
C−高速H∞フィルタは、Nが十分に大きい場合、単位サンプル当たり7N回の乗算と7N回の加算のみで実行できる。一方、高速H∞フィルタは、単位サンプル当たり11N回の乗算と10N回の加算が必要である。両フィルタとも単位サンプル当たり3回の乗算が必要である。また、いずれの高速H∞フィルタも空間計算量(メモリ)はO(6N)である。
図2に、高速H∞フィルタ族によるx^k|k、z^k|k−1=Hkx^k−1|k−1を求めるフローチャートを示す。ここで、高速H∞フィルタ族とは、例えば、C−高速H∞フィルタ(C−FHF)、C−白色化高速H∞フィルタ(C−WFHF)、C−NLMSアルゴリズム・フィルタ等を示す。高速H∞フィルタとC−高速H∞フィルタでは、このフローチャートに、後述のように、図3の存在条件のチェック機能が追加される場合がある。また、必要に応じてz^k|kを求める。
[ステップS101、初期化]処理部101は、高速H∞フィルタの再帰変数を初期化する。たとえば、処理部101は、記憶部105から再帰式の初期状態を読み出し、又は初期状態を入力部102又はI/F106から入力し、図示のように定める。
[ステップS103]処理部101は、事前に決定したデータ長Lを超えているか判断する。たとえば処理部101は、時刻kとデータ数Lと比較する。なお、Lはあらかじめ定められた最大データ数を表すことができる。処理部101は、時刻kがデータ数L以下であれば次のステップS105に進む。処理部101は、時刻kが超えていればフィルタゲインを初期化し、フィルタをリスタートするか、あるいは終了する(S113)。(なお、不要であれば条件文を取り除くことができる。または、必要に応じて再スタートを行ってもよい。)
[ステップS105、入力]処理部101は、時刻kがL以下であれば、拡大観測行列CU kを入力信号とシフト特性を利用して更新する。たとえば、処理部101は、入力信号ukを入力部102又はI/F106から入力し、CU kを図示のように設定する。なお、入力信号ukを記憶部105から読み出すようにしてもよい。
ここで、入力信号ukからなる2×(N+1)拡大観測行列
[ステップS109、推定値]処理部101は、ステップS107により計算された状態推定値x^k|k(あるいは出力推定値z^k|k)を記憶部105に記憶、及び/又は出力部103若しくはI/F106から出力する。
[ステップS111]処理部101は、時刻kを進ませて(k=k+1)、ステップS103に戻り、データがある限り又は所定回数繰り返し続ける。
なお、処理部101は、ステップS105〜S109等の各ステップで求めた適宜の中間値及び最終値、存在条件の値等を必要に応じて適宜記憶部105に記憶し、また、記憶部105から読み出すようにしてもよい。さらに、処理部101は、入力部102若しくはI/F106からの指示により又は予め定められた処理により、各値によるデータ又はグラフ・表・図等を作成して、記憶部105に記憶、及び/又は出力部103若しくはI/F106から出力するようにしてもよい。
図2のフローチャートにさらに図3の存在条件のチェック機能が追加してもよい。たとえば、処理部101は、ステップS107の処理の実行後又は実行前等の適宜のタイミングで、図示のスカラー存在条件の判定ステップを実行し、式(30)を満たさなければ処理を終了する又はリスタートするようにしてもよい。なお、このステップは、他にも、図2のフローチャートの適宜のひとつ又は複数のステップや、時刻kを進ませるステップ(S111)の前後等の適宜のタイミングで、処理部101が実行することができる。なお、図中、EXC(k)は、前述の式(30)の左辺に相当する。
図11に、緩和係数μを導入したC−白色化高速H∞フィルタの処理と時間計算量の説明図(表3)を示す。
入力信号が白色雑音と仮定すれば、線形予測係数akとbkは0となる。このとき、e〜 k=ck+Ck−1ak−1=ck、ek=ck+Ck−1ak=ck、e 〜 k=ck−N+Ckbk−1=ck−N、e k=ck−N+Ckbk=ck−N、K〜 k=m〜 k、S kは不要となり、式(49)、式(50)、式(55)、式(58)、式(60)、式(61)、式(62)は次のように整理できる。ただし、μは緩和係数(ステップサイズ)で、μ>0の実数であり、事前に与えられる。
なお、e〜 kの式(56)、e kの式(53)は、本来の定義式とは別に、理論的に等価な表現が複数あり、上述のように表すことができる。また、C−WFHFの計算で、後方予測関係の変数(アンダーバーが付いたもの)は、利用しないことができるので、それらの計算は不要となる。
これより、C−高速H∞フィルタは表3のC−白色化高速H∞フィルタに縮退する。ただし、z^k|k=Hkx^k|kは省略した。
C−白色化高速H∞フィルタを実行するためには、図2のCore Algorithmで図11(表3)の数式を上から順に(式番号が降順に)計算することにより、一サンプル(単位時刻)当たりのフィルタが実行できる。この式の順序は一般的なフィルタの記述とは逆となっている。なお、各表中、「Mul.」は積算回数、「Add.」は加算回数を、それぞれ示す。
図12に、C−NLMSアルゴリズムのフィルタの処理と時間計算量の説明図(表4)を示す。
γf=1.0、ρ=1.0のとき、Sk=Sk−1=S−1=1/ε0となる。これより、C−白色化高速H∞フィルタは次のように縮退する。
これはステップサイズμ=1のNLMSアルゴリズムと理論的に等価である。よって、緩和係数μ(μ>0の実数)を式(49)に導入すれば、表4のステップサイズμのC−NLMSアルゴリズムが得られる。このアルゴリズムの計算量はO(2N)であり、S−1=1/ε0はNLMSアルゴリズムの正則化項δに一致する。
C−NLMSアルゴリズムのフィルタを実行するためには、図2のCore Algorithmで図12(表4)の数式を上から順に(式番号が降順に)計算することにより、一サンプル(単位時刻)当たりのフィルタが実行できる。この式の順序は一般的なフィルタの記述とは逆となっている。なお、各表中、「Mul.」は積算回数、「Add.」は加算回数を、それぞれ示す。
高速H∞フィルタは入力信号の線形予測係数を0に置くことによって、次のように白色化することができる。
この白色化高速H∞フィルタ(WFHF)は、γf=∞のとき、次のように縮退する。
この課題を解決して、白色化を適切に実行することができるようにしたのが、本発明及び/又は本実施の形態のC−WFHFである。白色化のために、例えば、数多くあるパラメータの中から、線形予測係数akとbkを選択して0とし、また、e〜 k、ek、e 〜 kN、e k、の多数の数式から適切なものをあてはめ、さらに、K〜 k=m〜 k、という式を適用し、また、S kは不要となるようにした。このように、数多く存在するパラメータの中から特定のものを選択して特定の値とし、数多く存在する式の中から特定のパラメータについて特定の式を適用することは、極めて高度かつ困難なことであって、これにより本発明および/本実施の形態は、白色化を適切に行うことを達成したものである。
C−WFHF、C−NLMSの実装を考慮した場合における計算式の最適化の一例及び演算量の見積もりを行なった。ここで、最適化とは、特に、「組み込みのための最適化」をいう。ここでは、例えば、組み込まれたプログラムの演算回数が最小になる式(形式)を求めることを、最適化と呼んでいる。なお、「C−FHFとの関係性を維持した形式」と「組み込みに適した形式(最適版)」は、理論的に等価である。例えば、「C−FHFとの関係性を維持した形式」はそのアルゴリズムの意味がわかり、一方、「組み込みに適した形式」は実際にCPUにプログラムするのに適した形式である。
DSP(digital signal processor)等のプロセッサやハードウェアに組み込む際には掛け算(Mul.)、割り算(Div.)、足し算(Add.)によって必要となるサイクル数が異なるため、それぞれの演算回数からサイクル数の見積もりを行なった。実際にはメモリやレジストリからの読み込みや並列化演算などによって必要なサイクル数は大きく変化するが組み込み方法によるサイクル数の変化は考慮せず算出した。
図15に、C−白色化高速H∞フィルタの最適版の一例の処理と時間計算量の説明図を示す。
このとき、C−白色化高速H∞フィルタの式(60)、式(58)、式(55)、式(49)、式(50)は、次のように整理できる。ここで、K~ k−1(1:N−1,1)はK~ k−1の第1行〜第N−1行までの第1列の行列を表す。
なお、表3のC−白色化高速H∞フィルタ(C−WFHF)の式にμ(ステップサイズ、μ>0の実数)を付けて、C−WFHFがC−NLMSを完全に含むように表現することができる。よって、C−NLMSは、γf=1,ρ=1のときのC−WFHFと完全に一致する。
ここで、最適化の式とは演算回数が少なくなるように式を組み換えものであり、理論的に等価になる。例えば、C−WFHFの式(58)の第1列の第1成分から第N成分を抽出して利用したのが、以下のK〜 k(:,1)の式である。
なお、C−WFHFの式(58)及び(61)(62))から、
K〜 k−1(N,1)=uk−N/Sk−N−1
という関係式が導出され、これによりC−WFHFの式(55)から上述のRe,k(1,1)の式が導かれる。
よって、実際の計算に必要な演算はRe,kの1行1列目のスカラー値であることから、C−白色化高速H∞フィルタの式(55)は上述した式のように省略することができる。
C−白色化高速H∞フィルタを実行するためには、図2のCore Algorithmで図表の数式を上から順に(式番号が降順に)計算することにより、一サンプル(単位時刻)当たりのフィルタが実行できる。この式の順序は一般的なフィルタの記述とは逆となっている。なお、各表中、「Mul.」は積算回数、「Div.」は割算回数、「Add.」は加算回数を、それぞれ示す。
このように、この最適化によると、先に示したC−白色化高速H∞フィルタより計算量を一層削減することができる。
このとき、C−NLMSアルゴリズムのフィルタの式(58)、式(55)、式(49)、式(50)は、次のように整理できる。なお、例えば、C−NLMSの式(58)の第1列の第1成分から第N成分を抽出して利用したのが、以下のK〜 k(:,1)の式である。
なお、C−NLMSの式(58)から、
K〜 k−1(N,1)=ε0uk−N
という関係式が導出され、これによりC−NLMSの式(55)から上述のRe,k(1,1)の式が導かれる。
よって、実際の計算に必要な演算はRe,kの1行1列目のスカラー値であることから、C−NLMSアルゴリズムのフィルタの式(55)は上述した式のように省略することができる。
C−NLMSアルゴリズムのフィルタを実行するためには、図2のCore Algorithmで図表の数式を上から順に(式番号が降順に)計算することにより、一サンプル(単位時刻)当たりのフィルタが実行できる。この式の順序は一般的なフィルタの記述とは逆となっている。なお、各表中、「Mul.」は積算回数、「Div.」は割算回数、「Add.」は加算回数を、それぞれ示す。
このように、この最適化の一例によると、先に示したC−NLMSアルゴリズムのフィルタより計算量を一層削減することができる。これはδ=1/ε0のNLMSアルゴリズムと一致する。
5.1 準備
以下に、実施の形態として、エコーキャンセラの例を取り上げ、本同定アルゴリズムの動作を確認する。その前に、通信エコーキャンセラについて簡単に説明する。最近注目されているスマートスピーカーなどの音声インターフェイスに不可欠な音響エコーキャンセラも原理は同じである。
図4に、通信系とエコーについての説明図を示す。
国際電話など長距離電話回線では、信号増幅などの理由から4線式回線が用いられている。一方、加入者回線は比較的短距離なので2線式回線が使用されている。2線式回線と4線式回線の接続部には図4のようにハイブリッドトランスが導入され、インピーダンス整合が行われている。このインピーダンス整合が完全であれば、話者Bからの信号(音声)は話者Aのみに到達する。しかし、一般には完全に整合をとることはできず、受信信号の一部は4線式回線に漏れ、増幅された後、再び送信者(話者B)に戻る現象が起こる。これがエコー(echo)である。エコーは伝送距離が長くなるにつれて影響が大きくなり、著しく通話の品質を劣化させることが想定される(パルス伝送においては近距離であってもエコーによる通話品質の劣化は問題となることが想定される)。
そこで、図5のようにエコーキャンセラ(echo canceller)を導入し、直接観測可能な受信信号とエコーを用いてエコーパスのインパルス応答を逐次推定し、その結果を利用して得た疑似エコーを実際のエコーから差し引くことによってエコーを打ち消し、その除去を図っている。
エコーパスのインパルス応答の推定は、残留エコーekの平均2乗誤差が最小になるように行われる。このとき、エコーパスの推定を妨害する要素は、回線雑音と話者Aからの信号(音声)である。一般に、話者2人が同時に話し始めた(ダブルトーク)ときはインパルス応答の推定を中断する。
次に、このエコーキャンセリング問題の数理モデルを作成する。まず、受信信号ukがエコーパスへの入力信号となることを考慮すれば、エコーパスのインパルス応答hi[k]により、エコーdkの観測値ykは次式で表される。
以上より、キャンセリング問題は直接観測可能な受信信号ukとエコーの観測値ykからエコーパスのインパルス応答hi[k]を逐次推定する問題に帰着できる。
一般に、エコーキャンセラにH∞フィルタを適用するには、まず式(65)を状態方程式と観測方程式からなる状態空間モデルで表現しなければならない。そこで、{hi[k]}N−1 i=oを状態変数xkとし、wk程度の変動を許容すれば、エコーパスに対して次の状態空間モデルを立てることができる。
図13は、エコーパスのインパルス応答を示す図(表5)である。
次に、エコーパスの同定問題を用いて、C−高速H∞フィルタ(C−FHF)の妥当性を確認すると共に、高速カルマンフィルタ(FKF)と高速トランスバーサルフィルタ(FTF)に対する優位性を示す。未知システムは長さN=128をもつインパルス応答{hi(k)}N−1 i=0で表され、時刻k=4000で一度シフトし、その後はその値を保持した。
このとき、エコーの観測値ykは次式で表される。
また、受信信号ukは次のように2次のARモデルで近似した。
uk=α1uk−1+α2uk−2+w’k (71)
ただし、α1=0.7、α2=0.1とし、w’kは平均値0、標準偏差σw’=0.02の定常なガウス白色雑音とした。
図6は、C−高速H∞フィルタ(C−FHF)のタップ2乗誤差||x^k|k−xk||2の推移を、高速H∞フィルタ(FHF)、高速カルマンフィルタ(FKF)、高速トランスバーサルフィルタ(FTF)と比較した結果を示す。1.3<γf<∞のとき、計算量の違いはあるが、高速H∞フィルタ(FHF)とC−高速H∞フィルタ(C−FHF)の性能の差はほとんど見られない。興味深いことに、このように観測雑音が非常に小さい場合、高速H∞フィルタとC−高速H∞フィルタは、高速カルマンフィルタと高速トランスバーサルフィルタと比べて高い収束性能と追従性能を発揮した。
次に、図7に、音声信号の説明図を示す。
また、図8に、図7の音声信号を入力としたときの結果についての説明図を示す。
この場合も、C−高速H∞フィルタは高速カルマンフィルタや高速トランスバーサルフィルタより優れた収束性能と追従性能を示した。
命題1と命題2を用いれば、事後後方予測誤差e kは次のように事前後方予測誤差e 〜 kを用いて表すことができる。
命題1を用いれば、事後前方予測誤差ekは次のように事前前方予測誤差e 〜 kを用いて表すことができる。
命題1、命題2および命題3を用いれば、後方線形予測係数bkの更新式は次のように書き換えることができる。
命題1と命題4を式(29)に適用すれば、前方線形予測係数akの新たな更新式が得られる。
(N+1)×(N+1)行列QU kは次のように二通りに分解できる。
102 入力部
103 出力部
104 表示部
105 記憶部
106 インタフェース部
Claims (21)
- 入出力データからシステムの高速実時間同定を行うシステム同定装置であって、
評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを備え、
前記フィルタは、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与えられ、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定装置。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定を行うシステム同定装置であって、
評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを備え、
前記フィルタは、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与えられ、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定装置。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定を行うシステム同定装置であって、
評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを備え、
前記フィルタは、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与えられ、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定装置。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 請求項1乃至3のいずれかに記載のシステム同定装置において、
前記フィルタを実行する処理部
を備え、
前記処理部は、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化する第1ステップと、
前記処理部は、時刻kが予め定められたデータ長Lを超えているか判断し、超えていればフィルタゲインを初期化してリスタートする、又は、処理を終了する、第2ステップと、
前記処理部は、時刻kがデータ長L以下であれば、入力信号ukを入力部若しくはインタフェース部から入力し又は記憶部から読み出し、拡大観測行列CU kを入力信号ukとシフト特性CU k=[ck,Ck−1]=[Ck,ck−N]、を利用して更新する第3ステップと、
前記処理部は、フィルタを与える式を式番号が式(62)から式(49)の降順に、式(49)の右辺第2項を緩和係数μ(ここで、μは、μ>0の実数)で計算する処理を含み、単位時間あたりのフィルタ・アルゴリズムを実行する第4ステップと、
前記処理部は、式(49)を含むフィルタ方程式を更新し、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力する第5ステップと、
前記処理部は、時刻kを進ませて、前記第1ステップ乃至前記第4ステップの処理を繰り返す第6ステップと、
を含むことを特徴とするシステム同定装置。
- 請求項4又は5又は6に記載のシステム同定装置において、
前記フィルタを実行する処理部
を備え、
前記処理部は、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化する第1ステップと、
前記処理部は、時刻kが予め定められたデータ長Lを超えているか判断し、超えていればフィルタゲインを初期化してリスタートする、又は、処理を終了する、第2ステップと、
前記処理部は、時刻kがデータ長L以下であれば、入力信号ukを入力部若しくはインタフェース部から入力し又は記憶部から読み出し、拡大観測行列CU kを入力信号ukとシフト特性CU k=[ck,Ck−1]=[Ck,ck−N]、を利用して更新する第3ステップと、
前記処理部は、フィルタを与える式を式番号が式(58)から式(49)の降順に、式(49)をステップサイズμ(ここで、μは、μ>0の実数)で計算する処理を含み、単位ステップサイズあたりのフィルタ・アルゴリズムを実行する第4ステップと、
前記処理部は、式(49)を含むフィルタ方程式を更新し、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力する第5ステップと、
前記処理部は、時刻kを進ませて、前記第1ステップ乃至前記第4ステップの処理を繰り返す第6ステップと、
を含むことを特徴とするシステム同定装置。
- 請求項1乃至10のいずれかに記載のシステム同定装置において、
前記フィルタの処理部は、前記第5ステップにおいて、さらに次式(48)により出力推定値zv k|k,zv k|k−1を計算し、記憶部に記憶及び/又は出力部若しくはインタフェース部から出力することを特徴とするシステム同定装置。
z^k|k=Hkx^k|k (48)
ここで、
z^k|k:観測信号y0〜ykまでを用いた時刻kの出力zkの推定値Hkx^k|k;フィルタ方程式によって与えられる。
z^k|k−1:観測信号y0〜yk−1までを用いた時刻kの出力zkの1ステップ予測値Hkx^k−1|k−1;フィルタ方程式によって与えられる。
- 入出力データからシステムの高速実時間同定を行うシステム同定方法であって、
評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを用い、
前記フィルタを、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与え、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とするシステム同定方法。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定を行うシステム同定方法であって、
評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを用い、
前記フィルタを、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与え、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定方法。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定を行うシステム同定方法であって、
評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタを用い、
前記フィルタを、
次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与え、
前記システムの状態xkの状態推定値x^k|kを推定すること、
を特徴とする前記システム同定方法。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラムであって、
処理部が、前記フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラム。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラムであって、
処理部が、フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラム。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラムであって、
処理部が、フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラム。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
処理部が、前記フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)〜(62)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラムを記録したコンピュータ読み取り可能な記録媒体。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
χk:変換係数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
mk:KU kの第1〜第N行からなるN×2行列;KU kより得られる。
W:重み行列;γfより決まる。
ak:前方線形予測係数;N次元列ベクトルである。
bk:後方線形予測係数;N次元列ベクトルである。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
処理部が、フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)、(60)〜(62)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラムを記録したコンピュータ読み取り可能な記録媒体。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数 - 入出力データからシステムの高速実時間同定をコンピュータに実行させるためのシステム同定プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
処理部が、フィルタを、次式(11)〜(13)で表される状態空間モデルに対して、次式(49)、(50)、(55)、(58)によって与えるステップと、
前記処理部が、記憶部から再帰式の初期状態を読み出し、又は、初期状態を入力部若しくはインタフェース部から入力し、前記フィルタの再帰変数を初期化するステップと、
前記処理部が、評価基準として、システム雑音w k 及び観測雑音v k を含む外乱に対するフィルタ誤差の割合を示し且つ忘却係数ρで重み付けされたエネルギーゲインの最大値を、予め与えられた上限値γ f に対応する項より小さく抑えるように定めることにより、外乱に対して頑健なフィルタとし、前記フィルタを与える前記式を降順に計算することにより、前記システムの状態xkの状態推定値x^k|kを推定するステップと、
前記処理部が、状態推定値x^k|kを記憶部に記憶する及び/又は出力部若しくはインタフェース部から出力するステップ、
をコンピュータに実行させるためのシステム同定プログラムを記録したコンピュータ読み取り可能な記録媒体。
ここで、
xk:状態ベクトルまたは単に状態;未知、これが推定の対象となる。
x0:初期状態;未知である。
wk:システム雑音;未知である。
vk:観測雑音;未知である。
yk:観測信号;フィルタの入力となり、既知である。
zk:出力信号;未知である。
Gk:駆動行列;実行時に既知となる。
Hk:観測行列;既知である。
x^k|k:観測信号y0〜ykまでを用いた時刻kの状態xk(未知システムのインパルス応答)の推定値;フィルタ方程式によって与えられる。
x^k+1|k:観測信号y0〜ykまでを用いた時刻kの状態xk+1の1ステップ予測値;フィルタ方程式によって与えられる。
x^−1|−1:状態の初期推定値;本来未知であるが、便宜上0が用いられる。
Ks,k:フィルタゲイン;行列Σ^k|k−1から得られる。
Re,k:補助変数;2×2行列である。
N:状態ベクトルの次元(タップ数);事前に与えられる。
μ〜 k:KU kのN+1番目の1×2行ベクトル;KU kより得られる。
W:重み行列;γfより決まる。
ek:事後前方予測誤差;2次元列ベクトルである。
e k:事後後方予測誤差;2次元列ベクトルである。
ε0:任意の正の定数;ε0>0であり、事前に与えられる。
γf:アッテネーションレベル;設計の際に与えられる。
μ:ステップサイズ(緩和係数);μ>0の実数;事前に与えられる。
u k :未知系の入力;観測行列H k の成分
ρ:忘却係数
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018098503A JP6894402B2 (ja) | 2018-05-23 | 2018-05-23 | システム同定装置及び方法及びプログラム及び記憶媒体 |
US16/418,579 US10863272B2 (en) | 2018-05-23 | 2019-05-21 | System identification device, system identification method, system identification program, and recording medium recording system identification program |
EP19176004.0A EP3573233B1 (en) | 2018-05-23 | 2019-05-22 | System identification device, system identification method, system identification program, and recording medium recording system identification program |
CN201910428966.8A CN110535452A (zh) | 2018-05-23 | 2019-05-22 | 系统辨识装置和方法以及记录有系统辨识程序的存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018098503A JP6894402B2 (ja) | 2018-05-23 | 2018-05-23 | システム同定装置及び方法及びプログラム及び記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019205049A JP2019205049A (ja) | 2019-11-28 |
JP6894402B2 true JP6894402B2 (ja) | 2021-06-30 |
Family
ID=66826806
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018098503A Active JP6894402B2 (ja) | 2018-05-23 | 2018-05-23 | システム同定装置及び方法及びプログラム及び記憶媒体 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10863272B2 (ja) |
EP (1) | EP3573233B1 (ja) |
JP (1) | JP6894402B2 (ja) |
CN (1) | CN110535452A (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113691237B (zh) * | 2021-07-27 | 2024-01-02 | 浙江工商大学 | 一种加权融合鲁棒滤波方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE516835C2 (sv) * | 1995-02-15 | 2002-03-12 | Ericsson Telefon Ab L M | Ekosläckningsförfarande |
JP3654470B2 (ja) * | 1996-09-13 | 2005-06-02 | 日本電信電話株式会社 | サブバンド多チャネル音声通信会議用反響消去方法 |
JP4067269B2 (ja) | 2000-10-24 | 2008-03-26 | 独立行政法人科学技術振興機構 | システム同定方法 |
CA2399159A1 (en) * | 2002-08-16 | 2004-02-16 | Dspfactory Ltd. | Convergence improvement for oversampled subband adaptive filters |
US7480595B2 (en) * | 2003-08-11 | 2009-01-20 | Japan Science And Technology Agency | System estimation method and program, recording medium, and system estimation device |
EP2012430B1 (en) | 2006-04-14 | 2014-07-30 | Incorporated National University Iwate University | System identifying method and program, storage medium, and system identifying device |
NL2011975C2 (nl) * | 2013-12-17 | 2015-06-18 | Berkin Bv | Stromingsmeetapparaat van het thermische type. |
US9729968B2 (en) * | 2014-03-05 | 2017-08-08 | Texas Instruments Incorporated | Method and system for acoustic echo cancellation using cascaded kalman filtering |
US9881630B2 (en) * | 2015-12-30 | 2018-01-30 | Google Llc | Acoustic keystroke transient canceler for speech communication terminals using a semi-blind adaptive filter model |
US10229698B1 (en) * | 2017-06-21 | 2019-03-12 | Amazon Technologies, Inc. | Playback reference signal-assisted multi-microphone interference canceler |
-
2018
- 2018-05-23 JP JP2018098503A patent/JP6894402B2/ja active Active
-
2019
- 2019-05-21 US US16/418,579 patent/US10863272B2/en active Active
- 2019-05-22 EP EP19176004.0A patent/EP3573233B1/en active Active
- 2019-05-22 CN CN201910428966.8A patent/CN110535452A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3573233A3 (en) | 2019-12-11 |
EP3573233A2 (en) | 2019-11-27 |
CN110535452A (zh) | 2019-12-03 |
JP2019205049A (ja) | 2019-11-28 |
US10863272B2 (en) | 2020-12-08 |
US20190364361A1 (en) | 2019-11-28 |
EP3573233B1 (en) | 2022-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5196653B2 (ja) | システム同定方法及びプログラム及び記憶媒体、システム同定装置 | |
CN105391879A (zh) | 一种无回声残留双端通话鲁棒的声学回声消除方法 | |
JP4067269B2 (ja) | システム同定方法 | |
JP6894402B2 (ja) | システム同定装置及び方法及びプログラム及び記憶媒体 | |
CN113114865A (zh) | 一种组合函数链接型的核自应非线性回声消除方法 | |
Ahmad et al. | A 2-D recursive inverse adaptive algorithm | |
JP4444919B2 (ja) | システム推定方法及びプログラム及び記録媒体、システム推定装置 | |
CN108141202B (zh) | 包括自适应模块和校正模块的分区块频域自适应滤波器设备 | |
Paleologu et al. | Study of the optimal and simplified Kalman filters for echo cancellation | |
Dunne et al. | QR-based TLS and mixed LS-TLS algorithms with applications to adaptive IIR filtering | |
Paleologu et al. | A Kalman filter with individual control factors for echo cancellation | |
JP4705554B2 (ja) | エコーキャンセル装置、その方法、そのプログラム、およびその記録媒体 | |
JP6343585B2 (ja) | 未知伝達系推定装置、未知伝達系推定方法、およびプログラム | |
Yang et al. | Fast implementation of a family of memory proportionate affine projection algorithm | |
JPS6255739B2 (ja) | ||
Patel et al. | Nonlinear acoustic echo cancellation using low-complexity low-rank recursive least-squares algorithms | |
Nishiyama | Computational Improvement of the Fast ${\rm H} _ {\infty} $ Filter Based on Information of Input Predictor | |
Ganjimala et al. | A proportionate type block-oriented functional link adaptive filter for sparse nonlinear systems | |
JP5016501B2 (ja) | Fir型適応フィルタ | |
JP5281548B2 (ja) | 音響エコーキャンセル装置、音響エコーキャンセル方法及びそのプログラム | |
JPH0799468A (ja) | 音響反響除去装置 | |
Maqsood | Adaptive noise cancellation using single sensor | |
JP2012253647A (ja) | エコーキャンセラ | |
JP2004128994A (ja) | 適応フィルタシステム | |
JPH0799469A (ja) | 音響反響除去装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20180605 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200403 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201117 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201204 |
|
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: 20210601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210603 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6894402 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |