《面向agent开发环境JACK的实践》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:程显毅,聂文惠,谢军编著
  • 出 版 社:北京:科学出版社
  • 出版年份:2009
  • ISBN:9787030249807
  • 页数:244 页
图书介绍:JACKTMIntelligentagents(JACK)是AOS(TheagentOrientedSoftwareGroup)公司的旗舰产品,在全世界商业上得到很广泛的应用。JACK?是使用基于组件的方法来构建、运行和整合商业级的多agent智能系统的面向agent的开发平台。JACK是完全建立在Java程序语言的基础上,它除了包含Java开发环境的所有组件之外,还提供了特殊的扩展来实现agent的行为,支持BDI和team。JACK与Java的关系就像C和C++语言一样。面向Agent的程序是一个先进的软件模拟范例,主要应用在展示类似人类行为的、会推理的特殊领域,非常适合于例如分布式的商务系统,智能工具和模拟,航空交通管理等领域。

第1章 绪论 1

1.1 面向对象的软件设计方法的不足 1

1.2 什么是agent 3

1.3 为什么需要AOP 5

第2章 面向agent建模 9

2.1 面向agent建模的特点 9

2.2 对象与agent 10

2.3 多agent模拟软件简介 10

第3章 JACK agent语言概述 15

3.1 JACK介绍 15

3.2 JACK agent语言对Java的扩充 16

3.2.1 语法扩充 16

3.2.2 语义扩充 18

3.3 agent类 18

3.3.1 agent定义 18

3.3.2 agent声明 19

3.3.3 agent的成员和方法 22

3.3.4 Hanoi塔中的agent定义 24

3.4 能力类 25

3.4.1 能力定义 25

3.4.2 能力声明 26

3.4.3 能力的成员和方法 28

3.4.4 Hanoi塔中的能力定义 29

3.5 事件类 31

3.5.1 什么是事件 31

3.5.2 标准事件 32

3.5.3 BDI事件 35

3.5.4 自动事件 37

3.5.5 事件定义 39

3.5.6 事件的成员和方法 39

3.5.7 事件声明 41

3.5.8 Hanoi塔中的事件定义 43

3.6 视图类 44

3.6.1 视图定义 44

3.6.2 视图声明 44

3.6.3 视图定义实例 44

3.7 agent通信 51

3.7.1 局部通信 51

3.7.2 远程通信 51

3.7.3 JACOB 54

3.7.4 agent通信语言 58

3.8 规划类 65

3.8.1 什么是规划 65

3.8.2 有限状态机 66

3.8.3 游标(指针) 66

3.8.4 规划定义 68

3.8.5 规划的成员和方法 68

3.8.6 规划声明 72

3.8.7 Hanoi塔中的规划定义 79

3.9 规划中的推理方法 82

3.9.1 规划流控制方法 82

3.9.2 规划挂起方法 84

3.9.3 规划中的事件控制方法 85

3.9.4 选择规划 91

3.9.5 可应用规划集的产生 92

3.9.6 可用规划集 96

3.9.7 选择规划实例 97

3.10 信念集类 99

3.10.1 信念集定义 100

3.10.2 信念集成员和方法 101

3.10.3 信念集声明 105

3.10.4 信念集回调 109

3.10.5 信念集关系操作 110

3.10.6 Hanoi塔中的信念定义 111

第4章 JACK开发环境 112

4.1 打开JDE 112

4.2 JDE菜单栏 113

4.2.1 主菜单 113

4.2.2 文件菜单 113

4.2.3 编辑菜单 114

4.2.4 视图菜单 114

4.2.5 实体菜单 115

4.2.6 跟踪菜单 115

4.2.7 工具菜单 117

4.2.8 窗口菜单 119

4.2.9 帮助菜单 119

4.3 JDE工具栏 119

4.3.1 JDE操作按钮 120

4.3.2 切换按钮 121

4.4 JDE编译器工具 121

4.4.1 选项标签 121

4.4.2 编译程序标签 122

4.4.3 运行程序标签 123

4.4.4 转换非-JDE JACK标签 123

4.4.5 项目文件和文件列表标签 125

4.5 代码编辑器 125

4.5.1 代码编辑器选项栏 125

4.5.2 保存 126

4.6 JDE浏览器 127

4.6.1 浏览器交互 127

4.6.2 有名元素 127

4.6.3 对象重用 128

4.6.4 一般功能 128

4.7 JDE浏览器:agent模型 134

4.7.1 agent类型 134

4.7.2 能力类型 135

4.7.3 规划类型 135

4.7.4 事件类型 138

4.7.5 有名数据 140

4.7.6 团队(team)类型 140

4.7.7 角色类型 141

4.7.8 有名角色 143

4.8 JDE浏览器:数据模型 143

4.8.1 信念集类型 143

4.8.2 视图类型 147

4.8.3 团队数据类型 149

4.8.4 外部类 149

4.9 项目细节 150

4.10 首选项 151

4.10.1 项目视图标签 151

4.10.2 文本编辑标签 152

4.10.3 设计工具标签 153

4.10.4 图形面板标签 154

4.10.5 字体标签 154

4.10.6 高级标签 155

第5章 JACK team 156

5.1 什么是JACK team 156

5.2 基本概念 156

5.3 team结构 158

5.3.1 结构 158

5.3.2 行为 161

5.3.3 信念传播 161

5.4 team 161

5.4.1 team的定义 161

5.4.2 team声明 162

5.4.3 team的构建和初始化 162

5.5 角色 165

5.5.1 角色定义 165

5.5.2 角色声明 166

5.5.3 角色的基类 167

5.6 team信念的联接 168

5.6.1 联接源声明 169

5.6.2 联接目标声明 169

5.6.3 动态信念联接 171

第6章 JACK设计工具 172

6.1 概述 172

6.1.1 设计工具的特点 172

6.1.2 启动设计工具 172

6.2 构件类型 174

6.3 设计工具窗口 176

6.3.1 控制工具条 176

6.3.2 工具条 176

6.3.3 画布 181

6.4 设计管理 181

6.4.1 创建设计 181

6.4.2 编辑设计 182

6.5 Hanoi塔程序设计视图 184

第7章 JACK编程实践 185

7.1 应用程序的创建 185

7.2 JACK编程步骤 187

7.2.1 案例一 187

7.2.2 案例二 200

7.3 规划编程 202

7.3.1 规划定义模板 202

7.3.2 功能抽象——推理方法或子规划 204

7.3.3 逻辑说明 205

7.3.4 逻辑成员 206

7.3.5 复合逻辑表达式 208

7.4 JACK team编程 209

7.5 信念联接编程 217

7.5.1 合成信念联接 217

7.5.2 合成信念联接举例 219

7.5.3 继承信念联接 223

7.5.4 继承信念联接举例 225

7.6 Ping程序分析 226

7.6.1 问题描述 226

7.6.2 主程序分析 227

7.6.3 Pinger agent程序分析 227

7.6.4 Ping事件的源程序 228

7.6.5 规划React的源程序 228

7.6.6 编译和运行 229

7.7 ATM程序分析 230

7.7.1 ATM程序的组成 230

7.7.2 ATM的编译与执行 231

7.8 面向agent的聊天系统分析 232

7.8.1 问题描述 232

7.8.2 系统分析 233

参考资料 239

附录:商品化智能体开发工具清单 240