PREFACE
前言
快速的城市化導(dǎo)致了許多大城市的擴(kuò)張,在使生活變得現(xiàn)代化的同時,也帶來了巨大的挑戰(zhàn),如空氣污染、能源消耗和交通擁堵等。考慮到城市的復(fù)雜和動態(tài)環(huán)境,幾年前要應(yīng)對這些挑戰(zhàn)似乎是不可能的。而現(xiàn)在,感知技術(shù)和大規(guī)模計算基礎(chǔ)設(shè)施已經(jīng)產(chǎn)生了各種大數(shù)據(jù),如人類流動、氣象、交通模式和地理數(shù)據(jù)等。了解相應(yīng)的大數(shù)據(jù)意味著對一座城市有了充分的了解。如果對大數(shù)據(jù)的使用得當(dāng),將有助于我們應(yīng)對這些挑戰(zhàn)。此外,云計算和人工智能等計算技術(shù)的興起為我們提供了前所未有的數(shù)據(jù)處理能力。
在這種情況下,城市計算作為一個跨學(xué)科領(lǐng)域蓬勃發(fā)展,并將計算機科學(xué)與傳統(tǒng)的城市相關(guān)領(lǐng)域(如城市規(guī)劃、交通、環(huán)境科學(xué)、能源工程、經(jīng)濟(jì)學(xué)和社會學(xué)等)相結(jié)合。城市計算旨在釋放城市數(shù)據(jù)中的知識力量,解決城市中的重大問題,從而實現(xiàn)人、城市運營系統(tǒng)和環(huán)境之間的三贏。簡而言之,城市計算將通過大數(shù)據(jù)、云計算、人工智能等先進(jìn)計算技術(shù)來應(yīng)對城市挑戰(zhàn)。
多年來,人們一直在討論智慧城市的愿景,希望整合多種信息和通信技術(shù)來源來提高生活質(zhì)量。然而,目前尚不清楚如何實現(xiàn)這樣一個廣闊的愿景。城市計算沒有停留在對智慧城市愿景無休止的討論中,而是在以數(shù)據(jù)為中心的計算框架中通過具體的方法來應(yīng)對特定的城市挑戰(zhàn),該框架包括城市感知、城市數(shù)據(jù)管理、城市數(shù)據(jù)分析及所提供服務(wù)。
盡管已有其他幾本關(guān)于城市信息學(xué)的書,但這是一本專門研究城市計算的書,涵蓋范圍廣泛,敘述嚴(yán)謹(jǐn)。本書從計算機科學(xué)的角度介紹了城市計算的一般框架、關(guān)鍵研究問題、方法和應(yīng)用。具體地,本書專注于數(shù)據(jù)和計算,將城市計算與基于經(jīng)典模型和經(jīng)驗假設(shè)的傳統(tǒng)城市科學(xué)區(qū)分開來。
本書面向高年級本科生、研究生、研究人員和專業(yè)人士,涵蓋了城市計算領(lǐng)域的主要基礎(chǔ)知識和關(guān)鍵高級主題。每一章都是一個教程,介紹城市計算的一個重要方面,并為相關(guān)研究提供許多有價值的參考。本書為研究人員和應(yīng)用程序開發(fā)人員全面講解了城市感知、城市數(shù)據(jù)管理、城市數(shù)據(jù)分析及所提供服務(wù)的一般概念、技術(shù)和應(yīng)用,幫助讀者探索這一領(lǐng)域并開發(fā)新的方法和應(yīng)用程序,最終實現(xiàn)更綠色、更智能的城市。本書也為研究生和其他感興趣的讀者提供了城市計算研究領(lǐng)域的最新進(jìn)展。
本書根據(jù)城市計算的框架進(jìn)行組織,如下圖所示,由四個部分組成:概念和框架、城市感知與數(shù)據(jù)采集、城市數(shù)據(jù)管理、城市數(shù)據(jù)分析。

圖 城市計算框架
本書的第一部分(第1章和第2章)給出城市計算的概述。
第1章介紹了城市計算的關(guān)鍵概念和框架,從計算機科學(xué)的角度討論了框架各層面臨的主要挑戰(zhàn)。介紹了城市的數(shù)據(jù)來源,根據(jù)數(shù)據(jù)結(jié)構(gòu)和時空特性將城市數(shù)據(jù)分為六類。該章末尾列出了一些公共數(shù)據(jù)集。
第2章介紹了城市計算在不同領(lǐng)域的典型應(yīng)用,包括交通、城市規(guī)劃、環(huán)境保護(hù)、能源、經(jīng)濟(jì)、公共安全以及社交和娛樂領(lǐng)域。這些應(yīng)用拓寬了我們的視野,提出了新的研究課題,也激發(fā)了新的想法。
本書的第二部分(第3章)介紹了數(shù)據(jù)的來源和收集方法。
第3章介紹了城市感知的四種范式,包括靜態(tài)感知、移動感知、被動人群感知和主動人群感知。前兩種范式屬于以傳感器為中心的感知,后兩種范式屬于以人為中心的感知。對于以傳感器為中心的感知模式,介紹了四種傳感器部署模型。對于以人為中心的感知范式,提出了參與者招募和任務(wù)設(shè)計的技術(shù)。最后介紹了三類模型,包括空間模型、時間模型和時空模型,用于填補地質(zhì)傳感器數(shù)據(jù)中的缺失值。
本書的第三部分由第4~6章組成,介紹了空間數(shù)據(jù)和時空數(shù)據(jù)的數(shù)據(jù)管理。從基本的索引和檢索算法開始,討論了使用云計算平臺來管理空間數(shù)據(jù)和時空數(shù)據(jù)的技術(shù)。
第4章首先從建立索引、服務(wù)時空范圍查詢、服務(wù)最近鄰查詢和更新索引四個角度介紹了四種廣泛使用的空間數(shù)據(jù)索引結(jié)構(gòu),包括基于網(wǎng)格的索引、基于四叉樹的索引、k-d樹和R樹。然后介紹了管理時空數(shù)據(jù)的技術(shù),包括移動對象數(shù)據(jù)庫和軌跡數(shù)據(jù)管理。前者更關(guān)心移動對象在(通常是最近的)時間戳上的具體位置,后者涉及移動對象在給定時間間隔內(nèi)經(jīng)過的連續(xù)運動(例如路徑)。關(guān)于移動對象數(shù)據(jù)庫,描述了三種查詢和兩種索引方法。一種索引方法在每個時間戳上建立一個空間索引,并在連續(xù)的時間間隔內(nèi)重用索引的未更改子結(jié)構(gòu)。另一種索引方法將時間視為第三維度,將空間索引結(jié)構(gòu)從管理二維空間數(shù)據(jù)擴(kuò)展到管理三維時空數(shù)據(jù)。關(guān)于軌跡數(shù)據(jù)管理,提出了三種類型的查詢,包括范圍查詢、k近鄰查詢和路徑查詢,還為軌跡數(shù)據(jù)設(shè)計了不同距離度量。最后介紹了用于管理多個數(shù)據(jù)集的混合索引結(jié)構(gòu)。
第5章從存儲、計算和應(yīng)用程序接口的角度介紹了云計算平臺中的主要組件。使用Microsoft Azure作為示例平臺來描述每個組件的框架和一般使用過程。Microsoft Azure中的存儲進(jìn)一步由SQL Server、Azure存儲和Redis組成。Microsoft Azure計算資源包括虛擬機、云服務(wù)和HDInsight。HDInsight是Microsoft Azure中的一個分布式計算組件,用于執(zhí)行大規(guī)模數(shù)據(jù)預(yù)處理、管理和挖掘,并包含廣泛使用的Hadoop、Spark和Storm。Azure提供的應(yīng)用程序接口由Web應(yīng)用程序、移動應(yīng)用程序和API應(yīng)用程序組成。這些組件確保了城市計算應(yīng)用程序的順利和可靠實現(xiàn)。
第6章介紹了分別為六種類型的時空數(shù)據(jù)設(shè)計的數(shù)據(jù)管理方案,這些方案使當(dāng)前的云計算平臺能夠以最小的工作量管理海量和動態(tài)的時空數(shù)據(jù)。對于每種類型的數(shù)據(jù),根據(jù)是否使用空間索引或時空索引以及是否將其部署在分布式系統(tǒng)上,提出了四種數(shù)據(jù)管理方案。不是從根本上重建一個新的平臺,而是利用當(dāng)前云上的現(xiàn)有資源和架構(gòu),如云存儲和HDInsight,為空間數(shù)據(jù)和時空數(shù)據(jù)創(chuàng)建一個增強的數(shù)據(jù)管理平臺。四種方案中最高級的數(shù)據(jù)管理方案將空間索引和時空索引(例如,基于網(wǎng)格的索引、R樹和3D R樹)集成到分布式計算系統(tǒng)中,如HDInsight中的Spark和Storm。這種高級的方案結(jié)合了雙方的優(yōu)勢,使我們能夠更高效地處理更大規(guī)模的時空數(shù)據(jù),同時使用更少的計算資源。
本書的第四部分由第7~10章組成,介紹了從城市數(shù)據(jù)中挖掘知識的基本技術(shù)和高級主題。從基本的數(shù)據(jù)挖掘算法開始,介紹了針對時空數(shù)據(jù)設(shè)計的高級機器學(xué)習(xí)技術(shù)以及跨領(lǐng)域知識融合方法。最后討論了城市計算的一些高級主題,如選擇有用的數(shù)據(jù)集、軌跡數(shù)據(jù)挖掘、將數(shù)據(jù)管理與機器學(xué)習(xí)相結(jié)合以及交互式視覺數(shù)據(jù)分析等。
第7章介紹了數(shù)據(jù)挖掘的一般框架,包括兩個主要部分:數(shù)據(jù)預(yù)處理和數(shù)據(jù)分析。數(shù)據(jù)預(yù)處理部分又包括數(shù)據(jù)清洗、數(shù)據(jù)轉(zhuǎn)換和數(shù)據(jù)集成。數(shù)據(jù)分析由各種數(shù)據(jù)挖掘模型、結(jié)果表示和評估組成。根據(jù)模型要完成的任務(wù),數(shù)據(jù)挖掘模型可以分為五大類:頻繁模式挖掘、聚類、分類、回歸和異常值檢測。對于每一類模型,該章在從空間數(shù)據(jù)和時空數(shù)據(jù)中挖掘知識的背景下介紹了其總體思想和具體示例。
第8章首先討論了時空數(shù)據(jù)與圖像和文本數(shù)據(jù)相比的不同性質(zhì)。空間屬性包括空間距離和空間層次。時間屬性由時間接近度、周期和趨勢組成。這些獨特的屬性使得需要專門為時空數(shù)據(jù)設(shè)計高級機器學(xué)習(xí)算法。然后,該章介紹了時空數(shù)據(jù)背景下六類機器學(xué)習(xí)算法(包括協(xié)同過濾、矩陣分解、張量分解、概率圖模型、深度學(xué)習(xí)和強化學(xué)習(xí))的原理,并提供了豐富的實例來展示這些機器學(xué)習(xí)算法應(yīng)該如何適應(yīng)時空數(shù)據(jù)。例如,耦合矩陣分解被設(shè)計為能夠進(jìn)行位置推薦和交通狀況估計。貝葉斯網(wǎng)絡(luò)用于推斷交通量、進(jìn)行地圖匹配和發(fā)現(xiàn)區(qū)域的潛在功能。特定的馬爾可夫隨機場用于預(yù)測用戶的交通方式和一個地方的空氣質(zhì)量。最后提出了一個獨特的專門用于預(yù)測城市中每個地區(qū)的人群流量的深度學(xué)習(xí)模型。
傳統(tǒng)的數(shù)據(jù)挖掘通常處理來自單個域的數(shù)據(jù)。在大數(shù)據(jù)時代,我們面臨著來自不同領(lǐng)域不同來源的無數(shù)數(shù)據(jù)集。這些數(shù)據(jù)集由多個模態(tài)組成,每個模態(tài)都有不同的表示、分布、規(guī)模和密度。融合多個數(shù)據(jù)集的目的包括填充缺失值、預(yù)測未來、推斷因果關(guān)系、分析對象、排序和檢測異常。在大數(shù)據(jù)研究中,能夠釋放多個不同(但可能有關(guān))數(shù)據(jù)集中知識的能量至關(guān)重要,這從本質(zhì)上區(qū)分了大數(shù)據(jù)和傳統(tǒng)的數(shù)據(jù)挖掘任務(wù)。這就需要高級的技術(shù),以在機器學(xué)習(xí)和數(shù)據(jù)挖掘任務(wù)中有機地融合來自各種數(shù)據(jù)集的知識。第9章介紹了三類知識融合方法,包括基于階段的方法、基于特征的方法和基于語義意義的方法。最后一類融合方法進(jìn)一步分為四組:基于多視圖、基于相似性、基于概率依賴和基于遷移學(xué)習(xí)的方法。這些方法側(cè)重于知識融合,而不是模式映射和數(shù)據(jù)合并,顯著區(qū)分了跨領(lǐng)域數(shù)據(jù)融合和數(shù)據(jù)庫社區(qū)中研究的傳統(tǒng)數(shù)據(jù)融合。該章不僅介紹了每一類方法的原理,還介紹了使用這些技術(shù)處理真實大數(shù)據(jù)問題的有價值的示例。此外,該章將現(xiàn)有的研究放在一個框架內(nèi),探討了不同知識融合方法之間的關(guān)系和差異。
第10章在前幾章介紹的基本技術(shù)的基礎(chǔ)上討論了一些城市數(shù)據(jù)分析的高級主題。第一,給定一個城市計算問題,通常需要確定應(yīng)該選擇哪些數(shù)據(jù)集來解決給定問題。通過選擇正確的數(shù)據(jù)集,我們更有可能高效地解決問題。第二,軌跡數(shù)據(jù)具有復(fù)雜的數(shù)據(jù)模型,包含了關(guān)于移動對象的豐富知識,從而需要獨特的數(shù)據(jù)挖掘技術(shù)。第三,從大規(guī)模數(shù)據(jù)集中提取具有深遠(yuǎn)意義的知識需要高效的數(shù)據(jù)管理技術(shù)和有效的機器學(xué)習(xí)模型,這兩種技術(shù)的有機結(jié)合對于完成城市計算任務(wù)是必不可少的。第四,解決城市計算問題需要數(shù)據(jù)科學(xué)知識和領(lǐng)域知識。如何將人類智能與機器智能相結(jié)合是一個值得討論的前沿課題。交互式視覺數(shù)據(jù)分析可能是解決這一問題的一種方法。
對于年輕且不斷發(fā)展的城市計算領(lǐng)域,希望本書能提供有益的參考并且是一本實用的教程。
鄭宇
- Python數(shù)據(jù)分析入門:從數(shù)據(jù)獲取到可視化
- MongoDB管理與開發(fā)精要
- Modern Programming: Object Oriented Programming and Best Practices
- Creating Mobile Apps with Sencha Touch 2
- Voice Application Development for Android
- Neural Network Programming with TensorFlow
- Python金融數(shù)據(jù)分析(原書第2版)
- 深入淺出 Hyperscan:高性能正則表達(dá)式算法原理與設(shè)計
- 大數(shù)據(jù)技術(shù)原理與應(yīng)用:概念、存儲、處理、分析與應(yīng)用
- 中文版Access 2007實例與操作
- 從實踐中學(xué)習(xí)sqlmap數(shù)據(jù)庫注入測試
- 實現(xiàn)領(lǐng)域驅(qū)動設(shè)計
- 數(shù)據(jù)庫應(yīng)用系統(tǒng)技術(shù)
- 數(shù)字化轉(zhuǎn)型實踐:構(gòu)建云原生大數(shù)據(jù)平臺
- 數(shù)據(jù)之美:一本書學(xué)會可視化設(shè)計