前 言
Reinforcement Learning for Cyber-Physical Systems: with Cybersecurity Case Studies
人工智能(Artificial Intelligence,AI)這一學(xué)科始創(chuàng)于1956年,經(jīng)歷了幾次突飛猛進(jìn)的發(fā)展,但每次都伴隨著漫長的寒冬,也就是AI寒冬—其原因是計算能力的限制、硬件技術(shù)成本的提高、科研經(jīng)費(fèi)的缺乏等。而包括無線技術(shù)、信息技術(shù)和集成電路(IC)在內(nèi)的其他技術(shù),在此時期已經(jīng)有了顯著的進(jìn)步并成為主流。從2010年開始,先進(jìn)的計算技術(shù)、取自人們?nèi)粘;顒拥拇髷?shù)據(jù),以及機(jī)器學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)等人工智能研究子領(lǐng)域的整合,使社會風(fēng)尚的主流轉(zhuǎn)向人工智能研究及其廣泛的應(yīng)用。例如,谷歌DeepMind最近推出的人工智能圍棋玩家AlphaGo Zero,可以在零人工輸入的情況下實(shí)現(xiàn)超人類水平的性能。也就是說,這臺機(jī)器可以從不了解任何圍棋知識開始,通過與自己玩游戲成為自己的老師。AlphaGo的突破性成功表明,人工智能可以從一個“新生的嬰兒”開始,學(xué)會自己成長,最終表現(xiàn)出超人類水平的性能,幫助我們解決現(xiàn)在和未來面臨的最具挑戰(zhàn)性的任務(wù)。
本書的靈感來自強(qiáng)化學(xué)習(xí)(RL)與信息物理系統(tǒng)(CPS)領(lǐng)域近期的發(fā)展。強(qiáng)化學(xué)習(xí)植根于行為心理學(xué),是機(jī)器學(xué)習(xí)的主要分支。與監(jiān)督學(xué)習(xí)和無監(jiān)督學(xué)習(xí)這樣的機(jī)器學(xué)習(xí)算法不同,強(qiáng)化學(xué)習(xí)的主要特征是其獨(dú)一無二的學(xué)習(xí)范式—試錯法。通過與深度神經(jīng)網(wǎng)絡(luò)結(jié)合,深度強(qiáng)化學(xué)習(xí)變得十分強(qiáng)大,使得AI智能體能夠以超人類的水平自動管理許多復(fù)雜的系統(tǒng)。此外,人們期望CPS能夠在不久的將來給我們的社會帶來顛覆性改變,例如新興智能建筑、智能交通和電網(wǎng)。然而,CPS領(lǐng)域傳統(tǒng)的人工編程控制器,既不能處理日益復(fù)雜的系統(tǒng),也不能自動適應(yīng)它以前從未遇到過的新情況。如何應(yīng)用現(xiàn)有的深度強(qiáng)化學(xué)習(xí)算法或開發(fā)新的強(qiáng)化學(xué)習(xí)算法以實(shí)現(xiàn)實(shí)時適應(yīng)性CPS?此問題仍然懸而未決。本書通過系統(tǒng)介紹強(qiáng)化學(xué)習(xí)領(lǐng)域的基礎(chǔ)與算法,在兩個領(lǐng)域之間建立起聯(lián)系,并在每一部分列舉了一個或幾個最新的CPS示例,以幫助讀者直觀地理解強(qiáng)化學(xué)習(xí)技術(shù)的實(shí)用性。我們相信,書中大量關(guān)于強(qiáng)化學(xué)習(xí)算法的CPS示例會對所有正在使用或?qū)⑹褂脧?qiáng)化學(xué)習(xí)工具解決現(xiàn)實(shí)世界問題的人非常有益。
本書系統(tǒng)介紹強(qiáng)化學(xué)習(xí)和深度強(qiáng)化學(xué)習(xí)的關(guān)鍵思想和算法,并全面介紹CPS和網(wǎng)絡(luò)安全。我們的目標(biāo)是使所展示的內(nèi)容易于機(jī)器學(xué)習(xí)、CPS或其他相關(guān)學(xué)科的讀者理解。因此,本書不是一本嚴(yán)格意義上的專注于強(qiáng)化學(xué)習(xí)和CPS理論的書籍。此外,本書并不是對現(xiàn)有的可用強(qiáng)化學(xué)習(xí)算法的最新總結(jié)(因為文獻(xiàn)數(shù)量龐大且發(fā)展迅速)。只有少數(shù)典型的強(qiáng)化學(xué)習(xí)算法被收錄在本書中用于教學(xué)。
本書第一部分對強(qiáng)化學(xué)習(xí)、CPS和網(wǎng)絡(luò)安全進(jìn)行概要介紹。第1章介紹強(qiáng)化學(xué)習(xí)的概念和發(fā)展歷史。第2章介紹CPS和網(wǎng)絡(luò)安全的概念和框架。第二部分正式介紹強(qiáng)化學(xué)習(xí)的框架,并對強(qiáng)化學(xué)習(xí)問題進(jìn)行定義,給出了兩類解決方案:基于模型的解決方案和無模型的解決方案。為了使本書各部分內(nèi)容獨(dú)立,以便讀者不必事先了解強(qiáng)化學(xué)習(xí)就可以很容易地理解每一個知識點(diǎn),我們在本書中采用Sutton和Barto(1998)的經(jīng)典強(qiáng)化學(xué)習(xí)書籍中的一些資料,而不是在書中提供索引讓讀者到他們的書中查看相關(guān)的算法和討論。最后,我們用一章的篇幅介紹近年來發(fā)展極為迅速的新興研究領(lǐng)域—深度強(qiáng)化學(xué)習(xí)。第三部分通過回顧現(xiàn)有的網(wǎng)絡(luò)安全技術(shù)并描述新興的網(wǎng)絡(luò)威脅,將注意力轉(zhuǎn)移到網(wǎng)絡(luò)安全,其中這些新興的網(wǎng)絡(luò)攻擊不是傳統(tǒng)的網(wǎng)絡(luò)管理方法能直接解決的。之后給出了兩個案例研究,它們是基于(深度)強(qiáng)化學(xué)習(xí)解決這些新興網(wǎng)絡(luò)安全問題的典型案例。這兩個案例基于哥倫比亞大學(xué)研究生的研究成果。這一部分旨在說明如何應(yīng)用強(qiáng)化學(xué)習(xí)知識來描述和解決與CPS相關(guān)的問題。
本書適用于科學(xué)與工程領(lǐng)域的研究生或大三/大四本科生,這些領(lǐng)域包括計算機(jī)科學(xué)/工程、電氣工程、機(jī)械工程、應(yīng)用數(shù)學(xué)、經(jīng)濟(jì)學(xué)等。目標(biāo)讀者還包括與強(qiáng)化學(xué)習(xí)、CPS以及網(wǎng)絡(luò)安全等領(lǐng)域相關(guān)的研究人員和工程師。讀者所需的唯一背景知識是微積分和概率論的基礎(chǔ)知識。
從某種意義上說,我們已經(jīng)花了相當(dāng)長的時間來為本書做準(zhǔn)備。在過去的一年里,我們從哥倫比亞大學(xué)研究生和同事的反饋中受益匪淺。他們中的許多人對本書做出了重大貢獻(xiàn)。在此特別鳴謝:Tashrif Billah(第1章),邱龍飛、曾毅、劉小洋(第2章),Andrew Atkinson Stirn(第3章),Tingyu Mao(第4章),張靈鈺(第5章),顏禎佑(第6章),邱龍飛、劉小洋(第7章),Mehmet Necip Kurt、Oyetunji Enoch Ogundijo(第8章參考了他們的研究成果),胡曉天、胡洋(第9章參考了他們的研究成果)。我們還感謝Urs Niesen、Jon Krohn、張鵬、王振東和劉躍明對書稿的仔細(xì)審查和提出的建設(shè)性反饋。王振東和張磊貢獻(xiàn)了本書第3、4、5章的練習(xí)。本書中的一些練習(xí)和示例是從一些(在線)大學(xué)課程中獲取的,或由這些課程中的一些練習(xí)和示例修改而來,這些課程包括斯坦福大學(xué)的課程CS221和CS234、伯克利大學(xué)的課程CS294-129、卡內(nèi)基–梅隆大學(xué)的課程10-701、倫敦大學(xué)學(xué)院的課程GI13/4C60、猶他大學(xué)的課程CS6300和華盛頓大學(xué)的課程CSE573。
最后,李崇博士非常感謝他的博士導(dǎo)師Nicola Elia。Elia教授對科學(xué)研究的嚴(yán)謹(jǐn)態(tài)度和方法,特別是他在最優(yōu)反饋控制和信息理論方面令人印象深刻的見解,極大地影響了本書的寫作方式。事實(shí)上,最優(yōu)反饋控制一直被視為強(qiáng)化學(xué)習(xí)歷史上的兩條主要線索之一。而另一條線索來自動物學(xué)習(xí)心理學(xué)。本書是對反饋控制理論和反饋信息理論的長期思考和深入研究的直接成果。邱美康教授感謝他的研究小組成員蓋珂珂教授和邱龍飛先生在將強(qiáng)化學(xué)習(xí)應(yīng)用于網(wǎng)絡(luò)安全方面的研究洞察力和奉獻(xiàn)精神。我們相信由人工智能引領(lǐng)的新興領(lǐng)域?qū)母旧细淖兪澜、人類和整個宇宙。
Reinforcement Learning for Cyber-Physical Systems: with Cybersecurity Case Studies
出版者的話
譯者序
前言
作者簡介
第一部分 介紹
第1章 強(qiáng)化學(xué)習(xí)概述 2
1.1 強(qiáng)化學(xué)習(xí)綜述 2
1.1.1 引言 2
1.1.2 與其他機(jī)器學(xué)習(xí)方法的比較 4
1.1.3 強(qiáng)化學(xué)習(xí)示例 6
1.1.4 強(qiáng)化學(xué)習(xí)應(yīng)用 7
1.2 強(qiáng)化學(xué)習(xí)的發(fā)展歷史 9
1.2.1 傳統(tǒng)的強(qiáng)化學(xué)習(xí) 9
1.2.2 深度強(qiáng)化學(xué)習(xí) 11
1.3 強(qiáng)化學(xué)習(xí)的仿真工具 12
1.4 本章小結(jié) 13
第2章 信息物理系統(tǒng)和網(wǎng)絡(luò)安全概述 14
2.1 引言 14
2.2 信息物理系統(tǒng)研究示例 16
2.2.1 資源分配 16
2.2.2 數(shù)據(jù)傳輸與管理 18
2.2.3 能源控制 18
2.2.4 基于模型的軟件設(shè)計 19
2.3 網(wǎng)絡(luò)安全威脅 20
2.3.1 網(wǎng)絡(luò)安全的對手 20
2.3.2 網(wǎng)絡(luò)安全的目標(biāo) 21
2.4 本章小結(jié) 26
2.5 練習(xí) 26
第二部分 強(qiáng)化學(xué)習(xí)在信息物理系統(tǒng)中的應(yīng)用
第3章 強(qiáng)化學(xué)習(xí)問題 30
3.1 多臂賭博機(jī)問題 30
3.1.1 ε-greedy算法 33
3.1.2 softmax算法 35
3.1.3 UCB算法 36
3.2 上下文賭博機(jī)問題 37
3.3 完整的強(qiáng)化學(xué)習(xí)問題 39
3.3.1 強(qiáng)化學(xué)習(xí)的要素 40
3.3.2 馬爾可夫決策過程介紹 41
3.3.3 值函數(shù) 42
3.4 本章小結(jié) 45
3.5 練習(xí) 45
第4章 基于模型的強(qiáng)化學(xué)習(xí) 49
4.1 引言 49
4.2 動態(tài)規(guī)劃 51
4.2.1 策略迭代法 52
4.2.2 價值迭代法 55
4.2.3 異步動態(tài)規(guī)劃 56
4.3 部分可觀察馬爾可夫決策過程 58
4.4 連續(xù)馬爾可夫決策過程 61
4.4.1 惰性近似 61
4.4.2 函數(shù)近似 62
4.5 本章小結(jié) 63
4.6 練習(xí) 64
第5章 無模型強(qiáng)化學(xué)習(xí) 66
5.1 引言 66
5.2 強(qiáng)化學(xué)習(xí)預(yù)測 66
5.2.1 蒙特卡羅學(xué)習(xí) 66
5.2.2 時序差分學(xué)習(xí) 69
5.3 強(qiáng)化學(xué)習(xí)控制 71
5.3.1 蒙特卡羅控制 71
5.3.2 基于時序差分的控制 72
5.3.3 策略梯度 77
5.3.4 actor-critic 81
5.4 高級算法 84
5.4.1 期望Sarsa 84
5.4.2 雙Q-learning 85
5.5 本章小結(jié) 85
5.6 練習(xí) 86
第6章 深度強(qiáng)化學(xué)習(xí) 90
6.1 引言 90
6.2 深度神經(jīng)網(wǎng)絡(luò) 90
6.2.1 卷積神經(jīng)網(wǎng)絡(luò) 92
6.2.2 循環(huán)神經(jīng)網(wǎng)絡(luò) 94
6.3 深度學(xué)習(xí)在值函數(shù)上的應(yīng)用 95
6.4 深度學(xué)習(xí)在策略函數(shù)上的應(yīng)用 100
6.4.1 DDPG 102
6.4.2 A3C 104
6.5 深度學(xué)習(xí)在強(qiáng)化學(xué)習(xí)模型上的應(yīng)用 107
6.6 深度強(qiáng)化學(xué)習(xí)計算效率 108
6.7 本章小結(jié) 109
6.8 練習(xí) 109
第三部分 案例研究
第7章 強(qiáng)化學(xué)習(xí)與網(wǎng)絡(luò)安全 112
7.1 傳統(tǒng)的網(wǎng)絡(luò)安全方法 112
7.1.1 傳統(tǒng)的網(wǎng)絡(luò)安全技術(shù) 112
7.1.2 新興網(wǎng)絡(luò)安全威脅 113
7.2 強(qiáng)化學(xué)習(xí)在網(wǎng)絡(luò)安全中的應(yīng)用 114
7.2.1 移動群智感知中的虛假感知攻擊 114
7.2.2 認(rèn)知無線電網(wǎng)絡(luò)中的安全強(qiáng)化 115
7.2.3 移動邊緣計算中的安全問題 117
7.2.4 網(wǎng)絡(luò)安全分析師的動態(tài)調(diào)度 118
7.3 本章小結(jié) 119
7.4 練習(xí) 119
第8章 案例研究:智能電網(wǎng)中的在線網(wǎng)絡(luò)攻擊檢測 120
8.1 引言 120
8.2 系統(tǒng)模型和狀態(tài)估計 122
8.2.1 系統(tǒng)模型 122
8.2.2 狀態(tài)估計 123
8.3 問題描述 124
8.4 解決方案 127
8.5 仿真結(jié)果 130
8.5.1 仿真設(shè)計與參數(shù)設(shè)置 130
8.5.2 性能評估 130
8.6 本章小結(jié) 134
第9章 案例研究:擊敗中間人攻擊 135
9.1 引言 135
9.2 強(qiáng)化學(xué)習(xí)方法 137
9.2.1 狀態(tài)空間 137
9.2.2 行動空間 139
9.2.3 獎勵 139
9.3 實(shí)驗和結(jié)果 139
9.3.1 模型訓(xùn)練 140
9.3.2 在線實(shí)驗 141
9.4 討論 143
9.4.1 基于探測器的檢測系統(tǒng) 143
9.4.2 運(yùn)用SDN/OpenFlow使模型實(shí)用 144
9.5 本章小結(jié) 144
參考文獻(xiàn) 145
索引 161