codelength.m

来自「在matlab环境下用人工智能算法--遗传算法求函数极植的matlab程序」· M 代码 · 共 15 行

M
15
字号
function [L,L1,L2]=codelength(x1min,x1max,x2min,x2max,jingdu)
% 求编码长度:L为编码总长度,L1,L2 分别为变量x1,x2的编码长度
% x1min,x1max 为变量x1的上下界(十进制)
% x2min,x2max 为变量x2的上下界(十进制)
% jingdu 为精度要求
L1=ceil(log2((x1max-x1min)/jingdu+1));  % ceil(x) 为朝正方向舍入,
                                        % floor(x)为朝负方向舍入
                                        % fix(x) 为朝零方向舍入
                                        % log2(x) 为以2为底的对数函数                             
                       % L1,L2 分别为 x1,x2 所需的二进制编码的位数
L2= ceil(log2((x2max-x2min)/jingdu+1));    
L=L1+L2;     % L为编码所需的二进制的位数


⌨️ 快捷键说明

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