?

基于一階謂詞邏輯的結構設計規范表示方法

2024-04-11 13:02張吉松于澤涵趙麗華
土木與環境工程學報 2024年1期
關鍵詞:謂詞設計規范條款

張吉松,于澤涵,趙麗華

(大連交通大學 土木工程學院,遼寧 大連 116028)

在土木工程設計領域,結構設計規范的計算機表達是實現設計合規性審查的技術基礎與前提條件。對于結構設計合規性審查,中國實行施工圖設計審查制度,即由政府建設主管部門或其認定的審查機構負責,對施工圖是否符合有關法律法規的要求以及對涉及公共利益、公眾安全和工程建設強制性標準等內容進行審查[1],整個審查過程是采取人工審查的方法(圖紙+計算書),但人工審查存在自動化程度低、工作量繁重、審查過程規范化不足等問題。而且,檢驗結果很大程度上依賴于檢驗人員對規范的理解和經驗,導致檢驗結果的主觀性較強。BIM 技術的出現使得基于BIM 模型的審查成為未來的發展趨勢。國家住建部頒布的《2016—2020 年建筑業信息化發展綱要》,提出在未來探索基于BIM 模型的合規性審查,提高設計審查效率與設計質量。

目前,對合規性審查的研究大致可分為兩個方面:基于施工圖的審查[2-4]和基于BIM 模型的審查[5-8]。Eastman 等[9]將基于BIM 的合規性審查的過程分為4個部分:規范轉譯、BIM 模型準備、規則執行和推理、生成審查報告。其中,規范轉譯是實現自動合規性審查的前提條件和首要步驟。目前關于規范轉譯的方法大致可以分為:基于本體方法、基于規則引擎方法、基于語言開發方法和基于邏輯方法[10],每種方法都具有一定的優點以及局限性。其中,基于本體、規則引擎、語言開發的3 種方法在對復雜規范進行轉譯時,常常出現以下問題:規范條款中信息的缺失、較低的靈活性和可維護性、建筑信息模型與規范條款的映射連接性較弱、無法解決模糊語言的轉譯問題、無法處理各規范條款之間的矛盾。而基于邏輯的規范轉譯方法經過較長周期的發展顯現出了強于其他方法的優勢,相較于其他方法,一階謂詞邏輯轉譯的規范條款可以將建筑元素與規則相連接,并且由于一階謂詞邏輯與自然語言的相通性,對于較為復雜的條款此方法可以依據規范上下文實現嵌套的規則表達,進而實現規則的自動化審查。另外,基于一階謂詞邏輯轉移的規范可以很好地轉換為SWRL 語言的形式,在后續實現規范審查自動化的研究中能夠與基于本體以及規則引擎的方法相結合,最大程度發揮各類方法的優勢。

合規性審查的自動化推理基于兩方面信息:源于BIM 模型的設計信息和源于設計規范的設計條款信息。設計信息可以表示為“邏輯事實”,規范條款信息可以表示為“邏輯規則”。采用基于邏輯的信息表示,可以作為推理技術的基礎?;谝浑A謂詞邏輯的推理非常適合于自動化合規性審查,原因為:邏輯的二元性(滿足或不滿足)符合合規性審查的二元性(符合或不符合);形式化定義的邏輯可以充分表示合規性審查(建筑規范信息和BIM 模型信息)中的“概念”(或實體)和“關系”;與程序編程語言(例如C 語言需要描述解決方案步驟)不同,邏輯編程是描述性的,只需要描述領域內的規則和事實即可,如果設計信息和設計條款信息能夠以邏輯形式正確表示,推理就可以以完全自動化的方式進行;各種自動推理技術,例如檢索和合一(unification)問題,可以在已經較為成熟的邏輯推理機中(logic reasoners)使用[11]。

中國土木工程領域的結構設計規范具有4 個特點:數量繁多且相互平行嵌套;規范條款中含有模糊語言;時效性;半結構化文檔。由于這些特點,結構設計規范的計算機表達轉譯工作充滿了諸多困難,尤其是當規范條款中涉及模糊語言時,由于中文的特殊性,這些條款很難準確地轉譯為計算機語言,所以選擇合適的方法是決定規范轉譯工作難易的關鍵所在。筆者基于一階謂詞邏輯,提出一種結構設計規范表達方法,并選取《混凝土結構設計規范》中部分條款進行轉譯以證明其可行性。首先,通過分析一階謂詞邏輯的特點,將結構設計規范分為語言類明確條款、語言類模糊條款、表格類和公式類。其次,提出了通過“謂詞定義”和“函數定義”兩種方法,轉譯設計規范中語言類、表格類和計算公式類設計條款,對結構設計規范條款進行精確表示以便支持后續推理和合規性審查。最后,總結一階謂詞邏輯在規范轉譯方面的局限性(對于模糊語言處理上)以及未來研究建議。

1 研究現狀

關于規范轉譯的方法大致可以分為4 類,分別是基于本體方法、基于規則引擎方法、基于語言開發方法和基于邏輯方法。在基于本體的方法中,Zarli等[12]和Wang 等[13]分別利用基于語義網的本體技術構建了施工、風險和解決措施等概念類和關系,并基于其建立了一致性檢查的安全規則[14]?;谝巹t引擎方法的研究工作開展也較為廣泛,如SWRL(Semantic Web Rule Language)規則,Ding 等[15]和Lu等[16]分別構建了地下風險本體、施工風險本體,利用本體的概念和屬性,在本體中使用插件SWRL 規則編輯器直接構建檢查規則;目前,商業合規性檢查軟件有Solibri Model Checker(SMC)和CORENETe-PlanCheck 等使用基于規則的方法,中國有廣聯達BIM 審圖軟件與廣州市施工圖設計文件審查管理系統。這些審查系統大部分都只針對建筑設計的合規性檢查,對于結構設計的合規性檢查則涉及較少。有代表性的合規性審查系統如表1 所示。

表1 結構審圖系統Table 1 Code compliance checking system

較為典型的是基于語言開發的方法,Eastman等[9]為了在不同服務器上編輯規則,提出開發一種不受平臺環境限制的規則翻譯語言,如JAVA、SQL等;而后,Lee 等[22]開發了建筑環境和分析語言(Building Environment Rule and Analysis,BERA),用于對建筑流通和空間規劃進行更復雜的代碼編碼和代碼檢查,并提出了基于建筑環境規則擴展語言的自動符合性檢查,以確??臻g規劃要求和可視性得到滿足。

基于邏輯的規范轉譯方法研究工作時間跨度較大,其起源可以追溯到古希臘哲學家亞里士多德的三段論?,F代最早可追溯到1969 年,由Fenves 等[23]開創性地發明了決策表,將復雜的規范條款用精確簡練的決策表形式來表示;而后Fenves 等[24]于1987 年發明了用于表示和處理設計標準的標準分析、綜合和表達(SASE)模型,后續很多學者針對此模型自動化開展大量其他相關研究和開發工作(Nyman 等[25]、Harris 等[26]、Garret 等[27]、Wang[28]、Dym 等[29]、Cronembold 等[30]、Lopez等[31])。使用SASE 模型進行設計包括3個步驟:確定合適的分類器;根據分類詞確定適用條款;使用規則處理規定。其中,第1 步和第2 步定義了規范組織子模型的處理,第3 步定義了標準規范的處理,規范自動分類在過去沒有得到有效的處理,直到1990 年左右才開始成為一個研究問題[32]。同時,步驟2 和步驟3 的自動化已經被許多研究人員用于結構部件設計。Salama 等[33]從規范性文件和文件規定的角度出發,運用邏輯和本體技術實現規則的自動分類和轉譯。而后,為了提高規范編輯的可讀性,Solihin 等[34]提出了一種基于概念圖的規則編輯方法,概念圖識別規則的概念,分析獨立的子規則,總結其約束和屬性,最后實現它們的鏈接,而后基于建筑、工程、施工全領域中的多類規范,引入一個跨應用程序域的通用規則分類,使用其適用于計算機合規審查的所有方面設計標準[35-36]。

一階謂詞邏輯的基礎是數理邏輯,數理邏輯是研究推理邏輯規律的一個數學分支,也被稱為符號邏輯。數理邏輯是以符號化為特點的形式化理論,注重形式推理而不重視數值計算,采用特殊的數學符號語言,并給出推理規則來建立推理體系。數理邏輯包含命題演算與謂詞演算,而一階謂詞邏輯正是在命題邏輯基礎上提出的,比如“凡是A都是B,C是A,所以C是B?!边@個推理在命題邏輯中是不能被準確描述的,假設這3個命題分別為p、q、r,則正確的推理形式應為(p∧q)→r,但是將p、q、r賦予其他值時這個推理則不成立,也就是說、這個推理形式并非重言式,正是由于命題邏輯的這種局限性,想要進一步剖析簡單命題,則必須要引入謂詞、變量以及量詞的概念,進而研究其邏輯關系,于是構成了謂詞邏輯。

一階謂詞邏輯表示一條知識是通過將個詞體、謂詞、量詞根據所要表達知識的語義以邏輯聯結詞相連接,形成謂詞公式。謂詞邏輯就是研究它們的形式結構、邏輯性質、謂詞關系及從中導出的規律。謂詞邏輯在數據庫(如用謂詞邏輯將關系數據庫中的數據子語言表示出來并優化)、教育(如智能答疑系統)、人工智能科學等方面都有很廣泛的應用。謂詞公式主要由5 個部分組成,分別是個體詞、謂詞、量詞、邏輯連接詞以及語法符號,如圖1 所示。

圖1 一階謂詞公式組成Fig.1 First order predicate formula composition

2 研究方法

2.1 規范條款分類與選擇

目前中國混凝土結構設計涉及的設計規范主要包括:《高層建筑混凝土結構技術規程》(04JGJ 3—2010)、《混凝土結構設計規范》[37](GB 50010—2010,以下簡稱《混規》)、《建筑地基基礎設計規范》(GB 50007—2011)、《建筑結構荷載規范》(GB 50009—2012)、《建筑抗震設計規范》(GB 50011—2010)等。在以上規范中所包含的條款種類大體具有4 個特點:1)數量繁多且相互平行嵌套,中國現在正在施行大約40 本結構設計規范,包括混凝土、鋼結構、木結構、荷載、可靠性、防火等多個方面,且各規范之間關系復雜,既有相互平行關系,同時也存在規范之間的引用與嵌套;2)規范條款中含有模糊語言,在中國很多規范中會出現“適量”“不宜”等概念性詞語,此類條款對結構審查的規范性影響較大;3)時效性,大部分的建筑規范都會隨時間更新或修訂,這就使規范衍生出大量的修訂版本與解釋性手冊,增大了人工規范審查的工作量;4)半結構化文檔,不同本規范對同一建筑部位有不同規定,可能會出現條款沖突的情況。

按照一階謂詞邏輯轉譯的難易程度分為4 類:1)語言類明確條款,條款由語言敘述,且規定明確,無模糊語言,可直接轉譯為一階謂詞邏輯公式,例如《混規》第11.3.5 條規定,框架梁截面尺寸應符合下列要求∶截面寬度不宜小于200 mm、截面高度與寬度的比值不宜大于4、凈跨與截面高度的比值不宜小于4;2)語言類模糊條款,條款由語言敘述,但規定不明確,含有“適當”“不宜”等模糊語言,由于此類條款多作為注釋出現,所以可利用一階謂詞邏輯的全部量詞和存在量詞進行轉譯;3)表格類條款,此類條款需要先轉述為語言類條款,再進行轉譯,例如《混規》第11.3.6 條中表11.3.6-1,可將第一格中條款轉述為:“一級抗震等級框架梁支座處縱向受拉鋼筋配筋率大于0.4 與80ft/fy中的較大值”,再轉譯為一階謂詞邏輯公式;4)計算公式類條款,此類條款由于包含復雜的計算公式,使得其轉譯難度大大增加,而在轉譯的過程中對于公式可以有多種處理方式。

根據上述分類情況,可以把利用一階謂詞公式表示規則條款總結為3 個步驟:首先,定義條款中的個體詞與謂詞,確定每個謂詞及個體的確切含義,在定義個體詞與謂詞時參考現行IFC 標準對實體進行分類,提高轉譯結果的兼容性,以便后續在BIM模型合規性審查中,條款與模型中實體逐一對應;其次,根據所要表達規則條款,將個體詞帶入每個謂詞中的變量;最后,根據規則條款的具體語義,用適當的連接符號將各個謂詞連接起來,形成謂詞公式。由此看出,不同謂詞定義方式可以展現出不同的規范轉譯方法,所以在基于一階謂詞邏輯轉譯結構設計規范時,要靈活選擇謂詞的定義方式。

在結構設計規范中,總則、總體規定等原則性條款多是闡述規范適用范圍、該規范的相關解釋以及制定標準,不在本文的轉譯范圍內。選取《混規》第11.3 節、第11.4 節共計27 條規范條款進行轉譯,其中包含結構設計規范中大部分條款類型,較具有代表性,用以驗證基于一階謂詞邏輯的結構設計規范表達方法可行性。

2.2 語言類規范條款轉譯

無論規范條款語言描述明確與否,在針對語言類條款的轉譯時,都是由自然語言中直接確定條款的主體,即該條款所規定作用對象,并進行謂詞的定義,而后進行限定條件謂詞定義,最后以合適的邏輯連接詞相連接,進而轉譯為一階謂詞邏輯公式。由此看出,語言類條款轉譯較為直接,但不同的謂詞定義方式可以展現出不同的轉譯結果,以《混規》第11.3.5 條、第11.3.7 條為例,提出兩種謂詞定義方式,第1 種以第11.3.5 條為例,將限定條件定義為一個整體謂詞,這樣的定義方式適用于所規定部位較為明確簡潔的條款,其優點在于可以減少定義謂詞數量,缺點是不便于后續的數據調用;第2 種方式以第11.3.7 條為例,將限定條件細化分別定義為多個謂詞,這樣的定義方式適用于定義規定較為復雜的構件,雖然會增加所定義謂詞的數量,但是利于后續調用且規定較為明確具體。轉譯結果如表2 所示。

表2 《混規》11.3.5 和11.3.7 條轉譯結果Table 2 Translation of provision 11.3.5 and 11.3.7 of Concrete Code

2.3 表格類規范條款轉譯

由于一階謂詞邏輯與人類思維活動規律及自然語言的貼合性,在轉譯表格類規范條款時,首先需要針對表格內容將其轉述為更易轉譯的語言類條款,再按照轉譯語言類條款的方式轉譯,以《混規》第11.4.16 條為例(一、二、三、四級抗震等級的各類結構的框架柱、框支柱,其軸壓比不宜大于表11.4.16 規定的限值),表中第1 條數據可以表述為“在框架結構體系中,一級抗震等級的框架柱軸壓比不宜大于0.65”,其余數據以相同的方式進行轉述,轉譯結果選取語言類規范條款的第2 種謂詞定義方法進行展示。轉譯結果如表3 所示。

表3 《混規》11.4.16 條(軸壓比)轉譯結果Table3 Translation of provision 11.4.16(compression ratio)of Concrete Code

2.4 計算公式類規范條款轉譯

計算公式類條款中的語言敘述部分仍然與轉譯語言類條款相同,不同的是計算公式類條款包含復雜的結構計算公式,而能否更準確地轉譯計算式是決定此類條款轉譯成功與否的關鍵,基于一階謂詞表達計算公式可以有多種方法,根據前文一階謂詞公式組成成分——多元謂詞及個體函數,提出兩種不同的轉譯計算公式的方法:1)利用謂詞定義計算式,通過定義多元謂詞的方式,逐個定義計算公式,將公式中各項變量與常量定義為個體詞;2)利用函數定義計算式,在一階謂詞邏輯中,函數表示一個個體到另一個個體的映射,函數沒有真值可言,例如《混規》第11.4.5 條中規定“一級抗震等級框架角柱彎矩設計值為11.4.1 條中規定的一級抗震等級框架柱彎矩設計值乘以增大系數1.1”,首先可以定義關系謂詞EQUAL(x,y)表示x的值為y,再定義函數f(x)=1.1x,則這個命題以一階謂詞邏輯可以表達為“EQUAL(x,father(y))”,x與y分別定義為一級抗震等級框架角柱矩設計值與框架柱彎矩設計值。由于規范中大部分計算公式都是由一個多項式對構件某些屬性進行規定,所以可以把多項式定義為函數供謂詞公式調用,這種方法相比于第一種可以大量減少謂詞的定義。以《混規》第11.4.6 條為例列舉兩種轉譯方法,轉譯結果選取語言類規范條款的第一種謂詞定義方法進行展示,轉譯結果如表4 所示。

表4 《混規》11.4.6 條(計算公式)轉譯結果Table 4 Translation of provision 11.4.6(formula)of Concrete Code

3 分析與討論

基于一階謂詞邏輯提出的結構設計規范表示方法核心在于提取出規范條款的規定主體與限定條件,進而轉譯為一階謂詞公式,這種轉譯方式與建筑信息模型(BIM)有較高的契合度與可操作性,所提取出的規定主體可以對應為模型中的實體,限定條件即為對實體屬性的限制。

從算法的角度,基于BIM 模型的合規性審查,其關鍵步驟可以分為3 步:1)規范轉譯,即將規范的條款自動提取并轉譯成相應的“邏輯規則”;2)模型信息提取,即從BIM 模型中提取相關信息并轉換成“邏輯事實”;3)將以上的“邏輯規則”與“邏輯事實”進行合規性比較,即采用自動推理機推理“邏輯事實”是否符合“邏輯規則”,得出最終的結論。

一階謂詞邏輯主要應用在上面提到的第1 步,即將規范中的設計條款轉譯成計算機可識別的規則。如果與人工智能中的自然語言處理技術相結合,構建專業領域語料庫和知識庫是前提條件。目前,盡管規范轉譯的方法有很多,包括基于決策表、基于硬編碼(程序編程語言)、基于軟編碼(語義規則等)、基于對象等,但其大部分都需要手動(或半自動)進行規則提取和編碼,至今還沒有一種被廣泛接受的有效方法。規范轉譯未來可以與人工智能中的自然語言處理技術、機器學習以及深度學習等算法相結合,逐步實現轉譯過程的自動化。目前一階謂詞邏輯轉譯規范的方法需要較高的專業性,其轉譯過程目前還需人工干預,由專業人員將規范條款轉譯為合適的謂詞公式形式。但一階謂詞邏輯與其他方法比較的優勢在于,如果設計規范條款信息和BIM 模型信息能夠以邏輯形式正確表示,推理就可以以完全自動化的方式進行,無需人工手動干預。例如將轉譯后的謂詞公式與SWRL 語言相結合可編譯為SWRL FOL 的形式,借助本體構建工具protege 可將建筑信息模型與轉譯后的規則構建為本體的形式。在規范轉譯的過程中參考IFC 標準進行謂詞的定義,不僅可以實現轉譯工作的標準化,而且可以更好地與建筑信息模型結合,再利用基于SWRL 語言的推理機進行規則的推理與審查,進而實現建筑信息模型的自動化合規審查。

基于一階謂詞邏輯表示結構設計規范可以極大發揮一階謂詞邏輯的優點,轉譯的規范條款較準確,可應用性較高,但是在轉譯過程中也遇到一些問題,總結為3 點:

1)基于一階謂詞邏輯轉譯規范條款時,雖然很好地解決了一部分相對模糊的語言,但都是基于后續注解較為明確的前提,還有部分模糊語言無法實現轉譯,只能通過精確量化的方式進行轉譯,這樣在轉譯過程中難免出現誤差。在人工審查圖紙過程中,對于規范條款中的模糊語言處理方式大多是根據審查人員的從業經驗來進行主觀判斷,如果通過精確量化的方式進行模糊條款轉譯則其結果與主觀判斷差別不大,無法實現更加精準的規范審查。所以,對于規范條款中模糊語言的處理方法以及結構設計規范的標準化問題還有待進一步的研究。

2)雖然對于包含計算公式類的規范條款提出了兩種基于一階謂詞邏輯的轉譯方式,但兩種方式工作量較繁重且其實現還需研究與考證。一階謂詞邏輯在知識表示中的應用較廣泛,對于計算公式的表示方法層出不窮,其中不乏很多方法可以為規范條款轉譯提供借鑒與參考,對于公式類條款的轉譯方式還有很大研究空間。

3)對于規范條款主體提取的方式只是其中兩種,并且這兩種方式轉譯都需提供數據龐大的定義對照表,對于主體的提取還可以選取更加細化的方式,使得轉譯結果更加簡潔。不同的主體提取方式或者基于一階謂詞邏輯的不同轉譯思路,對規范轉譯的復雜程度影響很大,如需確定基于一階謂詞邏輯表達規范的最方便、快捷的方法,需要做的調查與研究工作還有很多。

從上述轉譯過程中遇到的問題可以看出,一階謂詞邏輯同樣有一定局限性,這種局限性更多地體現在對于模糊語言以及計算公式的處理上,從更嚴謹的角度來說,規范規定“適當放寬”和“適當減小”,“適當”的范圍是多少,并沒有明確規定。同時,對于在轉譯過程中的“一詞多義”和“一句多義”等問題,一階謂詞的語法和語義無法直接轉譯,需要先將該條款所包含的多種含義都羅列出來,將每種可能的含義轉譯為可量化的條款,進而才能轉譯成一階謂詞的表達。一些由于一階謂詞邏輯局限性而無法轉譯或轉譯困難的條款類型如表5 所示。

表5 暫時無法轉譯的條款類型Table 5 Types of code that cannot be definition

消除這種局限性的辦法有很多。第一,可以將設計規范先進行“轉述”,再進行相關的轉譯;第二,可以加強中國規范的結構性,減少類似“適量”“不宜”等模糊語言的出現;第三,一階謂詞邏輯在規范表達領域的研究還可以更加深入,繼續研究更多簡潔、準確的表達方式與謂詞定義方法,也可以與面向對象技術相結合,或利用更高階的謂詞邏輯解決此類問題。針對“一詞多義”和“一句多義”等問題,未來可以借助自然語言處理和機器學習等相關統計算法統計出所有可能性并進行轉譯。

4 結論

分析中國結構設計規范的主要特點與規范轉譯的方法,進而可以更好地進行轉譯,選取一階謂詞邏輯表示結構設計規范條款。利用一階謂詞邏輯在表達自然語言方面的特點,使其對于結構設計規范的轉譯工作提供幫助。為證明一階謂詞邏輯轉移規范的可行性,選取《混凝土結構設計規范》中部分條款進行轉譯,并對選取條款按照轉譯的難易程度進行分類,不同類型條款有不同的轉譯步驟,相同的條款也可以根據不同的謂詞定義方式展現出不同的轉譯結果。討論了一階謂詞邏輯邏輯在規范轉譯領域的可行性與局限性。提出的轉譯方法并不局限于結構設計規范的轉譯,也可以引申至其他專業設計規范的轉譯工作。

采用謂詞邏輯轉譯規范看似簡單,實則涉及哲學、數學、數理邏輯、計算機科學、自然語言處理、語義學、結構設計等領域,是一個多學科交叉融合且比較復雜的問題。結構設計規范條文的計算機表達對于檢驗建筑結構合規性的重要程度不言而喻,而隨著科技的飛速發展,結構設計的合規性審查被各國愈發重視,想要更好地實現對于建筑結構的自動審查,其關鍵是準確地轉譯規范條款。提出一種基于一階謂詞邏輯的結構設計規范表示方法,將結構設計規范轉譯為計算機可識別的語言,為推動建筑結構設計自動化和審查自動化進程提供一種參考方法。

猜你喜歡
謂詞設計規范條款
性侵未成年人新修訂若干爭議條款的理解與適用
被遮蔽的邏輯謂詞
——論胡好對邏輯謂詞的誤讀
黨項語謂詞前綴的分裂式
正確審視“紐約假期”條款
《鐵路通信設計規范》TB10006-2016解讀(四)支撐網
《鐵路通信設計規范》TB10006-2016解讀(三)——業務網
On Knock-for-Knock Principle:Analysis of SUPPLYTIME 2017 Clause 14(a)
《鐵路通信設計規范》TB10006-2016解讀(二)——承載網
也談“語言是存在的家”——從語言的主詞與謂詞看存在的殊相與共相
制定一般反濫用條款:達成平衡
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合