《暑期学校-群体机器人.ppt》由会员分享,可在线阅读,更多相关《暑期学校-群体机器人.ppt(81页珍藏版)》请在三一办公上搜索。
1、群体机器人简介,谭营教授,目录,什么是群体机器人群体机器人演示群体机器人项目群体机器人一般模型群体机器人算法举例,目录,什么是群体机器人从机器人到机器人集群(Collective robotics)从群体智能到群体机器人(Swarm Robotics)群体机器人特性群体机器人演示群体机器人项目群体机器人一般模型群体机器人算法举例,什么是群体机器人,机器人集群,选择机器人集群原因单个机器人很难(无法)解决问题多个机器人可以提升性能冗余性:问题可以更容易解决成本低:多个简单个体比一个复杂个体便宜机器人集群分类远程控制集群中心控制集群自主控制集群,机器人集群,机器人集群的特长领域环境探索Enviro
2、nmental exploration材料运输Materials transport坐标感知Coordinated sensing机器人足球Robot soccer搜索救援Search and Rescue,群体智能,Swarm intelligence is“any attempt to design algorithms or distributed problem-solving devices inspired by the collective behaviour of social insect colonies and other animal societies”,群体机器人,
3、将群体智能引入机器人学即为群体机器人学群体机器人学(Swarm robotics)研究如何设计大量相对简单可实现的智能体,通过智能体之间、智能体与环境之间的局部相互作用实现期望的群体涌现性行为。,群体机器人,群体机器人研究的兴起源于生物学启发,是通常意义上的多机器人系统被赋予群体智能属性后的新兴研究领域。自然界中,蚂蚁、白蚁、黄蜂、蜜蜂等社会性昆虫,以及鸟群、鱼群,菌落等都激发出令人惊奇的灵感,这些生物群体显示如何将大量简单的个体通体交互产生群体智能。,群体机器人,群体机器人的特长领域处理放射性废料探索未知星球移动大型物体灾后救援军事应用。,群体机器人,近年来,群体机器人研究得到越来越多的关注
4、。有关的国际会议IEEE Swarm Intelligence会议(2006年开始)Swarm Robotics会议(2004年开始)International Conference on Swarm Intelligence(ICSI 2010-Beijing,ICSI 2011-Chongqing,ICSI 2012-Shenzhen)IEEE CEC,ACM Gecco,群体机器人特性,自然界的生物群体自然群体的特性群体机器人系统要求群体机器人系统特性,生物界的自然群体,自然群体的特性,泛中心化:没有集中控制个体简单自主行为能力局部通信和控制能力通过自组织形成群体行为例如:修复巢穴,捕食
5、,照顾幼崽等等,群体机器人系统要求,可扩展性(Scalability)系统规模的可伸缩性要求群体机器人系统应能在群体的规模发生很大变化时也能自如地加以控制。自组织性(Self-Organized)局部感知和通信能力,自组织性(Self-Organized),系统可以随着复杂度的改变自发调整组织结构,无需外部干预。人类的自组织性为“其实地上本没有路,走的人多了,也便成了路”最好的路会不断被走的人自发加强反例建筑工人合作建筑房屋,局部感知和通信能力,该约束保证机器人间的组织是分布式的。群体机器人中使用全局通信很可能导致规模不可伸缩性能上陷入瓶颈系统的稳定性下降增加新的个体会影响整个系统当然,作为一
6、种控制手段,如更新程序或发出终止指令等的全局通信是可以接受的。,群体机器人系统特性,鲁棒性(Robustness)个体机器人发生功能障碍或整个群体受到环境干扰时也不失控。柔性(Flexibility)能针对不同任务产生模块化的解决方案自治性(Autonomous)自助行为能力同构性(Nearly Homogeneous)群体中角色分工应该相对较少,目录,什么是群体机器人群体机器人演示群体机器人项目群体机器人一般模型群体机器人算法举例,机器人协作爬坡演示,机器人协作救援演示,自学习自组装机器人演示,目标追踪演示,目录,什么是群体机器人群体机器人演示群体机器人项目群体机器人一般模型群体机器人算法举
7、例,群体机器人项目,国内群体机器人系统的研究刚刚起步,而且主要是一些仿真研究。20世纪80年代初,欧美、日本一些研究人员就开始研究移动多机器人系统,起初的项目有CEBOT、SWARMS、ACTRESS等。,群体机器人项目,目前,国外比较成熟的群体机器人研究项目有如下几个The Swarm-Bots ProjectPheromone Robotics ProjectThe I-Swarm ProjectiRobot Swarm Project等等,The Swarm-Bots Project,该项目由比利时布鲁塞尔自由大学IRIDIA实验室MDorigo主持,由欧盟技术委员会资助,2001年10
8、月开始实施,2005年3月结束。该项目的目的是实现群体机器人的智能化和自组装。,The Swarm-Bots Project,单个S-bots机器人,一组S-bots连接起来越过壕沟,The Swarm-Bots Project,两个S-bots协同跨越壕沟,其中左图为仿真实验,右图为实物测试。,The Swarm-Bots Project,单个S-bots无法跨越台阶,两个S-bots协同跨越台阶,机器人协作上台阶演示,机器人协作运输演示,Pheromone Robotics Project,该项目由David Payton教授主持。从2000年开始,到2004年已完成第一阶段的研究。这个项
9、目的目的是提供一种实用、灵活、鲁棒、廉价的群体机器人控制方案,可随意增添机器人数量。他们使用一种能够仿效生物信息素扩散的消息协议实现虚拟信息素,信息素分布的梯度使机器人之间产生吸引或排斥力来产生机器人的移动。,Pheromone Robotics Project,虚拟信息素检测器,虚拟信息素视图,Pheromone Robotics Project,虚拟信息素作用方式,Pheromone Robotics Project,The I-Swarm Project,该项目由Heinz Wtirn 教授主持,开始于2004年,其目的是制造出上千个极微小(大小约2mm2mm1mm)的廉价机器人,使他们
10、在一个小世界中(如在生物体内)完成一些群体任务,如装配、清洁等。,I-Swarm演示,iRobot Swarm Project,MIT在该项目中研制出超过100个个体的机器人群体,已经用于实验和研发平台。这个群体包括机器人个体可以自动对接的自动充电站。大多数的研究工作由Mclurkin和他的同事完成。iRobot Swarm模块的主要软件工具是一个用于控制通信、定位和避障的红外通信系统ISIS。,iRobot Swarm Project,自动充电,目录,什么是群体机器人群体机器人演示群体机器人项目群体机器人一般模型自然界生物群体的协同能力群体机器人个体的一般能力群体机器人模型构建群体机器人算法
11、举例,自然界生物群体的协同能力,按复杂程度递增:细菌通过明确的化学信号实现协作蚁群、白蚁、蜜蜂和黄蜂通过改变环境信息进行协作,如信息素狼群可以与特定个体进行交流特定的姿势和叫声灵长类人类,群体机器人个体的一般能力,有限感知能力局部规划能力非全局通信能力任务分解能力任务分配能力简单学习能力控制与决策能力等等,群体机器人模型构建,群体机器人模型构建,群体机器人建模方法群体机器人通讯方式群体机器人协同方式,群体机器人建模方法,模型是实际系统的抽象,通过模型研究有助于理解系统内部的作用规律。群体机器人系统特征须在其模型中得以体现。群体机器人建模的重要性还体现在对系统规模伸缩性的研究上。,群体机器人建模
12、方法,基于传感器-执行器的建模法对传感器、执行器、环境物体、机器人间的交互及机器人与环境的交互行为分别进行建模微观建模法将机器人模拟为有限状态机宏观建模法系统行为被定义为差分方程,表示在某个时间步处于每个特定状态的机器人平均个数。扩展粒子群算法建模法将粒子群算法模型作为机器人的行为控制模型,微观建模法与宏观建模法,宏观模型能够很快得到粗略的全局行为,微观模型得到的全局行为更为实际,但耗时间较长。作为模型拓展,可以引入概率微观/宏观模型,以模拟噪音和环境干扰。,群体机器人模型构建,群体机器人建模方法群体机器人通讯方式群体机器人协同方式,群体机器人通讯方式,通信是群体机器人动态运行的关键问题按照个
13、体的交互方式可以将通信分为3类:通过环境实现交互通过感知实现交互通过明确通信实现交互,通过环境实现交互,以环境作为通信媒介机器人之间没有明确的通信机器人随着任务的执行改变环境,进而帮助其他机器人完成任务。,通过感知实现交互,机器人位于传感器感知范围之内时,可以相互感知对方的存在。感知是局部交互,机器人之间亦无明确通信。要求机器人具有区分机器人与环境中物体的能力。,通过明确通信实现交互,明确通信包括直接型和广播型通信。网络通信,可以提供解决方案,但不适合群体机器人实时性要求。若机器人之间过分依赖通信获取信息,则当个体数量增加,系统通信需求将呈指数增长。因此,一般以明确通信作为辅助手段。,群体机器
14、人模型构建,群体机器人建模方法群体机器人通讯方式群体机器人协同方式群体机器人体系结构机器人定位机器人的连接自组织与自组装,群体机器人协同方式,机器人的协作控制属于群体机器人系统中的高级控制任务。个体机器人控制系统是实现个体行为的基础,它要求个体具有较强的协作性与自治性。群体行为是个体行为的集成。,群体机器人体系结构,体系结构提供机器人活动和交互的框架,决定着机器人间的信息关系和控制关系。群体体系结构是实现协作行为的基础,决定机器人的合作能力。群体机器人系统体系结构研究如何根据任务类型、机器人个体能力等确定群体机器人的规模及相互关系。,机器人定位,群体模式通过个体间的交互体现出来,而群中并不存在
15、全局的协作控制系统,这意味着每个个体机器人都有自己的局部协作控制系统,要具备在各自的局部协作系统框架内定位相邻个体的能力,所以机器人对相邻个体的快速准确定位是极为重要的。,机器人的连接,主要用于互相间的连接,以执行那些对于单个机器人而言不可能完成的任务,如通过连接跨越壕沟或台阶、用实体链接的机器人共同探索环境等等。这与传统的自重构机器人的研究有相通之处,也为群体机器人的研究提供思路。,自组织与自组装,自组织是一种动态机制,由底层单元的交互呈现出系统的全局性结构。交互的规则仅依赖于局部信息,而不依赖于全局模式。自组织是系统自身涌现的性质。仅通过利用同一种媒介创建时间或空间上的结构。自然界通过系统
16、的自组织解决问题,譬如蚂蚁筑巢、觅食等。理解生物系统如何自组织,就可以模仿这种策略实现群体机器人系统的自组织过程。,目录,什么是群体机器人群体机器人演示群体机器人项目群体机器人一般模型群体机器人算法举例,群体机器人算法举例,群体机器人算法基于假设:复杂的群体行为可以通过智能体间简单的局部作用实现。大量的算法已经在群体机器人系统中得到验证:一些算法实现了基本的功能;另一些算法演示了相对复杂的团队合作行为。各种算法仍然存在一些共同特征。,群体机器人算法基本特性,简单(Elegant)个体机器人尽量简单,往往可以认为是只包含几个状态的有限状态机。可扩展(Scalable)算法应该适用于任意大小的群体
17、,同时适用于加入新个体的情况。分散(Decentralized)机器人的行为是自主的,不受控于任何外部命令局部作用(Local interactions)局部相互作用传播信息以保证系统可扩展性,群体机器人算法举例,室内分散算法分布式地图绘制算法队列行进算法路径链生成算法群体搬运算法,推土聚类协同操作协作躲避坑洞等等,室内分散算法,均匀分散是最早提出的群体机器人算法之一。McLurkin and Smith在iRobot Swarm的应用中描述了均匀分散算法。这个算法的思想非常简单,可以分为两个子算法一个使机器人散开一个用来检测边界以避免碰撞。两个子算法产生不同的群体行为,交替执行。,室内分散算
18、法,机器人均匀分散在相对复杂的环境(左图)和开放的环境(右图),分布式地图绘制算法,建筑物探测、地图绘制是很常见的机器人任务。Rothermich 等人设计出一个在室内环境中绘制地图的算法。群体绘图方法有两个主要优点:多个机器人可以从不同的角度绘图,能比较精确地得绘出角落和边缘。未知环境下单个机器人定位是困难的。多机器人绘图时,当机器人群体前进的时候,全局参考坐标可以保持不变。,分布式地图绘制算法,地图绘制算法效果展示左图:单个机器人的绘制结果右图:所有机器人绘制的地图相互重叠,队列行进算法,在密集的障碍物中移动一大群体机器人同时保持机器人之间的联系是很重要也很基本的问题。Hettiarach
19、chi和Spears 提出一个解决此问题的算法,这个算法基于吸引和排斥的物理学问题。,队列行进算法,40个机器人(黑点)避开障碍物(大红点)、保持紧密队形,行进到目标(黑方形)。,路径链生成算法,Nouyan和Dorigo提出一种路径链生成算法,用来生成从起始点到目的地的路径链。在这个算法中,机器人个体被视为仅具备四种状态(搜寻、探索、链接和完成状态)的状态机。实现这个算法的机器人只具备有限的传感器和较低的通信能力,从而使得该算法在可扩展和容错能力上的表现突出。,路径链生成算法,机器人形成从NEST到PREY路径链,链中的每一个机器人必须在相邻机器人的领域内。路径形成的机器人实体演示,群体搬运
20、算法,这一算法是链路生成算法的拓展。当机器人寻找到从基地到目标点的路径时,将目标搬运到基地。猎物顺着已经形成的路径,被逐个节点,一步步搬运回巢。Nouyan在2006年发表的文章中指出,“我们相信,这项研究是到目前为止机器人自组织研究最复杂的实例”。,群体搬运算法状态转移图,群体搬运算法演示,推土,带有力反馈传感器的个体,聚类,行为规则:N=在一定时间内遇到的个体数加入群体的概率与N成反比离开群体的概率与N成正比,聚类算法演示,协同操作,合作抽出木棒(一个机器人无法完成)当一定时间内无法抽出木棍时,放弃并寻找其他木棍。,协作躲避坑洞算法,躲避坑洞是机器人学中的难题,因为通常情况下,只有机器人处于坑洞边缘处时才能发现而且微小的失误也会导致很严重的后果,这就需要机器人做出迅速的反应躲避危险的发生。Trianni等用了一种常见的进化算法给运动的机器人群体制定控制策略。整个算法非常简单,但不足之处在于实用性大大不足。,Thank You!,