| 查看: 1746 | 回复: 0 | ||
[求助]
Function definitions are not permitted in this context求帮助一下,附上源代码
|
|
%% 参数设置 % GreenSim团队——专业级算法设计&代写程序 % 欢迎访问GreenSim团队主页→http://blog.sina.com.cn/greensim A=8.5;%出力系数,常数 Tt=730*ones(12,1);%第t个时段的小时数 %注意:一年按363天*24小时算,均分为12个月 HtLB=55*ones(12,1);%第t时段水位约束的下界,单位:米 HtUB=[65;65;65;61;61;61;61;65;65;65;65;65];%第t时段水位约束的上界,单位:米 VtLB=zeros(12,1); VtUB=zeros(12,1); for i=1:12 VtLB(i)=Ht2Vt(HtLB(i)); VtUB(i)=Ht2Vt(HtUB(i)); end %注意:蓄水量Vt和水位Ht之间有一一对应的关系,单位:立方米 NtLB=260000*ones(12,1);%出力约束的下界,单位:千瓦 NtUB=1400000*ones(12,1);%出力约束的上届,单位:千瓦 %注意:Nt=A*Qt*Ht QtLB=308*ones(12,1);%泄流量下界,单位:立方米/秒 QtUB=29200*ones(12,1);%泄流量上界,单位:立方米/秒 qt=[373;859;1568;2100;3210;5049;1596;1160;925;781;572;1010];%入库流量,单位:立方米/秒 %注意:以上三个量,时间单位相乘时,小时乘以3600转化成秒 %% 调用粒子群算法 K=60; N=80; w=0.5; c1=0.3; c2=0.2; [BESTX,BESTY,ALLX,ALLY]=PSO(K,N,w,c1,c2,VtLB,VtUB,QtLB,QtUB,NtLB,NtUB,qt,A,Tt); %% X=BESTX{K}; [Vt,Qt,St]=DeCode(X); disp('最佳蓄水量'); disp(Vt); disp('最佳平均发电流量'); disp(Qt); disp('最佳平均弃水流量'); disp(St); disp('最大总发电量'); disp(-BESTY(K)); function [BESTX,BESTY,ALLX,ALLY]=PSO(K,N,w,c1,c2,VtLB,VtUB,QtLB,QtUB,NtLB,NtUB,qt,A,Tt) % GreenSim团队——专业级算法设计&代写程序 % 欢迎访问GreenSim团队主页→http://blog.sina.com.cn/greensim %% 输入参数列表 % K 迭代次数 % N 粒子个数 % w 惯性因子 % c1 加速因子,针对历史最优状态 % c2 加速因子,针对全局最优状态 % VtLB 蓄水量约束下界,立方米,N*1向量 % VtUB 蓄水量约束上界,立方米,N*1向量 % QtLB 平均发电流量约束下界,立方米/秒,N*1向量 % QtUB 平均发电流量约束上界,立方米/秒,N*1向量 % NtLB 出力约束下界,千瓦,N*1向量 % NtUB 出力约束上界,千瓦,N*1向量 % qt 入库流量,立方米/秒,N*1向量 % A 出力系数 % Tt 一个周期的小时数 %% 输出参数列表 % BESTX K×1细胞结构,每一个元素是M×1向量,记录每一代的最优个体 % BESTY K×1矩阵,记录每一代的最优个体的评价函数值 % ALLX K×1细胞结构,每一个元素是M×N矩阵,记录全部个体 % ALLY K×N矩阵,记录全部个体的评价函数值 %% 第一步:粒子状态初始化 M=3*length(VtLB); farm=zeros(N,M); for i=N [Vt,Qt,St]=Initialize2(VtLB,VtUB,QtLB,QtUB,NtLB,NtUB,qt,A,Tt); X=EnCode(Vt,Qt,St); farm(i, =X';end %粒子历史最优状态初始化 Pfarm=farm; %粒子群全局最优状态 for i=1:N X=Pfarm(i, ;[Vt,Qt,St]=DeCode(X'); SE=ObjFun(A,Qt,St,Vt,Tt); Fitness(i)=SE; end MinFit=min(Fitness); POS=find(Fitness==MinFit); Gfarm=Pfarm(POS(1), ;%输出变量初始化 ALLX=cell(K,1);%细胞结构,每一个元素是M×N矩阵,记录每一代的个体 ALLY=zeros(K,N);%K×N矩阵,记录每一代评价函数值 BESTX=cell(K,1);%细胞结构,每一个元素是M×1向量,记录每一代的最优个体 BESTY=zeros(K,1);%K×1矩阵,记录每一代的最优个体的评价函数值 k=1;%迭代计数器初始化 %% 第二步:迭代过程 while k<=K %% 粒子状态更新 newfarm=farm; for i=1:N newfarm(i, =w*farm(i, +c1*rand*(Pfarm(i, -farm(i, )+c2*rand*(Gfarm-farm(i, );X=newfarm(i, ;[Vt,Qt,St]=DeCode(X'); [Flag,Vt,Qt,St]=Correct(Vt,Qt,St,VtLB,VtUB,QtLB,QtUB,NtLB,NtUB,qt,A,Tt); X=EnCode(Vt,Qt,St); newfarm(i, =X';end %% 历史最优状态和全局最优状态更新 NEWFIT=zeros(1,N); for i=1 N)aa=newfarm(i, ;[Vt,Qt,St]=DeCode(aa'); FitA=ObjFun(A,Qt,St,Vt,Tt); bb=Pfarm(i, ;[Vt,Qt,St]=DeCode(bb'); FitB=ObjFun(A,Qt,St,Vt,Tt); NEWFIT(i)=FitA; if FitA<FitB Pfarm(i, =A;end if FitA<Gfarm Gfarm=A; end end %% 记录 ALLX{k}=newfarm; ALLY(k, =NEWFIT;BESTX{k}=Gfarm; [Vt,Qt,St]=DeCode(Gfarm'); BESTY(k)=ObjFun(A,Qt,St,Vt,Tt); disp(k); k=k+1; end |
» 猜你喜欢
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
实验室接单子
已经有7人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
参与限项
已经有3人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
找到一些相关的精华帖子,希望有用哦~
图论与两点间最短路的Warshall-Floyd算法
已经有6人回复
关于Matlab求孔隙率(找最佳阈值)
已经有6人回复
遗传算法优化BP神经网络权值阈值
已经有6人回复
matlab Undefined function or method '~' for input arguments of type 'char'.
已经有12人回复
继续求助Matlab绘图!
已经有8人回复
matlab 积分求助
已经有8人回复
求助matlab问题
已经有5人回复
数据文件inter2.mat文件为一曲面上的点(x,y,z)的坐标 100金币求助
已经有6人回复
求助matlab里面画出x^3-1=0的Newton迭代的吸引域的程序
已经有5人回复
缩短程序运行时间的方法
已经有7人回复
三个变量之间的非线性回归问题求助
已经有5人回复
科研从小木虫开始,人人为我,我为人人












=X';
N)
回复此楼
点击这里搜索更多相关资源