數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)全套課件完整版電子教案最新板_第1頁(yè)
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)全套課件完整版電子教案最新板_第2頁(yè)
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)全套課件完整版電子教案最新板_第3頁(yè)
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)全套課件完整版電子教案最新板_第4頁(yè)
數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn)全套課件完整版電子教案最新板_第5頁(yè)
已閱讀5頁(yè),還剩846頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) 數(shù)學(xué)建模簡(jiǎn)介 數(shù)學(xué)建模簡(jiǎn)介 1.關(guān)于數(shù)學(xué)建模 2.數(shù)學(xué)建模實(shí)例 3.數(shù)學(xué)建模論文的撰寫(xiě)方法A.人口預(yù)報(bào)問(wèn)題B. 椅子能在不平的地面上放穩(wěn)嗎?C.雙層玻璃的功效1、什么是數(shù)學(xué)模型? 數(shù)學(xué)模型是對(duì)于現(xiàn)實(shí)世界的一個(gè)特定對(duì)象,一個(gè)特定目的,根據(jù)特有的內(nèi)在規(guī)律,做出一些必要的假設(shè),運(yùn)用適當(dāng)?shù)臄?shù)學(xué)工具,得到一個(gè)數(shù)學(xué)結(jié)構(gòu)。 簡(jiǎn)單地說(shuō):就是系統(tǒng)的某種特征的本質(zhì)的數(shù)學(xué)表達(dá)式(或是用數(shù)學(xué)術(shù)語(yǔ)對(duì)部分現(xiàn)實(shí)世界的描述),即用數(shù)學(xué)式子(如函數(shù)、圖形、代數(shù)方程、微分方程、積分方程、差分方程等)來(lái)描述(表述、模擬)所研究的客觀對(duì)象或系統(tǒng)在某一方面的存在規(guī)律。一、名詞解釋2、什么是數(shù)學(xué)建模? 數(shù)學(xué)建模是利用

2、數(shù)學(xué)方法解決實(shí)際問(wèn)題的一種實(shí)踐。即通過(guò)抽象、簡(jiǎn)化、假設(shè)、引進(jìn)變量等處理過(guò)程后,將實(shí)際問(wèn)題用數(shù)學(xué)方式表達(dá),建立起數(shù)學(xué)模型,然后運(yùn)用先進(jìn)的數(shù)學(xué)方法及計(jì)算機(jī)技術(shù)進(jìn)行求解。 觀點(diǎn):“所謂高科技就是一種數(shù)學(xué)技術(shù)” 數(shù)學(xué)建模其實(shí)并不是什么新東西,可以說(shuō)有了數(shù)學(xué)并需要用數(shù)學(xué)去解決實(shí)際問(wèn)題,就一定要用數(shù)學(xué)的語(yǔ)言、方法去近似地刻劃該實(shí)際問(wèn)題,這種刻劃的數(shù)學(xué)表述的就是一個(gè)數(shù)學(xué)模型,其過(guò)程就是數(shù)學(xué)建模的過(guò)程。數(shù)學(xué)模型一經(jīng)提出,就要用一定的技術(shù)手段(計(jì)算、證明等)來(lái)求解并驗(yàn)證,其中大量的計(jì)算往往是必不可少的,高性能的計(jì)算機(jī)的出現(xiàn)使數(shù)學(xué)建模這一方法如虎添翼似的得到了飛速的發(fā)展,掀起一個(gè)高潮。 數(shù)學(xué)建模將各種知識(shí)綜合應(yīng)用

3、于解決實(shí)際問(wèn)題中,是培養(yǎng)和提高同學(xué)們應(yīng)用所學(xué)知識(shí)分析問(wèn)題、解決問(wèn)題的能力的必備手段之一。 二、數(shù)學(xué)建模的一般方法和步驟 建立數(shù)學(xué)模型的方法和步驟并沒(méi)有一定的模式,但一個(gè)理想的模型應(yīng)能反映系統(tǒng)的全部重要特征: 模型的可靠性和模型的使用性建模的一般方法: 機(jī)理分析 測(cè)試分析方法 機(jī)理分析:根據(jù)對(duì)現(xiàn)實(shí)對(duì)象特性的認(rèn)識(shí),分析其因果關(guān)系,找出反映內(nèi)部機(jī)理的規(guī)律,所建立的模型常有明確的物理或現(xiàn)實(shí)意義。 測(cè)試分析方法:將研究對(duì)象視為一個(gè)“黑箱”系統(tǒng),內(nèi)部機(jī)理無(wú)法直接尋求,通過(guò)測(cè)量系統(tǒng)的輸入輸出數(shù)據(jù),并以此為基礎(chǔ)運(yùn)用統(tǒng)計(jì)分析方法,按照事先確定的準(zhǔn)則在某一類模型中選出一個(gè)數(shù)據(jù)擬合得最好的模型。 測(cè)試分析方法也叫做

4、系統(tǒng)辯識(shí)。 將這兩種方法結(jié)合起來(lái)使用,即用機(jī)理分析方法建立模型的結(jié)構(gòu),用系統(tǒng)測(cè)試方法來(lái)確定模型的參數(shù),也是常用的建模方法。 在實(shí)際過(guò)程中用那一種方法建模主要是根據(jù)我們對(duì)研究對(duì)象的了解程度和建模目的來(lái)決定。機(jī)理分析法建模的具體步驟大致可見(jiàn)右圖。符合實(shí)際不符合實(shí)際交付使用,從而可產(chǎn)生經(jīng)濟(jì)、社會(huì)效益實(shí)際問(wèn)題抽象、簡(jiǎn)化、假設(shè) 確定變量、參數(shù)建立數(shù)學(xué)模型并數(shù)學(xué)、數(shù)值地求解、確定參數(shù)用實(shí)際問(wèn)題的實(shí)測(cè)數(shù)據(jù)等來(lái)檢驗(yàn)該數(shù)學(xué)模型建模過(guò)程示意圖 模型 數(shù)學(xué)模型的分類: 按研究方法和對(duì)象的數(shù)學(xué)特征分:初等模型、幾何模型、優(yōu)化模型、微分方程模型、圖論模型、邏輯模型、穩(wěn)定性模型、擴(kuò)散模型等。 按研究對(duì)象的實(shí)際領(lǐng)域(或所屬

5、學(xué)科)分:人口模型、交通模型、環(huán)境模型、生態(tài)模型、生理模型、城鎮(zhèn)規(guī)劃模型、水資源模型、污染模型、經(jīng)濟(jì)模型、社會(huì)模型等。三、數(shù)學(xué)模型及其分類四、近幾年全國(guó)大學(xué)生數(shù)學(xué)建模競(jìng)賽題 返回1、如何預(yù)報(bào)人口? 要預(yù)報(bào)未來(lái)若干年(如2005)的人口數(shù),最重要的影響因素是今年的人口數(shù)和今后這些年的增長(zhǎng)率(即人口出身率減死亡率),根據(jù)這兩個(gè)數(shù)據(jù)進(jìn)行人口預(yù)報(bào)是很容易的。記今年人口為 ,k年后人口為 ,年增長(zhǎng)率為r,則預(yù)報(bào)公式為: 預(yù)報(bào)正確的條件: 年增長(zhǎng)率r保持不變。數(shù)學(xué)建模實(shí)例1、指數(shù)增長(zhǎng)模型(馬爾薩斯人口模型): 英國(guó)人口學(xué)家馬爾薩斯(Malthus17661834)于1798年提出。2、阻滯增長(zhǎng)模型(Log

6、istic模型)3、更復(fù)雜的人口模型 隨機(jī)性模型、考慮人口年齡分布的模型等 可見(jiàn)數(shù)學(xué)模型總是在不斷的修改、完善使之能符合實(shí)際情況的變化。人口模型 2、椅子能在不平的地面上放穩(wěn)嗎? 把四只腳的椅子往不平的地面上一放,通常只有三只腳著地,放不穩(wěn),然而有人認(rèn)為只要稍挪動(dòng)幾次,就可以四腳著地,放穩(wěn)了,對(duì)嗎?3、雙層玻璃的功效 北方城鎮(zhèn)的有些建筑物的窗戶是雙層的,即窗戶上裝兩層厚度為的玻璃夾著一層厚度為的空氣,如左圖所示,據(jù)說(shuō)這樣做是為了保暖,即減少室內(nèi)向室外的熱量流失。 我們要建立一個(gè)模型來(lái)描述熱量通過(guò)窗戶的熱傳導(dǎo)(即流失)過(guò)程,并將雙層玻璃窗與用同樣多材料做成的單層玻璃窗(如右圖,玻璃厚度為)的熱量

7、傳導(dǎo)進(jìn)行對(duì)比,對(duì)雙層玻璃窗能夠減少多少熱量損失給出定量分析結(jié)果。 返回 怎樣撰寫(xiě)數(shù)學(xué)建模的論文?1、摘要:問(wèn)題、模型、方法、結(jié)果2、問(wèn)題重述4、分析與建立模型5、模型求解6、模型檢驗(yàn)7、模型推廣8、參考文獻(xiàn)9、附錄實(shí)例3、模型假設(shè) 返回謝 謝!數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) MATLAB入門(mén) MATLAB作為線性系統(tǒng)的一種分析和仿真工具,是理工科大學(xué)生應(yīng)該掌握的技術(shù)工具,它作為一種編程語(yǔ)言和可視化工具,可解決工程、科學(xué)計(jì)算和數(shù)學(xué)學(xué)科中許多問(wèn)題。 MATLAB建立在向量、數(shù)組和矩陣的基礎(chǔ)上,使用方便,人機(jī)界面直觀,輸出結(jié)果可視化。 矩陣是MATLAB的核心 MATLAB的進(jìn)入與運(yùn)行方式(兩種) MATLAB

8、入門(mén)一、變 量 與 函 數(shù)二、數(shù) 組三、 矩 陣四、 MATLAB編程五、 實(shí) 驗(yàn) 作 業(yè) 1、變量 MATLAB中變量的命名規(guī)則是:(1)變量名必須是不含空格的單個(gè)詞;(2)變量名區(qū)分大小寫(xiě);(3)變量名最多不超過(guò)19個(gè)字符;(4)變量名必須以字母打頭,之后可以是 任意字母、數(shù)字或下劃線,變量名中 不允許使用標(biāo)點(diǎn)符號(hào). 一、變 量 與 函 數(shù)特殊變量表2、數(shù)學(xué)運(yùn)算符號(hào)及標(biāo)點(diǎn)符號(hào)(1)MATLAB的每條命令后,若為逗號(hào)或無(wú)標(biāo)點(diǎn)符號(hào), 則顯示命令的結(jié)果;若命令后為分號(hào),則禁止顯示結(jié)果. (2)“%” 后面所有文字為注釋. (3) “.”表示續(xù)行.3、數(shù)學(xué)函數(shù) MATLAB的內(nèi)部函數(shù)是有限的,有時(shí)

9、為了研究某一個(gè)函數(shù)的各種性態(tài),需要為MATLAB定義新函數(shù),為此必須編寫(xiě)函數(shù)文件. 函數(shù)文件是文件名后綴為M的文件,這類文件的第一行必須是一特殊字符function開(kāi)始,格式為: function 因變量名=函數(shù)名(自變量名)函數(shù)值的獲得必須通過(guò)具體的運(yùn)算實(shí)現(xiàn),并賦給因變量. 4、M文件M文件建立方法:1. 在Matlab中,點(diǎn):File-New-M-file 2. 在編輯窗口中輸入程序內(nèi)容 3. 點(diǎn):File-Save,存盤(pán),M文件名必須 與函數(shù)名一致。Matlab的應(yīng)用程序也以M文件保存。例:定義函數(shù) f(x1,x2)=100(x2-x12)2+(1-x1)2function f=fun(

10、x)f=100*(x(2)-x(1)2)2+(1-x(1)21.建立M文件:fun.mMATLAB(fun)2. 可以直接使用函數(shù)fun.m例如:計(jì)算 f(1,2), 只需在Matlab命令窗口鍵入命令:x=1 2fun(x) 返回x=logspace(first,last,n) 創(chuàng)建從開(kāi)始,到結(jié)束,有n個(gè)元素的對(duì)數(shù)分隔行向量. 1、創(chuàng)建簡(jiǎn)單的數(shù)組二、數(shù) 組MATLAB(shuzu1)x=a b c d e f 創(chuàng)建包含指定元素的行向量x=first:last 創(chuàng)建從first開(kāi)始,加1計(jì)數(shù),到last結(jié)束的行向量x=first:increment:last 創(chuàng)建從first開(kāi)始,加incre

11、ment計(jì)數(shù),last結(jié)束的行向量x=linspace(first,last,n) 創(chuàng)建從first開(kāi)始,到last結(jié)束,有n個(gè)元素的行向量 2、 數(shù)組元素的訪問(wèn)MATLAB(shuzu2)(3)直接使用元素編址序號(hào). x(a b c d) 表示提取數(shù)組x的第a、b、c、d個(gè)元素構(gòu)成一個(gè)新的數(shù)組x(a) x(b) x(c) x(d). (2)訪問(wèn)一塊元素: x(a :b :c)表示訪問(wèn)數(shù)組x的從第a個(gè)元素開(kāi)始,以步長(zhǎng)為b到第c個(gè)元素(但不超過(guò)c),b可以為負(fù)數(shù),b缺損時(shí)為1. (1)訪問(wèn)一個(gè)元素: x(i)表示訪問(wèn)數(shù)組x的第i個(gè)元素. 3、數(shù)組的方向 前面例子中的數(shù)組都是一行數(shù)列,是行方向分布

12、的. 稱之為行向量. 數(shù)組也可以是列向量,它的數(shù)組操作和運(yùn)算與行向量是一樣的,唯一的區(qū)別是結(jié)果以列形式顯示. 產(chǎn)生列向量有兩種方法: 直接產(chǎn)生 例 c=1;2;3;4 轉(zhuǎn)置產(chǎn)生 例 b=1 2 3 4; c=b 說(shuō)明:以空格或逗號(hào)分隔的元素指定的是不同列的元素,而以分號(hào)分隔的元素指定了不同行的元素. 4、數(shù)組的運(yùn)算 (1)標(biāo)量-數(shù)組運(yùn)算 數(shù)組對(duì)標(biāo)量的加、減、乘、除、乘方是數(shù)組的每個(gè)元素對(duì)該標(biāo)量施加相應(yīng)的加、減、乘、除、乘方運(yùn)算. 設(shè):a=a1,a2,an, c=標(biāo)量則:a+c=a1+c,a2+c,an+c a.*c=a1*c,a2*c,an*c a./c= a1/c,a2/c,an/c(右除)

13、 a.c= c/a1,c/a2,c/an (左除) a.c= a1c,a2c,anc c.a= ca1,ca2,can MATLAB(shuzu3)(2)數(shù)組-數(shù)組運(yùn)算 當(dāng)兩個(gè)數(shù)組有相同維數(shù)時(shí),加、減、乘、除、冪運(yùn)算可按元素對(duì)元素方式進(jìn)行的,不同大小或維數(shù)的數(shù)組是不能進(jìn)行運(yùn)算的. 設(shè):a=a1,a2,an, b=b1,b2,bn則:a+b= a1+b1,a2+b2,an+bn a.*b= a1*b1,a2*b2,an*bn a./b= a1/b1,a2/b2,an/bn a.b=b1/a1,b2/a2,bn/an a.b=a1b1,a2b2,anbnMATLAB(shuzu4) 返回三、 矩

14、陣 逗號(hào)或空格用于分隔某一行的元素,分號(hào)用于區(qū)分不同的行. 除了分號(hào),在輸入矩陣時(shí),按Enter鍵也表示開(kāi)始一新行. 輸入矩陣時(shí),嚴(yán)格要求所有行有相同的列. 例 m=1 2 3 4 ;5 6 7 8;9 10 11 12 p=1 1 1 1 2 2 2 2 3 3 3 31、矩陣的建立特殊矩陣的建立:. MATLAB(matrix1)d=eye(m,n) 產(chǎn)生一個(gè)m行、n列的單位矩陣c=ones(m,n) 產(chǎn)生一個(gè)m行、n列的元素 全為1的矩陣b=zeros(m,n) 產(chǎn)生一個(gè)m行、n列的零矩陣a= 產(chǎn)生一個(gè)空矩陣,當(dāng)對(duì)一項(xiàng)操作無(wú)結(jié) 果時(shí),返回空矩陣,空矩陣的大小為零. 2、矩陣中元素的操作M

15、ATLAB(matrix2)(1)矩陣A的第r行:A(r,:)(2)矩陣A的第r列:A(:,r)(4)取矩陣A的第i1i2行、第j1j2列構(gòu)成新矩陣:A(i1:i2, j1:j2)(5)以逆序提取矩陣A的第i1i2行,構(gòu)成新矩陣:A(i2:-1:i1,:)(6)以逆序提取矩陣A的第j1j2列,構(gòu)成新矩陣:A(:, j2:-1:j1 )(7)刪除A的第i1i2行,構(gòu)成新矩陣:A(i1:i2,:)= (8)刪除A的第j1j2列,構(gòu)成新矩陣:A(:, j1:j2)= (9)將矩陣A和B拼接成新矩陣:A B;A;B(3)依次提取矩陣A的每一列,將A拉伸為一個(gè)列向量:A(:) (2)矩陣-矩陣運(yùn)算 1

16、元素對(duì)元素的運(yùn)算,同數(shù)組-數(shù)組運(yùn)算。 3、矩陣的運(yùn)算(1)標(biāo)量-矩陣運(yùn)算 同標(biāo)量-數(shù)組運(yùn)算。MATLAB(matrix3) 2矩陣運(yùn)算:矩陣加法:A+B矩陣乘法:A*B方陣的行列式:det(A)方陣的逆:inv(A)方陣的特征值與特征向量:V,D=eigA 返回關(guān)系與邏輯運(yùn)算 1、關(guān)系操作符2、邏輯運(yùn)算符1、for循環(huán):允許一組命令以固定的和預(yù)定的次數(shù)重復(fù) for x=array commands end 在for和end語(yǔ)句之間的命令串commands按數(shù)組(array)中的每一列執(zhí)行一次. 在每一次迭代中,x被指定為數(shù)組的下一列,即在第n次循環(huán)中,x=array(:,n)控制流MATLAB

17、提供三種決策或控制流結(jié)構(gòu): for循環(huán)、while循環(huán)、if-else-end結(jié)構(gòu). 這些結(jié)構(gòu)經(jīng)常包含大量的MATLAB命令,故經(jīng)常出現(xiàn)在MATLAB程序中,而不是直接加在MATLAB提示符下. 例 對(duì)n=1,2,10,求xn= 的值MATLAB(for1) while expression commands end 只要在表達(dá)式(expression)里的所有元素為真,就執(zhí)行while和end語(yǔ)句之間的命令串commands. 2、While循環(huán) 與for循環(huán)以固定次數(shù)求一組命令相反,while循環(huán)以不定的次數(shù)求一組語(yǔ)句的值.MATLAB(while1) 例 設(shè)銀行年利率為11.25%。將1

18、0000元錢(qián)存入銀行,問(wèn)多長(zhǎng)時(shí)間會(huì)連本帶利翻一番?3、If-Else-End結(jié)構(gòu)(1)有一個(gè)選擇的一般形式是: if expression commands end 如果在表達(dá)式(expression)里的所有元素為真,就執(zhí)行if和end語(yǔ)句之間的命令串commands. MATLAB(fun1) 先建立M文件fun1.m定義函數(shù)f(x),再在Matlab命令窗口輸入fun1(2),fun1(-1)即可。2) 有三個(gè)或更多的選擇的一般形式是: if (expression1) commands1 else if (expression2) commands2 else if (expressi

19、on3) commands3 else if elsecommands endendend end 先建立M文件fun2.m定義函數(shù)f(x),再在Matlab命令窗口輸入fun2(2),fun2(0.5), fun2(-1)即可。MATLAB(fun2) 返回對(duì)以下問(wèn)題,編寫(xiě)M文件:(1)用起泡法對(duì)10個(gè)數(shù)由小到大排序. 即將相鄰兩個(gè)數(shù)比較,將小的調(diào)到前頭.(2)有一個(gè) 矩陣,編程求出其最大值及其所處的位置.(3)編程求(4)一球從100米高度自由落下,每次落地后反跳回原高度的一半,再落下. 求它在第10次落地時(shí),共經(jīng)過(guò)多少米?第10次反彈有多高?(5)有一函數(shù) ,寫(xiě)一程序,輸入自變量的值,輸

20、出函數(shù)值.實(shí)驗(yàn)作業(yè) 返回 謝 謝! 數(shù)學(xué)建模與數(shù)學(xué)實(shí)驗(yàn) MATLAB作圖Matlab作圖二維圖形三維圖形圖形處理實(shí)例作業(yè)特殊二、三維圖形 Matlab作圖是通過(guò)描點(diǎn)、連線來(lái)實(shí)現(xiàn)的,故在畫(huà)一個(gè)曲線圖形之前,必須先取得該圖形上的一系列的點(diǎn)的坐標(biāo)(即橫坐標(biāo)和縱坐標(biāo)),然后將該點(diǎn)集的坐標(biāo)傳給Matlab函數(shù)畫(huà)圖. 命令為:PLOT(X,Y,S)PLOT(X,Y)-畫(huà)實(shí)線PLOT(X,Y1,S1,X,Y2,S2,X,Yn,Sn) -將多條線畫(huà)在一起X,Y是向量,分別表示點(diǎn)集的橫坐標(biāo)和縱坐標(biāo)線型y 黃色 . 點(diǎn) - 連線m 洋紅 o 圈 : 短虛線c 藍(lán)綠色 x x-符號(hào) -. 長(zhǎng)短線 r 紅色 + 加號(hào)

21、 - 長(zhǎng)虛線1.曲線圖例 在0,2*pi用紅線畫(huà)sin(x),用綠圈畫(huà)cos(x). x=linspace(0,2*pi,30);y=sin(x);z=cos(x);plot(x,y,r,x,z,g0)解Matlab liti12.符號(hào)函數(shù)(顯函數(shù)、隱函數(shù)和參數(shù)方程)畫(huà)圖(1) ezplotezplot(x(t),y(t),tmin,tmax) 表示在區(qū)間tminttmax繪制參數(shù)方程 x=x(t),y=y(t)的函數(shù)圖ezplot(f(x),a,b) 表示在axb繪制顯函數(shù)f=f(x)的函數(shù)圖ezplot(f(x,y),xmin,xmax,ymin,ymax) 表示在區(qū)間xminxxmax和

22、 yminyymax繪制隱函數(shù)f(x,y)=0的函數(shù)圖例 在0,pi上畫(huà)y=cos(x)的圖形解 輸入命令 ezplot(sin(x),0,pi)Matlab liti25解 輸入命令 ezplot(cos(t)3,sin(t)3,0.2*pi)Matlab liti41解 輸入命令ezplot(exp(x)+sin(x*y),-2,0.5,0,2)Matlab liti40(2) fplot注意:1 fun必須是M文件的函數(shù)名或是獨(dú)立變量為x的字符串. 2 fplot函數(shù)不能畫(huà)參數(shù)方程和隱函數(shù)圖形,但在一個(gè)圖上可以畫(huà)多個(gè)圖形。fplot(fun,lims) 表示繪制字符串fun指定的函數(shù)在l

23、ims=xmin,xmax的圖形.解 先建M文件myfun1.m: function Y=myfun1(x) Y=exp(2*x)+sin(3*x.2)再輸入命令:fplot(myfun1,-1,2)Matlab liti43Matlab liti28解 輸入命令: fplot(tanh(x),sin(x),cos(x),2*pi*-1 1 1 1)例 在-2,2范圍內(nèi)繪制函數(shù)tanh的圖形解 fplot(tanh,-2,2)Matlab liti423. 對(duì)數(shù)坐標(biāo)圖 在很多工程問(wèn)題中,通過(guò)對(duì)數(shù)據(jù)進(jìn)行對(duì)數(shù)轉(zhuǎn)換可以更清晰地看出數(shù)據(jù)的某些特征,在對(duì)數(shù)坐標(biāo)系中描繪數(shù)據(jù)點(diǎn)的曲線,可以直接地表現(xiàn)對(duì)數(shù)轉(zhuǎn)換

24、.對(duì)數(shù)轉(zhuǎn)換有雙對(duì)數(shù)坐標(biāo)轉(zhuǎn)換和單軸對(duì)數(shù)坐標(biāo)轉(zhuǎn)換兩種.用loglog函數(shù)可以實(shí)現(xiàn)雙對(duì)數(shù)坐標(biāo)轉(zhuǎn)換,用semilogx和semilogy函數(shù)可以實(shí)現(xiàn)單軸對(duì)數(shù)坐標(biāo)轉(zhuǎn)換.loglog(Y) 表示 x、y坐標(biāo)都是對(duì)數(shù)坐標(biāo)系semilogx(Y) 表示 x坐標(biāo)軸是對(duì)數(shù)坐標(biāo)系semilogy() 表示y坐標(biāo)軸是對(duì)數(shù)坐標(biāo)系plotyy 有兩個(gè)y坐標(biāo)軸,一個(gè)在左邊,一個(gè)在右邊例 用方形標(biāo)記創(chuàng)建一個(gè)簡(jiǎn)單的loglog解 輸入命令: x=logspace(-1,2); loglog(x,exp(x),-s) grid on %標(biāo)注格柵Matlab liti37例 創(chuàng)建一個(gè)簡(jiǎn)單的半對(duì)數(shù)坐標(biāo)圖解 輸入命令: x=0:.1:

25、10; semilogy(x,10.x)Matlab liti38例 繪制y=x3的函數(shù)圖、對(duì)數(shù)坐標(biāo)圖、半對(duì)數(shù)坐標(biāo)圖Matlab liti22返回三維圖形1、空間曲線2、空間曲面返回PLOT3(x,y,z,s) 空 間 曲 線 1、 一條曲線 例 在區(qū)間0,10*pi畫(huà)出參數(shù)曲線x=sin(t),y=cos(t), z=t. Matlab liti8 解 t=0:pi/50:10*pi; plot3(sin(t),cos(t),t) rotate3d %旋轉(zhuǎn)n維向量,分別表示曲線上點(diǎn)集的橫坐標(biāo)、縱坐標(biāo)、函數(shù)值指定顏色、線形等 PLOT3(x,y,z)2、多條曲線例 畫(huà)多條曲線觀察函數(shù)Z=(X+

26、Y).2. (這里meshgrid(x,y)的作用是產(chǎn)生一個(gè)以向量x為行、向量y為列的矩陣)Matlab liti9其中x,y,z是都是m*n矩陣,其對(duì)應(yīng)的每一列表示一條曲線.解 x=-3:0.1:3;y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+Y).2; plot3(X,Y,Z)返回空 間 曲 面例 畫(huà)函數(shù)Z=(X+Y).2的圖形. 解 x=-3:0.1:3; y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+Y).2; surf(X,Y,Z) shading flat %將當(dāng)前圖形變得平滑Matlab liti11(1) surf(x,y,z)

27、畫(huà)出數(shù)據(jù)點(diǎn)(x,y,z)表示的曲面數(shù)據(jù)矩陣。分別表示數(shù)據(jù)點(diǎn)的橫坐標(biāo)、縱坐標(biāo)、函數(shù)值(2) Mesh(x,y,z) 解 x=-3:0.1:3; y=1:0.1:5; X,Y=meshgrid(x,y); Z=(X+Y).2; mesh(X,Y,Z) Matlab liti24例 畫(huà)出曲面Z=(X+Y).2在不同視角的網(wǎng)格圖. 畫(huà)網(wǎng)格曲面數(shù)據(jù)矩陣。分別表示數(shù)據(jù)點(diǎn)的橫坐標(biāo)、縱坐標(biāo)、函數(shù)值(3)meshz(X,Y,Z) 在網(wǎng)格周?chē)?huà)一個(gè)curtain圖(如,參考平面)解 輸入命令: X,Y=meshgrid(-3:.125:3); Z=praks(X,Y); Meshz(X,Y,Z)例 繪peaks的

28、網(wǎng)格圖Matlab liti36返回在圖形上加格柵、圖例和標(biāo)注定制坐標(biāo)圖形保持分割窗口縮放圖形改變視角圖形處理返回動(dòng) 畫(huà)1、在圖形上加格柵、圖例和標(biāo)注(1)GRID ON: 加格柵在當(dāng)前圖上 GRID OFF: 刪除格柵處理圖形(2)hh = xlabel(string): 在當(dāng)前圖形的x軸上加圖例stringhh = ylabel(string): 在當(dāng)前圖形的y軸上加圖例stringhh = title(string): 在當(dāng)前圖形的頂端上加圖例stringhh = zlabel(string): 在當(dāng)前圖形的z軸上加圖例string例 在區(qū)間0,2*pi畫(huà)sin(x)的圖形,并加注圖例“

29、自變量 X”、“函數(shù)Y”、“示意圖”, 并加格柵.解 x=linspace(0,2*pi,30); y=sin(x); plot(x,y) xlabel(自變量X) ylabel(函數(shù)Y) title(示意圖) grid onMatlab liti2 (3) hh = gtext(string) 命令gtext(string)用鼠標(biāo)放置標(biāo)注在現(xiàn)有的圖上.運(yùn)行命令gtext(string)時(shí),屏幕上出現(xiàn)當(dāng)前圖形,在圖形上出現(xiàn)一個(gè)交叉的十字,該十字隨鼠標(biāo)的移動(dòng)移動(dòng),當(dāng)按下鼠標(biāo)左鍵時(shí),該標(biāo)注string放在當(dāng)前十交叉的位置. 例 在區(qū)間0,2*pi畫(huà)sin(x),并分別標(biāo)注“sin(x)” ”cos

30、(x)”.解 x=linspace(0,2*pi,30); y=sin(x); z=cos(x); plot(x,y,x,z) gtext(sin(x);gtext(cos(x)Matlab liti3返回2、定制坐標(biāo)Axis(xmin xmax ymin ymax zmin zmax)例 在區(qū)間0.005,0.01顯示sin(1/x)的圖形。解 x=linspace(0.0001,0.01,1000); y=sin(1./x); plot(x,y) axis(0.005 0.01 1 1)Matlab liti4返回定制圖形坐標(biāo)將坐標(biāo)軸返回到自動(dòng)缺省值A(chǔ)xis autox、y、z的最大、最小

31、值3、圖形保持(1) hold on hold of例 將y=sin(x)、y=cos(x)分別用點(diǎn)和線畫(huà)出在同一屏幕上。解 x=linspace(0,2*pi,30); y=sin(x); z=cos(x) plot(x,z,:) hold on Plot(x,y)Matlab liti5保持當(dāng)前圖形, 以便繼續(xù)畫(huà)圖到當(dāng)前圖上釋放當(dāng)前圖形窗口(2) figure(h)例 區(qū)間0,2*pi新建兩個(gè)窗口分別畫(huà)出y=sin(x); z=cos(x)。解 x=linspace(0,2*pi,100); y=sin(x);z=cos(x); plot(x,y); title(sin(x); pause

32、 figure(2); plot(x,z); title(cos(x);Matlab liti6返回新建h窗口,激活圖形使其可見(jiàn),并把它置于其它圖形之上4、分割窗口h=subplot(mrows,ncols,thisplot) 劃分整個(gè)作圖區(qū)域?yàn)閙rows*ncols塊(逐行對(duì)塊訪問(wèn))并激活第thisplot塊,其后的作圖語(yǔ)句將圖形畫(huà)在該塊上。 激活已劃分為mrows*ncols塊的屏幕中的第thisplot塊,其后的作圖語(yǔ)句將圖形畫(huà)在該塊上。命令Subplot(1,1,1)返回非分割狀態(tài)。subplot(mrows,ncols,thisplot) subplot(1,1,1) 解x=lins

33、pace(0,2*pi,100); y=sin(x); z=cos(x); a=sin(x).*cos(x);b=sin(x)./(cos(x)+eps) subplot(2,2,1);plot(x,y),title(sin(x) subplot(2,2,2);plot(x,z),title(cos(x) subplot(2,2,3);plot(x,a),title(sin(x)cos(x) subplot(2,2,4);plot(x,b),title(sin(x)/cos(x)例 將屏幕分割為四塊,并分別畫(huà)出y=sin(x),z=cos(x),a=sin(x)*cos(x),b=sin(x)

34、/cos(x)。Matlab liti7返回5、縮放圖形zoom on 單擊鼠標(biāo)左鍵,則在當(dāng)前圖形窗口中,以鼠標(biāo)點(diǎn)中的點(diǎn)為中心的圖形放大2倍;單擊鼠標(biāo)右鍵,則縮小2倍解 x=linspace(0,2*pi,30); y=sin(x); Plot(x,y) zoom on Matlab liti13例 縮放y=sin(x)的圖形zoom off為當(dāng)前圖形打開(kāi)縮放模式關(guān)閉縮放模式返回6. 改變視角view (1)view(a,b) 命令view(a,b)改變視角到(a,b),a是方位角,b為仰角。缺省視角為(-37.5,30)。 解 x=-3:0.1:3; y=1:0.1:5; X,Y=meshg

35、rid(x,y); Z=(X+Y).2; subplot(2,2,1), mesh(X,Y,Z) subplot(2,2,2), mesh(X,Y,Z),view(50,-34) subplot(2,2,3), mesh(X,Y,Z),view(-60,70) subplot(2,2,4), mesh(X,Y,Z),view(0,1,1)Matlab liti10例 畫(huà)出曲面Z=(X+Y).2在不同視角的網(wǎng)格圖. view用空間矢量表示的,三個(gè)量只關(guān)心它們的比例,與數(shù)值的大小無(wú)關(guān),x軸view(1,0,0),y軸view(0,1,0),z軸view(0,0,1)。(2)view(x,y,z)返

36、回7. 動(dòng)畫(huà) Moviein(),getframe,movie() 函數(shù)Moviein()產(chǎn)生一個(gè)幀矩陣來(lái)存放動(dòng)畫(huà)中的幀;函數(shù)getframe對(duì)當(dāng)前的圖象進(jìn)行快照;函數(shù)movie()按順序回放各幀。Matlab liti14返回 例 將曲面peaks做成動(dòng)畫(huà)。 解 x,y,z=peaks(30); surf(x,y,z) axis(-3 3 -3 3 -10 10) m=moviein(15); for i=1:15 view(-37.5+24*(i-1),30) m(:,i)=getframe; end movie(m)特殊二、三維圖形1、特殊的二維圖形函數(shù)2、特殊的三維圖形函數(shù)返回特殊的二

37、維圖形函數(shù)1、極坐標(biāo)圖:polar (theta,rho,s) 用角度theta(弧度表示)和極半徑rho作極坐標(biāo)圖,用s指定線型。例解:theta=linspace(0,2*pi), rho=sin(2*theta).*cos(2*theta); polar(theta,rho,g) title(Polar plot of sin(2*theta).*cos(2*theta);Matlab liti15 2、 散點(diǎn)圖: scatter(X,Y,S,C) 在向量X和Y的指定位置顯示彩色圈X和Y必須大小相同解 輸入命令: load seamount scatter(x,y,5,z)Matlab

38、liti29 3、平面等值線圖: contour (x,y,z,n) 繪制n個(gè)等值線的二維等值線圖解 輸入命令: X,Y=meshgeid(-2:.2:2,-2:.2:3); Z=X.*exp(-X.2-Y.2); C,h=contour(X,Y,Z); clabel(C,h) colormap coolMatlab liti34 例 繪制seamount散點(diǎn)圖返回特殊的三維圖形函數(shù)1、空間等值線圖: contour 3(x,y,z,n) 其中n表示等值線數(shù)。例 山峰的三維和二維等值線圖。 解 x,y,z=peaks; subplot(1,2,1) contour3(x,y,z,16,s) g

39、rid, xlabel(x-axis),ylabel(y-axis) zlabel(z-axis) title(contour3 of peaks); subplot(1,2,2) contour(x,y,z,16,s) grid, xlabel(x-axis), ylabel(y-axis) title(contour of peaks);Matlab liti18 3、三維散點(diǎn)圖 scatter3(X,Y,Z,S,C) 在向量X,Y和Z指定的位置上顯示彩色圓圈. 向量X,Y和Z的大小必須相同.解 輸入命令:x,y,z=sphere(16);X=x(:)*.5 x(:)*.75 x(:);Y

40、=y(:)*.5 y(:)*.75 y(:);Z=z(:)*.5 z(:)*.75 z(:);S=repmat(1 .75 .5*10,prod(size(x),1);C=repmat(1 2 3,prod(size(x),1);scatter3(X(:),Y(:),Z(:),S(:),C(:),filled),view(-60,60)例 繪制三維散點(diǎn)圖。Matlab liti32 返回繪制山區(qū)地貌圖 要在某山區(qū)方圓大約27平方公里范圍內(nèi)修建一條公路,從山腳出發(fā)經(jīng)過(guò)一個(gè)居民區(qū),再到達(dá)一個(gè)礦區(qū)。橫向縱向分別每隔400米測(cè)量一次,得到一些地點(diǎn)的高程:(平面區(qū)域0=x=5600,0=y=345.5;

41、 x1=98; 2*x1+x2=345.5 x1=98 2*x1+x2=600 x1,x2 為整數(shù)3. lingo軟件包的變量界定bin(x) 限制x 為0 或1;bnd(L,x,U) 限制LxU;free(x) 取消對(duì)變量x 的默認(rèn)下界為0 的限制, 即x 可以取任意實(shí)數(shù);gin(x) 限制x 為整數(shù).在默認(rèn)情況下,LINGO 規(guī)定變量是非負(fù)的,也就是說(shuō)下界為0,上界為+。變量界定函數(shù)實(shí)現(xiàn)對(duì)變量取值范圍的限制,共4種:1桶牛奶 3公斤A1 12小時(shí) 8小時(shí) 4公斤A2 或獲利24元/公斤 獲利16元/公斤 50桶牛奶 時(shí)間480小時(shí) 至多加工100公斤A1 制訂生產(chǎn)計(jì)劃,使每天獲利最大 35

42、元可買(mǎi)到1桶牛奶,買(mǎi)嗎?若買(mǎi),每天最多買(mǎi)多少? 可聘用臨時(shí)工人,付出的工資最多是每小時(shí)幾元? A1的獲利增加到 30元/公斤,應(yīng)否改變生產(chǎn)計(jì)劃? 每天:例1 加工奶制品的生產(chǎn)計(jì)劃1桶牛奶 3公斤A1 12小時(shí) 8小時(shí) 4公斤A2 或獲利24元/公斤 獲利16元/公斤 x1桶牛奶生產(chǎn)A1 x2桶牛奶生產(chǎn)A2 獲利 243x1 獲利 164 x2 原料供應(yīng) 勞動(dòng)時(shí)間 加工能力 決策變量 目標(biāo)函數(shù) 每天獲利約束條件非負(fù)約束 線性規(guī)劃模型(LP)時(shí)間480小時(shí) 至多加工100公斤A1 50桶牛奶 每天建立模型Model:Max=72*x1+64*x2;x1+x250;12*x1+8*x2480;3*x

43、1100;end Global optimal solution found. Objective value: 3360.000 Infeasibilities: 0.000000 Total solver iterations: 2 Variable Value Reduced Cost X1 20.00000 0.000000 X2 30.00000 0.000000 Row Slack or Surplus Dual Price 1 3360.000 1.000000 2 0.000000 48.00000 3 0.000000 2.000000 4 40.00000 0.000000

44、20桶牛奶生產(chǎn)A1, 30桶生產(chǎn)A2,利潤(rùn)3360元。 模型求解 Global optimal solution found. Objective value: 3360.000 Infeasibilities: 0.000000 Total solver iterations: 2 Variable Value Reduced Cost X1 20.00000 0.000000 X2 30.00000 0.000000 Row Slack or Surplus Dual Price 1 3360.000 1.000000 2 0.000000 48.00000 3 0.000000 2.00

45、0000 4 40.00000 0.000000原料無(wú)剩余時(shí)間無(wú)剩余加工能力剩余40Model:Max=72*x1+64*x2;x1+x250;12*x1+8*x2480;3*x1100;end三種資源“資源” 剩余為零的約束為緊約束(有效約束) 結(jié)果解釋模型求解 reduced cost值表示當(dāng)該非基變量增加一個(gè)單位時(shí)(其他非基變量保持不變)目標(biāo)函數(shù)減少的量(對(duì)max型問(wèn)題) Global optimal solution found. Objective value: 3360.000 Infeasibilities: 0.000000 Total solver iterations: 2

46、 Variable Value Reduced Cost X1 20.00000 0.000000 X2 30.00000 0.000000 Row Slack or Surplus Dual Price 1 3360.000 1.000000 2 0.000000 48.00000 3 0.000000 2.000000 4 40.00000 0.000000也可理解為:為了使該非基變量變成基變量,目標(biāo)函數(shù)中對(duì)應(yīng)系數(shù)應(yīng)增加的量 Global optimal solution found. Objective value: 3360.000 Infeasibilities: 0.000000

47、Total solver iterations: 2 Variable Value Reduced Cost X1 20.00000 0.000000 X2 30.00000 0.000000 Row Slack or Surplus Dual Price 1 3360.000 1.000000 2 0.000000 48.00000 3 0.000000 2.000000 4 40.00000 0.000000結(jié)果解釋 最優(yōu)解下“資源”增加1單位時(shí)“效益”的增量 原料增1單位, 利潤(rùn)增48 時(shí)間加1單位, 利潤(rùn)增2 能力增減不影響利潤(rùn)影子價(jià)格 35元可買(mǎi)到1桶牛奶,要買(mǎi)嗎?35 48, 應(yīng)該

48、買(mǎi)! 聘用臨時(shí)工人付出的工資最多每小時(shí)幾元? 2元! Ranges in which the basis is unchanged: Objective Coefficient Ranges Current Allowable Allowable Variable Coefficient Increase Decrease X1 72.00000 24.00000 8.000000 X2 64.00000 8.000000 16.00000 Righthand Side Ranges Row Current Allowable Allowable RHS Increase Decrease 2

49、 50.00000 10.00000 6.666667 3 480.0000 53.33333 80.00000 4 100.0000 INFINITY 40.00000最優(yōu)解不變時(shí)目標(biāo)系數(shù)允許變化范圍 x1系數(shù)范圍(64,96) x2系數(shù)范圍(48,72) A1獲利增加到 30元/千克,應(yīng)否改變生產(chǎn)計(jì)劃 x1系數(shù)由243= 72 增加為303= 90,在允許范圍內(nèi) 不變!(約束條件不變)結(jié)果解釋(靈敏度分析)結(jié)果解釋 Ranges in which the basis is unchanged: Objective Coefficient Ranges Current Allowable A

50、llowable Variable Coefficient Increase Decrease X1 72.00000 24.00000 8.000000 X2 64.00000 8.000000 16.00000 Righthand Side Ranges Row Current Allowable Allowable RHS Increase Decrease 2 50.00000 10.00000 6.666667 3 480.0000 53.33333 80.00000 4 100.0000 INFINITY 40.00000影子價(jià)格有意義時(shí)約束右端的允許變化范圍 原料最多增加10 時(shí)

51、間最多增加53 35元可買(mǎi)到1桶牛奶,每天最多買(mǎi)多少?最多買(mǎi)10桶(目標(biāo)函數(shù)不變)注意: 充分但可能不必要1桶牛奶 3千克A1 12小時(shí) 8小時(shí) 4公斤A2 或獲利24元/公斤 獲利16元/公斤 0.8千克B12小時(shí),3元1千克獲利44元/千克 0.75千克B22小時(shí),3元1千克獲利32元/千克 制訂生產(chǎn)計(jì)劃,使每天凈利潤(rùn)最大 30元可增加1桶牛奶,3元可增加1小時(shí)時(shí)間,應(yīng)否投資?現(xiàn)投資150元,可賺回多少?50桶牛奶, 480小時(shí) 至多100公斤A1 B1,B2的獲利經(jīng)常有10%的波動(dòng),對(duì)計(jì)劃有無(wú)影響?例2 奶制品的生產(chǎn)銷售計(jì)劃1桶牛奶 3千克 A1 12小時(shí) 8小時(shí) 4千克 A2 或獲利2

52、4元/千克 獲利16元/kg 0.8千克 B12小時(shí),3元1千克獲利44元/千克 0.75千克 B22小時(shí),3元1千克獲利32元/千克 出售x1 千克 A1, x2 千克 A2, x3千克 B1, x4千克 B2原料供應(yīng) 勞動(dòng)時(shí)間 加工能力 決策變量 目標(biāo)函數(shù) 利潤(rùn)約束條件非負(fù)約束 x5千克 A1加工B1, x6千克 A2加工B2附加約束 50桶牛奶, 480小時(shí) 至多100公斤A1 所以模型為:約束條件恒等變形:Lingo程序Model:Max=24*x1+16*x2+44*x3 +32*x4 -3*x5-3*x6;4*x1+3*x2+4*x5+3*x6600;4*x1+2*x2+6*x5+

53、4*x6480;x1+x51 c=-0.05 -0.27 -0.19 -0.185 -0.185; Aeq=1 1.01 1.02 1.045 1.065; beq=1; A=0 0.025 0 0 0;0 0 0.015 0 0;0 0 0 0.055 0;0 0 0 0 0.026; b=a;a;a;a; vlb=0,0,0,0,0;vub=; x,val=linprog(c,A,b,Aeq,beq,vlb,vub); ax=x Q=-val plot(a,Q,.);axis(0 0.1 0 0.5);hold on a=a+0.001;end xlabel(a),ylabel(Q)To

54、Matlab(xxgh5)MATLAB程序:a=0.006計(jì)算結(jié)果:4. 在a=0.006附近有一個(gè)轉(zhuǎn)折點(diǎn),在這一點(diǎn)左邊,風(fēng)險(xiǎn)增加很少時(shí),利潤(rùn)增長(zhǎng)很快。在這一點(diǎn)右邊,風(fēng)險(xiǎn)增加很大時(shí),利潤(rùn)增長(zhǎng)很緩慢,所以對(duì)于風(fēng)險(xiǎn)和收益沒(méi)有特殊偏好的投資者來(lái)說(shuō),應(yīng)該選擇曲線的拐點(diǎn)作為最優(yōu)投資組合, 大約是a*=0.6%,Q*=20% ,所對(duì)應(yīng)投資方案為: 風(fēng)險(xiǎn)度 收益 x0 x1 x2 x3 x4 0.0060 0.2019 0 0.2400 0.4000 0.1091 0.2212 3. 曲線上的任一點(diǎn)都表示該風(fēng)險(xiǎn)水平的最大可能收益和該收益要求的最小風(fēng)險(xiǎn)。對(duì)于不同風(fēng)險(xiǎn)的承受能力,選擇該風(fēng)險(xiǎn)水平下的最優(yōu)投資組合。

55、當(dāng)投資越分散時(shí),投資者承擔(dān)的風(fēng)險(xiǎn)越小,這與題意一致。 即: 冒險(xiǎn)的投資者會(huì)出現(xiàn)集中投資的情況,保守的投資者則盡量分散投資。1. 風(fēng)險(xiǎn)大,收益也大。五、 結(jié)果分析 某廠生產(chǎn)甲乙兩種口味的飲料,每百箱甲飲料需用原料6千克,工人10名,可獲利10萬(wàn)元;每百箱乙飲料需用原料5千克,工人20名,可獲利9萬(wàn)元.今工廠共有原料60千克,工人150名,又由于其他條件所限甲飲料產(chǎn)量不超過(guò)8百箱.問(wèn)如何安排生產(chǎn)計(jì)劃,即兩種飲料各生產(chǎn)多少使獲利最大.進(jìn)一步討論: 1)若投資0.8萬(wàn)元可增加原料1千克,問(wèn)應(yīng)否作這項(xiàng)投資. 2)若每百箱甲飲料獲利可增加1萬(wàn)元,問(wèn)應(yīng)否改變生產(chǎn)計(jì)劃.返 回練習(xí)132第5講 非線性規(guī)劃數(shù)學(xué)建

56、模與數(shù)學(xué)實(shí)驗(yàn) 133實(shí)驗(yàn)?zāi)康膶?shí)驗(yàn)內(nèi)容2、掌握用數(shù)學(xué)軟件求解優(yōu)化問(wèn)題。1、直觀了解非線性規(guī)劃的基本內(nèi)容。1、用Matlab求解非線性規(guī)劃。4、實(shí)驗(yàn)作業(yè)。2、非線性規(guī)劃模型舉例。3、鋼管訂購(gòu)及運(yùn)輸優(yōu)化模型134一、用Matlab解非線性規(guī)劃用MATLAB軟件求解,其輸入格式: 1.x=quadprog(H,C,A,b); 2.x=quadprog(H,C,A,b,Aeq,beq); 3.x=quadprog(H,C,A,b,Aeq,beq,VLB,VUB); 4.x=quadprog(H,C,A,b, Aeq,beq ,VLB,VUB,X0); 5.x=quadprog(H,C,A,b, Aeq,

57、beq ,VLB,VUB,X0,options); 6.x,fval=quaprog(.); 7.x,fval,exitflag=quaprog(.); 8.x,fval,exitflag,output=quaprog(.);1. 二次規(guī)劃135例1 min f(x1,x2)=-2x1-6x2+x12-2x1x2+2x22 s.t. x1+x22 -x1+2x22 x10, x20 MATLAB(youh1)1.寫(xiě)成標(biāo)準(zhǔn)形式: 2. 輸入命令: H=1 -1; -1 2; c=-2 ;-6;A=1 1; -1 2;b=2;2; Aeq=;beq=; VLB=0;0;VUB=; x,z=quad

58、prog(H,c,A,b,Aeq,beq,VLB,VUB)3.運(yùn)算結(jié)果為: x =0.6667 1.3333 z = -8.2222s.t.1362.非線性規(guī)劃 1) 首先建立M文件fun.m,定義目標(biāo)函數(shù)F(X):function f=fun(X);f=F(X); 其中X為n維變?cè)蛄?,G(X)與Ceq(X)均為非線性函數(shù)組成的向量,其它變量的含義與線性規(guī)劃、二次規(guī)劃中相同.用Matlab求解上述問(wèn)題,基本步驟分三步:137 3) 建立主程序.非線性規(guī)劃求解的函數(shù)是fmincon, 命令的基本格式如下: (1) x=fmincon(fun,X0,A,b) (2) x=fmincon(fun,

59、X0,A,b,Aeq,beq) (3) x=fmincon(fun,X0,A,b, Aeq,beq,VLB,VUB) (4) x=fmincon(fun,X0,A,b,Aeq,beq,VLB,VUB,nonlcon) (5) x=fmincon(fun,X0,A,b,Aeq,beq,VLB,VUB,nonlcon,options) (6) x,fval= fmincon(.) (7) x,fval,exitflag= fmincon(.) (8) x,fval,exitflag,output= fmincon(.)輸出極值點(diǎn)M文件迭代的初值參數(shù)說(shuō)明變量上下限138注意:1 fmincon函數(shù)提

60、供了大型優(yōu)化算法和中型優(yōu)化算法。默認(rèn)時(shí),若在fun函數(shù)中提供了梯度(options參數(shù)的GradObj設(shè)置為on),并且只有上下界存在或只有等式約束,fmincon函數(shù)將選擇大型算法。當(dāng)既有等式約束又有梯度約束時(shí),使用中型算法。2 fmincon函數(shù)的中型算法使用的是序列二次規(guī)劃法。在每一步迭代中求解二次規(guī)劃子問(wèn)題,并用BFGS法更新拉格朗日Hessian矩陣。3 fmincon函數(shù)可能會(huì)給出局部最優(yōu)解,這與初值X0的選取有關(guān)。139例21.寫(xiě)成標(biāo)準(zhǔn)形式: s.t. 2x1+3x2 6 s.t x1+4x2 5 x1,x2 01402.先建立M-文件 fun3.m: function f=fu

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論