获取用yalmip建模模型的约束的拉格朗日乘子

在利用CAvR对不确定变量建模时发现,如果电价自己设定,会由于电价不合理问题无解。因此希望先对目标函数仅为发电费用、约束条件仅考虑物理约束的简化QP模型求解获得电价。在这样的QP问题中,每个功率平衡约束在求解时的拉格朗日乘子即表示每提升单位发电量对应发电成本上涨的部分,所以当作是近似电价。
在网上搜索时发现用拉格朗日乘子作为关键词不容易找到相关方法。所以写了记录一下。
1、首先要在设置里加上savesolveroutput,savesolverinput,yalmip才会将计算结果细节输出。
options = sdpsettings('savesolveroutput',1,'savesolverinput',1);
2、右键点击运行结果选择打开’sol‘,进入结果信息界面
获取用yalmip建模模型的约束的拉格朗日乘子
选择’solveroutput’->lambda->eqlin(我需要的是等式约束的乘子所以是eqlin)
获取用yalmip建模模型的约束的拉格朗日乘子
获取用yalmip建模模型的约束的拉格朗日乘子
获取用yalmip建模模型的约束的拉格朗日乘子
3、由于yalmip在建模时会调整约束顺序,所以还需要将模型输出出来,对照乘子。
在调用设置加上exportmodel即可输出模型。一般是不等式约束在前面,等式约束在后面。这样就能得到自己想要的约束乘子了。
options.cplex.exportmodel='文件.lp';
获取用yalmip建模模型的约束的拉格朗日乘子