このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

ホッピングボール:何が面白いのか、どんなことを考えるのか

前回の記事で、ホッピングボール・マシンがどんなものであるか、おおよそのイメージはつかめたと思います。こんなオモチャをいじって何が面白いのでしょうか? どんな遊びができるのでしょうか? 素材が与えられただけではうれしくないので、今後考えるべき課題を並べてみます。とはいっても、これらの課題すべてを当ダイアリー記事で扱うつもりはありませんけどね(無理だもん)。

どれかの課題に興味を持った方は、是非にチャレンジしてみてくださいな。個々の問題にあまり興味が湧かない人は、見出し(問題の名前)だけ眺めて最後の節を読んでみてください。

内容:

  1. ホッピングボール・マシンの記述問題
  2. ホッピングボール・マシンの構造推測問題
  3. ホッピングボール・マシンの定義問題
  4. ホッピングボール・マシンの同値性判定問題/分類問題
  5. ホッピングボール・マシンの標準化(最小化、簡約)問題
  6. ホッピングボール・マシンの実現問題
  7. ホッピングボール・マシンの保証問題
  8. その他の問題、楽しいところなど

ホッピングボール・マシンの記述問題

具体的な個々のホッピングボール・マシンを書き表せないと、議論やコミュニケーションができません。前回既に述べたように、内部構造も含めた絵を描けばホッピングボール・マシンを間違いなく記述できます。が、これがいつでも最適な記述方法とは限りません。例えば、内部構造には一切言及しないで(つまり、ブラックボックスのまま)、ホッピングボール・マシンの動作を記述するにはどうしたらよいでしょうか?

目的に応じて、適切なホッピングボール・マシンの記述方法を開発する必要があります。この課題を、「ホッピングボール・マシンの記述問題」と呼ぶことにします。

ホッピングボール・マシンの構造推測問題

前節で例に挙げた、ホッピングボール・マシンを外部から見ての「動作の記述」ができたとします。すると、そのような動作をするホッピングボール・マシンの内部構造はどうなっているか? という疑問が湧きます。

外部から観測できる動作(それを「振る舞い」と呼ぶのですが)から、内部構造を推測する問題を「ホッピングボール・マシンの構造推測問題」(まんまや)と呼びましょう。ここで内部構造とは、ホッピングボール・マシンの箱の中に入っている有向グラフのことです。「太鼓の音を聞いて太鼓の形を推測できるか?」という問題がありますが、ちょっと似た感じです。

同じ観測データを与えるような内部構造(有向グラフ)を一意的に決めることができるとは限りません。例えば、次の2つのホッピングボール・マシンを見てください。

これらは違った内部構造(有向ブラフ)を持ちますが、試行(実験・観察)を繰り返すだけで違いを見分けることはできません。箱の蓋を開けない限りは同じように見えてしまいます。

今説明した事情から、内部構造を推測する場合は、「とにかく何でもいいから内部構造をひとつ推定する」、あるいは「適当な付帯条件を付けて内部構造を絞り込む」ような方針で考えます。

ホッピングボール・マシンの定義問題

「えっ? 定義は済んでいるのでは」と思うかも知れませんね。確かに、前回の説明がおおよその定義になっています。しかし、細部まで厳密には決めていませんでした。

例えば、下図のようなマシンはホッピングボール・マシンと呼んでよいでしょうか?


  1. 入り口穴または出口穴がない箱も認めてよいでしょうか?
  2. 入り口穴と出口穴を直接結んでもよいでしょうか?
  3. 内部ノードとつながっていない穴があってもよいでしょうか?
  4. 内部ノード間を2本以上の辺で結んでもよいでしょうか?

これらの問<とい>に対して、絶対的に正しい答はありません。状況や問題に応じて、適切な定義を与えます。ホッピングボール・マシンの定義にいくつかの変種(バリアント)があってもよいのです。特定の問題を解くために扱いやすい定義を探したり、複数の定義のあいだの関係を論じたりするのが「ホッピングボール・マシンの定義問題」です。

ホッピングボール・マシンの同値性判定問題/分類問題

2つのホッピングボール・マシンが、ある基準で見ると“同じ”とみなせることがあります。例えば、構造推測問題の例のように、2つのホッピングボール・マシンが「箱を開けないで外から実験・観察していると同じに見える」ことがあります。箱を開けてみる場合でも、「内部の有向グラフに、許された変形を施すと相互に移りあえる」ときに同じとみなせるかもしれません。

このような同値性の基準を設けて、与えられた2つのホッピングボール・マシンが同値であるかどうかを判定する(判定のアルゴリズムを与える)問題が「ホッピングボール・マシンの同値性判定問題」です。また、同値性の基準により、すべてのホッピングボール・マシンを分類することも考えられます。

ホッピングボール・マシンの標準化(最小化、簡約)問題

前節で述べたごとくに、適当な同値関係を設定して、ホッピングボール・マシンの分類を企てたとしましょう。例えば、外部から観測できる動作が同じであることを同値として分類するとか。通常は、同値なホッピングボール・マシンはたくさんあるので、そのなかで標準的(canonical)なものを1つだけ選び出したくなります。

分類した各種別ごとに1つの標準的マシンが存在するような状況が望ましいわけです。標準的マシンはたいてい、何かの量(例えば内部ノードの個数)が最小であるとか、構造が最も簡単であるとかで特徴付けられます。そこで、与えられた任意のホッピングボール・マシンから出発して、なにかを最小にしたり、構造を簡約する手続きを探すことになります。

最小化や簡約は実用的な意味でも重要です。同値性を保ちながら、内部構造をより良くすることなので、リファクタリングと言ってもよいでしょう。最小化や簡約の手続きはリファクタリング・パターンに相当しますね。

標準的マシンとは何かを定義し、それをうまく作る手順を求めることが「ホッピングボール・マシンの標準化問題」です。なお、標準化は正規化とも呼びます。

ホッピングボール・マシンの実現問題

「こんなホッピングボール・マシンが欲しい」と条件や仕様を提示されたとき、その条件/仕様を満たす具体的なホッピングボール・マシンを構成する問題が「ホッピングボール・マシンの実現問題」です。

これは、構造推測問題と標準化問題の組み合わせだと言えます。与えられる条件/仕様は振る舞いの記述ですから、振る舞いに対応する内部構造を推測します。また、条件/仕様のなかには最小性や最簡性も含まれる場合が多いので、最小化/簡約手続きを実行します。

最初に与える条件/仕様を十分に明確にするには、前もってホッピングボール・マシンの記述問題/定義問題に解答しておく必要があります。

ホッピングボール・マシンの保証問題

与えられたホッピングボール・マシンが、ある望ましい性質を持つことを確実に示すという課題を「ホッピングボール・マシンの保証問題」と呼びましょう。例えば、ボールを入れたら必ずいつかは出口穴から出てくる(永久に待たされることはない)ことを保証するとかです。

もちろん、そもそも当該の性質を持たないホッピングボール・マシンに保証を与えることはできません。ですから、ホッピングボール・マシンがある性質を持つか持たないかを判定する問題だと言ってもいいでしょう。

●その他の問題、楽しいところなど

次のような問題もあります。

  1. 面白いホッピングボール・マシンの例をいろいろ見つける。
  2. ホッピングボール・マシンにより計算を実行する。
  3. ホッピングボール・マシンの計算能力を調べる。
  4. ホッピングボール・マシンと他の計算モデルの関係を調べる。
  5. ホッピングボール・マシンにより現象を説明する。
  6. ホッピングボール・マシン全体からなる社会の構造を調べる。

僕が「面白いなー」と思うのは、ボールが動き回るだけの仕掛けなのに、波や熱のような物理現象とかなりのアナロジーがあることです。その意味で、ホッピングボール・マシンは離散物理(discrete physics)の対象物だともいえます。離散物理とは、連続現象の離散近似/離散モデルを扱うだけの分野ではなくて、計算や組み合わせ(combinatorics)の現象に対して、物理的アナロジーを使うアプローチでもあります。

ホッピングボール・マシンを素材に、「マスロフ式算数がやたらに面白いんですけど」で触れた脱量子化(dequantization, 準古典化)を、プランク定数を使わずに印象的に説明できます。不定性(モヤッとしたひろがり)を持つ代数をシャープにすると、粒子の古典軌道が出現します。

計算現象と物理現象の類似性の由来は、僕にはよくわかりませんが、同じ幾何学的構造を持っているのはどうも確かのようです。状態遷移と模倣、状態空間の簡約などを絵に描いてみると、ホモトピーコボルディズムに似た状況が見えます。

ホッピングボール・マシンを適切に定義して(定義問題を解いて)、すべてのホッピングボール・マシンを全部一度に考えると、それらは圏をなします(ホッピングボール・マシンは圏の対象ではなくて射です)。単なる圏ではなくて、モノイド圏や高次圏の構造も持ちます。標準化の手続きに関連して、モナドや随伴も登場します。

紙に描いて手で触れる単純な対象物に、アブストラクトナンセンスな道具立てが効果的に使えて具体的な結果を出せるところが楽しいですね :-)