-
Notifications
You must be signed in to change notification settings - Fork 13
フィードフォワード型の更新アルゴリズム
ここではフィードフォワード型ANCシステムの制御法について説明する.
コントローラ内の騒音制御フィルタは時々刻々と更新される.このように逐次的に係数が更新されるフィルタのことを 適応フィルタ と呼び, 更新するためのアルゴリズムを 適応更新アルゴリズム と呼ぶ. 能動騒音制御では,適応更新アルゴリズムとして Filtered-X LMSアルゴリズム を用いる.
Filtered-X LMSアルゴリズムの原理 [link]
騒音制御フィルタのフィルタ係数は,誤差マイクロホンで取得される誤差信号が "0" になるよう更新すればよい. Filtered-X LMSアルゴリズムでは,誤差信号の時間平均パワーを最小化する ようフィルタ係数を更新する. 誤差信号の時間平均パワー J は以下の式で定義される.
.
ここで E[・] は時間平均を意味する演算子であり,例えば E[x] は以下の式のように計算(更新)される.
.
最急降下法に基づき,フィルタ係数の更新式を導出する.
誤差信号の時間平均パワー J が最小であるとき,誤差信号の時間平均パワー J を騒音制御フィルタの係数 で偏微分した値が"0"になる.
J を で偏微分した式(勾配)は,
,
と計算できる.この勾配をもとに,フィルタ係数の更新式は以下の式で与えられる.
,
ここで は更新ステップサイズと呼ばれる正の定数である. 更新ステップサイズが大きいほどアルゴリズムの収束が速いが,不安定になりやすかったり,収束後の消音性能が悪化する場合もある.
上式からわかるように,この更新アルゴリズムを使用するには2次経路を表す伝達関数の係数 が必要である. しかし,一般に 完全に正確な2次経路の伝達関数を知ることは難しい. 実際には事前に推定して得られる近似モデル(2次経路モデル)を用いることとなる. すなわち,実際のフィルタの更新式は以下のようになる.
,
ここで は2次経路モデルのフィルタ係数である.
最小勾配法に基づく更新は,*E[・]*の平均処理が必要なためバッチ処理[link]となる.これは消音を達成するまでに大きな遅延が発生することを意味する.
一般に能動騒音制御では,リアルタイム処理 を目指して 確率的勾配降下法 によりフィルタ係数を更新する.確率的勾配降下法における更新式は,最小勾配法から平均処理 E[・] を取り除いた以下の式となる.
.
この更新アルゴリズムは Filtered-X LMS アルゴリズム と呼ばれる. 最小勾配法と比較して,Filtered-X LMS アルゴリズムは不安定になる場合があるが,バッチ処理でないため高速に動作する利点がある.
Filtered-X LMS アルゴリズムを更に高速かつ安定に動作させる手法として,Filtered-X NLMS アルゴリズムがある. このアルゴリズムは,勾配項を参照信号のパワーで正規化する 正規化LMS(Normalized LMS : NLMS)アルゴリズム を導入している. Filtered-X NLMS アルゴリズムの更新式は以下のとおりである.
.