行列可聴化による数値的性質の把握に関する研究
Matrix Auditorization and Human's Sensitivity Quotation forEfficient Solution of Matrix Equations
研究代表者 奥田洋司 教授 東京大学人工物工学研究センター
Hiroshi OKUDA, Professor, Research into Artifacts, Center for Engineering,
University of Tokyo
アブストラクト：
本研究は、人の豊かな感性、とくに聴覚の助けを得て計算機シミュレーションの可能性をさらに広げようとするものである。固体の変形や、液体や気体の流れなど、物理現象の計算機シミュレーションにおいては、空間内のとびとびの点上に定義された変数に関する連立一次方程式を解くことが基本的に必要である。しかしながら、現象の複雑さはこの方程式の係数行列の数値的性質に強く反映されるため、必ずしも容易に解くことができない。
本研究では、数値の羅列である係数行列を、あるルールを用いて音に変換し、その音の特性や“心地よさ”から係数行列の数値的性質を把握できるようにする。音の判定には絶対音感を有する音楽家等に協力を求める。さらに、居心地の悪い音の行列に対しては、音をより心地よいものに改善するフィルターを開発し、行列の数値的性質を改善するための前処理に適用することを目指す。
Abstract:
This study aims at enhancing the possibility of the computer simulation with the aid of thehuman’s fertile sensibility, especially, the sense of hearing. For simulating the physicalphenomena, it is crucial to solve the linear equations for the unknown variables defined at thediscrete points in the computational domain. However, the complexity of the phenomena, whichstrongly affects the numerical property of the coefficient matrix of the linear equations, makes it
difficult to solve the equations. In this study, the coefficient matrix, which is essentiallycomposed of numerals, is converted to the sound based on the assumed rules, and the numericalproperty of the matrix is made to be understood through the sound property or its comfortableness.
When judging the sound property, collaboration with the musicians, who have the absolute pitch,is planned. Furthermore, for the ‘uncomfortable’ matrix, filters to improve the sound will bedeveloped and used as the preconditioners for solving the linear equations.
1． 研究目的
行列方程式の解法としては前処理と組み合わせた反復法が広く使われている。反復法や前処理には様々なアルゴリズムがありそれぞれ特性が異なるが、ある行列方程式を解くのにどのアルゴリズムを用いるのが最適であるか判断するための明確な基準は今のところ存在しない。行列方程式を反復法によって解くとき、その数値的性質、すなわち解き易さの指標のひとつに条件数があるが、条件数を求めるためには実質的に行列方程式を解く必要がある。

-1-

一方、近年、工学的手法に人間や生物の有機的な仕組みを利用するソフトコンピューティングが盛んに研究され実用化されている。本研究は人間の聴覚を用いて行列方程式の解を得る助けとするための礎として、行列を聞き取りやすい音へデータマイニングするためのルール、および、音と行列の性質との対応付けについての知見を得ることを目的としている。なお、本研究においては、音を記述するファイル形式としてMIDIを採用する。扱う行列は２次元配列もしくはMatrix Marketフォーマット（CRS）形式のものとする。

効率的な行列解法ならびに前処理手法の研究は国内外を問わず数多く見られるが、全て数理的な考察に基づくものであり、本研究のように人間の感性（聴覚）を行列の性質の取得に用いようとする試みはない。
本研究のアプローチは、数値データを音に変換する新たなデータマイニングの一種とも考えることができる。また、行列解法や前処理手法には既に様々のものが開発されているが、それらの明白な選択基準はなかった。本研究は、人間の感性の助けを得て、それら選択基準を与え、また新たな前処理手法をも提供しようとするものである。

ナイーブ変換行列の１要素に含まれる情報は（値、行番号、列番号）の３つである。それに対し単音に含まれる情報は（音量、音程、演奏される時刻、音長、音色）の５つである。
これらをどのように対応させるかによって行列から音への変換ルールが定義される。
この場合、行列の対角優位性などの情報を取り込んだデータマイニングを行わないことから、ここではナイーブ変換と呼ぶことにする。ナイーブ変換では以下の３通りの変換ルールを定義した。いずれも、行列要素の値から単音の音量（Volume）を、行番号から音程（Pitch）を、列番号から時刻（Time）を決定している。
2． 研究経過(1) C-VPT法（Chorded VPT）
変形・応力解析、衝突解析、振動解析、同時に演奏される音がメジャー/マイナ
空力解析、熱伝達解析など様々なシミュレ ー5thコードに乗るように調整する。
ーションにおいて根幹をなす行列解法およ (2) H-VPT法（Harmonized VPT）
C-VPTに加えてキー（調）の概念を取り入
びその前処理に対して、以下の手順で研究れることで、曲全体の調性を改善する。
を進めた。
(1)行列の特徴（対角優位性、非対称性など） (3) X-VPT法（Crossed VPT）
をMIDIデータに変換する変換ルールの策定。 転置行列に対してVPTを行って作られる(2)変換ルールに従って行列音を生成する 音を元の音に重ねたもの。適用は正方行列に限られる。
手法の実装。
(3)各種シミュレーションで現れる様々な行列に適した反復解法、前処理、条件数の 行列の対称性を考慮した変換（Ｓ変換）
調査（従来型の行列解法）。
以下に示すように、行列の対称性に配慮(4)(1)と(3)の対応づけによる、行列音と数 した変換ルールである（Ｓ変換と呼ぶ）。
値的性質との対応関係の取得。
・行列の各要素はそれぞれひとつの音にな(5)行列、前処理行列、前処理を施した行列、 る。そのとき要素の値の絶対値が音の大きに対応した音の生成、ならびにそれらの音 さ(velocity)に対応する。最大値が127になの相関づけにより、前処理行列を音から逆 るように正規化する。に生成する手法の開発。
・図1(a)の斜線部の要素をひとつの和音とその結果として、本研究では以下の項目 し、左上から右下に向かって和音をひとつを達成目標とした。
ずつ鳴らす。ひとつの和音の長さは全体の・行列音から直感的に行列の数値的性質（解 長さが一定になるように固定する。
き易さ）を把握できるようになること。
・非対角成分の音の高さ(note number)は、・行列音から適切な行列解法、前処理手法 対角成分からの距離に比例して高くなるようにする。(図1(b))
を判断できるようになること。
・行列音を逆変換して新たな前処理行列を ・音の左右のバランス（pan pot）を、対角生成できるようになること。
成分は中央(64)、対角成分より下は左(0)、対角成分より上は右(127)にする。(図1(b))
・音色はGM音色を用い、対角成分はBass
3． 研究成果
3.1 行列から音への変換ルール
Drum、非対角成分はElectric Piano 1とする。

-2-

High
Right
Left
Low
Harmony strikedirectionHigh(a) 和音構成

Low(b) ピッチとバランス
図１

Ｓ変換

3.2 対象とした行列
可 聴 化 の 対 象 と し た 行 列 は Matrix
Market（http://math.nist.gov/MatrixMarket/）に掲載されているものを中心として、以下のものを選択した。
(1)単位行列(identity16), Size:16x16(2)Frank行列(frank8), Size:8x8(3)Hilbert行列(hilbert8), Size:8x8(4)ランダム行列(rand64), Size:64x64(5)BCSSTK01, Size:48x48, 224entries(6)BCSSTK04, Size:132x132, 1890entries(7)BCSSTK05, Size:153x153, 1288entries(8)BCSSTK06, Size: 420x420, 4140entries(9)BCSSTM01, Size:48x48, 48entries(10)BFW398A, Size:398x398, 3678entries(11)CK104, Size:104x104, 992entries(12)DWA512, Size:512x512, 2480entries(13)FIDAP005, Size:27x27, 279entries(14)NNC261, Size:261x261, 1500entries(15)NOS4, Size:100x100, 347entries(16)PDE225, Size: 225x225, 1065entries(17)RDB450, Size: 450x450, 2580entries(18)RW136, Size: 136x136, 479entries(19)TOLS340, Size: 340x340, 2196entries(20)WEST0067, Size:67x67, 294entries(21)WM1, Size:207x277, 2909entries

C
Step1: Specify matrix data type and its
MIDI filename through MtxUpLoad.jsp(1)

ActionServlet

(2)
(3)

ClientM

ActionFormBean(4)

ActionClass(5)(6)

V

Step2: Upload matrix
and generate MIDI fileJSP

Step3: Output results ( makesound ) via MidiPlayer.jsp

図２

行列音生成WEBアプリケーションの処理の流れ-3-3．3
WEBアプリケーションの構築
利便性を考慮して、行列データの取り扱いおよび音の生成はユーザーがブラウザ経由で行えるよう、WebアプリケーションフレームワークのひとつであるStruts[3]を用いて作成した。StrutsはJSP/Servletと 同 様 、 MVC モ デ ル に 基 づ い て お り 、 M(model), V (view), C (controller)はそ
れぞれ、Bean, JSP, Servletで構築されている。図２は本アプリケーションの流れをStrutsのMVCモデルの枠組みで示したものである。
3.4 数値実験
ナイーブ変換ナイーブ変換を通じて、以下のように、聞き取りやすい行列音についての知見を得た。VPT、C-VPT、H-VPTによって作られる行列音についてアンケート調査を行った。その結果、コードおよびキーについて考慮することによって、行列から作られる音楽を大きく改善できることが分かった。
Ｓ変換
この方法により変換された音から、行列のサイズや対称性、粗密の規則性の有無、が容易に認識できることがわかった。しかしながら、行列の｢性質の良さ｣については、この変換方法では、音の違いから直接条件数の大小を判断することは困難である。判断するとすれば、それは行列のサイズや、非零成分の分布から間接的に判断することになる。
また、オリジナルの行列音と、対角スケーリングを施した行列音を聞き比べた。一方、行列（BCSSTK01）と、それにスケーリングを施した行列をSOR法で解いたときの反復回数を調べた。ω= 1とした結果それぞれ4191、1497となり、前処理により性質が良くなったことがわかる。次に、この２つの行列音を出力し聞き比べた。スケーリングをかけた行列の方は対角成分の大きさがそろっていることが判断できた。行列（NOS1）についても同様に調査した。反復回数は前処理なしの方が2380、前処理ありの方が2533であった。前処理を施した方が反復回数が多くなったが、その差は小さい。

-4-音を聞き比べても変化は小さかった。
3.5 成果のまとめ
本研究では、人間の聴覚を用いた行列性質の把握方法として、行列を聞き取りやすい音へデータマイニングするためのルール、および、音と行列の性質との対応付けについて、以下の知見を得た。
・コードおよびキーを考慮した行列音が有効である。
・Ｓ変換により行列がスケーリングされた状態に近いのかどうかがある程度判断できる。すなわちドラムが途切れず一定の大きさで続く音が｢良い行列｣の音である。
4.

今後の課題と発展

今後の課題としては、大規模行列、その他の変換ルールの策定、前処理への適用、などが挙げられる。また、WEBアプリケーションを経由するなどして、より多くのデータを収集し知見を蓄積する必要がある。
5.

発表論文リスト[1] Hiroshi Okuda, Web Application Using
StrutsforExtracting
Numerical
PropertyofCoefficient
Matrix,Proc.4th ACES WorkShop, p.118, 2004.
[2] 二階堂透, 奥田洋司, 行列可聴化による数値的性質の把握に関する研究, 計算工学講演会論文集, Vol.10, 2005.