24小时热门版块排行榜    

查看: 568  |  回复: 2

lunda69

新虫 (初入文坛)

[求助] 按照书上的多目标优化的matlab程序,运行时出现问题,求高人指点 已有1人参与

问题:
??? Undefined function or method 'rep' for input arguments of type 'double'.

Error in ==> GA at 11
FieldD=[rep([PRECI],[1,NVAR]);rep([1;2],[1,NVAR]);rep([1;0;1;1],[1,NVAR])];
程序:
function  GA()
clear;clc;close all
NIND=100;                    %个体数目
MAXGEN=50;                                                       %最大遗传代数
NVAR=2;                                                          %变量个数
PRECI=20;                                                        %变量的二进制位数
GGAP=0.9;                                                        %代沟
trace1=[];trace2=[];trace3=[];                                   %性能跟踪
%建立区域描述器
% rep([PRECI],[1,NVAR])
FieldD=[rep([PRECI],[1,NVAR]);rep([1;2],[1,NVAR]);rep([1;0;1;1],[1,NVAR])];
Chrom=crtbp(NIND,NVAR*PRECI);                               %初始种群
v=bs2rv(Chrom,FieldD) ;                                         %初始种群十进制转换
gen=1;
while gen<MAXGEN,
    [NIND,N]=size(Chrom);
    M=fix(NIND/2);
    ObjV1=func1(v(1:M,);                                          %分组后第一目标函数值
    FitnV1=ranking(ObjV1);                                       %分配适应度值
    SelCh1=select('sus',Chrom(1:M,,FitnV1,GGAP);               %选择
    ObjV2=func2(v(M+1:NIND,);                                     %分组后第二目标函数值
    FitnV2=ranking(ObjV2);                                       %分配适应度值
    SelCh2=select('sus',Chrom(M+1:NIND,,FitnV2,GGAP);          %选择
    SelCh=[SelCh1;SelCh2];                                       %合并
    SelCh=recombin('xovsp',SelCh,0.7);                           %重组
    Chrom=mut(SelCh);                                            %变异
    v=bs2rv(Chrom,FieldD);
    trace1(gen,1)=min(func1(v));
    trace1(gen,2)=sum(func1(v))/length(func1(v));
    trace2(gen,1)=min(func2(v));
    trace2(gen,2)=sum(func2(v))/length(func2(v));
    trace3(gen,1)=min(func1(v)+func2(v));
    trace3(gen,2)=sum(func1(v))/length(func1(v))+sum(func2(v))/length(func2(v));
    gen=gen+1;
end
figure(1);clf;
plot(trace1(:,1));hold on;plot(trace1(:,2),'-.');
plot(trace1(:,1),'.');plot(trace1(:,2),'.');grid on;
legend('解的变化','种群均值的变化')
xlabel('迭代次数');ylabel('目标函数值');
figure(2);clf;
plot(trace2(:,1));hold on;
plot(trace2(:,2),'-.');
plot(trace2(:,1),'.');
plot(trace2(:,2),'.');grid;
legend('解的变化','种群均值的变化');
xlabel('迭代次数');ylabel('目标函数值');
figure(3);clf;
plot(trace3(:,1));hold on;
plot(trace3(:,2),'-.');
plot(trace3(:,1),'.');
plot(trace3(:,2),'.');grid;
legend('解的变化','种群均值的变化');
xlabel('迭代次数');ylabel('目标函数值');
figure(4);clf;plot(func1(v));hold on;
plot(func2(v),'r-.');grid;
function f1=func1(x)                                                 %第一目标函数
f1=x(:,1).*x(:,1)./4+x(:,2).*x(:,2)./4;
function f2=func2(x)                                                 %第二目标函数
f2=x(:,1).*(1-x(:,2))+10
另两个函数已存为M文件
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

LS1234567

新虫 (初入文坛)

遗传算法程序代码????有没有
没有困难 只有挑战
2楼2015-05-11 10:16:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

素三鲜

新虫 (初入文坛)

【答案】应助回帖

trace1=[ ];trace2=[ ];trace3=[ ];中括号中间加空格
FieldD=[rep([PRECI],[1,NVAR]);[1,1;4,2];rep([1;0;1;1],[1,NVAR])];
最后一行公式最后加“;”
3楼2015-06-19 21:02:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 lunda69 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 今天系统多次维护,明天很可能放榜! +5 zju2000 2026-08-16 5/250 2026-08-16 23:23 by Haru815
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 哪位老哥知道今年的国自然具体哪一天放榜? +9 Ldrop2023 2026-08-13 9/450 2026-08-16 13:24 by wukun_007
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +12 Tide man 2026-08-10 13/650 2026-08-15 16:34 by 氺木
[基金申请] 关于Filecode分析方法 +10 majunge000 2026-08-10 13/650 2026-08-15 12:26 by hanpeng972
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 结合人工智能,周易传统文化,filecode打分制来了,3分以上希望很大。 +3 Tide man 2026-08-12 4/200 2026-08-13 08:35 by ZJTJZ
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 什么时候出结果,有咨询渠道??? +3 Tide man 2026-08-11 3/150 2026-08-11 17:54 by kudofaye
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
信息提示
请填处理意见