在Modelica中可以模拟多agent系统吗?我说的是一个用Java写成的系统。这会有多容易或有多难?据我所知,Modelica不是一种典型的编程语言,所以它会特别有帮助吗?还是modelica语言的基本设计会造成任何障碍?更重要的是,我们将如何建模在基于Agent的建模中常见的“消息传递”系统?
发布于 2015-10-12 20:13:44
Modelica可以模拟离散事件系统。有的图书馆有: ModelicaDEVS、ARENALib等。
也许这个“消息传递”的语法还不完美,但是语言可能会在这个方向上得到进一步的改进。
一个优势可能是可以创建实时代码,这样代理就可以在嵌入式系统中运行,即使使用硬实时-只有其他一些工具支持这一点,如托勒密II。
P.S. (加于第一段注释):
从一开始,Modelica就被设计为创建能够实时运行的代码。因此,您可以使用未修改的代理模型模型,将IO连接到传感器和执行机构,并在实时硬件(例如PowerPC)上下载。然后,您的代理群将完全填充您建模并存在于真实中的时间行为。另外,您可以在硬件中只有一个真正的代理(也许这个硬件很昂贵),并在实时模拟器硬件上模拟与所有其他代理的交互,使用的模型也没有改变。
这是Modelica的语义不像Java这样动态的主要原因之一。如果您想在真正的硬件上运行MASON代理,您就有麻烦了:您必须使用安全关键Java,这意味着您的代码以及标准Java库的许多构造必须重写,或者根本不允许。如果没有这个,你将不得不忍受这样一种可能性:你的经纪人可能会错过他的任务,烧毁房子.
https://stackoverflow.com/questions/32664731
复制相似问题