)は生命の誕生、進化、淘汰などのプロセスを非常に簡単な数理モデルで表現したシミュレーションゲームです。Pythonではfor文1回だけでライフゲームが楽しめますので、一緒にやってみましょう。基本のルールについてはWikipedia、あとは複雑系コミュニティ動画さんのシリーズがおすすめです。魅力的にまとめられています。Wikipediaja.wikipedia.org※クリックでYoutubeにジャンプします基本のルールフィールドは正方形のマス目で、各マスの状態が変化するためのルールは次の2つだけです。生存(1)これに当てはまらない場合は現状維持となります。別の表現として、生きるための条件に着目して書くとこうなります。実行環境どちらかを用いますが、WinPythonをおすすめします。WinPythonでは図が紙芝居のようにパラパラ流れて見やすいですが、Colabではスクロールする必要があり見づらいです。Colabにも対応しました!(推奨)WinPython3.6をおすすめしています。Colaboratoryが利用可能です。Colaboratorycolab.research.google.comソースコード前半はフィールドサイズや初期状態の設定です。後半はメインの繰り返し処理で、基本的にいじらなくても大丈夫です。writer="ffmpeg")for文を1回(1重)しか使っていない点にご注目ください。Pythonは2次元配列を配列のまま足したり掛けたりできる強みがあります。for文をいくつもネストしてしまうと計算が極端に遅くなりますので、避けなければなりません。ライフゲームはほとんどのマスが0のため、「1のマスだけ処理する」といった処理のほうが高速化に寄与する可能性があります。グライダーで実行してみるソースコードをそのまま実行すると、フィールドの左上からグライダーが進み始めます。15ダイハードダイハードは7セルから始まって130ステップも長生きするパターンです。135十字スタート大きなフィールドで十字型にスタートしてみましょう。135WinPythonの場合は、2箇所あるplt.imshowの直前に以下を挿入することで図のサイズを大きくできます。細い線が潰れて見えなくなることを防ぎます。10))Colabの場合は、以下の部分を切り替えてください。[]おわりにこんな感じで、Wikipediaに載っているパターンをいろいろ試してみると楽しいでしょう。グライダー銃やシュシュポッポ列車ができたらぜひSlackで報告してください!または、Twitterでこの記事のURLを添付してつぶやいていただけたら嬉しいです。ライフゲームライフゲームこの記事を書いた人Yasuda博士(理学)。専門は免疫細胞、数理モデル、シミュレーション。米国、中国で研究に携わった。遺伝的アルゴリズム信者。物価上昇のため半額弁当とともに絶滅寸前。六角形のフィールドでライフゲームに挑戦します。以前書いたチューリング・パターンの記事の閲覧数が地味に伸びています。ライフゲームには様々なバリエーションがあります。ライフゲームには様々なバリエーションがあります。ライフゲーム(正方形、重み付き)2019/05/272022/01/18無料パッケージ「vcopt」チュートリアル「vcclick」チュートリアル「vcscraping」チュートリアル「vcracing」チュートリアル有償アプリ「vcStitching」チュートリアル遠隔オーダーメイド靴はこちら来店不要のフルオーダーメイド靴「Shoe-Craft-Terminal」GAカレー停止中GAカレーの概要フォローする質問やコメントはSlackでお気軽にSlackに参加するYoutubeでライブ配信していますYoutubeを見る勉強会でコードを配布していますconnpassを見るTwitterでも情報を発信していますTwitterをフォローするタイトルとURLをコピーしました。