(57)【特許請求の範囲】
【請求項１】
逐次最小二乗アルゴリズムを用いた適応ろ波方式を採用した適応忘却制御適応フィルタであって、
所定時刻ｎにおける誤差信号と前記所定時刻を一単位時間遅延させた時刻ｎ＋１における誤差信号とを乗算する第１の乗算手段と、
前記時刻ｎ＋１における参照入力ベクトルと、前記時刻ｎにおけるカルマン利得ベクトルとの内積を計算するベクトル内積計算手段と、
前記第１の乗算手段の出力と、前記ベクトル内積計算手段の出力とを乗算する第２の乗算手段と、
前記第２の乗算手段の出力を、前記時刻ｎにおける忘却係数の補数信号で除算する除算手段と、
前記除算手段の出力と適応制御の係数とを乗算する第３の乗算手段と、
前記第３の乗算手段の出力と前記時刻ｎにおける忘却係数の補数信号とを加算する加算手段と、
前記加算手段の出力を一単位時間遅延させる遅延手段と、
前記遅延手段の出力を１から減算する減算手段と、を有し、
前記減算手段の出力を忘却係数として出力し、前記時刻ｎにおける忘却係数の補数信号は、前記遅延手段の出力をフィードバックさせた信号であり、誤差信号の忘却係数に関する勾配を用いて前記忘却係数を更新することにより適応制御するようになしたことを特徴とする適応忘却係数制御適応フィルタ。
【請求項２】
前記ベクトル内積計算手段は、前記時刻ｎ＋１における参照入力ベクトルと、前記カルマン利得ベクトルの替わりに前記時刻ｎにおける参照入力ベクトルとの内積を計算することを特徴とする請求項１記載の適応忘却係数制御適応フィルタ。
【請求項３】
逐次最小二乗アルゴリズムを用いた適応ろ波方式を採用した適応忘却制御適応フィルタにおける忘却係数を適応制御する忘却係数適応制御方法であって、
所定時刻ｎにおける誤差信号と前記所定時刻を一単位時間遅延させた時刻ｎ＋１における誤差信号とを乗算する第１の乗算工程と、
前記時刻ｎ＋１における参照入力ベクトルと、前記時刻ｎにおけるカルマン利得ベクトルとの内積を計算するベクトル内積計算工程と、
前記第１の乗算工程により乗算された出力と、前記ベクトル内積計算工程により計算された出力とを乗算する第２の乗算工程と、
前記第２の乗算工程により乗算された出力を、前記時刻ｎにおける忘却係数の補数信号で除算する除算工程と、
前記除算工程により除算された出力と適応制御の係数とを乗算する第３の乗算工程と、
前記第３の乗算工程により乗算された出力と前記時刻ｎにおける忘却係数の補数信号とを加算する加算工程と、
前記加算工程により加算された出力を一単位時間遅延させる遅延工程と、
前記遅延工程の出力を１から減算する減算工程と、を有し、
前記減算工程の出力を忘却係数として出力し、前記時刻ｎにおける忘却係数の補数信号は、前記遅延工程により遅延された出力をフィードバックさせた信号であり、誤差信号の忘却係数に関する勾配を用いて前記忘却係数を更新することにより適応制御するようになしたことを特徴とする忘却係数適応制御方法。
【請求項４】
前記ベクトル内積計算工程は、前記時刻ｎ＋１における参照入力ベクトルと、前記カルマン利得ベクトルの替わりに前記時刻ｎにおける参照入力ベクトルとの内積を計算することを特徴とする請求項３記載の忘却係数適応制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ伝送や音響システムに用いられるエコーキャンセラ、ディジタルデータ伝送用自動等化器、また一般に未知システムの同定に用いられる適応忘却係数制御適応フィルタ、および忘却係数適応制御方法に関する。
【０００２】
【従来の技術】
はじめに適応フィルタの原理について述べる。図３に適応フィルタの原理図を示す。適応フィルタは、既知の参照入力信号から未知信号の推定値を作成し、未知信号とこの推定値との誤差の信号をもとに、フィルタの有するパラメータを更新し、未知システムを正しく同定するものである。未知信号には、通常観測時の雑音が相加されている。適応フィルタは、未学習の初期状態から出発し最終定常状態に収束する。また未知信号は未知システムの、前述した参照入力信号に対する応答として与えられる場合が多い。エコーキャンセラや自動等化器がこの場合に相当する。
【０００３】
適応フィルタは、巡回型（ＦＩＲ）ろ波器として実現することが多く、この場合誤差信号e(n)を用いてN 個のタップ重みc0,c1,.....,cN -1 を制御する。本発明ではタップ重みの制御アルゴリズムとして逐次最小二乗(Recursive Least Squares) アルゴリズムを用いる。タップ重み等の更新式は次のようになる。以下、本明細書中において、 は、ベクトルまたは行列を示すものとする。
【０００４】
c(n+1)=c(n)+e(n)g(n)      ・・・式１
g(n)=P(n)a(n)/｛λ+aT (n)P(n)a(n) ｝      ・・・式２P(n+1)= ｛P(n)-g(n)aT (n)P(n) ｝/ λ      ・・・式３
【０００５】
ここで、n は離散時刻、a(n)=[a(n),a(n-1),.....,a(n-N+1)] T はフィルタ参照入力信号ベクトル、a(n)は参照入力信号系列、c(n)=[c0(n),c1(n),....,cN -1(n)]T はタップ重みベクトル、g(n)はカルマン利得と呼ばれるベクトル、P(n)は参照入力信号の共分散行列に対する逆行列の推定値である。( ・) T はベクトルまたは行列の転置を示す。式２及び式３において、λは忘却係数(forgetting factor) と呼ばれるパラメータである。
【０００６】
逐次最小二乗アルゴリズムでは所要演算量は多いが、よく知られている最小二乗平均(LMS) アルゴリズム等に比べ、有色参照入力の場合に速い収束を与える。
【０００７】
【発明が解決しようとする課題】
さて、逐次最小二乗アルゴリズムを用いた適応フィルタを未知システムの応答を同定する目的で使用する場合、その応答が定常時不変(stationary time-invariant) でなく非定常時変(nonstationary time-variant)であると、上記忘却係数の最適値が存在することが知られている。そのような最適忘却係数に対しては二乗平均誤差(MSE) は最小になる。未知システムの非定常特性は予め知られていないから、最適な忘却係数の値も未知である。
【０００８】
そこで非定常時変のシステム同定においては、忘却係数を最適制御し二乗平均誤差を最小化することが要求される。本発明は、以上に示した事情に鑑みなされたものであり、忘却係数を最適制御し二乗平均誤差を最小化することが可能な適応忘却係数制御適応フィルタ、および忘却係数適応制御方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、請求項１記載の発明は、逐次最小二乗アルゴリズムを用いた適応ろ波方式を採用した適応忘却制御適応フィルタであって、所定時刻ｎにおける誤差信号と所定時刻を一単位時間遅延させた時刻ｎ＋１における誤差信号とを乗算する第１の乗算手段と、時刻ｎ＋１における参照入力ベクトルと、時刻ｎにおけるカルマン利得ベクトルとの内積を計算するベクトル内積計算手段と、第１の乗算手段の出力と、ベクトル内積計算手段の出力とを乗算する第２の乗算手段と、第２の乗算手段の出力を、時刻ｎにおける忘却係数の補数信号で除算する除算手段と、除算手段の出力と適応制御の係数とを乗算する第３の乗算手段と、第３の乗算手段の出力と時刻ｎにおける忘却係数の補数信号とを加算する加算手段と、加算手段の出力を一単位時間遅延させる遅延手段と、遅延手段の出力を１から減算する減算手段と、を有し、減算手段の出力を忘却係数として出力し、時刻ｎにおける忘却係数の補数信号は、遅延手段の出力をフィードバックさせた信号であり、誤差信号の忘却係数に関する勾配を用いて忘却係数を更新することにより適応制御するようになしたことを特徴としている。
【００１２】
請求項２記載の発明は、請求項１記載の発明において、ベクトル内積計算手段は、時刻ｎ＋１における参照入力ベクトルと、カルマン利得ベクトルの替わりに時刻ｎにおける参照入力ベクトルとの内積を計算することを特徴としている。
【００１３】
請求項３記載の発明は、逐次最小二乗アルゴリズムを用いた適応ろ波方式を採用した適応忘却制御適応フィルタにおける忘却係数を適応制御する忘却係数適応制御方法であって、所定時刻ｎにおける誤差信号と所定時刻を一単位時間遅延させた時刻ｎ＋１における誤差信号とを乗算する第１の乗算工程と、時刻ｎ＋１における参照入力ベクトルと、時刻ｎにおけるカルマン利得ベクトルとの内積を計算するベクトル内積計算工程と、第１の乗算工程により乗算された出力と、ベクトル内積計算工程により計算された出力とを乗算する第２の乗算工程と、第２の乗算工程により乗算された出力を、時刻ｎにおける忘却係数の補数信号で除算する除算工程と、除算工程により除算された出力と適応制御の係数とを乗算する第３の乗算工程と、第３の乗算工程により乗算された出力と時刻ｎにおける忘却係数の補数信号とを加算する加算工程と、加算工程により加算された出力を一単位時間遅延させる遅延工程と、遅延工程の出力を１から減算する減算工程と、を有し、減算工程の出力を忘却係数として出力し、時刻ｎにおける忘却係数の補数信号は、遅延工程により遅延された出力をフィードバックさせた信号であり、誤差信号の忘却係数に関する勾配を用いて忘却係数を更新することにより適応制御するようになしたことを特徴としている。
【００１６】
請求項４記載の発明は、請求項３記載の発明において、ベクトル内積計算工程は、時刻ｎ＋１における参照入力ベクトルと、カルマン利得ベクトルの替わりに時刻ｎにおける参照入力ベクトルとの内積を計算することを特徴としている。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態を添付図面を参照しながら詳細に説明する。
【００１８】
本発明は上記忘却係数の適応制御方法を与えるものである。それには誤差信号の忘却係数に関する勾配を用いる。本発明によれば、忘却係数の更新は次式のように行われる。
【００１９】
λ(n)=1-λc (n)       ・・・式４
λc(n+1)= λc (n)+ρG e(n+1)e(n)a T (n+1)g(n)/λc (n)       ・・・式５
【００２０】
ここで、λc (n) は時刻n における忘却係数λ(n) の補数、ρG は適応制御の係数である。
【００２１】
本発明の一実施例を図１に示す。本実施例に示す回路は、乗算器１１、ベクトルの内積計算器１７、乗算器１２、除算器１６、乗算器１３、加算器１４、遅延器１８、および減算器１５を備える。
【００２２】
入力される信号１０１と信号１０２は、それぞれ時刻n+1 およびn における誤差信号e(n+1)およびe(n)である。乗算器１１は、信号１０１と信号１０２との積を計算する。入力されるベクトル１０３は時刻n+1 における参照入力信号ベクトルa(n+1)であり、入力されるベクトル１０４は時刻n におけるカルマン利得g(n)である。ベクトルの内積計算器１７は、ベクトル１０３とベクトル１０４との内積a T (n +1)g(n)を求める。
【００２３】
次に、乗算器１２は、乗算器１１の出力と内積計算器１７の出力との積を計算する。遅延器１８からフィードバックされる信号１０６は忘却係数の補数λc (n) であって、除算器１６は乗算器１２の出力を信号１０６により除する。その商は乗算器１３に入力され、乗算器１３は、当該信号１０６と入力される適応制御の係数１０７との積を計算する。加算器１４は、乗算器１３の出力に上記遅延器１８からフィードバックされる信号１０６を加算する。その和は一単位時間の遅延器１８に与えられ、一単位時間遅延される。遅延器１８の出力が上記信号１０６であって、当該信号１０６はさらに減算器１５に入力され、減算器１５は、値「１」を有する入力信号１０８から上記信号１０６を減算する。その差は出力１０５となる。出力１０５は忘却係数λ(n) に他ならない。
【００２４】
以上に述べた実施例は上記式４及び式５を具体的な回路で実現したものであるが、乗除算の順番を変えた構成も可能である。
【００２５】
また、式５の変化形を以下に示す。
【００２６】
0003707443.tif 000002
または
λc (n+1)=λc (n)+ρG e(n+1)e(n)a T (n+1)a(n)/λc (n)       ・・・式７
が考えられる。
【００２７】
式６でsgn(・) は極性関数である。式７ではカルマン利得g(n)の替わりに参照入力信号ベクトルa(n)を用いている。
【００２８】
なお、上述した実施の形態は、本発明の好適な実施の形態の一例を示すものであり、本発明はそれに限定されることなく、その要旨を逸脱しない範囲内において、種々変形実施が可能である。上述の説明では、本発明の忘却係数制御方法を回路により実現したが、ＤＳＰ（Digital Signal Processor）によるデジタル信号処理により実現することもできる。
【００２９】
【発明の効果】
本発明の効果を示すために、図２に計算機シミュレーションの結果を掲げる。ここでは、未知システムの非定常時変特性を「酔歩」モデルとした。初め定常時不変未知システムを仮定して、二乗平均誤差(MSE) が小さくなるように忘却係数の補数は小さく選んであるので、未知システムが非定常の場合、MSE はフィルタの収束後-8dBとなっている。時刻n=10000 で適応忘却係数制御を開始すると、MSE は-20dB まで達し10dB以上の改善が見られる。実際この例では、最適な忘却係数の値に対する最小MSE の値は-20dB である。つまり忘却係数の最適制御が達成された。図２には同時に忘却係数の補数の変化も示してあるが、本発明の適応制御により、初期の小さい値から最適値に制御される様子が見られる。
【００３０】
したがって、本発明によれば、忘却係数を最適制御し二乗平均誤差を最小化することにより、未知システムを正しく同定することができる。
【図面の簡単な説明】
【図１】本発明における適応忘却係数制御法の一実施例を説明するためのブロック図である。
【図２】本発明の効果を示す適応フィルタのシミュレーション結果を示す図である。
【図３】適応フィルタの原理を示す図である。
【符号の説明】
１１、１２、１３  乗算器
１４  加算器
１５  減算器
１６  除算器
１７  ベクトル内積計算機器
１８  一単位時間の遅延器
１０１、１０２  誤差信号
１０３  参照入力信号ベクトル
１０４  カルマン利得
１０５  忘却係数
１０６  忘却係数の補数
１０７  適応制御の係数
１０８  値「１」
【図１】
0003707443.tif 000003
【図２】
0003707443.tif 000004
【図３】
0003707443.tif 000005