当前位置:网站首页>[path planning] use the vertical distance limit method and Bessel to optimize the path of a star
[path planning] use the vertical distance limit method and Bessel to optimize the path of a star
2022-07-07 23:47:00 【Chinchilla slightly】
Before using general A* Algorithm to plan the path , It can be found that there are many redundant points on the path , As shown in the figure below :

It is obvious from the above figure that some bending points are redundant , Therefore, this section introduces the use of vertical distance limit method to optimize redundant points .
Vertical distance limit method
The idea of vertical distance limit method is also relatively simple , To sum up, it is : Calculate the distance from the current node to the upper node and the lower node , If it exceeds a certain threshold, the current point is deleted from the total set . The general idea is just like its name .

Here I write a function Vertical_distance_limit:

Of course , In this function, I encapsulate another function , That is, the function of calculating the vertical distance compute_vertical_distance
Vertical distance calculation
About vertical distance calculation , We can use vector method , As shown in the figure below :

Use Vector method The steps of calculating the vertical distance can be carried out as follows :
1) First calculate the vector last_to_next Unit vector u_last_to_next
2) Calculate the vector last_to_pos, Calculated after last_to_pos And vector u_last_to_next Dot product of , That is to say last_to_pos To vector u_last_to_next The projection length on the surface L
3) Using vectors u_last_to_next multiply L That's the vector last_to_closest
4) Use last Coordinates of plus last_to_closest You can find out. closest Coordinates of
5) And then you can figure out pos And closest Distance of
The effect of using the vertical distance limit method
After adding the vertical distance optimization, the following effects can be obtained :

The red connecting point in the above figure is the initial A* Algorithm path point , The green connection point is the optimized path point
Use fifth order Bessel to optimize the path
After optimizing the path , We can further use Bezier curve to plan a smoother curve :

Add motion trajectory model
Then we can do as before RRT like that , Increase the speed S Trajectory model of curve , The end result is this :
A* Algorithm + Vertical distance limit method + Bessel + Motion model trajectory
边栏推荐
- HDU - 1260 tickets (linear DP)
- 正畸注意事项(持续更新中)
- ASP. Net core middleware request processing pipeline
- go time包常用函数
- Extract the file name under the folder under win
- [stm32+esp8266 connects to Tencent cloud IOT development platform 3] stm32+esp8266-01s dynamically registers devices on Tencent cloud (at instruction mode) -- with source code
- webflux - webclient Connect reset by peer Error
- Enumeration, simulation, and sorting
- C simple question 2
- Idea automatically generates serialVersionUID
猜你喜欢

Take you hand in hand to build Eureka client with idea

MongoDB快速入门

DataGuard active / standby cleanup archive settings

An example analysis of MP4 file format parsing

MySQL架构

95.(cesium篇)cesium动态单体化-3D建筑物(楼栋)

Pycharm essential plug-in, change the background (self use, continuous update) | CSDN creation punch in

SAP memory parameter tuning process

archery安装测试
![P1067 [noip2009 popularity group] polynomial output (difficult, pit)](/img/1f/a798879a0d65eccefa339b288f2102.jpg)
P1067 [noip2009 popularity group] polynomial output (difficult, pit)
随机推荐
【leetcode】day1
数据湖(十五):Spark与Iceberg整合写操作
受限线性表
Rock-paper-scissors
Ora-02437 failed to verify the primary key violation
平衡二叉樹【AVL樹】——插入、删除
AWS AWS help error
What if once again forgets the login password of raspberry pie? And you don't have a monitor yet! Today, I would like to introduce a method
[stm32+esp8266 connects to Tencent cloud IOT development platform 3] stm32+esp8266-01s dynamically registers devices on Tencent cloud (at instruction mode) -- with source code
SAP HR family member information
archery安装测试
0-1 knapsack problem
关于CH32库函数与STM32库函数的区别
Interface
About the difference between ch32 library function and STM32 library function
Get started with mongodb
C language greedy snake
Anti climbing means cracking the second
解析token的网址
Come on, brother