情報処理学会 インタラクション 2024
IPSJ Interaction 2024

2B-622024/2/28

cellroid3:自律的に再帰的な階層構造を形成する点群アルゴリズム
藤木淳†
概要：本稿では階層構造に着目したアート作品『cellroid3』におけるアルゴリズムを紹介する．具体的には，点群が指定した階層数の再帰的な階層構造となるように各点が自律的に移動する．階層構造の形成前後で点を追加・削除したり移動したりしても，その後自律的に移動し階層構造を維持するアルゴリズムである．本アルゴリズムの基本的なアイデアは周囲の点との距離に応じてその点から離れる速度を変えることである．周囲の点との距離に応じて異なる速度の分布を合算した分布と点との距離を照らし合わせて速度を算出し，速度ベクトルを求める．周囲の全ての点に対してこの処理を行い，求めた速度ベクトルを合算したベクトルをその点の最終的な移動ベクトルとする．これによって全体が分散しつつも，点の分布密度を局所的に変える．アルゴリズムをプログラミングで実装し動作を検証した結果，本アルゴリズムが意図した点群による再帰的な階層構造を形成できていることを確認した．

1. はじめに点群を用いた CG アート作品は少なくない．木本の『Imaginary・Numbers』[1]は複雑な自然現象などを数式によって表現する際の非線形的構造をプログラミングによって映像化した．平川の『the irreversible』[2]は，点の集まりが時間とともに飛び散る映像を逆再生することで鑑賞者に初 期 状 態 に 戻 っ て 行 く 過 程 を 提 示 す る ． Andy の『Aggregation』シリーズ[3]は，Diffusion-limited aggregation
アルゴリズムを用いて，任意の 3D オブジェクトに点を繰り返し堆積させた結果あるいはその過程を映像で提示する．

図 1

階層構造のイメージ

佐藤らの『ISSEY MIYAKE A-POC INSIDE』[4]は，バイオロジカルモーションを応用して，点だけで人物の動きを表現

2. コンセプトするシーンが含まれている．
これまでの点群を用いた CG アート作品では，数理に潜む美の探求や，科学の応用による表現の開拓を目指していたと考える．一方，著者においても点群を用いた複数のインタラクティブアート作品を発表してきた．
『Constellation』[5]は 3 次元空間に存在する点が，画面から見て人や犬，鳥の点の並びと一致した場合に，それらの点から人や犬，鳥が誕生したり，人から犬，犬から鳥といったように別の生き物に変形したりする表現を持つ．『.PET24』[6]は 3 次元空間内に存在する 24 個の点に対して点同士を線で結んだ際に，画面から見て左右対称で一定の枝となる構造を持つパターンが見つかった場合に，その構造を骨格とした生命を想起させる動きが付与される表現を持つ．著者のこれまでの作品に共通する狙いは，鑑賞者に 2 次元と 3 次元の差異に伴う解釈を揺さぶることで体験者に違和感を与える表現の開発と共に，そのような鑑賞者に違和感を与える原理とするアルゴリズムの考案であった．すなわち，人間の認知特性に基づく世界観の構築であった．

近年，著者は自律性に関心を持つようになった．これまでに著者は体験者の解釈を揺さぶることを意図したアルゴリズムに基づく複数の作品を制作してきた．こうした中で開発環境が変わっても狙いとする表現を生み出せるアルゴリズムの考案を通して，その性質である普遍性そのものに興味を持つようになった．つまり出力結果において普遍性を表現したいと考えるようになった．そうした際に生命の自律性に注目するに至った．
このような着想のもと，著者は点群が自律的に組織の形成と解体を繰り返す CG アート作品『cellroid』[7]を制作した．
『cellroid』では，各点が周囲の点群との相対位置や点の種類に応じた４つのベクトルを合算した移動方向ベクトルに基づき狙いとする組織の形成表現が実現できたことを確認した．次に制作した『cellroid2』[8]では，形態を維持しながら自律的に成長したり，怪我等で一部が欠損しても元の形態を復元したりするような生命の性質に注目した．具体的には，各点が図形情報と周囲の点の位置情報を参照し，自律的に移動することで点群のシルエットが期待する図形-----------------------------------------------------------†1 札幌市立大学© 2024 Information Processing Society of Japanとなるアルゴリズムを考案し実装した．こうしたなか，本作では生命の構成要素における階層構造に着目する．すな899

情報処理学会 インタラクション 2024
IPSJ Interaction 2024

2B-62
2024/2/28

わち，細胞の集合体である組織，組織の集合体による器官のように，自律的に形成する多階層的な構造である．具体的には図 1 に示すような再帰的な階層構造である．階層数を指定すると点群がその再帰回数の階層構造となるように各点が自律的に移動する．点群がランダムに配置された初期位置から自律的にこのような位置関係を築く．また，階層構造の形成前後で点を追加・削除したり移動したりしても，その後点群が自律的に移動し階層構造を維持する点群表現を目指す．

3. 関連研究図 2

第３階層までの速度分布を合算した例

個々の移動体が周囲の同種類の移動体の位置関係から移をその点の最終的な移動ベクトルとする．これによって，動速度を算出することで、移動体の集団が自律的に特定の全体が分散しつつも，点の分布密度を局所的に変える狙い運動を遂行するためのアルゴリズムがコンピュータグラフである．また，本表現において集団の大きさは階層が上がィックやロボット研究分野において考案されている．

ほど指数関数的に大きくなる．そのため，階層に応じて対コンピュータグラフィック研究分野においは，Reynolds

象とする距離の範囲を指数関数的に変更する．

らの boid[9]は周囲の対象との位置関係から算出した 3 つの上記の考えに基づき各点における速度を定式化する．階

移動ベクトルの総和を位置に反映させることで生物の群れ層の数を n，点の数を m とする．各点における求める速度の運動を表現した．Lloyd は与えられた点集合の重心を求V は以下のようになる．

め，その重心を新しい点の位置とすることを繰り返すことによって，点を均等に配置するアルゴリズムを考案した𝑛𝑚

𝑉 = ∑ ∑ 𝑆 (1 −[10]．Lloyd のアルゴリズムを様々な高速化する試みが考案

𝑖=1 𝑗=12

𝐷𝑗 − 𝐴𝑖 𝐵)
𝑖+1
𝐴 𝐵 − 𝐴𝑖 𝐵

されている．Adrian のアルゴリズム[11]では，配置された

ここで S は点の移動速度を表す任意定数であり，D は点間点をもとにボロノイ分割し，分割された領域が正方形に近の距離である．A と B は階層における集団の大きさを表すづくよう，変形した領域の中心に点を移動する．以降，こ任意定数であり， A の値が大きいほど１集団における点のれを繰り返すことで限りなくもとの領域面積を保ちつつ周数が増す一方で集団の数は少なくなる．B は Ai に掛けるバ囲の点との距離が均等になるよう収束していく．

イアス定数であり集団の密度の調整に用いる．

ロボット研究分野においては，群ロボットの自律的な移動のためのアルゴリズムが考案されている．Swagatam らの5. 実装と結果

アルゴリズム[12]や Arpinelli らのアルゴリズム[13]のよう本アルゴリズムを Processing 4.3 を用いて『cellroid3』 にに魚の群れ，鳥の群れ，蟻のコロニー形成，細菌の成長，実装した．本アルゴリズムは点同士を離す特性上，一度点動物の放牧といった生物の挙動を模倣するアプローチが用群を分散させてしまうと階層数を減らしても元に戻らない．

いられることがある． Mohammad らは群知能に基づき適

そこで，上記アルゴリズムに加え，常に点同士が近づく処応度関数によって定義される最適な位置を探して確率的に理を加えた．初期状態ではランダムの位置に 162 個の点が目的とする図形形状を描く[14]．

配置されている．実行後，各点は指定された階層数の階層

本研究では先行研究で対象とされていない階層構造に構造を形成するように移動する．一定経過すると階層数が注目する．上記で紹介したアルゴリズムのように各点が周１つ増え，最大で４階層まで上げられるようにした．４階

囲の点との位置関係から導き出される移動ベクトルの総和層に達すると逆に１階層ずつ下がっていき，1 階層に達すにより階層構造が形成されるよう最適な位置に到達するア

ると再び階層数が上がる動作を繰り返す．また，本コンセルゴリズムを目指す．

プトに基づき，体験者が任意に点を追加・削除したり，カ4. アルゴリズム

ーソル位置の一定範囲内の点を範囲外に移動するインタフェースを実装した．

本アルゴリズムの基本的なアイデアは各点が周囲の点と図 3 が実行結果の例である．S の値は 0.02，A の値は 4，の距離に応じてその点から離れる速度を変えることである．

B の値は 64 とした．図の(a)は階層数を 1，(b)は 2，(c)は 3，

図 2 のように周囲の点との距離に応じて異なる速度の分(d)は 4 に設定した場合である．図 4 は点を追加している様

布を合算した分布と，点との距離を照らし合わせて速度を子，図 5 は点を削除している様子，図 6 はカーソルを点に算出し，速度ベクトルを求める．周囲の全ての点に対して近づけ一定範囲内にある点を移動させた後にカーソルを点この処理を行い，求めた速度ベクトルを合算したベクトルから離した様子である． 図 7 は前述の条件において A の© 2024 Information Processing Society of Japan900

情報処理学会 インタラクション 2024
IPSJ Interaction 2024

(a)

2B-62
2024/2/28(b)
図 3

図4(c)

(d)

階層を上げていった様子

点の追加

図8

失敗した集団の密度が異なることを確認した．体験者は S の値を変える
図5

点の削除ことで期待する密度を変更可能である．一方で，点の位置によっては図 8 のように集団が崩れる箇所が生じることがあることを確認した．

7. まとめと今後の展望
本稿では，点群が自律的に再帰的な階層構造を形成する『cellroid3』のアルゴリズムを述べた．本アルゴリズムを実
図6

点の移動装し検証した結果，点を追加・削除，移動しても意図した再帰的な階層構造がある程度形成できることを確認した．
本アルゴリズムは要素数がほぼ均一な集団を形成し，集団を形成時における各要素の移動量が少ないという性質がある，そのため，本アルゴリズムは均等に多階層のグループを迅速に形成する用途に応用可能と考える．一方で，集団が崩れる場合を確認した．この原因を特定して解決法を導

図7

A の値の変更

き堅固なアルゴリズムとした．
アート表現として今後実践したいことが 2 点ある．1 点値を変更した場合の様子である．
『cellroid3』を操作してい目は GPU を用いた大量の点群表現である．本作は CPU 演

る映像は動画サイト[15]で確認できる．

算で実装しているため GPU 演算に比べ処理速度が遅い．

6. 考察実装した「cellroid3」を実行した結果，点群が自律的に目的とする再帰的な階層構造を形成した．また，点を追加・GPU で演算し大量の点群を処理可能とすることで多階層表現を実現したい．2 点目はロボットへの実装である．CGではなく物理メディアとするロボットにより生命らしさが身近に感じ得るようになると考える．

削除・移動してもその後に階層構造を形成したことから本アルゴリズムが点群による再帰的な階層構造を形成可能で参考文献であることを確認した．また， S の値を変えることで集団[1] “Imaginary・Number”.

© 2024 Information Processing Society of Japan901

情報処理学会 インタラクション 2024
IPSJ Interaction 2024

2B-622024/2/28

https://j-ediaarts.jp/award/single/imaginary%e3%83%bbnumbers2006/, (参照 2023-12-07).
[2] “the irreversible”.
http://counteraktiv.com/wrk/irv/, (参照 2023-12-07).
[3] “Aggregatio”.
https://www.andylomas.com/aggregation.html, (参照 2023-12-07).
[4] “ISSEY MIYAKE A-POC INSIDE”.
https://euphrates.jp/ISSEY-MIYAKE-A-POC-INSIDE, (参照2023-12-07).
[5] “Constellation”.
https://youtu.be/434wQBvQpkM, (参照 2023-12-07).
[6] “.PET24”.
https://youtu.be/j0mM0NEV32, (参照 2023-12-07).
[7] 藤木 淳. cellroid-変動と崩壊を繰り返す自律的組織化アルゴリ
ズム. SCU JOURNAL OF DESIGN & NURSING 2022 札幌市立大学論文集. 2018, vol. 12, no. 1, p. 11-16[8] 藤木 淳, 三上 拓哉. cellroid2 ―自律的に図形を形成する点群
CG―. SCU JOURNAL OF DESIGN & NURSING 2022 札幌市
立大学論文集. 2022, vol. 16, no. 1, p. 13-21[9] Reynolds, C.W., et al.. A distributed behavioral model. In Proc. ofComputer Graphics, 21(4), 1987, p. 25-34[10] Lloyd, S. P.. Least squares quantization in PCM. IEEE
Transactions on Information Theory. 1982, vol. 28, no. 2, p. 129–137.
[11] Adrian, A.. Weighted Voronoi Stippling. In Proc. of NPAR 2002,
2002. p. 37-43[12] Swagatam, D. et al.. Swarm intelligence algorithms inbioinformatics. Computational Intelligence in Bioinformatics.
2008, p. 113-147[13] Arpinelli, P. et al.. New inspirations in swarm intelligence: asurvey. International Journal of Bio-Inspired Computation. 2011,vol.3, no. 1, p. 1-16
[14] Mohammad, M. et al.. Creativity and autonomy in swarm
intelligence systems. Cognitive computation. 2012, vol.4, no. 3, p.
320-331[15] “cellroid3”.
https://youtu.be/ZxHcEHWFX9I, (参照 2023-12-14).

© 2024 Information Processing Society of Japan902