3.0 KiB
版本提交记录
2018-1-3
项目启动,主要是文字方面的一些构想。
2019-3-11 1.0.0版, Commit:Go frog go!
开发环境完成,演示第一个人工生命诞生。但是所有Frog脑部为空,因为运动神经元被短路,只能固定向一个方向运动。
这是第一个发布版,演示了生命的随机进化和优胜劣汰。
2019-3-18, Commit:Brain picture!
添加了脑结构图形,用于调试用,可以显示第一个胜出的Frog的脑结构,但是运动神经元依然被短路,只能固定向一个方向运动。
有了脑结构图,就可以防止所有Frog都被淘汰掉,还不知道问题发生在哪里。可以有针对性地改进进化算法、环境的参数改进。
2019-03-20, 1.0.1版, Commit:Add a button
添加了一个按钮,可以显示、隐藏第一个胜出的Frog的脑结构图,但是运动神经元依然被短路
2019-03-21, 1.0.2版, Commit:I'm hungry
在脑区添加Hungry,删除随机运动的硬编码,改成由Hungry区来驱动,一旦frog能量小于10000,hungry区的所有脑神经元的input区激活,如果这些神经元的输出区位于move区,则作相应的移动。这是一个更随机一点的运动,不再总是固定向一个方向。
2019-03-27, 1.0.3版, Commit:Shrink & Sperm
添加了"卵+精子->受精卵"的模拟,这是为了实现生物多样性。添加了每次添加一批随机神经元,但是只保留激活过的,如果某组神经元从没被用到(激活过),则有很大的可能不会将这组神经元添加到蛋中(用进废退规则)。
2019-03-29, Commit:Rainbow
更正一个小Bug,BrainStructure的zone显示的半径是实际的一半,用彩虹色而不是随机数来表示CellGroup的细胞数量,色彩越靠后表示细胞数越多。
2019-04-01, Commit:Cleanup
做一些debug清理,每个Frog不再保留egg的副本,“卵+精子->受精卵”算法改进一下,不能简单两两相加,而是随机取一个精子的cellgroup。
2019-04-06, Commit:Windows align
还是做一些清理, 可以自由调整虚拟环境、脑图的显示大小。下面的打算是将mouth、leg、hungry等区移到蛋里去,允许进化,而不是作为Frog的硬编码存在。
2019-04-07, Commit:Organ
引入Organ类,将mouth、leg、hungry等作为Organ器官移到蛋里去,而不是作为Frog的硬编码存在,这样架构更清晰,而且便于以后将Organ参与遗传、变异、进化。
2019-04-08, Commit:Eye shortcut
添加眼睛,能够看到四个正方向的食物,但是自然选择的结果是眼睛和移动区短路了,眼睛起的作用并不大,因为如果有两个方向同时出现食物,目前青蛙是不能判断的。 下面要考虑逻辑了,也就是思考判断能力(后天条件反射的建立)。
2019-04-12, Commit:Random frog
没做大改动,只是将青蛙改成按整个地图随机分布,看起来眼睛的作用就比较明显了,比起随机运动,明显食物被吃掉更多。