



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
% MUT.m% This function takes the representation of the current population,% mutates each element with given probability and returns the resulting% population.%这个函数代表当前种群,其中的每一个元素在变异概率下发生变化,并返回新的种群。% Syntax:NewChrom = mut(OldChrom,Pm,BaseV)%语法:新种群=mut(当前种群,变异概率,染色体个体元素的变异的基本字符)%注意:变异概率省略时为0.7/Lind(Lind为染色体长度),BaseV省略时种群为二进制编码% Input parameters:%输入参数:%OldChrom - A matrix containing the chromosomes of the% current population. Each row corresponds to% an individuals string representation.%当前种群-一个矩阵包含当前人口的染色体。每一行对应一个字符串表示。%Pm - Mutation probability (scalar). Default value% of Pm = 0.7/Lind, where Lind is the chromosome% length is assumed if omitted.%变异概率-变异概率(标量)。假定如果省略时,其默认值为0.7/Lind(Lind是染色体长度)%BaseV - Optional row vector of the same length as the% chromosome structure defining the base of the % individual elements of the chromosome. Binary% representation is assumed if omitted.%染色体个体元素的变异的基本字符-染色体的单个元素的字符由染色体结构(相同长度的行%向量)定义的,假定如果省略时,默认为是二进制的。% Output parameter:%输出参数:%NewChrom - A Matrix containing a mutated version of% OldChrom.%新种群-当前种群变异后的矩阵。% Author: Andrew Chipperfield% Date: 25-Jan-94% Tested under MATLAB v6 by Alex Shenfield (21-Jan-03)%举例说明该函数,利用OldChrom=crtbp(5,5)得到OldChrom= 1 1 0 0 1 0 0 0 0 0 0 1 0 1 1 0 1 0 0 0 0 0 1 1 0function NewChrom = mut(OldChrom,Pm,BaseV)%新种群=mut(当前种群,变异概率,染色体个体元素的变异的基本字符).% get population size (Nind) and chromosome length (Lind)%得到个体数(Nind)和染色体长度(Lind)。Nind, Lind = size(OldChrom) ; %返回值为Nind=5,Lind=5% check input parameters%检查输入参数if nargin 2, Pm = 0.7/Lind ; endif isnan(Pm), Pm = 0.7/Lind; end%上面2个if条件用来确定Pm的值。%第一个if:如果输入参数个数小于2,返回Pm为0.7/Lind。%第二个if:如果输入的Pm不是数,返回Pm为0.7/Lind。%注:nargin是用来判断输入变量个数的函数。Isnan的函数功能:判断函数组的元素是否是%NaN(Not a Number)。例如输入isnan(NaN),返回值为1;输入isnan(3),返回值为0.if (nargin 3), BaseV = crtbase(Lind); endif (isnan(BaseV), BaseV = crtbase(Lind); endif (isempty(BaseV), BaseV = crtbase(Lind); end%上面的3个if条件用来确定BaseV的值。%第一个if:如果输入参数个数小于3,则执行BaseV= crtbase(Lind)的命令,并返回BaseV%的值。%第二个if:如果输入的BaseV不是数(如:NaN),则也执行BaseV = crtbase(Lind)的命令,%并返回BaseV的值。%第三个if:如果输入的BaseV为空(如:),则也执行BaseV = crtbase(Lind)的命令,并返%回BaseV的值。%注:isempty的函数功能:判断一个数组是否为空。如果为空,返回值为1;如果非空,返%回值为0.例如输入isempty(),返回值为1,;输入isempty(1),返回值为0。if (nargin = 3) & (Lind = length(BaseV) error(OldChrom and BaseV are incompatible), end%如果输入参数个数为3,而且矩阵列数不等于BaseV的长度,则会出现当前种群和基本%字符不匹配的错误% create mutation mask matrix%创建突变掩模矩阵BaseM = BaseV(ones(Nind,1),:) ; %ones(5,1)= 1 1 1 1 1%由BaseM = BaseV(ones(Nind,1),:) 得到BaseM=BaseM= 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2% perform mutation on chromosome structure%在染色体结构上执行突变NewChrom = rem(OldChrom+(rand(Nind,Lind)Pm).*ceil(rand(Nind,Lind).*(BaseM-1),BaseM);%分布计算上式如下rand(5,5)= 0.9631 0.6241 0.0377 0.2619 0.1068 0.5468 0.6791 0.8852 0.3354 0.6538 0.5211 0.3955 0.9133 0.6797 0.4942 0.2316 0.3674 0.7962 0.1366 0.77910.4889 0.9880 0.0987 0.7212 0.7150%注: rand(m,n)是返回一个m行n列的随机矩阵,其中每个元素都小于1且大于0。% rand(Nind,Lind)Pm= 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 % ceil(rand(Nind,Lind)= 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1%注:ceil函数功能是把矩阵中所有元素取整,且不小于原来元素的最小整数。%BaseM-1= 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1%由上可知rand(Nind,Lind)Pm).*ceil(rand(Nind,Lind).*(BaseM-1)= 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0%故有NewChrom
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年超白透明平板玻璃行业研究报告及未来行业发展趋势预测
- 售票值班员作业指导书
- 种畜冻精制作工作业指导书
- 高炉炼铁操作工测试考核试卷及答案
- 铸造碳化钨制管工培训考核试卷及答案
- 剪切工作业指导书
- 自动化客服投诉处理创新创业项目商业计划书
- 自动化流程管理工具创新创业项目商业计划书
- 人员岗前安全培训内容课件
- 建筑外墙雨水管道安装技术交底方案
- 通信原理第7版樊昌信版新版
- 一汽商用车企业级BOM技术方案V1.7
- GB/T 19812.5-2019塑料节水灌溉器材第5部分:地埋式滴灌管
- GB/T 13808-1992铜及铜合金挤制棒
- 中国马克思主义与当代(社会问题)
- 光伏并网逆变器调试报告
- EMR术的配合要点
- 1844年经济学哲学手稿课件
- 痰培养的采集及药敏结果判读课件
- 家庭医生签约服务业务培训课件
- 1-商务沟通基本原理
评论
0/150
提交评论