没有合适的资源?快使用搜索试试~ 我知道了~
学习agent的中文入门
5星 · 超过95%的资源 需积分: 10 149 下载量 138 浏览量
2008-10-28
20:39:06
上传
评论 5
收藏 882KB DOC 举报
温馨提示
试读
38页
学习agent的中文入门,比起300多页的英文书,更详细,更容易理解,而且含有大量的源代码,可以进行更好的理解agent的主旨
资源推荐
资源详情
资源评论
JADE 架构模型:
是多 开发框架,遵循 规范,他提供了基本的命名服务,黄业服务,通讯机
制等,可以有效地与其它 开发平台和技术集成。
架构适应性很强,不仅可以在受限资源环境中运行,而且与其他复杂架构集成到一
起比如。 和 。
功能模型:
提供了在固定和移动环境中实施分布式点对点应用的基本服务。
允许 动态的发现其他 以及与其他 通讯。 通过异步消息进行通讯,这
种通讯机制可以在分布和松散耦合的环境中是通用的。 可以在异构环境中通信,通
过名字来区分(以后的版本中发送方和接收方没有暂时的依赖关系)。
通过认证和为 分配权限实现安全机制。
消息结构使用 语言。为了适应复杂对话, 提供了一系列执行特定人物的交互性为
的典型框架,比如协商,拍卖,任务代理等(用 抽象类来实现)。消息内容可以在
和 格式间互相转换。
灵活性强,用 线程实现多任务。
提供命名服务和黄页服务。
支持图形化调试和管理监控工具。
第一次运行 jade3.4,
并成功执行一个最简单的 。使用步骤记录如下:平台为 。 版本为
!"。假设现在 已经安装并且配置成功。
.下载 ,下载站点为 http://jade.tilab.com/。假设下载文件为 ##$ %!&!'
.将文件解压,解压后,平台必须运行的() 目录下的文件我们都放在在 *++下。当前
目录结构为 *++)
,,,,,,,,,,,,,,,,,(+
,,,,,,,,,,,,,,,,,,+-
,,,,,,,,,,,,,,,,,,+-
,,,,,,,,,,,,,,,,,(+./,
设 置 环 境 变 量 在 00123 中 添 加 *++)+!4*++)+!4*++)+
-#--+-#--# !!4*++)+2!4*++)+!
!测试主容器运行是否正常,在命令行下输入命令
,,,((!5(#6
,(如果设置无误,会弹出 ( 主容器运行界面。关掉程序
&.写一个 程序,这个程序当然可以用任何一个文本编辑器来写,然后用命令编
译,我们为了今后开发方便,将 平台与 ) 平台绑定起来。运行 ) 平台,
添加库,添加库德步骤如下运行菜单ù(工具##〉库管理器,点新建库,然后输入库名,不妨
设为 ,然后点(添加 文件,将 - 中的几个 文件都添加进来。
".在 ) 中新建一个常规项目,程序内容如下:
(!-!74
6)-(-(38((9
,(6)-((6:;9
,,,(0<!6!:=(0*(3(8>=;4
,,,(0<!6!:=#####)6(/*#####=;4
,,,(0<!6!:=/<(-((*=?-:;;4
,,,(0<!6!:=/<()<(6@6((*=?:;(;4
,,,(0<!6!:=#####)6(3*#####=;4
,,,(-((A(:;4
,,,(0<!6!:=B((6(((-(-*=?!:;;4
,,,(0<!6!:=8-(((6@6<(*=?!B:;;4
,,,(0<!6!:=((--)(*=?!:;;4
,,,(0<!6!:=C((-*=?!1-:;;4
,(D
D
这时有错误提示,说明 。- 库并未找到,需要在工程窗口中,单击库(的右键,将我
们前面加入的 库添加近来。
然后设置运行命令,打开工程属性窗口,单击运行,在主类编辑框中输入 !5E在运行
参数编辑框中输入(#6(*!38。确定返回
这时直接点 ) 工具条上的运行按钮,程序运行,会弹出 ( 运行窗口,并在
) 下面的输出框中打印出结果信息。
如果运行到这一步,则一切 了
补充:在 - 中进行配置与 ) 稍有不同。不过步骤一样,首先要在 - 中添加
库。
在窗口#受选项中,选择 ,展开其子项,在构建路径—〉用户库中,新建一个库,名称
不妨定为 ,然后,添加 ,将我们前面所列出的 文件都导入。第二步就是在新建
的工程中添加库和设置运行参数。比如新建了一个项目,在导航器中右键单击其属性,在
属性对话框中选择 构建路径,在“库”选项卡中单击按钮,添加库,选择用户库,然后
下一步把 添加进来。设置运行参数的时候,可以按如下步骤进行:选择编写好的
类,右键单击,运行方式—〉运行,弹出运行对话框,在 (- 中选择新建,不
妨起名为 6((,设置 类为 !5E在自变量中输入参数:在上例中则为,(#6
*!38。然后运行之,则会在工作区下面的控制台上输出结果,表
示配置成功。
另:其实在项目中不一定非要完全运行,而且我们一般要创建的是多个
Agent。一般我们也可以把它编译为类之后,使用命令行启动图形界面的管理
器,使用 start new agent 添加 Agent 即可。
Jade 行为类
在前面的例子中, 所作的工作都定义在了 6 中,实际上它具有的行为和执行的动
作都应该定义在 )6 类中,我们可以对生成 ) 类的实例,然后将任务或者动作
代码放在对 )6 类中的 - 方法中,- 方法是必须要有的。56 类还有很
多 子 类 ,分别对 应 着 不 同 类 型 的 )6 , 包 括 056E@6-()
E()E-<--() 等。
一个 的行为表示它能够执行的任务,通过继承 !-!)6!56 来实现。
然后在 类中通过 56()方法将行为加入进来。当一个 启动(通过
6()方法)后,行为可以在任何时间加入进来。
要定义 56 必须实现其 -()方法,它定义了 的执行时的实际动作,而
()方法指名了一个行为是否已执行完毕,是否要从行为池中删除。
((一个 可以并发执行多个 )6。每个 线程启动后执行的过程如下:
1.SimpleBehaviour 简单行为
下面的例子中我们不在 6()中打印信息,而是把它放在一个简单行为中:
(!-!74
(!-!)6!0564
6)-(-(3856((9
6)-((6:;9
056(F)6(A((056:;9
)((A(4
(覆盖(56(类的 - 这一抽象方法
6)-((-:;9
0<!6!:=3(8(56(6*(3(8>=;4
0<!6!:=#####)6(/*#####=;4
0<!6!:=/<(-((*=?-:;;4
0<!6!:=/<()<(6@6((*=?:;(;4
0<!6!:=#####)6(3*#####=;4
-((A(:;4
0<!6!:=B((6(((-(-*=?!:;;4
0<!6!:=8-(((6@6<(*=?!B:;;4
0<!6!:=((--)(*=?!:;;4
0<!6!:=C((-*=?!1-:;;4
(A(64
D
(:;在父类中也是一个抽象方法
6)-()(:;9
6(4
D
D4
56:F)6;4
D
D
((!5(56*3856
2.简单行为和循环行为(CyclicBehaviour)组合的例子
一个 中可以加入各种 56 构成 -()6。
在 ) 工程中编写下列程序,过程如前所描述。
-()64
(!-!4
(!-!)6!564
(!-!)6!<--564
(!-!)6!G0564
6)-(-(0(((9
(((((-(H6056((56(9
(((((((((((A( 4
((((((((6)-((-:;(9
((((((((((((-(:;(9
((((((((((((((((-( *
剩余37页未读,继续阅读
资源评论
- tommato852012-03-22基于jade的agent开发,适合入门的人,不错!
gaoxingliang20060216
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Python脚本,用于从用户那里获取两个数字,并计算它们的和、差、积和商
- 编程题类别+样题.rar
- hiprint for Vue2/Vue3 打印、打印设计、可视化设计器、报表设计、元素编辑、可视化打印编辑
- python从网络上获取某个网页的内容,并解析HTML,提取并打印出页面上的所有链接
- python从用户输入中读取两个数字,并计算它们的和
- python从一个文本文件中读取数据,统计文件中每个单词的出现次数
- 一套权限管理系统的用户界面(UI)实现
- python从一个文本文件中读取数据,然后计算并打印出文件中单词的频率
- 基于Java的PPT文档生成器设计源码
- 从用户输入中获取两个数字,并计算它们的和
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功