查看: 112|回复: 0|关注: 0

[未答复] 计算太慢了,求助

[复制链接]

新手

5 麦片

财富积分


050


1

主题

1

帖子

0

最佳答案
发表于 3 天前 | 显示全部楼层 |阅读模式
建立的是一个双层优化模型,上层采用的粒子群算法,下层模型是一个非线性0-1规划,用的是OPTI工具箱,做法是上下层变量互相迭代求解。下层模型包括很多的优化函数,这些函数基本都一样。对下层所有函数都优化后,再带入上层循环求解。现在主要是相互迭代过程耗费大量时间。而需要做的是一个统计,所以会有很多次抽样,花费的时间巨多。用探查器探查显示的是OPTI优化时间太长。
附件uncertainf1为主函数,其他几个是调用函数,压缩包为OPTI工具箱。
下面是探查器显示运行时间长的部分。
while(abs(s(2)-s(1))>=0.001)
% for ii=1:1:100        
for m1=1:1:M1
    [cetaU1(m1),Si1(m1)] = OPTI1(ceta1(m1),s(2));
    Usea1=peron(cetaU1(m1));
    q1(m1)=Si1(m1)*(Useb1(m1)-Usea1);   
end   
Q1=sum(q1);%M1类用户优化后总响应量


for m2=1:1:M2
    [cetaU2(m2),Si2(m2)] = OPTI2(ceta2(m2),s(2));
    Usea2=peron(cetaU2(m2));
    q2(m2)=Si2(m2)*(Useb2(m2)-Usea2);   
end   
Q2=sum(q2);%M2类用户优化后总响应量


uncertainf1.m

5.02 KB, 下载次数: 0

主函数

OPTI2.m

726 Bytes, 下载次数: 0

优化函数

OPTI1.m

726 Bytes, 下载次数: 0

优化函数

peron.m

445 Bytes, 下载次数: 0

占空比

回复主题 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表