在阅读了很多关于人工生命(我觉得非常有趣的主题)的文章以及关于 SO 的几个问题之后,我开始考虑设计一个(非常、非常、非常)简单的模拟器的想法。甚至不需要图形。如果我忽略了一个问题,请随时向我指出。
就像我说的,这几乎不会是模拟人生级别的模拟。我相信它几乎不会达到“可接受的免费软件”水平,它只是一种学习练习,可以在休息时保持我的技能。基本前提是创造了一个普通人。没有名字、身高或类似的东西(就像我说的,很简单),它会收到的唯一真实的东西是“关联”和通用“使用”、“拾取”和“看”能力的列表。
我的第一个问题是关于协会的。SO推荐什么作为处理此类事情的有效方法?我在考虑一个多图,相对容易地设置键是它想要的(食物、饮食、休息等),而另一位(对不起,我的想法已经失效)是它与该需求相关联的。
例如,假设我们有一台冰箱。冰箱里有食物(只是一个通用的基础对象)。最初,这个人并没有将冰箱与食物联系起来,但它确实将食物与饥饿联系起来。因此,当它的饥饿感增加时,它开始任意寻找食物。如果没有食物触手可及,它会“使用”物体来寻找食物。由于它与食物没有已知的关联,它会随意使用事物(可能是寻找最近的物体并向外扩展)。一旦它使用/打开冰箱,它就会看到食物,建立冰箱包含食物的连接(阅读:插入“食物,冰箱”对)。
现在,我意识到这将比看起来要复杂得多,我准备把它敲出来。问题是,多图是否适合(可能)呈指数级扩展的关联列表?如果不是,那会是什么?
我的第二个问题可能要容易得多。简而言之,通用对象/项目接口是否适用于大多数项目?换句话说,一个通用的“使用”接口是否适用于我的意图?我不认为我解释得很好。
无论如何,任何意见表示赞赏。