omg是线性规划
linprog
Section titled “linprog”这玩意接收七个参数,返回两个东西:
[x, fval] = linprog(f, A, b, Aeq, beq, lb, ub);它求的是 ,其中 是目标函数的系数,大概长这样
也就是代表函数:
代表最优解,就是要求的东西
同时它还要满足以下条件
三个式子分别代表不等式约束、等式约束和变量上下界,如果不需要其中某个约束,填入[]就行了
返回的x和fval分别是最优解和最优函数匹配值
比如说如果要求
还有约束
很容易发现f = [2; 3],但是不等式约束的符号和函数要求不一样,于是就要两边乘 得到
所以A = [-1, -1]; b = -10;
然后由于 ,于是下界lb=zeros(2,1);,这行代表生成一个 2 行 1 列的矩阵,里面都是 0
然后就可以这样求解了
[x, fval] = linprog(f, A, b, [], [], lb, []);intlinprog
Section titled “intlinprog”这个和上面那个大差不差,只是多接收了个参数,用来决定哪几个 必须是整数
[x, fval] = intlinprog(f, intcon, A, b, Aeq, beq, lb, ub);intcon接收一个像1:4这样的区间,代表第 1 到 4 个 都要是整数