当前位置:首页 > 经验 >

python算法大全(python必背100例)

来源:原点资讯(www.yd166.com)时间:2022-11-03 06:20:29作者:YD166手机阅读>>

导读:本文是一些机器人算法(特别是自动导航算法)的Python代码合集。

其主要特点有以下三点:

  • 选择了在实践中广泛应用的算法;
  • 依赖最少;
  • 容易阅读,容易理解每个算法的基本思想。

希望阅读本文后能对你有所帮助。

前排友情提示,文章较长,建议收藏后再看。

本文经授权转自公众号CSDN(ID:CSDNnews),译者:弯月

00 目录

环境需求

怎样使用

本地化

  • 扩展卡尔曼滤波本地化
  • 无损卡尔曼滤波本地化
  • 粒子滤波本地化
  • 直方图滤波本地化

映射

  • 高斯网格映射
  • 光线投射网格映射
  • k均值物体聚类
  • 圆形拟合物体形状识别

SLAM

  • 迭代最近点匹配
  • EKF SLAM
  • FastSLAM 1.0
  • FastSLAM 2.0
  • 基于图的SLAM

路径规划

  • 动态窗口方式
  • 基于网格的搜索
  • 迪杰斯特拉算法
  • A*算法
  • 势场算法
  • 模型预测路径生成
  • 路径优化示例
  • 查找表生成示例
  • 状态晶格规划
  • 均匀极性采样(Uniform polar sampling)
  • 偏差极性采样(Biased polar sampling)
  • 路线采样(Lane sampling)
  • 随机路径图(PRM)规划
  • Voronoi路径图规划
  • 快速搜索随机树(RRT)
  • 基本RRT
  • RRT*
  • 基于Dubins路径的RRT
  • 基于Dubins路径的RRT*
  • 基于reeds-shepp路径的RRT*
  • Informed RRT*
  • 批量Informed RRT*
  • 三次样条规划
  • B样条规划
  • 贝济埃路径规划
  • 五次多项式规划
  • Dubins路径规划
  • Reeds Shepp路径规划
  • 基于LQR的路径规划
  • Frenet Frame中的最优路径

路径跟踪

  • 纯追迹跟踪
  • 史坦利控制
  • 后轮反馈控制
  • 线性二次regulator(LQR)转向控制
  • 线性二次regulator(LQR)转向和速度控制

项目支持

01 环境需求

  • Python 3.6.x
  • numpy
  • scipy
  • matplotlib
  • pandas
  • cvxpy 0.4.x

02 怎样使用

  1. 安装必要的库;
  2. 克隆本代码仓库;
  3. 执行每个目录下的python脚本;
  4. 如果你喜欢,则收藏本代码库:)

03 本地化

1. 扩展卡尔曼滤波本地化

python算法大全,python必背100例(1)

该算法利用扩展卡尔曼滤波器(Extended Kalman Filter, EKF)实现传感器混合本地化。

蓝线为真实路径,黑线为导航推测路径(dead reckoning trajectory),绿点为位置观测(如GPS),红线为EKF估算的路径。

红色椭圆为EKF估算的协方差。

相关阅读:

概率机器人学

http://www.probabilistic-robotics.org/

2. 无损卡尔曼滤波本地化

python算法大全,python必背100例(2)

该算法利用无损卡尔曼滤波器(Unscented Kalman Filter, UKF)实现传感器混合本地化。

线和点的含义与EKF模拟的例子相同。

相关阅读:

利用无差别训练过的无损卡尔曼滤波进行机器人移动本地化

https://www.researchgate.net/publication/267963417_Discriminatively_Trained_Unscented_Kalman_Filter_for_Mobile_Robot_Localization

3. 粒子滤波本地化

python算法大全,python必背100例(3)

该算法利用粒子滤波器(Particle Filter, PF)实现传感器混合本地化。

蓝线为真实路径,黑线为导航推测路径(dead reckoning trajectory),绿点为位置观测(如GPS),红线为PF估算的路径。

该算法假设机器人能够测量与地标(RFID)之间的距离。

PF本地化会用到该测量结果。

相关阅读:

概率机器人学

http://www.probabilistic-robotics.org/

4. 直方图滤波本地化

python算法大全,python必背100例(4)

栏目热文

Python常用算法(python常见算法库)

Python常用算法(python常见算法库)

来源:博客园 链接:http://kb.cnblogs.com/page/210687/算法一:快速排序算法快速排序是由...

2022-11-03 06:15:01查看全文 >>

python学习经典算法(python初学者必备十大算法)

python学习经典算法(python初学者必备十大算法)

一般应用分类分析用于提炼应用规则利用构建算法过程中的分类规则;以决策树为例:决策树分类节点表示局部最优化的显著特征值,每...

2022-11-03 06:41:03查看全文 >>

python算法详细图解(python三种算法)

python算法详细图解(python三种算法)

作者:武沛齐 出处:http://www.cnblogs.com/wupeiqi/本文版权归作者和博客园共有为啥会有上述...

2022-11-03 06:28:27查看全文 >>

python寻找波峰波谷算法(python 自动找曲线规律)

python寻找波峰波谷算法(python 自动找曲线规律)

01 引言作为金融时间序列的专题推文,【手把手教你】时间序列之日期处理主要介绍了使用Python处理时间序列的日期和统计...

2022-11-03 06:27:27查看全文 >>

python算法实例精讲(python编程100个经典算法)

python算法实例精讲(python编程100个经典算法)

前言:这篇文章主要介绍了Python集合常见运算,结合具体实例形式分析了Python使用集合生成随机数的几种常用算法的效...

2022-11-03 06:16:49查看全文 >>

python算法入门实例(python初学者必备十大算法)

python算法入门实例(python初学者必备十大算法)

1.猜数字 1到4能组成多少个互不相同且不重复数字的三位数?分别是?分析:可填在百位、十位、个位的数字都是1、2、3、4...

2022-11-03 06:09:52查看全文 >>

python算法设计步骤(最简单编程算法python)

python算法设计步骤(最简单编程算法python)

Python因其可读性而受到称赞。 这使它成为一种很好的第一语言,也是脚本和原型设计的流行选择。在这篇文章中,我们将研究...

2022-11-03 06:02:26查看全文 >>

python常见算法库(python100例入门图解)

python常见算法库(python100例入门图解)

导读:Python数据工具箱涵盖从数据源到数据可视化的完整流程中涉及到的常用库、函数和外部工具。其中既有Python内置...

2022-11-03 06:06:37查看全文 >>

python 排列组合算法(python排列组合结果输出)

python 排列组合算法(python排列组合结果输出)

一、排列组合公式1、排列公式2、组合公式二、计算排列组合1、摆放图书任务琼丝女士要把10 1010本书放到书架上,其中有...

2022-11-03 06:16:45查看全文 >>

算法图解python(python常见算法库)

算法图解python(python常见算法库)

相信大家已经对 Pandas 或 SQL 等其他关系数据库非常熟悉了。我们习惯于将行中的用户视为列。但现实世界的表现真的...

2022-11-03 06:03:01查看全文 >>

文档排行