面向agent开发环境JACK的实践

当前位置:首页 > 计算机网络 > 软件工程/开发项目管理 > 面向agent开发环境JACK的实践

出版社:科学出版社
出版日期:2009-7
ISBN:9787030249807
页数:244页

章节摘录

插图:第1章 绪论近年来,面向对象的软件设计方法(object oriented,OO)成为主流的软件设计方法,但在复杂软件设计过程中,面向对象的软件设计方法显得力不从心,进而出现了面向agent(智能体)的设计方法(agent oriented,AO)。从受欢迎的桌面上各种各样的程序向导,到自动信息搜索agent,以及具有推理能力的agent,都使用了Ao方法。随着计算机技术和网络技术的发展,智能系统和分布式系统越来越多,这种趋势为agent的发展提供了平台。与面向对象编程(object oriented programming, OOP)一样,面向agent编程(agent oriented programmin9,AOP)也需要引入一些影响最终软件系统的整体逻辑结构和物理结构的关键性概念。在AOP中,系统是通过agent来建模的,这些agent是自治的,在实时环境中,对事件的反应具有主动的决策能力。1.1面向对象的软件设计方法的不足在说起agent之前,我们有必要先说一下object,因为agent实际上是由object“进化”而来的。OO的其中一个作用是划定知识界限:什么属于这个对象以内(比如对象中的成员),什么属于这个对象以外。不可否认,OO概念是软件界的一个里程碑,为提高软件开发效率做出了很大的贡献,但是在使用过程中,OO也暴露出了一些不足。

前言

目前的工业系统正向大型、复杂、动态和开放的方向转变,传统的工业系统和多机器人技术在许多关键问题上遇到了严重的挑战。分布式人工智能(distribu-ted artificial intelligence,DAI)与多智能体系统(multi-agent system,MAS)理论为解决这些问题提供了最佳途径,但智能体应用研究存在着严重的理论和实践脱节的问题,造成这种状况的原因之一是面向agent的程序开发工具没有得到很好的应用,本书的目的就是为读者掌握面向agent编程抛砖引玉。JACK agent的程序设计思想已在许多分布式问题求解任务领域中显示了独特的功能,这是因为BDI(belief,desire,and intention)方法为其提供了模型的验证。JACK agent为专注于人工智能研究的学者提供了一个优秀的操作平台,并且使程序语言智能化由空想变为现实。JACK语言程序比通常的Java语言程序多了一个JACK数据包,该数据包封装了面向agent的功能,很容易感受到JACKagent的实时性和解决分布式问题的灵活性,这样的功能是面向对象的Java语言所不具备的。全书共7章,第1、2章主要论述了面向agent编程的需求和面向agent建模,第3章介绍了JACK agent的语言概述,第4章介绍JACK开发环境,第5章介绍JACK team的语法,第6章介绍JACK的可视化编程工具,第7章结合实践,详细分析了JACK程序设计的过程,附录中列出了已经商品化的智能体开发工具的清单。第1、2、5章由程显毅老师编写,第3章由谢军老师编写,第4、6、7章由聂文惠老师编写;全书由程显毅老师统稿。感谢陈小波、梁军、楚威、黄胜、张俊、王军、于冬梅等在资料整理过程中所做的工作。面向agent编程是一门比较年轻的学科,仍处于蓬勃发展时期,许多问题作者并未作深入研究,一些有价值的新内容也来不及收入本书,加上作者知识水平和实践经验有限,书中难免存在不足之处,敬请读者批评指正。

书籍目录

《智能科学技术著作丛书》序前言第1章  绪论  1.1  面向对象的软件设计方法的不足  1.2  什么是agent  1.3  为什么需要AOP  第2章  面向agent建模  2.  1面向agent建模的特点  2.2  对象与agent  2.3  多agent模拟软件简介第3章  JACK agent语言概述  3.1  JACK介绍  3.2  JACK agent语言对Java的扩充    3.2.1  语法扩充    3.2.2  语义扩充  3.3 agent类    3.3.1 agent定义    3.3.2  agent声明    3.3.3  agent的成员和方法    3.3.4  Hanoi塔中的agent定义  3.4  能力类    3.4.1  能力定义    3.4.2  能力声明    3.4.3  能力的成员和方法    3.4.4  Hanoi塔中的能力定义  3.5  事件类    3.5.1  什么是事件    3.5.2  标准事件    3.5.3  BDI事件    3.5.4  自动事件    3.5.5  事件定义    3.5.6  事件的成员和方法    3.5.7  事件声明    3.5.8  Hanoi塔中的事件定义  3.6  视图类    3.6.1  视图定义    3.6.2  视图声明    3.6.3  视图定义实例  3.7  agent通信    3.7.1  局部通信    3.7.2  远程通信    3.7.3  JACOB    3.7.4  agent通信语言  3.8  规划类    3.8.1  什么是规划    3.8.2  有限状态机    3.8.3  游标(指针)    3.8.4  规划定义    3.8.5  规划的成员和方法    3.8.6  规划声明    3.8.7  Hanoi塔中的规划定义  3.9  规划中的推理方法    3.9.1  规划流控制方法    3.9.2  规划挂起方法    3.9.3  规划中的事件控制方法      3.9.4  选择规划    3.9.5  可应用规划集的产生    3.9.6  可用规划集    3.9.7  选择规划实例  3.10  信念集类    3.10.1  信念集定义    3.10.2  信念集成员和方法    3.10.3  信念集声明    3.10.4  信念集回调    3.10.5  信念集关系操作    3.10.6  Hanoi塔中的信念定义第4章  JACK开发环境  4.1  打开JDE  4.2  JDE菜单栏    4.2.1  主菜单    4.2.2  文件菜单    4.2.3  编辑菜单    4.2.4  视图菜单    4.2.5  实体菜单    4.2.6  跟踪菜单    4.2.7  工具菜单    4.2.8  窗口菜单    4.2.9  帮助菜单  4.3  JDE工具栏    4.3.1  JDE操作按钮    4.3.2  切换按钮  4.4 JDE编译器工具    4.4.1  选项标签    4.4.2  编译程序标签    4.4.3  运行程序标签    4.4.4  转换非-JDE JACK标签    4.4.5  项目文件和文件列表标签  4.5  代码编辑器    4.5.1  代码编辑器选项栏    4.5.2  保存  4.6  JDE浏览器    4.6.1  浏览器交互    4.6.2 有名元素    4.6.3  对象重用    4.6.4  一般功能  4.7  JDE浏览器:agent模型    4.7.1  agent类型    4.7.2  能力类型    4.7.3  规划类型    4.7.4  事件类型    4.7.5  有名数据    4.7.6  团队(team)类型    4.7.7  角色类型    4.7.8  有名角色  4.8  JDE浏览器:数据模型    4.8.1  信念集类型    4.8.2  视图类型    4.8.3  团队数据类型    4.8.4  外部类  4.9  项目细节  4.10  首选项    4.10.1  项目视图标签    4.10.2  文本编辑标签    4.10.3  设计工具标签    4.10.4  图形面板标签    4.10.5  字体标签    4.10.6  高级标签第5章  JACK team    5.1  什么是JACK team  5.2  基本概念  5.3  team结构    5.3.1  结构    5.3.2  行为    5.3.3  信念传播  5.4  team    5.4.1  team的定义    5.4.2  team声明    5.4.3  team的构建和初始化  5.5角色    5.5.1  角色定义    5.5.2  角色声明    5.5.3  角色的基类  5.6  team信念的联接    5.6.1  联接源声明    5.6.2  联接目标声明    5.6.3  动态信念联接第6章  JAcK设计工具  6.1  概述    6.1.1  设计工具的特点      6.1.2  启动设计工具  6.2  构件类型  6.3  设计工具窗口    6.3.1  控制工具条    6.3.2  工具条    6.3.3 画布  6.4  设计管理    6.4.1  创建设计    6.4.2  编辑设计  6.5  Hanoi塔程序设计视图第7章  JACK编程实践  7.1  应用程序的创建  7.2  JACK编程步骤    7.2.1  案例一    7.2.2  案例二  7.3  规划编程    7.3.1  规划定义模板    7.3.2  功能抽象——推理方法或子规划    7.3.3  逻辑说明    7.3.4  逻辑成员    7.3.5  复合逻辑表达式    7.4  JACK team编程  7.5  信念联接编程    7.5.1  合成信念联接    7.5.2  合成信念联接举例    7.5.3  继承信念联接    7.5.4 继承信念联接举例  7.6  Ping程序分析    7.6.1  问题描述    7.6.2  主程序分析    7.6.3  Pinger agent程序分析    7.6.4  Ping事件的源程序      7.6.5  规划React的源程序    7.6.6  编译和运行  7.7  ATM程序分析    7.7.1  ATM程序的组成    7.7.2  ATM的编译与执行  7.8  面向agent的聊天系统分析    7.8.1  问题描述    7.8.2  系统分析参考资料附录:商品化智能体开发工具清单

编辑推荐

《面向agent开发环境JACK的实践》是由科学出版社出版的。

作者简介

《面向agent开发环境JACK的实践》讲述了:面向agent的开发平台JACK完全建立在Java程序语言的基础上,它除了包含Java开发环境的所有组件之外,还提供了特殊的扩展来实现agent的行为,支持BDI和team。面向agent的程序是一个先进的软件模拟范例,主要应用在展示类似人类行为的、会推理的特殊领域,非常适合于如分布式的商务系统、智能工具和模拟、航空交通管理等领域。《面向agent开发环境JACK的实践》是http://www.agent-software.com/shared/resources/index.html所提供的JACK用户手册基础上,结合多年的开发实践经验整理而成,第1、2章主要论述了面向agent编程(AOP)的需求,第3章介绍了JACKagent的语法,第4章介绍JACK的开发环境,第5章介绍JACK team的语法,第6章介绍JACK的可视化编程工具,第7章结合实践,详细分析了JAcK程序设计的过程,附录中列出了已经商品化的智能体开发工具清单。
《面向agent开发环境JACK的实践》是一本工具书,可作为高等学校电子信息、自动化、自动控制、机电工程、计算机及其他相关专业研究生和本科高年级学生的“知识工程”课程教材,也可供从事agent应用系统开发的科技工作者参考。
《面向agent开发环境JACK的实践》结合多个多agent系统的统计案例,利用JACK提供的语法,给出了基于JACK的多agent系统的设计方法,包括BDI、tean、可视化等非常重要的概念。通过对《面向agent开发环境JACK的实践》的学习,读者可以实现对一些稍复杂的多agent系统的开发。

图书封面


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



发布书评

 
 


 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024