📄 code.asv
字号:
function ret=Code(lenchrom,opts,bound)
% In this function ,it converts a set varibles into a chromosome
% lenchrom input : length of chromosome
% opts input : tag of coding method
% bound input : boundary of varibles
% ret output: chromosome
switch opts
case 'binary' % binary coding
pick=rand(1,sum(lenchrom));
bits=ceil(pick-0.5);
temp=sum(lenchrom)-1:-1:0;
ret=sum(bits.*(2.^temp));
case 'grey' % grey coding
pick=rand(1,sum(lenchrom));
bits=ceil(pick-0.5);
greybits=bits;
for i=2:length(greybits)
greybits(i)=bitxor(bits(i-1),bits(i));
end
temp=sum(lenchrom)-1:-1:0;
ret=sum(greybits.*(2.^temp));
case 'float' % float coding
flag=1;
while(flag)
pick=rand(1,length(lenchrom));
ret=bound(:,1)'+(bound(:,2)-bound(:,1))'.*pick;
if ret(3)<ret(2) && ret(4)<ret(5)
flag=0;
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -