王臘紅,陳家贏,2?,汪善勤,2,王天巍,2,譚黃元
(1. 華中農業大學資源與環境學院,武漢 430070;2. 農業農村部長江中下游耕地保育重點實驗室,武漢 430070)
土壤分類是土壤科學的基礎,是土壤科學發展水平的標志,是信息交流的媒介,是土壤調查與制圖的前提,也是土壤科學應用推廣的動力。以診斷層和診斷特性為基礎的,定量化和標準化的土壤分類方案得到國內外廣泛認可,國際上主流的分類系統均采用定量化分類,如歐洲學派代表的世界土壤資源參比基礎(World Reference Base for Soil Resources,WRB)、美國土壤系統分類(Soil Taxonomy,ST)和聯合國糧食與農業組織(Food and Agriculture Organization,FAO)的土壤圖圖例單元。我國土壤系統分類經多年發展,形成《中國土壤系統分類檢索》(第三版)[1],分類定義了診斷現象、診斷特性和診斷層,并在此基礎上建立層次結構分明的土壤類型檢索體系。中國土壤系統分類(CST)的不斷完善使得計算機實現土壤類型的自動化檢索成為可能,從而推動土壤學發展。Fisher和Balachandran[2]研發了用于教學的土壤類型檢索系統,其主要針對土壤剖面和特征的類型檢索。Galbraith等[3]在人工智庫的基礎上,整合數據驅動和目標驅動兩個推導過程,基于確定性檢索過程補充了專家知識,一定程度上彌補了土壤類型檢索的數據缺失問題。鐘駿平等[4]首次在我國系統分類的基礎上,建立了基于診斷層和診斷特性的CST檢索系統。劉光等[5]采用數據庫管理、地理信息系統(Geographic Information System,GIS)、面向對象編程技術、瀏覽器/服務器模式(Browser/Sever)和多層數據庫技術等研究方法,開發了基于Browser/ Sever體系的CST檢索系統。CST檢索系統要求輸入的土壤剖面特征信息全面且準確,但在實際應用中常因數據不完整而無法實施,現有的系統均補充專家知識或環境發生信息來輔助檢索過程,該類檢索為不確定過程。本文分析人工檢索過程基礎上,建立本體數據模型和通用邏輯謂詞來實現定量化的土壤類型檢索。
汪善勤等[6-7]將診斷層和診斷特性作為一種專家知識,結合GIS等土壤發生環境信息,提出了土壤分類決策樹的構造方式和推理方法。但該種土壤類型識別方式忽視了分類體系本身處于不斷完善中,導致專家知識更新困難。土壤類型邊界的更新是基于整個推理過程的更新,邱琳和李安波[8]基于CST的分類規則,利用規則引擎和RuleML規則描述語言降低檢索規則和運行引擎之間的耦合。該研究實現了土壤類型自動檢索的規則庫與推理過程分離,增強了土壤類型自動檢索系統的可拓展性,降低其因分類規則變化而引起的維護和升級的難度。上述檢索系統的研究將土壤類型判別規則與數據分離開,能適應土壤分類的不斷發展和更新。
此外,現有的檢索系統均依賴大量的土壤數據,有效地組織與管理土壤數據是降低檢索系統復雜度的關鍵。為了保證數據的通用性,多家土壤學組織聯合制定了SoilML作為全球土壤數據交換的模型,針對SOTER數據庫而提出SoTerML數據交互規范[9]。澳大利亞定義了OzSoilML用于土壤和地形數據的交換[10]。ANZSoilML則是澳大利亞和新西蘭共同發布的兼容OGC地理信息服務規范的土壤和地形數據交換數據模型[11]。但這些土壤信息交換的抽象模型均將土壤類型作為土體的基本屬性特征,未將土壤類型的邊界作為土壤交換模型的組成部分。
綜上所述,基于CST的土壤類型自動檢索的研究已經取得了一定的成果并在不斷改進中,但這些檢索模型均是以土壤特征為檢索對象,通過傳統計算機語言表達土壤特征的范圍以及土壤特征之間復雜的邏輯關系,檢索語言繁瑣且冗余。其次,土壤信息的載體依據土壤空間結構可分為土壤層次(Horizon)、剖面(Profile)、單個土體(Pedon)和聚合土體(Polypedon),但現有的檢索模型忽略了這一特點,并未將上述結構區分開來,不利于土壤信息的管理,并增大了分類規則表達的復雜度。因此,本文以土壤發生學,土壤地理學為理論基礎建立關于土壤實體的本體模型表達土壤的空間結構;總結歸納土壤特征值的特點,建立土壤特征模型來統一土壤特征的類型,使得土壤特征在檢索規則中被規范化表達;將CST檢索規則中土壤特征的條件約束以及特征之間的邏輯關系進行封裝,將土壤類型與診斷對象視為規則邊界,建立關于土壤類型和診斷對象的本體模型,將檢索對象從土壤特征值的范圍匹配轉換為土壤實體與土壤類型、診斷對象之間隸屬關系的判別,并通過定義的謂詞邏輯來表達。這種判別方法使得規則表達的語言更為精簡直觀,與傳統的條件嵌套語句相比更符合人類的認知。
土壤是覆蓋地球表面的一層不連續疏松物質,因此具有空間結構。土壤學中,土壤空間結構分別從聚合土體、單個土體、剖面和土層進行表達,這四個基本概念同時具備空間上的邏輯關系。土壤剖面是指從地表向下挖掘至母質層所裸露的一段垂直切面;土層是土壤剖面上表現出的水平層狀構造,它反映了土壤形成過程中物質的遷移、轉化和累積的特點[12];單個土體是土壤剖面的立體化形式,是體積最小的土壤三維實體[13];聚合土體是兩個以上的單個土體組成的群體,在土壤制圖上為最小制圖單位,在分類上則為基本分類單位。本文以土壤地理學與土壤分類學為理論基礎,將土壤作為可解剖的實體,建立上述四種空間結構的土壤本體模型。進一步,明確結構之間的邏輯關系并定義相應的謂詞邏輯來表達這些關系。
本文在四種土壤空間結構的基礎上抽象出土壤結構的頂級本體概念——抽象土壤對象,該對象作為所有空間結構本體概念實例化的基礎,并包含土壤的特征屬性。土層根據其物質組成進一步劃分出土壤基質、新生體、填充物和侵入體等實體對象。此外,模型還定義了地理信息類型和多媒體類型與單個土體關聯,地理信息類描述土體的經緯度、高程等空間信息;多媒體類描述土體周圍的自然景觀照等多媒體信息。
上述土壤空間結構之間的關系包括繼承(泛化)、實現、聚合和組成(強聚合)。其中,四種基本土壤空間結構均繼承自抽象土壤對象,且每個土壤結構通過各自具體特征進行實例化。組成關系在空間上表現為連續性,是一種強聚合,如:聚合土體必然由連續的單個土體組成,剖面由若干連續的土層組成。聚合關系則表現為較弱的依賴性,如土層中可能包含也可能不包含新生體。
本文基于土壤空間結構之間的組成與聚合關系定義了一組一階謂詞INCLUDE與INCLUDED,語義上理解為“包含”與“被包含”。組成和聚合關系為一對多的映射,即INCLUDE返回被包含對象集合,INCLUDED返回一個包含對象。例如,INCLUDE(p)返回被剖面p(下文均以p代表剖面)包含的所有土層,INCLUDED(h)返回包含土層h(下文均以h代表土壤層次)的一個剖面。該組謂詞的定義使得檢索系統既在獨立表達土壤結構概念的同時又實現了它們之間的組合關系。
此外,土壤實體的描述是建立在定量化的土壤特征的基礎之上,而土壤特征也依附于土壤實體而存在,因此本文通過一組二元一階謂詞GET_ATTRIBUTE(soil,attribute)和SET_ATTRIBUTE(soil,attribute)表達土壤實體與土壤特征的關系,其中soil為土壤實體,attribute為土壤特征,謂詞GET_ATTRIBUTE(soil,attribute)的語義為“獲取土壤實體對象的某一特征值”,其返回值為特征attribute的屬性值,謂詞HAS_ATTRIBUTE(soil,attribute)的語義為“判斷某一特征值是否屬于土壤實體對象”,其返回值為布爾值。
本文除了在空間結構拓撲關系的描述中引入GML表達剖面、單個土體和聚合土體之間的空間關系,還定義了基于深度的土層位置關系RELATION(hi,hj),采用九交矩陣實現定量化描述。其定義為:設hi、hj是同一剖面中任意兩個土層,B表示土層的水平邊界,I表示土層的內部,E表示土層的外部。若hi、hj交集為空,則值為0,非空則為1(式(1))。針對兩個土層之間的9種位置關系:上部非接觸、上部接觸、上部嵌入、下部非接觸、下部接觸、下部嵌入、包含、被包含以及重合,矩陣RELATION(hi,hj)具有9個有效值,并為每個矩陣值定義了相應的二元一階謂詞表達其位置關系的語義:
ABOVE(hi,hj)、ABOVE_TOUTH(hi,hj)、TOP_INTERSECT(hi,hj)、BELOW(hi,hj)、BELOW_TOUCH(hi,hj)、BOTTOM_INTERSECT(hi,hj)、CONTAIN(hi,hj)、CONTAINED(hi,hj)、OVERLAP(hi,hj),謂詞的返回值為布爾型。基于土層的位置關系,模型能表現土壤特征隨深度的變化,反應成土過程中物質的遷移、轉化和累積的特點。

土壤分類是依據土壤性狀質與量的差異,系統地劃分土壤類型及其相應的分類級別,從而擬定土壤分類系統[14]。土壤系統分類的分類規則核心是土壤特征的定性與定量化描述,但土壤特征的類型并不是單一的,本文將其歸為兩大類:普通土壤特征和復合土壤特征。
普通土壤特征不具有子屬性,特征值單一;復合土壤特征則包含多個子屬性,特征值由其多個子屬性值組合而成。基于此,本文通過建立土壤特征模型來描述上述兩種類型的土壤特征,并定義了土壤特征的謂詞邏輯來表達類型之間的關系。土壤特征類型具有特征名稱、特征值和量綱三個元素,其中特征名稱和量綱為字符型,特征值的類型則抽象為一個頂級的特征值類型,并基于該類型派生兩個子類:普通值和復合值類型,分別描述普通土壤特征和復合土壤特征。特別地,本文定義了二元一階謂詞COMPOSITE_TO(c_attribute,attribute)表達復合特征類型與普通特征類型的組合關系,c_attribute為復合土壤特征名稱,attribute為c_attribute的子特征名稱,謂詞返回attribute的特征值。
普通土壤特征值類型即簡單值類型,包括數值型、字符型和枚舉型等。數值型土壤特征的謂詞邏輯包括基本的四則運算、不等式運算、一元函數運算、集合運算等;字符型土壤特征的謂詞邏輯包括字符的連接、索引、截取、匹配、查找、大小寫轉換等;枚舉型的特征值描述是建立在數值型與字符型謂詞邏輯的基礎上,通過一組離散值來限定特征的值域范圍,且取值唯一。
復合土壤特征的謂詞邏輯是建立在普通土壤特征的謂詞邏輯的基礎上,進一步處理多個屬性值之間的邏輯關系。復合土壤特征類型的典型實例包括土壤的機械組成與土壤顏色。
機械組成是土壤中各粒級占土壤重量的百分比組合,包括黏粒(<0.002 mm)、粉粒(0.002~0.05 mm)和砂粒(0.05~2 mm)。本文基于普通值類型定義了顆粒類型并派生三個子類:黏粒類型、砂粒類型和粉粒類型;在機械組成基礎上,根據不同的顆粒組成劃分的土壤質地。基于土壤質地和土壤的機械組成之間存在映射關系,建立不同質地之間的相互比較謂詞。針對CST土壤質地劃分的12種類型,定義了12個枚舉值來限定12種質地名稱,并通過一元一階謂詞DECIDED_TO(m)表達質地(t,下文均以t代表質地)與機械組成(m,下文均以m表示機械組成)的單向依賴關系,語義即根據機械組成獲得質地類型,謂詞返回質地的屬性值。同時在檢索過程中存在質地類型之間的對比,如“CaCO3相當物顆粒大小較壤質更黏”。針對比較關系,定義三元一階謂詞TEXTURE_GREATER(h,t,particle),其中particle為枚舉型的顆粒級別列表,即[‘clay’,‘silt’,‘sand’],TEXTURE_GREATER(h,‘壤質’,‘clay’)語義為“土層h的質地較壤質更黏”。該謂詞根據質地劃分規則識別并返回一個存儲了較“壤質”更黏的所有質地類型的集合,然后判斷h的質地是否屬于該集合中,最后返回一個布爾型表示結果的真假。
CST采用孟塞爾顏色系統描述土壤顏色,其是建立在色相、明度、彩度三個特征上的顏色立體[15]。與機械組成類似,孟塞爾顏色類型由孟塞爾色調類型、孟塞爾明度類型和孟塞爾彩度類型三種類型組合而成。土壤顏色的定量化描述可視為對顏色特征值范圍的匹配。其中,明度與彩度為數值型,其范圍的匹配即數值類型的不等式運算。色調是一個被均分為40等分的圓盤且隨順時針方向具有一定的排列順序,因此色調的描述可視為角度值范圍的匹配。本文將所有色調賦予角度值,從5Y開始順時針方向遞增,相鄰色調之差為9度,即5Y=0,7.5Y=9,10R=18,以此類推。
針對上述顏色屬性的描述形式,本文定義了MUNSELL_VALUE(h,a,b)、MUNSELL_CHROMA(h,a,b)和MUNSELL_HUE(h,a,b)三個三元一階謂詞分別表達明度、彩度和色調的范疇匹配,其語義即判斷土層h的值是否在a~b的范圍內,返回值為布爾型。色調的定量化描述包括比較形式和范圍形式,MUNSELL_HUE(h,a,b)具有2種語義:MUNSELL_HUE(h,‘2.5YR’,‘5Y’)即判斷土層h色調是否在5Y~2.5YR范圍內,MUNSELL_HUE(hi,hj,‘5Y’)即判斷土層hi的色調是否在5Y與hj的色調值范圍內。此外,CST中關于明度和彩度的描述除了兩個土層的對比之外,還存在同一土層中干態與潤態對比的情況。本文定義了一元一階謂詞VALUE_MOISTURER(h)和CHROMA_ MOISTURER(h)表示土層h的明度與彩度的干潤態比較,其語義即判別土層h的潤態明度是否大于干態明度或潤態彩度是否大于干態彩度,返回值為布爾型。
基于CST的本體模型是對CST分類體系的結構化描述,它表達了診斷對象和土壤類型及其之間的邏輯關系,系統基于該模型建立了分類規則框架。土壤診斷層和診斷特性及其與各種成土因素空間變異的關系是土壤類型劃分的唯一標準[1],從土綱到亞類的所有土壤類型的劃分均依賴于診斷對象,在現有的檢索模型中其兩者存在高度耦合關系。因此,本文的CST本體模型將診斷對象與土壤類型剝離。基于CST對象的頂級本體概念——抽象CST對象類型派生出診斷對象類型和土壤類型,土壤類型結構化表達分類體系中土綱到亞類的所有土壤類別,診斷對象類型派生了診斷層類型、診斷特性類型和診斷現象類型,分別描述診斷層、診斷特性和診斷現象。在CST檢索系統中,土壤本體模型的實例作為被檢索對象,CST本體模型作為類型概念規則邊界,兩者通過兩個抽象類型(抽象土壤對象類型與抽象CST對象類型)之間的謂詞邏輯IS_INSTANCE(soil,cst)連接,其語義為:“土壤對象soil滿足CST對象cst的規則邊界”,返回值為布爾型。通過IS_INSTANCE建立土壤個體模型與CST類型模型之間的關系判別,表達了土壤個體與診斷對象,土壤類型之間的隸屬關系。
系統論思想表明,結構必須依賴邊界定義,任何一項科學研究提出的假設均不是無中生有,均要建立在先前科學發現的基礎之上[16],土壤分類同樣如此。CST的土壤類型、診斷對象等概念是建立在其本身的特征屬性范圍的基礎之上,特征屬性的范圍實際上是對特征屬性變幅的規定,即特征邊界約束。每個特征屬性的邊界約束均可通過對應的特征謂詞邏輯進行表達,如“酸性濕潤淋溶土”中pH的邊界被約束為0~5.5,該謂詞邏輯基于不等式運算和集合運算表示為(pH≥0)∩(pH≤5.5),又如“紅色酸性濕潤淋溶土”中孟塞爾色調的邊界為5R~5YR,用孟塞爾特征類型的謂詞邏輯表示為MUNSELL_ HUE(h,5Y,5YR)。
但CST中的范疇對象的邊界不是針對單個特征屬性的約束,是建立在一系列的特征約束集合之上。它是由一系列條件(即特征屬性的約束)通過組合和替代關系形成復合概念,采用邏輯運算關系組織條件集合。基于此,本文定義條件類型(Condition)規范表達CST的本體邊界。條件類型具有三個屬性:(1)‘description’:條件的文字描述;(2)‘sub_condition’:子條件,條件類型,它使得條件類型(Condition)形成嵌套結構;(3)邏輯綜合(synthesis):將土體在‘sub_condition’中的所有匹配結果根據組合與替代關系進行組合,返回值為布爾型或為空,若判斷結果為空則說明土體中CST本體所必須的土壤特征值缺失;(4)‘result’:判斷結果,當‘sub_condition’不為空時屬性值等于‘synthesis’的值,否則為單個條件的判斷結果。至此,CST中土壤類型和診斷類型的表達均是將其土壤特征的邊界表達為Condition類型。
CST檢索表現為一個樹狀結構且檢索有一定的檢索順序,該順序使得土壤類型之間存在相應的關系,如上下位關系、前置條件關系和后置條件關系。給定概念c1和c2,若c2的外延包含c1的外延,則認為c1和c2具有上下位關系,稱c2為c1的上位概念(hypernym),c1為c2的下位概念(hyponym)[17],本文通過二元一階謂詞IS_A(c1,c2)描述上下位關系。例如“水耕人為土是一種人為土”,則“人為土”即為“水耕人為土”的上位概念,“水耕人為土”為“人為土”的下位概念。前置條件關系與后置條件關系表達基于同一上位概念的不同土壤類型之間的檢索順序,本文通過二元一階謂詞PRE_CONDITION(c1,c2)和POST_CONDITION(c1,c2)進行描述。例如“人為土”類型發生的前提條件是不為“有機土”,即PRE_CONDITION(Histosols,Anthrosols)返回的布爾值為假。又如,當土體滿足“人為土”后繼續分類,則結果一定不是“灰土”,即POST_CONDITION(Anthrosols,Spodosols )為假。
在檢索體系中,土壤實體作為輸入對象傳入CST類型中,并返回一個檢索結果。如土體作為被分類對象,在土壤類型中得到一個分類結果;剖面和土層作為被診斷對象,分別在診斷特性類型和診斷層類型中得到一個診斷結果;因此,土壤實體與CST類型之間存在一個實例與類型的映射關系。本文定義了謂詞IS_INSTANCE(c1,c2)來定義這種映射關系,其中c1表示土壤實體對象,c2表示CST類型,其語義為“c1是否為c2的實例”。當執行IS_INSTANCE(c1,c2)時,c1根據c2的特征邊界(Condition),調用謂詞GET_ATTRIBUTE(c1,attribute)獲取對應的特征值,并判斷該特征值是否在類型邊界內,結果返回Condition的‘result’值作為IS_INSTANCE(c1,c2)的結果。
遵照CST分類體系的樹形結構,本文從土綱到亞類通過廣度優先的遍歷策略進行檢索,當土體在某個土壤類型中的判別結果為真,則停止在當前級別的檢索并轉入該土壤類型的所有下位關系土壤類型中,按照前置條件與后置條件關系的順序繼續檢索,直至檢索到亞類結束。
檢索結果的結構與CST體系的樹形結構相同,其節點的顯示順序依照土體在CST體系中的檢索路徑。當土體在土綱完成檢索后,首先在結果樹中返回一個根節點,該節點存儲了檢索級別以及檢索結果,如“土綱判斷-人為土”。基于根節點,系統依次返回土體在人為土及其之前的所有土綱類型的判別結果,作為第一層子節點,這些子節點是基于條件類型的對象,存儲了土壤類型的所有條件描述、邏輯關系及判別結果。在第一層子節點的最后,系統返回土體在亞綱的檢索結果,如“亞綱判斷-水耕人為土”,并將該節點作為父節點,繼續派生亞綱中土壤類型的判別結果,以此類推直至亞類,示例如圖1。
本文基于土壤本體模型、CST本體模型和土壤特征模型及其謂詞邏輯,通過Python語言實現土壤類型檢索系統,模擬檢索過程,并用湖北省的土系數據進行系統測試。測試數據來自《中國土系志·湖北卷》[18],該書通過對調查的202個湖北省代表性單個土體的篩選和歸并,合計建立154個土系,分屬于5個土綱、8個亞綱、18個土類、30個亞類。本文將上述202個剖面的野外采樣數據及實驗室土壤理化數據存儲于SQLite數據庫中,檢索過程和結果通過ETE3庫顯示。選取《中國土系志.湖北卷》中編號為42-140的代表性單個土體進行測試,如圖1,其高級分類單元檢索結果為“普通簡育水耕人為土”。不同節點使用不同符號表示當前級別的檢索結果。

圖1 系統測試結果Fig. 1 Result of the system test
本文基于土壤地理學和CST分類知識,從領域本體的角度分析土壤的空間結構以及與診斷對象、土壤類型的隸屬關系,建立了土壤實體的本體模型、土壤類型和診斷對象的本體模型和土壤特征模型,使用Python語言完成了模型的定義。總結在CST檢索過程中存在的不同判斷比較等結構,提取土壤分類檢索中的基礎謂詞,定義相應的關系謂詞表達模型內部類型之間的邏輯關系,表達土壤實體與CST對象之間的隸屬關系,采用謂詞邏輯的表達方式來實現土壤類型的檢索,在本體概念的基礎上建立更加符合自然語義土壤系統分類檢索系統。
與其他已有的檢索模型相比,本文的檢索模型具有以下三方面的優點:首先,本文從土壤實體空間結構的角度將土壤信息的載體區分為聚合土體、單個土體、剖面、土層和土壤基質等結構,建立相互之間的組合關系,建立土壤個體類型判斷的表達方式,并能降低分類規則表達的復雜度。其次,模型在結構上具有高內聚低耦合的特性,將檢索規則與檢索框架剝離開來,能更好地支撐檢索體系的更新與擴展;最后,從知識判別的角度來看,本文不再以土壤特征作為判別對象,而是將其封裝在土壤實體、診斷對象以及土壤類型之中,將判別對象提升至范疇的高度,通過邏輯謂詞直接表達對象之間的隸屬關系,即“是”或“不是”、“屬于”或“不屬于”,與傳統的條件嵌套語句相比,這種判別方式更符合人類的認知。
雖然本文的檢索系統在模型構建上已基本完備,但系統在實現過程中仍存在不足之處,主要包括以下兩方面:1)土壤特征的語義問題。土壤信息來源廣泛,獲取的方法也不同。例如鐵的測定方法,包括鄰菲羅啉比色法、原子吸收光譜法等。不同方法得到的土壤特征雖然名稱相同,但語義上存在差異,因此本文系統中所有的土壤特征需要通過建立語義字典進行統一規范化表達,其字典包含特征的唯一標識(ID)、特征名稱(Name)、語義描述(Description)、獲取方法(Analysis method)和量綱(Unit)。2)形態學特征無法定量化的問題。如水耕表層中的“糊泥化(Puddling)”缺乏具體定義,無法定量化表達。此外,有些對屬性值變化描述過泛,如干旱正常鹽成土的條件中有“忽高”、“忽低”、“不規則”缺少具體的變化界限,檢索系統需要構造多種謂詞表達式及其替代關系。
本文對土壤進行確定性的類型識別,分類結果的準確性依賴于土壤數據的精度。但在實際情況中土壤數據存在誤差,如野外觀測誤差、專家經驗性判斷、實驗室分析的儀器誤差、人工誤差等。土壤數據的缺失也會影響檢索結果,因此在接下來的研究中可考慮添加補充替代信息,如用計量土壤學信息補充土壤形態學信息,借助RS和DEM信息補充土壤發生環境信息,通過現代傳感器手段,如X射線熒光光譜分析(X-Ray Fluorescence spectrum method,XRF)獲取的土壤重金屬作為輔助信息等。此外,還可加入不確定信息,如模糊信息、未知信息和隨機信息等,將系統擴展為不確定性分類系統,綜合統計學理論,實現對土壤類型的預測并給出相應概率。