「作って動かすALife」の書評とプログラムの動かし方

f:id:karaage:20180908224000p:plain:w640

「作って動かすALife」という本を買いました

 「作って動かすALife」という人工生命(Artificial Life)分野の本を買いました。「人工生命」って割と聞きなれない分野かもしれません。元々、簡単なルールで生命っぽい振る舞いをするもの(いわゆるライフゲームやボイド)をきっかけに、生命っぽいものを作ることで、生命とは何かを理解できるんじゃないの?ということを考える研究分野です(素人ですので、全然違ってたらすみません)。

 人工生命の分野では、「そもそも生命って何だろう?」ということも議論になったりして、今流行りのAIとの共通点も感じさせますね。個人的には、AIやロボットの進化の先にALifeという考えが重要になってくるんじゃないかなと思っているのですが、この本でも最後の方にまさにそんな話が書いてあって「おおっ!」って思ったりしました。

 今すぐ役に立つという分野ではないですが、単純に面白いですし、ジェネラティブアートとか創発とかそういったキーワードに興味ある人は刺激になるかと思います。

作って動かすALife ―実装を通した人工生命モデル理論入門

作って動かすALife ―実装を通した人工生命モデル理論入門

  • 作者: 岡瑞起,池上高志,ドミニク・チェン,青木竜太,丸山典宏
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2018/07/28
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログ (1件) を見る

「作って動かすALife」で作れる人工生命

 本を読むことで、次のような人工生命をコンピュータ上に誕生させて、その原理(の1部)を分かった気になることができます(理解できるとはおこがましくて言えません)。

f:id:karaage:20180908224723g:plain:w640
 ボイド(boids)

 

f:id:karaage:20180908224707g:plain:w640
 あり(Ant)

f:id:karaage:20180908224719g:plain:w640
 ライフゲーム(2次元のCellular automaton)

f:id:karaage:20180908224720g:plain:w640
 反応拡散系モデル(Gray-Scott model)

 なかなか面白そうですね。

「作って動かすALife」のセットアップ方法(Mac向け)

 本ではめちゃめちゃ簡単に書いてあるので、動かせない人も多そうな気がするので、Mac向けのセットアップ方法を簡単に書いておこうかなと思います。

 基本的には以下記事を参考にすればOKです。

 とにかく最短で1から環境を構築したい人は、以下実行してください。

 HomebrewとPyenvをセットアップ

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
$ cd
$ curl -L -O https://raw.githubusercontent.com/karaage0703/mac-dotfiles/master/.bash_profile
$ brew install pyenv
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ brew install pyenv-virtualenv
$ echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
$ echo export PYENV_VIRTUALENV_DISABLE_PROMPT=1 >> ~/.bashrc
$ source ~/.bashrc

 Pyenvの仮想環境のセットアップ

$ pyenv install anaconda3-4.4.0 
$ pyenv global anaconda3-4.4.0
$ conda create -n al anaconda
$ pyenv global anaconda3-4.4.0/envs/al

 必要なパッケージをインストール

$ pip install pyglet pymunk vispy
$ pip install keras==2.2.0
$ pip install tensorflow==1.8.0

 私の環境では、OSをアップグレードしたばかりで、途中以下のコマンドを実行しろというエラーが出たので、以下コマンドを実行して、Xcodeのライセンスを確認しました。

$ sudo xcodebuild -license

 あとは、以下コマンドを実行すれば、本のプログラムをダウンロードできます。

$ git clone https://github.com/alifelab/alife_book_src
$ cd alife_book_src

 あとは、プログラムを一つ一つ実行していくだけでOKです。

 本に出てくる、Gollyというライフゲームのアプリをインストールしたい場合は、Homebrew Caskで以下コマンド1発でOKです。

$ brew cask install golly

 好きなだけライフゲームが楽しめます。

f:id:karaage:20180908230535p:plain:w640

まとめ

 最近読んだ「作って動かすALife」の簡単な書評とプログラムのセットアップ方法について書きました。割とこの分野好きで、大学時代も全く単位関係無いのに「人工生命」の講義を受講したりしていました。

 VJやりたいなー、とか思っているのですが。こういったALife的な要素取り入れたら面白そうだなとか日々妄想しています。

作って動かすALife ―実装を通した人工生命モデル理論入門

作って動かすALife ―実装を通した人工生命モデル理論入門

  • 作者: 岡瑞起,池上高志,ドミニク・チェン,青木竜太,丸山典宏
  • 出版社/メーカー: オライリージャパン
  • 発売日: 2018/07/28
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログ (1件) を見る

 ジェネラティブアートに興味あれば、以下の本も面白いかと思います。

[普及版]ジェネラティブ・アート―Processingによる実践ガイド

[普及版]ジェネラティブ・アート―Processingによる実践ガイド

  • 作者: マット・ピアソン,Matt Pearson,久保田晃弘,沖啓介
  • 出版社/メーカー: ビー・エヌ・エヌ新社
  • 発売日: 2014/11/21
  • メディア: 単行本(ソフトカバー)
  • この商品を含むブログ (1件) を見る

参考リンク

ALIFE-CORE – 名古屋大学大学院情報学研究科人工生命ラボラトリー

Evolve It !: Takaya Arita's Home Page

関連記事