Golly
外观
| 原作者 | Andrew Trevorrow Tom Rokicki |
|---|---|
| 開發者 | The Golly Gang |
| 首次发布 | v0.1(2005年7月) |
| 当前版本 | v3.1(2017年10月) |
| 编程语言 | C++ |
| 操作系统 | Linux, FreeBSD, OpenBSD, Windows, OS X, iOS, Android |
| 语言 | 英文 |
| 类型 | 游戏, 模拟器 |
| 许可协议 | GNU GPL (第2版) |
| 网站 | golly |
Golly是由Andrew Trevorrow和Tom Rokicki开发的跨平台开源软件,可用于模拟康威生命游戏或其他类型的元胞自动机。Golly包含大量预先设定的元胞模式和生长规则,可模拟大尺度、长时间的元胞行为;采用wxWidgets编写图形用户界面,并支持Python和Lua(v3.0之前的版本是Perl)脚本语言[2]。Golly采用GNU GPL第2版协议发布,属于自由软件[3]。
算法与规则
[编辑]Golly支持以下算法及规则[4]:
- QuickLife:一种常规的算法,支持包括康威生命游戏在内的各种二维邻域总和相关(outer-totalistic)规则,还支持史蒂芬·沃尔夫勒姆的一维规则。
- HashLife:一种基于散列表的算法,支持的规则与QuickLife相当。当元胞模式规律性较强时,HashLife的效率将大大超过QuickLife;当元胞模式趋于混沌时,HashLife反而不如QuickLife高效。
- Generations:一种支持多元胞状态的算法,经典的康威生命游戏中每个元胞只有生/死两种状态,而Generations可以支持那些拥有多状态(最高可达256个状态)的规则。
- JvN:由约翰·冯·诺伊曼最早提出的元胞自动机算法(20世纪40年代),支持诺伊曼本人提出的JvN29规则(一个包含29种状态的元胞自动机)及其变种。
- RuleLoader:允许用户自定义规则的算法,用户可通过外部.rule文件按照规定的格式[5]定义规则。
参考资料
[编辑]- ^ Rendell, P., A universal Turing machine in Conway's Game of Life, 2011 International Conference on High Performance Computing and Simulation (HPCS) (PDF): 764–772, 2011 [2014-03-11], doi:10.1109/HPCSim.2011.5999906, (原始内容 (PDF)存档于2014-03-11)
- ^ Golly's key features. [2014-03-11]. (原始内容存档于2007-06-26).
- ^ License of Golly. [2014-03-11]. (原始内容存档于2021-01-04).
- ^ Golly's online help -- Algorithms. [2014-03-12]. (原始内容存档于2020-10-23).
- ^ Golly's rule file format. [2014-03-12]. (原始内容存档于2020-11-12).