余卓芮 孫怡恒 劉鈺 沈國強 劉岱寧


關(guān)鍵詞:開源;R語言;空間分析;教學(xué)改革;廣東省
1 空間分析教學(xué)的現(xiàn)狀及突出問題
空間分析是地理信息系統(tǒng)課程教學(xué)的核心環(huán)節(jié)。通過學(xué)習(xí)空間數(shù)據(jù)的分析方法,學(xué)生可以揭示地理對象在空間分布、空間形態(tài)、空間演變等方面的特征,并基于分析結(jié)果和專題地圖為現(xiàn)實問題的決策提供技術(shù)支持。本環(huán)節(jié)擬達到的教學(xué)目標(biāo)為,通過對一系列空間分析模型的講授,使學(xué)生在理解模型算法的基礎(chǔ)上,具備根據(jù)現(xiàn)實問題選取恰當(dāng)分析工具的能力,并且能夠?qū)Ψ治鼋Y(jié)果進行科學(xué)解讀,從而為現(xiàn)實問題的解決提供技術(shù)支持。但是,課堂測驗和期末考試結(jié)果顯示空間分析環(huán)節(jié)的教學(xué)效果往往較差。其中的突出問題包括:學(xué)生不能深入理解空間分析工具的計算原理,導(dǎo)致在分析工具的選擇上具有盲目性,進而在分析結(jié)果的解讀上存在較大偏差,最終無法將教學(xué)內(nèi)容應(yīng)用于對現(xiàn)實問題的分析。
與相關(guān)院校教學(xué)團隊的深入交流以及與學(xué)生的廣泛溝通中發(fā)現(xiàn),空間分析教學(xué)中出現(xiàn)的上述問題與教學(xué)使用的分析軟件有密切關(guān)系。ESRI公司出品的ArcGIS系列軟件是全球地理信息系統(tǒng)領(lǐng)域的領(lǐng)軍產(chǎn)品,在市場占有率和行業(yè)認可度上都遠遠高于同類產(chǎn)品,因此也被廣泛用于空間分析教學(xué)中。但ArcGIS應(yīng)用于教學(xué)存在明顯的局限性。除了價格高昂,還突出表現(xiàn)在作為商業(yè)軟件,其源代碼是不公開的。這使得學(xué)生只能被動地使用分析模型,模型中的很多參數(shù)不能根據(jù)現(xiàn)實需求進行調(diào)整、也很難根據(jù)現(xiàn)實需求引入或構(gòu)建新的分析模型,更不能通過查看源代碼來深入理解分析模型是如何運行的。這就導(dǎo)致學(xué)生在分析模型的選擇上具有盲目性,進而在分析結(jié)果的解讀上也往往存在偏差,甚至影響學(xué)生深入探索的積極性。由此可見,使用不開放源代碼的商業(yè)軟件,是造成空間分析教學(xué)效果較差的重要原因。
為解決這一問題,開放源代碼的R語言被嘗試引入空間分析教學(xué)。R語言是一種面向數(shù)據(jù)分析的計算機編程語言,具有免費開源、擴展性強和簡便易學(xué)等優(yōu)點,已被用于統(tǒng)計學(xué)等專業(yè)的教學(xué)中[1]。相對于不開放源代碼的商業(yè)軟件,R語言具有以下突出優(yōu)勢:1) R語言社區(qū)提供了sf和terra等擴展程序包,支持空間數(shù)據(jù)的讀取、分析和可視化,在功能上完全滿足空間分析的教學(xué)需要;2) R語言及其擴展程序包的源代碼是開放的,學(xué)生可以自由地閱讀和修改空間分析模型代碼,從而可以深入地理解分析模型的原理和計算過程,也可以針對現(xiàn)實需求自行調(diào)用、修改和編寫分析模型。這使得學(xué)生由被動地使用軟件轉(zhuǎn)為主動地對分析模型進行探索。由于R語言具有明顯優(yōu)勢,已有教師嘗試將R語言引入地理信息專業(yè)的教學(xué)中[2]。教學(xué)實踐表明,通過將開源R語言引入空間分析教學(xué),可以提高學(xué)生學(xué)習(xí)的積極性,教學(xué)效果也得到了明顯提升。
2 開源R 語言建模引入空間分析教學(xué)的主要途徑
如前所述,開源R語言作為空間分析教學(xué)工具有著突出的優(yōu)勢。將R語言建模引入空間分析教學(xué),主要包括以下三種典型途徑:
1) 將其他領(lǐng)域的分析模型引入空間分析教學(xué)。在理論和現(xiàn)實需求的推動下,很多其他學(xué)科的模型被不斷引入空間分析領(lǐng)域。由于商業(yè)軟件需要控制軟件的規(guī)模和維持軟件的穩(wěn)定性,不會將所有的相關(guān)模型都納入軟件產(chǎn)品。由此導(dǎo)致,很多空間分析實踐中經(jīng)常使用的模型,并沒有納入以ArcGIS為代表的商業(yè)軟件中。以Theil指數(shù)為例,這是經(jīng)濟學(xué)領(lǐng)域用以測度收入不平等程度的基礎(chǔ)模型。近年來它被引入空間分析領(lǐng)域,成為空間差異分析中經(jīng)常使用的模型[3],但是卻沒有被納入ArcGIS軟件中。基于R語言編寫Theil指數(shù)的計算函數(shù)并引入教學(xué)過程,可以有效地支持空間差異分析的案例教學(xué)。
2) 開放空間分析模型的參數(shù)。空間分析模型的運行往往需要輸入多個參數(shù),如果將所有參數(shù)都開放,分析軟件的界面將變得臃腫不堪,因此相關(guān)軟件往往會將部分參數(shù)進行封閉。以測度空間中心聚集性的標(biāo)準(zhǔn)距離模型為例,ArcGIS只能輸入標(biāo)準(zhǔn)距離倍數(shù)、權(quán)重字段和分組字段三個參數(shù),包括區(qū)域中心坐標(biāo)在內(nèi)的其他參數(shù)是封閉的,用戶無法進行調(diào)整。對于特定的現(xiàn)實問題,區(qū)域中心的坐標(biāo)往往需要由用戶來進行指定,否則分析會產(chǎn)生偏差。但是,這在Arc?GIS中是無法實現(xiàn)的。通過將開源R語言引入教學(xué),就可以很好的解決這一難題。R語言的源代碼是公開的,通過調(diào)整代碼,可以將封閉的參數(shù)開放給學(xué)生,從而支持空間分析的教學(xué)需求。
3) 針對具體場景開發(fā)新的分析模型。不同的應(yīng)用場景對空間分析模型的需求是不同的,因此經(jīng)常需要針對現(xiàn)實需求定制適用的分析模型。雖然ArcGIS 等成熟的商業(yè)軟件提供了腳本語言,可以通過編程定制新的分析模型。但是,腳本語言屬于“膠水”性質(zhì)的語言,只能用以“黏合”已有的模型,并不適于創(chuàng)建新的分析模型。而在R編程語言的支持下,學(xué)生可以針對具體的應(yīng)用場景,構(gòu)建適用的新型模型,并對分析結(jié)果進行解讀和驗證。這可以極大地提高學(xué)生的參與度和積極性,從而顯著地提高教學(xué)效果。
3 基于R 語言建模的空間分析教學(xué)案例
如前節(jié)所述,將R語言引入空間分析教學(xué)有三種途徑。基于教學(xué)實踐中使用的廣東省土地城市化案例,現(xiàn)對這三種途徑進行具體介紹。本案例基于Zhang等提取的不透水地表數(shù)據(jù)[4],采用Li等提出的技術(shù)框架獲得了廣東省的城市用地范圍[5],并通過楊喜等提出的土地城市化計算方法[6],計算了廣東省124 個縣級行政單元(包括縣、縣級市及市轄區(qū))的土地城市化率。基于R語言建模,可對土地城市化的空間格局進行深入分析。
3.1 引入經(jīng)濟學(xué)領(lǐng)域模型的空間差異分析
空間差異是指一定地域內(nèi)的實體普遍存在差異性。例如,廣東省一百多個縣級行政單元在土地城市化水平上存在巨大差異,很少出現(xiàn)兩個或多個行政單元的土地城市化水平完全相同的情況。
空間差異的程度可以用Theil指數(shù)來測度。Theil 指數(shù)早期被經(jīng)濟學(xué)家用來測度收入不平等的程度,近年來被引入空間分析領(lǐng)域[3],其公式為:
式中xi 和-x分別為各行政單元的土地城市化率及其均值,n 為行政單元的數(shù)量。Theil指數(shù)的取值范圍為0~ln(n),數(shù)值越大說明各行政單元之間的差異越大。
Theil指數(shù)計算結(jié)果為0.33,說明廣東省縣級行政單元的土地城市化水平存在一定的差異。為分析空間差異的來源,進一步按照行政等級將縣級單元分為兩組,其中市轄區(qū)為一組,縣和縣級市為一組。兩組的Theil指數(shù)分別為0.13和0.15,遠小于廣東省整體的Theil指數(shù)。這說明兩個行政等級分組內(nèi)部的差異較小,廣東省土地城市化在空間上的差異主要來自行政等級分組之間的差異。這可歸因于我國城市的用地指標(biāo)是按照行政等級分配的,由此導(dǎo)致行政等級較高的城市的土地開發(fā)強度也相應(yīng)較高[7]。
在本案例中,基于R語言編寫了Theil指數(shù)的計算函數(shù),將經(jīng)濟學(xué)領(lǐng)域的分析工具引入空間分析教學(xué),彌補了商業(yè)軟件ArcGIS中空間差異分析工具缺失的不足。此外,通過實例分析,學(xué)生不僅測度了空間差異的程度,還探索了空間差異的來源,這對學(xué)生科學(xué)解讀空間差異的分析結(jié)果具有明顯的助益。
3.2 開放標(biāo)準(zhǔn)距離模型參數(shù)的空間中心聚集分析
空間中心聚集是指區(qū)域要素有向區(qū)域中心聚集的趨勢。例如,距離廣東省的中心城市廣州越近,各行政單元的土地開發(fā)強度也會越高,其土地城市化水平也會相應(yīng)上升。
區(qū)域要素的空間中心聚集程度常采用加權(quán)標(biāo)準(zhǔn)距離模型進行分析[8],其公式為:
式中xi 和yi 為行政單元i 在東西和南北方向上的坐標(biāo);xc 和yc 為區(qū)域中心的坐標(biāo);wi 為計算權(quán)重,在本案例中為行政單元i 的土地城市化水平。SDw 越小,說明指向中心城市的聚集程度越高。
由公式(2) 可見,區(qū)域中心的坐標(biāo)對SDw 的計算結(jié)果有重要影響,所以應(yīng)針對應(yīng)用場景選擇適宜的區(qū)域中心。以廣東省為例,廣州市作為省會城市,是廣東省政治和文化中心,也是城市用地規(guī)模最大的城市;而且城市間的交通組織也是以廣州市為中心節(jié)點。可見,廣州市是廣東省城市發(fā)展的中心,在做中心聚集分析時應(yīng)以廣州作為區(qū)域中心來進行計算。但是,在商業(yè)軟件ArcGIS中,區(qū)域中心的坐標(biāo)被指定為輸入數(shù)據(jù)點位的加權(quán)重心坐標(biāo),是不能由用戶指定和更改的。以廣東省縣級行政單元的土地城市化分析為例,ArcGIS分析工具使用的區(qū)域中心坐標(biāo)位于東莞市境內(nèi)(圖1中B點),相對廣州市中心(圖1中A 點)偏移了45公里。顯然,這種簡單依賴算法推斷出來的“區(qū)域中心”與廣東省城市發(fā)展的空間結(jié)構(gòu)是嚴重不符的。而且SDw 的計算結(jié)果也顯示,ArcGIS的計算結(jié)果對比以廣州市為中心的計算結(jié)果,偏差了5190 米。本案例中,區(qū)域中心廣州市臨近廣東省的重心位置,因此SDw 計算結(jié)果的偏差相對較小。不難推斷,當(dāng)區(qū)域中心遠離區(qū)域重心位置時(例如,長三角地區(qū)的區(qū)域中心上海市),SDw 計算結(jié)果會出現(xiàn)更大的偏差。
從本案例可見,在商業(yè)軟件ArcGIS的空間分析工具中,部分參數(shù)是不對用戶開放的,由此導(dǎo)致其分析工具并不適用于所有的應(yīng)用場景,在某些場景中其分析結(jié)果會存在偏差。與之相對,基于開源R語言,可以將空間分析模型中的任意參數(shù)開放給學(xué)生。學(xué)生可以根據(jù)應(yīng)用需要對分析模型中的任意參數(shù)進行合理設(shè)定,從而獲得科學(xué)的分析結(jié)果。可見,在R語言的支持下,可以引導(dǎo)學(xué)生分析應(yīng)用場景的實際需求并合理設(shè)定模型的參數(shù),從而提升教學(xué)效果。
3.3 開發(fā)新模型的空間異常分區(qū)分析
空間異常分區(qū)是指明顯偏離全域整體水平的特定局域。例如,相對于廣東全省,中心城市廣州在城市規(guī)模和土地開發(fā)強度等方面都處于較高水平,屬于具有明顯優(yōu)勢的異常分區(qū)。
對特定區(qū)域的異常水平進行科學(xué)測度,是識別異常分區(qū)、分析其形成機制和制訂引導(dǎo)政策的基礎(chǔ)。但是,商業(yè)軟件ArcGIS提供的熱點分析工具只能對異常點位進行識別,缺乏分區(qū)尺度上的異常水平測度工具。基于開源R語言,在教學(xué)中可以開發(fā)針對特定區(qū)域的異常水平測度模型,公式為:
式中l(wèi)i為特定分區(qū)內(nèi)行政單元i 的屬性特征,在本案例中為土地城市化水平;-l 為特定分區(qū)內(nèi)各個行政單元屬性的均值;-g為全域各個行政單元屬性的均值。式(3) 借鑒通行的歐幾里得距離測算方法,其分子和分母分別測度了特定分區(qū)內(nèi)各個行政單元相對于分區(qū)均值和全域均值的偏離程度。異常水平指數(shù)Di 的取值范圍為0~1;特定分區(qū)內(nèi)部各單元與分區(qū)均值越接近、與全域均值的偏離越大,Di 的取值越低,表明特定分區(qū)的異常水平越高。
分析結(jié)果顯示,包含11個市轄區(qū)單元的廣州市,其Di 為0.34。由此推斷,廣州市的土地城市化水平與廣東省的整體水平之間存在較大偏差,廣州市為土地城市化的異常區(qū)域。由圖2可見,廣州各市轄區(qū)土地城市化率的均值為69%,是廣東全省均值33%的兩倍有余,廣州市的土地城市化水平明顯高于廣東省的平均水平。具體來看,廣州市11個市轄區(qū)中,僅有2個低于廣東省均值,其余9個市轄區(qū)均高于廣東省均值。按照公式(3) 中分母和分子的分別測算,廣州各市轄區(qū)相對于廣東省均值的偏離水平(221%) 遠高于其相對于廣州市均值的偏離水平(76%) 。可見,廣州市各市轄區(qū)的土地城市化水平存在向自身均值集中的態(tài)勢,而與廣東省的平均水平產(chǎn)生了較大偏離;而且其土地城市化水平明顯高于廣東省的平均水平。因此,廣州市是廣東省城市土地開發(fā)的顯著熱點區(qū)域。
以上結(jié)果,從城市土地發(fā)展機制上看,反映了廣州市作為廣東省政治文化和人口聚集的中心,對城市土地有巨大的現(xiàn)實需求,并且在城市土地開發(fā)上得到了廣東省政府的政策支持。從政策制定上看,廣州市應(yīng)適當(dāng)控制城市土地開發(fā)強度,避免過度開發(fā)導(dǎo)致的生態(tài)損失和省內(nèi)發(fā)展不平衡問題。
在本教學(xué)案例中,采用R語言開發(fā)了針對特定分區(qū)的異常水平測度模型,豐富了空間分析的模型庫。該模型本質(zhì)上是將分區(qū)內(nèi)各行政單元對本分區(qū)均值的偏離程度,與這些行政單元相對于全域均值的偏離程度進行比較。如果分區(qū)內(nèi)部各單元趨向于向本分區(qū)的均值集中,而與全域均值形成較大的偏離,這說明該分區(qū)具有較高的異常水平。在指導(dǎo)學(xué)生進行新型模型開發(fā)的過程中,學(xué)生掌握了如何將傳統(tǒng)統(tǒng)計學(xué)中對均值的偏離程度測度方法引入空間分析。相對于對新型模型開發(fā)有諸多限制的封閉的商業(yè)軟件,開源R語言為引導(dǎo)學(xué)生深入理解分析模型的算法原理,為他們提高學(xué)習(xí)的參與度和積極性提供了有力支持。
4 結(jié)論
從以上教學(xué)案例可見,商業(yè)軟件的封閉性導(dǎo)致學(xué)生在深入理解和合理選擇空間分析工具時存在困難,甚至難以科學(xué)解讀分析結(jié)果,從而導(dǎo)致課堂教學(xué)效果較差。與之相對,通過開放源代碼的R語言,學(xué)生能夠自由地查看、修改和編寫分析工具的代碼,從而得以深入理解空間分析模型的算法,并能夠合理選擇和科學(xué)解讀其分析結(jié)果,從而極大地提高學(xué)生學(xué)習(xí)的參與度和積極性,使得教學(xué)效果得到了顯著提升。
教學(xué)實踐表明,基于R語言可以將其他領(lǐng)域的分析工具引入空間分析教學(xué),以及改進現(xiàn)有的空間分析模型,還可以根據(jù)應(yīng)用場景構(gòu)建新的分析模型。通過這三種途徑,R語言可為空間分析教學(xué)提供全面和有力的支持。除了以空間分析為核心的地理信息系統(tǒng)課程教學(xué),R語言強大的建模能力還可以進一步應(yīng)用于城市地理、區(qū)域規(guī)劃等課程,為這些課程的定量化教學(xué)改革提供技術(shù)支持。
隨著大數(shù)據(jù)時代的到來,從海量數(shù)據(jù)中揭示研究對象的特征和演化規(guī)律已成為解決現(xiàn)實問題需具備的核心技能。在經(jīng)濟生產(chǎn)和社會發(fā)展中,對具備相關(guān)技能的人才具有廣泛而迫切的需求[1]。因此,廣大教師應(yīng)積極將R語言引入一線教學(xué)工作,結(jié)合現(xiàn)實需求推進教學(xué)改革,引導(dǎo)學(xué)生成為大數(shù)據(jù)時代的棟梁之才。