QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 4529|回复: 0
打印 上一主题 下一主题

[问题求助] 多目标优化

[复制链接]
字体大小: 正常 放大

1

主题

9

听众

12

积分

升级  7.37%

该用户从未签到

自我介绍
勇往直前

社区QQ达人

跳转到指定楼层
1#
发表于 2016-5-19 20:18 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
4体力
在多目标优化时,优化结果没有同时让目标满足要求,下面是我的主代码和所得结果,请大神帮忙解答:
( M4 A6 R/ F/ ]; Uglobal u;
  u& V/ `% X  W0 {%贝塞尔函数求根& {, l  _: [# `% O! K* L3 n* u2 r
%设定模式数为20,对于TE模式需要求得一阶贝塞尔函数的前20个非零根4 s' A! \; q- s
maxs=20;%要求的贝塞尔函数的非零根个数7 ~; i, \; ^5 E% H
incr=4.0;% ~# D% W; X" T( o1 u' ~
u(1,1)=fzero(@(x)besselj(1,x),3.9);%一阶贝塞尔函数的第一个解(在3.9附近)
1 z  J  o. x6 ~  O0 |$ @for s=2:maxs+ q3 ?& c9 u3 ~. B, c% Q5 q
    u(1,s)=fzero(@(x)besselj(1,x),u(1,s-1)+incr);%在第一个解加4附近求零阶贝塞尔函数的第二个及以上的解
: N/ M( I7 H; A4 }; Y, g2 mend
9 E* F# |" c& K3 `NIND=40;      %个体数目40
# u' S; C0 i3 j! k$ ]MAXGEN=100;   %最大遗传代数100+ J% f3 X' G% B
NVAR=10;       %变量个数为10,前五个为半径,后五个位直波导长度4 A" o: y0 J! @) F# d$ ?
PRECI=20;      %变量的二进制位数
, N- }$ ?/ J6 A6 s. e, M9 l* YGGAP=0.9;      %代沟
) j, x" ~" j. d2 |trace1=[];
- o5 g9 b" Q1 ?- B. u1 qtrace2=[];   %性能跟踪器,1、2分别为第一目标函数、第二目标函数的跟踪) Q- g5 m' M' [, K
%建立区域描述器, K1 z( E, L3 F! i9 }+ h
FieldD=[rep([PRECI],[1,NVAR]);[20,20,20,20,20,10,10,10,10,10;50,50,50,50,50,100,100,100,100,100];rep([1;0;1;1],[1,NVAR])];
9 C6 }7 {% S9 G2 N9 z9 E3 p" LChrom=crtbp(NIND,NVAR*PRECI);        %初始化种群
1 C2 t, f; b4 Z# h- cv=bs2rv(Chrom,FieldD)/1000;               %初始种群十进制转换(单位由mm转换为m). \, Q& w; o7 X2 m' q* a% W8 c
gen=1;                               %代计数器
3 S/ I* Q5 b( f$ y; k. H# D+ s+ S%遗传开始& X. v2 @' z/ J4 K
while gen<MAXGEN
$ Y' j' l5 y2 z  |( L    [NIND,N]=size(Chrom);
/ o8 K6 L( J; ^    M=fix(NIND/2);8 {' ~7 v2 w3 n" ~' d3 G
    ObjV1=Highpass(v(1:M,);         %分组后高通目标函数值(单位m)* [9 U* h3 \* n% M! S
    FitnV1=ranking(-ObjV1);           %分配高通适应度值(求最大值)
/ P" s1 b- P/ |! @' k' a3 q7 W    SelCh1=select('sus', Chrom(1:M,,FitnV1,GGAP);      %调用随机遍历抽样函数sus对第一组种群基于适应度值进行选择& E+ j1 o0 t+ w( |
    ObjV2=Lowpass(v(M+1:NIND,);     %分组后低通目标函数值(单位m)
# K; K, Q! `1 N    FitnV2=ranking(ObjV2);            %分配低通适应度值(求最小值)
& ~$ Y3 {: S7 w0 w* g    SelCh2=select('sus', Chrom((M+1):NIND,,FitnV2,GGAP);      %调用随机遍历抽样函数sus对第二组种群基于适应度值进行选择4 z1 R: `" W8 E# v4 D
    SelCh=[SelCh1;SelCh2];            %将两组选择后种群进行合并
6 u6 t7 t/ x  [7 ?8 k) P6 P! w    SelCh=recombin('xovsp',SelCh,0.7);%以0.7的交叉概率进行单点交叉重组
9 G" T& A$ V! G# y  F    Chrom=mut(SelCh);                 %变异/ m8 z. X9 T) ?. O; c5 P. F
    %Chrom=reins(Chrom,SelCh);         %随机均匀选择重插入( s  z: @! V- r: R) z1 ]
    v=bs2rv(Chrom,FieldD)/1000;            %将进化后种群十进制转换(单位由mm转换为m)
6 I7 P& _2 d8 @" r: t    trace1(gen,1)=max(Highpass(v));
: B: p" R1 Y5 O2 B  Q9 N    trace1(gen,2)=sum(Highpass(v))/length(Highpass(v));: ^" x! J: n/ Q, T6 z4 s
    trace2(gen,1)=min(Lowpass(v));7 @2 V1 k/ W6 S1 o
    trace2(gen,2)=sum(Lowpass(v))/length(Lowpass(v));
8 ]9 }, i# ^0 Y    gen=gen+1;/ E* h' J/ v) K7 P4 N
end' O" S) I' W+ ~" o5 ~& k
figure(1);clf;4 _4 X7 m# p: Z
plot(trace1(:,1));hold on;plot(trace1(:,2),'-.');3 u7 s7 R$ T! r/ \6 Q
plot(trace1(:,1),'.');plot(trace1(:,2),'.');grid;
! t) J0 H; T2 l# Y, V" clegend('解的变化','种群均值的变化')
; Z) l9 t! U+ z* kxlabel('迭代次数');ylabel('高通目标函数值');
7 T6 P* N" ?8 b& Gfigure(2);clf;. ^! n) Q$ K( v) g
plot(trace2(:,1));hold on;* ?/ [8 |# }& ^  e: [" d4 O& }
plot(trace2(:,2),'-.');
. A) u; ?; o) J" F4 O0 d5 v; Iplot(trace2(:,1),'.');
* a2 b" i+ d' F1 Z$ z! }& Q! nplot(trace2(:,2),'.');grid;
. O& m# |/ s/ ]! E/ e$ zlegend('解的变化','种群均值的变化')0 g: X5 \/ h5 T% b. ?3 `
xlabel('迭代次数');ylabel('低通目标函数值');
6 r, w& P6 `. U7 I1 jfigure(3);clf;* H4 ~5 L6 |6 P% A$ j& W* V1 d2 S7 q
plot(Highpass(v));hold on;
4 \6 \9 R' K+ @$ J  r7 K, nplot(Lowpass(v),'r-.');grid;1 o0 {0 K# z' X0 b" ?% M
" `- Q& r9 {( s3 T: ^9 W# `% A

1.jpg (63.87 KB, 下载次数: 1023)

1.jpg

2.jpg (67.12 KB, 下载次数: 987)

2.jpg

3.jpg (47.82 KB, 下载次数: 955)

3.jpg

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
您需要登录后才可以回帖 登录 | 注册地址

qq
收缩
  • 电话咨询

  • 04714969085
fastpost

关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

手机版|Archiver| |繁體中文 手机客户端  

蒙公网安备 15010502000194号

Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

GMT+8, 2026-6-15 18:08 , Processed in 0.450480 second(s), 63 queries .

回顶部