mitsuyoshi-yamazaki / ALifeGameJam2019

ALife Art "BlindPainter"
https://mitsuyoshi-yamazaki.github.io/ALifeGameJam2019/
MIT License
9 stars 3 forks source link

なんでも #1

Open mitsuyoshi-yamazaki opened 5 years ago

mitsuyoshi-yamazaki commented 5 years ago

具体的になってきたら独立issueにしてください

ayu-mushi commented 4 years ago

こんな感じで動画にして公開しようと思います https://vimeo.com/373430284 (開発の経緯は説明欄に書こうと思っています)

mitsuyoshi-yamazaki commented 4 years ago

いいですね

mitsuyoshi-yamazaki commented 4 years ago

大きさが進化で変わるようにしてみましたが、とくにいじらずにやると、小さいやつが大量に発生します

これはよくある失敗例っぽいですね ある形質(ここでは体の大きさ)に最適解があるとそこに落ちて抜けれなくなるとそういう進化になりやすいです リソース消費の少なさはそういうことになりやすいですね

回転させるとそうならないというのは面白い

mitsuyoshi-yamazaki commented 4 years ago

そういえば、この人工生命の名刺を作ったので良ければ使ってください 元ファイルを Google Drive に上げたので編集できます Sketch で作ったので CMYK で印刷するとかなり色がくすみますが…

TGS v0 1 0 表 印刷入稿

ayu-mushi commented 4 years ago

人工生命の名刺…!

ayu-mushi commented 4 years ago

YouTubeにはアップロードできたのですが、ニコニコに上げようとするとなぜか画面が崩壊してしまいました https://www.youtube.com/watch?v=bfI8mu9B8NU&feature=youtu.be

ayu-mushi commented 4 years ago

ニコニコにもアップロードできました! https://www.nicovideo.jp/watch/sm35998123

ayu-mushi commented 4 years ago

geneLength=1でやっていると、共食い種が有利なことが多い気がします。共食い→繁殖がエネルギー効率の良い移動方法となっているのでしょうか?

mitsuyoshi-yamazaki commented 4 years ago

そうかもしれませんね より遠くへ移動できれば、同種にまだ食べられていないリソースに手が届きますしね

mitsuyoshi-yamazaki commented 4 years ago

この生命は種が安定して繁栄し続けないので観察が難しいな… 例えばロトカ・ヴォルテラのような安定した系が作られることがない

環境が変化し続けるために生命も安定しない、と考えると、ここでは環境 = 他の生命なので突然変異率をさらに下げればいいのかな

mitsuyoshi-yamazaki commented 4 years ago

突然変異率を現状の1/100にしてみたら、数種の生命のみで観察しやすい状態になりました 平衡状態になるかはまだわからない

https://mitsuyoshi-yamazaki.github.io/ALifeGameJam2019/?art_mode=0&population_size=1000&single_gene=0&mutation_rate=0.0003

ayu-mushi commented 4 years ago

私が考えているのは、シンプル化して力学系として調べやすくすることです。衝突が位置によらず一定確率で起こる0次元世界や、2種だけのモデルなどの振る舞いをまず調べてみるといいのではないかと思っています。より高速化し、生物種数 (訂正: 種数ではなく個体数) を増やすとグラフの振る舞いがなだらかになるかも?というのもあるかもしれません。

mitsuyoshi-yamazaki commented 4 years ago

いいですね ALife2019では広島大学の田中先生がそのような発表をしていました

https://home.hiroshima-u.ac.jp/~shinpei/study.html 動く油滴の二次元的な動きをgray-scottでモデル化できるという話でした

ayu-mushi commented 4 years ago

リンクありがとうございます。興味深いです。

mitsuyoshi-yamazaki commented 4 years ago

memo

きのこが土壌の養分を消費しながら次々に成長することで、一点から養分のある方に広がりきのこの輪が出現するフェアリーリングという現象があり、同じ現象はこの人工生命でも起きている

土壌の養分が時間で回復するなら、輪は拡張されてチューリング波のようなパターンを描くはずであって、この人工生命ではキャンバスサイズが小さいがそのようなパターンがありそうな気がする →キャンバスサイズを拡張したうえで mutation_rate = 0, リソースと初期遺伝子を設定すれば観察できるのではないか

フェアリーリング x チューリング派については研究があった https://t.co/hcrZrfIWhh?amp=1

mitsuyoshi-yamazaki commented 4 years ago

memo

GAを使ったダーウィニズムとラマルキズムの比較研究では、ダーウィニズムは「変化する環境」に対しての適応性を得たという結果だったが、それはどのようにコーディングされているのか? (個体の遺伝子にはそのような情報量を入れられないはず

mitsuyoshi-yamazaki commented 4 years ago

あったこれだ https://repository.kulib.kyoto-u.ac.jp/dspace/bitstream/2433/96090/1/KJ00004755637.pdf

ayu-mushi commented 4 years ago

可塑性があるという話なら、個体の遺伝子に入れられると思いますけど (孤独相/群生相が切り替わるようにするなど)、そういうことではなくですか?

mitsuyoshi-yamazaki commented 4 years ago

自動でスクリーンショットを保存するようにしました

https://github.com/mitsuyoshi-yamazaki/ALifeGameJam2019/pull/44/files/ec1373a4305e5c9170679fed0482f3559ac24c09..12cc3181ba9afcf6c63deecf6757e3dfa2eebf8b

masterを整理したら諸々取り込みます

mitsuyoshi-yamazaki commented 4 years ago

可塑性で説明つくかもしれないですね

環境によって生態が切り替わる生き物もどうやって進化したのか気になりますね

mitsuyoshi-yamazaki commented 4 years ago

赤系も良い 緑はいまいち

Screen Shot 2019-12-10 at 0 58 56 Screen Shot 2019-12-10 at 0 59 18

ayu-mushi commented 4 years ago

メモ: 供給されるエサの遺伝子の頻度を空間上の位置によって連続的に変化させるようにしたらそれを食べる生物が場所ごとに分布してカラフルになるのではないか

ayu-mushi commented 4 years ago

(今のprocessingjsでのコードは、フラグとif文が多い。 ですが、本来、フラグ&if文ではなくクラス&ディスパッチングで実現すべき?) (モード周りをフラグにしてしまっただけで、そこまで多いわけではない?)

mitsuyoshi-yamazaki commented 4 years ago

モードはそれぞれ排他なのでenumで表現するべきですね ただURLパラメータを使っている以上フラグはある程度残ると思いますし、JSのコードは簡単にフラグで書いていいかなと思っています

mitsuyoshi-yamazaki commented 4 years ago

フィールドサイズ、population size を極端に大きくした場合に、局所多様性が生まれるようなフィールドの大きさはどのくらいか

mitsuyoshi-yamazaki commented 4 years ago

顕微鏡で見た微生物のような、観察しやすい密度にできないものか 🤔

ayu-mushi commented 4 years ago

メモ:多ビットの場合の ビットの一致率を使った捕食判定だと、1ビットだとできる「青系の生物だから紫系を捕食するだろう」みたいな推論がしにくい? (数の近さで判定しているわけではないので0111と1111は色はかなり違うが一致率は色が近い1110と1111との場合と変わらない)

ayu-mushi commented 4 years ago

明日ここの発表会でBlind Painterについて発表します https://jack-web.herokuapp.com/

ayu-mushi commented 4 years ago

スライドはこれです https://docs.google.com/presentation/d/e/2PACX-1vT9UU8q_UJui6sAmXekk9mNoPN6oOgDV_XBsK8CwRVq9mC6fyyowDeFAlvAEtKCzvRUHVUvj9rFfVt8/pub?start=false&loop=false&delayms=3000&slide=id.p

ayu-mushi commented 4 years ago

メモ: 前に一次元の棒のを作ったが、生物が重なって見にくいので画面は二次元、当たり判定は一次元 (x軸,y軸片方のみで判定) というのも考えられるかも

ayu-mushi commented 4 years ago

次元を当たり判定に関わるものとするなら、z座標は見えないけど当たり判定上は存在するということも可能

mitsuyoshi-yamazaki commented 4 years ago

https://twitter.com/hardmaru/status/1209468723792244745?s=20

ayu-mushi commented 4 years ago

面白そうですね!

mitsuyoshi-yamazaki commented 4 years ago

成り行きでふたつの形式で遺伝情報※が実装されているが、このふたつの形式のどちらが有利(とは?)か実験したらどうか

※ 捕食/被食関係と生命の大きさ:前者は遺伝子型であるのに対し、後者は表現型が連続的に変異する


それぞれの形式の遺伝情報に、同じ表現型を作り出す情報を入れておき、なんらかのスイッチ(これも遺伝情報に入れる)によってどちらを読み出すかを切り替えられるようにしたらどうか

mitsuyoshi-yamazaki commented 4 years ago

複数の系を統合する

泡(物理系)が内部的にセルオートマトン(Game of Lifeとする)をもっている セルオートマトンの際外部のセルはデフォルトで死の状態に固定されているが、泡同士が接触すると内部のセルオートマトン同士も接続する セルオートマトンの状態も泡に力を加え、それぞれの系が相互に作用を及ぼす

ayu-mushi commented 4 years ago

Memo. 生物の位置を極座標で表してそれに基づいて当たり判定や移動を行ったら面白い見た目になるかもしれない

ayu-mushi commented 4 years ago

中心からの角度の差による当たり判定 https://vimeo.com/381396966 (中心に寄り過ぎていて分かりにくいが、月の満ち欠け、時計の針、ケーキを切ったなどのような勢力図になっている?) Screenshot from 2019-12-25 16-11-48

ayu-mushi commented 4 years ago

アプリ制作サークルで発表したときに似ていると言われたもの: 粉遊び https://dan-ball.jp/javagame/dust/ 、スプラトゥーン、チームラボ です

mitsuyoshi-yamazaki commented 4 years ago

こんな感じでソースコードと結果がまとめられているのいいですね

https://junkiyoshi.com/openframeworks20191220/

mitsuyoshi-yamazaki commented 4 years ago

Oxygen not Included のように、地下を掘っていくような性格にすれば、生痕化石のように生き物の活動の履歴が残るのではないか

ayu-mushi commented 4 years ago

https://www.youtube.com/watch?v=bfI8mu9B8NU YouTube版には英語字幕をつけてみました。

ayu-mushi commented 4 years ago

Memo. 現在のpopulationを保存しておいて、そこからそれと同じ種-個体数の生態系を最初から生成する

mitsuyoshi-yamazaki commented 4 years ago

ひとに動画を見せたら「ぷつぷつが密集してるのがダメ」と言われたので三角にしたバージョン 1578237592__00001118

mitsuyoshi-yamazaki commented 4 years ago

局所的には同じパターンの組み合わせだが、大局的には何かを形作るようになっている

ジェネラティブな要素と人間の描くものを組み合わせると個性ある絵になるかもしれない

https://www.free-bath.co.jp/blog/2015/11/25/144.html

ayu-mushi commented 4 years ago

ドラッグでエサをカーソルの軌跡上に置くとかでしょうか

ジェネラティブな要素と人間の描くものを組み合わせる

mitsuyoshi-yamazaki commented 4 years ago

そういうものもありですね

私が考えていたのは、この絵の輪郭のように絵の枠を作っておいて、そこに適切なパターンを当てはめる、というものでした よく見ると、極座標系の輪郭は円周方向に対象になっていて、直交座標系の輪郭は水平あるいは垂直のパターンになっています

687474703a2f2f7777772e667265652d626174682e636f2e6a702f64636d735f6d656469612f696d6167652f31323233353031365f3834303831323836323730383539375f363933353732363630373533393139383331375f6e2e6a7067

mitsuyoshi-yamazaki commented 4 years ago

流体シミュレーションの解説記事を書きました

https://note.com/hogera/n/n206f99843ce8

ayu-mushi commented 4 years ago

「部分の集合が全体になる」という特徴から創発を起こすのに適している

1つ以上の部分を持つものはみなその特徴を持つ気がしました

ayu-mushi commented 4 years ago

詳しく知りませんが、現実の物理を表すセル・オートマトンとして箱玉系というのがあるそうですね https://qiita.com/massss/items/1f17265fbb96d1ef2e8e

ayu-mushi commented 4 years ago

https://docs.google.com/presentation/d/1iV7mdKhaIan1wbDsEmMddd81sQDxpJ01qMcPkRgJ_Vk/edit?usp=sharing 以前話した発生系の人工生命についての発表資料を上げてみました