24小时热门版块排行榜    

北京石油化工学院2026年研究生招生接收调剂公告
查看: 3715  |  回复: 14

小新爱小白

金虫 (小有名气)

引用回帖:
594464楼: Originally posted by lhfx_313 at 2011-04-11 20:32:11
应该分模块实现,一个主模块+几个子模块(每个子模块也就对应一个函数,也就是以 function开头)。
写一个main.m作为主模块,然后调用其他的各个子模块(调用各个子函数)就行了。
举个例子:实现两个数的相加和相 ...

Function [eval]=targetalloc (chrom)
[m,n]=size(chrom);
p=[87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;62 87 70 22 80 42 43 90 13 95 18 19 12 61 35;48 20 42 16 43 58 69 03 34 72 15 24 29 30 75];
w=[47 97 76 62 48 77 33 74 54 65 43 35 63 66 57];
for i=1:m
for j=1:15
chrom(i,j)=p(chrom(i,j),j);
end;
end
eval=chrom*w';
NIND=40;
MAXGEN=50;
GGAP=0.9;
trace=zeros(MAXGEN,2);
BaseV=crtbase(15,8);
Chrom=crtbp(NIND,BaseV)+ones(NIND,15);
gen=0;
ObjV=taretalloc(Chrom);
while gen FitnV=ranking(-ObjV);
SelCh=select('sus',Chrom,FitnV,GGAP);
SelCh=recombin('xovsp',SelCh,0.7);
f=rep([1;8],[1,15]);
SelCh=mutbga(SelCh,f);SelCh=fix(SelCh);
ObjVSel=taretalloc(SelCh);
[Chrom ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel);
gen=gen+1;
trace(gen,1)=max(ObjV);
trace(gen,2)=sum(ObjV)/length(ObjV);
end
[Y,I]=max(ObjV);Chrom(I,,Y
plot(trace(:,1),'-.');hold on;
plot(trace(:,2));grid
Legend('解的变化','种群均值的变化')
这个程序有什么问题,怎么总是提示错误,也运行不了呢?或者请指教怎么在Matlab 7.7.0(R2008b)里边具体步骤。
O(∩_∩)O谢谢
天天开心,事事顺利
11楼2012-08-11 20:05:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小新爱小白

金虫 (小有名气)

引用回帖:
946297楼: Originally posted by libralibra at 2011-04-19 00:41:55
互相调用2个办法:

==========
1.子函数
==========

都写在一个文件中,例如叫main.m

function main()
%主函数内容

subFunc1(); % 掉用子函数1

subFunc2(); % 掉用子函数2
end

function subFun ...

Function [eval]=targetalloc (chrom)
[m,n]=size(chrom);
p=[87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;87 52 11 78 72 69 94 72 36 28 27 74 24 78 45;62 87 70 22 80 42 43 90 13 95 18 19 12 61 35;48 20 42 16 43 58 69 03 34 72 15 24 29 30 75];
w=[47 97 76 62 48 77 33 74 54 65 43 35 63 66 57];
for i=1:m
for j=1:15
chrom(i,j)=p(chrom(i,j),j);
end;
end
eval=chrom*w';
NIND=40;
MAXGEN=50;
GGAP=0.9;
trace=zeros(MAXGEN,2);
BaseV=crtbase(15,8);
Chrom=crtbp(NIND,BaseV)+ones(NIND,15);
gen=0;
ObjV=taretalloc(Chrom);
while gen FitnV=ranking(-ObjV);
SelCh=select('sus',Chrom,FitnV,GGAP);
SelCh=recombin('xovsp',SelCh,0.7);
f=rep([1;8],[1,15]);
SelCh=mutbga(SelCh,f);SelCh=fix(SelCh);
ObjVSel=taretalloc(SelCh);
[Chrom ObjV]=reins(Chrom,SelCh,1,1,ObjV,ObjVSel);
gen=gen+1;
trace(gen,1)=max(ObjV);
trace(gen,2)=sum(ObjV)/length(ObjV);
end
[Y,I]=max(ObjV);Chrom(I,,Y
plot(trace(:,1),'-.');hold on;
plot(trace(:,2));grid
Legend('解的变化','种群均值的变化')
这个程序有什么问题,怎么总是提示错误,也运行不了呢?或者请指教怎么在Matlab 7.7.0(R2008b)里边具体步骤。
O(∩_∩)O谢谢
天天开心,事事顺利
12楼2012-08-11 20:06:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

libralibra

至尊木虫 (著名写手)

骠骑将军

引用回帖:
1273373楼: Originally posted by 小新爱小白 at 2012-08-11 20:06:34
Function =targetalloc (chrom)
=size(chrom);
p=;
w=;
for i=1:m
for j=1:15
chrom(i,j)=p(chrom(i,j),j);
end;
end
eval=chrom*w';
NIND=40;
MAXGEN=50;
GGAP=0.9;
trace=zeros(MAXGEN,2);
BaseV= ...

贴出所有报错看看
debug要看bug信息才行
matlab/VB/python/c++/Java写程序请发QQ邮件:790404545@qq.com
13楼2012-08-11 23:30:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liyw11

金虫 (小有名气)


小木虫: 金币+0.5, 给个红包,谢谢回帖
从模块化入手,就好了

[ 发自手机版 http://muchong.com/3g ]
不断追求
14楼2012-08-12 10:20:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

竹子kyle

铜虫 (正式写手)

和c里差不多
impossibleisnothing
15楼2012-09-07 15:55:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wenqiang1938 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 生物与医药086000调剂一志愿西北农林320分 +3 美美女士 2026-04-03 3/150 2026-04-05 21:55 by 学员8dgXkO
[考研] 求调剂,一志愿厦门大学,生物与医药,总分272,本科211 +3 Electron1cc 2026-04-01 4/200 2026-04-05 20:24 by lys0704
[考研] 一志愿同济大学323分(080500)求调剂 +8 yikeniu 2026-04-01 8/400 2026-04-05 18:15 by cql1109
[考研] 288求调剂 一志愿哈工大 材料与化工 +13 洛神哥哥 2026-04-03 13/650 2026-04-05 17:27 by zzx2138
[考研] 270分求调剂 +4 maxjxbsk 2026-04-01 4/200 2026-04-05 17:04 by yulian1987
[考研] 材料调剂 +7 dxy调剂 2026-04-04 7/350 2026-04-05 09:15 by 陌秋26
[考研] 一志愿211,化学学硕,310分,本科重点双非,求调剂 +11 努力奋斗112 2026-04-04 11/550 2026-04-04 20:51 by 蓝云思雨
[考研] 368求调剂 +5 今华习 2026-04-03 7/350 2026-04-04 18:47 by imissbao
[考研] 化学308分调剂 +23 你好明天你好 2026-03-30 24/1200 2026-04-04 18:29 by macy2011
[考研] 293分求调剂,外语为俄语 +6 加一一九 2026-03-31 6/300 2026-04-04 14:57 by 聪明的大松鼠
[考研] 兽医调剂 +3 wh119216 2026-04-02 3/150 2026-04-03 19:34 by zrongyan
[考研] 372分材料与化工(085600)一志愿湖南大学求调剂 +3 蓝笺片 2026-04-03 4/200 2026-04-03 17:58 by Jimmyandyou
[考研] 生物学硕341求调剂 +4 你笑起来像云朵 2026-04-03 4/200 2026-04-03 10:32 by macy2011
[考研] 一志愿a区211,085601-307分求调剂 +13 党嘉豪 2026-03-31 26/1300 2026-04-03 08:33 by 495374996
[考研] 362求调剂 +14 西南交材料专硕3 2026-03-31 14/700 2026-04-02 17:50 by yunlongyang
[考研] 266求调剂 +4 学员97LZgn 2026-04-02 4/200 2026-04-02 13:03 by yulian1987
[考研] 生物学327,求调剂 +5 书上的梅子 2026-04-01 6/300 2026-04-02 06:47 by ilovexiaobin
[考研] 材料调剂 +11 一样YWY 2026-03-31 11/550 2026-04-01 22:25 by zhouyuwinner
[考研] 298求调剂 +4 什么是胖头鱼 2026-03-30 6/300 2026-04-01 22:06 by 客尔美德
[考研] 0855机械初试280求调剂 +3 kazenotori 2026-03-31 3/150 2026-04-01 10:08 by JourneyLucky
信息提示
请填处理意见