?博主簡介:熱愛科研的Matlab仿真開發(fā)者,修心和技術(shù)同步精進,Matlab項目合作可私信。
??個人主頁:海神之光
??代碼獲取方式:
海神之光Matlab王者學習之路—代碼獲取方式
??座右銘:行百里者,半于九十。
更多Matlab仿真內(nèi)容點擊??
Matlab圖像處理(進階版)
路徑規(guī)劃(Matlab)
神經(jīng)網(wǎng)絡(luò)預(yù)測與分類(Matlab)
優(yōu)化求解(Matlab)
語音處理(Matlab)
信號處理(Matlab)
車間調(diào)度(Matlab)
?一、人工勢場算法車輛避障路徑規(guī)劃簡介
1 人工勢場算法
人工勢場法是由Khatib于1985年在論文《Real-Time Obstacle Avoidance for Manipulators and Mobile Robots》中提出的一種虛擬力法。它的基本思想是將機器人在周圍環(huán)境中的運動,設(shè)計成一種抽象的人造引力場中的運動,目標點對移動機器人產(chǎn)生“引力”,障礙物對移動機器人產(chǎn)生“斥力”,最后通過求合力來控制移動機器人的運動。應(yīng)用勢場法規(guī)劃出來的路徑一般是比較平滑并且安全,但是這種方法存在局部最優(yōu)點問題。
算法思想
(1)人工勢場法的基本思想是在障礙物周圍構(gòu)建障礙物斥力勢場,在目標點周圍構(gòu)建引力勢場,類似于物理學中的電磁場。
(2)被控對象在這兩種勢場組成的復(fù)合場中受到斥力作用和引力作用,斥力和引力的合力指引著被控對象的運動,搜索無碰的避障路徑。
(3)更直觀而言,勢場法是將障礙物比作是平原上具有高勢能值的山峰,而目標點則是具有低勢能值的低谷。
2 人工勢場算法車輛避障路徑規(guī)劃
人工勢場算法是一種基于勢能場的路徑規(guī)劃方法,它通過構(gòu)建勢能場來實現(xiàn)車輛的避障和路徑規(guī)劃。具體來說,它將車輛看作一個帶電粒子,將障礙物看作一個帶同性電荷的粒子,通過計算粒子間的相互作用力,來實現(xiàn)車輛的避障和路徑規(guī)劃。以下是人工勢場算法車輛避障路徑規(guī)劃的步驟:
(1)構(gòu)建勢能場
首先,需要構(gòu)建勢能場,將車輛和障礙物看作帶電粒子,通過計算粒子間的相互作用力,來構(gòu)建勢能場。其中,車輛的勢能為負,障礙物的勢能為正。
(2)計算合力
根據(jù)勢能場,可以計算出車輛所受到的合力,即車輛所處位置的梯度方向。合力的方向指向勢能下降最快的方向。
(3)更新車輛位置
根據(jù)車輛所受到的合力,可以更新車輛的位置,使車輛向勢能下降最快的方向移動。
(4)重復(fù)上述步驟
重復(fù)上述步驟,直到車輛到達目標點或者無法到達目標點。
?二、部分源代碼
clear all
clc
close all
%% 初始化
% 設(shè)置RRT算法和人工勢場法算法的迭代次數(shù)上限
RRTCountMax = 30000;
APFCountMax = 30000;
% 定義地圖邊界
mapLimit = [0, 10, 0, 10];
% 設(shè)置RRT算法和人工勢場法算法的步長
RRTstep = 0.1;
APFstep = 0.007;
% 設(shè)置起點和終點的坐標
% select = 5;
starts = [1, 5; 1, 1; 1, 9; 1, 3; 4,4];
targets = [9, 4; 9,9; 9, 1; 5, 9; 9,8];
%選擇需要進行路徑規(guī)劃的起點和終點
select = 1;
start = starts(select, ??;
target = targets(select, ??;
% 設(shè)置障礙物位置和半徑
obs = [
3.5, 3.1, 0.3;
2.5, 5.5, 0.5;
5.2, 6.6, 0.4;
6.8, 4.5, 0.7;
7.4, 7.1, 0.5;
5.1, 4.8, 0.3;
3.2, 8.8, 0.5;
6.7, 8.9, 0.3;
6.2, 1.8, 0.2;
9.1, 5.6, 0.3
];
% 設(shè)置人工勢場法中的各個系數(shù)
kAttr = 1;
kRep = 5;
kObs = 3;
% 在地圖上畫出障礙物、起點和終點的位置
axis(mapLimit);
hold on;
for i = 1: size(obs, 1)
rectangle(‘Position’, [obs(i,1)-obs(i,3), obs(i,2)-obs(i,3), obs(i,3) * 2, obs(i,3) * 2], ‘Curvature’, [1 1]);
end
plot(start(1), start(2), ‘.’, ‘markersize’,30, ‘color’,‘r’);
plot(target(1), target(2), ‘.’, ‘markersize’,30, ‘color’,‘green’);
% 開始進行路徑規(guī)劃
ok = false;
result = [];
while ~ok
ok = true;
rrt_result = RRTstar(mapLimit, start, target, obs, RRTstep, RRTCountMax);
if isempty(rrt_result)
disp(‘rrt star cannot find path’)
return
end
if size(rrt_result, 1) == 1
disp('start == target')
return
end
plot(rrt_result(:, 1), rrt_result(:, 2), '-', 'color','b');
for i = 2: size(rrt_result, 1)
apf_start = rrt_result(i - 1, :);
apf_target = rrt_result(i, :);
[apf_result, success, newStart, count, obs] = APF(mapLimit, start, target,apf_start, apf_target, obs, APFstep, APFCountMax, kAttr, kRep, kObs);
result = [result; apf_result];
if (success == false)
ok = false;
start = newStart;
break;
end
end
end
plot(result(:, 1), result(:, 2), ‘.’, ‘color’,‘r’);
?三、運行結(jié)果
?四、matlab版本及參考文獻
1 matlab版本
2014a
2 參考文獻
[1]呂春峰.基于人工勢場法機器人小車避障的研究[J].昆明理工大學學報(自然科學版) .2005
3 備注
簡介此部分摘自互聯(lián)網(wǎng),僅供參考,若侵權(quán),聯(lián)系刪除
?? 仿真咨詢
1 各類智能優(yōu)化算法改進及應(yīng)用
生產(chǎn)調(diào)度、經(jīng)濟調(diào)度、裝配線調(diào)度、充電優(yōu)化、車間調(diào)度、發(fā)車優(yōu)化、水庫調(diào)度、三維裝箱、物流選址、貨位優(yōu)化、公交排班優(yōu)化、充電樁布局優(yōu)化、車間布局優(yōu)化、集裝箱船配載優(yōu)化、水泵組合優(yōu)化、解醫(yī)療資源分配優(yōu)化、設(shè)施布局優(yōu)化、可視域基站和無人機選址優(yōu)化
2 機器學習和深度學習方面
卷積神經(jīng)網(wǎng)絡(luò)(CNN)、LSTM、支持向量機(SVM)、最小二乘支持向量機(LSSVM)、極限學習機(ELM)、核極限學習機(KELM)、BP、RBF、寬度學習、DBN、RF、RBF、DELM、XGBOOST、TCN實現(xiàn)風電預(yù)測、光伏預(yù)測、電池壽命預(yù)測、輻射源識別、交通流預(yù)測、負荷預(yù)測、股價預(yù)測、PM2.5濃度預(yù)測、電池健康狀態(tài)預(yù)測、水體光學參數(shù)反演、NLOS信號識別、地鐵停車精準預(yù)測、變壓器故障診斷
3 圖像處理方面
圖像識別、圖像分割、圖像檢測、圖像隱藏、圖像配準、圖像拼接、圖像融合、圖像增強、圖像壓縮感知
4 路徑規(guī)劃方面
旅行商問題(TSP)、車輛路徑問題(VRP、MVRP、CVRP、VRPTW等)、無人機三維路徑規(guī)劃、無人機協(xié)同、無人機編隊、機器人路徑規(guī)劃、柵格地圖路徑規(guī)劃、多式聯(lián)運運輸問題、車輛協(xié)同無人機路徑規(guī)劃、天線線性陣列分布優(yōu)化、車間布局優(yōu)化
5 無人機應(yīng)用方面
無人機路徑規(guī)劃、無人機控制、無人機編隊、無人機協(xié)同、無人機任務(wù)分配
6 無線傳感器定位及布局方面
傳感器部署優(yōu)化、通信協(xié)議優(yōu)化、路由優(yōu)化、目標定位優(yōu)化、Dv-Hop定位優(yōu)化、Leach協(xié)議優(yōu)化、WSN覆蓋優(yōu)化、組播優(yōu)化、RSSI定位優(yōu)化
7 信號處理方面
信號識別、信號加密、信號去噪、信號增強、雷達信號處理、信號水印嵌入提取、肌電信號、腦電信號、信號配時優(yōu)化
8 電力系統(tǒng)方面
微電網(wǎng)優(yōu)化、無功優(yōu)化、配電網(wǎng)重構(gòu)、儲能配置
9 元胞自動機方面
交通流 人群疏散 病毒擴散 晶體生長文章來源:http://www.zghlxwxcb.cn/news/detail-802164.html
10 雷達方面
卡爾曼濾波跟蹤、航跡關(guān)聯(lián)、航跡融合文章來源地址http://www.zghlxwxcb.cn/news/detail-802164.html
到了這里,關(guān)于【路徑規(guī)劃】基于matlab人工勢場結(jié)合快速搜索樹APF+RRT機器人避障規(guī)劃【含Matlab源碼 3778期】的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!