閱讀699 返回首頁    go Python


Python實現生命遊戲

生命遊戲是英國數學家約翰·何頓·康威在1970年發明的細胞自動機,它包括一個二維矩形世界,這個世界中的每個方格居住著一個活著的或死亡的細胞。一個細胞在下一個時刻生死取決於相鄰八個方格中活著的或死了的細胞的數量。如果相鄰方格活著的細胞數量過多,這個細胞會因為資源匱乏而在下一個時刻死去;相反,如果周圍活細胞過少,這個細胞會因太孤單而死去。

遊戲在一個類似於圍棋棋盤一樣的,可以無限延伸的二維方格網中進行。例如,設想每個方格中都可放置一個生命細胞,生命細胞隻有兩種狀態:“生”或“死”。圖中,用黑色的方格表示該細胞為“死”, 其它顏色表示該細胞為“生”。遊戲開始時, 每個細胞可以隨機地(或給定地)被設定為“生”或“死”之一的某個狀態, 然後,再根據如下生存定律計算下一代每個細胞的狀態:

每個細胞的狀態由該細胞及周圍8個細胞上一次的狀態所決定;

如果一個細胞周圍有3個細胞為生,則該細胞為生,即該細胞若原先為死則轉為生,若原先為生則保持不變;

如果一個細胞周圍有2個細胞為生,則該細胞的生死狀態保持不變;

在其它情況下,該細胞為死,即該細胞若原先為生則轉為死,若原先為死則保持不變。

網上有的代碼自己跑不出來可視化的,自己寫了一個。

怎麼處理邊緣:

當做0處理

處理流程:

1. 卷積

2. 格式化

3. 迭代

方法二:調用opencv的卷積方法

最後更新:2017-10-14 18:22:26

  上一篇:go GitHub 年度報告:JS 依然最受歡迎,Python 第二
  下一篇:go Python2.7+Selenium3自動化測試pdf版