
DOI:https://doi.org/10.1016/j.autcon.2022.104524
50天免费访问链接:https://authors.elsevier.com/a/1fZdD3IhXMtgu3
00
太长不看版
审图/设计审查就是基于规范对设计模型/图纸进行校核,自动审查(Automated Rule/Compliance Checking,ARC/ACC)技术可以提高建筑行业设计审查环节的质量和效率,是土建行业转型升级的关键技术之一。自动审查系统需要将以自然语言表达的法规文本转化为计算机能够运行的代码,此过程称为规则解译。现有的自动审查系统通常基于硬编码的方法进行规则解释,该方法解译得到的规则很难进行有效维护和修改。因此,自动规则解译技术得到研究与发展。
自动规则解译的重要一环是让法规文本中的概念与设计模型中的概念对齐,称为语义对齐。即让二者“说同一种语言”。但规范与设计模型之间往往存在语义鸿沟,而现有基于人工建立的映射表的语义对齐方法开发维护成本较高,鲁棒性较低,对智能审查带来了极大阻碍。
为了解决上述问题,本文提出了一种基于自然语言处理(Natural Language Processing, NLP)与领域知识的自动审查框架,旨在利用领域知识与自然语言处理提升语义对齐的能力,从而更好地支持规则自动解译。相关实验表明,所提出的框架和方法利用自然语言处理与领域知识提升了语义对齐的准确率,准确率达到了 90.1%,显著优于常用的人工映射表匹配方法。此外,所提出的自动规则解译方法支持隐含属性推理、高阶逻辑计算等复杂规则的解译和推理,相比领域专家人工解译(硬编码的方法)提效5倍以上。综上所述,本研究引入领域知识,实现了规范与设计模型/图纸的自动语义对齐,突破了隐含属性推断、高阶逻辑描述等复杂规则解译与推理困难的瓶颈,大幅提升了审图效率。
01
引言
根据建筑规范进行设计审查可以确保建筑全生命周期的安全性、环保性和舒适性,是提高设计质量的一项重要环节。由于审查过程需要依赖广泛的人工知识,建筑设计长期以来都是由领域专家进行人工检查。但是,人工审查主观性强、成本高、低效且易错。因此,自动审查(Automated Rule/Compliance Checking,ARC/ACC)是提升设计审查环节质量与效率的关键技术。
但是,大多数现有的自动审查系统通常基于硬编码或手动规则解释方法,很难进行有效维护和修改,即使是将法规文本解释为计算机可处理格式的半自动化和自动化方法,也需要大量的人力标记。
为了使规则解译更加高效和透明,自然语言处理(Natural Language Processing, NLP)得到了广泛的应用。但是,一方面,受限于目前广泛使用的一阶逻辑子句的可表示性,具有隐含属性需要额外推理的复杂规则难以得到解译。例如“一个工厂的层数不能超过2层”这句条文。当BIM模型中未存储层数时,需要对楼层对象进行计数以获得层数。该过程依赖聚合函数计算得出层数,而一阶逻辑子句的技术功能较弱。另一方面,模型与规范文本之间仍然存在语义鸿沟,规范文本中的概念是自然语言表达的,而模型则是通过类与对象来表达概念,让二者“说同一种语言”(语义对齐)是自动规则解译的关键步骤。现有语义对齐往往是采用人工编制的映射表格,编制表格的过程需要耗费巨大的人力;并且如果出现未纳入映射表格的同义词,则映射会失败,准确性与鲁棒性较低。亟需一种更强大、更灵活的自动语义对齐方法。因此,本文提出了基于自然语言处理的知识增强语义对齐和自动规则解译方法。具体工作包括:(1)基于语义相似性将法规概念与本体中的概念自动对齐;(2)通过检测并解决潜在的规则冲突提高规则解译的准确性;(3)基于SPARQL自动生成具有隐含信息的复杂规则。
本文使用一个实际厂房案例实现了所提出的方法,结果表明领域知识增强的语义对齐准确率达到 90.1% ,提出的自动规则解译减少了人工工作并提高了规则解译效率,所采用的 SPARQL 语言适用于更广泛的规则解译和审查。本文的工作可以极大地促进自动审查的研究和应用。
02
支持自动规则解译的自动审查框架
1)系统整体架构
本文提出了一种基于自然语言处理技术与领域知识,支持自动规则解译的自动审查框架,如图1所示。该框架由四个部分组成:(1)基于本体的知识建模、(2)模型准备、(3)规则解译和(4)模型检查。模型准备旨在将存储在IFC格式的BIM模型数据自动转换为Turtle(Terse RDF Triple Language)格式,包括模型转换和模型语义扩充。本文的介绍重点放在基于本体的知识建模、规则解译。模型准备详见附录。本文的模型检查采用GraphGB提供的推理机进行检查。

图1 基于自然语言处理和领域知识的自动规则审查框架
2)基于本体的知识建模
首先,为了整合特定领域的知识和概念,利用半自动本体构建方法开发了建筑防火本体(FPBO)。此外,还基于FPBO和领域知识,人工定义了所有类(class)、数据属性(data property)和对象属性(object property)的域值(domain-range)约束、等价类(equivalent class),以用于冲突消解。定义了用于模型语义扩充的SWRL规则,以基于推理机获取建筑物中的隐含信息。

图2 建筑防火本体的结构
3)规则解译
规则解译旨在基于自然语言处理技术自动将用自然语言表达的强制条文解译为计算机可处理的代码。一个处理示例如图3所示。

图3 自动规则解译的示例
本文中采用课题组此前[1]所提出语义标注与解析方法,从自然语言规范生成语法树;采用维基百科中文语料和中文规范语料库训练词向量模型,从而计算文本表达的概念与本体概念的语义相似度,实现初步语义对齐。随后提出两类冲突消解方法,即域-值冲突消解方法和等价类冲突解决方法,根据土木工程领域知识修改语义对齐结果。在语义对齐和冲突解决之后是代码生成环节,本文采用一种基于领域关键词与规则的条文分类方法,以识别出适合不同条文的SPARQL函数;最后执行代码生成步骤以将语法树转换为计算机可处理的格式(本文以SPARQL为例)。

图4 冲突消解的示例

图5 代码生成过程中需要考虑的SPARQL语法
03
实验验证
选择《中国建筑防火设计规范》(GB 50016-2014)第3章中的强制条文作为数据源,并建立了条文分类、语义对齐的数据集。语义对齐数据集包括27种类型的语义对齐标签,99个句子和468个语义对齐标签。数据集可以在https://github.com/SkydustZ/auto-rule-transform 上找到。
首先对不同语义对齐方法的性能进行评估,以准确率和运行时间作为评价指标,结果如表1所示。关键字匹配相关算法的准确率最低,KW为55.8%,KW-Weighted算法的准确率为65.2%。基于语义相似度匹配的方法(W2V-avg,WQ2V-tfidf,WMD)的准确率高于基于关键字匹配的算法。本文所提出的语义相似度和冲突消解算法(W2V-avg+conflict resolution)达到了90.1%的最佳准确率。
表1 不同语义对齐方法的性能

表2显示了本文的方法和以前的方法可以自动解译的规则类别。由于SPARQL语言提供了预定义的函数,这些函数更适合简洁地表示具有隐含属性的规则。因此,本文提出的方法可以解译2.1和2.2类的规则。
表2 可解译规则类别

最后对所提出的自动规则解译方法效率进行评估。选择 4 个直接属性简单条文(Class 1)和 8 个间接属性复杂条文(Classes 2.1 & 2.2)。将所提出的方法所消耗的时间与专家人工解译所消耗的时间进行比较,结果如表3所示。所记录的时间为将规则从自然语言解译为可正确运行的SPARQL所花费的时间。结果表明,即使考虑人工修正时间,自动规则解译所消耗的时间仅是人工解译时间的五分之一,如表3所示。
表3 自动规则解译方法消耗的时间比较

04
应用实例
本文中对一个实际工厂建筑实施规则检查,选择三个示例规则,包括一个直接属性简单条文和两个间接属性复杂条文。利用所提出的方法,将规则解译为SPARQL代码,并使用GraphDB执行代码,以检查模型合规性。图6显示了“生产的火灾危险性类别为丙级,厂房的耐火等级为三级的厂房层数不超过2层。”这条规则解译及模型检查结果。所提出的系统正确进行了规则解译并发现了模型中不符合规范之处。检查结果提供不合规元素的全局 ID,用户可以根据全局 ID 直接定位到不合规的构件。

图6 使用提出的自动审查系统进行消防设计合规性检查的实例
05
结论
本文中,我们提出了一个支持自动规则解译的自动审查框架。在这项研究中,所使用的工具都是开源的,本文所开发的自动规则解释原型系统和开发的数据集都是开源的(访问链接:https://github.com/SkydustZ/auto-rule-transform),可以极大地促进自动审查的研究和应用,主要结论总结如下:
(1)在语义对齐算法方面,所提出的语义相似度匹配与冲突消解算法达到了90.1%的最佳准确率。
(2)所提出的自动文本分类方法能根据可解译的难度对法规文本进行分类,以确定每条规范最合适的SPARQL预定义函数,实现隐含属性推断和高阶逻辑计算,从而可以支持更广泛的规则解译。
(3)将所提出的方法所消耗的时间与专家人工解译所消耗的时间进行比较,即使考虑人工修正时间,自动规则解译所消耗的时间仅是人工解译时间的五分之一,所提出的规则解译方法大幅提升了审查效率。
06
附录
IFC(Industry Foundation Classes) 是基于 BIM 的项目中常用的协作格式,许多 BIM 软件程序都支持 IFC 格式。因此,使用 IFC 文件进行数据交换可以提高自动审查系统的可扩展性。但是IFC文件不能被本体所识别,因此需要将IFC文件转化为本体能够识别的文件形式,例如三元组。
1) 模型转换
本研究开发了一种新的RDF(Resource Description Framework)转换器,将IFC数据转换为RDF格式。包括三个子步骤:(1)概念映射,将IFC对象的概念映射到FPBO中的类;(2)IFC解析,利用IFCOpenShell解析IFC文件并将必要的对象和属性存储在内存中,然后根据本体映射结果将内存中的对象和属性映射到FPBO概念;(3)Turtle文件生成,将存储在内存中的映射数据按照 Turtle 语法输出到 Turtle 文件中。
2) 模型语义扩充
利用pellet推理机,可以利用SWRL规则对模型进行语义扩充,以推理出并显式存储隐含的信息,从而支持后续的审查过程。
[1]Zhou, Y. C., Zheng, Z., Lin J.R., Lu X.Z. (2022). Integrating NLP and Context-Free Grammar for complex rule interpretation towards automated compliance checking. Computers in Industry, 142, 103746. https://doi.org/10.1016/j.compind.2022.103746
点击阅读原文可在2022年9月30日前免费下载论文全文。
---End---
相关研究
特刊征稿
专著
人工智能与机器学习
城市灾害模拟与韧性城市
高性能结构与防倒塌
新论文:抗震&防连续倒塌:一种新型构造措施
长按识别二维码,关注我们的科研动态
