简单的遗传算法,计算函数最值.functionga_main()%遗传算法程序%n--种群规模%ger--迭代次数%pc---交叉概率%pm--变异概率%v--初始种群(规模为n)%f--目标函数值%fit--适应度向量%vx--最优适应度值向量%vmfit--平均适应度值向量clearall;closeall;clc;%清屏tic;%计时器开始计时n=20;ger=100;pc=0.65;pm=0.05;%初始化参数%以上为经验值,可以更改。
%生成初始种群v=init_population(n,22);%得到初始种群,22串长,生成20*22的0-1矩阵[N,L]=size(v);%得到初始规模行,列disp(sprintf('Numberofgenerations:%d',ger));disp(sprintf('Populationsize:%d',N));disp(sprintf('Crossoverprobability:%.3f',pc));disp(sprintf('Mutationprobability:%.3f',pm));%sprintf可以控制输出格式%待优化问题xmin=0;xmax=9;%变量X范围f='x+10*sin(x.*5)+7*cos(x.*4)';%计算适应度,并画出初始种群图形x=decode(v(:,1:22),xmin,xmax);"位二进制换成十进制,%冒号表示对所有行进行操作。
fit=eval(f);%eval转化成数值型的%计算适应度figure(1);%打开第一个窗口fplot(f,[xmin,xmax]);%隐函数画图gridon;holdon;plot(x,fit,'k*');%作图,画初始种群的适应度图像title('(a)染色体的初始位置');%标题xlabel('x');ylabel('f(x)');%标记轴%迭代前的初始化vmfit=[];%平均适应度vx=[];%最优适应度it=1;%迭代计数器%开始进化whileit<=ger%迭代次数0代%Reproduction(Bi-classistSelection)vtemp=roulette(v,fit);%复制算子%Crossoverv=crossover(vtemp,pc);%交叉算子%Mutation变异算子M=rand(N,L)<=pm;%这里的作用找到比0.05小的分量%M(1,:)=zeros(1,L);v=v-2.*(v.*M)+M;%两个0-1矩阵相乘后M是1的地方V就不变,再乘以2.NICE!!确实好!!!把M中为1的位置上的地方的值变反%这里是点乘%变异%Resultsx=decode(v(:,1:22),xmin,xmax);%解码,求目标函数值fit=eval(f);%计算数值[sol,indb]=max(fit);%每次迭代中最优目标函数值,包括位置v(1,:)=v(indb,:);%用最大值代替fit_mean=mean(fit);%每次迭代中目标函数值的平均值。
mean求均值vx=[vxsol];%最优适应度值vmfit=[vmfitfit_mean];%适应度均值it=it+1;%迭代次数计数器增加end
2023/7/1 23:41:32 4KB 遗传算法
1
一、引言自适应噪声抵消技术是一种能够很好的消除背景噪声影响的信号处理技术,应用自适应噪声抵消技术,可在未知外界干扰源特征,传递途径不断变化,背景噪声和被测对象声波相似的情况下,能够有效地消除外界声源的干扰获得高信噪比的对象信号。
从理论上讲,自适应干扰抵消器是基于自适应滤波原理的一种扩展,简单的说,把自适应滤波器的期望信号输入端改为信号加噪声干扰的原始输入端,而它的输入端改为噪声干扰端,由横向滤波器的参数调节输出以将原始输入中的噪声干扰抵消掉,这时误差输出就是有用信号了。
在数字信号采集、处理中,线性滤波是最常用的消除噪声的方法。
线性滤波容易分析,使用均方差最小准则的线性滤波器能找到闭合解,若噪声干扰类型为高斯噪声时,可达到最佳的线性滤波效果。
计算机论文www.lunwendingzhi.com;
机械毕业论文www.lunwenwanjia.com在实际的数字信号采集中,叠加于信号的噪声干扰往往不是单一的高斯噪声,而线性滤波器所要求的中等程度噪声偏移,使线性滤波器对非高斯噪声的滤波性能下降,为克服线性滤波器的缺点,往往采用非线性滤波器,所以本文采用神经网络对信号进行滤波处理。
二、基于BP算法和遗传算法相结合的自适应噪声抵消器在本文中,作者主要基于自适应噪声对消的原理对自适应算法进行研究,提出了一种新的算法,即BP算法和遗传算法相结合的自适应算法。
作者对BP网络的结构及算法作了一个系统的综述,分析了BP算法存在的主要缺陷及其产生的原因。
传统的BP网络既然是一个非线性优化问题,这就不可避免地存在局部极小问题,网络的极值通过沿局部改善的方向一小步进行修正,力图达到使误差函数最小化的全局解,但实际上常得到的使局部最优点。
管理毕业论文网www.yifanglunwen.com;
音乐毕业论文www.xyclww.com;
英语毕业论文www.lanrenbanjia.com;
学习过程中,下降慢,学习速度缓,易出现一个长时间的误差平坦区,即出现平台。
通过对遗传算法文献的分析、概括和总结,发现遗传算法与其它的搜索方法相比,遗传算法(GA)的优点在于:不需要目标函数的微分值;
并行搜索,搜索效率高;
搜索遍及整个搜索空间,容易得到全局最优解。
所以用GA优化BP神经网络,可使神经网络具有进化、自适应的能力。
BP-GA混合算法的方法出发点为:经济论文www.youzhiessay.com教育论文www.hudonglunwen.com;
医学论文网www.kuailelunwen.com;
(1)利用BP神经网络映射设计变量和目标函数、约束之间的关系;
(2)用遗传算法作实现优化搜索;
(3)遗传算法中适应度的计算采用神经网络计算来实现。
BP-GA混合算法的设计步骤如下:(1)分析问题,提出目标函数、设计变量和约束条件;
(2)设定适当的训练样本集,计算训练样本集;
(3)训练神经网络;
(4)采用遗传算法进行结构寻优;
(5)利用训练好的神经网络检验遗传算法优化结果。
若满足要求,计算结束;
若误差不满足要求,将检验解加入到训练样本集中,重复执行3~5步直到满足要求。
通过用短时傅立叶信号和余弦信号进行噪声对消性能测试,在单一的BP算法中,网络的训练次数、学习速度、网络层数以及每层神经元的节点数都是影响BP网络的重要参数,通过仿真实验可以发现,适当的训练次数可以使误差达到极小值,但是训练次数过多,训练时间太长,甚至容易陷入死循环,或者学习精度不高。
学习速度不能选择的太大,否则会出现算法不收敛,也不能选择太小,会使训练过程时间太长,一般选择为0.01~0.1之间的值,再根据训练过程中梯度变化和均方误差变化值确定。
基于梯度下降原理的BP算法,在解空间仅进行单点搜索,极易收敛于局部极小,而GA的众多个体同时搜索解空间的许多点,因而可以有效的防止搜索过程收敛于局部极小,只有算法的参数及遗传算子的操作选择得当,算法具有极大的把握收敛于全局最优解。
使用遗传算法需要决定的运行参数中种群大小表示种群中所含个体的数量,种群较小时,可提高遗传算法的运算速度,但却降低了群体的多样性,可能找不出最优解;
种群较大时,又会增加计算量,使遗传算法的运行效率降低。
一般取种群数目为20~100;
交叉率控制着交叉操作的频率,由于交叉操作是遗传算法中产生新个体的主要方法,所以交叉率通常应取较大值,但若过大的话,又可能破坏群体的优良模式,一般取0.4~0.99;
变异率也是影响新个体产生的一个因素,变异率小,产生个体少,变异率太大,又会使遗传算法变成随机搜索,一般取变异率为0.0001~0.1。
由仿真结果得知,GA与BP算法的混合算法不论是在运行速度还是在运算精度上都较单纯的BP算法有提高,去噪效果更加明显,在信噪比的改善程度上,混合算法的信噪
2023/6/7 6:07:05 2KB BP算法 遗传算法 matlab 源码
1
图像分割是图像分析中最关键的任务之一。
阈值确定无疑是最受欢迎的细分方法之一。
在阈值方法中,最小交叉熵阈值(MCET)由于其简单性和阈值的测量精度而被广泛采用。
虽然在二级阈值化的情况下MCET是有效的,但是当涉及多级阈值以穷举搜索多个阈值时,MCET会遇到昂贵的计算。
提出了一种基于遗传算法的改进方案,用于多级MCET中固定阈值的选择。
该方案使用递归编程技术来降低多层MCET中目标函数的计算复杂性。
然后,提出了一种遗传算法来搜索几个接近最优的多级阈值。
根据经验,通过穷举搜索,我们的方案获得的多个阈值与最佳阈值非常接近。
在各种图像上对该方法进行了评价,实验结果表明了该方法在真实图像上的有效性和可行性。
2023/3/14 11:38:14 768KB mage segmentation; Minimum cross
1
PPT是针对博主使用粒子群优化算法解决水面无人艇静态、动态障碍物规避,及场地规划三类问题,做了更深入的总结分析。
  与目前火热的机器学习不同,智能优化算法需要对问题建立确定的模型,具有明确的优化目标函数,对优化变量不断的寻优。
通过对三种算法的问题描述、模型建立、算法参数确定、算法流程描述、计算结果分析,及从维度、优化变量、优化目标、针对业务的PSO优化四个方面,对应用在不同场景下的三种粒子群算法进行对比总结,旨在更彻底的剖析如何将粒子群优化算法应用到具体的问题中。
  该PPT是原版包含动画的PPT(Office版本越高越好,至少2010,否则有些动画在低版本显示有问题),自我感觉PPT做的很正、很文艺范,是博主7年来打杂做各种PPT经验的大成之作(说白了也就这水平),相信看完原版PPT你就会觉得原来技术分享也可以这么文艺范!
2023/3/8 1:11:05 18.56MB 粒子群 无人艇 布局 规划
1
针对目前室内定位算法精度不高、实现复杂等问题,提出了一种基于白光LED的可见光室内定位方法。
首先利用由室内不同LED发出的定位参考信号到达定位终端的时间差(TDOA)的测量估计,得到定位终端到达两个LED的传输距离之差,以此构造距离估计目标函数,然后采用有约束非线性规划算法得到定位终端的位置坐标,从而有效地解决了室内噪声环境中常规TDOA定位算法不收敛或误差偏大的问题。
同时,为了进一步优化定位功能,将距离信息引入加权因子中,提出了质心加权混合定位算法。
将提出的定位算法在5m×5m×3m的空间区域中进行了仿真实验,同时考虑噪声因素的影响,结果表明,提出的距离估计目标函数法在信噪比(SNR)为2dB的条件下可以达到平均5cm的定位误差,采用质心加权处理后平均定位误差仅为3cm,有效地提高了室内定位精度和系统应用的普适性及鲁棒性。
2023/3/7 22:24:18 1.15MB 算法
1
与城市峡谷中的全球定位系统(GPS)定位类似,在卫星可见度有限的情况下进行快速成功的姿态确定非常重要。
对于陆地车辆,可以将可能的姿态候选者视为球形区域,以参考天线为中心,以基线为半径。
这提供了重要的约束条件,在卫星接收较差的情况下,可以利用该约束条件来提高GPS单频和单历元姿态确定的可靠性。
首先,我们将球形区域约束完全整合到模糊度分辨率的估计过程中,而不是在验证过程中。
结合坐标域搜索和歧义域搜索,可以开发固定歧义目标函数的全局最小化器。
该方案还提高了浮点模糊度解的精度,从而避免了搜索停止的问题。
通过一些实验测试,使用模拟和实际GPS数据在城市环境中分析了新的歧义解决方法的功能。
实验结果表明,该新提出的方法可以利用先验球形区域知识来提高困难环境中歧义解决的可靠性。
2023/3/5 16:39:09 3.25MB GPS; attitude determination; ambiguity
1
在这个程序中,目标函数是一元函数,然后变量没有编码,采用的实数法。
子代选择使用的是覆盖法。
多目标函数和多变量函数,以及轮盘赌法和覆盖法。
变量编码与未编码。
请看我其他上传的资源。
都本人运行过。
注释详细。
1
拟牛顿法只需求每一步迭代时知道目标函数的梯度。
通过测量梯度的变化,构造一个目标函数的模型使之足以产生超线性收敛性。
这类方法大大优于最速下降法,尤其对于困难的问题。
另外,因为拟牛顿法不需要二阶导数的信息,所以有时比牛顿法(Newton'sMethod)更为有效。
2023/2/16 17:40:43 1KB 拟牛顿法 Matlab
1
逐行代码正文简单易懂,带其他资源缺的那个目标函数的设计,没错就是你找的那个,当时我也找了好久
2023/1/15 8:05:21 14KB ABC SVM 蜂群算法 目标函数
1
自顺应模糊控制matlab算法实现隶属度函数控制规则,阶跃响应,目标函数的优化
2023/1/11 22:04:22 3KB 模糊控制
1
共 57 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡