matlab遗传算法 约束条件,关于MATLAB 遗传算法 加入约束条件的问题,求大神帮助!...

该博客讨论了在MATLAB中使用遗传算法时遇到的约束条件问题。作者提供了源代码,试图解决14个指标权重之和为1的约束,并在子函数中定义了特定的边界条件。然而,作者面临两个问题:一是如何在初始种群生成时考虑权重之和为1的约束,二是子函数中的约束条件似乎未生效。寻求关于如何正确实施这些约束条件的建议。
摘要由CSDN通过智能技术生成

小弟写的源代码如下:

clc;

close;

clear all;

tic

warning off

NIND=35;

MAXGEN=500;

NVAR=14;

PRECI=15;

GGAP=0.7;

trace=zeros(MAXGEN,2);

FieldD=[rep([PRECI],[1,NVAR]);rep([0;1],[1,NVAR]);rep([1;0;1;1],[1,NVAR])];

Chrom=crtbp(NIND,NVAR*PRECI);

gen=0;

x_value=bs2rv(Chrom,FieldD);

a=x_value(1)+x_value(2)+x_value(3)+x_value(4)+x_value(5)+x_value(6)+x_value(7)+x_value(8)+x_value(9)+x_value(10)+x_value(11)+x_value(12)+x_value(13)+x_value(14);

if a==1

objV=entropy(x_value(:,1),x_value(:,2),x_value(:,3),x_value(:,4),x_value(:,5),x_value(:,6),x_value(:,7),x_value(:,8),x_value(:,9),x_value(:,10),x_value(:,11),x_value(:,12),x_value(:,13),x_value(:,14));

else

x_value=bs2rv(Chrom,Fiel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值