-1

我想开始一个模拟项目,这将是一个离散时间的模拟。目的是模拟涉及一些非自治物理模型的代理通信,因此不一定限于纯粹的基于代理的模拟。在开始之前,我想问一下确实存在哪些特定于仿真的软件工程实践,例如测试实践(适合 TDD?仿真往往是高度不确定的),从软件工程的角度来看,哪些问题是常见的、经常发生的问题等等。我说的不是建模过程,而是使用现有模型实现系统的过程。非常欢迎相关书籍推荐。

谢谢。

4

2 回答 2

0

Marcin 是对的,这个问题太宽泛了,除了It Depends之外没有正确的答案。™</p>

主要原因是仿真软件首先仍然“只是”软件,工程部分在很大程度上取决于您的要求(编程语言、软件目的、时间预算、资源限制等) . 当然,可能会涉及额外的步骤(例如 VV&A),并且某些任务需要格外小心,例如测试,但这一切都取决于上下文。

另外,在你开始破解之前,你有没有看过现有的工具——也许有一个你可以依赖的库或框架?如果是这样,哪些方法在那里有效?

除了一般性的介绍(像这样),大多数书籍和论文还专注于仿真软件的特定子集(例如 C++ 中的仿真软件,或基于代理的仿真,或并行和分布式仿真)。因此,如果没有更多上下文,甚至很难将您指向相关材料。

于 2012-08-14T14:28:50.483 回答
0

软件工程和(基于代理的)仿真软件开发中的一个常见问题是处理浮点数

由于并非所有实数都可以用计算机中使用的浮点格式精确表示,因此随着时间的推移,在进行许多操作的模拟中会产生小错误,并影响最终结果。

此外,在不同硬件和软件平台上如何实现浮点运算的微小差异可能会导致在不同系统上运行模拟时产生不同的结果。

有关此对基于代理的模型的影响的一些广泛研究,请参阅这些链接:

http://www.macaulay.ac.uk/fearlus/floating-point/
http://jass.soc.surrey.ac.uk/8/1/5.html

于 2012-08-21T10:19:44.130 回答