QQ登录

只需要一步,快速开始

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

[问题求助] 多目标优化

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

1

主题

9

听众

12

积分

升级  7.37%

该用户从未签到

自我介绍
勇往直前

社区QQ达人

跳转到指定楼层
#
发表于 2016-5-19 20:18 |只看该作者 |正序浏览
|招呼Ta 关注Ta
4体力
在多目标优化时,优化结果没有同时让目标满足要求,下面是我的主代码和所得结果,请大神帮忙解答:
+ Z' u( x6 H. }3 p0 D" Tglobal u;
' y0 p  J( b/ G  q8 R%贝塞尔函数求根
2 @% k% o' S* H, m%设定模式数为20,对于TE模式需要求得一阶贝塞尔函数的前20个非零根
- w/ F  @9 m/ {4 Z! [maxs=20;%要求的贝塞尔函数的非零根个数  G. ]4 E6 h% w2 X. T: |9 p% A; k
incr=4.0;
1 s" \, O9 `3 r- R3 W9 u  zu(1,1)=fzero(@(x)besselj(1,x),3.9);%一阶贝塞尔函数的第一个解(在3.9附近), L  z" \3 X4 N5 v2 \
for s=2:maxs
  R$ ~! M7 B7 S    u(1,s)=fzero(@(x)besselj(1,x),u(1,s-1)+incr);%在第一个解加4附近求零阶贝塞尔函数的第二个及以上的解' v2 m7 g2 z* I# A
end6 Z# ~* x, }! F9 o
NIND=40;      %个体数目40- m/ s! C. X1 h. U4 T4 O" C- [) c# V
MAXGEN=100;   %最大遗传代数1009 q  V: L  F' R$ l& y4 v  x! W4 }
NVAR=10;       %变量个数为10,前五个为半径,后五个位直波导长度
. l& Z. c2 `1 ?; W, u* ?PRECI=20;      %变量的二进制位数. ~+ \. S3 ]! w" }& H
GGAP=0.9;      %代沟
! d8 ^/ M1 B! D0 x' x5 atrace1=[];# C6 r. @, T( E7 F# x6 c
trace2=[];   %性能跟踪器,1、2分别为第一目标函数、第二目标函数的跟踪
, C, m2 ]" |9 o2 K; a%建立区域描述器+ L/ P- f( |* z3 {8 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])];
- Z# s5 h0 m$ HChrom=crtbp(NIND,NVAR*PRECI);        %初始化种群
5 Z+ J3 A8 l( `v=bs2rv(Chrom,FieldD)/1000;               %初始种群十进制转换(单位由mm转换为m)# Y3 W' \7 ^$ J
gen=1;                               %代计数器9 n& i8 T/ C8 s) Q& D
%遗传开始
! S* ^- o/ c$ F5 v& G: u4 E# `) Rwhile gen<MAXGEN
6 T" ~" z. m+ m! i: \    [NIND,N]=size(Chrom);! _. E- J% y- O' x3 {6 v
    M=fix(NIND/2);- {% S" Y( I& z' j6 W: c3 t+ w8 Z
    ObjV1=Highpass(v(1:M,);         %分组后高通目标函数值(单位m)
6 ?4 b+ S) d. y. D2 C! h# V    FitnV1=ranking(-ObjV1);           %分配高通适应度值(求最大值)
$ ^, v* g7 ^' E$ C# p, T0 w( \. ?    SelCh1=select('sus', Chrom(1:M,,FitnV1,GGAP);      %调用随机遍历抽样函数sus对第一组种群基于适应度值进行选择( Z" }. y1 ^( `. x: {* S
    ObjV2=Lowpass(v(M+1:NIND,);     %分组后低通目标函数值(单位m)
7 F1 q  I, J; e3 H    FitnV2=ranking(ObjV2);            %分配低通适应度值(求最小值)
! i: g, A. R7 K% Q$ ?    SelCh2=select('sus', Chrom((M+1):NIND,,FitnV2,GGAP);      %调用随机遍历抽样函数sus对第二组种群基于适应度值进行选择. }3 e8 Q& L' L, Q) B- N/ Q
    SelCh=[SelCh1;SelCh2];            %将两组选择后种群进行合并
2 h2 Z, c# X: ?% N$ ?1 a6 g    SelCh=recombin('xovsp',SelCh,0.7);%以0.7的交叉概率进行单点交叉重组
" T( s, S* v- [/ e7 r- W    Chrom=mut(SelCh);                 %变异3 C9 q! m' A0 _; c3 i+ C
    %Chrom=reins(Chrom,SelCh);         %随机均匀选择重插入
9 I1 d9 A: w) H+ c: u4 [/ }    v=bs2rv(Chrom,FieldD)/1000;            %将进化后种群十进制转换(单位由mm转换为m)9 F8 G: @3 U% n) @1 K" v
    trace1(gen,1)=max(Highpass(v));
/ c2 z* [# u! w$ Z! T. r9 H+ L    trace1(gen,2)=sum(Highpass(v))/length(Highpass(v));
/ J+ |: A/ `2 ]. e/ w( H- [1 W    trace2(gen,1)=min(Lowpass(v));7 _: w3 k- n4 @) k" ?& w
    trace2(gen,2)=sum(Lowpass(v))/length(Lowpass(v));
. H5 T6 ^2 P: F9 T6 X$ ^    gen=gen+1;
: m) k1 V3 d! h3 m- @end
: Y5 Z. n7 E; qfigure(1);clf;
; W. v& s' h4 m: qplot(trace1(:,1));hold on;plot(trace1(:,2),'-.');3 M" @9 [2 X  }, J% [9 D& y
plot(trace1(:,1),'.');plot(trace1(:,2),'.');grid;
, q# c( Y9 x# G( T# ]legend('解的变化','种群均值的变化')8 H( I9 e8 ~  _  k) I
xlabel('迭代次数');ylabel('高通目标函数值');2 j2 I. b2 ^" V$ w. G/ _, z
figure(2);clf;- n7 G- n2 z. N2 }& y
plot(trace2(:,1));hold on;  y) L: [, Y1 U$ M& K' z
plot(trace2(:,2),'-.');: L7 e' J0 ?5 U
plot(trace2(:,1),'.');, q" [/ G+ @' s
plot(trace2(:,2),'.');grid;/ u( ?6 |+ }$ F7 e
legend('解的变化','种群均值的变化')- j7 W) |* f6 b) ]7 O9 G
xlabel('迭代次数');ylabel('低通目标函数值');2 h' c7 x2 e& k; R1 Q* _4 n
figure(3);clf;6 Q7 C( _8 K9 ^. k! S; h) H
plot(Highpass(v));hold on;( \. s+ J. A  w. M
plot(Lowpass(v),'r-.');grid;: K: e: M6 D: c, _
' U: Y7 u1 b9 I

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

1.jpg

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

2.jpg

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

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-4-13 18:11 , Processed in 0.455823 second(s), 65 queries .

回顶部