資源描述:
《matlab在最優(yōu)化問題中的應(yīng)用》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、《MATLAB語言》課程論文MATLAB在最優(yōu)化問題中的應(yīng)用;姓名:黎飛飛學(xué)號:12010245380專業(yè):通信工程班級:(1)班指導(dǎo)老師:湯全武學(xué)院:物理電氣信息學(xué)院完成日期:2011-12-249Matlab在最優(yōu)化問題中的應(yīng)用(黎飛飛120102453802010級通信<1>班)【摘要】實(shí)際生活中我們有許多地方需要用到數(shù)學(xué)中的一些最值運(yùn)算,而有些問題我們無法進(jìn)行計(jì)算,因此就有了優(yōu)化理論這門學(xué)科,優(yōu)化理論是一門實(shí)踐性很強(qiáng)的學(xué)科,廣泛應(yīng)用于生產(chǎn)管理、軍事指揮和科學(xué)試驗(yàn)等各種領(lǐng)域。為了更好的學(xué)習(xí)這門課程,為我們所用,Matlab優(yōu)化工具箱提供了對各種優(yōu)化問題的一個(gè)完整的解決方案,可用于解決工程
2、中的最優(yōu)化問題,包括非線性方程求解、極小值問題,最小二乘問題等。[關(guān)鍵字]非線性優(yōu)化線形優(yōu)化二次優(yōu)化多目標(biāo)優(yōu)化MATLAB語言一、問題的提出在企業(yè)生產(chǎn)和日常生活中,人們總是希望用最少的人力、物力、財(cái)力和時(shí)間去辦更多的事,這就是所謂的最優(yōu)化問題。在企業(yè)生產(chǎn)過程中,生產(chǎn)計(jì)劃安排直接影響到企業(yè)的經(jīng)濟(jì)效益,而生產(chǎn)計(jì)劃本質(zhì)就是在目標(biāo)一定時(shí),對于人力、時(shí)間和物質(zhì)資源的優(yōu)化配置問題。在優(yōu)化問題中,根據(jù)變量、目標(biāo)函數(shù)和約束函數(shù)的不同,可以將問題大致分為:·線性優(yōu)化目標(biāo)函數(shù)和約束函數(shù)均為線性函數(shù)?!ざ蝺?yōu)化目標(biāo)函數(shù)為二次函數(shù),而約束條件為線性方程。線性優(yōu)化和二次優(yōu)化統(tǒng)稱為簡單優(yōu)化?!し蔷€性優(yōu)化目標(biāo)函數(shù)為非二次的
3、非線性函數(shù),或約束條件為非線性方程。·多目標(biāo)優(yōu)化目標(biāo)函數(shù)并非一個(gè)時(shí),稱為多目標(biāo)優(yōu)化問題。二、單目標(biāo)問題2.1線性優(yōu)化問題線性規(guī)劃問題即目標(biāo)函數(shù)和約束條件均為線性函數(shù)的問題。其標(biāo)準(zhǔn)形式為:minC’xsub.To其中C,b,0∈Rn,A∈Rmn,均為數(shù)值矩陣,x∈Rn。若目標(biāo)函數(shù)為:maxC’x,則轉(zhuǎn)換成:min–C’x。在Matlab中,線性規(guī)劃問題由linprog函數(shù)求解。函數(shù):linprog功能:求解如下形式的線性規(guī)劃問題:suchthat其中f,x,b,beq,lb,ub為向量,A,Aeq為矩陣。格式:x=linprog(f,A,b)x=linprog(f,A,b,Aeq,beq)x=l
4、inprog(f,A,b,Aeq,beq,lb,ub)x=linprog(f,A,b,Aeq,beq,lb,ub,x0)9x=linprog(f,A,b,Aeq,beq,lb,ub,x0,options)[x,fval]=linprog(...)[x,fval,exitflag]=linprog(...)[x,fval,exitflag,output]=linprog(...)[x,fval,exitflag,output,lambda]=linprog(...)1求解下列優(yōu)化問題:目標(biāo)函數(shù)約束條件解:在Matlab命令窗口鍵入:f=[-5;-4;-6];%建立目標(biāo)函數(shù)矩陣A=[1-11;32
5、4;320];%建立系數(shù)矩陣b=[20;42;30];%建立條件矩陣lb=zeros(3,1);%建立空矩陣[x,fval,exitflag,]=linprog(f,A,b)%調(diào)用函數(shù)Exiting:Oneormoreoftheresiduals,dualitygap,ortotalrelativeerrorhasstalled:thedualappearstobeinfeasible(andtheprimalunbounded).(Theprimalresidual6、82e+012exitflag=-3由上可知,函數(shù)f(x)的最小值在x1=1.0e+012*(-1.6682),x2=1.0e+012*2.5024,x3=0時(shí)達(dá)到,結(jié)果是-1.6682e+012.exitflag=-3表示目標(biāo)函數(shù)不收斂。2生產(chǎn)決策問題某廠生產(chǎn)甲乙兩種產(chǎn)品,已知制成一噸產(chǎn)品甲需資源A3噸,資源B4m3;制成一噸產(chǎn)品乙需資源A2噸,資源B6m3;資源C7個(gè)單位。若一噸產(chǎn)品甲和乙的經(jīng)濟(jì)價(jià)值分別為7萬元和5萬元,三種資源的限制量分別為90噸、200m3和210個(gè)單位,試決定應(yīng)生產(chǎn)這兩種產(chǎn)品各多少噸才能使創(chuàng)造的總經(jīng)濟(jì)價(jià)值最高?解:令生產(chǎn)產(chǎn)品甲的數(shù)量為x1,生產(chǎn)產(chǎn)品甲的數(shù)量為x2。由題
7、意可以建立下面的數(shù)學(xué)模型:9約束條件該模型中要求目標(biāo)函數(shù)最大化,需要按照Matlab的要求進(jìn)行轉(zhuǎn)換,即目標(biāo)函數(shù)為在Matlab中實(shí)現(xiàn):f=[-7;-5];%建立目標(biāo)函數(shù)的系數(shù)矩陣A=[32;46;07];%建立系數(shù)矩陣b=[90;200;210];%建立條件矩陣lb=[0;0];%建立空矩陣[x,fval,exitflag]=linprog(f,A,b)%調(diào)用函數(shù)Optimizationtermi