JADE平台简介
JADE(Java Agent Development Framework)是一个软件开发框架,用于开发多Agent系统和符合FIPA标准的智能Agent应用程序.它包含两个主要的产品:一个符合FIPA标准的Agent平台和一个开发JAVA Agent的包.JADE完全是由JAVA编写的,由各种JAVA包组成,它为应用程序员既提供现成的功能片断,同时也为自定义的应用程序任务提供抽象接口.由于JAVA的许多良好的特性,它是一种很特别的编程语言,特别是它在分布式的不同环境中的面向对象编程方法,例如对象序列化(Object Serialization),反映性API(Reflection API)和远程方法唤醒(Remote Method Invocation RMI)等。
下面是JADE提供给Agent编程人员的JADE特点列表:
-分布式Agent平台.Agent平台可以分散在几个主机上(假设它们可以通过RMI连接起来).
-从远方主机用图形用户界面来管理Agent和Agent容器.
-在开发基于JADE的多Agent应用程序时,可以利用调试工具.
-平台内的Agent移动性,包括传递Agent的状态和代码(当需要的时候).
-通过行为模型,对多个平行,并行的Agent活动的支持.JADE以无优先权的方式对Agent行为进行调度.
-FIPA标准的Agent平台,包括AMS(Agent管理系统),DF(目录服务),和ACC(Agent通讯通道).这三个组成部分在Agent平台启动时被自动激活.
-为了多域的应用程序,许多FIPA标准的DF在运行时可以被启动.在程序中,每个域是一组逻辑Agent,它们提供的服务通过一个公共的设备被公布出来.每个DF继承了GUI和所有由FIPA定义的标准功能(即,注册,注销,修改,搜索Agent标识符的功能和在网内连接DF的功能).
-在同一个Agent平台内有效率的ACL消息传输.事实上,消息在传送时是以JAVA对象被编码,而不是字符串,这样是为了避开编组和未编组的程序.当消息跨越平台边界的时候,它们被自动转换为FIPA标准的语法,编码方式,传输协议或反之.这种转换对于Agent执行者来说是透明的,它们只需要处理JAVA对象.
-FIPA交互协议库是现成可用的.
-通过AMS,Agent可以自动进行注册和注销.
-符合FIPA标准的命名服务:在启动时,Agent从平台上获取它们的GUID(全球唯一标识).
-对应用程序定义的相关语言和概念的支持.-程序内接口,它允许外部应用程序启动自治的Agent.