人工势场法
人工勢場法是局部路徑規(guī)劃的一種比較常用的方法。
假設(shè):機器人位于山頂前往山下的目標(biāo)點,借助高度的勢差,避開障礙物,到達目標(biāo)點
人工勢場包括引力場和斥力場:
其中
- 目標(biāo)點對物體產(chǎn)生引力,引導(dǎo)物體朝向其運動。
- 障礙物對物體產(chǎn)生斥力,避免物體與之發(fā)生碰撞。
物體在路徑上每一點所受的合力等于這一點所有斥力和引力的和。
構(gòu)建引力場和斥力場:
這里的ε是尺度因子,d表示物體當(dāng)前狀態(tài)與目標(biāo)的距離。dgoal是二次函數(shù)變?yōu)閳A錐形的閾值。對其求導(dǎo)便得到引力:
斥力場:
η是斥力尺度因子,D代表代表物體和障礙物之間的距離,Q代表每個障礙物的影響半徑。當(dāng)D大于Q*時,斥力為零,換言之,離開一定的距離,障礙物就對物體沒有斥力影響。
斥力場的梯度便是斥力:
總的勢場:
機器人平移速度由當(dāng)前位置所受的合力決定。
存在的問題:
解決方案:
修正引力場函數(shù),加入閾值dgoal,Q,避免由于離目標(biāo)點太遠導(dǎo)致引力過大
目標(biāo)點附近有障礙物導(dǎo)致目標(biāo)不可達的問題,引入一種新的斥力函數(shù)
局部最優(yōu)問題通過加一個隨機擾動,讓物體跳出局部最優(yōu)值。類似于梯度下降法局部最優(yōu)值的解決方案
文章地址
總結(jié)
- 上一篇: 数字图像处理MFC程序设计之图像的打开显
- 下一篇: TCP/IP,Linux下多进程编程,进