內容簡介
MATLAB數學建模方法與實踐(第3版)
本書從數學建模的角度介紹了MATLAB的套用,涵蓋了絕大部分數學建模問題的MATLAB求解方法。全書共5篇。第一篇是基礎篇,介紹基本概念,包括MATLAB在數學建模中的地位、數學模型的分類及各類需要用到的MATLAB技術,以及MATLAB編程入門;第二篇是技術篇,介紹MATLAB建模的主流技術,包括數據建模技術(數據的準備、常用的數學建模方法、機器學習、灰色預測、神經網路及小波分析)、最佳化技術(標準規劃模型的求解、遺傳算法、模擬退火算法、蟻群算法等全局最佳化算法)、連續模型、評價型模型以及機理建模的MATLAB實現方法;第三篇是實踐篇,以歷年全國大學生數學建模競賽的經典賽題為例,介紹MATLAB在其中的實際套用過程,包括詳細的建模過程、求解過程以及原汁原味的競賽論文;第四篇是賽後重研究篇,主要介紹如何藉助MATLAB的工程套用功能將模型轉化成產品的技術;第五篇是經驗篇,主要介紹數學建模的參賽經驗、心得、技巧,以及MATLAB的學習經驗,這些經驗會有助於競賽的準備和競賽成績的提升,從容參與數學建模活動。
本書特別適合作為數學建模競賽的培訓教材或參考用書,也可作為大學“數學實驗”“數學建模”“數據挖掘”課程的參考用書,還可供廣大科研人員、學者、工程技術人員參考。
圖書目錄
第一篇 基礎篇
第1章 緒 論…………………………… 3
1.1 MATLAB在數學建模中的地位………… 3
1.2 正確且高效的MATLAB編程理念…………4
1.3 數學建模對MATLAB水平的要求…… 4
1.4 如何提高MATLAB建模水平…… 5
1.5 小 結……………………………… 6
參考文獻………………………………… 6
第2章 MATLAB數學建模快速入門…… 7
2.1 MATLAB快速入門……………… 7
2.1.1 MATLAB概要……………………… 7
2.1.2 MATLAB的功能…………………… 8
2.1.3 快速入門案例……………………… 9
2.1.4 入門後的提高……………………… 15
2.2 MATLAB常用技巧…………… 16
2.2.1 常用標點的功能…………………… 16
2.2.2 常用操作指令……………………… 16
2.2.3 指令編輯操作鍵…………………… 16
2.2.4 MATLAB數據類型………………… 16
2.3 MATLAB開發模式…………… 18
2.3.1 命令行模式………………………… 18
2.3.2 腳本模式…………………………… 18
2.3.3 面向對象模式……………………… 18
2.3.4 三種模式的配合…………………… 18
2.4 小 結…………………………… 19
參考文獻………………………………… 19
第二篇 技術篇
第3章 數據的準備……………………… 23
3.1 數據的獲取……………………… 23
3.1.1 從EXCEL中讀取數據……………… 23
3.1.2 從TXT中讀取數據………………… 23
3.1.3 讀取圖片…………………………… 26
3.1.4 讀取視頻…………………………… 26
3.2 數據的預處理…………………… 27
3.2.1 缺失值處理………………………… 28
3.2.2 噪聲過濾…………………………… 29
3.2.3 數據集成…………………………… 31
3.2.4 數據歸約…………………………… 32
3.2.5 數據變換…………………………… 32
3.3 數據的統計……………………… 34
3.3.1 基本描述性統計…………………… 34
3.3.2 分布描述性統計…………………… 35
3.4 數據可視化……………………… 35
3.4.1 基本可視化………………………… 36
3.4.2 數據分布形狀可視化………………… 37
3.4.3 數據關聯可視化…………………… 38
3.4.4 數據分組可視化…………………… 40
3.5 數據降維………………………… 41
3.5.1 主成分分析(PCA)基本原理………… 41
3.5.2 PCA套用案例:企業綜合實力排序…… 43
3.5.3 相關係數降維……………………… 46
3.6 小 結…………………………… 46
參考文獻………………………………… 47
第4章 MATLAB常用的數據建模方法…………… 48
4.1 一元回歸………………………… 48
4.1.1 一元線性回歸……………………… 48
4.1.2 一元非線性回歸…………………… 50
4.2 多元回歸………………………… 52
4.3 逐步歸回………………………… 54
4.4 Logistic回歸…………………… 55
4.5 小 結…………………………… 57
參考文獻………………………………… 57
第5章 MATLAB機器學習方法……… 58
5.1 MATLAB機器學習概況……… 58
5.2 分類方法………………………… 59
5.2.1 K 近鄰分類……………………… 59
5.2.2 貝葉斯分類………………………… 63
5.2.3 支持向量機分類…………………… 66
5.3 聚類方法………………………… 70
5.3.1 K-means聚類……………………… 70
5.3.2 層次聚類…………………………… 76
5.3.3 模糊C 均值聚類…………………… 80
5.4 深度學習………………………… 82
5.4.1 深度學習的崛起…………………… 82
5.4.2 深度學習的原理…………………… 82
5.4.3 深度學習訓練過程………………… 83
5.4.4 MATLAB深度學習訓練過程………… 84
5.5 小 結…………………………… 86
參考文獻………………………………… 86
第6章 其他數據建模方法……………… 87
6.1 灰色預測方法…………………… 87
6.1.1 灰色預測概述……………………… 87
6.1.2 灰色系統基本理論………………… 87
6.1.3 經典灰色模型GM(1,1)……………… 89
6.1.4 灰色預測的MATLAB程式…………… 94
6.1.5 灰色預測套用實例………………… 95
6.1.6 灰色預測小結……………………… 98
6.2 神經網路………………………… 98
6.2.1 神經網路的原理…………………… 98
6.2.2 神經網路的實例…………………… 100
6.2.3 神經網路的特點…………………… 101
6.3 小波分析………………………… 101
6.3.1 小波分析概述……………………… 101
6.3.2 常見的小波分析方法……………… 102
6.3.3 小波分析套用實例………………… 105
6.4 小 結…………………………… 107
參考文獻……………………………… 107
第7章 標準規劃問題的MATLAB求解……………… 108
7.1 線性規劃………………………… 108
7.1.1 線性規劃的實例與定義……………… 108
7.1.2 線性規劃的MATLAB標準形式……… 109
7.1.3 線性規劃問題的解的概念…………… 109
7.1.4 線性規劃的MATLAB解法………… 110
7.2 非線性規劃……………………… 113
7.2.1 非線性規劃的實例與定義…………… 113
7.2.2 非線性規劃的MATLAB解法……… 114
7.2.3 二次規劃………………………… 115
7.3 整數規劃………………………… 117
7.3.1 整數規劃的定義…………………… 117
7.3.2 0 1整數規劃…………………… 117
7.4 小 結…………………………… 118
參考文獻……………………………… 118
第8章 MATLAB全局最佳化算法……… 119
8.1 MATLAB全局最佳化概況……… 119
8.2 遺傳算法………………………… 119
8.2.1 遺傳算法的原理…………………… 119
8.2.2 遺傳算法的步驟…………………… 120
8.2.3 遺傳算法的實例…………………… 126
8.3 模擬退火算法…………………… 128
8.3.1 模擬退火算法的原理……………… 128
8.3.2 模擬退火算法的步驟……………… 130
8.3.3 模擬退火算法的實例……………… 131
8.4 全局最佳化求解器匯總…………… 138
8.5 延伸閱讀………………………… 138
8.6 小 結…………………………… 139
參考文獻……………………………… 139
第9章 蟻群算法及其MATLAB實現………………… 140
9.1 蟻群算法的原理………………… 140
9.1.1 蟻群算法的基本思想……………… 140
9.1.2 蟻群算法的數學模型……………… 141
9.1.3 蟻群算法的流程…………………… 142
9.2 蟻群算法的MATLAB實現…… 142
9.2.1 實例背景………………………… 142
9.2.2 算法設計步驟……………………… 144
9.2.3 MATLAB程式實現………………… 144
9.2.4 程式執行結果與分析……………… 147
9.3 算法關鍵參數的設定…………… 149
9.3.1 參數設定的準則…………………… 149
9.3.2 螞蟻數量………………………… 149
9.3.3 信息素因子……………………… 151
9.3.4 啟發函式因子……………………… 151
9.3.5 信息素揮發因子…………………… 151
9.3.6 信息素常數……………………… 152
9.3.7 最大疊代次數……………………… 152
9.3.8 組合參數設計策略………………… 152
9.4 套用實例:最佳旅遊方案(蘇北賽2011B)………… 152
9.4.1 問題描述………………………… 152
9.4.2 問題的求解和結果………………… 153
9.5 小 結…………………………… 155
參考文獻……………………………… 155
第10章 MATLAB連續模型求解方法…………………… 156
10.1 MATLAB常規微分方程的求解……………………… 156__
10.1.1 MATLAB常微分方程的表達方法…… 156
10.1.2 常規微分方程的求解實例………… 157
10.2 ODE家族求解器……………… 157
10.2.1 ODE求解器的分類……………… 157
10.2.2 ODE求解器的套用實例…………… 158
10.3 專用求解器…………………… 159
10.4 小 結………………………… 162
參考文獻……………………………… 162
第11章 MATLAB評價型模型求解方法………… 163
11.1 線性加權法…………………… 163
11.2 層次分析法(AHP)…………… 166
11.3 小 結………………………… 167
參考文獻……………………………… 167
第12章 MATLAB機理建模方法…… 168
12.1 機理建模概述………………… 168
12.2 推導法機理建模……………… 168
12.2.1 問題描述………………………… 168
12.2.2 假設和符號說明………………… 168
12.2.3 模型的建立……………………… 169
12.2.4 模型中參數的求解………………… 169
12.3 元胞自動機———仿真法機理建模…………… 171
12.3.1 元胞自動機的定義………………… 171
12.3.2 元胞自動機的MATLAB實現……… 171
12.4 小 結………………………… 173
參考文獻……………………………… 173
第三篇 實踐篇
第13章 彩票中的數學問題(CUMCM2002B)…………… 177
13.1 問題的提出…………………… 177
13.2 問題2模型的建立…………… 179
13.2.1 模型假設與符號說明……………… 179
13.2.2 模型的準備……………………… 179
13.2.3 模型的建立……………………… 180
13.3 模型的求解…………………… 181
13.3.1 求解的思路……………………… 181
13.3.2 MATLAB程式…………………… 181
13.3.3 程式結果………………………… 191
13.4 技巧點評……………………… 192
參考文獻……………………………… 193
第14章 露天礦卡車調度問題(CUMCM2003B)……… 194
14.1 問題的提出…………………… 194
14.2 基本假設與符號說明………… 196
14.2.1 基本假設………………………… 196
14.2.2 符號說明………………………… 196
14.3 問題的分析及模型的準備…… 196
14.4 數學模型的建立與求解……… 198
14.4.1 模型的建立……………………… 198
14.4.2 模型的求解……………………… 199
14.5 技巧點評……………………… 203
參考文獻……………………………… 203
第15章 奧運會商圈規劃問題(CUMCM2004A)…………… 204
15.1 問題的描述…………………… 204
15.2 基本假設、符號說明及名詞約定………… 204
15.2.1 基本假設………………………… 204
15.2.2 符號說明………………………… 205
15.2.3 名詞約定………………………… 205
15.3 問題的分析與模型的準備…… 205
15.3.1 基本思路………………………… 206
15.3.2 基本數學表達式的構建…………… 206
15.4 設定MS網點數學模型的建立與求解…………… 207
15.4.1 模型的建立……………………… 207
15.4.2 模型的求解……………………… 208
15.5 設定MS網點理論體系的建立……210
15.6 商區布局規劃的數學模型…… 212
15.6.1 模型的建立……………………… 212
15.6.2 模型的求解……………………… 212
15.7 模型的評價及使用說明……… 217
15.8 技巧點評……………………… 217
參考文獻……………………………… 218
第16章 交巡警服務平台的設定與調度問題(CUMCM2011B)…… 219
16.1 問題的提出與分析…………… 219
16.2 基本假設……………………… 219
16.3 問題1模型的建立與求解…… 220
16.3.1 交巡警服務平台管轄範圍分配……… 220
16.3.2 交巡警的調度…………………… 223
16.3.3 最佳新增交巡警服務平台的設定…… 224
16.4 問題2模型的建立和求解…… 231
16.5 模型的評價與改進…………… 231
16.6 技巧點評……………………… 231
參考文獻……………………………… 231
第17章 葡萄酒的評價問題(CUMCM2012A)……… 232
17.1 問題的提出…………………… 232
17.2 問題1模型的建立與求解…… 232
17.2.1 問題1的分析…………………… 232
17.2.2 差異顯著性評判………………… 233
17.2.3 評價結果穩定性………………… 236
17.3 問題2模型的建立與求解…… 238
17.3.1 問題2的基本假設和分析………… 238
17.3.2 葡萄酒質量分級………………… 239
17.3.3 葡萄酒理化指標分級……………… 244
17.3.4 兩種分級結果的分析……………… 249
17.4 問題3模型分析……………… 249
17.5 問題4模型分析……………… 249
17.6 論文點評……………………… 249
參考文獻……………………………… 250
第18章 計程車補貼方案最佳化問題(CUMCM2015B)…… 251
18.1 問題描述……………………… 251
18.2 問題分析……………………… 251
18.3 模型假設與符號說明………… 252
18.4 問題1模型的建立與求解…… 252
18.4.1 指標的確立……………………… 252
18.4.2 里程利用率理想值的確定………… 253
18.4.3 供求比率理想值的確定…………… 254
18.4.4 供求匹配模型的建立……………… 255
18.4.5 模型求解方法…………………… 256
18.4.6 模型求解結果與分析……………… 260
18.5 問題2模型的建立與求解…… 261
18.5.1 模型準備………………………… 261
18.5.2 緩解程度判斷模型的建立………… 263
18.5.3 模型求解及結果分析……………… 265
18.6 問題3模型的建立與求解…… 266
18.6.1 分區域動態實時補貼模型的建立…… 266
18.6.2 模型求解及結果分析……………… 267
18.7 模型的評價、改進及推廣……… 269
參考文獻……………………………… 270
第19章 開放小區對道路通行影響的問題(CUMCM2016)…… 271
19.1 問題重述……………………… 272
19.2 問題分析……………………… 272
19.3 模型假設與符號說明………… 273
19.3.1 假設內容………………………… 273
19.3.2 假設可行性……………………… 273
19.3.3 符號說明………………………… 274
19.4 模型的建立與求解…………… 274
19.4.1 問題1模型的建立與求解………… 274
19.4.2 問題2模型的建立與求解………… 277
19.4.3 問題3模型的建立與求解………… 279
19.4.4 問題4…………………………… 293
19.5 模型評價與改進……………… 293
參考文獻……………………………… 294
第四篇 賽後重研究篇
第20章 MATLAB基於模型的產品開發流程…………… 297
20.1 Simulink簡介………………… 297
20.2 Simulink建模實例…………… 298
20.2.1 Simulink建模方法………………… 298
20.2.2 鋰電池建模的實現………………… 298
20.3 在Simulink中使用MATLAB數據和算法………… 303
20.4 基於模型設計的思想………… 304
20.5 小 結………………………… 305
第五篇 經驗篇
第21章 數學建模參賽經驗…………… 309
21.1 如何準備數學建模競賽……… 309
21.2 數學建模隊員應該如何學習MATLAB …………………… 310
21.3 如何才能在數學建模競賽中取得好成績…………………… 312
21.4 數學建模競賽中的項目管理和時間管理……………………… 313
21.5 一種非常實用的數學建模方法:目標建模法…………………… 315
21.6 延伸閱讀:MATLAB在高校的授權模式……………………… 316