⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 initx.m

📁 粒子群(PSO)路径规划。这个是一个局部路径规划
💻 M
字号:
%----------初始化x----------------------------------------
function [x,result] = initX(Xmax,Xmin)
%--声明全局变量--
global Qmax;
global m;
global Kmax
global curpoint;
global segR;
global goalta;
global pathta;
%---

%如果pathta不够大,放大pathta
%先给定一个x(m)的范围,
%如果这个范围内的x(m)能找到路径,那么返回
%否则的话就让pamoveta的相应值
result = true;

for q = 1:Qmax
    for j=1:m
        for k=1:Kmax
            %按在哪一维初始化x
            x(j) = rand*pathta+Xmin; %x初始化公式

            %如果j是1的话就将curpoint赋值给perPoint
            %如果不是的话讲将前一个的tempPoint赋值给purPoint
            if 1 == j
                perPoint = curpoint;
            else
                purPoint = tempPoint;
            end
            %将极坐标转换为直角坐标
            [tempPoint(1),tempPoint(2)]=plorTozhijiao(j*segR,x(j));

            %判断这个点和前面的点是否相通
            %连通则直接跳出
            r = Conn(perPoint(1),perPoint(2),tempPoint(1),tempPoint(2));
            if r
                break;
            end
        end
        %如果k=Kmax,而此路不通的话,就重新开始分配各维上的点
        if r==false
            break;
        end
    end
    if r
        return;
    end
end

%如果q太大说明不能初始化x
if r==false
    result = false;
end


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -