中國建設(shè)網(wǎng)站首頁sem掃描電鏡是測什么的
1.簡述
? ? ??
關(guān)于非線性規(guī)劃
非線性規(guī)劃問題是指目標(biāo)函數(shù)或者約束條件中包含非線性函數(shù)的規(guī)劃問題。
前面我們學(xué)到的線性規(guī)劃更多的是理想狀況或者說只有在習(xí)題中,為了便于我們理解,引導(dǎo)我們進(jìn)入規(guī)劃模型的一種情況。相比之下,非線性規(guī)劃會更加貼近實(shí)際的生活。那這節(jié)我們先通過一個類似于線性規(guī)劃中l(wèi)inprog()函數(shù)的fmincon()來體會一下這類問題的解決過程。
一、fmincon()的基本形式
基本形式如下:x = fmincon(‘fun’,x0,A,b,Aeq,beq,lb,ub,‘nonlcon’,options) ;
(1)‘fun’為目標(biāo)函數(shù),注意需要單引號,或者@,或者直接在定義時寫成匿名函數(shù)即可,后面的nonlcon為非線性約束(包括等式和不等式),形式要求同fun;
(2)x0表示決策變量的初始值,可以隨機(jī)取一組符合約束條件的數(shù)據(jù)值,一般來講沒什么影響;
(3)A,b,Aeq,beq分別表示線性的不等式約束和等式約束,Ax<=b,Aeqx=beq;lb,ub同之前的linprog()函數(shù),表示上下界的向量;
(4)使用 options 所指定的優(yōu)化選項執(zhí)行最小化。使用 optimoptions 可設(shè)置這些選項。如果沒有非線性不等式或等式約束,請設(shè)置 nonlcon = []。
基本要求就是以上這些,下面我們以幾個例子來具體實(shí)現(xiàn)一下。
?
2.代碼
?
例子1
?
%% ?用函數(shù)fmincon求約束最優(yōu)化問題
clear all
f=inline('exp(x(1))*(4*x(1)^2+2*x(2)^2+4*x(1)*x(2)+2*x(2)+1)','x');
x0=[-1 1];
[x,fval]=fmincon(f,x0,[],[],[],[],[],[],'fcon1212')
?
例子2
?
%% ? 用fmincon解線性約束的最優(yōu)化
clear all
f=inline('-x(1)*x(2)*x(3)','x');
A=[-1,-2,-2;1,2,2]; %A*x<=b
b=[0;72];
x0=[10;10;10];
[x,fval]=fmincon(f,x0,A,b)
3.運(yùn)行結(jié)果
?
?
?
?
?