含有約束的優化,可以利用fmincon函數。利用matlab軟體調用fmincon函數,需要編寫非線性約束m函數文件,較為麻煩,不便於掌握。基於fmincon函數,scppass4.0已開發出非線性規劃工具箱optimt,僅需填寫目標函數、線性等式約束矩陣、非線性不等式約束非方程、非線性等式約束方程,即可求解目標函數的最值以及取得最值時的各變量值。由於線性函數是特殊的非線性函數,本工具箱除了可以求解非線性規劃問題,也可以容易求解線性規劃問題。
求解方法:
[x,fval]= fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon);
線性規劃求解實例
—
線性等式矩陣:A=[1 -1 1;3 2 4;3 2 0];b = [20;40;36];沒有的輸入空矩陣[];x0=[0;0;0];ib=[0;0;0]運行結果:x1=0;x2=18;x3=1時,函數有最小值-78。
非線性規劃求解實例
—
運行結果:x1=2;x2=0;函數有最小值12.
複雜非線性規劃求解實例
—
可參考相關文章:
《scppass數值計算軟體-【擬合工具箱》
《scppass數值計算-【常微分工具箱ode》
《scppasss軟體複雜計算實例-【帶您走進混沌、分岔、玫瑰勁爆之美》
《擁有完全智慧財產權的科研教學用計算軟體scpppass3.0已發布》
《常用的20個數值函數》