ICS定义

  • 定义
  • 用处

定义

在机器人运动规划曾名经常用到一个概念:ICS(inevitable collision state),这里将其翻译为不可避免碰撞状态,在泡泡机器人也翻译为不可逆碰撞状态。

定义的原文可以参考05年这篇对其进行定义的论文.

一般对ICS的定义为:在某一状态下,无论采取任何控制输入流,都会不可避免地发生碰撞。,且考虑到任意动态和静态障碍物。

状态s是在t时刻是一个碰撞状态的定义为:当且仅当存在一个障碍物使得和状态s有交集。

相似地,可以对inevitable collision obstacle进行定义:产生与特定障碍碰撞的不可避免碰撞状态的集合。

Similarly, it is possible to define an inevitable collision obstacle as the set of inevitable collision states yielding a collision with a particular obstacle.

例如:假设P点是空间W中的一个点,在其前面有一个墙时,其初速度为v,从初速度v刹车到零时所需要的距离d(stop),和墙体之间的距离为d(v),若d(v)小于d(stop)时,无论在未来采取任何动作,都不能避免碰撞的发生。

上图中的灰色区域该速度v下的ICS,这个ICS的大小,即d(v)的长度与初速度v有关。假设d(v)与初速度成线性关系,那么ICS的大小就成会下图斜线所示。

用处

可用在navigation、motion planning中,任何一个机器人系统都不应该将自己放置于一个不可避免碰撞状态中。
首先在navigation中:这里的导航指的是指定机器人在下一个时间步中应该执行的基本运动,类似于决策。navigation必须保证机器人的安全,在具有移动障碍物的环境中,这是非常重要的,需要同时考虑环境中移动障碍物的未来行为和机器人的动力学。在这个框架中,不可避免碰撞状态概念的好处是显而易见的。通过设计,不可避免的碰撞状态整合了机器人系统和移动障碍物的动力学。
当设计到运动规划时,ICS的概率同样有用,考虑机器人系统在部分已知的环境中运动时的运动规划问题。系统受到感知约束(视野有限),环境包含运动障碍物,一些是能够提前知道的,一些又不能是提前知道的。基于有用的先验信息,能够计算得到机器人的nominal轨迹。 然后,在执行时可能会发小当检测到新的障碍物时,会来不及对其进行躲避了。这里的问题就是计算安全运动(safe motions),也就是能够保证无论发生什么,机器人系统都不会处于无法与unexpected障碍物避免碰撞的状态。这个问题和导航与运动规划之间的相互配合有关系。

参考:

  • Fraichard T, Asama H. Inevitable collision states—A step towards safer robots?[J]. Advanced Robotics, 2004, 18(10): 1001-1024.
    https://hal.inria.fr/inria-00182063v1/document

  • Petti S, Fraichard T. Safe motion planning in dynamic environments[C]//2005 IEEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2005: 2210-2215.
    https://hal.inria.fr/inria-00182046/document

  • 泡泡机器人:https://www.sohu.com/a/335501481_715754

ICS(不可避免碰撞状态)定义相关推荐

  1. 动态规划(一)一一状态定义和状态转移方程

    动态规划真让人看得头疼,这只是一种思想,并没有一定的解题规律,当问题出现的时候,对于不太熟悉动态规划的人来说,确实有点难以想到,一般都是采用暴力求法.这里贴一个知乎链接,我觉得动态规划讲的还挺好的,什 ...

  2. 洛谷:P3092 [USACO13NOV]No Change G(状压+二分,独特的状态定义,不写会后悔一辈子的题)

    TP 一开始的思路是定义状态 dp[N][1<<16]dp[N][1<<16]dp[N][1<<16] ,维护的是能剩下最多的钱,但显然 n 那么大直接寄. 如何去 ...

  3. hdu 5119 (类似于划分数的状态定义) (DP中的计数问题)

    题目描述:求n个数中异或值大于m的方案数有多少个? 设状态f[i][j]代表前i个数异或值为j的方案数有f[i][j]种,那么对于j来说要么选第i个数与前面的i-1个数中的某些数构成j,f[i-1][ ...

  4. 关于自动驾驶车安全保证、验证和认证的综述

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 作者丨Penny@知乎 来源丨 计算机视觉深度学习和自动驾驶 arXiv上传于2022年2月6号的综述 ...

  5. vue3函数写法中的状态、函数定义

    vue3中有两种写法:类写法.函数写法(hooks) 类写法跟vue一样,函数写法是新增的: 状态是什么: 页面中要显示的东西,放在一个变量中,每次更改完值,就会被拦截,同时再重新渲染页面: 状态的对 ...

  6. PNAS:复杂系统方法定义脑状态:外部刺激促使不同大脑状态之间的转换

    系统神经科学的一个基本问题是:如何通过外部刺激,例如唤醒.睡眠.昏迷或神经精神疾病等因素,促使大脑从一种状态转换到另一种状态.这就需要对大脑状态进行准确的定义,而迄今为止对大脑状态的定义依然是难以确定 ...

  7. 魔性“合成大西瓜”背后,我用 350 行代码解开了碰撞之谜!

    [CSDN 编者按]高中物理最烦的几个题:碰撞.守恒.弹性.摩擦--今天全赶一块了.以合成大西瓜为代表的小球碰撞类游戏好玩是好玩,就是有点费程序员.本文,我们将利用简单的 JavaScript 物理引 ...

  8. 01 C语言实现动态气泡碰撞和移动的效果,小球碰撞,Win7气泡壁纸,碰撞算法

    C语言实现动态气泡碰撞和移动的效果 作者 将狼才鲸 创建日期 2023-01-29 Git源码仓库地址:C语言实现动态气泡碰撞和移动的效果 CSDN文章地址:01 C语言实现动态气泡碰撞和移动的效果 ...

  9. 电子工程术语和定义列表

    按字母顺序排列: 电子工程术语和定义列表,按字母顺序排列 1-Wire 单线(加地线)通信协议. 更多信息,请参考: 1-Wire存储器产品 1-Wire接口方案 1-Wire软件工具 1-Wire ...

最新文章

  1. debian 7上安装svn
  2. 如何删除非当前用户下的JOB
  3. Android Studio 导入应用时报错 Error:java.lang.RuntimeException: Some file crunching failed, see logs for de
  4. [leetcode] Add Binary
  5. UI Blue crystall class sap_bluecrystal is added here to html node
  6. 用startSmoothScroll实现RecyclerView滚动到指定位置并置顶,含有动画。
  7. oracle jdk_两个Oracle JDK的故事
  8. bigdecimal判断等于0_vue2.0源码用到的工具函数,12个简易的复用函数,看看有多简单...
  9. mysql for 语句执行顺序_MySQL使用profile分析SQL语句执行过程
  10. Python 小白从零开始 PyQt5 项目实战(1)安装与环境配置
  11. Java Web(十) JDBC的增删改查,C3P0等连接池,dbutils框架的使用
  12. 充一次电使用一年的手机_超级手机电池:充一次电用一年多?
  13. PHP中时间戳和时区
  14. rbf神经网络_黄小龙,陈阳舟:高阶非线性不确定多智能体系统自适应RBF神经网络协同控制...
  15. SHA256算法原理介绍以及实现
  16. Apple Developer苹果签名工具
  17. 酷派手机锁屏壁纸提取
  18. 计算机算单元格个数,罕见知识点–Excel 参数这样用,才能算出区域内文本单元格的数量...
  19. 网络第三方投票工具搭建的代码应该怎么写?
  20. dev c++怎么设置断点_linux操作系统引导与启动——内核启动和初始化(二)断点...

热门文章

  1. web transparent render
  2. pdf阅读器下载官方下载
  3. 电商宝SCRM | 微信个人号的高效维护与变现
  4. 逆向工程核心原理源代码
  5. 【07节】Python3+Selenium4自动化 unittest 测试框架详解
  6. C# 类型“BaseService<T>”同时存在于“ZR.Service, Version=1.0.0.0, Culture=n
  7. 地址线和片选线的关系
  8. ArcGISModelBuilder创建与应用
  9. 20.2 shell脚本结构和执行
  10. 来自阿里P8的灵魂拷问