概要
本作品は、複雑な挙動を示す自作セル・オートマトンを用いたオーディオ・ビジュアル作品である。ALife(人工生命)の代表的なモデルの一つであるセル・オートマトンのプログラムを実行し、複数の要素が相互に作用しつづけることで、計算結果として視覚と音の変化を連続的にその場で生成する。
AI(人工知能)生成を含む様々なビジュアル作品では、作者が見せたい像をあらかじめ定め、それに向かって映像を形作り、その結果を固定したデータとして提示することが多い。本作品で作者が設計しているのは、ピクセル単位の局所的なルール、アルゴリズムである。描画はそのアルゴリズムのリアルタイム反復実行として進み、要素間の相互作用から作者が事前に意図していない多様な現象が継続的に生じ、変化し続ける。
ここで試みているのはあらかじめ一義的な意味や主張、解釈を作品として固定することではなく、近傍の取り方、複数種族の関係、生命力、視覚と音の連動といった計算ルールを設計し、その相互作用から変化が生まれ続けるボトムアップで動的な生成システムを構成、提示することである。


ALifeとセル・オートマトン
ALife(人工生命)とは、生命の本質とは何かという問いに対し、人工的なシステムを実際に構築・作動させることで、その理解に迫ろうとする研究アプローチである。ここで重視されるのは、見た目が生物らしいかどうかではなく、相互作用、自己組織化、変化、持続、予想外の振る舞いがどのように現れるかである。
セル・オートマトンはALifeの代表的なモデルの一つである。格子状に並んだセルがそれぞれ近傍セルの状態にもとづいて更新される計算システムであり、全体を統括して制御する司令塔は存在しない。局所的なルールの反復から、秩序、崩れ、循環、増殖のような複雑な現象が生じ、その結果、生命的に見えるふるまいが現れることもある。
最もよく知られたセル・オートマトンはジョン・コンウェイのライフゲーム(1970)である。ライフゲームでは、各セルが生と死の二状態を持ち、周囲の生セル数に応じて次の状態が決まる。その単純な条件から、静止する形、周期的に振動する形、空間を移動する形などが現れる。
セル・オートマトンは、現在では流体計算、材料の微細組織形成、都市成長のモデル化、交通流解析、森林火災の延焼シミュレーションなど、さまざまな技術分野で活用されている。一方で、表現媒体としても古くから多様な実践が行われており、デジタル作品にとどまらず、彫刻、織物、建築など、物理的な素材や空間を伴う表現にも広がっている。また、ビジュアルだけでなく音や音楽を生成する仕組みとしてセル・オートマトンを活用した検討も行われている。
本作品について
本作品は、複雑な挙動を示す自作セル・オートマトンを用いたオーディオビジュアル作品である。ここで用いているのはライフゲームなどの古典的なセル・オートマトンの再現ではない。本作品のルール上の特徴は次の通りである。
- 近傍セルをムーア近傍やノイマン近傍のような周囲1セルに限定せず、初期パラメータ設定時にランダムもしくは規則性のある選択を行う
- 異なる近傍セルを設定した複数の種族を用意し、種族間で攻撃、同化、無視といった差異を持たせる
- 各セルに生命力のパラメータを持たせ、動作によって生命力が増減し、種族間の勝敗にも影響する
これらの局所ルールの反復から、従来のセル・オートマトンよりも多様で複雑な挙動が現れる系を作り出すことを試みた。この結果、湧き立つような有機的な動きや、直線的で無機的な動き、そしてそれらが織りなすさまざまなパターンが現れた。さらに本作品では、このようなミクロな挙動を示す系に対し、キャンバスに絵具を垂らすように定期的に外部から単純な図形を与えている。投入された図形はただちにセル・オートマトンの一部として振る舞い始め、周囲との局所的な相互作用を通じて崩れ、増殖し、別のパターンへと変化していく。そのため観客は、外部入力そのものではなく、それが系の内部でどのように変換され、全体の像へ展開していくかを観察することになる。
オーディオにおいては、セルの変化を検出して色相・明度・彩度によって生成する音の周波数やその他パラメータを変化させることで、ビジュアルの変化に対応した環境音を生成する。こうして、画面内で起きている変化は視覚だけでなく聴覚にも現れ、ビジュアルとオーディオは同じ生成過程に由来するものとして結びつく。
本作品では、実行開始時に近傍セルの設定や、ビジュアルとオーディオの生成に関わる各種パラメータセットが決定され、その設定に従ってアルゴリズムがリアルタイムに反復実行される。再実行すると別のパラメータセットが決定されるため、同じプログラムであっても異なる条件のもとで生成が始まり、異なる結果が現れる。固定された動画を再生するのではなく、観客は、計算によって視覚と音がその場で更新されていく過程を見ることになる。
このように、ここで試みているのはあらかじめ一義的な意味や主張、解釈を作品として固定することではない。近傍の取り方、複数種族の関係、生命力、視覚と音の連動といった計算ルールを設計し、その相互作用から変化が生まれ続けるボトムアップで動的な生成システムを構成、提示することである。こうした方法を通じて、人間が最終的なかたちを直接決めるのではなく、計算の反復と要素間の相互作用から立ち上がる、コンピュータだからできる表現は何かを検討していきたいと考えている。






補記 AIとALife
AI(Artificial Intelligence)とALife(Artificial Life)は、ともにコンピュータ上で出力を生成することができるため一見すると混同されやすいが、その方法論は大きく異なる。
本来、AIは非常に広い研究領域であるが、近年一般に「生成AI」として言及されるものは、機械学習、特に大規模データを用いて訓練された巨大な深層学習モデル(例えば数GBのファイルサイズ)を用いた出力システムを指していることが多い。この種のシステムは、与えられたデータ、目的関数、評価基準にもとづいて出力を最適化するものであり、人間が「このような出力を得たい」という方向性を上位から与えるという意味では、生成の過程そのものが非常にトップダウン的となる。また、その内部表現や判断過程を人間が十分に解釈することは難しく、仕組みがブラックボックスとなるケースが多い。
これに対して、ここで扱う古典的なALife的システムは、生命らしい振る舞いや自己組織化を、局所的な相互作用の反復から合成的に立ち上げようとする立場に属している。設計者は要素の状態、更新規則、相互作用範囲などを明示的に記述し、その局所ルールの反復から全体の挙動がどのように創発するかを観察する。したがって、一般的にはルール記述の観点でのブラックボックス性は非常に低く、ルールを記述したプログラムコードは相対的に小さなものとなる(例えば数KBから数十KBのファイルサイズ)。
ただし、ルールが明示的であることは、結果が予測可能であることと必ずしも一致しない。むしろALifeの特徴は、全体のかたちを上から直接与えるのではなく、局所的なルールの積み重ねから全体のふるまいが立ち上がるという意味で、きわめてボトムアップ的である点にある。明示的に設計した複数の機構が相互作用し、さらにパラメータの初期設定にあえて確率的要素を導入すると、各実行において作者の予期しない異なるパターンやダイナミクスが現れる可能性がある。この意味で、ALifeにおける予測困難性は、主として「システム内部の過程が人間にとって解釈しにくいから」ではなく、「過程は明確だが局所相互作用の累積から全体のふるまいが結果的に立ち上がるから」生じる。
もっとも、両者を単純に二分することも現在では難しくなりつつある。近年では、ニューラル・セル・オートマトンのように、セル・オートマトンの局所更新則をニューラルネットワークで表現し、それを機械学習によって獲得させる研究も進んでいる。
補記 小さなシステム
私は現時点において、小さなシステムから複雑な挙動が生まれることに魅力を感じている。巨大なシステムから複雑な挙動が生まれる場合よりも、小さな記述から予想以上に多様な変化が出ることに意外性を感じるからかもしれない。これは正しさや優劣の主張ではなく、単にどの規模のシステムに関心を向けるかという制作上の選択である。
ファイルサイズについて先に述べた例で言うと、数十KBのサイズとは大まかにいえばアルファベットで約数万文字分であるのに対し、数GBのサイズとは約数十億文字分となる。この数十KBというサイズはブロックチェーン上にプログラムをそのまま書き込むことができるサイズである。
ここで注意すべきは、コンピュータ上で動かすプログラムを作った場合に、そのプログラムのファイルサイズは全てを内包しておらず、その基盤レイヤーにはブラウザ、グラフィックドライバ、各種ライブラリ、OSなどの多数の巨大なシステムが存在するため、プログラムのファイルサイズの大小だけでシステム全体の大きさを語ることはできない点である。一方で、更に考えると下位レイヤーは膨大な汎用機能を含むために巨大化したシステムであるともいえる。
事実として、今回の作品のアルゴリズムのコアはメモリ容量や処理能力がきわめて小さいマイコンに移植して実行可能であり、LEDパネル作品として展示している。しかし、例えばこのマイコンに巨大な深層学習モデルを移植することは現実的ではない。この移植可能性は、少なくとも本作品の中核的な計算が小さな構成で動くことを示している。もちろん、大きい/小さいをどの層で判断するか、深層学習モデルを極限まで簡素化すればマイコンにも実装できるのではないか、といった論点は残る。しかし少なくとも現実的な機能を失わないレベルで小さな仕組みとして移植可能であることは、相対的に小さなシステムであると表現することは十分可能であると考えている。
補記 拡張セル・オートマトン
セル・オートマトンは長い研究の歴史を持ち、多様なセル・オートマトンが提案、検討されてきた。そのため、分類の観点も多数存在する。本作品を各種の観点で分類すると以下となる。
- 1次元/2次元/3次元:2次元セル・オートマトンである。
- 正方格子/非正方格子:セルは三角形や六角形ではなく単純な正方格子である。
- ムーア近傍/ノイマン近傍/拡張近傍:固定的なムーア近傍やノイマン近傍ではなく、実行開始時に設定される拡張近傍である。近傍の設定は初期にランダムまたは規則的に行われるが、設定後の更新ダイナミクス自体は決定論的である。
- 総和/非総和:ライフゲームのように近傍の合計値で判断するのではなく、特定の周囲の配置パターンを直接判定する非総和型である。
- 同期/非同期:状態を一斉更新する同期型である。
- 二値/多値/連続値:色や生命力が8ビットの有限離散値として保持されるため、多値型(多状態型)である。
- 決定論/確率論:初期パラメータセットの決定には確率的乱数が用いられているが、更新規則そのものには確率的な要素は含まれず、決定論的である。
- 単層/多層:複数層の状態場を持たない単層系である。
- 単種/多種:種ごとに異なる振る舞いを示す複数の種が共存する多種系である。
- 一様/非一様:多種であり種ごとに振る舞いは異なるが、ルールはセル位置自体には依存しない。すべてのセルに同一の更新規則を適用し、その内部で種別に応じて分岐するため、一様である。
- 可逆/非可逆:前状態を現在から一意に復元できないため、非可逆である。
狭義の古典的セル・オートマトンと比較すると、本作品は2次元正方格子・同期更新・一様規則といった基本的特徴を保持しつつ、拡張近傍、多種相互作用、非総和型の判定規則を備えている。そのため、一般化もしくは拡張セル・オートマトンと表現するのが適切である。
補記 セル・オートマトン、ピクセル・ソーティング、フィードバック・ディストーション
セル・オートマトン、ピクセル・ソーティング、フィードバック・ディストーションは、どれも画素グリッド上で変化を起こすため、一見すると似て見えることがある。特に、画面上でピクセルが隣へ移動したり、模様が増殖・流動・崩壊していくように見える場合、どれも「ピクセルが近くへ動いているような処理」に見える。しかし、画素や模様の動かし方を直接的に指示する処理と、局所的な更新規則の反復から結果として動きが現れる処理とでは、アルゴリズムの考え方が異なる。
- セル・オートマトンでは、各セルの次状態を近傍セルの状態と規則から決める。現在セルと周囲セルを読み、その関係に基づいて次の状態を作るため、見た目の動きよりも、規則によって状態がどのように更新されるかが焦点となる。ピクセルの動きやパターン生成はあくまでその結果であり、この意味でボトムアップ的な性格が強い。
- ピクセル・ソーティングでは、画素値をキーにして画素の順序を組み替える。輝度、色相、RGB値などに基づいて、行・列・区間・マスク領域内の画素を並べ替えることで、流れや引きずりのような見え方を作る。ここでは画素の再配置そのものが処理としてより直接的に明示されており、相対的にトップダウン寄りである。
- フィードバック・ディストーションでは、前フレームの画像を参照し、参照座標をずらしてどの位置から画素を読むかを変える。前フレームの読み取り位置をずらして再サンプリングすることで、画素が近傍へ移動したり、画像が流れたり変形したりするような見え方を作る。ここでも前フレームをどう変形して読むかが処理としてより直接的に明示されており、相対的にトップダウン寄りである。
つまり、「近傍に動かす」ことと「近傍状態から次状態を決めた結果として動きが現れる」ことは似て非なるものである。後者では、局所的な更新規則の反復から全体パターンが立ち上がるため、単に移動方向や再配置を指定する処理に比べて、想定外の複雑さや自己組織的な振る舞いが生まれる余地が大きいと考えられる。