生态C ++代码

时间:2017-04-26 22:12:44

标签: c++

C ++的新手,并坚持如何开始编码这个问题,这是一个生态问题,起初开始与植物羚羊和老虎的细胞。根据初始人口,出生率,食物供应,死亡和迁移到其他细胞(一旦发现1个细胞,那么可以扩大更多)。在纸上进行了一些测试,看到植物需要一个上限,因为植物繁殖比羚羊多,可以吃它们。我真的不知道如何开始这个,如果有人能给我一个起点那么将会感激不尽。

谢谢。

1 个答案:

答案 0 :(得分:1)

我听起来您正在尝试构建个人,agent-basedmicroscale模型:这是discrete event simulation这个更一般主题的子集。研究这些主题并阅读一些文献并围绕它们books将是一个良好的开端。

从概念上开始的一种方法可能是与SimPy一起玩。一旦你认为你理解它的各个部分是如何组合在一起的,以及如何建立一个模型,你就可以更好地转向更高性能的语言,比如C ++,你需要自己构建更多的组件。

您还应该学习如何编程。不得不像你在这项努力的开始时一样提出一个问题应该让你停下来:人们已经投入了大量的职业,想出如何以正确的方式做到这一点。也就是说:C ++是一种不错的语言选择,因为你需要不仅运行一次模型,而且运行数万次,以便了解结果的变化程度。记住变量之间的交互次数在变量数量中呈指数级增长,您还需要探索不同的环境组合,并着眼于测试您的假设的强度。

所有这些也可能需要使用高性能环境:您需要了解MPIR's HPC packagesjugSpark :每个都必须被驯服以适应您的模型实现。

This paper我最近发布了一个相对简单的基于代理的模型,以及分析和源代码,这可能有助于您入门。它也可以帮助您了解您提出的承诺的巨大程度。

"One does not simply build agent-based models"