非线性整数规划的MATLAB实现

标签:
杂谈 |
function
Fitness=FITNESS(x,FARM,e,q,w)
%% 适应度函数
%
%
%
%
%
%
%%
gamma=0.98;
N=length(FARM);%种群规模
F1=zeros(1,N);
F2=zeros(1,N);
for i=1:N
end
ppp=(1-x)+(1-q).*x;
f1=sum(w.*prod(ppp));
f2=sum(sum(e.*x));
Fitness=gamma*sum(min([sign(f1-F1);zeros(1,N)]))+(1-gamma)*sum(min([sign(f2-F2);zeros(1,N)]));
function [Xp,LC1,LC2,LC3,LC4]=MYGA(M,N,Pm)
%% 求解01整数规划的遗传算法
%% 输入参数列表
%
%
%
%% 输出参数列表
%
%
%
%
%
%%
参考调用格式[Xp,LC1,LC2,LC3,LC4]=MYGA(50,40,0.3)
%% 第一步:载入数据和变量初始化
load eqw;%载入三个系数矩阵e,q,w
%输出变量初始化
Xp=zeros(4,50);
LC1=zeros(1,M);
LC2=zeros(1,M);
LC3=zeros(1,M);
LC4=zeros(1,M);
Best=inf;
%% 第二步:随机产生初始种群
farm=cell(1,N);%用于存储种群的细胞结构
k=0;
while k
end
%% 以下是进化迭代过程
counter=0;%设置迭代计数器
while counter
%% 第三步:交叉
%% 第四步:选择复制