主要内容

plannerHybridAStar

混合A*路径规划器

描述

混合A*路径规划对象为具有非完整约束的车辆在给定的二维空间中生成光滑路径。

请注意

混合A*规划器通过插值运动原语和基于的解析展开来检查地图中的碰撞验证距离财产状态验证器反对。如果验证距离属性设置为Inf,对象根据状态验证器中指定的映射的单元格大小进行插值。在将占用地图分配给计划人员之前,先将其膨胀,以考虑车辆的大小。

创建

描述

例子

计划者=Hybridastar(验证器使用混合a*算法创建路径规划器对象。指定验证器输入为职业地图validatorVehicleCostmap对象。的验证器输入设置状态验证器财产。

计划者=Hybridastar(验证器名称,值属性通过使用一个或多个名称-值对参数创建路径规划器的。将每个属性名称括在单引号(“”)内。

属性

全部展开

规划的状态验证器,指定为职业地图validatorVehicleCostmap基于SE(2)状态空间的对象。

要生成的运动基本体的长度,指定为逗号分隔对,由“MotionPrimitiveLength”和以米为单位的正标量。对于大型贴图或稀疏环境,增加长度。对于密集环境,减少长度。

请注意

“MotionPrimitiveLength”不能超过圆周长度的四分之一基于“MinTurningRadius”

数据类型:

车辆的最小转弯半径,指定为逗号分隔对,包括“MinTurningRadius”和以米为单位的正标量。

请注意

价值“MinTurningRadius”设置为使“MotionPrimitiveLength”不能超过基于它的圆周长度的四分之一。

数据类型:

要生成的运动基本体的数量,指定为逗号分隔对,由“NumMotionPrimitives”一个大于等于3的正奇数。

向前移动的成本乘数,指定为逗号分隔对,由“ForwardCost”一个正标量。增加成本值以惩罚前进的运动。

数据类型:

反向旅行的成本乘法器,指定为逗号分隔对组成“ReverseCost”一个正标量。增加成本值以惩罚反向运动。

数据类型:

运动方向切换的附加代价,指定为由逗号分隔的对组成“DirectionSwitchingCost”和一个正标量。增加成本值以惩罚方向切换。

数据类型:

尝试从该实例中可用的最低成本节点进行分析扩展的时间间隔,指定为由以下组成的逗号分隔对“分析扩展区间”和一个正整数标量。

混合A*路径规划器以该实例中可用的最低成本从节点展开运动基本体:

  • 要扩展的节点数量取决于在方向和有效性上生成的原语的数量,循环直到“分析扩展区间”是达到了。

  • 然后,计划者尝试使用Reeds-Shepp模型从树上进行分析展开,以达到目标姿势。如果尝试失败,计划者将重复该循环。

通过缩短间隔来增加到最终目标的Reeds-Shepp连接的检查次数,从而提高算法性能。

输出路径中插入位姿之间的距离,指定为逗号分隔对,由“InterpolationDistance”和以米为单位的正标量。

数据类型:

对象的功能

计划 找到两个姿势之间的无障碍路径
显示 可视化计划的路径

例子

全部折叠

使用Hybrid a *算法规划车辆通过停车场的无碰撞路径。

创建映射并将其分配给状态验证程序

在停车场的车辆成本图中加载单元格的成本值。

负载parkingLotCostVal.mat% costVal

创建一个binaryOccupancyMap具有成本价值。

map=二进制职业映射(costVal);

为碰撞检查创建一个状态验证器对象。

验证器= validatorOccupancyMap;

将映射分配给状态验证程序对象。

验证器。地图=地图;

规划和可视化路径

初始化plannerHybridAStar对象的状态验证程序对象。指定MinTurningRadiusMotionPrimitiveLength规划者的属性。

planner=plannerHybridAStar(验证器,“MinTurningRadius”4.“MotionPrimitiveLength”6);

将车辆的起始姿势和目标姿势定义为[x, y,θ)向量。xy以米为单位指定位置θ以弧度为单位指定方向角度。

startPose=[6 10 pi/2];%[米,米,弧度]目标概率=[90 54-pi/2];

计划一条从开始姿势到目标姿势的路径。

refpath=计划(计划员、启动人员、目标人员);

使用show函数可视化路径。

显示(计划)

图中包含一个轴对象。标题为Hybrid A*Path Planner的axes对象包含6个类型为image、line、scatter的对象。这些对象表示正向运动基本体、反向运动基本体、正向路径、起点和目标。

工具书类

多尔戈夫,德米特里,塞巴斯蒂安·特龙,迈克尔·蒙特梅洛,詹姆斯·迪贝尔。自动驾驶路径规划中的实用搜索技术.美国人工智能协会,2008年。

[2] Petereit, Janko, Thomas Emter, Christian W. Frey, Thomas Kopfstedt和Andreas Beutel。“混合A*在非结构化户外环境中自主移动机器人路径规划中的应用”。ROBOTIK 2012:第七届德国机器人会议2012年,第1-6页。

扩展功能

C/C++代码生成
使用Matlab®编码器生成C和C++代码™.

介绍了R2019b