3.4.c 确定性采样:基于采样空间采样代码解析
category
type
status
slug
date
summary
tags
password
icon
天行健,君子以自强不息。
—《周易·乾卦》
🏰代码及环境配置:请参考 环境配置和代码运行!
本节提供了基于控制空间采样的代码测试,其中代码是以1.1节中的自行车模型为基础进行实现的:
3.4.c.1 基于状态空间采样的代码实现
在
tests/sampling_based_planning/state_based_sampler_test.py
中定义了轨迹的生成方式,定义了起始点和终点的信息后,使用五次多项式生成轨迹,其中:start_p
:轨迹的起点trajectory_length
:轨迹的纵向长度(沿Frenet坐标系的轴)max_l
:采样最大的横向min_l
:采样最小的横向delta_l
:的分辨率delta_s
:生成轨迹点的分辨率3.3.c.2 基于状态空间采样的代码测试
在测试中,分为两个阶段,第一个阶段从起始点开始,按照不同的横向位置()采终点状态,并用五次多项式连接成轨迹(效果图中的洋红色曲线),第二阶段,以第一阶段轨迹的最后一个点为起点,然后继续按照不同的横向位置()采终点状态,也用五次多项式连接成轨迹(效果图中的灰色曲线);然后设置不同的cost来评估每一条曲线,最后基于cost选出最优轨迹(为了测试,代码中的cost没有填充,只是随机选择了一条轨迹,效果图中的红色曲线)。
从效果图也可以看出,基于状态空间的采样方式可以生成平滑的轨迹曲线,但不一定满足动力学约束,同时由于可以直接限制终点的状态,因此可以最大限度的保证轨迹在可行驶区域内。
上一篇
动手学控制理论
下一篇
端到端-理论与实战视频课程
Loading...