0

如果这听起来像一个新手问题,我很抱歉!我对 Matlab 和优化工具箱都是全新的!

我有一个使用 quadprog 的优化问题,我的问题中有两个等式约束。使用一般公式:

x = quadprog(H,f,A,b,Aeq,beq,lb,ub,x0,options)

但在这里我只能将 Aeq 和 beq 作为等式约束!A 和 b 是不等式约束...

是否有可能为等式约束设置类似集合?即在 Aeq 和 beq 中以集合或其他形式具有多个相等变量?我一直在寻找和尝试一段时间,但没有运气!

4

1 回答 1

0

等式约束以矩阵形式给出Aeq*x==beq。因此,每一行都Aeq可以定义一个单独的方程。例如,如果您有三个未知数,并且您希望前两个的和等于 2,并且后两个的差 ( x(3)-x(2)) 等于 3,您可以写

Aeq = [1 1 0; 0 -1 1];
beq = [2;3];
于 2013-02-24T14:11:57.137 回答