经典文献阅读之--als_ros(移动机器人的可靠蒙特卡罗定位)

0. 简介

在本文中,我们关注移动机器人定位的可靠性问题。蒙特卡罗定位(MCL)广泛用于移动机器人的定位。然而,由于缺乏判定MCL估计可靠性的方法,其安全性仍难以保证。本文提出了一种新型定位框架,能够同时实现鲁棒的定位、可靠性估计和快速重新定位。该方法的实现方式与MCL的估计方式相似。通过在定位过程中估计已知和未知障碍,该方法可以增强对环境变化的定位鲁棒性;然而,不可预见的错误仍可能导致定位失败。该方法还包括一个可靠性估计功能,使机器人能够知道定位是否失败。此外,该方法可以无缝集成全局定位方法,通过重要性采样实现。因此,可以在减少全局定位噪声影响的同时,实现从失败状态的快速重新定位。我们使用装备有2D激光雷达的轮式移动机器人进行了三种类型的实验。结果显示,能够实现可靠的MCL,包括鲁棒定位、自我故障检测和快速故障恢复。相关的代码可以在Github中找到

1. 主要贡献

本文的贡献在于实现了上述方法的集成。正如前文所述,所提出的方法基本上是我们之前提案的综合。然而,由于缺乏模型和实现难度,我们之前未能实现这种集成。在这项工作中,我们提出了一种新的图形模型,用于姿态跟踪过程,并利用自由空间特征解决了全局定位问题。因此,可以实现同时达到上述三个目标的可靠定位。我们使用装备有2D激光雷达的轮式移动机器人进行了基于模拟、数据集和我们自己平台的实验。通过模拟实验,我们展示了所提方法在数值上比传统方法表现得更好。通过数据集和我们自己平台的实验,我们证明了该方法也适用于实际机器人。本文的贡献总结如下:

  1. 提出了一个新框架,集成了我们之前在[Akai et al.(2018a)Akai, Morales, and Murase, Akai et al.(2018b)Akai, Morales, and Murase, Akai et al.(2020)Akai, Hirayama, and Murase]中提出的方案,并实现了同时进行鲁棒定位、可靠性评估和快速重定位的可靠定位
  2. 发布了基于ROS的新框架实现,该实现使用2D激光雷达,并作为开源软件公开

2. 问题设定

在本研究中,我们专注于移动机器人的二维定位问题。目标机器人的姿态由二维位置( x x x y y y)和朝向角度 θ θ θ组成。我们假设机器人配备了二维激光雷达(LiDAR)和惯性导航系统(INS)。INS的测量数据用 u u u表示,用于预测机器人姿态。LiDAR的测量数据用 z z z表示,用于与表示地图的 m m m进行匹配。在本工作中,我们的目标是利用 u u u z z z的序列以及 m m m来估计当前机器人的姿态。此外,我们试图同时实现鲁棒的定位、可靠性估计和快速重新定位。鲁棒定位和可靠性估计通过改进的姿态跟踪算法实现,该算法将在下一小节中描述。快速重新定位通过全局定位与姿态跟踪算法的概率融合实现

在这里插入图片描述

图1:姿态跟踪的图形模型

3. 姿态跟踪的图形模型

…详情请参照古月居

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/509271.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

springcloud基本使用二(远程调用)

创建两个springboot maven子项目 子项目名称分别为order-server和user-server 配置user-server子项目: 所需依赖: <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId> </dependenc…

线程安全问题+读写者问题

⭐小白苦学IT的博客主页 ⭐初学者必看&#xff1a;Linux操作系统入门 ⭐代码仓库&#xff1a;Linux代码仓库 ❤关注我一起讨论和学习Linux系统 1.什么是线程安全问题&#xff1f; 线程安全问题是指在多线程环境中&#xff0c;当多个线程同时访问共享数据时&#xff0c;由于操作…

【RISC-V】如何使用release的risc-v gnu toolchain

riscv64-elf-ubuntu-22.04-gcc-nightly-2024.03.01-nightly.tar.gz 首先去release页面中获取相应的压缩包 将压缩包解压到想解压的位置&#xff0c;这里我选择了 mv Downloads/riscv64-elf-ubuntu-22.04-gcc-nightly-2024.03.01-nightly.tar.gz riscv64-tool-chain/然后解压…

Mac - Keychron K3 Pro 功能键改键 -via 改键配置 For Mac

前言 Keychron K3 Pro键盘连接Mac使用&#xff0c;顶部一排功能键&#xff0c;默认是Mac的多媒体功能键。F1&#xff5e;F12功能键&#xff0c;需要按&#xff1a;Fn F1&#xff5e;F12。 而在我的日常工作中&#xff0c;常用的是F1&#xff5e;F12&#xff0c;期望F1~F12功…

开源推荐榜【Pear Admin Flask 用python来创建后台管理系统】

最新技术高效快速开发&#xff0c;前后端分离模式&#xff0c;开箱即用。 核心模块包括&#xff1a;用户、角色、职位、组织机构、菜单、字典、日志、多应用管理、文件管理、定时任务等功能。 代码量少、学习简单、功能强大、轻量级、易扩展&#xff0c;轻松开发从现在开始&…

Web日志/招聘网站/电商大数据项目样例【实时/离线】

Web服务器日志分析项目 业务分析 业务背景 ​ 某大型电商公司&#xff0c;产生原始数据日志某小时达4千五万条&#xff0c;一天日志量月4亿两千万条。 主机规划 &#xff08;可略&#xff09;日志格式&#xff1a; 2017-06-1900:26:36101.200.190.54 GET /sys/ashx/ConfigH…

jdk1.8下载与安装

jdk1.8下载与安装 jdk1.8下载jdk1.8安装jdk环境配置环境测试 jdk1.8下载 可以通过官网来下载&#xff0c;但是需要Oracl账号注册&#xff0c;所以这里我提供了百度网盘下载链接&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1NBapId_3UbWrz_qqf95Wgg?pwddlk7 提取码…

Python100个库分享第6个—esmre

目录 专栏导读安装安装失败解决方案常见用法1&#xff1a;匹配邮箱常见用法2&#xff1a;查找HTML标签&#xff1a;常见用法3&#xff1a;替换URL链接&#xff1a;总结 专栏导读 &#x1f338; 欢迎来到Python办公自动化专栏—Python处理办公问题&#xff0c;解放您的双手 &a…

螺钉拧紧扭矩曲线的表现——SunTorque智能扭矩系统

智能扭矩系统-智能拧紧系统-扭矩自动控制系统-SunTorque 螺钉拧紧扭矩曲线是描述螺钉在拧紧过程中扭矩与转角关系的曲线。在螺钉拧紧过程中&#xff0c;扭矩与转角之间存在一定的关系&#xff0c;这种关系可以通过扭矩曲线来反映。螺钉拧紧扭矩曲线常见的不同表现主要包括以下…

nginx | nginx反向代理/负载均衡/缓存

文章目录 一、Nginx 反向代理1.1 nginx 文件结构1.2 默认的nginx配置文件1.3 实践中的 nginx.conf 二、Nginx 负载均衡2.1 热备负载均衡2.2 轮询负责均衡2.3 加权轮询负载规则2.4 ip_hash 负载均衡2.5 对特定资源实现负载均衡2.6 对不同域名实现负载均衡2.7 实现带有URL重写的负…

vue3源码解析——ref和reactive定义响应式的区别

ref 和 reactive 是 Vue 3.0 中用于定义响应式数据的两个新 API。它们有以下区别&#xff1a; ref 定义单个响应式数据 数据类型可以是任意类型。它通常用于定义原始数据类型为响应式数据。返回一个响应式对象&#xff0c;该对象包含一个 .value 属性&#xff0c;可用于获取和设…

在ScadaFramework里配置采集Modbus设备

ScadaFramework是一个实现SCADA功能的软件工具&#xff0c;经过简单配置之后&#xff0c;即可采集设备数据&#xff0c;并进行存储、监控、组态可视化&#xff0c;并可将数据上传至平台。 本文将介绍如何在ScadaFramework中配置&#xff0c;以采集Modbus协议的设备。 一、添加链…

win10配置CLion2022+ubuntu20.04远程部署

背景 在博文ubunut搭建aarch64 cuda交叉编译环境记录中&#xff0c;使用的ubuntu20.04虚拟机安装eclipse来交叉编译aarch64的程序&#xff0c;然后发送到jetson板子上执行。开发一段时间后发现eclipse IDE使用起来不太便捷&#xff0c;因此&#xff0c;考虑使用CLion IDE&…

分库分表 ——12 种分片算法

目录 前言 分片策略 标准分片策略 行表达式分片策略 复合分片策略 Hint分片策略 不分片策略 分片算法 准备工作 自动分片算法 1、MOD 2、HASH_MOD 3、VOLUME_RANGE 4、BOUNDARY_RANGE 5、AUTO_INTERVAL 标准分片算法 6、INLINE 7、INTERVAL COSID 类型算法 …

鸿蒙(HarmonyOS)ArkTs语言基础教程开发准备

本文档适用于HarmonyOS应用开发的初学者。通过构建一个简单的具有页面跳转/返回功能的应用&#xff08;如下图所示&#xff09;&#xff0c;快速了解工程目录的主要文件&#xff0c;熟悉HarmonyOS应用开发流程。 在开始之前&#xff0c;您需要了解有关HarmonyOS应用的一些基本概…

【洛谷】P9240 [蓝桥杯 2023 省 B] 冶炼金属

题目链接 P9240 [蓝桥杯 2023 省 B] 冶炼金属 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路 这道题可以用数学的方法去做&#xff0c;但是我想不到&#x1f607;有兴趣的可以去看看数学的题解 比较简单的思路就是二分查找&#xff0c;轻松简单不费脑&#xff0c;带你…

pygame的搭建

pygame的介绍与环境搭建 Pygame模块 安装 WindowsR打开命令窗口&#xff0c;输入&#xff1a; pip install pygame 或者安装指定版本 pip install pygame 2.3.0常用模块 在Pygame框架中有很多模块&#xff0c;官方网址pygame news 。 其中最常用模块的具体说明如下表所示…

【Java SE】深入理解static关键字

&#x1f970;&#x1f970;&#x1f970;来都来了&#xff0c;不妨点个关注叭&#xff01; &#x1f449;博客主页&#xff1a;欢迎各位大佬!&#x1f448; 文章目录 1.static关键字1.1 static的概念1.2 static的作用1.3 static的用法1.3.1 static修饰成员变量1.3.2 static修饰…

Ubuntu20安装python3.10

1、添加 deadsnakes PPA 到源列表 add-apt-repository ppa:deadsnakes/ppa apt update 2、安装 apt install python3.10 3设置默认版本为 Python3.10 查看所有python版本 ls -l /usr/bin/python* update-alternatives --install /usr/bin/python3 python3 /usr/bin/pytho…

居里亚斩获金定奖,第13届广州定制家居展见证品牌实力飞跃

2024年3月30日&#xff0c;第13届广州定制家居展圆满落幕。 作为年度首场定制家居专业大展&#xff0c;第13届广州定制家居展的展览规模达到了100,000平方米&#xff0c;吸引了超过350,000人次的关注&#xff0c;以及800多家参展企业的参与。 在百花齐放的定制家居品类中&#…