我目前正在寻找为 C++ 编写的离散事件模拟器。我在网上找不到太多专门用 OO 风格编写的东西;有一些,但是已经过时了。其他一些,例如 Opnet、Omnet 和 ns3 对于我需要做的事情来说太复杂了。此外,我需要模拟能够模拟数千个节点系统的基于代理的算法。
有人知道什么适合我的需要吗?
最佳答案
其他人有很好的直接答案,但我要提出一个替代方案。如果我对您的理解是正确的,您需要一个 C++ 或类似的系统,您可以在其中发布将来触发的事件,并在这些事件触发时运行代码。
我有一个这样的项目,我开始尝试用 C++ 编写这样一个事件系统,然后很快意识到我有一个更好的解决方案。
您是否考虑过使用行为 Verilog 编写程序?用硬件描述语言编写软件可能看起来很奇怪,但 Verilog 模拟器是一个基于事件的系统,而行为 Verilog 是一种非常方便的表达事件、时序、触发器等的方式。有一个免费的 Verilog 模拟器(这就是我使用的)称为 Icarus Verilog。如果您使用的不是 Ubuntu 或某些 Linux 发行版,并且 Icarus 已经在一个包中,那么从源代码构建很简单。
关于c++ - C++的离散事件模拟器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3999717/