作业帮 > 综合 > 作业

matlab 求解二次规划

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/23 03:03:52
matlab 求解二次规划
如题
我的二次规划要求变量只能取0-1两个值,有没有对应的解决方法?
ps:用Lingo解也可以,最好给个简单的例子。
我的意思是我知道Matlab中有解二次规划和0-1规划问题的函数,但是不知道有没有解要求变量取值只能是0-1的二次规划的函数或方法。
还有lingo因该可以解这样的问题吧,我听人说可以,只是自己不知道方法。
matlab 求解二次规划
lingo的确可以解二次规划,如果想让某变量x只能取值0-1的话,用@BIN(x)即可
我写个最简单的例子
--------------------------------
min x1^2+3*x2-x3+4*x^2
s.t. x1+x2-x3-x4>0
x1*x2=-6
x1>3
x2∈R
x3>=0
x4∈{0,1}
-----------------------------------
lingo程序的写法(最简单的写法)
-----------------------------------
model:
min=x1^2+3*x2-x3-4*x4^2;
x1+x2-x3-x4>0;
x1*x2=-6;
x1>3;
@FREE(x2);! 感叹号后面的是说明语句。lingo默认变量均为非负的。FREE表示该变量无约束范围。
@BIN(x4);!BIN表示该变量为0-1变量。
end
------------------------------------
运行后即可得到解答。
关于lingo更进一步的用法请参阅相关教程,这里从略。