回 帖 发 新 帖 刷新版面

主题:请问如何写这样的优化问题的代码

我需要多次求解约束相同,目标函数形式一致,但是系数有变化的优化问题
目标函数我写成
function nodescnerioObj
=scenarioGenObj(x,meaload,stadevload,skewload,meagasprice,stadevgasprice,skewgasprice,nod_num);

lodmd=x(1:nod_num);
gasprice=x(nod_num+1:2*nod_num);
pis=x(2*nod_num+1:3*nod_num);
...
%目标函数就是lodmd,gasprice和pis的非线性函数

在另外一个文件中定义矩阵并且求解这个优化问题
function [nodeScenario,f]
=scenarioGen(meaload,stadevload,skewload,meagasprice,stadevgasprice,skewgasprice,nod_num)
%矩阵的构造过程省略掉
x0=[lodmd0;gasprice0;pis0];
[nodeScenario,f]=fmincon(@scenarioGenObj,x0,[],[],Aeq,Beq,lx,ux)

最后在主文件中给出meaload,stadevload,skewload,meagasprice,stadevgasprice,skewgasprice,nod_num的具体值,运行以后出错,提示
Input argument "nod_num" is undefined.
Error in ==> scenarioGenObj at 25
lodmd=x(1:nod_num);

这种问题应该怎么解决呢?谢谢版上的达人解答

回复列表 (共1个回复)

沙发

是nod_num没有定义数值
qq--604443022

我来回复

您尚未登录,请登录后再回复。点此登录或注册