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

📄 fitness.m

📁 一个用粒子群做的路径规划。功能比较简单
💻 M
字号:
%--------适应值函数--------------------------------------------------
function result=fitness(x,m)
%--声明全局------------
global fitw1;
global fitw2;
global segR;
global g;
%--

sum = 0;
for i = 1:m
    if 1 == i
        tempdis = segR;
    else
        tempdis = sqrt( ((i-1)*segR)^2+(i*segR)^2-...
                        2*((i-1)*segR)*(i*segR)*...
                            cos(x(i-1)-x(i)) );
    end
    sum = sum + tempdis;
end
[tempPoint(1),tempPoint(2)]=plorTozhijiao(i*segR,x(i));
dist = distance(tempPoint(1),tempPoint(2),g(1),g(2));
sum = fitw1*sum + fitw2*dist;
result=sum;

% sum = 0 ;
% for i=1:m
%     %如果j是1的话就将curpoint赋值给purPoint
%     %如果不是的话讲将前一个的tempPoint赋值给purPoint
%     if 1 == i
%         purPoint = curpoint;
%     else
%         purPoint = tempPoint;
%     end
%     %将极坐标转换为直角坐标
%     [tempPoint(1),tempPoint(2)]=plorTozhijiao(i*segR,x(i));
%     %计算2点的距离
%     tempdis = distance(purPoint(1),curpoint(2),...
%         tempPoint(1),tempPoint(2));
%     sum = sum + tempdis;
% end
% %最后的点和目标点的距离
% tempdis = distance(tempPoint(1),tempPoint(2),g(1),g(2));
% %将当前移动的距离和最后点到目标的距离之和作为适应值函数
% sum = fitw1*sum + fitw2*tempdis;
% result=sum;

⌨️ 快捷键说明

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