クォータニオンを見よう

次のコースであるAndrew J. Hanson氏による 「Visualizing Quaternion」の会場へ行くと既に人がいっぱいで最前列の席しか空いていませんでした。っていうか、望遠レンズ持っていない私はいつも前のほうの席に陣取っているので関係ないんですけどね(笑)。そんなに大きな会場ではなかったのですが完全に満員になってしまいました。

コースの最初はクォータニオンの歴史の紹介からはじまりました。

クォータニオン(四元数)はいつ発見されたかがハッキリと記録に残っていて、1840年、複素数を使った2次元での幾何学的表現ができるのだったら、これを3次元でできないか?と考え出したのがハミルトン(William Roman Hamilton)。それから3年後の1843年10月16日月曜日、アイルランドのダブリン市にある運河に掛かるブルーム橋を奥さんと一緒に歩いているときにクォータニオンの基礎である

i2 = j2 = k2 = i j k = -1

と言う式が頭に閃いたとのことです。現在でもダブリンにあるブルーム橋には碑文があるそうです。ただ、残念なことにハミルトンが出版した「四元数講義(Lequtures on Quaternions)」は誇大妄想として学会に認められませんでした。後に解説書として執筆した「四元数の基礎(Elements of Quaternions)」にいたっては生前に出版すらされませんでした。

そして20世紀初頭にアメリカのプラグマチズムのサークルによってクォータニオンが再び注目され、今では人工衛星の姿勢制御、そして3Dゲームでも必須な技術となっています。

 

クォータニオンを使う最大の理由のひとつとしてオイラー角で回転制御するときに起きるジンバル・ロック(Gimbal Lock)を避けることができるということです。ジンバル・ロックとは、飛行機などの姿勢制御に使われるジャイロスコープの回転軸を支えるための輪をジンバルと呼び、軸自体をジンバル軸と呼びます。で、ジンバルロックというのはジンバル軸が重なる状態になった時を言います。

これはコンピューターの中でもオイラー角を使っていると同じ事で、ジンバル・ロックに近い状態になると計算誤差が大きくなったり、回転の状態を求めるときにも複数の解が出たりして計算不可能な状態になってしまいます。

中学の数学で2次元の回転を表すのにオイラー角に慣れしたんだ私達にとって3次元でも、そのままオイラー角を使ってしまうのは自然なことなのでジンバル・ロックの問題に直面する人達はかなりいるのではないのでしょうか?


Andrew J. Hanson氏

使ってみると便利なクォータニオンなのですが、もともとは実数、複素数につづく新しい数の系列として考えられたものだったり、式に虚数が使われていたりと、感覚的に理解しづらいという問題があります。

そこで氏はコースの前半をクォータニオンを2次元上での回転を例としながら解説。そしてベルトのトリック、ボールのパズルといった実践を交えながらの解説を行いました。

ベルトのトリックはベルトの両端を右手と左手で持ち、右手で1回転(360度)捻り、右手と左手の端を入れ替えるとベルトは捩れたままになります。これを2回転(720度)にすると、ベルトはまっすぐな状態にもどります。この事から720度回転は単に360度の2回繰り返すのとは意味が違うということを示しています。クォータニオン実装でも回転を720度で扱っている理由のひとつを実際に体験できる例の一つです。

そして、ボールのパズルとはボールを机などの上に置き手のひらで押さえつけるように上下左右に転がす事によってボールを机の平面上をx,y軸とした2つの軸にそって回転することができます。そこで同じように手のひらで動かすことによって机に垂直な軸、z軸にそってボールを回転させることができるでしょうか?という謎かけがありました。正解は手のひらを円を描くように動かすことによってボールはゆっくりとz軸によって回転します。これは2次元の動きによって3度の自由度(DOF)をコントロールできるということを表しています。

そしてコースの表題であるクォータニオンの視覚化ではクォータニオンの数値を長さをもったベクトルで表し、クォータニオンで作られた曲線を3Dの球にを投影したものを紹介しました。詳細はコースノートを見てくださいとの事だったのですが、残念ながらコースノートDVDは会場で配られなかったので、詳細は判りませんでした。


コース後の質問に実際にプログラム動かしながら解説するHanson氏

このプログラム上で前述のベルトのトリックのモデルを実際に動かし、360度に捻ったときと720度に捻ったときの状態を3D画面上で表示したりしました。

質問中にはこのプログラムを発展させてアーティストさん達がDCCツール上でも使えないか?というな質問がでてたりして、直感的なクォータニオンのGUIが求められているということを実感しました。

このリポートを書いている時(8/28/2005)に、クォータニオンの復習でもしようかな?とアマゾンを覗いてたら、9月下旬にHanson氏が執筆した「Visualizing Quaternions (The Morgan Kaufmann Series in Interactive 3D Technology)と言う本が出版されるので、早速オーダーしてしまいました。

前へ 次へ