深度強化學習算法原理與實戰:基於MATLAB

鄭一

  • 出版商: 化學工業
  • 出版日期: 2025-09-01
  • 售價: $654
  • 語言: 簡體中文
  • 頁數: 339
  • ISBN: 7122475751
  • ISBN-13: 9787122475756
  • 相關分類: 人工智慧
  • 尚未上市,歡迎預購

相關主題

商品描述

本書在詳細闡述強化學習基本概念與基本理論的基礎上,循序漸進地介紹了深度強化學習各常用算法的基本思想、算法偽代碼、算法實現、基於實例的算法演示與程序分析等內容。具體介紹了Q-learning算法求解 路徑問題,SARSA算法求解 安全路徑問題,策略疊代算法求解兩地租車 調度問題,價值疊代算法求解 路徑問題,DQN?算法求解平衡系統的 控制問題,PG算法求解雙積分系統的 控制問題,AC類算法求解股票交易的 策略,SAC算法求解機器人手臂控球平衡問題,PPO算法求解飛行器平穩著陸 控制問題,DDPG算法求解四足機器人行走控制策略問題,TD3算法求解PID控制器參數整定問題,多智能體強化學習的基本概念與基本方法,MAPPO算法求解多智能體協作運送物體問題,IPPO算法與MAPPO算法求解協作競爭探索區域問題,MADDPG與DDPG算法求解車輛路徑跟蹤控制問題。 本書可作為高等院校深度強化學習課程的教材,亦可作為本科生畢業設計、研究生項目設計和廣大科研人員的技術參考用書。

目錄大綱

第1章 強化學習的基本概念與基本理論 1
1.1 強化學習研究的問題及基本概念 1
1.1.1 一些強化學習研究實例 1
1.1.2 智能體 3
1.1.3 環境 4
1.1.4 狀態及其觀測 4
1.1.5 狀態轉移概率 5
1.1.6 動作 6
1.1.7 獎勵 8
1.1.8 策略 12
1.2 馬爾可夫決策過程 13
1.2.1 馬爾可夫性質與轉移概率 13
1.2.2 軌跡、回合及經驗轉換樣本 14
1.2.3 回報及折現率 15
1.2.4 馬爾可夫決策過程的數學記號及其含義 17
1.3 強化學習的基本函數 19
1.3.1 目標函數及其作用 19
1.3.2 狀態價值函數及其作用 19
1.3.3 動作價值函數及其作用 21
1.3.4 Vπ(s)與Qπ(s, a)的互相表示關系 21
1.4 貝爾曼方程理論 23
1.4.1 Bellman方程及其作用 23
1.4.2 策略及 狀態價值函數 26
1.4.3 動作價值函數及其作用 27
1.4.4 Bellman 方程及其作用 28
1.4.5 求解Bellman方程的思路 30
*1.5 神經網絡的基本知識及幾個重要定理 31
1.5.1 神經網絡基本知識 31
1.5.2 神經網絡通用近似定理 32
1.5.3 可微假設與矩陣點乘運算等基本知識 32
1.5.4 梯度及梯度下降與神經網絡權值參數 新公式 34
1.5.5 數學期望基本知識 36
1.5.6 循環疊代結果的存在性與 性 37
1.6 本章小結 40
習題1 41

第2章 Q-learning算法求解 路徑問題 42
2.1 Q-learning算法的基本思想 42
2.2 ε-貪婪策略與時序差分算法 43
2.2.1 ε-貪婪策略及其作用 43
2.2.2 時序差分算法 44
2.3 Q-learning算法的實現 45
2.3.1 Q-learning算法的應用條件 45
2.3.2 Q-learning算法的偽代碼 45
2.3.3 Q-learning算法的程序步驟 46
2.3.4 Q-learning算法的收斂性 46
2.4 Q-learning算法實例:尋找 路徑 47
2.4.1 問題說明 47
2.4.2 數學模型 48
2.4.3 基於MATLAB自帶函數實現求解 48
2.4.4 基於自編代碼實現求解 54
2.5 Q-learning算法的優缺點及算法擴展 60
2.5.1 Q-learning算法的優缺點 60
2.5.2 模型擴展 61
2.5.3 算法擴展 62
2.6 本章小結 62
習題2 63

第3章 SARSA算法求解 安全路徑問題 65
3.1 SARSA算法的基本思想 65
3.2 SARSA算法的實現 65
3.2.1 SARSA算法的偽代碼 65
3.2.2 SARSA算法的程序步驟 66
3.2.3 on-policy和off-policy 66
3.2.4 SARSA算法的收斂性 67
3.3 SARSA算法實例:尋找 安全路徑 68
3.3.1 問題說明 68
3.3.2 數學模型 68
3.3.3 主程序代碼 69
3.3.4 程序分析 70
3.4 SARSA算法與Q-learning算法對比 72
3.4.1 SARSA算法的優缺點 72
3.4.2 SARSA算法與Q-learning算法適用情況對比 72
3.4.3 策略對比 72
3.4.4 圖像對比分析 73
3.5 本章小結 75
習題3 76

第4章 策略疊代算法求解兩地租車 調度問題 78
4.1 策略疊代算法的基本思想 78
4.2 策略疊代算法的實現 78
4.2.1 策略疊代算法的應用條件 78
4.2.2 策略疊代算法的偽代碼 79
4.2.3 策略疊代算法的程序步驟 79
4.2.4 策略疊代算法的收斂性 80
4.3 策略疊代算法實例:尋找 調度方案 80
4.3.1 問題說明 81
4.3.2 數學模型 81
4.3.3 主程序代碼 82
4.3.4 程序分析 86
4.3.5 程序結果解讀 88
4.4 策略疊代算法的優缺點及算法擴展 90
4.4.1 策略疊代算法的優缺點 90
4.4.2 模型擴展 91
4.4.3 算法擴展 91
4.5 本章小結 92
習題4 93

第5章 價值疊代算法求解 路徑問題 94
5.1 價值疊代算法的基本思想 94
5.2 價值疊代算法的實現 94
5.2.1 價值疊代算法的應用條件 94
5.2.2 價值疊代算法的偽代碼 95
5.2.3 價值疊代算法的程序步驟 95
5.2.4 價值疊代算法的收斂性 96
5.2.5 價值疊代算法與策略疊代算法的聯系與區別 96
5.3 價值疊代算法實例:尋找 路徑 97
5.3.1 問題說明 97
5.3.2 數學模型 98
5.3.3 主程序代碼 98
5.3.4 程序分析 101
5.3.5 程序結果解讀 102
5.4 價值疊代算法的優缺點及算法擴展 103
5.4.1 價值疊代算法的優缺點 103
5.4.2 模型擴展 103
5.4.3 算法擴展 104
5.5 本章小結 104
習題5 106

第6章 DQN算法求解平衡系統的 控制問題 107
6.1 DQN算法的基本思想 107
6.2 經驗回放技術與目標網絡技術 107
6.2.1 經驗回放技術與重要性采樣及其作用 107
6.2.2 當前網絡與目標網絡 109
6.3 DQN算法的實現 111
6.3.1 DQN算法的應用條件 111
6.3.2 DQN算法的偽代碼 111
6.3.3 DQN算法的流程與程序步驟 112
6.3.4 DQN算法的收斂性 114
6.4 DQN算法實例:求解平衡系統 控制策略 115
6.4.1 問題說明 115
6.4.2 數學模型 115
6.4.3 主程序代碼 116
6.4.4 程序分析 121
6.4.5 程序結果解讀 121
6.5 代碼程序細化 123
6.5.1 問題改進說明 123
6.5.2 主程序代碼 123
6.5.3 程序分析 132
6.5.4 程序結果解讀 133
6.6 強化學習算法的性能指標 135
6.6.1 任務累計獎勵 135
6.6.2 收斂回合與收斂速度 136
6.6.3 收斂平穩性 137
6.6.4 策略魯棒性 137
6.6.5 策略泛化力 137
6.6.6 程序的性能測試 140
6.7 DQN算法的優缺點及算法擴展 141
6.7.1 DQN算法的優缺點 141
6.7.2 模型擴展 141
6.7.3 算法擴展 142
6.8 本章小結 143
習題6 145

第7章 PG算法求解雙積分系統的 控制問題 146
7.1 PG算法的基本思想 146
7.2 策略參數優化問題及策略梯度定理 146
7.2.1 策略梯度及其策略參數優化問題 146
7.2.2 策略梯度定理及其幾個變形 147
7.3 REINFORCE算法及其偽代碼 148
7.3.1 蒙特卡洛方法近似估計策略梯度 149
7.3.2 REINFORCE算法的偽代碼 149
7.4 帶基線的策略梯度定理及演員網絡與評委網絡 150
7.4.1 帶基線的策略梯度定理 150
7.4.2 基線網絡、演員網絡與評委網絡 151
7.5 PG算法的實現 152
7.5.1 PG算法的應用條件 152
7.5.2 PG算法的偽代碼 152
7.5.3 PG算法的程序步驟 153
7.5.4 PG算法的收斂性 154
7.6 PG算法實例:求解雙積分系統的 控制策略 154
7.6.1 問題說明 154
7.6.2 數學模型 155
7.6.3 主程序代碼 155
7.6.4 程序分析 159
7.6.5 程序結果解讀 159
7.7 PG算法的優缺點及算法擴展 161
7.7.1 PG算法的優缺點 161
7.7.2 模型擴展 161
7.7.3 算法擴展 162
7.8 本章小結 163
習題7 164

第8章 AC類算法求解股票交易 策略 166
8.1 AC算法的基本思想 166
8.2 AC算法的實現 166
8.2.1 AC算法的應用條件 166
8.2.2 AC算法的偽代碼 167
8.2.3 AC算法的程序步驟 168
8.2.4 A2C算法 168
8.2.5 A3C算法 169
8.2.6 AC類算法的收斂性 170
8.3 AC算法實例:求解股票交易 策略問題 171
8.3.1 問題說明 171
8.3.2 數學模型 171
8.3.3 主程序代碼 172
8.3.4 程序分析 176
8.3.5 程序結果解讀 177
8.4 AC算法的優缺點及算法擴展 180
8.4.1 AC算法的優缺點 180
8.4.2 模型擴展 181
8.4.3 算法擴展 181
8.5 本章小結 182
習題8 183

第9章 SAC算法求解機器人手臂控球平衡問題 184
9.1 SAC算法的基本思想 184
9.2 熵強化學習 184
9.2.1 信息熵概念及其作用與策略熵 184
9.2.2 熵強化學習基本知識 185
9.3 SAC算法的實現 186
9.3.1 SAC算法的應用條件 186
9.3.2 SAC算法的偽代碼 186
9.3.3 SAC算法的程序步驟 187
9.3.4 SAC算法的收斂性 188
9.4 SAC算法實例:求解機器人手臂控球平衡問題 188
9.4.1 問題說明 188
9.4.2 數學模型 189
9.4.3 主程序代碼 189
9.4.4 程序分析 193
9.4.5 程序結果解讀 195
9.5 SAC算法的優缺點及算法擴展 197
9.5.1 SAC算法的優缺點 197
9.5.2 模型擴展 197
9.5.3 算法擴展 198
9.6 本章小結 198
習題9 200

0章 PPO算法求解飛行器平穩著陸 控制問題 201
10.1 PPO算法的基本思想 201
10.2 PPO算法涉及的關鍵技術 201
10.2.1 TRPO算法 201
10.2.2 PPO算法的兩個技巧 204
10.3 PPO算法的實現 206
10.3.1 PPO算法的應用條件 206
10.3.2 廣義優勢估計(GAE) 206
10.3.3 PPO算法的偽代碼 206
10.3.4 PPO算法的程序步驟 207
10.3.5 PPO算法的收斂性 207
10.4 PPO算法實例:求解飛行器平穩著陸 控制問題 208
10.4.1 問題說明 208
10.4.2 數學模型 209
10.4.3 主程序代碼 210
10.4.4 程序分析 214
10.4.5 程序結果解讀 215
10.5 PPO算法的優缺點及算法擴展 217
10.5.1 PPO算法的優缺點 217
10.5.2 模型擴展 217
10.5.3 算法擴展 218
10.6 本章小結 218
習題10 219

1章 DDPG算法求解四足機器人行走控制策略問題 221
11.1 DDPG算法的基本思想 221
11.2 隨機性策略與確定性策略的聯系與對比 221
11.3 DDPG算法網絡結構及其邏輯關系 222
11.4 DDPG算法的實現 224
11.4.1 DDPG算法的應用條件 224
11.4.2 DDPG算法的偽代碼 225
11.4.3 DDPG算法的程序步驟 226
11.4.4 DDPG算法的收斂性 226
11.5 DDPG算法實例:求解四足機器人行走控制策略問題 227
11.5.1 問題說明 227
11.5.2 數學模型 227
11.5.3 主程序代碼 229
11.5.4 程序分析 233
11.5.5 程序結果解讀 234
11.6 DDPG算法的優缺點及算法擴展 236
11.6.1 DDPG算法的優缺點 236
11.6.2 模型擴展 237
11.6.3 算法擴展 238
11.7 本章小結 238
習題11 240

2章 TD3算法求解PID控制器參數整定問題 241
12.1 TD3算法的基本思想 241
12.2 TD3算法的實現 242
12.2.1 TD3算法的應用條件 242
12.2.2 TD3算法的偽代碼 242
12.2.3 TD3算法的程序步驟 243
12.2.4 TD3算法的收斂性 244
12.3 TD3算法實例:求解PID控制水箱液位問題 244
12.3.1 問題說明 244
12.3.2 數學模型 245
12.3.3 主程序代碼 246
12.3.4 程序分析 250
12.3.5 程序結果解讀 251
12.4 TD3智能體與PID控制器參數整定結果對比分析 254
12.4.1 PID控制器參數整定簡介 254
12.4.2 TD3算法及PID控制器參數整定程序 254
12.4.3 TD3算法及PID控制器參數整定結果對比分析 257
12.5 TD3算法的優缺點及算法擴展 258
12.5.1 TD3算法的優缺點 258
12.5.2 模型擴展 259
12.5.3 算法擴展 260
12.6 本章小結 260
習題12 262

3章 多智能體強化學習的基本概念與基本方法 263
13.1 多智能體強化學習概述 263
13.1.1 多智能體與單智能體強化學習的聯系與區別 263
13.1.2 多智能體強化學習的實際問題舉例 264
13.1.3 多智能體強化學習的具體內容 264
13.1.4 多智能體系統類型分類 264
13.2 多智能體強化學習基礎知識 265
13.2.1 多智能體強化學習的基本概念 266
13.2.2 多智能體強化學習的相關基本理論 268
13.2.3 多智能體強化學習的基本方法 269
13.3 多智能體強化學習的基本函數 270
13.3.1 策略函數 270
13.3.2 動作價值函數及其作用 271
13.3.3 狀態價值函數及其作用 273
13.3.4 優勢函數 274
13.3.5 動作評估函數 275
13.3.6 響應策略 275
13.3.7 納什均衡 275
13.3.8 帕累托(Pareto)非劣策略 276
13.4 本章小結 276
習題13 277

4章 MAPPO算法求解多智能體協作運送物體問題 278
14.1 MAPPO算法的基本思想 278
14.2 MAPPO算法的實現 278
14.2.1 MAPPO算法的應用條件 278
14.2.2 MAPPO算法的偽代碼 278
14.2.3 MAPPO算法的程序步驟 279
14.2.4 MAPPO算法的收斂性 280
14.3 MAPPO算法實例:求解多智能體協作運送物體問題 280
14.3.1 問題說明 280
14.3.2 數學模型 281
14.3.3 主程序代碼 282
14.3.4 程序分析 285
14.3.5 程序結果解讀 286
14.4 分散式訓練與集中式訓練對比分析 287
14.4.1 分散式與集中式訓練程序組合方案 287
14.4.2 不同訓練方案的訓練進程對比分析 288
14.4.3 MAPPO算法的仿真結果對比分析 290
14.5 MAPPO算法的優缺點及算法擴展 293
14.5.1 MAPPO算法的優缺點 293
14.5.2 模型擴展 294
14.5.3 算法擴展 295
14.6 本章小結 295
習題14 296

5章 IPPO算法與MAPPO算法求解協作競爭探索區域問題 297
15.1 IPPO算法的基本思想 297
15.2 IPPO算法的實現 297
15.2.1 IPPO算法的應用條件 297
15.2.2 IPPO算法的偽代碼 297
15.2.3 IPPO算法的程序步驟 298
15.2.4 IPPO算法的收斂性 298
15.3 IPPO算法實例:求解多智能體協作競爭探索區域問題 298
15.3.1 問題說明 298
15.3.2 數學模型 299
15.3.3 主程序代碼 300
15.3.4 程序分析 304
15.3.5 程序結果解讀 305
15.4 IPPO與MAPPO算法程序及其結果對比分析 306
15.4.1 IPPO算法程序與MAPPO算法程序差別 306
15.4.2 5個訓練方案的訓練進程對比分析 306
15.4.3 IPPO算法與MAPPO算法仿真測試結果對比分析 309
15.5 IPPO算法的優缺點及算法擴展 312
15.5.1 IPPO算法的優缺點 312
15.5.2 模型擴展 312
15.5.3 算法擴展 312
15.6 本章小結 313
習題15 313

6章 MADDPG與DDPG算法求解車輛路徑跟蹤控制問題 315
16.1 MADDPG算法的基本思想 315
16.2 MADDPG算法的實現 315
16.2.1 MADDPG算法的應用條件 315
16.2.2 MADDPG算法的偽代碼 315
16.2.3 MADDPG算法的程序步驟 316
16.2.4 MADDPG算法的收斂性 317
16.3 MADDPG算法實例:求解車輛路徑跟蹤控制問題 317
16.3.1 問題說明 317
16.3.2 數學模型 318
16.3.3 主程序代碼 319
16.3.4 程序分析 322
16.3.5 程序結果解讀 322
16.4 MADDPG與DDPG算法的對比分析 325
16.4.1 兩個自帶函數程序對比 325
16.4.2 訓練進程對比分析 329
16.4.3 仿真結果對比分析 330
16.5 MADDPG算法的優缺點及算法擴展 331
16.5.1 MADDPG算法的優缺點 331
16.5.2 模型擴展 331
16.5.3 算法擴展 332
16.6 本章小結 332
習題16 333

參考文獻 335

附錄 符號說明 337