https://github.com/Rabrg/artificial-life
本地尝试配了一下这个项目
学习到:
- 配置Git,但是Git会把仓库里的所有东西搞下来,非常慢。然后发现原来直接下载zip是最快的
- python文件的运行需要很多库,虽然每次运行都会告诉我哪个库没有安装,但是有份
pyproject.toml的文件里告诉我要安装哪些库。安装直接pip install name就可以安装,好像还可以根据这个文件一键安装

这四个库的作用如下:

运行时的效果:

这个东西的核心就是在main.py里,然后生成的东西都在一个gif文件中。
这一部分是调参数用到的:
python
parser = argparse.ArgumentParser()
parser.add_argument("--seed", type=int, default=2)
parser.add_argument("--num-epochs", type=int, default=12_500)
parser.add_argument("--mutation-rate", type=float, default=0.024 / 100.0)
parser.add_argument("--tape-size", type=int, default=64)
parser.add_argument("--num-programs", type=int, default=32_400)
parser.add_argument("--grid-width", type=int, default=240)
parser.add_argument("--grid-height", type=int, default=135)
parser.add_argument("--gif-path", type=str, default="universe.gif")
parser.add_argument(
"--mp4-path",
type=str,
default=None,
help="MP4 output path; defaults to --gif-path with .mp4 suffix",
)
parser.add_argument("--gif-every", type=int, default=5) //多久存一次gif
parser.add_argument("--gif-fps", type=int, default=5) // gif的一帧多久
但是不知道为什么最后生成不了大一统的结局
End