資源描述:
《《優(yōu)化工具箱》PPT課件》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、Matlab優(yōu)化工具箱李楠蘇州大學(xué)數(shù)學(xué)科學(xué)學(xué)院Outline簡介常見問題及其解法無約束函數(shù)極值非線性規(guī)劃二進制整數(shù)規(guī)劃圖形化工具箱的使用線性規(guī)劃二次規(guī)劃數(shù)學(xué)建模&優(yōu)化現(xiàn)實世界中,很多問題可以形式化優(yōu)化問題32021/8/12優(yōu)化工具箱實際問題數(shù)學(xué)問題數(shù)學(xué)解抽象形式化問題求解反饋(物理意義…)目標(biāo)函數(shù)約束Matlab優(yōu)化工具箱提供了一批求解優(yōu)化問題的方法Outline簡介常見問題及其解法無約束函數(shù)極值非線性規(guī)劃二進制整數(shù)規(guī)劃圖形化工具箱的使用線性規(guī)劃二次規(guī)劃無約束函數(shù)極值5標(biāo)準(zhǔn)形式2021/8/1
2、2一元函數(shù)的無約束優(yōu)化問題使用函數(shù)fminbnd,常用格式x=fminbnd(fun,x1,x2)x=fminbnd(fun,x1,x2,options)[x,fval]=fminbnd(…)[x,fval,exitflag]=fminbnd(…)[x,fval,exitflag,output]=fminbnd(…)一元函數(shù)極值問題62021/8/12例:求函數(shù)在區(qū)間(0,8)中的最小值和最大值,及其對應(yīng)x的值。求解過程:1.建立m文件2.調(diào)用函數(shù)求最大值只需要將函數(shù)乘以-1,然后取最小值即可。
3、fplot(@f1,[0,8])作業(yè)17對邊長為1m的正方形鐵板,在四個角剪去相等的正方形以制成方形無蓋水槽,問如何剪使水槽的容積最大?最大容積為多少?2021/8/12非約束多元函數(shù)極值問題8問題:2021/8/12x為向量解法:使用函數(shù)fminunc,常用格式x=fminunc(fun,x0)x=fminunc(fun,x0,options)[x,fval]=fminunc(...)[x,fval,exitflag]=fminunc(...)[x,fval,exitflag,output]=
4、fminunc(...)其中,x0為起始點非約束多元函數(shù)極值問題:例子92021/8/12例:求函數(shù)的最小值,及其對應(yīng)x的值。1.建立m文件2.調(diào)用函數(shù)約束函數(shù)極值問題102021/8/12問題:解法:使用函數(shù)fmincon,常用格式非線性約束線性約束區(qū)間約束x=fmincon(fun,x0,A,b)x=fmincon(fun,x0,A,b,Aeq,beq)x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub)x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,
5、nonlcon)x=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)[x,fval]=fmincon(...)[x,fval,exitflag]=fmincon(...)[x,fval,exitflag,output]=fmincon(...)約束函數(shù)極值問題:例子112013/5/4例:求函數(shù)在約束下的最小值,及其對應(yīng)x的值。建立目標(biāo)函數(shù)的文件objfun.m(略)建立非線性約束的m文件調(diào)用fmincon(fun,x0,A,b,Aeq,beq,
6、lb,ub,nonlcon)如果增加邊界約束x1>=0,x2>=0,如何求解?fmincon作業(yè)212某廠要用鐵板做成一個體積為1立方米的有蓋長方體水箱.問當(dāng)長、寬、高各取怎樣的尺寸時,才能使用料最省。2021/8/12線性規(guī)劃13標(biāo)準(zhǔn)形式2021/8/12解法:使用函數(shù)linprog,常用格式x=linprog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=linprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,x0
7、)x=linprog(f,A,b,Aeq,beq,lb,ub,x0,options)[x,fval]=linprog(...)[x,fval,exitflag]=linprog(...)[x,fval,exitflag,output]=linprog(...)線性規(guī)劃:例子142021/8/12f=[1391011128];A=[0.41.110000000.51.21.3];b=[800;900];Aeq=[100100010010001001];beq=[400600500];lb=zero
8、s(6,1);ub=[];[x,fval]=linprog(f,A,b,Aeq,beq,lb,ub)456作業(yè)315某車間有甲、乙兩臺機床,可用于加工三種工件.假定這兩臺車床的可用臺時數(shù)分別為800和900,三種工件的數(shù)量分別為400、600和500,且已知用三種不同車床加工單位數(shù)量不同工件所需的臺時數(shù)和加工費如下表.問怎樣分配車床的加工任務(wù),才能既滿足加工工件的要求,又使加工費用最低?2021/8/12車床單位工件所需加工臺時數(shù)單位工件所需加工費用可用臺時數(shù)工件1工件2工件3工件1工件2工件3