问题标签 [agents-jade]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
476 浏览

java - JADE 代理使用堆空间太快

我面临的问题是,当运行一组玉代理解决一个简单问题时,jvm 在运行的 90 秒内耗尽了堆空间,具体取决于运行的代理数量。代理的目标是在简化的微电网模型中平衡负载和发电,其中几个代理代表负载和另一代。

负载代理在其行为的每次迭代中使用新值更新生成器,如以下代码所示:

所有负载代理都与此相同,生成代理如下:

从互联网上有关此类事情的其他帖子中,我尝试限制生成代理的消息队列大小以防消耗堆空间,并在每次生成器行为迭代结束时清除翡翠消息队列。但是这些似乎都没有任何区别,我尝试添加更多的堆空间,但这只会将内存不足异常延迟一分钟左右。调用jade引擎,并通过netbeans启动jade gui。

我是多代理编程和使用玉的新手,所以我可以理解运行这种系统可能有更好、更优化的方法,这本身就可以解释问题。但希望能在这件事上得到一些帮助。

谢谢,卡鲁姆

0 投票
2 回答
1425 浏览

java - 无法在运行时设置复选框的背景颜色

有一个类 AgentHome 扩展了 JFrame。AgentHome 有一个 JPanel rem_panel。复选框被动态添加到 rem_panel...复选框的数量取决于数据库表中的条目数,文本框要显示的文本从该表中读取。

AgentHome 有一个整数变量 x 和一个复选框数组列表 rem_cbarr。

rem_cbarr 在复选框被创建并添加到 rem_panel 时存储它们。当程序执行时变量 x 设置为 1 时,我试图将这些复选框的背景颜色设置为红色。我已经实现了 JADE 框架的 TickerBehaviour 来检查变量 x 是否设置为 1。

我无法将复选框的背景颜色设置为红色。这是我实现的代码。请帮忙。谢谢。

0 投票
1 回答
138 浏览

java - 在jade中定义一个新的ObjectSchema

我正在与合作,并有一些相互通信的代理。我可以设计新的消息类型,例如 bookinfo (String name, float prize, boolean availible)。但我只能使用这些基本变量创建消息,如本例所示:

这就是我在本体中定义消息的方式

但现在我想发送一个ArrayList(例如 bookinfo (String name, float prize, arrayList authers))。

我想要的是这样的:

必须定义 **ObjectSchema-of-an-arrayList** 以便我可以在代码中使用它。所以我必须ArrayList.

我已经搜索了几个小时来解决这个问题,但没有找到任何解决方案。有谁能够帮我?

问候汉斯

0 投票
1 回答
438 浏览

java - 哪个基于代理的 Java 框架更可取?

我正在研究基于代理的 Java 框架,并且想要一个简单且易于实现的框架。谷歌搜索发现了玉、韦德和 jac。

0 投票
1 回答
703 浏览

java - JADE:调度行为

我正在自学 JADE,想知道是否有一种简单的方法来安排行为,即在所有其他代理之前完成其行为周期之前不会执行一个代理行为?

例如,假设我有一组添加到每个代理的行为(A、B、C),但是我不希望在所有代理完成行为 A 之前执行任何其他行为(B、C)。谢谢提前。

0 投票
3 回答
4366 浏览

java - 分布式系统中的参与者(Akka)和代理(JADE)有什么区别?

Akka演员和Jade代理人的概念有什么实质性区别吗?

据我所知,两者都通过创建独立实体(具有系统逻辑块)来实现系统分发,这些实体可以通过在它们之间发送消息来进行通信。

是否有其他因素使它们不同(如性能或预期目的)?

0 投票
0 回答
520 浏览

java - 代理未运行

我想我在我的项目中遗漏了一些东西。我需要代理来执行我分配的特定任务。我正在使用玉。在里面action()我写了一个for循环来显示数字1到10。运行时没有显示错误,并且循环也没有被执行。当我使用java -cp jade.jar jade.Boot -gui agent:TestAgent时,我得到一个classNotFound异常并且还显示无法创建代理。当我使用java -cp jade.jar jade.Boot -gui -agent agent:TestAgent时,我正在准备好代理信息,但没有调用操作方法。

如果我做错了,请指导我。

例外如下

0 投票
1 回答
1223 浏览

java - JADE action() 不工作

我想我在我的项目中遗漏了一些东西。我需要代理来执行我分配的特定任务。我正在使用玉。在里面action()我写了一个for循环来显示数字1到10。运行时没有显示错误,并且循环也没有被执行。当我运行时:

我得到一个classNotFound异常并且还显示无法创建代理。

当我运行时:

我准备好代理信息,但没有调用操作方法。

可能是什么原因?我应该怎么办?

0 投票
3 回答
975 浏览

java - 玉:java.lang.OutOfMemoryError:Java 堆空间

我一直在使用玉(Java 代理开发框架)来创建基于网络的消息传递系统。

到目前为止,我注意到翡翠运行没有问题,但是在晴朗的一天,我收到了这条消息,

在此处输入图像描述

JVM 堆空间错误!

经过调查,我发现这是由于集合变量可能阻塞了占用 JVM 空间而没有将其刷新出来的对象。(你可以看到异常是从玉的角度提出的,而我的代码方面没有)

我怎样才能删除这个?

我的代码由一个简单的 TickerBehaviour 类组成,如下所示:

我进一步检查了我的代码是否正在创建不必要的引用对象(通过注释最终生成 myintended message作为一种方式的代码)我将其归结为删除我的所有功能并运行翡翠代理,令人惊讶的是,我注意到翡翠任务本身是创建这个问题。

我过去常常visualVM检查正在进行的堆空间检查,以检查有多少被引用的对象仍然位于 JVM 堆空间中。

较旧的解决方案也没有多大帮助。谁能帮我解决这个问题?

我已经使用了在翡翠容器启动期间推荐的选项,但是仍然存在没有被 GC 删除的引用对象。

系统设置:

  1. 操作系统:Linux 64 位。
  2. JVM 版本:IcedTea,1.6.0.27,64 位。
  3. JVM 选项-Xms1024m-Xmx2048m-XX:MaxPermSize=512M

先感谢您。

0 投票
2 回答
747 浏览

agents-jade - JADE 代理与 siemens S7 1200 PLC 之间的通信

我想了解如何使我的代理与 PLC(西门子 S7 1200)进行通信。基本上,代理是在 JADE 中创建的,并做出一种决定,即他们将发送 PLC 的真假决定。如果它为真,则 PLC 被激活或以其他方式激活。我听说过使用简单对象访问协议的概念,但不熟悉它(如果有人知道如何使用它,他们可以帮助我提供示例程序或链接我的程序的方法)。在 2013 年 4 月 8 日之前完成这项工作