matlab免疫算法实现路径规划避开障碍物

2023-12-06 23:10

本文主要是介绍matlab免疫算法实现路径规划避开障碍物,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、内容简介

免疫算法实现路径规划避开障碍物

650-可以交流、咨询、答疑

2、内容说明

免疫算法的思想来自模拟人体的免疫系统。免疫系统是人体抵抗细菌、病毒和其它致病因子入侵的基本防御系统。免疫系统通过一套复杂的机制来重组基因,以产生抗体对付入侵的抗原,达到消灭抗原的目的。为了有效地提供防御功能,免疫系统必须进行模式识别,把自身的分子和细胞与抗原区分开来。除了具有识别能力之外,免疫系统与其它低级生物防御系统的区别在于它能够学习,并且有记忆能力。正是因为拥有上述特点,免疫系统对同一抗原的防御反应,第二次比第一次来得更快、更强烈。免疫算法模仿了人体的免疫系统,并从体细胞理论和网络理论中得到启发,实现了类似于免疫系统的自我调节功能和生抗体的功能。

3、仿真分析

clc
close all
clear
rng defaultobstacle_x = [-3.448,-4.05, -8,-9.531,-11.5];
% obstacle_y = [0.728,1.11, 1.678,2.184,2.31];
obstacle_y = [0.428,1.11, 1.508,2.184,2.31];
obstacle = [obstacle_x obstacle_y];
target_x = [0 -12.829]; % 两个目标站点的横坐标
target_y = [0 2.707];   % 两个目标站点的纵坐标
target = [target_x target_y];
% dist = distance(point, target, obstacle)
% 目标函数 point为优化的点坐标,target为两个站台位置,obstacle为障碍物固定的位置
point = length(obstacle_x)+1;D=point*2;                                %免疫个体维数
NP=300;                                   %免疫个体数目
Xs=3;                                     %取值上限
Xx=-13;                                   %取值下限
G=500;                                    %最大免疫代数
pm=0.5;                                   %变异概率
alfa=2;                                   %激励度系数
belta=1;                                  %激励度系数   
detas=0.5;                                %相似度阈值
gen=0;                                    %免疫代数
Ncl=20;                                   %克隆个数
deta0=-5.5;                               %邻域范围初值%%%%%%%%%%%%%%%%%%%%%%%初始种群%%%%%%%%%%%%%%%%%%%%%%%%
% f1=rand(D/2,NP)*(Xs-Xx)+Xx;
% Xs = 3;
% Xx = 0;
% f2=rand(D/2,NP)*(Xs-Xx)+Xx;
% f = [f1;f2];f=rand(D,NP)*(Xs-Xx)+Xx;
for np=1:NPMSLL(np) = distance(f(:,np), target, obstacle); 
end
%%%%%%%%%%%%%%%%%计算个体浓度和激励度%%%%%%%%%%%%%%%%%%%
for np=1:NPfor j=1:NP     nd(j) = sum(sqrt((f(:,np)-f(:,j)).^2));if nd(j)<detasnd(j)=1;elsend(j)=0;endendND(np)=sum(nd)/NP;
end
MSLL =  alfa*MSLL - belta*ND;

4、参考论文

这篇关于matlab免疫算法实现路径规划避开障碍物的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/463692

相关文章

C++对象布局及多态实现探索之内存布局(整理的很多链接)

本文通过观察对象的内存布局,跟踪函数调用的汇编代码。分析了C++对象内存的布局情况,虚函数的执行方式,以及虚继承,等等 文章链接:http://dev.yesky.com/254/2191254.shtml      论C/C++函数间动态内存的传递 (2005-07-30)   当你涉及到C/C++的核心编程的时候,你会无止境地与内存管理打交道。 文章链接:http://dev.yesky

随想录 Day 69 并查集 107. 寻找存在的路径

随想录 Day 69 并查集 107. 寻找存在的路径 理论基础 int n = 1005; // n根据题目中节点数量而定,一般比节点数量大一点就好vector<int> father = vector<int> (n, 0); // C++里的一种数组结构// 并查集初始化void init() {for (int i = 0; i < n; ++i) {father[i] = i;}

大语言模型(LLMs)能够进行推理和规划吗?

大语言模型(LLMs),基本上是经过强化训练的 n-gram 模型,它们在网络规模的语言语料库(实际上,可以说是我们文明的知识库)上进行了训练,展现出了一种超乎预期的语言行为,引发了我们的广泛关注。从训练和操作的角度来看,LLMs 可以被认为是一种巨大的、非真实的记忆库,相当于为我们所有人提供了一个外部的系统 1(见图 1)。然而,它们表面上的多功能性让许多研究者好奇,这些模型是否也能在通常需要系

通过SSH隧道实现通过远程服务器上外网

搭建隧道 autossh -M 0 -f -D 1080 -C -N user1@remotehost##验证隧道是否生效,查看1080端口是否启动netstat -tuln | grep 1080## 测试ssh 隧道是否生效curl -x socks5h://127.0.0.1:1080 -I http://www.github.com 将autossh 设置为服务,隧道开机启动

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测 目录 时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测基本介绍程序设计参考资料 基本介绍 MATLAB实现LSTM时间序列未来多步预测-递归预测。LSTM是一种含有LSTM区块(blocks)或其他的一种类神经网络,文献或其他资料中LSTM区块可能被描述成智能网络单元,因为

vue项目集成CanvasEditor实现Word在线编辑器

CanvasEditor实现Word在线编辑器 官网文档:https://hufe.club/canvas-editor-docs/guide/schema.html 源码地址:https://github.com/Hufe921/canvas-editor 前提声明: 由于CanvasEditor目前不支持vue、react 等框架开箱即用版,所以需要我们去Git下载源码,拿到其中两个主

代码随想录算法训练营:12/60

非科班学习算法day12 | LeetCode150:逆波兰表达式 ,Leetcode239: 滑动窗口最大值  目录 介绍 一、基础概念补充: 1.c++字符串转为数字 1. std::stoi, std::stol, std::stoll, std::stoul, std::stoull(最常用) 2. std::stringstream 3. std::atoi, std

android一键分享功能部分实现

为什么叫做部分实现呢,其实是我只实现一部分的分享。如新浪微博,那还有没去实现的是微信分享。还有一部分奇怪的问题:我QQ分享跟QQ空间的分享功能,我都没配置key那些都是原本集成就有的key也可以实现分享,谁清楚的麻烦详解下。 实现分享功能我们可以去www.mob.com这个网站集成。免费的,而且还有短信验证功能。等这分享研究完后就研究下短信验证功能。 开始实现步骤(新浪分享,以下是本人自己实现

基于Springboot + vue 的抗疫物质管理系统的设计与实现

目录 📚 前言 📑摘要 📑系统流程 📚 系统架构设计 📚 数据库设计 📚 系统功能的具体实现    💬 系统登录注册 系统登录 登录界面   用户添加  💬 抗疫列表展示模块     区域信息管理 添加物资详情 抗疫物资列表展示 抗疫物资申请 抗疫物资审核 ✒️ 源码实现 💖 源码获取 😁 联系方式 📚 前言 📑博客主页:

人工智能机器学习算法总结神经网络算法(前向及反向传播)

1.定义,意义和优缺点 定义: 神经网络算法是一种模仿人类大脑神经元之间连接方式的机器学习算法。通过多层神经元的组合和激活函数的非线性转换,神经网络能够学习数据的特征和模式,实现对复杂数据的建模和预测。(我们可以借助人类的神经元模型来更好的帮助我们理解该算法的本质,不过这里需要说明的是,虽然名字是神经网络,并且结构等等也是借鉴了神经网络,但其原型以及算法本质上还和生物层面的神经网络运行原理存在