(57)【要約】【課題】制御対象システムに配置される制御点に対し、優先順位に応じた精度の信号を提示可能な逆システム設計方法、逆システム設計装置及びプログラムを提供する。【解決手段】逆システム設計装置１は、所望の近似精度の優先順位に対応した制御点の集合毎に、打ち切り特異値分解により、逆行列Ｇk-1に対する切り詰め後の逆行列Ｇ#k-1における出力側の基底Ｖ#k、特異値行列Σ#k-1及び入力側の基底Ｕ#kHを計算する。そして、制御点の集合における切り詰め後の行列を合成し、全体の逆行列Ｇ-1を形成する。具体的には、初期の制御点の集合から処理を開始し、再帰的に制御点の集合を追加する。制御点の集合毎の処理において、近似精度の優先順位が反映された閾値を変更することで、所望の近似精度を得るための逆行列Ｇ#k-1を形成する。反復する再帰処理が終了した後、逆行列Ｇ-1を形成する。【選択図】図８
2015060007.tif 000002
【特許請求の範囲】
【請求項１】
所定数の制御点と前記所定数の制御点へ信号をそれぞれ提示する所定数の提示点とにより構成される制御対象システムの伝達関数行列を形成し、前記伝達関数行列の逆行列を形成する逆システム設計装置による逆システム設計方法において、
前記逆システム設計装置が、記憶部、伝達関数行列形成部、特異値分解部、逆行列特異値計算部、閾値処理／打ち切り数決定部、切り詰め部、追加制御点決定部及び逆行列形成部を備え、
前記記憶部には、前記制御点毎に前記所定数の提示点との間の伝達関数が設定された伝達関数テーブル、及び、前記所定数の制御点に含まれる単数の制御点及び複数の制御点毎に閾値が設定された閾値テーブルが格納されている場合に、
前記伝達関数行列形成部が、前記記憶部に格納された伝達関数テーブルから、前記所定数の提示点と同数の制御点についての伝達関数を読み出し、前記同数の制御点を初期の制御点として、前記初期の制御点と前記所定数の提示点との間の正方の伝達関数行列を形成する第１のステップと、
前記特異値分解部が、特異値分解により、前記伝達関数行列における出力側の基底、特異値行列及び入力側の基底を生成する第２のステップと、
前記逆行列特異値計算部が、前記伝達関数行列における出力側の基底、特異値行列及び入力側の基底に基づいて、前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を生成する第３のステップと、
前記閾値処理／打ち切り数決定部が、前記記憶部に格納された閾値テーブルから、前記初期の制御点の集合についての閾値を読み出し、前記伝達関数行列における特異値行列を構成するそれぞれの特異値に対する閾値処理により、打ち切り数を決定する第４のステップと、
前記切り詰め部が、前記逆行列における出力側の基底、特異値行列及び入力側の基底に対し、前記打ち切り数に応じてそれぞれ切り詰める打ち切り処理を行い、切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記記憶部に格納する第５のステップと、
前記追加制御点決定部が、前記所定数の制御点に含まれる前記形成した伝達関数行列の対象になっていない制御点のうち、前記打ち切り数と同数の制御点を追加制御点として決定する第６のステップと、
前記伝達関数行列形成部が、前記記憶部に格納された伝達関数テーブルから、前記追加制御点についての伝達関数を読み出し、前記追加制御点と前記所定数の提示点との間の伝達関数行列を形成する第７のステップと、を有し、
前記追加制御点について前記第２〜第７のステップを繰り返すことで、追加制御点を増やし、
前記追加制御点毎に、前記第５のステップにて、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記記憶部に格納し、
さらに、前記第４のステップにて、前記閾値処理により打ち切りがなかったときに、
前記切り詰め部が、直前の第３のステップにて生成された前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底として前記記憶部に格納する第８のステップと、
前記逆行列形成部が、前記記憶部から、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を読み出し、前記出力側の基底、特異値行列及び入力側の基底をそれぞれ合成し、全体の逆行列を形成する第９のステップと、を有することを特徴とする逆システム設計方法。
【請求項２】
請求項１に記載の逆システム設計方法において、
前記第４のステップは、
前記伝達関数行列における特異値行列を構成するそれぞれの特異値と前記閾値とを比較し、前記閾値よりも小さい特異値の数を打ち切り数として決定する、ことを特徴とする逆システム設計方法。
【請求項３】
請求項１に記載の逆システム設計方法において、
前記第４のステップは、
前記伝達関数行列における特異値行列を構成する特異値のうちの最大の特異値を特定し、前記最大の特異値を前記特異値行列を構成するそれぞれの特異値で除算し、前記除算結果のそれぞれと前記閾値とを比較し、前記閾値よりも大きい前記除算結果の数を打ち切り数として決定する、ことを特徴とする逆システム設計方法。
【請求項４】
請求項１から３までのいずれか一項に記載の逆システム設計方法において、
前記記憶部に格納された閾値テーブルには、前記制御点へ信号が提示される際の前記信号の精度に応じた制御点の集合毎に、前記信号の精度が反映された閾値が設定されている、ことを特徴とする逆システム設計方法。
【請求項５】
請求項１から４までのいずれか一項に記載の逆システム設計方法において、
前記制御対象システムを音響システムとし、前記提示点をスピーカが配置された箇所とし、前記制御点を聴取位置またはマイクロホンが配置された箇所とする、ことを特徴とする逆システム設計方法。
【請求項６】
所定数の制御点と前記所定数の制御点へ信号をそれぞれ提示する所定数の提示点とにより構成される制御対象システムの伝達関数行列を形成し、前記伝達関数行列の逆行列を形成する逆システム設計装置において、
前記記憶部には、前記制御点毎に前記所定数の提示点との間の伝達関数が設定された伝達関数テーブル、及び、前記所定数の制御点に含まれる単数または複数の制御点の集合毎に閾値が設定された閾値テーブルが格納されており、
前記記憶部に格納された伝達関数テーブルから、前記所定数の提示点と同数の制御点についての伝達関数を読み出し、前記同数の制御点を初期の制御点として、前記初期の制御点と前記所定数の提示点との間の正方の伝達関数行列を形成する第１の伝達関数行列形成部と、
伝達関数行列の特異値分解により、前記伝達関数行列における出力側の基底、特異値行列及び入力側の基底を生成する特異値分解部と、
前記特異値分解部により生成された伝達関数行列における出力側の基底、特異値行列及び入力側の基底に基づいて、前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を生成する逆行列特異値計算部と、
前記記憶部に格納された閾値テーブルから、前記初期の制御点または追加制御点の集合についての閾値を読み出し、前記特異値分解部により生成された伝達関数行列における特異値行列を構成するそれぞれの特異値に対する閾値処理を行い、前記閾値処理により所定の条件を満たす場合、打ち切り数を決定し、前記閾値処理により所定の条件を満たさない場合、打ち切りしないことを決定する閾値処理／打ち切り数決定部と、
前記閾値処理／打ち切り数決定部により打ち切り数が決定された場合、前記逆行列特異値計算部により生成された逆行列における出力側の基底、特異値行列及び入力側の基底に対し、前記打ち切り数に応じてそれぞれ切り詰める打ち切り処理を行い、切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を形成し、前記記憶部に格納し、
前記閾値処理／打ち切り数決定部により打ち切りしないことが決定された場合、前記逆行列特異値計算部により生成された前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底として前記記憶部に格納する切り詰め部と、
前記閾値処理／打ち切り数決定部により打ち切り数が決定された場合、前記所定数の制御点に含まれる、前記伝達関数行列の対象になっていない制御点の集合を追加制御点として決定する追加制御点決定部と、
前記記憶部に格納された伝達関数テーブルから、前記追加制御点決定部により決定された追加制御点の伝達関数を読み出し、前記追加制御点と前記所定数の提示点との間の伝達関数行列を形成する第２の伝達関数行列形成部と、
前記記憶部に格納された切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底に基づいて、逆行列を形成する逆行列形成部と、を備え、
前記閾値処理／打ち切り数決定部により打ち切り数が決定された場合、
前記追加制御点決定部において、前記追加制御点を決定し、前記第２の伝達関数行列形成部において、前記追加制御点と前記所定数の提示点との間の伝達関数行列を形成する処理、前記特異値分解部において、前記第２の伝達関数行列形成部により形成された伝達関数行列における出力側の基底、特異値行列及び入力側の基底を生成する処理、前記逆行列特異値計算部において、前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を生成する処理、及び、前記切り詰め部において、前記打ち切り数に応じた打ち切り処理を行い、切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を形成して前記記憶部に格納する処理を繰り返し、
前記閾値処理／打ち切り数決定部により打ち切りしないことが決定された場合、
前記逆行列形成部は、
前記記憶部から、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を読み出し、前記出力側の基底、特異値行列及び入力側の基底をそれぞれ合成し、全体の逆行列を形成する、ことを特徴とする逆システム設計装置。
【請求項７】
請求項１から５までのいずれか一項に記載の逆システム設計方法を、コンピュータに実行させることを特徴とする逆システム設計プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響システム等の制御システムを構築する技術に関し、特に、制御対象となるシステムとは逆の特性を有する逆システムを設計する方法、装置及びプログラムに関する。
【背景技術】
【０００２】
従来、音響システム等の制御システムを構築するために、逆システムを用いることが知られている。逆システムとは、制御対象となるシステムの逆の特性を有するシステムである。所定の目的に応じた逆システムを適切に設計することにより、所望の制御システムを構築することができる。
【０００３】
〔逆システム〕
図１３及び図１４は、逆システムを説明する概念図である。図１３及び図１４において、システム１００は、信号Ｘinを入力して信号Ｘoutを出力し、システム１０１は、信号Ｙinを入力して信号Ｙoutを出力するものとし、システム１０１を制御対象となるシステム（制御対象システム）Ｂとする。
【０００４】
図１３を参照して、制御対象システムＢであるシステム１０１は、システム１００により出力される信号Ｘoutを信号Ｙinとして入力する。このようなシステム１００，１０１において、システム１０１により出力される信号Ｙoutを、システム１００に入力する信号Ｘinに一致または近似させる場合、システム１００は、制御対象システムＢであるシステム１０１の逆システムＡとなる。
【０００５】
また、図１４を参照して、システム１００は、制御対象システムＢであるシステム１０１により出力される信号Ｙoutを信号Ｘinとして入力する。このようなシステム１００，１０１において、システム１００により出力される信号Ｘoutを、システム１０１に入力する信号Ｙinに一致または近似させる場合も、システム１００は、制御対象システムＢであるシステム１０１の逆システムＡとなる。
【０００６】
図１５は、多入力多出力の逆システムを説明する概念図である。図１５は、図１３に示した１入力１出力のシステム１００，１０１を多入力多出力のシステムに拡張したものである。システム１０２は、信号Ｘin1，Ｘin2，・・・，ＸinNを入力して信号Ｘout1，Ｘout2，・・・，ＸoutMを出力し、システム１０３は、信号Ｙin1，Ｙin2，・・・，ＹinMを入力して信号Ｙout1，Ｙout2，・・・，ＹoutNを出力するものとし、システム１０３を制御対象システムＢとする。
【０００７】
図１５に示すように、制御対象システムＢであるシステム１０３は、システム１０２により出力される信号Ｘout1，Ｘout2，・・・，ＸoutMを信号Ｙin1，Ｙin2，・・・，ＹinMとしてそれぞれ入力する。このようなシステム１０２，１０３において、システム１０３により出力される信号Ｙout1，Ｙout2，・・・，ＹoutNを、システム１０２に入力する信号Ｘin1，Ｘin2，・・・，ＸinNに一致または近似させる場合、システム１０２は、制御対象システムＢであるシステム１０３の逆システムＡとなる。
【０００８】
図１３において、制御対象システムＢであるシステム１０１により出力される信号Ｙoutを、逆システムであるシステム１００に入力される信号Ｘinに一致させることが、逆システムを設計する目的となる。この場合の出力を観察する地点を制御点という。図１３において、制御対象システムＢであるシステム１０１により出力される信号Ｙoutを観察する地点が制御点となる。同様に、図１５では、制御対象システムＢであるシステム１０３により出力される信号Ｙout1，Ｙout2，・・・，ＹoutNを観察する地点が制御点となる。ここで、図１３に示した制御対象システムＢであるシステム１０１の入力点、すなわち制御点へ信号Ｙinを提示する地点を提示点とする。図１５に示した制御対象システムＢであるシステム１０３の各入力点、すなわち各制御点へ信号Ｙin1，Ｙin2，・・・，ＹinMを提示する地点を提示点とする。
【０００９】
〔音響システム〕
次に、音響システムの例を挙げて、制御対象システム及び逆システムについて説明する。音響システムでは、音場再現または室内残響除去等の処理のために、逆システムが用いられる。制御対象システムは、音場再現が行われる音場または残響が除去される室内の音場である。
【００１０】
図１６は、音響システムにおいて、聴取音場を制御対象システムとした場合の制御対象システム及び逆システムを説明する概念図であり、図１５に示した多入力多出力のシステム１０２，１０３に対応している。図１６に示すように、音場再現の処理を行うための制御システムを構築する場合には、聴取音場が制御対象システムＢとなる。制御対象システムＢであるシステム１０３は聴取音場であり、５台のスピーカ１０４−１〜１０４−５及び２本のマイクロホン１０５−１，１０５−２が配置されている。制御したい聴取位置（マイクロホン１０５−１，１０５−２の位置）が制御点となる。
【００１１】
聴取音場内に配置されたスピーカ１０４−１〜１０４−５から再生される音響信号により制御が行われるとすると、これらのスピーカ１０４−１〜１０４−５へ入力される音響信号が制御対象システムＢへの入力信号となる。
【００１２】
音場再現では、スピーカ１０４−１〜１０４−５を二次音源といい、制御対象システムＢであるシステム１０３は、各二次音源から制御点への音響伝搬を示す指標である伝達関数によって近似的にモデル化される。この場合、制御対象システムＢは、制御点×二次音源の伝達関数のマトリクス（伝達関数行列）として表現される。図１６の例では、制御点の数（マイクロホン１０５−１，１０５−２の数）は２であり、二次音源であるスピーカ１０４−１〜１０４−５の数は５であるから、制御対象システムＢは、２×５＝１０の要素からなる行数２及び列数５の伝達関数行列として表現される。
【００１３】
これらの制御点に対して所望の音響信号を提示する場合、逆システムＡであるシステム１０２を適切に設計した後に、逆システムＡに所望の音響信号を入力すればよい。制御対象システムＢが伝達関数行列としてモデル化される場合、逆システムＡは、この伝達関数行列の逆行列を用いて設計される。一般に、制御対象システムＢが行列としてモデル化される場合、逆システムＡは、その行列の逆行列を用いて設計される。特に、その要素が実数の場合、逆行列は数値計算により求めることができる。
【００１４】
この逆システムＡを一意に決定するためには、制御対象システムＢのモデルとなる行列が正方、すなわち制御対象システムＢにおいて入力信号の数と出力信号の数が同じである必要がある。図１６に示した音響システムの場合、二次音源と制御点とが同数である必要がある。言い換えれば、二次音源の数が決まっている場合、それと同数の制御点における音響信号しか制御することができないことを意味している。
【００１５】
制御対象システムＢにおいて入力信号の数よりも出力信号の数が多い場合、一般には解なしとなる。このような制御対象システムに対して近似的に逆システムを設計するには、最小二乗法等が用いられる。このようなシステムを、優決定系という。
【００１６】
一方、図１６に示したように、制御対象システムＢにおいて出力信号の数よりも入力信号の数が多い場合、解は一意とならない。このような制御対象システムに対して逆システムを設計するには、通常、最小二乗ノルム解等が用いられる。このようなシステムを、劣決定系という。
【００１７】
このような優決定系または劣決定系にて得られる逆行列は、疑似逆行列と呼ばれる。例えば、音響信号を局所再生するために、疑似逆行列を計算することで伝達関数行列の逆行列を得る局所再生装置が提案されている（特許文献１を参照）。また、複数のスピーカに対応して設定した聴取領域の制御を行う際に、目的音と入力信号との間の関係を行列で表わし、疑似逆行列を計算する音響信号処理装置が提案されている（特許文献２を参照）。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特開２０１３−１１０４９５号公報
【特許文献２】特開２０１３−１０２３８９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】
前述のとおり、制御対象システムにおいて入力信号の数よりも出力信号の数が多い優決定系では、制御対象システムの伝達関数行列の逆行列を計算するために、最小二乗法等が用いられる。従来の最小二乗法は、全ての制御点における誤差の二乗和が最小となる近似解を与えるものである。これは、制御点全体（制御範囲全体）について、誤差がほぼ均等に分布し、近似精度が同じになることを意味する。
【００２０】
しかしながら、制御点全体に対して同じ近似精度の信号を提示する逆システムを設計するのではなく、制御点毎に異なる近似精度の信号を提示可能な逆システムを設計することが所望されていた。すなわち、制御点毎に優先順位を設け、優先順位の高い制御点に対して近似精度の高い信号を提示し、優先順位の低い制御点に対して近似精度の低い信号を提示可能な逆システムを設計することが所望されていた。従来の最小二乗法では、優先順位を考慮した逆行列を計算することができないことから、結果として、制御点毎の優先順位を考慮した逆システムを設計することができないという問題があった。
【００２１】
例えば、図１６に示した音響システムにおける音場再現の制御対象システムＢにおいて、部屋の中央付近の制御点では、音響信号をできるだけそのままに、すなわち精度高く提示し、それ以外のできる限り広い範囲の制御点では、音響信号をほどほどの精度で提示するための逆システムを設計したいという要望がある。しかしながら、従来の最小二乗法を用いて逆行列を計算すると、全ての制御点に対して同じ近似精度で音響信号を提示することになるから、前述の要望を満たす逆システムを設計することができない。
【００２２】
そこで、本発明は前記課題を解決するためになされたものであり、その目的は、制御対象システム内の制御点に対し、優先順位に応じた精度の信号を提示可能な逆システム設計方法、逆システム設計装置及びプログラムを提供することにある。
【課題を解決するための手段】
【００２３】
前記目的を達成するために、請求項１の逆システム設計方法は、所定数の制御点と前記所定数の制御点へ信号をそれぞれ提示する所定数の提示点とにより構成される制御対象システムの伝達関数行列を形成し、前記伝達関数行列の逆行列を形成する逆システム設計装置による逆システム設計方法において、前記逆システム設計装置が、記憶部、伝達関数行列形成部、特異値分解部、逆行列特異値計算部、閾値処理／打ち切り数決定部、切り詰め部、追加制御点決定部及び逆行列形成部を備え、前記記憶部には、前記制御点毎に前記所定数の提示点との間の伝達関数が設定された伝達関数テーブル、及び、前記所定数の制御点に含まれる単数の制御点及び複数の制御点毎に閾値が設定された閾値テーブルが格納されている場合に、前記伝達関数行列形成部が、前記記憶部に格納された伝達関数テーブルから、前記所定数の提示点と同数の制御点についての伝達関数を読み出し、前記同数の制御点を初期の制御点として、前記初期の制御点と前記所定数の提示点との間の正方の伝達関数行列を形成する第１のステップと、前記特異値分解部が、特異値分解により、前記伝達関数行列における出力側の基底、特異値行列及び入力側の基底を生成する第２のステップと、前記逆行列特異値計算部が、前記伝達関数行列における出力側の基底、特異値行列及び入力側の基底に基づいて、前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を生成する第３のステップと、前記閾値処理／打ち切り数決定部が、前記記憶部に格納された閾値テーブルから、前記初期の制御点の集合についての閾値を読み出し、前記伝達関数行列における特異値行列を構成するそれぞれの特異値に対する閾値処理により、打ち切り数を決定する第４のステップと、前記切り詰め部が、前記逆行列における出力側の基底、特異値行列及び入力側の基底に対し、前記打ち切り数に応じてそれぞれ切り詰める打ち切り処理を行い、切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記記憶部に格納する第５のステップと、前記追加制御点決定部が、前記所定数の制御点に含まれる前記形成した伝達関数行列の対象になっていない制御点のうち、前記打ち切り数と同数の制御点を追加制御点として決定する第６のステップと、前記伝達関数行列形成部が、前記記憶部に格納された伝達関数テーブルから、前記追加制御点についての伝達関数を読み出し、前記追加制御点と前記所定数の提示点との間の伝達関数行列を形成する第７のステップと、を有し、前記追加制御点について前記第２〜第７のステップを繰り返すことで、追加制御点を増やし、前記追加制御点毎に、前記第５のステップにて、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記記憶部に格納し、さらに、前記第４のステップにて、前記閾値処理により打ち切りがなかったときに、前記切り詰め部が、直前の第３のステップにて生成された前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底として前記記憶部に格納する第８のステップと、前記逆行列形成部が、前記記憶部から、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を読み出し、前記出力側の基底、特異値行列及び入力側の基底をそれぞれ合成し、全体の逆行列を形成する第９のステップと、を有することを特徴とする。
【００２４】
また、請求項２の逆システム設計方法は、請求項１に記載の逆システム設計方法において、前記第４のステップが、前記伝達関数行列における特異値行列を構成するそれぞれの特異値と前記閾値とを比較し、前記閾値よりも小さい特異値の数を打ち切り数として決定する、ことを特徴とする。
【００２５】
また、請求項３の逆システム設計方法は、請求項１に記載の逆システム設計方法において、前記第４のステップが、前記伝達関数行列における特異値行列を構成する特異値のうちの最大の特異値を特定し、前記最大の特異値を前記特異値行列を構成するそれぞれの特異値で除算し、前記除算結果のそれぞれと前記閾値とを比較し、前記閾値よりも大きい前記除算結果の数を打ち切り数として決定する、ことを特徴とする。
【００２６】
また、請求項４の逆システム設計方法は、請求項１から３までのいずれか一項に記載の逆システム設計方法において、前記記憶部に格納された閾値テーブルには、前記制御点へ信号が提示される際の前記信号の精度に応じた制御点の集合毎に、前記信号の精度が反映された閾値が設定されている、ことを特徴とする。
【００２７】
また、請求項５の逆システム設計方法は、請求項１から４までのいずれか一項に記載の逆システム設計方法において、前記制御対象システムを音響システムとし、前記提示点をスピーカが配置された箇所とし、前記制御点を聴取位置またはマイクロホンが配置された箇所とする、ことを特徴とする。
【００２８】
さらに、請求項６の逆システム設計装置は、所定数の制御点と前記所定数の制御点へ信号をそれぞれ提示する所定数の提示点とにより構成される制御対象システムの伝達関数行列を形成し、前記伝達関数行列の逆行列を形成する逆システム設計装置において、前記記憶部には、前記制御点毎に前記所定数の提示点との間の伝達関数が設定された伝達関数テーブル、及び、前記所定数の制御点に含まれる単数または複数の制御点の集合毎に閾値が設定された閾値テーブルが格納されており、前記記憶部に格納された伝達関数テーブルから、前記所定数の提示点と同数の制御点についての伝達関数を読み出し、前記同数の制御点を初期の制御点として、前記初期の制御点と前記所定数の提示点との間の正方の伝達関数行列を形成する第１の伝達関数行列形成部と、伝達関数行列の特異値分解により、前記伝達関数行列における出力側の基底、特異値行列及び入力側の基底を生成する特異値分解部と、前記特異値分解部により生成された伝達関数行列における出力側の基底、特異値行列及び入力側の基底に基づいて、前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を生成する逆行列特異値計算部と、前記記憶部に格納された閾値テーブルから、前記初期の制御点または追加制御点の集合についての閾値を読み出し、前記特異値分解部により生成された伝達関数行列における特異値行列を構成するそれぞれの特異値に対する閾値処理を行い、前記閾値処理により所定の条件を満たす場合、打ち切り数を決定し、前記閾値処理により所定の条件を満たさない場合、打ち切りしないことを決定する閾値処理／打ち切り数決定部と、前記閾値処理／打ち切り数決定部により打ち切り数が決定された場合、前記逆行列特異値計算部により生成された逆行列における出力側の基底、特異値行列及び入力側の基底に対し、前記打ち切り数に応じてそれぞれ切り詰める打ち切り処理を行い、切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を形成し、前記記憶部に格納し、前記閾値処理／打ち切り数決定部により打ち切りしないことが決定された場合、前記逆行列特異値計算部により生成された前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底として前記記憶部に格納する切り詰め部と、前記閾値処理／打ち切り数決定部により打ち切り数が決定された場合、前記所定数の制御点に含まれる、前記伝達関数行列の対象になっていない制御点の集合を追加制御点として決定する追加制御点決定部と、前記記憶部に格納された伝達関数テーブルから、前記追加制御点決定部により決定された追加制御点の伝達関数を読み出し、前記追加制御点と前記所定数の提示点との間の伝達関数行列を形成する第２の伝達関数行列形成部と、前記記憶部に格納された切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底に基づいて、逆行列を形成する逆行列形成部と、を備え、前記閾値処理／打ち切り数決定部により打ち切り数が決定された場合、前記追加制御点決定部において、前記追加制御点を決定し、前記第２の伝達関数行列形成部において、前記追加制御点と前記所定数の提示点との間の伝達関数行列を形成する処理、前記特異値分解部において、前記第２の伝達関数行列形成部により形成された伝達関数行列における出力側の基底、特異値行列及び入力側の基底を生成する処理、前記逆行列特異値計算部において、前記伝達関数行列の逆行列における出力側の基底、特異値行列及び入力側の基底を生成する処理、及び、前記切り詰め部において、前記打ち切り数に応じた打ち切り処理を行い、切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を形成して前記記憶部に格納する処理を繰り返し、前記閾値処理／打ち切り数決定部により打ち切りしないことが決定された場合、前記逆行列形成部が、前記記憶部から、前記切り詰め後の逆行列における出力側の基底、特異値行列及び入力側の基底を読み出し、前記出力側の基底、特異値行列及び入力側の基底をそれぞれ合成し、全体の逆行列を形成する、ことを特徴とする。
【００２９】
さらに、請求項７の逆システム設計プログラムは、請求項１から５までのいずれか一項に記載の逆システム設計方法を、コンピュータに実行させることを特徴とする。
【発明の効果】
【００３０】
以上のように、本発明によれば、制御対象システム内の制御点に対し、優先順位に応じた精度の信号を提示可能な逆システムを設計することができる。
【図面の簡単な説明】
【００３１】
【図１】本発明の実施形態による逆システム設計装置のハードウェア構成を示す概略図である。
【図２】制御対象システムを説明する概念図である。
【図３】記憶装置に格納されたプログラム等を示す図である。
【図４】伝達関数テーブルを説明する図である。
【図５】閾値テーブルを説明する図である。
【図６】切り詰め後データを説明する図である。
【図７】本発明の実施形態による逆システム設計装置における制御部の機能構成を示すブロック図である。
【図８】制御部の逆行列形成処理を示すフローチャートである。
【図９】閾値処理／打ち切り数決定部の処理（ステップＳ８０４）を説明する図である。
【図１０】切り詰め部による逆行列の打ち切り処理（ステップＳ８０６）を説明する図である。
【図１１】逆行列形成処理の具体例を説明する図である。
【図１２】逆行列形成処理の具体例を説明する図である。
【図１３】逆システムを説明する概念図である。
【図１４】逆システムを説明する概念図である。
【図１５】多入力多出力の逆システムを説明する概念図である。
【図１６】音響システムにおいて、聴取音場を制御対象システムとした場合の制御対象システム及び逆システムを説明する概念図である。
【発明を実施するための形態】
【００３２】
以下、本発明を実施するための形態について図面を用いて詳細に説明する。
一般に、制御対象システムの伝達関数行列の逆行列を計算する際には、伝達関数行列が正方の場合（制御対象システムにおいて入力信号の数と出力信号の数が同じ場合）、または非正方の場合（制御対象システムにおいて入力信号の数よりも出力信号の数が多い優決定系の場合または出力信号の数よりも入力信号の数が多い劣決定系の場合）のいずれにおいても、逆システムの安定性を高めるための処理が必要となる。例えば音響システムの場合には、周波数領域の信号を用いて逆システムを設計し、周波数領域の逆システムを時間領域に変換し、時間領域の逆システムにおける設計結果をフィルタとして実装することが多い。
【００３３】
本発明では、逆システムの安定性を高めるための手法として、打ち切り特異値分解法を用いる。打ち切り特異値分解法は、制御対象システムの伝達関数行列の逆行列を計算する際に、伝達関数行列に対して特異値分解を行い、その入出力側基底及び特異値行列を用いて逆行列の特異値分解における入出力基底及び特異値行列を求める。そして、導出した伝達関数行列の特異値のうち値の小さい特異値に対応する逆行列の特異値を０に置き換えることで特異値を打ち切る手法である。これにより、逆行列の振幅を抑えて安定化させることができる。
【００３４】
また、本発明は、広い制御範囲（数の多い制御点）を有する制御対象システム、すなわち制御対象システムにおいて入力信号の数よりも出力信号の数が多い優決定系を前提とし、制御対象システムの伝達関数行列が正方行列から優決定系の行列（列数よりも行数が大きい行列）へと変形するように、制御対象システムの出力信号（制御点）を再帰的に増やすことにより、制御範囲を広げることを特徴とする。
【００３５】
図１６に示した音響システムの例では、制御点となる聴取位置の数を再帰的に増やすことにより、広い制御範囲で所望の音響信号を制御点へ提示する。この場合、最小二乗法により誤差の二乗が最小となる解を与えるのではなく、増加する制御点に対して優先順位を設け、優先順位の高い制御点では精度の高い音響信号を提示し、優先順位の低い制御点では精度をある程度犠牲にした音響信号を提示するように、制御点を増加する。
【００３６】
このように、本発明では、制御対象システムについて近似精度の異なる制御点を再帰的に追加し、制御範囲を広げた逆行列を計算することで、逆システムを設計する。以下、音響システムを例に挙げて説明する。
【００３７】
〔ハードウェア構成〕
まず、本発明の実施形態による逆システム設計装置のハードウェア構成について説明する。図１は、本発明の実施形態による逆システム設計装置のハードウェア構成を示す概略図である。この逆システム設計装置１は、ＣＰＵ５１と、プログラム及びテーブル等を記憶するＲＯＭ及びＲＡＭからなる記憶部５２と、アプリケーションのプログラム、テーブル及びデータ等を記憶する記憶装置（ハードディスク装置）５３と、当該逆システム設計装置１のオペレータによるキーボード及びマウス等の操作に伴い、所定のデータを入力制御する操作／入力部５４と、オペレータに対しデータ入力操作等を促すための画面情報を表示器に出力する表示出力インタフェース部５５と、インターネット等のネットワークを介してプログラム及びデータの送受信を行う通信部５６とを備えて構成され、これらの各構成要素はシステムバス５７を介して相互に接続される。
【００３８】
記憶装置５３には、逆システム設計装置１の基本的な機能を提供するためのＯＳ（オペレーティングシステム）プログラム、制御対象システムの伝達関数行列が正方行列から優決定系の行列へと変形するように、制御対象システムの制御点を再帰的に増やして制御範囲を広げた逆行列を計算することで、逆システムを設計する逆システム設計プログラム、及び、逆システム設計プログラムにて使用する各種テーブル及びデータ等が記憶されている。
【００３９】
尚、逆システム設計プログラムは、当該逆システム設計装置１が処理を行うときに、ＣＰＵ５１により記憶装置５３から記憶部５２のＲＡＭに読み出されて実行される。また、各種テーブル及びデータは、逆システム設計プログラムにより生成され、ＣＰＵ５１により記憶部５２のＲＡＭから記憶装置５３へ書き込まれ、必要に応じて記憶装置５３から記憶部５２のＲＡＭに読み出される。
【００４０】
ここで、ＯＳプログラムは、ＣＰＵ５１により実行され、逆システム設計装置１の基本的な機能として、記憶部５２、記憶装置５３、操作／入力部５４、表示出力インタフェース部５５及び通信部５６を管理する。そして、このＯＳプログラムがＣＰＵ５１によって実行された状態で、前述の逆システム設計プログラムが実行される。
【００４１】
制御部５０は、ＣＰＵ５１及び記憶部５２により構成され、ＣＰＵ５１が記憶装置５３に記憶された逆システム設計プログラムを記憶部５２に読み出して実行することにより、逆システム設計装置１全体を統括制御する。図１は、逆システム設計プログラムが記憶装置５３から記憶部５２に読み出された状態を示している。このように、逆システム設計装置１は、図１に示したハードウェア構成により、制御部５０が逆システム設計プログラムに従って各種処理を行う。
【００４２】
（制御対象システム）
図２は、制御対象システムを説明する概念図である。この制御対象システムは、音響システムの聴取音場であり、Ｍ台の二次音源であるスピーカ３０−１〜３０−Ｍ、及び、所定の聴取位置である各制御点にＮ本のマイクロホン４０−１〜４０−Ｎが配置されている。ここで、Ｍ，Ｎは正の整数であり、Ｍ＜Ｎである。
【００４３】
図３は、図１に示した記憶装置５３に格納されたプログラム等を示す図である。この記憶装置５３には、逆システム設計プログラム、伝達関数テーブル、閾値テーブル及び切り詰め後データ等が格納されている。逆システム設計プログラムは、ＣＰＵ５１により、記憶装置５３から記憶部５２のＲＡＭに読み出されて実行される。伝達関数テーブル、閾値テーブル及び切り詰め後データは、ＣＰＵ５１が逆システム設計プログラムを実行することにより生成され、記憶部５２のＲＡＭに書き込まれ、記憶部５２のＲＡＭから記憶装置５３に書き込まれる。また、これらの伝達関数テーブル、閾値テーブル及び切り詰め後データは、必要に応じて、記憶装置５３から記憶部５２のＲＡＭに読み出される。
【００４４】
尚、逆システム設計プログラム、伝達関数テーブル及び閾値テーブルは、外部のサーバからインターネット等のネットワーク及び通信部５６を介して記憶装置５３にダウンロードされるようにしてもよい。また、逆システム設計プログラムにより生成され記憶装置５３に格納された伝達関数テーブル、閾値テーブル及び切り詰め後データは、通信部５６及びインターネット等のネットワークを介して外部のサーバへアップロードされるようにしてもよい。
【００４５】
（伝達関数テーブル）
図４は、伝達関数テーブルを説明する図である。この伝達関数テーブルは、制御点１〜Ｎ毎に、Ｍ台の二次音源であるスピーカ３０−１〜３０−Ｍとの間の伝達関数群により構成される。制御点１の伝達関数群は（ｇ11，ｇ12，・・・，ｇ1M）であり、制御点２の伝達関数群は（ｇ21，ｇ22，・・・，ｇ2M）であり、同様に、制御点Ｎの伝達関数群は、（ｇN1，ｇN2，・・・，ｇNM）である。ここで、ｇ11は、図２において、制御点１であるマイクロホン４０−１と二次音源であるスピーカ３０−１との間の伝達関数を示し、ｇ12は、制御点１であるマイクロホン４０−１と二次音源であるスピーカ３０−２との間の伝達関数を示す。つまり、ｇijは、制御点ｉであるマイクロホン４０−ｉと二次音源であるスピーカ３０−ｊとの間の伝達関数を示す。
【００４６】
図４に示した伝達関数テーブルは、後述するテーブル生成部１０により生成され、記憶部５２及び記憶装置５３に格納される。また、伝達関数テーブルは、後述する伝達関数行列形成部１１により記憶部５２から読み出され、伝達関数行列を形成するために用いられ、また、追加制御点決定部１７により記憶部５２から読み出され、追加する制御点を決定するために用いられる。それぞれの伝達関数ｇ11，ｇ12，・・・，ｇNMは、図２に示した制御対象システムにおいて予め測定され、オペレータにより逆システム設計装置１へ操作入力される。
【００４７】
（閾値テーブル）
図５は、閾値テーブルを説明する図である。この閾値テーブルは、制御点１〜Ｎにおける単数の制御点及び複数の制御点毎に、制御点数及び閾値により構成される。単数または複数の制御点は、後述する伝達関数行列形成部１１により設定される初期の制御点及び追加制御点決定部１７により決定される追加制御点に対応する。制御点数は、制御点の数を示し、閾値は、打ち切り処理の閾値であり、切り詰めた行列を生成するための特異値と比較する基準値を示す。
【００４８】
図５に示した閾値テーブルは、後述するテーブル生成部１０により生成され、記憶部５２及び記憶装置５３に格納される。また、閾値テーブルは、後述する閾値処理／打ち切り数決定部１５により記憶部５２から読み出され、特異値の打ち切り数を決定するために用いられる。閾値テーブルを構成する各データは、オペレータにより逆システム設計装置１へ操作入力される。
【００４９】
（切り詰め後データ）
図６は、切り詰め後データを説明する図である。この切り詰め後データは、切り詰め後の伝達関数行列Ｇ#0，・・・，Ｇ#Kの逆行列Ｇ#0-1，・・・，Ｇ#K-1における出力側の基底Ｖ#0，・・・，Ｖ#K、特異値行列Σ#0-1，・・・，Σ#K-1及び入力側の基底Ｕ#0 H，・・・，Ｕ#K Hである。詳細については後述する。
【００５０】
図６に示した切り詰め後データは、後述する切り詰め部１６により形成され、記憶部５２及び記憶装置５３に格納される。また、切り詰め後データは、後述する逆行列形成部１８により記憶部５２から読み出され、全体の逆行列Ｇ-1を形成するために用いられる。
【００５１】
〔機能構成〕
図７は、図１に示した逆システム設計装置１における制御部５０の機能構成を示すブロック図であり、図１に示した制御部５０が逆システム設計プログラムの処理を実行する際の機能構成を示している。この制御部５０は、テーブル生成部１０、伝達関数行列形成部１１、逆行列特異値計算部１２、特異値分解部１３、逆行列計算部１４、閾値処理／打ち切り数決定部１５、切り詰め部１６、追加制御点決定部１７、逆行列形成部１８及び記憶部５２を備えている。
【００５２】
テーブル生成部１０は、オペレータの操作入力に従い、予め測定されたマイクロホン４０−１〜４０−Ｎとスピーカ３０−１〜３０−Ｍとの間のそれぞれの伝達関数を入力する。そして、テーブル生成部１０は、制御点１〜Ｎ毎に、Ｍ台の二次音源であるスピーカ３０−１〜３０−Ｍとの間の伝達関数群により構成される図４に示した伝達関数テーブルを生成し、生成した伝達関数テーブルを記憶部５２に格納する。
【００５３】
また、テーブル生成部１０は、オペレータの操作入力に従い、制御点１〜Ｎにおける単数の制御点及び複数の制御点毎に、制御点数及び閾値を入力し、図５に示した閾値テーブルを生成し、生成した閾値テーブルを記憶部５２に格納する。ここで、制御点１〜Ｎにおける単数の制御点及び複数の制御点には優先順位が付けられており、その優先順位に応じた閾値が入力される。例えば、図５を参照して、制御点９の優先順位が制御点１１の優先順位よりも高い場合、制御点９に対し、制御点１１よりも小さい値の閾値が入力される。
【００５４】
伝達関数行列形成部１１は、二次音源であるスピーカ３０−１〜３０−Ｍの数と同数の初期の制御点数Ｎ0に対応したＮ0×Ｎ0の正方の伝達関数行列Ｇk＝Ｇ0を形成する。また、伝達関数行列形成部１１は、後述する追加制御点決定部１７から追加制御点情報を入力し、追加制御点の伝達関数群を記憶部５２の伝達関数テーブルから読み出し、追加制御点の伝達関数行列Ｇkを形成する。そして、伝達関数行列形成部１１は、形成した伝達関数行列Ｇkを特異値分解部１３に出力する。ここで、ｋは、後述する処理の反復回数を示す。
【００５５】
特異値分解部１３は、伝達関数行列形成部１１から伝達関数行列Ｇkを入力し、以下の式により、伝達関数行列Ｇkを特異値分解することで、出力側の基底Ｕk、特異値行列Σk及び入力側の基底ＶkHを生成する。そして、特異値分解部１３は、生成した特異値行列Σkを閾値処理／打ち切り数決定部１５に出力すると共に、特異値分解した伝達関数行列Ｇk＝ＵkΣkＶkHを逆行列特異値計算部１２に出力する。尚、特異値分解の手法は既知であるから、ここでは詳細な説明を省略する。
【数１】
2015060007.tif 000003
ここで、ｕは出力ベクトル、σは特異値、ｖは入力ベクトル、Ｎkは制御点の数、上付き文字のＨは複素共役転置を示す。また、Ｎk≦Ｍである。
【００５６】
前記式（１）において、特異値行列Σkを構成する要素は、特異値及び０の値からなり、特異値は、第１行及び第１列の位置から第Ｎk行及び第Ｎk列の位置（行及び列の番号が同じ位置）へ向けて対角に配置され、σ11＞σ22＞・・・＞σNkNkとなるものとする。また、特異値以外の要素は０である。
【００５７】
逆行列特異値計算部１２は、特異値分解部１３から伝達関数行列Ｇk＝ＵkΣkＶkHを入力し、前記式（１）及び後述する式（２）に示すように、伝達関数行列Ｇkの出力側の基底Ｕk、特異値行列Σk及び入力側の基底ＶkHを構成するそれぞれの要素を用いて、逆行列の出力側の基底Ｖk、特異値行列Σk-1及び入力側の基底ＵkHを生成し、逆行列計算部１４に出力する。
【００５８】
逆行列計算部１４は、逆行列特異値計算部１２から逆行列の出力側の基底Ｖk、特異値行列Σk-1及び入力側の基底ＵkHを入力し、以下の式により逆行列Ｇk-1＝ＶkΣk-1ＵkHを計算し、入力した逆行列の出力側の基底Ｖk、特異値行列Σk-1及び入力側の基底ＵkHと共に、逆行列Ｇk-1＝ＶkΣk-1ＵkHを切り詰め部１６に出力する。
【数２】
2015060007.tif 000004
【００５９】
前記式（２）において、特異値行列Σk-1を構成する要素は、特異値及び０の値からなり、特異値は、第１行及び第１列の位置から第Ｎk行及び第Ｎk列の位置（行及び列の番号が同じ位置）へ向けて対角に配置され、前記式（１）における特異値σ11＞σ22＞・・・＞σNkNkの逆数１／σ11＜１／σ22＜・・・＜１／σNkNkとなる。
【００６０】
閾値処理／打ち切り数決定部１５は、特異値分解部１３から伝達関数行列Ｇkの特異値行列Σkを入力すると共に、記憶部５２の閾値テーブルから、伝達関数行列Ｇkを形成する際の制御点の集合に対応する閾値Ｔkを読み出し、特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNkと閾値Ｔkとを、特異値が大きい順（σ11，σ22，・・・，σNkNkの順）に比較し、その順番の中で最初に閾値Ｔｋよりも小さいと判定した特異値σnnを特定し、打ち切り数をＮk−ｎ＋１に決定する。そして、閾値処理／打ち切り数決定部１５は、打ち切り数（Ｎk−ｎ＋１）を切り詰め部１６及び追加制御点決定部１７に出力する。閾値処理／打ち切り数決定部１５は、閾値Ｔｋよりも小さい特異値σnnを特定することができず、打ち切りがない場合、打ち切り無し（打ち切りをしないこと）を決定し、打ち切り無しの情報を切り詰め部１６及び逆行列形成部１８に出力する。尚、打ち切り数（Ｎk−ｎ＋１）は、１以上の整数である。
【００６１】
尚、閾値処理／打ち切り数決定部１５は、最大の特異値を用いた除算結果と閾値Ｔkとを比較することにより特異値σnnを特定し、打ち切り数をＮk−ｎ＋１に決定するようにしてもよい（以下、最大の特異値の除算結果による比較処理という）。具体的には、閾値処理／打ち切り数決定部１５は、特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNkのうち最大の特異値を特定し、特定した最大の特異値を特異値σ11，σ22，・・・，σNkNkでそれぞれ除算する。そして、閾値処理／打ち切り数決定部１５は、除算結果のそれぞれと閾値Ｔkとを、特異値が大きい順（σ11，σ22，・・・，σNkNkの順）に比較し、その順番の中で最初に閾値Ｔｋよりも大きいと判定した特異値σnnを特定し、打ち切り数をＮk−ｎ＋１に決定する。
【００６２】
切り詰め部１６は、閾値処理／打ち切り数決定部１５から打ち切り数（Ｎk−ｎ＋１）または打ち切り無し情報を入力し、逆行列計算部１４から逆行列Ｇk-1＝ＶkΣk-1ＵkH、並びに逆行列の出力側の基底Ｖk、特異値行列Σk-1及び入力側の基底ＵkHを入力する。
【００６３】
切り詰め部１６は、打ち切り数（Ｎk−ｎ＋１）を入力した場合、逆行列Ｇk-1＝ＶkΣk-1ＵkHに対し、特異値行列Σkにおける値の小さい特異値に対応する逆行列Σk-1の特異値を打ち切り数（Ｎk−ｎ＋１）分除去し（打ち切り）、これに対応する逆行列Ｇk-1における出力側の基底Ｖk及び入力側の基底ＵkHの要素を打ち切ることで、各行列を切り詰める。
【００６４】
切り詰め部１６は、以下の式に示すように、新たな特異値数（打ち切り後の特異値数）Ｎ#k＝ｎ−１の特異値を含む切り詰め後の逆行列Ｇ#k-1における出力側の基底Ｖ#k、特異値行列Σ#k-1及び入力側の基底Ｕ#kHを形成し、これらを切り詰め後データとして記憶部５２に格納する。
【数３】
2015060007.tif 000005
【００６５】
切り詰め部１６は、閾値処理／打ち切り数決定部１５から打ち切り無し情報を入力した場合、前述の打ち切り処理を行うことなく、逆行列計算部１４から入力した逆行列Ｇ#k-1における出力側の基底Ｖ#k、特異値行列Σ#k-1及び入力側の基底Ｕ#kHを、切り詰め後データとして記憶部５２に格納する。この場合、Ｋ＝ｋとなる。ｋは前述のとおり反復回数を示し、Ｋは最終的な反復回数を示す。具体例については後述する。
【００６６】
追加制御点決定部１７は、閾値処理／打ち切り数決定部１５から打ち切り数（Ｎk−ｎ＋１）を入力し、伝達関数行列形成部１１が伝達関数行列Ｇkを形成する際の対象になっていない打ち切り数（Ｎk−ｎ＋１）分の制御点を追加制御点として、記憶部５２に格納された伝達関数テーブルに基づいて決定する。例えば、伝達関数テーブルの制御点１〜Ｎのうち、伝達関数行列形成部１１が伝達関数行列Ｇkを形成する際の対象になっていない打ち切り数（Ｎk−ｎ＋１）分の制御点であって、番号が小さい制御点または予め設定された制御点を、追加制御点として決定する。追加制御点決定部１７は、決定した追加制御点に関する情報（追加制御点の番号等）を伝達関数行列形成部１１に出力する。
【００６７】
ここで、打ち切り数（Ｎk−ｎ＋１）に応じて切り詰められた行列はランク落ちすることになる。閾値処理／打ち切り数決定部１５により決定された打ち切り数（Ｎk−ｎ＋１）と同数の制御点を追加制御点とするのは、このランク落ちを制御の余力として制御点を増やすのに利用するためである。
【００６８】
逆行列形成部１８は、閾値処理／打ち切り数決定部１５から打ち切り無しの情報を入力すると、記憶部５２から、切り詰め後の逆行列Ｇ#0-1〜Ｇ#K-1における出力側の基底Ｖ#0〜Ｖ#K、特異値行列Σ#0-1〜Σ#K-1及び入力側の基底Ｕ#0H〜Ｕ#KHを読み出す。そして、逆行列形成部１８は、以下の式（４）に示すように、切り詰め後の逆行列Ｇ#0-1〜Ｇ#K-1における出力側の基底Ｖ#0〜Ｖ#K、特異値行列Σ#0-1〜Σ#K-1及び入力側の基底Ｕ#0H〜Ｕ#KHをそれぞれ合成し、逆行列Ｇ-1を形成して出力する。
【数４】
2015060007.tif 000006
【００６９】
具体的には、逆行列形成部１８は、切り詰め後の出力側の基底Ｖ#0〜Ｖ#Kを順番に並べた複素共役転置の行列に対する逆行列を計算し、これを合成後の出力側の基底［ＶH］-1として生成する。また、逆行列形成部１８は、切り詰め後の特異値行列Σ#0-1〜Σ#K-1を、第１行及び第１列の位置から第Ｋ行及び第Ｋ列の位置へ向けて対角に配置し、これ以外の要素に０を配置することで、合成後の特異値行列Σ-1を生成する。また、逆行列形成部１８は、切り詰め後の入力側の基底Ｕ#0H〜Ｕ#KHを、第１行及び第１列の位置から第Ｋ行及び第Ｋ列の位置へ向けて対角に配置し、これ以外の要素に０を配置することで、合成後の入力側の基底ＵHを生成する。そして、逆行列形成部１８は、合成後の出力側の基底［ＶH］-1、合成後の特異値行列Σ-1及び合成後の入力側の基底ＵHを乗算し、前記式（４）により、逆行列Ｇ-1＝［ＶH］-1Σ-1ＵHを形成する。
【００７０】
このようにして形成された逆行列Ｇ-1は、例えば、図２に示した音響システムの二次音源であるスピーカ３０−１〜３０−Ｍへ出力する音響信号を生成するためのフィルタの係数に用いられる。つまり、制御装置は、逆システム設計装置１により形成された逆行列Ｇ-1を入力し、逆行列Ｇ-1を用いてフィルタを生成し、生成したフィルタを用いてスピーカ３０−１〜３０−Ｍへ出力するための音響信号を生成する。そして、スピーカ３０−１〜３０−Ｍは、制御装置により生成された音響信号を入力してマイクロホン４０−１等へ出力する。これにより、マイクロホン４０−１等の制御点に対し、優先順位が反映された閾値テーブルの閾値に応じた精度の音響信号を提示することができる。
【００７１】
〔処理（逆行列形成処理）〕
次に、図７に示した制御部５０の処理（逆行列形成処理）について説明する。制御部５０は、前述のとおり、逆システム設計プログラムの実行により、制御対象システムの制御範囲を広げるために、制御点を再帰的に増やしながら逆行列を計算する。
【００７２】
図８は、図７に示した制御部５０の逆行列形成処理を示すフローチャートである。以下、図２に示した音響システムの聴取音場を制御対象システムとした場合を例として、図８の逆行列形成処理について説明する。図２において、二次音源であるスピーカ３０−１〜３０−Ｍの数はＭ、制御点であるマイクロホン４０−１〜４０−Ｎの数はＮである。また、逆行列形成処理において、伝達関数行列Ｇkの形成、特異値分解、閾値処理及び打ち切り数決定処理等を繰り返す際の制御点の数をＮ0〜ＮKとする。
【００７３】
尚、二次音源であるスピーカ３０−１〜３０−Ｍから制御点であるマイクロホン４０−１〜４０−Ｎへの音響伝搬は、伝達関数によって特性が表記されるものとし、逆行列形成処理は、伝達関数の離散周波数ビン毎に行われるものとする。また、記憶部５２には、テーブル生成部１０により生成された伝達関数テーブル及び閾値テーブルが格納されているものとする。
【００７４】
Ｎ0は制御点数の初期値とし、Ｎ0＝Ｍとする。つまり、ｋ＝０である第０番目の処理（初期処理）では、二次音源であるスピーカ３０−１〜３０−Ｍと、これと同じ数Ｍの制御点であるマイクロホン４０−１〜４０−Ｍとにより構成される制御対象システムを想定して、処理が行われる。
【００７５】
図８において、まず、制御部５０は、反復回数ｋ＝０を設定し（ステップＳ８０１）、第０番目の処理（初期処理）を行う。伝達関数行列形成部１１は、初期処理として、予め設定された初期値Ｎ0＝Ｍの数の制御点１〜Ｍについて、記憶部５２の伝達関数テーブル（図４を参照）から、制御点１〜Ｍの伝達関数群を読み出し、Ｎ0×Ｎ0（Ｍ×Ｍ）の正方の伝達関数行列Ｇ0を形成する（ステップＳ８０２）。これにより、制御点１〜Ｎ0（Ｍ）と二次音源１〜Ｍとの間の伝達関数ｇ11〜ｇN0M（ｇMM）を要素とする正方の伝達関数行列Ｇ0が形成される。
【００７６】
特異値分解部１３は、伝達関数行列Ｇkを特異値分解し、前記式（１）のとおり、出力側の基底Ｕk、特異値行列Σk及び入力側の基底ＶkHを生成する（ステップＳ８０３）。
【００７７】
閾値処理／打ち切り数決定部１５は、特異値分解部１３により特異値分解された伝達関数行列Ｇkの特異値行列Σkを閾値処理し、打ち切り数（Ｎk−ｎ＋１）または打ち切り無しを決定する（ステップＳ８０４）。具体的には、閾値処理／打ち切り数決定部１５は、記憶部５２の閾値テーブルから、伝達関数行列Ｇkを形成する際の制御点の集合（制御点数Ｎk）に対応する閾値Ｔkを読み出し、特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNk（大きい順に並んでいる特異値）と閾値Ｔkとを順番に比較し、閾値Ｔｋよりも小さいと判定した最初の特異値σnnを特定し、打ち切り数をＮk−ｎ＋１に決定する。特異値は、前述のとおりσ11＞σ22＞・・・＞σNkNkである。また、閾値処理／打ち切り数決定部１５は、閾値Ｔｋよりも小さい特異値σ11，σ22，・・・，σNkNkが存在しない場合、打ち切り無しを決定する。
【００７８】
尚、閾値処理／打ち切り数決定部１５は、前述した最大の特異値の除算結果による比較処理を行うようにしてもよい。具体的には、閾値処理／打ち切り数決定部１５は、特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNkのうちの最大の特異値を特異値σ11，σ22，・・・，σNkNkでそれぞれ除算し、除算結果のそれぞれと閾値Ｔkとを特異値が大きい順（σ11，σ22，・・・，σNkNkの順）に比較し、閾値Ｔｋよりも大きいと判定した最初の特異値σnnを特定し、打ち切り数をＮk−ｎ＋１に決定するようにしてもよい。
【００７９】
図９は、閾値処理／打ち切り数決定部１５の処理（ステップＳ８０４）を説明する図である。特異値σ11，σ22，・・・，σNkNkと閾値Ｔkとを順番に比較することにより特定される特異値σnnは、特異値σn-1n-1＞Ｔk＞σnnの関係にある。また、打ち切り数（Ｎk−ｎ＋１）は、特異値行列Σkに含まれる特異値σ11，σ22，・・・，σNkNkのうち閾値Ｔkよりも小さい特異値σnn，・・・，σNkNkの数となる。
【００８０】
尚、図９の括弧内に示すように、閾値処理／打ち切り数決定部１５が前述した最大の特異値の除算結果による比較処理を行う場合、除算結果σ11／σ11，σ11／σ22，・・・，σ11／σNkNkと閾値Ｔkとを順番に比較することにより特定される特異値σnnは、（σ11／σn-1n-1）＜Ｔk＜（σ11／σnn）の関係にある。また、打ち切り数（Ｎk−ｎ＋１）は、特異値行列Σkに含まれる特異値σ11，σ22，・・・，σNkNkのうち除算結果が閾値Ｔkよりも大きい特異値σnn，・・・，σNkNkの数となる。
【００８１】
図８のステップＳ８０４において、閾値テーブルには、ｋ＝０である第０番目の処理（初期処理）のために、初期値Ｎ0＝Ｍの数の制御点１，・・・，Ｎ0（Ｍ）に対応する閾値Ｔ0が格納されているものとする。この場合、ｋ＝０である第０番目の処理（初期処理）では、閾値処理／打ち切り数決定部１５は、記憶部５２の閾値テーブルから閾値Ｔ0を読み出す代わりに、予め設定された閾値Ｔ0を用いるようにしてもよい。
【００８２】
また、閾値処理／打ち切り数決定部１５は、ステップＳ８０４において、閾値Ｔｋよりも小さい特異値σnnを特定することができず、打ち切り数（Ｎk−ｎ＋１）を決定できない場合、打ち切り無しを決定する。
【００８３】
尚、閾値処理／打ち切り数決定部１５が前述した最大の特異値の除算結果による比較処理を行う場合には、打ち切り無しは、除算結果が閾値Ｔkよりも大きい特異値σnnを特定することができないときに決定される。
【００８４】
図８に戻って、逆行列特異値計算部１２は、特異値分解部１３により生成された出力側の基底Ｕk、特異値行列Σk及び入力側の基底ＶkHより逆行列Ｇ-1の出力側の基底Ｖk、特異値行列Σk−１及び入力側の基底ＵkHを生成し、逆行列計算部１４は、前記式（２）のとおり、逆行列Ｇｋ−1を計算する（ステップＳ８０５）。
【００８５】
切り詰め部１６は、ステップＳ８０４にて打ち切り数（Ｎk−ｎ＋１）が決定された場合、ステップＳ８０５にて得られた逆行列Ｇk-1＝ＶkΣk-1ＵkHについて、打ち切り数（Ｎk−ｎ＋１）に従った要素に切り詰め、切り詰め後の逆行列Ｇ#k-1＝Ｖ#kΣ#k-1Ｕ#kHを形成する打ち切り処理を行い、一方で、ステップＳ８０４にて打ち切り無しが決定された場合、打ち切り処理を行わない（ステップＳ８０６）。具体例については後述する。そして、切り詰め部１６は、切り詰め後の逆行列Ｇ#k-1＝Ｖ#kΣ#k-1Ｕ#kHを記憶部５２に格納する。
【００８６】
図１０は、切り詰め部１６による逆行列Ｇk-1＝ＶkΣk-1ＵkHの打ち切り処理（ステップＳ８０６）を説明する図である。図１０は前記式（２）（３）に対応しており、出力側の基底Ｖkは、打ち切り数（Ｎk−ｎ＋１）の要素を除去することで切り詰められ、切り詰め後の出力側の基底Ｖ#kが形成される。この場合の要素は、ｖ1，・・・，ｖn-1であり、Ｎ#k＝ｎ−１である。また、特異値行列Σk-1は、打ち切り数（Ｎk−ｎ＋１）の要素を除去することで切り詰められ、切り詰め後の特異値行列Σ#k-1が形成される。この場合の特異値は、１／σ11，・・・，１／σn-1n-1であり、Ｎ#k＝ｎ−１である。また、入力側の基底ＵkHは、打ち切り数（Ｎk−ｎ＋１）の要素を除去することで切り詰められ、切り詰め後の入力側の基底Ｕ#kHが形成される。この場合の要素は、ｕ1，・・・，ｕn-1であり、Ｎ#k＝ｎ−１である。
【００８７】
このように、切り詰め部１６の打ち切り処理により、閾値Ｔkに基づいた切り詰め後の逆行列Ｇ#k-1＝Ｖ#kΣ#k-1Ｕ#kHが形成され、特異値の数はＮkからＮ#k＝ｎ−１に減少する。
【００８８】
ここで、切り詰め後の行列における特異値の数Ｎ#kは、閾値Ｔkが大きい場合よりも小さい場合の方が、多くなる。一方で、閾値Ｔkは、制御点の優先順位が高い場合は優先順位が低い場合に比べて小さい値が設定される。したがって、優先順位が高い制御点は優先順位が低い制御点よりも、特異値の数Ｎ#kが多くなる。特異値の数が多い行列を合成した逆行列Ｇ-1を用いることにより、制御点での近似精度を高めることができる。一方、優先順位が低い制御点は、特異値の数Ｎ#kが少なくなる。特異値の少ない逆行列Ｇ-1を用いることにより、急峻な増幅を抑制した音響信号を生成することができ、制御対象システムの安定化を図ることができる。この組み合わせにより、全体として安定した制御を実現することができる。
【００８９】
尚、閾値処理／打ち切り数決定部１５が前述した最大の特異値の除算結果による比較処理を行う場合には、切り詰め後の行列における特異値の数Ｎ#kは、閾値Ｔkが小さい場合よりも大きい場合の方が、多くなる。一方で、閾値Ｔkは、制御点の優先順位が高い場合は優先順位が低い場合に比べて大きい値が設定される。
【００９０】
つまり、この閾値Ｔkを、第ｋ番目の処理である再帰処理毎に変更することにより、制御点の集合毎に、制御点へ提示する音響信号の精度を変えると共に、安定化を図ることができる。
【００９１】
例えば、図２に示した制御対象システムにおいて、部屋の中央付近の制御点では、優先順位を高くして小さい閾値Ｔkが設定され、それ以外の箇所の制御点では、優先順位を低くして大きい閾値Ｔkが設定された場合には、部屋の中央付近の制御点について、特異値の数の多い行列が形成されるから、音響信号をできるだけそのままに、すなわち精度の高い音響信号を提示することができる。また、それ以外の制御点について、特異値の数の少ない行列が形成されるから、ほどほどの精度の音響信号を提示することができる。このように設計されるフィルタは全体として安定である。
【００９２】
尚、閾値処理／打ち切り数決定部１５が前述した最大の特異値の除算結果による比較処理を行う場合には、例えば、図２に示した制御対象システムにおいて、部屋の中央付近の制御点では、優先順位を高くして大きい閾値Ｔkが設定され、それ以外の箇所の制御点では、優先順位を低くして小さい閾値Ｔkが設定される。この場合も同様に、部屋の中央付近の制御点について、精度の高い音響信号を提示することができ、それ以外の制御点について、ほどほどの精度の音響信号を提示することができる。
【００９３】
これにより、逆行列形成処理により形成される逆行列Ｇ-1を用いることで、急峻な増幅を抑制した音響信号を生成することができ、制御対象システムの安定化を図ることができる。また、閾値Ｔkに応じた打ち切り特異値分解が行われるから、優先順位が反映された閾値Ｔkに応じた精度の音響信号を生成することができ、オペレータが所望する制御システムを構築することができる。
【００９４】
図８に戻って、制御部５０は、ステップＳ８０６にて打ち切り処理が実行されたか否かを判定する（ステップＳ８０７）。具体的には、制御部５０は、ステップＳ８０７において、ステップＳ８０４にて打ち切り数（Ｎk−ｎ＋１）が決定され、ステップＳ８０６にて打ち切り処理が実行されたと判定した場合（ステップＳ８０７：Ｙ）、ステップＳ８０８へ移行する。一方、制御部５０は、ステップＳ８０７において、ステップＳ８０４にて打ち切り数（Ｎk−ｎ＋１）が決定されず、打ち切り無しが決定され、ステップＳ８０６にて打ち切り処理が実行されなかったと判定した場合（ステップＳ８０７：Ｎ）、ステップＳ８１１へ移行する。
【００９５】
追加制御点決定部１７は、ステップＳ８０７から移行して（打ち切り処理が実行された場合）、伝達関数行列形成部１１が伝達関数行列Ｇkを形成する際の対象になっていない打ち切り数（Ｎk−ｎ＋１）と同数の制御点を追加制御点として、記憶部５２に格納された伝達関数テーブルに基づいて決定する（ステップＳ８０８）。例えば、制御点１〜８が伝達関数行列Ｇkを形成する対象になっている場合、図４に示したように、記憶部５２の伝達関数テーブルには制御点の番号の小さい順に格納されているから、追加制御点決定部１７は、伝達関数テーブルに基づいて、制御点９から制御点９＋（Ｎk−ｎ＋１）−１までを追加制御点として決定する。
【００９６】
制御部５０は、ステップＳ８０８の後に、Ｎk−ｎ＋１を新たなＮkとし、ｋをインクリメントして新たなｋを設定する（ステップＳ８０９）。そして、伝達関数行列形成部１１は、反復回数ｋの処理として、ステップＳ８０８にて追加された追加制御点について、記憶部５２の伝達関数テーブルから、追加制御点の伝達関数群を読み出し、伝達関数行列Ｇkを形成する（ステップＳ８１０）。これにより、追加制御点と二次音源１〜Ｍとの間の伝達関数を要素とする伝達関数行列Ｇkが形成される。そして、処理は、ステップＳ８０３へ移行する。これにより、ステップＳ８０７において打ち切り処理が実行されなかったと判定されるまで、ステップＳ８０９にて反復回数ｋがインクリメントされ新たなＮkが設定され、第ｋ番目の処理が順次行われる。
【００９７】
逆行列形成部１８は、ステップＳ８０７から移行して（打ち切り処理が実行されなかった場合）、ステップＳ８０６にて記憶部５２に切り詰め後データとして格納された切り詰め後の逆行列Ｇ#0-1〜Ｇ#K-1における出力側の基底Ｖ#0〜Ｖ#K、特異値行列Σ#0-1〜Σ#K-1及び入力側の基底Ｕ#0H〜Ｕ#KHを読み出し、前記式（４）に示したように、これらの行列を合成することで逆行列Ｇ#0-1〜Ｇ#K-1を結合し、全体の逆行列Ｇ-1を形成する（ステップＳ８１１）。つまり、Ｋは、反復回数ｋの最大値であり、実際に処理が行われた回数を示す。
【００９８】
〔具体例〕
次に、図８に示した制御部５０の逆行列形成処理について具体例を挙げて説明する。図１１及び図１２は、逆行列形成処理の具体例を説明する図である。図２に示した音響システムの聴取音場を制御対象システムとした場合を例として、制御対象システムには、８台の二次音源であるスピーカ３０−１〜３０−８、及び、各制御点に１５本のマイクロホン４０−１〜４０−１５が配置されているものとする。つまり、Ｍ＝８、Ｎ＝１５とする。
【００９９】
また、記憶部５２には、テーブル生成部１０により生成された伝達関数テーブル及び閾値テーブルが格納されているものとする。伝達関数テーブルは、制御点１〜１５毎に、８台の二次音源であるスピーカ３０−１〜３０−８との間の伝達関数群により構成される。閾値テーブルは、制御点の集合毎に、制御点数及び閾値により構成される。本例では、制御点の初期点数Ｎ0＝８であり、制御点の数Ｎ＝１５であるから、閾値テーブルには、制御点１〜８についての制御点数８及び閾値Ｔ0が設定され、その他の制御点９等については、追加する制御点の数に応じた閾値がそれぞれ設定される。
【０１００】
例えば、制御点１〜８が制御対象システムの聴取音場の中央付近に配置され、制御点９〜１５がそれ以外の箇所に配置されており、制御点１〜８の優先順位は高く、制御点９〜１５の優先順位はその番号順であるとする。この場合、閾値テーブルの閾値は、制御点１〜８に対して小さい値が設定され、制御点９〜１５に対してその番号が大きいほど大きい値が設定される。これは、閾値が小さい値に設定されていると、特異値の打ち切り数が少なくなり、これにより形成された逆行列を用いることにより、精度の高い音響信号を生成することができるからである。また、閾値が大きい値に設定されていると、特異値の打ち切り数が多くなり、これにより形成された逆行列を用いることにより、ほどほどの精度の音響信号を生成することができ、かつ設計するフィルタ全体の安定化を図ることができるからである。
【０１０１】
尚、閾値処理／打ち切り数決定部１５が前述した最大の特異値の除算結果による比較処理を行う場合には、閾値テーブルの閾値は、制御点１〜８に対して大きい値が設定され、制御点９〜１５に対してその番号が大きいほど小さい値が設定される。
【０１０２】
Ｎ0＝８を制御点数の初期値とする。つまり、反復回数ｋ＝０である第０番目の処理（初期処理）では、二次音源であるスピーカ３０−１〜３０−８と、これと同じ数の制御点であるマイクロホン４０−１〜４０−８とにより構成される制御対象システムを想定して、処理が行われる。
【０１０３】
図１１に示すように、ｋ＝０の第０番目の処理において、伝達関数行列形成部１１により形成される伝達関数行列Ｇ0は、行数８及び列数８（８×８）の正方行列となる。そして、特異値分解部１３の特異値分解により生成される出力側の基底Ｕ0、特異値行列Σ0及び入力側の基底Ｖ0Hは、それぞれ８×８の行列となる。
【０１０４】
ここで、閾値処理／打ち切り数決定部１５により決定された打ち切り数が２であるとする。切り詰め部１６により形成される切り詰め後の逆行列Ｇ#0-1における出力側の基底Ｖ#0、特異値行列Σ#0-1及び入力側の基底Ｕ#0Hは、それぞれ８×６の行列、６×６の行列及び６×８の行列となる。
【０１０５】
次に、ｋ＝１の第１番目の処理において、打ち切り数が２に対応した２点の制御点９，１０を追加制御点として、伝達関数行列形成部１１により形成される追加制御点９，１０の伝達関数行列Ｇ1は、２×８の行列となる。そして、特異値分解部１３の特異値分解により生成される出力側の基底Ｕ1、特異値行列Σ1及び入力側の基底Ｖ1Hは、それぞれ２×２の行列、２×８の行列及び８×８の行列となる。
【０１０６】
ここで、閾値処理／打ち切り数決定部１５により決定された打ち切り数が１であるとする。切り詰め部１６により形成される切り詰め後の逆行列Ｇ#1-1における出力側の基底Ｖ#1、特異値行列Σ#1-1及び入力側の基底Ｕ#1Hは、それぞれ８×１の行列、１×１の行列及び１×２の行列となる。
【０１０７】
尚、ｋ＝１において、閾値処理／打ち切り数決定部１５により打ち切り無しが決定された場合には、切り詰め部１６では打ち切り処理が行われない。切り詰め部１６により、逆行列Ｇ1-1における出力側の基底Ｖ1、特異値行列Σ1-1及び入力側の基底Ｕ1Hが切り詰め後の逆行列Ｇ#1-1における出力側の基底Ｖ#1、特異値行列Σ#1-1及び入力側の基底Ｕ#1Hとして記憶部５２に格納される。この場合の切り詰め後の逆行列Ｇ#1-1における出力側の基底Ｖ#1、特異値行列Σ#1-1及び入力側の基底Ｕ#1Hは、それぞれ８×２の行列、２×２の行列及び２×２の行列となる。
【０１０８】
次に、ｋ＝２の第２番目の処理において、打ち切り数が１に対応した１点の制御点１１を追加制御点として、伝達関数行列形成部１１により形成される追加制御点１１の伝達関数行列Ｇ2は、１×８の行列となる。そして、特異値分解部１３の特異値分解により生成される出力側の基底Ｕ2、特異値行列Σ2及び入力側の基底Ｖ2Hは、それぞれ１×１の行列、１×８の行列及び８×８の行列となる。
【０１０９】
ここで、閾値処理／打ち切り数決定部１５により打ち切り無しが決定されたとする。切り詰め部１６では打ち切り処理が行われず、切り詰め部１６により、逆行列Ｇ2-1における出力側の基底Ｖ2、特異値行列Σ2-1及び入力側の基底Ｕ2Hが切り詰め後の逆行列Ｇ#2-1における出力側の基底Ｖ#2、特異値行列Σ#2-1及び入力側の基底Ｕ#2Hとして記憶部５２に格納される。この場合の切り詰め後の逆行列Ｇ#2-1における出力側の基底Ｖ#2、特異値行列Σ#2-1及び入力側の基底Ｕ#2Hは、それぞれ８×１の行列、１×１の行列及び１×１の行列となる。
【０１１０】
そして、図１２に示すように、逆行列形成部１８により形成される全体の逆行列Ｇ-1は、切り詰め後の逆行列Ｇ#0-1，Ｇ#1-1，Ｇ#2-1における出力側の基底Ｖ#0（８×６の行列），Ｖ#1（８×１の行列），Ｖ#2（８×１の行列）を合成した行列［ＶH］-1と、特異値行列Σ#0-1（６×６の行列），Σ#1-1（１×１の行列），Σ#2-1（１×１の行列）を合成した行列Σ-1と、入力側の基底Ｕ#0H（６×８の行列），Ｕ#1H（１×２の行列），Ｕ#2H（１×１の行列）を合成した行列ＵHとを乗算することで、８×１１の行列として形成される。
【０１１１】
これにより、制御対象システムの制御点は、８点を初期として、再帰的に２点及び１点増加するから、合計１１点に増やすことができ、制御範囲を広げることができる。また、初期の８点の制御点は、優先順位が高く閾値が小さいから、これらの制御点に対して精度の高い音響信号を提示することができ、再帰的に増やした３点の制御点は、優先順位が低く閾値が大きいから、これらの制御点に対しほどほどの精度の音響信号を提示することができ、かつ設計するフィルタ全体の安定化を図ることができる。
【０１１２】
尚、閾値処理／打ち切り数決定部１５が前述した最大の特異値の除算結果による比較処理を行う場合には、初期の８点の制御点は、優先順位が高く閾値が大きいから、これらの制御点に対して精度の高い音響信号を提示することができ、再帰的に増やした３点の制御点は、優先順位が低く閾値が小さいから、これらの制御点に対しほどほどの精度の音響信号を提示することができ、かつ設計するフィルタ全体の安定化を図ることができる。
【０１１３】
したがって、例えば、制御点１〜８が制御対象システムの聴取音場の中央付近に配置され、制御点９〜１５がそれ以外の箇所に配置されている場合には、このようにして形成した逆行列Ｇ-1を用いてフィルタ等を生成し、音響信号を提示する制御装置は、聴取音場の中央付近に対して精度の高い音響信号を提示することができ、それ以外の箇所に対してほどほどの精度の音響信号を提示することができ、かつ設計するフィルタ全体の安定化を図ることができる。
【０１１４】
以上のように、本発明の実施形態による逆システム設計装置１によれば、制御対象システムにおける伝達関数行列Ｇの逆行列Ｇ-1を形成する際に、所望の近似精度（制御点へ提示する信号の精度）の優先順位に対応した制御点の集合毎に、逆行列Ｇk-1に対する切り詰め後の逆行列Ｇ#k-1における出力側の基底Ｖ#k、特異値行列Σ#k-1及び入力側の基底Ｕ#kHを計算するようにした。そして、制御点の集合毎の切り詰め後の逆行列Ｇ#k-1における出力側の基底Ｖ#k、特異値行列Σ#k-1及び入力側の基底Ｕ#kHをそれぞれ合成し、全体の逆行列Ｇ-1を形成するようにした。処理手順としては、初期の制御点の集合から計算を開始し、再帰的に制御点の集合を追加する。制御点の集合毎の計算において、近似精度の優先順位が反映された閾値を変更することにより、所望の近似精度を得るための逆行列Ｇ#k-1を形成する。そして、反復する再帰処理が終了した後に、全体の逆行列Ｇ-1を形成する。
【０１１５】
具体的には、伝達関数行列形成部１１は、初期の制御点数Ｎ0に対応したＮ0×Ｎ0の正方の伝達関数行列Ｇk＝Ｇ0を形成し、また、制御点数Ｎkの追加制御点についての伝達関数行列Ｇkを形成し、特異値分解部１３は、伝達関数行列Ｇkを特異値分解することで、出力側の基底Ｕk、特異値行列Σk及び入力側の基底ＶkHを生成し、逆行列特異値計算部１２は、伝達関数行列Ｇkの逆行列Ｇk-1における出力側の基底Ｖk、特異値行列Σk-1及び入力側の基底ＵkHを生成するようにした。そして、閾値処理／打ち切り数決定部１５は、特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNkと制御点に対応する閾値Ｔkとを順番に比較し、閾値Ｔｋよりも小さい特異値σnnを特定した場合（最大の特異値の除算結果による比較処理を行う場合は、特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNkのうち最大の特異値を特異値σ11，σ22，・・・，σNkNkでそれぞれ除算し、除算結果のそれぞれと閾値Ｔkとを順番に比較し、閾値Ｔｋよりも大きい特異値σnnを特定する。）、打ち切り数（Ｎk−ｎ＋１）を決定し、特異値σnnを特定できない場合、打ち切り無しを決定するようにした。そして、切り詰め部１６は、逆行列Ｇk-1＝ＶkΣk-1ＵkHに対し、打ち切り数（Ｎk−ｎ＋１）分の要素を除去する（打ち切る）ことで切り詰めを行い、切り詰め後の逆行列Ｇ#k-1における出力側の基底Ｖ#k、特異値行列Σ#k-1及び入力側の基底Ｕ#kHを形成するようにした。そして、追加制御点決定部１７は、伝達関数行列Ｇkを形成する際の対象になっていない打ち切り数（Ｎk−ｎ＋１）分の制御点を追加制御点として決定する。
【０１１６】
このようにして、切り詰め部１６は、所望の近似精度の優先順位に対応した制御点の集合毎に、切り詰め後の各行列を形成する。そして、逆行列形成部１８は、閾値処理／打ち切り数決定部１５により打ち切り無しが決定された場合、切り詰め部１６により制御点の集合毎に形成された切り詰め後の逆行列Ｇ#k-1における各行列を合成し、逆行列Ｇ-1を形成するようにした。
【０１１７】
これにより、入力信号の数よりも出力信号の数が多い優決定系を前提とした制御対象システムにおいて、制御点を再帰的に増やしながら逆行列を計算することにより、制御範囲を広げることができる。また、制御対象システムに配置される制御点の集合毎に、優先順位に応じた精度の信号を提示できる逆システムを設計することが可能となる。
【０１１８】
さらに、制御範囲を広げることが可能な本発明の実施形態を、音響システム以外の様々なシステムへ適用することができ、よりロバストなシステムを構築することが可能となる。本発明の実施形態にて示した音響システムでは、逆システムを用いた音場再生方式（例えばトランスオーラル再生方式）において、より広い範囲で良好な聴取が可能となる。また、室内残響除去を行う音響システムでは、より広い範囲で残響を抑圧することができる。
【０１１９】
以上、実施形態を挙げて本発明を説明したが、本発明は前記実施形態に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。前記実施形態では、閾値処理／打ち切り数決定部１５は、打ち切り数（Ｎk−ｎ＋１）を決定する際に、伝達関数行列Ｇkの特異値行列Σkを構成する特異値σ11，σ22，・・・，σNkNkと閾値Ｔkとを比較する閾値処理を行うようにしたが、これは一例であり、打ち切り数（Ｎk−ｎ＋１）を決定する処理であれば何でもよい。
【０１２０】
例えば、閾値処理／打ち切り数決定部１５は、逆行列Ｇk-1の特異値行列Σk-1を構成する特異値１／σ11，１／σ22，・・・，１／σNkNkと閾値Ｔkとを、特異値が小さい順（１／σ11，１／σ22，・・・，１／σNkNkの順）に比較し、閾値Ｔｋよりも大きい特異値１／σnnを特定し、打ち切り数をＮk−ｎ＋１に決定するようにしてもよい。この場合、閾値テーブルの閾値には、追加制御点の優先順位が高い場合は、優先順位が低い場合に比べて大きい値が設定され、追加制御点の優先順位が低い場合は、優先順位が高い場合に比べて小さい値が設定される。
【０１２１】
また、前記実施形態では、図２の制御対象システムに示したように、全ての制御点にＮ本のマイクロホン４０−１〜４０−Ｎが配置された例にて説明したが、制御点には必ずしもマイクロホン４０−１〜４０−Ｎが配置されていなくてもよく、制御点を単なる聴取位置として扱うようにしてもよい。
【０１２２】
また、前記実施形態では、音響システムを例に挙げて説明したが、音響システムは一例であり、本発明は、音響システム以外の制御システムにも適用がある。例えば、複数の制御点を温度制御したり、湿度制御したりする制御システム等にも適用がある。
【符号の説明】
【０１２３】
１  逆システム設計装置
１０  テーブル生成部
１１  伝達関数行列形成部
１２  逆行列特異値計算部
１３  特異値分解部
１４  逆行列計算部
１５  閾値処理／打ち切り数決定部
１６  切り詰め部
１７  追加制御点決定部
１８  逆行列形成部
３０，１０４  スピーカ
４０，１０５  マイクロホン
５０  制御部
５１  ＣＰＵ
５２  記憶部
５３  記憶装置
５４  操作／入力部
５５  表示出力インタフェース部
５６  通信部
５７  システムバス
１００−１０３  システム
【図１】
2015060007.tif 000007
【図２】
2015060007.tif 000008
【図３】
2015060007.tif 000009
【図４】
2015060007.tif 000010
【図５】
2015060007.tif 000011
【図６】
2015060007.tif 000012
【図７】
2015060007.tif 000013
【図８】
2015060007.tif 000014
【図９】
2015060007.tif 000015
【図１０】
2015060007.tif 000016
【図１１】
2015060007.tif 000017
【図１２】
2015060007.tif 000018
【図１３】
2015060007.tif 000019
【図１４】
2015060007.tif 000020
【図１５】
2015060007.tif 000021
【図１６】
2015060007.tif 000022