2008-09-07

"プログラミングのための線形代数" 平岡和幸 & 堀玄 著

一日中、本屋で数学の本を立ち読みしながら頭の体操をした。んー!やっぱりタダ酒は美味い!本書は、線形代数を題材として、その概念を大切にしている。中でも、数学の道具として有効な行列式を扱っているところがうれしい。ただ、本書は立ち読みで済ませるには少々重たい。ちょいと腕が疲れたので買うことにした。
アル中ハイマーは大学時代に数学を挫折した。特に、ε-δ論法という殺虫効果の強い落ちこぼれスプレーを浴びせかけられると、ピクリともしなくなった。以来、原理の意味合いや過程を無視して、結果だけを使って誤魔化している。数学ができないことが、仕事の幅を狭くしていることは、今でも苦々しく思う。

コンピュータの世界は、ムーアの法則に従い高密度化や高速化が進むとはいえ、その分、高機能が要求される。仕事を容易にこなせるようにツールも進化するが、その分、複雑なアルゴリズムが要求される。人間は、ますます贅沢になるが、それに伴い仕事量も増えるようにできている。「働けど働けど、我が暮らし楽にならざり、じっと手を見る。」これが労働の法則というものである。自然法則は、人間を永遠に努力させるように留めおくようだ。
おいらの主な業務は、LSIに内臓される電子回路の設計である。設計の基本方針は、分かりやすくするのが最も重要であると考えている。しかし、回路規模や処理速度によって制約を受ける場合も多い。画像処理などの複雑な演算では、いかに効率良く近似値を求めるかが鍵となる。実装の際には、計算量を減らすことも課題の一つである。こうしたアルゴリズムの検討では、数学の道具である行列式の恩恵を受けることも多い。だが、優れた道具を使っても、その変換系が発散してしまうのであれば、物の役には立たない。本書は、その判定を容易にしてくれる固有値と固有ベクトルの概念をわかりやすく説明してくれる。

一つの行列は、ベクトルからベクトルへの写像を示し、一つの変換系を表している。そして、行列の積は、写像の合成であり、変換系の合成とも言える。ここまでは簡単な概念である。だが、昔から連立方程式をまともに解くことしか考えなかったアル中ハイマーには、ブロック行列を使った解法で、行の入れ替えなど単なるご都合主義にも見える操作を繰り返すことによって、いつのまにか解が得られるのを見ると、なんとも魔法のように思えたものである。また、座標系も軸が直交するとは限らないし、内積は座標系が違えば値も変わるし、外積は三次元で扱うには便利であるが特異に思えた。本書は、空間感覚のない酔っ払いでも、行列式を空間に対応させてくれるところがありがたい。空間を引き伸ばせば、体積拡大率は大きくなり、密度が下がるといったことが容易にイメージできる。行列の演算は、Octaveのような数値演算言語を使えば、LU分解までも一発で計算できるが、本書はLU分解の意義も説明してくれる。

変換系は、それが発散するかどうかは重要な問題となる。もともとの対象が対角行列ならば問題はない。大抵の行列は乗算やN乗すると極端に複雑になる。ところが、うまい具合に正則行列を見つけて対角化できれば、発散するかどうかが判別できる。対角化さえできれば、演算数を大幅に減らし、実際に解ける可能性が出てくる。微分方程式も対角化できれば解ける。固有値の目的は、それを使って行列の対角化ができると見ることもできる。ある行列に固有値と固有ベクトルが求まる絶妙なケースが見つかれば、標準形に持ち込むことができる。ただ、おいらには固有ベクトルが複素数の領域になるとわけがわからない。
ニールス・アーベルの証明やガロア理論の結論では、5次以上の代数方程式の解は存在しない。これは、5x5以上の行列で固有値を求める方法がないということである。つまり、有限回の計算で固有値をピッタリ求める一般的な計算法が存在しない。したがって、コンピュータの計算では、相似変換を繰り返して徐々に対角行列に近づけていくという反復計算が用いられる。本書は、その近似法のアルゴリズムとしてJacobi法とQR法が紹介される。

対角という性質には、複雑な物事を単純化する何かがありそうだ。周波数解析で有名なフーリエ解析やウェーブレット解析では、直交性質を利用する。この数学の美しい性質が、波のゆらぎを観察するのに適しているのも偶然ではない。そして、酔っ払って千鳥足で歩くゆらぎ具合も解析されるのである。夜の社交場を見渡せば、行付けの店が、ことごとく「鴎外通り」から対角に配置されているのも偶然ではない。これも、くだらない精神を酔わせ、人生を単純化する効果がある。

0 コメント:

コメントを投稿