2013-02-24 84 views
0

如果這聽起來像一個新手問題,我很抱歉!我都是全新的Matlab和優化工具箱!Matlab的優化工具箱中的多重等式約束

我有一個使用quadprog的優化問題,我有兩個等式約束在我的問題。使用通式:

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

但在這裏我只能AEQ和BEQ爲等式約束! A和B是不等式的限制...

是否有可能像類似的設置的平等約束?在Aeq中有多個相等的變量,beq是以一組或某物的形式出現?我一直在尋找並嘗試一段時間,但沒有運氣!

+1

I」你被你的問題迷惑了。 Aeq是矩陣形式,因此允許一組相等。 – Rasman 2013-02-24 13:58:23

回答

0

等式約束以矩陣形式Aeq*x==beq給出。因此,Aeq的每一行都可以定義一個單獨的等式。例如,如果有三個未知數,並且希望所述第一兩者之和爲等於2,並且所述第二兩(x(3)-x(2))的差爲等於3,則寫

Aeq = [1 1 0; 0 -1 1]; 
beq = [2;3];