加载失败
Werld 是作者实现的一个人工生命/代理文明模拟,多个代理被投放到以图结构表示的世界中,由 NEAT(NeuroEvolution of Augmenting Topologies,一种可演化网络拓扑的进化神经网络方法)驱动,并通过能量、代谢与繁殖规则在无显式奖励函数下竞争生存。作者把许多设计参数(图拓扑、能量机制、代谢成本、季节等)视作“物理法则”,希望行为通过自然选择而非硬编码策略演化,这引发了是否存在隐含偏见的哲学争论。讨论涉及涌现叙事与可视化(作者用 Gemini——Google 的大型语言模型——流式生成故事章回)、与早期人工生命项目如 Polyworld(Larry Yaeger 的模拟)以及涌现叙事游戏如 Dwarf Fortress、SimCity 的对比。社区同时提出了可复现性、文档/演示质量、运行调试(初始种群、后代能量继承)和存储/托管等实践问题。
许多评论对通过局部规则观察涌现行为和生成叙事非常感兴趣,评论者将 Werld 与 SimCity、Dwarf Fortress 等涌现叙事作品以及早期学术项目如 Polyworld 相比较。作者曾把 Werld 观测台公开,并用 Gemini(Google 的大型语言模型)每 10,000 ticks 流式生成一章自然语言故事,实测中发现代理语言难以解码、出现物种分化与群聚现象。讨论还提到 NEAT 在演化拓扑上的特点与其他学习机制的差异,以及硬盘/Cloudflare 等存储与托管问题对长期可视化与叙事流的限制。总体看社区对改进 UX、可视化与长期叙事体验持高度兴趣并提供多项可借鉴的游戏式界面设计思路。
[来源1] [来源2] [来源3] [来源4] [来源5] [来源6] [来源7]
评论中反复指出不可能完全消除初始偏见:图拓扑、能量机制、代谢成本与季节等设计选择会作为模拟的“物理法则”影响演化方向。有人引用 MIT 的 Koan(Minsky 与 Sussman 的对话)来说明“看似无预设”常常隐藏假设,作者回应称自己选择的是物理而非行为策略,但这仍是一种设计偏好。讨论进一步聚焦于如何把这些基本参数最小化或以更中立方式设定,以及起始神经连线(作者用最小 NEAT 网络)与随机连线在偏见层面的差别。总体争论在于把哪些东西视为环境物理、哪些算策略偏见及其对涌现结果的影响。
有人担心即便无显式奖励函数,代理是否仍会演化出类似“opium den”式的行为(即劫持奖励或自我刺激)。开发者回应称代码中 compute_reward() 存在但返回 0.0,当前选择压力来自生存与复制成功率,而非显式奖励,因此若大脑行为不能提高生存概率,它会被自然选择淘汰,难以实现传统意义上的 wireheading。讨论还强调只有在存在可被代理操纵的奖励信号时,wireheading 才是明确风险,本项目设计把能量代价、代谢与繁殖作为主要压力源。参与者据此讨论了不同选择机制下的安全性差异。
若干用户报告具体运行问题:例如观察到只有 2 个初始代理或后代一出生即死。开发者解释默认应为 30 个代理(可在配置修改),后代会继承父体的一部分能量,若父体能量不足或过早繁殖,子体无法支付每 tick 的代谢与大脑成本而死亡,这是设计用以产生选择压力的预期行为。实际运行中也出现了育儿投资策略的演化:在资源匮乏时高能量投入的繁殖策略更稳健,而廉价快速繁殖仅在资源充足时奏效。评论同时指出硬件与存储限制影响实验规模与长期观察的可行性。
[来源1] [来源2] [来源3] [来源4] [来源5] [来源6]
有人批评项目 README 看起来由 LLM 生成,认为作者亲自撰写文档能增强可信度與可读性;作者随后表示已更新 README 并感谢提醒。另有评论抱怨 README 缺少示意图,并嫌弃标题中使用的表情符号,认为这降低了专业度并影响读者愿意花时间试用项目。这些反馈反映出文档和演示质量对吸引社区尝试、复现与贡献的决定性影响。开发者在回复中表现了接受改进建议的态度并着手更新。
NEAT: NEAT(NeuroEvolution of Augmenting Topologies)是一种进化算法,通过遗传操作同时演化神经网络的连接权重与拓扑结构,允许网络在没有人工设计拓扑的情况下随生存压力增长或精简,Werld 用它来让代理的大脑结构随时间演化。
graph topology(图拓扑): 用图的节点与边表示环境位置与连接关系的世界表示方式,与传统二维平面不同,会改变代理的感知邻域、移动与通讯约束;评论把它与能量、代谢一起视为模拟的‘物理法则’。
wireheading(劫持奖励): 指智能体通过修改或利用奖励机制本身以持续获得高奖励、绕过设计者目标的行为,是强化学习与安全讨论中的重要概念;评论者担心有奖励函数时会出现该风险,但作者强调当前以生存/复制为选择压力。
fork(繁殖/复制): 在 Werld 中表示个体生成后代的动作:父体会向后代转移部分能量作为初始资源,后代必须支付每 tick 的代谢与大脑成本,因此繁殖时机与能量分配成为演化选择压力的一部分。