従来、音響システム等の制御器を設計するために、逆システムを用いることが知られている。逆システムとは、制御対象となるシステムの逆の特性を有するシステムである。所定の目的に応じた逆システムを適切に設計することにより、所望の制御器を設計することができる。
〔逆システム〕
図17及び図18は、逆システムを説明する概念図である。図17及び図18において、逆システムHinv100は、信号Xinを入力して信号Xoutを出力し、制御対象Gp101は、信号Yinを入力して信号Youtを出力するものとする。
図17を参照して、制御対象Gp101は、逆システムHinv100により出力される信号Xoutを信号Yinとして入力する。このような逆システムHinv100及び制御対象Gp101において、制御対象Gp101により出力される信号Youtを、逆システムHinv100に入力する信号Xinに一致または近似させる場合、逆システムHinv100は、制御対象Gp101の逆システムとなる。
また、図18を参照して、逆システムHinv100は、制御対象Gp101により出力される信号Youtを信号Xinとして入力する。このような逆システムHinv100及び制御対象Gp101において、逆システムHinv100により出力される信号Xoutを、制御対象Gp101に入力する信号Yinに一致または近似させる場合も、逆システムHinv100は、制御対象Gp101の逆システムとなる。
図19は、多入力多出力の逆システムを説明する概念図である。図19は、図17に示した1入力1出力の逆システムHinv100及び制御対象Gp101を多入力多出力のシステムに拡張したものである。逆システムHinv102は、信号Xin1,Xin2,・・・,XinNを入力して信号Xout1,Xout2,・・・,XoutMを出力し、制御対象Gp103は、信号Yin1,Yin2,・・・,YinMを入力して信号Yout1,Yout2,・・・,YoutNを出力するものとする。
図19に示すように、制御対象Gp103は、逆システムHinv102により出力される信号Xout1,Xout2,・・・,XoutMを信号Yin1,Yin2,・・・,YinMとしてそれぞれ入力する。このような逆システムHinv102及び制御対象Gp103において、制御対象Gp103により出力される信号Yout1,Yout2,・・・,YoutNを、逆システムHinv102に入力する信号Xin1,Xin2,・・・,XinNに一致または近似させる場合、逆システムHinv102は、制御対象Gp103の逆システムとなる。
図17において、制御対象Gp101により出力される信号Youtを、逆システムHinv100に入力される信号Xinに一致させることが、逆システムHinv100を設計する目的となる。この場合の出力を観察する地点を制御点という。図17において、制御対象Gp101により出力される信号Youtを観察する地点が制御点となる。同様に、図19では、制御対象Gp103により出力される信号Yout1,Yout2,・・・,YoutNを観察する地点が制御点となる。ここで、図17に示した制御対象Gp101の入力点、すなわち制御点へ信号Yinを提示する地点を提示点とする。図19に示した制御対象Gp103の各入力点、すなわち各制御点へ信号Yin1,Yin2,・・・,YinMを提示する地点を提示点とする。
〔音響システム〕
次に、音響システムの例を挙げて、制御対象及び逆システムについて説明する。音響システムでは、音場制御または室内残響除去等の処理のために、逆システムが用いられる。制御対象は、音場制御が行われる音場または残響が除去される室内の音場である。
図20は、音響システムにおいて、聴取音場を制御対象とした場合の制御対象及び逆システムを説明する概念図であり、図19に示した多入力多出力の逆システムHinv102及び制御対象Gp103に対応している。図20に示すように、音場制御の処理を行うための制御器を設計する場合には、聴取音場が制御対象Gp103となる。制御対象Gp103には、5台のスピーカ104−1〜104−5及び2本のマイクロホン105−1,105−2が配置されている。制御したい聴取位置(マイクロホン105−1,105−2の位置)が制御点となる。
聴取音場内に配置されたスピーカ104−1〜104−5から再生される音響信号により制御が行われるとすると、これらのスピーカ104−1〜104−5へ入力される音響信号が制御対象Gp103への入力信号となる。
音場制御では、スピーカ104−1〜104−5を二次音源といい、制御対象Gp103は、各二次音源である提示点から制御点への音響伝搬を示す指標である伝達関数(音響伝達関数)によってモデル化される。この場合、制御対象Gp103は、制御点×二次音源の音響伝達関数のマトリクス(音響伝達関数行列)として表現される。
〔制御器〕
これらの制御点に対して所望の音響信号を提示する場合、逆システムHinv102を適切に設計した上で、逆システムHinv102に、所望の音響特性を付与した音響信号を入力すればよい。この所望の音響特性を付与するシステムを目標システムGtとすると、制御器は、目標システムGtに逆システムHinv102を合わせて構成される。
図21は、音響システムにおいて、入力信号に所望の音響特性を付与する制御器を説明する概念図である。制御器Hは、制御点にて所望の音響特性を有する音響信号が観察されるように、音響信号を制御対象Gp103へ出力する。図20に示した逆システムHinv102に加え、制御点であるマイクロホン105−1,105−2に対して所望の音響信号を提示するように、入力信号に所望の音響特性を付与する目標システムGt110を想定する。つまり、制御器Hは、目標システムGt110及び逆システムHinv102を備えて構成される。
図22は、音響システムにおいて、聴取音場を制御対象とした場合の逆システムの伝達関数行列を周波数領域で計算する例を説明する概念図である。説明を簡単化するため、二次音源の数及び制御点の数を共に2とする。制御対象Gp109は聴取音場であり、2台のスピーカ104−1,104−2及び2本のマイクロホン105−1,105−2が配置されている。制御したい聴取位置(マイクロホン105−1,105−2の位置)が制御点となる。制御器Hは、入力信号uに所望の音響特性を付与する目標システムGt108、及び逆システムHinv107を備えて構成される。
図22において、制御器Hに入力される信号をu、入力信号uに付与される所望の音響特性の伝達関数(目標システムGt108を表す伝達関数)をxi、逆システムHinv107を表す伝達関数をhij、制御対象Gp109において、j番目の二次音源であるスピーカ104−jからi番目の制御点であるマイクロホン105−iまでの間の伝達関数をgij、制御点にて観察される音響信号をyiとする。i=1,2であり、j=1,2である。ここで、目標システムGt108の伝達関数xiは、制御点にて観察される音響信号にて実現したい所望の音響特性である。
逆システムHinv107の伝達関数行列を求める逆システム設計装置は、まず、j番目の二次音源であるスピーカ104−jからi番目の制御点であるマイクロホン105−iまでの間の伝達関数gij(ω)を求める。具体的には、逆システム設計装置は、インパルス応答を測定し、離散フーリエ変換等により、インパルス応答を周波数領域のスペクトルに変換することで、周波数領域の伝達関数gij(ω)を求める。
制御器Hの入力信号uから制御点にて観察される音響信号y
iまでの関係は、離散周波数ビン毎に、次式で表される。
ここで、ω
kは離散周波数ビンを示し、周波数領域の表現であることを明示するために記述される。
逆システム設計装置は、次式に示すように、観察される音響信号y
iと、入力信号uに所望の音響特性の伝達関数x
iを付与した信号とを一致させることを目的として、処理を行う。
また、各行列の要素は複素数である。逆システム設計装置は、次式に示すように、伝達関数g
ij(ω
k)を要素とする制御対象Gp109の伝達関数行列を用いて、逆行列計算により、伝達関数h
ij(ω
k)を要素とする逆システムHinv107の伝達関数行列を求める。
逆システム設計装置は、離散周波数ビンω
k毎に、前記式(3)の計算を行う。そして、逆システム設計装置は、次式に示すように、離散フーリエ逆変換等により、逆システムHinv107の伝達関数行列を周波数領域から時間領域に戻す。逆システムHinv107は、制御器H内にFIRフィルタまたはIIRフィルタとして実装される。
ここで、kは、時間領域の表現であることを明示するために記述される。
このように、逆システム設計装置により逆システムHinv107の伝達関数行列が求められ、逆システムHinv107は、FIRまたはIIRフィルタとして実装される。制御器Hは、この逆システムHinv107と、入力信号uに所望の音響特性を付与する目標システムGt108とを備えて構成される。
一般に、制御対象Gp109において、様々な要因から前記数式(1)〜(4)の計算が成り立たなくなることが多い。例えば図22において、スピーカ104−1,104−2及びマイクロホン105−1,105−2の向きまたは位置がわずかにずれるだけでも、伝達関数gijが変わってくる。
図23は、音響システムにおいて、図22に示したマイクロホン105−1,105−2の代わりに、制御点を聴取者の耳112−1,112−2とした場合の例を説明する概念図である。この制御対象Gp109では、制御点である耳112−1,112−2の位置にて音響信号yiが観察され、制御対象Gp109の伝達関数gijとして聴取者の頭部伝達関数gijが用いられる。
図23に示す制御対象Gp109の音場の再生を、バイノーラル再生という。スピーカ104−1,104−2から制御点である耳112−1,112−2までの間の頭部伝達関数gijは、聴取者の頭または耳の形等によって変化することから、聴取者が代わると、制御対象Gp109の伝達関数gijも変化してしまう。
図22を用いて説明した計算例では、逆システムHinv107は厳密に設計され、制御対象Gp109の伝達関数gijが変化することは勘案されていない。このため、図22の計算例では、制御対象Gp109の伝達関数gijの変化に対して脆弱である。
図23から、音響システムにおける制御点では、二次音源から再生される音響信号の重ね合わせにより、合成された音響信号yiとなることがわかる。制御対象Gp109の伝達関数gijが変化し、その位相が反転した場合には、加算されるべき音響信号が相殺されたり、相殺されるべき音響信号が加算増幅されたりする等の問題が生じる。特に、振幅の大きな音響信号を逆相で相殺している場合に位相が反転すると、振幅の大きな音響信号同士が加算され、大きな誤差及びノイズが発生してしまう。
このような問題を解決するために、例えば、逆行列を計算する際に正則項を挿入する手法が開示されている(例えば、非特許文献1を参照)。これにより、制御器Hのゲインを小さくすることができ、入力信号に対する出力信号の増幅を抑えるから、結果として出力信号の誤差及びノイズの拡大を抑えることができる。
また、伝達関数を特異値分解し、逆行列の特異値のうち値の大きな特異値を0として無視する手法も開示されている(例えば、非特許文献2を参照)。これにより、非特許文献1と同様に、制御器Hのゲインを小さくすることができ、結果として出力信号の誤差及びノイズの拡大を抑えることができる。
また、制御点の数を二次音源より少なくし、逆行列の代わりに擬似逆行列を計算する手法も開示されている(例えば、非特許文献3を参照)。これにより、間接的に逆システムのゲインを小さくすることができる。
以下、本発明を実施するための形態について図面を用いて詳細に説明する。制御器Hは、所望の特性を付与する目標システムGtと制御対象Gpの逆システムHinvとにより構成されるものとする。本発明では、制御対象Gpを、直達項を持たない状態空間モデルで表現することを前提に、目標システムGtを、直達項を持たない状態空間モデルで表現し、目標システムGt及び逆システムHinvを状態空間で設計する。
一般に、m入力p出力(m>p)の離散時間線形時不変システム(離散時間LTI(Linear Time Invariant)システム)G(z)において、直達項を持たない状態空間モデルは、以下の式にて表される。m,pは正の整数である。
ここで、x(k),u(k),y(k)は、それぞれ状態変数ベクトル、入力ベクトル、出力ベクトルであり、x(k)∈R
n,u(k)∈R
m,y(k)∈R
pとする。
A,B,Cは、それぞれ離散時間LTIシステムG(z)におけるシステムの係数行列(システム行列)、入力側の係数行列(入力行列)、出力側の係数行列(出力行列)とするパラメータであり、A∈Rn×n,B∈Rn×m,C∈Rp×nとする。nはシステムの次数である。Rn,Rm,Rpは、それぞれn,m,p行の実ベクトルからなる集合であり、Rn×n,Rn×m,Rp×nは、それぞれn行n列、n行m列、p行n列の実行列からなる集合である。
本発明は、制御器HのH∞ノルムを評価関数として制御器Hのゲインを定量化し、H∞ノルムを最小化する最適化問題として、制御器Hのパラメータを決定することを特徴とする。H∞ノルムとゲインとは、H∞ノルムが大きいほどゲインの上限が大きくなり、H∞ノルムが小さいほどゲインの上限が小さくなる関係にある。
制御器Hにおける複数のパラメータのうち後述するパラメータΦ^については、安定した解を得ることができない。本発明では、制御器HのH∞ノルムが最小となるように、安定解のパラメータΦ%を決定する。パラメータΦ^,Φ%の詳細については後述する。これにより、逆システムHinvの設計精度を犠牲にすることなく、制御器Hのゲインを小さくすることができ、外乱等の変化に対する頑健性を得ることが可能となる。以下、音響システムを例に挙げて説明する。
〔ハードウェア構成〕
まず、本発明の実施形態による制御器設計装置のハードウェア構成について説明する。図1は、本発明の実施形態による制御器設計装置のハードウェア構成を示す概略図である。この制御器設計装置10は、制御器Hを設計する装置である。制御器設計装置10は、CPU51と、プログラム及びテーブル等を記憶するROM及びRAMからなる記憶部52と、アプリケーションのプログラム、テーブル及びデータ等を記憶する記憶装置(例えばハードディスク装置)53と、当該制御器設計装置10のオペレータによるキーボード及びマウス等の操作に伴い、所定のデータを入力制御する操作/入力部54と、オペレータに対しデータ入力操作等を促すための画面情報を表示器に出力する表示出力インタフェース部55と、インターネット等のネットワークを介してプログラム及びデータの送受信を行う通信部56と、を備えて構成され、これらの構成部はシステムバス57を介して相互に接続される。
記憶装置53には、制御器設計装置10の基本的な機能を提供するOS(オペレーティングシステム)プログラム、制御器設計プログラム、及び、制御器設計プログラムにて使用する各種テーブル及びデータ等が記憶されている。
制御器設計プログラムは、所望の特性を付与する目標システムGtと制御対象Gpの逆システムHinvとにより構成される制御器Hを設計するためのプログラムである。具体的には、制御器設計プログラムは、制御対象Gpを、直達項を持たない状態空間モデルで表現することを前提に、制御器HのH∞ノルムを評価関数としてそのゲインを定量化し、H∞ノルムを最小化するように、制御器Hのパラメータを決定する。
尚、制御器設計プログラムは、当該制御器設計装置10が処理を行うときに、CPU51により記憶装置53から記憶部52のRAMに読み出されて実行される。また、各種テーブル及びデータは、制御器設計プログラムの実行に伴い生成され、CPU51によって記憶部52のRAMから記憶装置53へ書き込まれ、また、制御器設計プログラムの実行に伴い、CPU51によって記憶装置53から記憶部52のRAMに読み出される。
ここで、OSプログラムは、CPU51により実行され、制御器設計装置10の基本的な機能として、記憶部52、記憶装置53、操作/入力部54、表示出力インタフェース部55及び通信部56を管理する。そして、このOSプログラムがCPU51によって実行された状態で、前述の制御器設計プログラムが実行される。
制御部50は、CPU51及び記憶部52により構成され、CPU51が記憶装置53に記憶された制御器設計プログラムを記憶部52に読み出して実行することにより、制御器設計装置10全体を統括制御する。図1は、制御器設計プログラムが記憶装置53から記憶部52に読み出された状態を示している。このように、制御器設計装置10は、図1に示したハードウェア構成により、制御部50が制御器設計プログラムに従って各種処理を行う。
〔制御器H〕
次に、図1に示した制御器設計プログラムにより設計される制御器Hについて説明する。図2は、制御器Hを含む音響システムの構成例を示す図である。この音響システムは、制御器H、及び聴取音場である制御対象Gp1により構成される。
制御器Hは、所望の音響特性を付与する目標システムGt2、及び制御対象Gp1の逆システムである逆システムHinv3を備えている。制御対象Gp1には、m1個のスピーカ104−1〜104−m1が配置され、人間の耳112−1,112−2の位置が聴取位置である。制御したい聴取位置である耳112−1,112−2の位置が制御点であり、当該制御点において音響信号が観察される。制御対象Gp1の入力点であるスピーカ104−1〜104−m1の位置が提示点であり、当該提示点から制御点へ音響信号が提示される。
制御器Hの目標システムGt2は、m2個の信号(音響信号)u2-1〜u2-m2を入力し、音響信号u2-1〜u2-m2に対し、耳112−1,112−2の位置である制御点にて実現したい所望の音響特性を付与するための処理を行う。つまり、目標システムGt2は、耳112−1,112−2の位置である制御点にて観察される音響信号の特性を、所望の特性に一致させるためのシステムである。
逆システムHinv3は、所望の音響特性が付与された音響信号u2-1〜u2-m2を入力し、これらの信号に対して所定の処理を行い、m1個の音響信号u1-1〜u1-m1を生成して出力する。
制御対象Gp1は、制御器Hからm1個の音響信号u1-1〜u1-m1を入力し、スピーカ104−1〜104−m1から音響信号u1-1〜u1-m1が出力され、耳112−1,112−2に対して音響信号y1,y2が提示される。
〔制御対象Gp1〕
本発明の実施形態では、制御対象Gp1は、直達項を持たない状態空間モデルとして表現する。直達項を持たない状態空間モデルを説明する前に、直達項を持つ状態空間モデルについて説明する。
図3は、制御対象Gp1を、直達項を持つ状態空間モデルで表した場合のブロック線図である。図3において、システムの係数行列をA、入力側の係数行列をB、出力側の係数行列をC、直達項の行列をDとする。Z-1は1サンプル時間の遅れを表す遅延器であり、xは状態変数ベクトル、uは入力ベクトル、yは出力ベクトルを示す。
直達項を持つ状態空間モデルは、以下の式にて表される。
入力ベクトルuと状態変数ベクトルxの関係を示す前記数式(7)は、直達項を持たない状態空間モデルの前記数式(5)と同じである。また、出力ベクトルyと状態変数ベクトルx及び入力ベクトルuの関係を示す前記数式(8)は、直達項を持たない状態空間モデルの前記数式(6)の右辺に、直達項の行列Dと入力ベクトルuの乗算結果(積)を加えた式となる。
図4は、制御対象Gp1を、直達項を持たない状態空間モデルで表した場合のブロック線図であり、本発明の実施形態にて想定するモデルである。図3に示した直達項を持つ状態空間モデルとこの図4の状態空間モデルとを比較すると、図3では直達項の行列Dが存在するのに対し、図では直達項の行列Dが存在しない点で相違する。その他は同じである。
図4に示す直達項を持たない制御対象Gp1の状態空間モデルは、前記数式(5)及び(6)にて表され、前記数式(6)では、直達項を持つ状態空間モデルの前記数式(8)と異なり、直達項の行列Dと入力ベクトルuの乗算結果は存在しない。
図4に示すように、入力ベクトルuの信号と出力ベクトルyの信号との間に、1サンプル時間の遅れを生じさせる遅延器が存在する。このため、入力ベクトルuのサンプル時間と出力ベクトルyのサンプル時間とが同じではなく、この状態空間モデルは、1サンプル時間の遅延を有することとなる。
〔全体システム〕
本発明の実施形態において、制御器Hを設計する際に想定する全体システムについて説明する。図5は、全体システムについて説明する図である。この全体システムGwは、制御対象Gp1及び目標システムGt2により構成される。
制御対象Gp1には、二次音源であるm1個のスピーカ104−1〜104−m1が配置され、目標システムGt2には、所望の音響特性を提示する仮想音源であるm2個のスピーカ106−1〜106−m2が配置されている。また、制御対象Gp1及び目標システムGt2において、人間の耳112−1,112−2の位置がp=2個の聴取位置である。
制御したい聴取位置である耳112−1,112−2の位置が制御点である。制御対象Gp1の入力点であるスピーカ104−1〜104−m1の位置及び目標システムGt2の入力点であるスピーカ106−1〜106−m2の位置が提示点である。スピーカ104−1〜104−m1から音響信号u1-1〜u1-m1が出力され、スピーカ106−1〜106−m2から音響信号u2-1〜u2-m2が出力され、耳112−1,112−2に対して音響信号y1,y2が提示される。
本発明の実施形態では、音源である提示点のスピーカ104−1〜104−m1,106−1〜106−m2を実際に配置する。そして、スピーカ104−1〜104−m1,106−1〜106−m2から出力される音響信号、及び当該音響信号により得られる耳112−1,112−2における音響信号を測定する。このようにして測定された音響信号に基づいて制御器Hが設計され、制御器Hのパラメータが決定される。
つまり、本発明の実施形態では、図5に示した制御対象Gp1及び目標システムGt2から構成される全体システムGwを、入力数m=m1+m2及び出力数p=2としたm入力p出力のシステムとして扱う。
〔制御器設計装置10の制御部50〕
次に、図1に示した制御器設計装置10の制御部50について説明する。図6は、制御部50の機能構成例を示すブロック図であり、当該制御部50が制御器設計プログラムの処理を実行する際の機能構成を示している。この制御部50は、遅延時間算出部11、同定部12、仮逆システム構成部13、仮制御器構成部14、パラメータ決定部15及び制御器構成部16を備えている。制御部50は、制御器設計プログラムの処理にて制御器Hを設計することで、制御器Hのパラメータを決定する。
制御部50は、図5に示した二次音源であるスピーカ104−1〜104−m1から出力される音響信号u1-1〜u1-m1、仮想音源であるm2個のスピーカ106−1〜106−m2から出力される音響信号u2-1〜u2-m2、及び制御点の耳112−1,112−2に提示される音響信号y1,y2を入力する。
制御部50は、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、制御器HのパラメータGt#,H0,Rd,Rcを決定する。そして、制御部50は、当該パラメータを用いて構成される制御器Hの情報をH(Gt#,H0,Rd,Rc)として出力する。H(Gt#,H0,Rd,Rc)=H(Aw#,Bt#,Bp#,Cw#,Φ^,Ψ,Rd,Rc)=H(Aw#,Bt#,Bp#,Φ%,Rd,Rc)である。これらのパラメータの詳細については後述する。
制御部50により決定されたこれらのパラメータを用いて構成される制御器Hは、図2に示したとおり、音響信号u2-1〜u2-m2を入力し、音響信号u1-1〜u1-m1を出力する。つまり、これらのパラメータは、入力信号である音響信号u2-1〜u2-m2から出力信号である音響信号u1-1〜u1-m1を生成するためのデータである。
〔制御部50の処理〕
図7は、制御部50の処理例を示すフローチャートである。以下、制御部50の処理例について詳細に説明する。
(全体システムGwの遅延時間の算出、分離:ステップS701)
制御部50の遅延時間算出部11は、音響信号u1-1〜u1-m1を印加したときの音響信号y1,y2、及び、音響信号u2-1〜u2-m2を印加したときの音響信号y1,y2を取得する。そして、遅延時間算出部11は、全体システムGwの遅延時間を算出し、音響信号y1,y2のインパルス応答から遅延時間を分離(除去)する(ステップS701)。
前述の通り、全体システムGwの入力信号は、m=m1+m2個の音響信号u1-1〜u1-m1,u2-1〜u2-m2であり、出力信号は、p=2個の音響信号y1,y2である。音響信号u1-1〜u1-m1,u2-1〜u2-m2は測定信号として、音響信号y1,y2は応答信号として、遅延時間算出部11に入力される。
遅延時間算出部11は、まず、入力側の遅延時間を算出する。遅延時間算出部11は、全体システムGwのi番目の入力信号である、音響信号u1-1〜u1-m1,u2-1〜u2-m2のうちの1つの信号、及び音響信号y1,y2を入力する。そして、遅延時間算出部11は、i番目の入力信号に入力が印加されたタイミングから、いずれかの出力信号から非零の値が得られるまでの間の時間を算出し、その算出時間から1サンプル時間分減じた値を、入力側の遅延時間として求める。これをm1+m2回繰り返すことにより、m個の入力信号である音響信号u1-1〜u1-m1,u2-1〜u2-m2のそれぞれについて、全体システムGwにおける入力側の遅延時間が算出される。
遅延時間算出部11は、次に、出力側の遅延時間を算出する。遅延時間算出部11は、全体システムGwから入力側の遅延時間を除いた全体システムについて、全ての入力信号に入力が印加された場合の時系列の音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2を入力する。そして、遅延時間算出部11は、全ての入力信号に入力が印加されたタイミングから、i番目の出力信号から非零の値が得られるまでの間の時間をそれぞれ算出し、その算出時間から1サンプル時間分減じた値を、出力側の遅延時間として求める。これにより、p=2個の出力信号である音響信号y1,y2のそれぞれについて、全体システムGwにおける出力側の遅延時間が算出される。
遅延時間算出部11は、次に、全体システムGwにおいて、音響信号y1,y2のインパルス応答から入力側の遅延時間及び出力側の遅延時間を分離し、遅延時間が分離されたインパルス応答y1’,y2’を生成する。
(制御対象Gp#24及び目標システムGt#26の同定:ステップS702)
同定部12は、遅延時間が分離されたインパルス応答y1’,y2’に基づいて、制御対象Gp1から遅延時間を分離した制御対象(分離制御対象)Gp#24、及び目標システムGt2から遅延時間を分離した目標システム(分離目標システム)Gt#26を同定する(ステップS702)。入力側の遅延時間を求める際に1サンプル時間分遅延を減じているため、遅延時間を分離した制御対象Gp#24及び目標システムGt#26も、それぞれ直達項を持たない状態空間モデルとして表現される。
具体的には、同定部12は、インパルス応答y1’,y2’に基づいて、直達項を持たない状態空間モデルとして表現した制御対象Gp#24のパラメータである係数行列Aw#,Bp#,Cw#を同定する。また、同定部12は、インパルス応答y1’,y2’に基づいて、直達項を持たない状態空間モデルとして表現した目標システムGt#26のパラメータである係数行列Aw#,Bt#,Cw#を同定する。この同定手法は既知であるから、ここでは詳細な説明を省略する。
図8は、全体システムGwの構成例を示すブロック図である。全体システムGwから遅延時間が分離された全体システムをGw#(Aw#,Bw#,Cw#)、対角成分に遅延要素を持つ入力側の伝達関数行列をRw、対角成分に遅延要素を持つ出力側の伝達関数行列をQwとする。
全体システムGw#(Aw#,Bw#,Cw#)は、直達項を持たない状態空間モデルで表されるシステムである。uは入力信号(入力ベクトル)であり、m個の音響信号u1-1〜u1-m1,u2-1〜u2-m2を示し、yは出力信号(出力ベクトル)であり、p=2個の音響信号y1,y2を示す。Aw#はシステムの係数行列、Bw#は入力側の係数行列、Cw#は出力側の係数行列を示す。
図8に示すように、全体システムGwから入力側の遅延時間及び出力側の遅延時間が分離されることで、全体システムGwから、入力側遅延器Rw20、全体システムGw#21及び出力側遅延器Qw22が構成される。
ここで、入力側遅延器Rw20の伝達関数行列Rwにおいて、その1〜m1行目及び1〜m1列目からなる部分行列をRpとし、m1+1〜m2行目及びm1+1〜m2列目からなる部分行列をRtとする。また、全体システムGw#21の係数行列Bw#において、その1〜m1列目からなる部分行列をBp#とし、m1+1〜m2列目からなる部分行列をBt#とする。
図9は、制御対象Gp1の構成例を示すブロック図である。制御対象Gp1から遅延時間が分離された制御対象をGp#(Aw#,Bp#,Cw#)、対角成分に遅延要素を持つ入力側の伝達関数行列をRp、対角成分に遅延要素を持つ出力側の伝達関数行列をQwとする。
制御対象Gp#(Aw#,Bp#,Cw#)は、直達項を持たない状態空間モデルで表されるシステムである。u1は入力信号(入力ベクトル)であり、m1個の音響信号u1-1〜u1-m1を示し、yは出力信号(出力ベクトル)であり、p=2個の音響信号y1,y2を示す。Aw#はシステムの係数行列、Bp#は入力側の係数行列、Cw#は出力側の係数行列を示す。
全体システムGwのパラメータである係数行列Aw#,Bw#,Cw#と、制御対象Gp#24のパラメータである係数行列Aw#,Bp#,Cw#とを比較すると、両者は、システムの係数行列Aw#及び出力側の係数行列Cw#において共通する。これに対し、両者は、入力側の係数行列Bw#,Bp#において相違する。
図9に示すように、制御対象Gp1から入力側の遅延時間及び出力側の遅延時間が分離されることで、入力側遅延器Rp23、制御対象Gp#24及び出力側遅延器Qw22が構成される。同定部12により、制御対象Gp#24のパラメータである係数行列Aw#,Bp#,Cw#が同定される。
図11は、遅延時間を分離した制御対象Gp#24を、直達項を持たない状態空間モデルで表した場合のブロック線図である。図11に示すように、制御対象Gp#24の状態空間モデルは、図4と同様であり、前記数式(5)及び(6)にて表され、制御対象Gp#24のパラメータ(分離制御対象パラメータ)は係数行列Aw#,Bp#,Cw#である。
図10は、目標システムGt2の構成例を示すブロック図である。目標システムGt2から遅延時間が分離された目標システムをGt#(Aw#,Bt#,Cw#)、対角成分に遅延要素を持つ入力側の伝達関数行列をRt、対角成分に遅延要素を持つ出力側の伝達関数行列をQwとする。
目標システムGt#(Aw#,Bt#,Cw#)は、直達項を持たない状態空間モデルで表されるシステムである。u2は入力信号(入力ベクトル)であり、m2個の音響信号u2-1〜u2-m2を示し、yは出力信号(出力ベクトル)であり、p=2個の音響信号y1,y2を示す。Aw#はシステムの係数行列、Bt#は入力側の係数行列、Cw#は出力側の係数行列を示す。
全体システムGwのパラメータである係数行列Aw#,Bw#,Cw#と、目標システムGt#26のパラメータである係数行列Aw#,Bt#,Cw#とを比較すると、両者は、システムの係数行列Aw#及び出力側の係数行列Cw#において共通する。これに対し、両者は、入力側の係数行列Bw#,Bt#において相違する。
図10に示すように、目標システムGt2から入力側の遅延時間及び出力側の遅延時間が分離されることで、入力側遅延器Rt25、目標システムGt#26及び出力側遅延器Qw22が構成される。同定部12により、目標システムGt#26の係数行列Aw#,Bt#,Cw#が同定される。
図12は、遅延時間を分離した目標システムGt#26を、直達項を持たない状態空間モデルで表した場合のブロック線図である。図12に示すように、目標システムGt#26の状態空間モデルは、図4と同様であり、前記数式(5)及び(6)にて表され、目標システムGt#26のパラメータ(分離目標パラメータ)は係数行列Aw#,Bt#,Cw#である。
る。
ここで、図12に示した目標システムGt#26のブロック線図の数式を、以下のように表す。
(仮の逆システムH0を構成:ステップS703)
仮逆システム構成部13は、制御対象Gp#24の逆システムを、仮の逆システム(仮逆システム)H0として構成する(ステップS703)。ステップS703においては、仮の逆システムH0のパラメータのうち、後述するパラメータΦ^は具体的に決定されない。
図13は、制御対象Gp#24の逆システム(仮の逆システムH0)を示すブロック線図である。制御対象Gp#24の逆システムである仮の逆システムH0の状態空間モデルは、直達項を持つ状態空間モデルの前記数式(7)及び(8)において、係数行列A,B,CをそれぞれA0,B0,C0で置き換え、かつ直達項の行列DをD0で置き換えた式で表される。係数行列A0,B0,C0及び直達項の行列D0が、仮の逆システムH0のパラメータ(仮逆システムパラメータ)である。
ここで、システムの係数行列A0は、A0=Aw#−Bp#Φ^Ψであり、入力側の係数行列B0は、B0=Bp#Φ^であり、出力側の係数行列C0は、C0=−Φ^Ψであり、直達項の行列D0は、D0=Φ^である。また、パラメータΦ^は、Φ^∈Rm1×pであり、パラメータΦをΦ=Cw#Bp#としたときのΦΦ^=Ipを満たす縦長の矩形行列である。パラメータΨは、Ψ=Cw#Aw#である。この場合、パラメータΦ^は、安定した解を得ることができないため、未知の変数行列とする。
仮の逆システムH0のパラメータは、A0=Aw#−Bp#Φ^Ψ,B0=Bp#Φ^,C0=−Φ^Ψ,D0=Φ^であり、このうちのAw#,Bp#,Ψ=Cw#Aw#、及びΦ=Cw#Bp#は、ステップS702にて同定された制御対象Gp#24の係数行列Aw#,Bp#,Cw#を用いて直接決定される。しかし、仮の逆システムH0のパラメータのうちパラメータΦ^は、直接決定することができず、安定した解を得ることができない。
ステップS703において、パラメータΦ^は決定することができず、制御対象Gp#24の逆システムも具体的に決定することができないという意味で、制御対象Gp#24の逆システムを、仮の逆システムH0という。パラメータΦ^に代わる安定解のパラメータΦ%は、後述するステップS705において具体的に決定される。
図13に示した仮の逆システムH0のブロック線図における数式を、以下のように表す。
図13のブロック線図で表される逆システムH0は、厳密には完全な逆システムとはならず、1サンプル時間分だけ遅延時間を持つ。つまり、Gp#(z)H0(z)=z-1Ipである。Ipは単位行列を示す。
(仮の制御器H’を構成:ステップS704)
仮制御器構成部14は、遅延時間を分離した目標システムGt#26と仮の逆システムH0とを直列に結合し、仮の制御器(仮制御器)H’を構成する(ステップS704)。目標システムGt#26と仮の逆システムH0とが結合された制御器には未だ決定されていないパラメータΦ^が含まれ、当該制御器を具体的に特定することができないという意味で、仮の制御器H’という。
図14は、仮の制御器H’の構成例を示す図である。この仮の制御器H’は、目標システムGt#26及び仮の逆システムH0により構成される。目標システムGt#26は、図12に示したとおり、システムの係数行列Aw#、入力側の係数行列Bt#及び出力側の係数行列Cw#とする、直達項を持たない状態空間モデルにて表される。また、仮の逆システムH0は、図13に示したとおり、システムの係数行列A0=Aw#−Bp#Φ^Ψ、入力側の係数行列B0=Bp#Φ^、出力側の係数行列C0=−Φ^Ψ、直達項の行列D0=Φ^とする、直達項を持つ状態空間モデルにて表される。
図14に示した仮の制御器H’のブロック線図(図12に示したブロック線図と図13に示したブロック線図とを結合したもの)を数式で表すと、以下のとおりとなる。Gt#(z)及びH0(z)は、前記数式(9)及び(10)のとおりである。仮の制御器H’は、直達項を持たない状態空間モデルで表され、後述する変換処理を行うことで、制御器H’として全てのパラメータを決定することが可能となる。
(パラメータΦ%を決定:ステップS705)
パラメータ決定部15は、仮の制御器H’に変換処理を施し、変換後の制御器(変換後制御器)H’のH∞ノルムを評価関数として、H∞ノルムが最小となるようにパラメータΦ%を決定する(ステップS705)。これにより、制御器H’に含まれる全てのパラメータが決定される。
仮の制御器H’の前記数式(11)を、後述する数式(16)の変換行列Tを用いて等価変換すると、以下の数式が得られる。具体的な変換処理については後述する。
ここで、ΦΦ^=Ipの安定解は存在しないが、ΦΦ^Cw#=Cw#の安定解は存在する。このため、パラメータΦ^の代わりに、Φ^Cw#=Φ%となるパラメータΦ%を求める。前記数式(12)をパラメータΦ%で表すと、後述する数式(17)となる。
制御器H’のH∞ノルムを最小化するパラメータΦ%を決定するために、線形行列不等式(LMI(Linear Matrix Inequality))を用いる。H∞性能を特徴づける線形行列不等式を記述することができれば、既存の計算アルゴリズムを適用することにより、パラメータΦ%の数値解を得ることができる。
一般に、線形行列不等式における不等号は行列の定値性を表現し、未知変数x
i(i=1,・・・,m)に関する線形行列不等式は、以下の式で与えられる。
ここで、F
i(i=0,・・・,m)は実対称行列である。
離散時間LTIシステムを以下の式
で記述するとき、その安定性とH∞性能を特徴づける線形行列不等式表現は、以下の定理(a)(b)により与えられる。すなわち、離散時間LTIシステムG(z)が、直達項を持たない状態空間モデルを示す前記数式(5)及び(6)で表される場合に、与えられたパラメータγ>0に対し、次の条件は等価である。
(a)係数行列Aがシュール安定であり、||G||
∞<γが成り立つ。
(b)次式の線形行列不等式を満足するX∈S
n ++が存在する。S
n ++は、サイズがnの実正定行列からなる集合である。
この場合、制御器H’の前記数式(12)を前記数式(15)に代入し、当該数式(15)が満足するXが存在するときに、制御器H’のH∞ノルムはパラメータγ以下となり、以降、パラメータγが最小となるまで繰り返す。制御器H’のH∞ノルムを最小化するパラメータΦ%は、このときのΦ%の値に決定される。ここで、制御器H’の前記数式(12)を表す行列において、十字に区切られた左上の係数行列をA、右上の係数行列をB、左下の係数行列をCとし、これらの係数行列が前記数式(15)に代入される。
したがって、パラメータ決定部15は、制御器H’のH∞ノルムを最小化するように、すなわち、制御器H’の前記数式(12)における係数行列A,B,Cを前記数式(15)に代入したときに、当該数式(15)を満足するXが存在し、かつパラメータγが最小となるように、パラメータΦ%を決定する。
このように、パラメータΦ%を決定する際の演算処理を変形して線形行列不等式として記述することができれば、既存の計算アルゴリズムを適用することにより、パラメータの数値解を得ることができる。
尚、仮の制御器H’の前記数式(11)を制御器H’の前記数式(12)へ等価変換するためには、以下の変換行列Tが用いられる。
前記数式(12)のとおり、パラメータΦ^は常にCw#との積として記述されるため、前述のΦΦ^=Ipの制約は、ΦΦ^Cw#=Cw#に緩和することができる。さらに、新たな変数行列のパラメータをΦ%:=Φ^Cw#∈R
m1×nと定義すると、前記数式(12)は以下のようになる。
また、ΦΦ^Cw#=Cw#は、ΦΦ%=Cw#となる。前述のとおり、ΦΦ^=Ipの安定解は存在しないが、ΦΦ^Cw#=Cw#の安定解は存在する。
一方、H∞ノルムを最小化する条件を示す前記数式(15)の線形行列不等式は、シュールの補題より、以下の数式と等価である。
前記数式(17)を前記数式(18)に代入すると、当該数式(18)は以下の式で表される。
記述を簡単にするため、ブロック対称となる部分行列を*で表している。
制御器H’の前記数式(12)を変形した前記数式(17)を表す行列において、十字に区切られた左上の係数行列をA、右上の係数行列をB、左下の係数行列をCとする。これらの係数行列A,B,Cを、前記数式(15)を変形した前記数式(18)に代入すると、前記数式(19)が得られる。
したがって、パラメータ決定部15は、制御器H’のH∞ノルムを最小化するように、すなわち、前記数式(19)を満足するXが存在する条件のもとパラメータγが最小となるように、パラメータΦ%を決定することを目的とするが、前記数式(19)を導出するためには前記数式(16)を用いた等価変換の処理を行う必要がある。
ここで、前記数式(19)には、変数行列Xと変数行列のパラメータΦ%に関する双線形項が含まれるため線形行列不等式ではない。そこで、新たな変数行列をY:=Φ%X∈Rm1×nと定義すると、この変数行列Yを用いた前記数式(19)は、等価的に線形行列不等式とすることができる。同様に、前記数式:ΦΦ%=Cw#は、変数行列Yを用いると、ΦY=Cw#Xに修正される。
つまり、パラメータ決定部15は、制御器H’のH∞ノルムを最小化するように、すなわち、前記数式(19)を満足するXが存在する条件のもとパラメータγが最小となるように、前記数式(19)のΦ%XをYに置き換えて変数行列X,Yを求め、パラメータΦ%を決定する。前記数式(19)及び前記数式:ΦY=Cw#Xの線形行列不等式が成り立つとき、Φ%=YX-1となり、変換行列Y,XよりパラメータΦ%が求められる。
したがって、パラメータ決定部15は、制御器H’のH∞ノルムを最小化するパラメータΦ%を決定する際に、変数行列Yを用いた前記数式(19)と前記数式:ΦY=Cw#Xとを連立させた前記数式:Φ%=YX-1から、パラメータΦ%を得る。
これにより、パラメータΦ%が決定されるから、制御器H’に含まれる全てのパラメータである制御器パラメータ(Aw#,Bt#,Bp#,Cw#,Φ%)が決定される。
(遅延時間を補償、制御器Hを構成:ステップS706)
制御器構成部16は、ステップS701にて算出した入力側の遅延時間を補償する遅延器を構成し、当該遅延器と制御器H’とを直列に結合し、制御器Hを構成する(ステップS706)。これにより、制御器Hに含まれる全てのパラメータ(Aw#,Bt#,Bp#,Cw#,Φ%,Rd,Rc)が決定される。
ステップS701にて算出した遅延時間は、制御対象Gp1から分離した入力側の遅延時間及び出力側の遅延時間、並びに、目標システムGt2から分離した入力側の遅延時間及び出力側の遅延時間である。これらの遅延時間のうち、出力側の遅延時間は、制御対象Gp1及び目標システムGt2にて共通し相殺されるため、補償する必要がない。
このため、制御対象Gp1から分離した入力側の遅延時間、及び目標システムGt2から分離した入力側の遅延時間を補償する。制御対象Gp1から分離した入力側の遅延時間を補償する構成部により、図9に示した入力側遅延器Rp23が補償され、目標システムGt2から分離した入力側の遅延時間を補償する構成部により、図10に示した入力側遅延器Rt25が補償される。
図16は、制御器Hの構成例を示す図である。この制御器Hは、遅延器(第1の遅延器)6−1〜6−m2、遅延器(第2の遅延器)7−1〜7−m1、及び制御器H’を備えている。遅延器6−1〜6−m2の遅延時間をRd1,・・・,Rdm2とし、遅延器7−1〜7−m1の遅延時間をRc1,・・・,Rcm1とする。
制御器構成部16は、ステップS701にて目標システムGt2から分離した入力側の遅延時間のうち、最小のものをαとする。そして、制御器構成部16は、このαから、制御対象Gp1から分離した入力側の遅延時間をそれぞれ減算し、減算結果にさらに1サンプルの時間を減算した値をそれぞれ求め、これらの値を遅延器7−1〜7−m1の遅延時間Rc1,・・・,Rcm1に設定する。ここで、制御器構成部16は、遅延時間Rc1,・・・,Rcm1のいずれかが負値(β)である場合、この値が0となるように、負値の絶対値|β|の最大の値を全ての遅延時間Rc1,・・・,Rcm1に加算し、これらの加算結果の値を新たな遅延時間Rc1,・・・,Rcm1に設定する。
また、制御器構成部16は、目標システムGt2から分離した入力側の遅延時間からαをそれぞれ減算し、これらの減算結果の値を遅延器6−1〜6−m2の遅延時間Rd1,・・・,Rdm2に設定する。
そして、制御器構成部16は、遅延時間Rd1,・・・,Rdm2を設定した遅延器6−1,6−m2、及び遅延時間Rc1,・・・,Rcm1を設定した遅延器7−1〜7−m1を構成し、これらとステップS703〜ステップS705にて全てのパラメータが決定された制御器H’とを直列に結合し、制御器Hを構成する。
このように、制御器構成部16により、ステップS701にて分離した遅延時間を補償するための遅延器6−1〜6−m2,7−1〜7−m1にて用いる遅延時間が設定され、当該遅延器6−1〜6−m2,7−1〜7−m1と制御器H’とを直列に結合した制御器Hが構成される。
以上のように、本発明の実施形態による制御器設計装置10によれば、制御対象Gpを、直達項を持たない状態空間モデルで表現することを前提に、目標システムGt2及び逆システムHinv3から構成される制御器Hのパラメータを、制御器Hのゲインを指標にH∞ノルムを最小化する最適化問題として決定するようにした。
具体的には、遅延時間算出部11は、音響信号u1-1〜u1-m1,u2-1〜u2-m2,y1,y2に基づいて、全体システムGwの遅延時間を算出し、遅延時間が分離されたインパルス応答y1’,y2’を生成する。同定部12は、遅延時間が分離されたインパルス応答y1’,y2’に基づいて、制御対象Gp1から遅延時間を分離した制御対象Gp#24、及び目標システムGt2から遅延時間を分離した目標システムGt#26を同定する。
仮逆システム構成部13は、制御対象Gp#24の逆システムを、仮の逆システムH0として構成する。仮の逆システムH0には、仮逆システム構成部13によっては安定解が与えられないパラメータΦ^が含まれる。仮制御器構成部14は、目標システムGt#26と仮の逆システムH0とを直列に結合し、仮の制御器H’を構成する。仮の制御器H’には、仮制御器構成部14によっては安定解が与えられないパラメータΦ^が含まれる。
パラメータ決定部15は、仮の制御器H’を等価変換し、制御器H’のH∞ノルムを評価関数として、H∞ノルムが最小となるようにパラメータΦ%を決定する。制御器構成部16は、遅延時間算出部11により算出された入力側の遅延時間を補償する遅延器6−1〜6−m2,7−1〜7−m1を構成し、当該遅延器6−1〜6−m2,7−1〜7−m1と制御器H’とを直列に結合し、制御器Hを構成する。これにより、制御器Hに含まれる全てのパラメータが決定される。
ここで、ΦΦ^=Ipには安定解が存在せず、ΦΦ^Cw#=Cw#には安定解が存在することから、パラメータΦ%は、前記数式(12)においてΦ^Cw#=Φ%とした前記数式(17)に基づき、制御器H’のH∞ノルムが最小となるように決定される。
これにより、逆システムHinv3の設計精度を犠牲にすることなく、制御器Hのゲインを小さくすることができる。つまり、制御器Hのゲインは陽に抑制されるから、従来技術に比べ、外乱等の変化に対する頑健性の高い制御器Hを設計することが可能となる。
〔実験結果〕
次に、本発明の実施形態による制御器設計装置10の実験結果について説明する。図24は、実験結果を得るための二次音源及び仮想音源等の配置を説明する図であり、図25は、実験結果を説明する図である。
図25の実験結果を得るために、再生音場の測定は音響無響室で行った。図24を参照して、中央に、人間の耳112−1,112−2に相当するHATS(Head and Torso Simulator、測定用ダミーヘッド)を配置し、その正面に、二次音源であるスピーカ104−1〜104−5からなるラインスピーカを配置し、さらに、その側方及び後方に、仮想音源であるスピーカ106−1〜106−5を配置した。HATSの立ち位置が受聴点、すなわちその耳112−1,112−2の位置が制御点である。HATS、スピーカ104−1〜104−5,106−1〜106−5の距離及び角度は、図24に示すとおりである。
二次音源であるスピーカ104−1〜104−5のラインスピーカから耳112−1,112−2の位置の制御点までのシステムが、図5に示した制御対象Gp1に対応する。また、仮想音源であるスピーカ106−1〜106−5から耳112−1,112−2の位置の制御点までのシステムが、図5に示した目標システムGt2に対応する。
測定信号には、信号長217サンプル、量子化ビット数24ビット、サンプリング周波数48kHzのLog−TSP(Logarithmic−Time Stretched Pulse)信号を用いた。この測定信号を、二次音源及び仮想音源であるスピーカのそれぞれに印加し、HATSの両方の耳112−1,112−2の位置にて収音された応答を得て、その応答に基づいて制御器Hを設計することにより、図25の実験結果を得た。
図25には、実験結果として、本発明の実施形態における制御器HのH∞ノルム、及び、一般技術における制御器のH∞ノルムを示している。ここで、一般技術の実験結果は、ΦΦ^=IpのΦ^として、一般的なムーアペンローズ(Moore Penrose)の擬似逆行列を用いた場合を示している。図25の(1)は、スピーカ106−1〜106−5のうちスピーカ106−1のみを仮想音源とした場合を示し、(2)〜(5)は、それぞれスピーカ106−2〜106−5のみを仮想音源とした場合を示す。
図25の(1)に示す実験結果から、本発明の実施形態のH∞ノルムは3.46であり、一般技術のH∞ノルムは71.99であり、本発明の実施形態の方が一般技術よりもH∞ノルムが小さいことがわかる。(2)〜(5)についても同様である。
したがって、本発明の実施形態では、制御器Hのゲインを小さくすることができ、制御器Hのゲインは陽に抑制されるから、外乱等の変化に対する頑健性の高い制御器Hを設計することが可能となる。
〔制御器Hの構成及び処理〕
次に、図1に示した制御器設計装置10により設計された制御器Hの構成及び処理について説明する。制御器Hは、図2に示したとおり、目標システムGt2及び逆システムHinv3により構成され、図16に示したとおり、遅延器6−1〜6−m2,7−1〜7−m1及び制御器H’を備えている。
遅延器6−1〜6−m2は、音響信号u2-1〜u2-m2を入力し、音響信号u2-1〜u2-m2を、予め設定された遅延時間Rd1,・・・,Rdm2の時間分遅延させ、遅延後の音響信号u2-1〜u2-m2を制御器H’に出力する。遅延時間Rd1,・・・,Rdm2は、ステップS701及びステップS706により、予め設定される。
図15は、変換処理後の制御器H’のブロック線図であり、前記数式(17)をブロック線図で表したものである。この制御器H‘は、直達項を持たない状態空間モデルで表され、制御器パラメータは、係数行列(−Aw#Bp#Φ%+Aw#),Bt#,Φ%からなる。(−Aw#Bp#Φ%+Aw#)はシステムの係数行列、Bt#は入力側の係数行列、Φ%は出力側の係数行列を示す。
制御器H’は、乗算器(第1の乗算器)30、加算器31、遅延器(第3の遅延器)32、乗算器(第2の乗算器)33及び乗算器(第3の乗算器)34を備えている。乗算器30は、遅延器6−1〜6−m2から遅延後の音響信号u2-1〜u2-m2(u2’)を入力し、音響信号u2’に入力側の係数行列Bt#を乗算し、乗算結果(積)を加算器31に出力する。
加算器31は、乗算器30から乗算結果を入力すると共に、乗算器33から乗算結果を入力し、両乗算結果を加算し、加算結果を遅延器32に出力する。遅延器32は、加算器31から加算結果を入力し、1サンプル時間分遅延させ、遅延後の加算結果を乗算器33及び乗算器34に出力する。遅延器32が出力する遅延後の加算結果は、入力した加算結果のサンプル時間に対して1サンプル時間前の加算結果である。
乗算器33は、遅延器32から加算結果を入力し、加算結果にシステムの係数行列(−Aw#Bp#Φ%+Aw#)を乗算し、乗算結果を加算器31に出力する。乗算器34は、遅延器32から加算結果を入力し、加算結果に出力側の係数行列Φ%を乗算し、乗算結果を制御器出力音響信号として遅延器7−1〜7−m1に出力する。
遅延器7−1〜7−m1は、制御器H’から制御器出力音響信号をそれぞれ入力し、当該制御器出力音響信号を、予め設定された遅延時間Rc1,・・・,Rcm1の時間分遅延させ、遅延後の音響信号u1-1〜u1-m1をスピーカ104−1〜104−m1に出力する。遅延時間Rc1,・・・,Rcm1は、ステップS701及びステップS706により、予め設定される。
以上のように、本発明の実施形態による制御器Hによれば、遅延器6−1〜6−m2は、音響信号u2-1〜u2-m2を入力し、音響信号u2-1〜u2-m2に対し、制御器設計装置10により予め設定されたパラメータRdの遅延時間Rd1,・・・,Rdm2の時間分遅延させる。制御器H’は、遅延時間Rd1,・・・,Rdm2の時間分遅延させた音響信号u2-1〜u2-m2を入力し、制御器設計装置10により予め設定されたパラメータ(Aw#,Bt#,Bp#,Cw#,Φ%)を用いて、直達項を持たない状態空間モデルの演算を行い、m1個の制御器出力音響信号を出力する。
遅延器7−1〜7−m1は、制御器H’により演算されたm1個の制御器出力音響信号を入力し、m1個の制御器出力音響信号に対し、制御器設計装置10により予め設定されたパラメータRcの遅延時間Rc1,・・・,Rcm1の時間分遅延させる。このようにして生成された音響信号u1-1〜u1-m1は、制御対象Gp1のスピーカ104−1〜104−m1へ出力される。
これにより、制御器Hのパラメータは、逆システムHinv3の設計精度を犠牲にすることなく、ゲインが小さくなるように設定された値であるから、制御器Hのゲインは陽に抑制され、従来技術に比べ、外乱等の変化に対して高い頑健性を得ることが可能となる。
尚、本発明の実施形態による制御器Hのハードウェア構成は、制御器設計装置10と同様に、通常のコンピュータを使用することができる。制御器Hは、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインタフェース等を備えたコンピュータによって構成される。制御器Hに備えた遅延器6−1〜6−m2,7−1〜7−m1及び制御器H’の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。これらのプログラムは、前記記憶媒体に格納されており、CPUに読み出されて実行される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。
以上、実施形態を挙げて本発明を説明したが、本発明は前記実施形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。前記実施形態では、音響システムを例に挙げて説明したが、音響システムは一例であり、本発明は、音響システム以外の制御システムにも適用がある。例えば、複数の制御点を温度制御したり、湿度制御したりする制御システム等にも適用がある。