1、,机器人操作系统,国防科技大学 杨学军,报告提纲,机器人操作系统的兴起 什么是机器人操作系统 挑战与关键技术,机器人操作系统的兴起,2007年1月,比尔盖茨在科学美国人上撰文预言:机器人即将重复个人电脑崛起的道路,走进千家万户 机器人行业现今面临的挑战,和30年前电脑行业遇到的问题“如出一辙” 流行的应用程序很难在五花八门的装置上运行 在一台机器上使用的编程代码,几乎不可能在另一台机器发挥作用,如果想开发新的产品,通常得从零开始 原因 硬件:标准化工作未开始 软件:没有操作系统 媲美30年前的一篇文章:1977年9月 Intel公司创始人罗伯特诺伊斯撰文 预言计算机将走进千家万户,我们站在时代
2、的节点:一个崭新的产业即将崛起。比尔盖茨,机器人操作系统的兴起,微软的机器人开发平台RDS (Robotics Developer Studio) 目标是开发不同机器人硬件平台的应用程序 与机器人或控制计算机平台的Windows配合 2006年12月推出第一版,最新版本RDS 4为2012年3月发布 不开放源代码,但可免费下载 有60家以上的硬件/软件厂商支持或使用该软件开发工具 例如乐高公司,开源的机器人软件项目 开源机器人基金会的ROS 美国的Player/Stage 欧洲的Orocos 欧洲的YARP 日本的OpenRTM-aist ,机器人操作系统的兴起,机器人操作系统的兴起,ROS(
3、Robot Operating System) 起源于2007年Stanford大学AI实验室与Google合作的项目,2008年起由Willow Garage公司维护,2013年起移交开源机器人基金会(OSRF)管理 最初动机是提高代码的可重用率 构建一个能够整合不同研究成果,实现算法发布、代码重用的机器人软件平台 目前包含了2000多个机器人平台的常用软件包 涵盖了硬件驱动、模拟仿真、运动规划、运动控制、环境感知等各个方面,机器人操作系统的兴起,ROS(Robot Operating System) 正在逐步成为机器人研发领域的事实标准 被大学和研究机构广泛采用 学术界指定的创新验证平台
4、DARPA资助的项目和竞赛的平台 已经应用于多种地面/空中/水面/水下无人平台 逐渐向工业领域扩展 对ABB, Adept, Fanuc, Motoman, Universal Robots公司的产品提供支持,“Since version 1.0 was released in 2010, ROS has become the de facto standard in robotics software.”MIT Technology Review, 2013,机器人操作系统的兴起,“Robotics is really a software problem. It is not a hard
5、ware problem.” Google架构师、ROS创始人Scott Hassan,报告提纲,机器人操作系统的兴起 什么是机器人操作系统 挑战与关键技术,机器人是由程序控制运行的机械装置,能脱离人的直接干预而独立形成判断 三个组成部分 计算机 机械机构 电子设备,什么是机器人操作系统?,我们认为:机器人操作系统是运行在机器人中、管控机器人的软件体系 定义了机器人的功能和特性软件“定义”机器人 与计算机操作系统存在诸多不同 软件架构 运行机制 功能 人机交互方式使用,什么是机器人操作系统?,什么是机器人操作系统?,软件架构 纵向看为两层结构:资源管理层、行为管理层,什么是机器人操作系统?,软
6、件架构资源管理层 管理与控制机器人硬件资源,屏蔽机器人硬件资源的异构性,并以优化的方式实现对硬件资源的使用 处理器、存储器 通信设备、各类传感器、行为部件等外设 管理机器人软件资源,实现软件的部署、运行和协同 管理数据的传输、存储和处理 提供人机交互接口,软件架构行为管理层 管理与控制机器人的高级认知(例如观察、判断、决策),并将其转化为作用于物理世界的行动 观察 判断 决策 行动,什么是机器人操作系统?,软件架构横向上的分布式结构 机器人的软硬件模块构成分布式结构 传感器节点 摄像机、激光扫描测距仪、GPS、惯性测量单元、声呐等 计算存储通信节点 运行判断、规划决策等算法 地图、知识库等 无
7、线通信模块、消息等 控制执行节点 对机械臂等执行部件的行动控制 多机器人也构成分布式结构 多个异构的机器人节点 后台服务器节点等,什么是机器人操作系统?,什么是机器人操作系统?,软件架构横向上的分布式结构 一个典型的机器人操作系统案例,全局地图,判断决策,服务器,无线通信,什么是机器人操作系统?,运行机制执行“观察判断决策行动控制”闭环行为链 通过传感器观察环境和自身状态 根据观察,形成判断 进行决策,产生行动方案 控制行动的过程,什么是机器人操作系统?,功能 资源管理 管理软硬件、数据资源 满足传感器驱动、行动控制、无线通信、分布式构架等机器人的特殊要求 行为管理 实现行为的抽象和管理,支撑
8、行为的智能化 管理“观察判断决策行动控制”闭环链的调度执行 提供可复用的共性基础软件库和工具 满足行为的可靠性(dependency)约束,什么是机器人操作系统?,人机交互方式 输入 任务、环境、自身状态 输出 机器人的行动,什么是机器人操作系统?,使用机器人是一个“用具(Appliance)”,实际上,随着移动式外设的日益普及,我们可能越来越说不清到底什么才是机器人。这些机器人的功能高度专业化,深入千家万户,但外貌却跟科幻作品中那些两足拟人机器大相径庭 比尔盖茨,报告提纲,机器人操作系统的兴起 什么是机器人操作系统 挑战与关键技术 行为计算 分布架构 观察与信息融合 机器学习与判断 规划与决
9、策 行动与控制,挑战一行为计算,问题与挑战 按什么样的行为模型设计机器人操作系统架构? 如何在机器人操作系统中实现一个行为模型?,挑战一行为计算,行为主义 强调运用自然科学的实证方法,对社会生活的过程作系统的、经验的和因果的解释的思潮和流派 产生于20世纪初的美国,代表人物是华生和斯金纳 行为的定义:用以适应环境变化的各种系统的反应 行为模型 是从大量实际行为中概括出来作为行为的理论抽象、基本框架或标准 对系统执行某种任务行为的抽象化概括,用来衡量和分析他们在做什么,约翰华生,伯尔赫斯斯金纳,挑战一行为计算,博伊德OODA循环一个著名的行为模型 描述军事对抗的系统行为,也可以描述一般系统的行为
10、,约翰博伊德(19271997),美国陆军上校,凭借他战斗飞行员的经验和对动力机动性的研究,发明了能量机动理论、OODA理论等。,挑战一行为计算,以博伊德OODA循环为模型设计机器人操作系统 机器人操作系统行为管理层结构 观察:通过传感器观察环境和自身状态 判断:根据观察,形成判断 决策:产生行动方案 行动控制:控制行动的过程 “判断”是行为管理的重难点,挑战一行为计算,更高效的行为运行支撑机制 传统的计算机操作系统运行机制 进程对运行资源的抽象,确保多道程序安全并发运行 线程对处理器的抽象,确保处理器资源的高效利用 虚存对存储的抽象,确保对各级存储器件的高效使用 文件对数据的抽象,确保数据的
11、高效存储与检索 面向行为,机器人操作系统如何抽象?如何高效实现? 难道仅仅是OODA行为链?,挑战二分布架构,问题与挑战 基于“新三互”的分布式架构 多机器人的实时协同 抗干扰的无线通信,挑战二分布架构,传统操作系统的“老三互” “互连、互通、互操作”机器人操作系统的“新三互” “互操作、互理解、互遵守”,挑战二分布架构,机器人操作系统的“新三互”互操作 以无线通信为基础的“互连”、“互通”、“互操作” 机器人操作系统的“新三互”互理解 机-机 不同机器人获取的信息不同,一致理解是难题 人-机 自然语言理解 姿态理解 触觉、嗅觉 表情、情感理解 ,挑战二分布架构,机器人操作系统的“新三互”互遵
12、守 物理规则 遵守物理定律 信息规则 遵守信息域的协议等 社会规则 遵守道德、法律等,挑战二分布架构,多机器人的实时协同 机器人操作系统三个层次的实时性 结点实时性 消息实时性 任务实时性,结点实时性,消息实时性,结点实时性,处理 结点,处理 结点,网络,任务实时性,挑战二分布架构,基本解决思路,抗干扰的无线通信 “自”扰、“地”扰(环境干扰)、“敌”扰 研究点 频谱管理技术 认知无线电 受限带宽通信 水声抗干扰通信技术 THz等新的通信技术 ,挑战二分布架构,挑战三观察与信息融合,问题与挑战 环境的表示 环境的观察 传感器信息融合,挑战三观察与信息融合,环境的表示 机器人世界模型的共性化、模
13、块化、标准化 共性、通用、一致的多种世界模型 面向不同的行为与应用场景 针对多传感器、多机器人信息 环境特征和世界模型的数据库Xiao et al. (2013),挑战三观察与信息融合,环境的观察 世界模型的构建和更新 尤其是动态条件下的可靠实现 机器人定位和自身状态的监测 利用外部信息的定位和自主定位 节点的工作状态和本体物理安全状态的监测,挑战三观察与信息融合,传感器信息融合 异构传感器的硬件抽象与消息格式标准化 高精度、鲁棒的多传感器信息融合算法库 多机器人协同观察信息筛选机制,挑战四机器学习与判断,问题与挑战基于机器学习的判断 基于大数据与传统人工智能相结合的判断,具有人类的判断能力是
14、机器人学追求的目标,挑战四机器学习与判断,基于机器学习的判断 复杂环境下的学习模型 增量式与逐步精化的学习方法 模式识别,挑战四机器学习与判断,大数据与传统人工智能方法相结合的判断 利用大数据提高判断的准确度 例:IBM智力问答机器人Watson,挑战五规划与决策,问题与挑战 面向复杂环境和复杂任务的规划与决策 复杂环境开放、非结构化、动态、非确定 复杂任务具有高自主性要求 面向不确定性的可靠规划与决策 面向多机器人协同的规划与决策,挑战五规划与决策,面向复杂环境和复杂任务的规划与决策 领域无关规划决策库基于抽象的、通用的动作模型和系统状态模型 灵活性强、复用性好 问题描述与求解解耦,可以应用
15、多种成熟的规划算法 领域相关规划决策库使用专门模型描述需要规划的动作类型和系统状态 针对性强、效率较高 规划决策算法的复合机制与接口领域相关规划决策与领域无关规划决策相结合,实现复杂环境中复杂任务的规划与决策,挑战五规划与决策,面向不确定性的可靠规划与决策 针对存在感测不确定性的规划问题,采用非确定性模型与概率模型,如 采用马尔可夫决策过程 采用基于模拟的框架,将增强学习与规划、行动进行结合 规划失败时,提供可靠的恢复机制,如 旋翼无人机的紧急拉升 地面移动机器人的旋转恢复动作,挑战五规划与决策,面向多机器人协同的规划与决策 多智能体机器人系统(MARS) 每个成员仅具有不完全的信息处理和问题
16、求解能力 采用分布式控制 规划过程是异步、并发的 例如,德国人工智能研究中心(DFKI)的“分布式机器人系统集成式任务规划”(IMPERA)使用标准化、模块化的任务规划架构解决异构多机器人的协同规划与决策问题,挑战六行动与控制,问题与挑战 机器人行为柔性自主控制 机器人在行动和执行过程中需要实现不同自主等级的控制,以适应环境的动态变化以及响应人不同程度的人工干预 挑战在于自主控制等级的柔性调节 机器人协同行为的一致性控制 协同工作的多个机器人或执行部件,必须达成协调一致的行动 难点在于分布式网络条件下的时间、空间和任务协调,挑战六行动与控制,机器人可变自主权限管理与控制机制 自主权限的表征自主
17、等级划分与表示 支持不同自主等级控制方法设计,刻画相应的适用条件提供不同自主等级控制的转换管理,根据环境/任务等各种条件进行自主等级选择,挑战六行动与控制,分布式协同一致性控制机制 提供一致性控制策略,依据控制拓扑和网络动态特性进行跟踪和预测机器人队形/构型保持和变换,多机器人合作式避碰,挑战六行动与控制,面向行为的通用控制接口 定义行为层次的统一控制接口,适应不同类型、不同任务的机器人提供多机器人、机器人与人之间的通用互操作控制协议,与传统计算机操作系统的区别,第二次机器革命即将发生机器人即将走进千家万户,应该抓住机器人操作系统这一交叉前沿方向,掌握机器人技术的主动权,带动相关技术领域和产业的发展!,