將要規劃求解的問題運用各種原理寫成要最大化或者最小化的數學公式後,運用matlab求解問題。針對非線性規劃,matlab提供了如下命令:fimincon.
matlab中非線性規劃的數學模型可寫成如下形式:
f(x)為標量函式,a,b,aeq,beq是相應維數的矩陣和向量,c(x),ceq(x)是非線性向量函式。
如,求解下列非線性規劃:
先編寫funl.m定義目標函式:
function
f = fun1
(x);
f = sum(x.^2) + 8;
檔案fun2.m定義了非線性約束條件:
function [g,h] = fun2(x);
g = [(-x(1)
^2+ x(
2) - x(3)
^2);(x(
1) +x(2)
^2+ x(3)
^2-
3)];
h = [(-x(
1) - x(2)
^2+
2);(x(
2) +
2*x(3)
^2-
3)];
主程式檔案example2.m如下:
options = optimset('largescale','off');
[x,y] = fmincon('fun1',rand(3,1),,,,,zeros(3,1),,...
'fun2',options)
結果為:
x =
0.5522
1.2033
0.9478
y = 10.6511
數學建模 非線性規劃
2014年4月17日 規劃方法是建模中的常用手段。那麼顯然要人有我優了,非線性規劃就是乙個不錯的加分點。下面介紹幾種常用的非線性規劃技巧 這裡要說一下無約束法,規劃問題的困難在於求解,特別是約束比較奇怪的。於是在比賽中把有約束的規劃問題轉換成無約束的規劃問題就成了乙個大大的加分點。另外dfp之類的包...
數學建模 非線性規劃
如果目標函式或約束條件中包含非線性函式,則稱這種規劃問題為非線性規劃問題,簡寫為np。二次規劃是非線性規劃中的特例,由於二次規劃有通用的解法,所以單獨討論,而其他的非線性規劃問題沒有通用的解法。在matlab中,非線性規劃的數學模型可以寫為下面的形式 mi nf x st.ax b aeq x be...
數學建模 非線性優化模型
定義 如果目標函式或約束條件中至少有乙個是非線性函式時的最優化問題就叫做非線性規劃問題。一般形式 min f x gi x 0 i 1,2,m hj x 0 j 1,2,m 其中 x x1 x2 xn t en f gi,hj 是定義在 en 上的實值函式。其他情況 求目標函式的最大值或約束條件為小...