最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

Matlab求解非線性規(guī)劃問(wèn)題

2023-08-05 16:30 作者:Coco香橙味  | 我要投稿

1.非線性規(guī)劃

與線性規(guī)劃問(wèn)題類似,但目標(biāo)函數(shù)和約束條件中包含非線性的等式或不等式。

2.matlab函數(shù)

fmincon是matlab中一個(gè)優(yōu)化函數(shù),常用于求解非線性約束問(wèn)題。函數(shù)定義如下:

X=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)

一般形式

其中,各參數(shù)含義如下:

  1. fun:目標(biāo)函數(shù),求最小化

  2. x0:初值(可任意選擇)

  3. A,b,Aeq,beq定義了線性約束

  4. A:不等式系數(shù)矩陣

  5. b:不等式右端值

  6. Aeq:等式系數(shù)矩陣

  7. beq:等式右端值

  8. lb:變量下界

  9. ub:變量上界

  10. c.ceq定義非線性約束

  11. ?nonlcon:定義非線性約束

  12. options:優(yōu)化選項(xiàng),包括迭代次數(shù)、容差等。

3.例子

①首先觀察這個(gè)式子,由于是求最小化問(wèn)題,需要先對(duì)約束條件進(jìn)行處理,轉(zhuǎn)化為標(biāo)準(zhǔn)形式。即不等號(hào)都需要變成<=形式,且x必須都大于0.

定義目標(biāo)函數(shù)

function f=objfun(x)

f=x(1)^2+x(2)^2+x(3)^2+8;

end?

定義非線性約束

function[g,h]=nonlcon(x)

%g表示不等式約束

g(1)=-x(1)^2+x(2)-x(3)^2

g(2)=x(1)+x(2)^2+x(3)^2-20

%h代表等式約束

h(1)=-x(1)-x(2)^2+2

h(2)=x(2)+2*x(3)^2-3

end

編寫(xiě)主函數(shù),設(shè)置初始點(diǎn)、上下界、等式/不等式約束和優(yōu)化選項(xiàng)

x0=rand(3,1)? %生成3×1的隨機(jī)矩陣,初始值

%本例中不存在線性約束,關(guān)于線性約束的等式和不等式對(duì)應(yīng)的系數(shù)矩陣和右端值都為空。

A=[];

b=[];

Aeq=[];

beq=[];

lb=zeros(3,1); ??%3×1的0矩陣 自變量下限為零

ub=[]; %上限無(wú)要求

options=optimset;

求解

[x,y]=fmincon(‘objfun’,x0,A,b,Aeq,beq,lb,ub,’nonlcon’,options);

%x為最優(yōu)解,y為最優(yōu)值

4.matlab之優(yōu)化算法globalsearch

流程如下:

函數(shù)描述

建立結(jié)構(gòu)體problem= createOptimProblem('fmincon','objective',...);

配置GlobalSearch求解器 gs=GlobalSearch

運(yùn)行求解器run(GS,problem)

舉例:

problem = createOptimProblem('fmincon','objective',objfun,'x0',x0,'lb',lb,'ub',ub, ’nonlcon’, nonlcon,'options',optimset('Algorithm','SQP','Disp','none'));

gs = GlobalSearch;

[p,G] = run(gs,problem);


Matlab求解非線性規(guī)劃問(wèn)題的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
武山县| 且末县| 凤山县| 三原县| 永康市| 莆田市| 颍上县| 庆元县| 四平市| 阿城市| 沛县| 沙河市| 祥云县| 寿宁县| 林芝县| 客服| 两当县| 武邑县| 古田县| 兖州市| 嘉义县| 临朐县| 上高县| 黑山县| 娄烦县| 许昌市| 中阳县| 凤翔县| 从化市| 萝北县| 金川县| 通辽市| 乐清市| 临高县| 家居| 丰县| 宜川县| 永州市| 图们市| 深州市| 双峰县|