本書是MATLAB數(shù)學建模應用系列書籍之一,以MATLAB R2016a軟件版本為基礎,根據(jù)數(shù)學建模的需要編寫,包含了多種數(shù)學建模問題的MATLAB求解方法,是解決數(shù)學實驗和數(shù)學建模的有力工具。
全書共18章,分為前后兩個部分,第1~10章屬于前部分,第11~18章屬于后部分。前部分從MATLAB基礎和數(shù)學建;A知識介紹開始,詳細介紹MATLAB程序設計、常用MATLAB建模函數(shù)、數(shù)學規(guī)劃模型、智能優(yōu)化算法、Simulink簡介、MATLAB圖像處理算法等內(nèi)容; 后部分介紹了水質(zhì)評價與預測、投資收益與風險、旅行商問題、最優(yōu)捕魚策略、裁剪與復原、DNA序列分類、衛(wèi)星和飛船的跟蹤測控、中國人口增長預測等8個典型建模問題的MATLAB求解方法,引導讀者深入挖掘各種建模問題背后的數(shù)學問題和求解方法。最后,在附錄中給出了MATLAB基本命令的介紹,便于讀者使用和研究。
本書以MATLAB數(shù)學建;A為主線,結合各種數(shù)學建模典型案例,目的是使讀者易看懂、會應用。本書是一本簡明的MATLAB數(shù)學建模綜合性參考書。本書深入淺出,實例引導,講解翔實,既可以作為高等院校數(shù)學建模和數(shù)學實驗的參考教材,也可以作為廣大科研工程技術人員的參考用書。
(1) 資深作者編著,圖書質(zhì)量更有保證:一線資深工程師執(zhí)筆,系統(tǒng)歸納和總結了智能算法的實戰(zhàn)經(jīng)驗。
(2) 提供配套源碼,便于讀者動手實踐:理論必須聯(lián)系實踐,本書提供源代碼下載,方便讀者學習使用。
(3) 內(nèi)含豐富實例,利于讀者二次開發(fā):書中提供了十幾個數(shù)學建模算法的典型實例,讀者可以據(jù)此二次開發(fā)。
配套學習資源下載地址為清華大學出版社網(wǎng)站本書頁面。系列暢銷圖書如下:
MATLAB 編程指南——計算、編程、仿真、算法及應用
MATLAB/Simulink系統(tǒng)仿真
MATLAB GUI程序設計
MATLAB智能算法
MATLAB數(shù)學建模
MATLAB科學計算
MATLAB信號處理
MATLAB圖像處理
MATLAB優(yōu)化算法
前言
MATLAB是美國MathWorks公司出品的商業(yè)數(shù)學軟件,常用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術計算語言和交互式環(huán)境。
數(shù)學建模是通過計算得到的結果來解釋實際問題,并接受實際的檢驗,來建立數(shù)學模型的全過程。數(shù)學建模是一種數(shù)學的思考方法,是運用數(shù)學的語言和方法,通過抽象,簡化建立能近似刻畫并“解決”實際問題的一種強有力的數(shù)學手段。
在數(shù)學建模過程中,需要對所要建立模型的思路進行闡述,對所得的結果進行數(shù)學上的分析。最終利用獲取的數(shù)據(jù)資料,對模型的所有參數(shù)做出計算。目前,MATLAB已成為數(shù)學建模和求解的重要工具之一。
本書是利用MATLAB軟件R2016a版本進行數(shù)學建模MATLAB設計和應用的最新書籍。
1. 本書特點
由淺入深,循序漸進: 本書以有數(shù)學建模應用需求的讀者為對象,首先從MATLAB和數(shù)學建;A知識講起,再以各種數(shù)學建模問題在MATLAB中的應用講解,幫助讀者盡快掌握MATLAB求解數(shù)學建模問題。
步驟詳盡、內(nèi)容新穎: 本書結合作者多年的MATLAB數(shù)學建模使用經(jīng)驗與實際問題應用案例,將數(shù)學建模的分析和建模及其MATLAB的實現(xiàn)方法與技巧都詳細地講解給讀者。本書在講解過程中步驟詳盡、內(nèi)容新穎,講解過程輔以相應的圖片,使讀者在閱讀時一目了然,從而快速把握書中所講內(nèi)容。
實例典型,輕松易學: 通過學習實際建模問題分析求解案例,是掌握MATLAB數(shù)學建模應用最好的方式。本書通過典型問題案例,透徹詳盡地講解了MATLAB在數(shù)學建模中的各種應用。
2. 本書內(nèi)容
本書面向初中級讀者,在介紹MATLAB R2016a環(huán)境基礎上,詳細講解了MATLAB數(shù)學建模的基礎知識和核心內(nèi)容。本書中各章均提供有大量的針對性案例,并輔以圖片和注釋,供讀者實戰(zhàn)練習,快速掌握數(shù)學建模的MATLAB應用。
本書基于MATLAB R2016a版,詳細講解MATLAB數(shù)學建模的基礎知識和經(jīng)典案例。其中,基礎知識包括第1~10章,經(jīng)典問題案例部分包括第11~18章。具體內(nèi)容安排如下。
第1部分為MATLAB數(shù)學建模基礎知識部分。主要介紹了MATLAB各種基礎運算、數(shù)據(jù)統(tǒng)計和分析、程序設計、曲線擬合函數(shù)、微分方程的求解、線性規(guī)劃、經(jīng)典算法、Simulink的基本功能、MATLAB數(shù)據(jù)圖形繪制功能、圖像處理算法等內(nèi)容。具體的章節(jié)安排如下:
第1章MATLAB基礎知識第2章數(shù)學建;A
第3章MATLAB程序設計第4章常用建模函數(shù)
第5章MATLAB求解微積分第6章數(shù)學規(guī)劃模型
第7章智能優(yōu)化算法第8章Simulink簡介
第9章MATLAB數(shù)據(jù)圖形可視化第10章MATLAB圖像處理算法
第2部分為經(jīng)典問題案例部分。主要介紹了水質(zhì)評價與預測、投資收益與風險的建模分析、旅行商問題的優(yōu)化、求解最優(yōu)捕魚策略問題、解決人工復原效率低下的問題、DNA序列分類、衛(wèi)星和飛船的測控模型、人口預測模型等內(nèi)容。具體的章節(jié)安排如下:
第11章水質(zhì)評價與預測第12章投資收益與風險
第13章旅行商問題第14章最優(yōu)捕魚策略
第15章裁剪與復原第16章DNA序列分類
第17章衛(wèi)星和飛船的跟蹤測控第18章中國人口增長預測
3. 讀者對象
本書適合于MATLAB初學者和期望提高MATLAB數(shù)據(jù)分析及Simulink建模仿真工程應用能力的讀者,具體說明如下:
■初學MATLAB的技術人員■廣大科研工作人員
■大中專院校的教師和在校生■相關培訓機構的教師和學員
■參加工作實習的“菜鳥”■MATLAB愛好者
4. 讀者服務
為了方便解決本書疑難問題,讀者在學習過程中遇到與本書有關的技術問題,可以發(fā)郵件到郵箱caxart@126.com,或者訪問博客http://blog.sina.com.cn/caxart,編者會盡快給予解答,我們將竭誠為您服務。
5. 本書作者
本書由李昕編著,另外付文利、王廣、張巖、溫正、林曉陽、任艷芳、唐家鵬、孫國強、高飛等也參與了本書的編寫工作,在此一并表示感謝。
雖然作者在本書的編寫過程中力求敘述準確、完善,但由于水平有限,書中欠妥之處在所難免,希望讀者和同仁能夠及時指出,共同促進本書質(zhì)量的提高。
最后再次希望本書能為讀者的學習和工作提供幫助!
編者
2017年12月
第1章MATLAB基礎知識
1.1數(shù)組和變量
1.1.1數(shù)組的定義
1.1.2數(shù)組的創(chuàng)建
1.1.3多維數(shù)組及其操作
1.1.4變量的命名
1.2矩陣
1.2.1實數(shù)值矩陣輸入
1.2.2復數(shù)矩陣輸入
1.2.3符號矩陣的生成
1.2.4大矩陣的生成
1.2.5矩陣的數(shù)學函數(shù)
1.3符號運算的基本內(nèi)容
1.3.1符號變量代換及其函數(shù)
1.3.2符號對象轉(zhuǎn)換為數(shù)值對象的函數(shù)
1.3.3符號表達式的化簡
1.3.4符號運算的其他函數(shù)
1.3.5兩種特定的符號運算函數(shù)
本章小結
第2章數(shù)學建模基礎
2.1數(shù)學建模的概念
2.2數(shù)據(jù)的導入和保存
2.3數(shù)據(jù)統(tǒng)計和分析
2.3.1常用統(tǒng)計量
2.3.2隨機數(shù)
2.3.3參數(shù)估計
2.3.4假設檢驗
2.3.5方差分析
2.4統(tǒng)計圖表的繪制
2.5回歸模型
2.5.1回歸分析的定義
2.5.2回歸分析
本章小結
第3章MATLAB程序設計
3.1自頂向下的程序設計方法
3.2符號運算
3.2.1符號對象
3.2.2創(chuàng)建符號對象
3.2.3符號表達式及函數(shù)
3.2.4數(shù)組與矩陣
3.3關系運算符和邏輯運算符
3.3.1關系運算符
3.3.2邏輯運算符
3.3.3常用操作函數(shù)
3.4分支結構
3.4.1if分支結構
3.4.2switch分支結構
3.5循環(huán)結構
3.5.1while循環(huán)結構
3.5.2for循環(huán)結構
3.5.3控制程序的其他命令
3.6程序調(diào)試和優(yōu)化
3.6.1程序調(diào)試命令
3.6.2程序常見的錯誤類型
3.6.3效率優(yōu)化
3.6.4內(nèi)存優(yōu)化
3.6.5經(jīng)典算法程序舉例
本章小結
第4章常用建模函數(shù)
4.1曲線擬合函數(shù)
4.1.1多項式擬合
4.1.2加權最小方差擬合原理及實例
4.1.3非線性曲線擬合
4.2參數(shù)估計函數(shù)
4.2.1常見分布的參數(shù)估計
4.2.2點估計
4.2.3區(qū)間估計
4.3參數(shù)傳遞函數(shù)
4.3.1輸入和輸出參數(shù)的數(shù)目
4.3.2可變數(shù)目的參數(shù)傳遞
4.3.3返回被修改的輸入?yún)?shù)
4.3.4全局變量
4.4插值函數(shù)
4.4.1一維插值命令及實例
4.4.2二維插值命令及實例
4.4.3樣條插值
本章小結
第5章MATLAB求解微積分
5.1求解函數(shù)導數(shù)
5.1.1函數(shù)的導數(shù)
5.1.2隱函數(shù)的偏導數(shù)
5.2極限問題
5.2.1單變量函數(shù)
5.2.2多變量函數(shù)
5.3求解積分問題
5.3.1不定積分
5.3.2定積分與無窮積分計算
5.3.3多重積分
5.4級數(shù)展開和求和
5.4.1級數(shù)展開
5.4.2級數(shù)求和
本章小結
第6章數(shù)學規(guī)劃模型
6.1數(shù)學規(guī)劃模型的概念
6.2線性規(guī)劃
6.2.1線性規(guī)劃的標準形式
6.2.2線性規(guī)劃求解方法
6.3非線性規(guī)劃
6.3.1非線性規(guī)劃的標準形式
6.3.2二次規(guī)劃
6.3.3無約束規(guī)劃
6.3.4有約束規(guī)劃
本章小結
第7章智能優(yōu)化算法
7.1神經(jīng)網(wǎng)絡算法
7.1.1基本原理
7.1.2程序設計
7.1.3經(jīng)典應用
7.2遺傳算法
7.2.1基本原理
7.2.2程序設計
7.2.3經(jīng)典應用
7.3免疫算法
7.3.1基本原理
7.3.2程序設計
7.3.3經(jīng)典應用
7.4模擬退火算法
7.4.1基本原理
7.4.2程序設計
7.4.3經(jīng)典應用
本章小結
第8章Simulink簡介
8.1基本知識
8.1.1基本功能
8.1.2Simulink組成
8.1.3模塊庫簡介
8.2Simulink系統(tǒng)仿真
8.2.1仿真基礎
8.2.2簡單系統(tǒng)的仿真分析
8.3Stateflow建模與應用
8.3.1Stateflow的定義
8.3.2狀態(tài)圖編輯器
8.3.3Stateflow流程圖
本章小結
第9章MATLAB數(shù)據(jù)圖形可視化
9.1MATLAB圖形窗口
9.1.1創(chuàng)建圖形窗口
9.1.2關閉與清除圖形框
9.2函數(shù)繪制
9.2.1一元函數(shù)繪圖
9.2.2二元函數(shù)繪圖
9.3數(shù)據(jù)圖形繪制簡介
9.3.1離散數(shù)據(jù)可視化
9.3.2連續(xù)函數(shù)可視化
9.4二維繪圖函數(shù)
9.4.1二維圖形繪制步驟
9.4.2二維圖形基本繪圖命令
9.4.3快速方程式畫圖
9.4.4特殊二維圖形
9.4.5二維繪圖經(jīng)典案例
9.5三維繪圖函數(shù)
9.5.1繪制三維曲面
9.5.2柵格數(shù)據(jù)的生成
9.5.3網(wǎng)格曲面的繪制命令
9.5.4隱藏線的顯示和關閉
9.5.5三維繪圖經(jīng)典案例
本章小結
第10章MATLAB圖像處理算法
10.1圖像處理基礎
10.2MATLAB圖像處理函數(shù)
10.2.1默認顯示方式
10.2.2添加顏色條
10.2.3顯示多幀圖像
10.2.4顯示動畫
10.2.5三維材質(zhì)圖像
10.2.6圖像的直方圖
10.2.7灰度變換
10.2.8均衡直方圖
10.3圖像處理的MATLAB應用
10.3.1圖像增強
10.3.2圖像重建
10.3.3圖像變換
10.3.4圖像壓縮
10.3.5圖像分割
10.3.6圖像邊緣檢測
10.3.7圖像識別
本章小結
第11章水質(zhì)評價與預測
11.1問題簡介
11.2數(shù)學模型
11.2.1問題分析
11.2.2模型建立
11.3水質(zhì)評價與預測問題中MATLAB實現(xiàn)
11.4模糊神經(jīng)網(wǎng)絡在水質(zhì)預測中的應用
本章小結
第12章投資收益與風險
12.1問題簡介
12.2數(shù)學模型
12.2.1問題分析
12.2.2模型建立
12.3MATLAB在投資收益與風險問題中的應用
本章小結
第13章旅行商問題
13.1問題簡介
13.2使用蟻群算法求解旅行商問題
13.3多種模型在旅行商問題上的應用
13.3.1Hopfield網(wǎng)絡在TSP中的應用
13.3.2遺傳算法在TSP中的應用
13.3.3免疫算法在TSP中的應用
本章小結
第14章最優(yōu)捕魚策略
14.1問題簡介
14.2數(shù)學模型
14.2.1模型假設
14.2.2問題分析
14.2.3模型建立
14.3MATLAB在最優(yōu)捕魚策略問題中的應用
14.3.1問題1求解
14.3.2問題2求解
本章小結
第15章裁剪與復原
15.1問題簡介
15.2數(shù)學模型
15.2.1模型假設
15.2.2模型建立
15.3模型求解
15.4線段的裁剪
本章小結
第16章DNA序列分類
16.1問題簡介
16.2數(shù)學模型
16.2.1問題分析
16.2.2模型建立
16.3模型求解
本章小結
第17章衛(wèi)星和飛船的跟蹤測控
17.1問題簡介
17.2數(shù)學模型
17.2.1問題分析
17.2.2模型建立
17.3模型求解
17.3.1問題1求解
17.3.2問題2求解
17.3.3問題3求解
本章小結
第18章中國人口增長預測
18.1問題簡介
18.2數(shù)學模型
18.2.1問題分析
18.2.2模型建立
18.3模型求解
18.3.1問題1求解
18.3.2問題2求解
18.3.3問題3求解
本章小結
附錄MATLAB基本命令
參考文獻
第5章MATLAB求解微積分
MATLAB提供解決微積分的各種問題、微分方程求解的任何限制的程度和計算方法。最重要的是可以很容易地繪制圖形復變函數(shù),并檢查最大值、最小值和圖形解決原始函數(shù),以及其衍生的其他內(nèi)容。
本章重點介紹了函數(shù)導數(shù)、極限問題、積分問題和級數(shù)展開等內(nèi)容。
學習目標:
■熟練掌握函數(shù)導數(shù)的求解方法和函數(shù)
■熟練掌握函數(shù)積分的求解方法
■熟練掌握級數(shù)展開和求和
5.1求解函數(shù)導數(shù)
求導是數(shù)學計算中的一個計算方法,導數(shù)定義為: 當自變量的增量趨于零時,因變量的增量與自變量的增量之商的極限。在一個函數(shù)存在導數(shù)時,稱這個函數(shù)可導或者可微分?蓪У暮瘮(shù)一定連續(xù)。不連續(xù)的函數(shù)一定不可導。
5.1.1函數(shù)的導數(shù)
如果函數(shù)和自變量都已知,且均為符號變量,則可以用diff函數(shù)解出給定函數(shù)的各階導數(shù)。
diff函數(shù)的調(diào)用格式為:
■diff(s)——沒有指定變量和導數(shù)階數(shù),則系統(tǒng)按findsym函數(shù)指示的默認變量對符號表達式s求一階導數(shù)。
■diff(s,'v')——以v為自變量,對符號表達式s求一階導數(shù)。
■diff(s,n)——按findsym函數(shù)指示的默認變量對符號表達式s求n階導數(shù),n為正整數(shù)。
■diff(s,'v',n)——以v為自變量,對符號表達式s求n階導數(shù)。
【例51】y=1-2·ex,求y′。
解在MATLAB命令窗口輸入以下代碼:
syms x
y=sqrt(1-2*exp(x))
diff(y)%求1。未指定求導變量和階數(shù),按默認規(guī)則處理
運行后得到:
ans =
-exp(x)/(1 - 2*exp(x))^(1/2)
……