我正在尝试开发 NetLogo 模型(消费者研究),但我想更多地控制代理(海龟)是什么以及它们可以做什么,因此我想用 Java 编写代码,导入 Java 库,可能的话,使用规则引擎等等。在 NetLogo 中这可能吗?
如果没有,那么还有哪些具有 Java 编程能力的代理建模框架呢?
NetLogo 可以使用扩展 API来实现。使用此 API,您可以在 NetLogo 中编写整体模型,并根据需要调用基于 Java 的例程。(您不能直接从 NetLogo 代码调用 Java 库;相反,您可以编写一个扩展,将该库中的例程公开为 NetLogo 原语,然后在模型中使用这些原语。)查看 NetLogo 扩展下载页面应该会给出您会了解到使用此 API 可以实现多种功能。
另请参阅:集成 NetLogo 和 Java:我们什么时候应该考虑这种集成作为一个好的选择?。
Repast和MASON是两个著名的基于代理的建模框架,您可以在其中使用 Java 编写整个模型。