基于多Agent机器人系统的图书归类解决方案
具体任务。隐式任务需要结合环境信息以及机器人的自身状态,转化为显示任务序列加以实现。以机器人取书为例,假设机器人位置为(5, 8},书位置为(32, 36),推车位置为(67, 57)。将书放入推车为隐式任务目标,其可分解为显示任务目标序列:移动到位置点(32,36),夹持位置点在(32, 36)的书,移动到位置点(67,57),放置书到位置点在(67, 57)的推车.一般而言,机器人Agent 的任务可用下式表示:
Task=(Goal,Precondition,Body,Effects,Setting)
其中Goal 表示任务task 的目标,一般可用自然语言描述;Precondition 表示任务task 实现所需的前提条件;Body 表示任务task 的子任务序列或显式目标序列;Setting 表示任务task 的附加约束条件集;Effects 表示任务task 实现后对环境的效果集。
隐式任务在分解转化为显式任务时,也可能生成某些中间隐式任务,从而形成机器人任务分解的一种与/或树结构。其中与表示上层任务目标通过实现所有下层任务目标才能完成,或表示上层任务目标可通过选择实现下层的某个任务目标加以完成。一般而言,树状结构的最底层分支的端点都是机器人可直接执行的显式任务目标,并且是与树结构,即显示任务目标序列。
2 基于多Agent的机器人系统的体系设计
2.1 环境设置
本系统为了便于机器人识别,将图书馆中所有的书柜用阿拉伯数字进行编号,即每一书柜对应相应的标签编码段,跟图书馆中每个柜上设置放置的图书数目一致,并将其存入规则库中。推车设计成具有若干个格子,且设定每个格子只放一本书,便于机器人区分某本书的在推车上的具体位置,推车上的格子也以阿拉伯数字标识,便于机器人存储、记忆。
2.2 系统结构
本系统利用多Agent 系统减轻人工分类、摆放图书的工作量,其工作流程如图1 所示:
图1 系统体系结构。
(1)当机器人的机械手拿一本图书时,机器手上的自动识别系统即带有传感器的环境识别Agent 立即感知环境变化,且获取图书条形码信息,并将这些信息传递给图书识别Agent.这一过程主要是实现从环境状态(E)到感知(Per)的映射(函数see 的输出是一种感知,即感知的输入):see : E--> Per.
(2)信息库包括了图书信息的集合和图书馆的电子地图,存储着所有图书条形码的信息、书名及其图书标签和图书馆电子地图。通过传感器识别出条形码,图书识别Agent 接收条形码信息,将信息分解,并跟信息库中已有的条形码进行模式匹配,找到符合的样本,返回图书的基本信息,用函数book(馆号,条形码,条形码号,书名,标签)表示,其中标签指的是在图书馆里的位置编码,分为2 大部分,前一部分字母遵循中国图书馆图书分类法,指出图书的类别,而后一部分则为每个图书馆各自的编码方式,存储着每本图书在馆内的具体位置。并将这个函数传递给图书归类Agent.
(3)规则库是规则的集合,存储着中国图书馆图书分类法及本地图书馆子规则。
图书归类Agent 接收函数book,将对应的标签跟规则库中的规则进行比较得到图书在馆中的位置,并将其分解为某类图书的某个具体书柜,用函数position(编码号,书柜号)将位置函数传递给动作Agent.
(4)动作选择函数获得推理结果实现从内部状态到动作(Ac)的映射:action:I--> Ac.动作Agent将图书放入推车的空格子中,并在临时库中记录每本书的书柜号和推车格号,同一书柜号的图书可以记录在一条记录中,在原先记录尾部追加其推车格号即可,那么机器人可将推车中同一个书柜的图书一次性摆放,不需下次折回。临时库见表1 所示。
表1 临时库表一
(5)当推车上的格子都摆满后,动作Agent 传递消息给智能决策Agent 图书已摆满,则智能决策Agent查看临时库中的各个书柜号,根据信息库中已存储的图书馆的电子地图即各个书柜的摆放次序利用改进BUG 算法计算出各个目的地的优先次序和机器人的行走路径,并指导动作Agent 到各个目的地完成摆书操作,最后回到还书处等待下一次的摆书动作。
3 关键算法分析
3.1 图书归类
依据图书馆给图书分类编码的标准,参照中国图书馆图书分类法,因为国家图书馆图书分类法,从首字符可以分出大的图书所属类别,从一级类别中再细分,部分首字符,例如:E、U、V 就代表一类,不需要再细分,而有些要细分出来,则需要首四位字符的判断才能分析出来,更特别的是审计类编码规则,要有前六位才可以分辨出来。据此我们设计图书分类编码,共12 位,由26 个大写字母和十个数字0~9 组成,前四位代表图书的类别,如果按照中国图书馆分类法,字符不足四位的用通用字符*补足,例如:U 代表交通运输
- 基于黑板的多Agent智能决策支持系统的Agent实现(08-26)
- 双轴微机械陀螺仪的移动机器人运动检测系统(11-14)
- 智能救援机器人的设计(12-03)
- 机器人在锂电池生产中的作用(07-05)
- MEMS传感器加快机器人智能化步伐(05-03)
- EDMA在实时图像处理系统中的应用(09-15)