內容簡介
本書綜合地理信息科學、計算機科學等領域知識,結合團隊積累的研究案例,對高性能時空計算的理論、方法進行總結和凝練,可以指導海量時空數據處理、分析、挖掘等具體實踐。全書共9章。第1章闡述高性能時空計算的現狀及發展趨勢;第2章介紹並行計算的基本概念、通用流程、評價方法等;第3~5章分別介紹多核、集群、眾核環境下的時空分析算法設計與案例;第6章結合雲計算的理論介紹時空大數據的存儲與管理,包括分散式檔案系統/非關係資料庫下時空剖分、時空索引、查詢訪問等關鍵技術;第7章結合記憶體計算的理論介紹時空大數據的處理與可視化,具體包括時空大數據LOD方法、大規模POI數據/點雲數據的可視化案例等;第8章介紹大規模時空過程模擬的方法與案例,包括元胞自動機、多智慧型體模型並行化及不同領域的套用;第9章介紹深度學習與時空計算的融合,結合具體案例講述高性能計算支持的時空智慧型分析。
圖書目錄
目錄
第1章 高性能時空計算現狀及趨勢 1
1.1 背景 1
1.2 時空大數據 1
1.3 高性能軟硬體發展概況 3
1.3.1 硬體架構 3
1.3.2 典型的高性能計算模型及框架 5
1.4 時空大數據並行處理與分析進展 7
1.4.1 時空大數據存儲與管理 7
1.4.2 時空大數據並行分析 10
1.4.3 時空大數據挖掘 12
1.5 當前研究發展趨勢 14
參考文獻 14
第2章 並行計算基礎 18
2.1 並行計算概述 18
2.1.1 並行計算基本概念 18
2.1.2 並行計算環境分類 19
2.2 並行程式設計方法 22
2.2.1 並行計算實現模式 22
2.2.2 並行算法設計過程 23
2.3 並行程式性能評價 28
2.3.1 加速比及效率 28
2.3.2 阿姆達爾定律 28
2.4 並行程式設計案例 29
參考文獻 31
第3章 多核計算支持的時空分析算法設計 32
3.1 多核計算概述 32
3.2 多核CPU發展 32
3.3 多執行緒開發模型 34
3.3.1 PThreads 35
3.3.2 OpenMP 37
3.3.3 Intel TBB 39
3.4 套用1:基於並行流水線的IDW空間插值 40
3.4.1 空間插值 40
3.4.2 基於並行流水線的IDW插值 42
3.4.3 實驗結果 44
3.5 套用2:大規模點雲的並行不規則三角網構建 45
3.5.1 Delaunay三角網 45
3.5.2 基於分治和並行流水線計算的並行Delaunay三角網構建 47
3.5.3 實驗結果 50
參考文獻 51
第4章 基於集群的時空分析算法設計 52
4.1 集群計算概述 52
4.2 集群的體系結構 52
4.2.1 集群的分類 53
4.2.2 集群開發模型 53
4.3 MPI並行編程 54
4.3.1 MPI簡介 54
4.3.2 訊息通信模式 57
4.4 套用1:基於MPI的k-均值聚類算法 60
4.4.1 k-均值聚類(k-means)算法簡介 60
4.4.2 基於MPI的k-means聚類 60
4.4.3 實驗結果及分析 63
4.5 套用2:基於MPI的克里金插值 65
4.5.1 克里金插值簡介 65
4.5.2 基於MPI的分散式克里金插值 66
4.5.3 實驗結果及分析 68
參考文獻 70
第5章 基於GPGPU的時空分析算法設計 72
5.1 眾核計算概述 72
5.2 GPU技術發展 73
5.2.1 GPU體系架構變遷 73
5.2.2 現代GPU體系架構 74
5.2.3 GPGPU開發模型 78
5.3 CUDA模型 79
5.3.1 CUDA編程模型 79
5.3.2 CUDA加速庫 85
5.4 套用1:基於CUDA的河網提取 87
5.4.1 河網提取算法 87
5.4.2 基於CUDA的河網提取實驗 89
5.4.3 實驗結果及分析 91
5.5 套用2:基於CUDA的Bellman-Ford最短路徑搜尋 92
5.5.1 Bellman-Ford最短路徑算法 92
5.5.2 基於CUDA的Bellman-Ford最短路徑搜尋 93
5.5.3 實驗結果及分析 94
參考文獻 95
第6章 時空大數據分散式存儲與管理 97
6.1 雲計算概述 97
6.1.1 雲計算的定義 97
6.1.2 雲計算的特徵 98
6.1.3 主流雲計算平台及產品 99
6.2 分散式檔案系統 100
6.2.1 分散式檔案系統概述 100
6.2.2 典型分散式檔案系統 101
6.2.3 HDFS簡介 102
6.3 分散式NoSQL資料庫 103
6.3.1 分散式NoSQL資料庫概述 103
6.3.2 文檔資料庫MongoDB 107
6.3.3 列族資料庫HBase 110
6.4 時空數據組織與管理關鍵技術 113
6.4.1 時空數據存儲模式的發展 113
6.4.2 時空索引和編碼技術 114
6.5 套用1:基於HBase的時空軌跡數據存儲與管理 118
6.5.1 時空軌跡數據存儲管理方法概述 118
6.5.2 系統實現及關鍵技術 119
6.5.3 實驗結果及分析 122
6.6 套用2:基於MongoDB的海量地圖瓦片服務 125
6.6.1 地圖瓦片服務 125
6.6.2 系統實現及關鍵技術 126
6.6.3 實驗結果及分析 128
參考文獻 132
第7章 時空大數據可視化 134
7.1 時空大數據可視化概述 1347.1.1 時空大數據可視化特徵 134
7.1.2 時空大數據可視化流程 135
7.1.3 時空大數據可視化發展概況 135
7.2 LOD技術 137
7.2.1 LOD概述 137
7.2.2 LOD構建方法 138
7.3 分散式記憶體計算框架 139
7.3.1 Spark簡介 139
7.3.2 Spark記憶體數據抽象 141
7.3.3 Spark計算模式 141
7.4 套用1:海量LiDAR點雲數據可視化系統 143
7.4.1 點雲數據可視化 143
7.4.2 系統實現及關鍵技術 144
7.4.3 實驗結果及分析 147
7.5 套用2:海量POI數據可視化系統 150
7.5.1 POI數據可視化背景 150
7.5.2 系統實現及關鍵技術 151
7.5.3 實驗結果及分析 157
參考文獻 160
第8章 分散式地理時空過程模擬 162
8.1 地理過程模擬概述 162
8.1.1 地理系統與地理過程 162
8.1.2 地理過程模擬 163
8.2 地理過程模擬模型 164
8.2.1 地理元胞自動機 164
8.2.2 多智慧型體模型 165
8.3 地理過程分散式模擬 167
8.3.1 並行CA模擬 167
8.3.2 並行ABM模擬 168
8.4 套用1:實時信息支持下大規模微觀交通過程模擬 169
8.4.1 微觀交通過程模擬 169
8.4.2 大規模微觀交通過程分散式模擬 170
8.4.3 實驗結果及分析 173
8.5 套用2:基於元胞自動機的分散式林火蔓延模擬 176
8.5.1 林火蔓延模型 176
8.5.2 分散式林火蔓延模擬 177
8.5.3 實驗結果及分析 179
參考文獻 181
第9章 高性能計算支持的深度學習與時空計算 185
9.1 高性能計算與人工智慧 185
9.2 深度學習概述 188
9.2.1 卷積神經網路 189
9.2.2 圖卷積神經網路 191
9.2.3 循環神經網路 194
9.3 深度學習框架與分散式學習 195
9.3.1 典型深度學習框架 195
9.3.2 分散式學習 197
9.4 套用1:基於分散式學習的遙感影像道路提取 201
9.4.1 基於遙感影像的道路提取模型 201
9.4.2 基於全卷積網路的高解析度遙感影像道路提取 202
9.4.3 實驗結果及分析 203
9.5 套用2:基於路網劃分的大規模交通過程並行預測 209
9.5.1 交通預測模型 209
9.5.2 基於路網劃分的大規模交通並行預測 210
9.5.3 實驗結果及分析 213
參考文獻 216