Building design automatic compliance checking method based on ifc and deep learning
Patent Information
- Application Number
- CN202311405781.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-10-27
- Publication Date
- 2026-08-21
- Estimated Expiration
- 2043-10-27
AI Technical Summary
[0004]为解决传统模式下合规性检查不全面、效率低等问题,本发明结合深度学习和IFC标准,提供了一种建筑设计自动合规性检查方法
[0021](1) A method for automatically structuring and expressing normative clauses is proposed to realize the automatic generation of SPARQL inspection rules and the construction of a rule base, so that the subsequent compliance inspection process can select inspection rules in a targeted manner, thereby improving inspection efficiency.
Smart Images

Figure CN117648852B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of building code compliance inspection technology, and relates to an automatic compliance inspection method for building designs based on IFC and deep learning. This invention automatically converts code clauses into computer-readable language using the BERT-BiLSTM-CRF model and SPARQL query language, and proposes a model information extraction algorithm to solve the problems of low efficiency and poor accuracy in traditional compliance inspection methods. Background Technology
[0002] As a crucial part of the engineering construction process, design compliance inspection aims to identify and correct design flaws in engineering design models or drawings that do not conform to national or local standards during the engineering design phase, thereby reducing property and personnel losses caused by improper design. Currently, compliance inspections in my country are mostly based on two-dimensional drawings and related documents, relying on manual inspection. This method is inefficient, inaccurate, and cannot guarantee the comprehensiveness of compliance inspections. With the continuous development of new technologies in the construction field, various complex buildings such as super high-rise buildings and large-scale complexes are emerging. These projects involve numerous drawings and complex structures, making manual review insufficient to meet the demands for high-efficiency and high-accuracy inspections. Traditional architectural design compliance inspection work faces significant challenges.
[0003] In recent years, Building Information Modeling (BIM) has developed rapidly and received widespread attention in the construction industry. However, the massive amount of data in BIM models poses a challenge to achieving rapid and effective compliance checks. Therefore, it is necessary to preprocess the BIM model before conducting the review to extract the information required for the inspection, thereby improving inspection efficiency. Furthermore, as a crucial part of automated compliance checks, the automation level of the structured expression of regulations needs to be improved. The rapid development and application of technologies such as Natural Language Processing (NLP) and Deep Learning (DL) have provided new approaches to achieving the automated structured expression of regulatory provisions. Summary of the Invention
[0004] To address the shortcomings and inefficiencies of traditional compliance checks, this invention combines deep learning and IFC standards to provide an automated compliance check method for architectural designs. By applying deep learning to the structuring process of regulatory clauses, the main inspection objects and attributes within the clauses are obtained, and a computer-readable SPARQL query language is automatically generated to construct a corresponding regulatory rule base. This replaces the traditional method of manually reading and processing regulations. Simultaneously, information such as concepts and attributes in the BIM model is extracted and enriched, and then checked using the regulatory rule base to determine whether the model conforms to the relevant regulatory requirements. This invention achieves automated compliance checks on architectural design models, improving the accuracy, scientific rigor, and standardization of architectural design compliance checks.
[0005] The technical solution of this invention:
[0006] An automated compliance check method for architectural design based on IFC and deep learning includes the following steps:
[0007] (1) Standardized expression of clauses
[0008] First, the specification text is preprocessed, converting long specification clauses into single sentences and manually annotating them to form a dataset. The dataset employs a BIO annotation strategy, dividing the specification clauses into conditional and requirement sections. Each section contains four semantic tags: sub, prop, cmp, and value, representing the object being checked, the attribute being checked, comparison terms or existence relationships, and attribute values, respectively. To further distinguish the semantic tags in the conditions and requirements, the semantic tags in the conditional section are prefixed with "R". In the BIO annotation strategy, the position of the "B" (Beginning) marker indicates the first Chinese character of an entity, the position of the "I" (Inside) marker represents the other Chinese characters of the entity besides the first one, and "O" (Outside) indicates characters that do not belong to any entity type. When an entity consists of only one Chinese character, only "B" is used for annotation.
[0009] Secondly, a BERT-BiLSTM-CRF neural network model, consisting of a BERT module, a BiLSTM module, and a CRF module, was trained using the labeled dataset. The trained model was then used for named entity recognition of standard text and the recognition results were returned. Specifically, BERT utilizes its multi-layer encoder to extract semantic features of sentences, outputting a vector sequence from the input text. BiLSTM, through a bidirectional recurrent neural network, further captures the sequential relationships between the vector features extracted by BERT, adjusting the features according to contextual information, processing bidirectional semantic information, and resolving long-term dependencies and gradient vanishing problems. The output of BiLSTM is used as the input to the CRF layer to learn and infer the transition probabilities and dependencies of each label in the sequence. Global optimization of the labeling results through CRF avoids the local optima problem of BiLSTM, resulting in more accurate and stable labeling performance.
[0010] Finally, a keyword-based classification method was used to categorize the standard provisions into direct attribute classes, indirect attribute constraint classes, and other classes. Since SPARQL has strong reasoning capabilities for implicit information, SPARQL review rule templates were established for different types of standard provisions. The structured expression of the standard provisions was achieved by mapping the named entity recognition results to the rule templates. Furthermore, the standard provisions were categorized and stored in a MySQL database according to classification standards such as building type, forming a standard rule base.
[0011] (2) Model Information Extraction
[0012] Using IFC files as the data source, and ifcOpenShell as the development tool, a model information extraction algorithm was designed to extract model information in a targeted manner. The algorithm is as follows: First, all entity types of the inspected objects are obtained, and all entity types are traversed. Then, all instances under a specific category are determined based on the entity type. Next, all instances are traversed, and for each instance, its GlobalID, derived attributes, and inverse attributes are extracted, along with their names and values. The extracted information is stored in a Turtle file in triple format, where GlobalID is the subject, attribute name is the predicate, and attribute value is the object. The extracted file can reduce information redundancy and improve inspection efficiency to a certain extent.
[0013] (3) Information integrity check
[0014] The integrity check of Building Information Modeling (BIM) mainly focuses on checking the integrity of component attributes to determine whether the attribute information of components in the model is missing. This invention constructs an information requirement template by analyzing the specification inspection requirements, and then performs integrity checks on the BIM model based on the template. That is, the integrity check method based on template matching uses the sub and prop entities in the named entity recognition results to create a model information requirement matching template, which mainly includes the inspection object (sub entity) and the inspection attribute (prop entity). For an inspection object, firstly, the object to be inspected and all its attributes to be inspected are extracted from the template; secondly, in the Turtle file stored after step (2), all instances of the inspection object and all attributes corresponding to each instance are extracted; finally, all instances are traversed to determine whether the instance attribute matches the inspection attribute of the inspection object. If the match is successful, the attribute value of the attribute is extracted and it is determined whether the attribute value exists.
[0015] (4) Rich model semantics
[0016] The semantic enrichment of the BIM model mainly achieves the following two goals: First, it supplements the missing information in step (3) through semantic enrichment, enabling accurate and comprehensive model checking; second, it infers implicit information in the model to assist in model compliance checking. The specific steps are as follows:
[0017] First, missing attribute information is enriched. Missing attributes are batch-added by creating project parameters in Revit. Second, missing attribute values are enriched. Components are queried based on the component IDs output by the integrity check, thus enabling rapid supplementation of missing attribute values. Finally, implicit information that is not explicitly stated but can be inferred from other information is enriched. This invention designs an applicable set of inference rules based on the obtained specification check objects and extracted model information. Jena inference is an application development kit for the Semantic Web, providing multiple inference engines. Therefore, by utilizing Jena inference and the corresponding rules, new knowledge can be inferred, thus enriching implicit information.
[0018] (5) Model compliance check
[0019] The model type is determined according to the rule base classification standard. The rule set to be checked is selected from the database established in step (1). The check rules in the rule set are read one by one. Then, the semantically rich Turtle file processed by steps (2), (3), and (4) is queried in turn. For components that do not conform to the rules, the component ID is output.
[0020] The beneficial effects of this invention are:
[0021] (1) A method for automatically structuring and expressing normative clauses is proposed to realize the automatic generation of SPARQL inspection rules and the construction of a rule base, so that the subsequent compliance inspection process can select inspection rules in a targeted manner, thereby improving inspection efficiency.
[0022] (2) By analyzing the IFC standard and the way IFC information is expressed and stored, and based on the inspection requirements, the information extraction requirements and paths were determined, and a model information extraction algorithm was proposed accordingly. The proposed algorithm can extract model information in a targeted manner, significantly reducing the size of model information files, reducing information redundancy, and improving the efficiency of compliance inspection to a certain extent.
[0023] (3) Applying model information integrity checks and semantic enrichment to the field of compliance checks improves the comprehensiveness of compliance checks. Semantic enrichment methods based on Revit and Jena reasoning are proposed, and a Jena reasoning rule set is constructed, improving model quality. Attached Figure Description
[0024] Figure 1 This is a flowchart illustrating the overall structure of the present invention.
[0025] Figure 2 This is a structural diagram of the BERT-BiLSTM-CRF model of the present invention.
[0026] Figure 3 This is a flowchart of the model information extraction algorithm of the present invention.
[0027] Figure 4 This is a schematic diagram of a BIM model according to an embodiment of the present invention.
[0028] Figure 5 This is a diagram showing the compliance check results of an embodiment of the present invention. Detailed Implementation
[0029] The embodiments of the present invention will now be described in detail with reference to the accompanying drawings and examples.
[0030] An automated compliance check for architectural design based on IFC and deep learning, the main process of which is as follows: Figure 1 As shown, the details are as follows:
[0031] Step 1 involves preprocessing and manually annotating the text data (semi-structured and unstructured data) in the specification to obtain an annotated dataset. This includes:
[0032] Step 1.1: Use an OCR recognition tool to automatically recognize the text in the image or PDF format specifications, convert it into an editable format, and delete the preface, table of contents, and other content.
[0033] Step 1.2: For unstructured text data, filter quantitative clauses and determine whether they are single clauses (containing only one inspection object and inspection attribute). If they are complex clauses (a standard clause may contain several inspection objects or limit multiple attribute values for a certain inspection object), they are further divided into single clauses. For semi-structured tabular data, manually extract information from the table and form single clauses.
[0034] Step 1.3: Using annotation tools, the BIO annotation strategy is employed to perform named entity recognition annotation on a single text entry, forming a standardized text named entity recognition dataset (DataSets). Entity labels include eight tags: sub, prop, cmp, value, Rsub, Rprop, Rcmp, and Rvalue, as shown in Table 1.
[0035] Table 1 Named Entity Tags
[0036]
[0037] Step 2: Train the BERT-BiLSTM-CRF model using DataSets to obtain the named entity recognition model, which specifically includes:
[0038] Step 2.1: Randomly divide the dataset DataSets into training set, validation set and test set in a ratio of 8:1:1. The training set is used to train the named entity recognition model determined above, the validation set is used to adjust the model parameters to select the best parameters of the model, and the test set is used to evaluate the best model.
[0039] Step 2.2: Build the BERT-BiLSTM-CRF model. This model takes a single sentence as input and outputs the maximum labeled class probability of each character. The model structure is as follows: Figure 2 As shown.
[0040] Step 2.3: Train the model using the training and validation sets, and evaluate the model's performance using the test set. This invention uses accuracy (P), recall (R), and F1 score as the evaluation metrics for named entity recognition in this experiment. The calculation formulas for the three metrics are as follows:
[0041]
[0042]
[0043]
[0044] Where T represents the total number of correctly identified entities, F represents the total number of incorrectly identified entities, and N represents the total number of unidentified entities.
[0045] Step 3: Classify the standard clauses and use the named entity recognition results to convert the standard clauses into SPARQL query rules.
[0046] Step 3.1: To reduce the difficulty of structurally expressing normative clauses, this invention categorizes clauses into direct attribute constraint classes, indirect attribute constraint classes, and other classes that cannot be automatically interpreted, based on the difficulty of structuralizing the normative clauses, as shown in Table 2. The indirect attribute constraint class includes quantity constraint classes, distance constraint classes, and other categories. Simultaneously, a keyword matching-based method is used to classify the normative clauses. Based on the named entity recognition results, classification keywords are determined, forming a keyword table.
[0047] Table 2 Classification of Standard Clauses
[0048]
[0049] Step 3.2: Create review rule templates for different types of regulatory provisions, and convert the regulatory provisions into SPARQL review rules based on the templates. The review rules are shown in Table 3.
[0050] Table 3 SPARQL Review Rules
[0051]
[0052] Step 4: Export the BIM model as an IFC file. The process is as follows: Figure 3 As shown, ifcOpenShell is used to extract information from IFC files using Python, and the component information is stored in the form of triples, thus forming the Turtle file containing the model information to be inspected.
[0053] Step 5: Perform integrity checks and semantic enrichment on the information in the Turtle file obtained in Step 4. Then, use SPARQL review rules to perform compliance checks on the enriched file.
[0054] Step 5.1: Based on the specification clauses, establish an inspection template, mainly including the inspection objects and their attributes. Check the attribute information in the Turtle file according to the template. For missing attributes and attribute values, use modeling software such as Revit to supplement the information.
[0055] Step 5.2: For implicit information, establish the Jena inference rule set. Based on the corresponding rules, infer and add unstated information in the model, and use the inference engine to supplement the implicit information of the model. Examples of inference rules and results are shown in Table 4.
[0056] Table 4. Examples of Jena's inference rules and inference results
[0057]
[0058]
[0059] Step 5.3: Determine the set of rules to be inspected, and use each SPARQL review rule to query the enriched Turtle file, outputting the component IDs that do not meet the specification requirements.
[0060] Example
[0061] This embodiment introduces specific regulatory clauses and uses a three-story teaching building model as the inspection object to test the effectiveness of the compliance inspection method. To verify the effectiveness of the proposed method, some attributes in the model were manually adjusted. This embodiment uses the deep learning framework TensorFlow-GPU 2.3.0, is developed using Python 3.7, and the model is created using Autodesk Revit 2018, with IFC4 selected as the export format. The specific compliance inspection method steps are as follows:
[0062] (1) Preprocessing of normative clauses
[0063] In this embodiment, the quantitative provisions (including text and tabular data) in the "Code for Fire Protection Design of Buildings" GB 50016-2014(2018) are selected as the standard provisions, and they are preprocessed according to step 1.
[0064] (2) Training of Named Entity Recognition Model
[0065] This example obtains 525 single specification clauses through preprocessing and randomly divides them into training, validation, and test sets in an 8:1:1 ratio. To verify the effectiveness of the BERT-BiLSTM-CRF model in named entity recognition, a comparative experiment was conducted on the constructed dataset, comparing it with the BiLSTM-CRF model. Precision, recall, and F1 score were selected as evaluation metrics, and the model's performance on the training and test sets is shown in Table 5. In the training and test sets, the F1 score of the BERT-BiLSTM-CRF model improved by 13.3% and 10.8% respectively compared to the BiLSTM-CRF model, fully demonstrating the feasibility of using the BERT-BiLSTM-CRF model for named entity recognition.
[0066] Table 5 Experimental Results
[0067]
[0068]
[0069] (3) SPARQL review rule generation
[0070] First, based on keywords, the normative clauses are automatically divided into direct attribute constraints, quantity constraints, distance constraints, and other categories that cannot be automatically interpreted. The classification categories and some keywords are shown in Table 6.
[0071] Table 6. Classification of Standard Clauses and Some Key Terms
[0072]
[0073] Secondly, based on the classification results of the normative provisions and the SPARQL review rule template, the normative provisions are converted into SPARQL review rules, as shown in Tables 7 and 8.
[0074] Table 7. Direct Attribute Class SPARQL Review Rule Template
[0075]
[0076] Table 8. Quantity Constraint SPARQL Review Rule Template
[0077]
[0078] (4) Extraction of IFC file information
[0079] The teaching building has a total construction area of 2874 square meters. 2 The building has three floors above ground, a height of 13.5m, and a fire resistance rating of Class I. The BIM model is as follows: Figure 4 As shown. To verify the effectiveness of the proposed method, the following adjustments were made to some attributes in the model: the fire resistance ratings of four doors were randomly deleted to verify the model integrity check method; the fire resistance rating of some load-bearing walls was changed to 2.0h, and the combustion performance was changed to flame retardant; some fire compartment safety exits were deleted. Based on the above, all entity types of the inspection objects were first obtained, and all entity types were traversed. Then, all instances under a certain category were determined according to the entity type. After that, all instances were traversed, and for each instance, its GlobalID, derived attributes, and inverse attributes were extracted, along with their attribute names and values. The extracted information was stored in a .ttl file in triple format, where GlobalID was used as the subject, attribute name as the predicate, and attribute value as the object. The BIM model of the teaching building was exported as an IFC file. Based on the FC file information extraction algorithm, IfcOpenShell was used to extract the inspection information of doors, walls, and fire compartments. Table 9 shows the information extraction results.
[0080] Table 9 Information Extraction Results
[0081]
[0082]
[0083] (5) Model integrity check and compliance check
[0084] Based on the information extraction, the information in the model was checked according to the information integrity check method. To verify the effectiveness of the integrity check, the fire resistance rating attribute values of four doors were randomly deleted. The integrity check results are shown in Table 10, which mainly include the component GUID, ID, attribute name, and missing type.
[0085] Table 10 BIM Integrity Check Results
[0086] 0s04mA3A5CBhsL0Zh1100A 284091 Fire rating Attribute value missing 0s04mA3A5CBhsL0Zh110QA 284005 Fire rating Attribute value missing 0v9I$2BAvEjhhTutUqUdi1 283531 Fire rating Attribute value missing 0v9I$2BAvEjhhTutUqUd1Q 283403 Fire rating Attribute value missing
[0087] Based on the above integrity check results, the model needs semantic enrichment. For the missing information, the fire resistance rating attribute value can be added by retrieving relevant components using their IDs in Revit. Since the addition of missing information is for the BIM model, an information extraction step is still required after addition, followed by implicit information reasoning on the extracted .ttl file. For the enrichment of implicit information, Jena reasoning is used.
[0088] By extracting information from the model, the fire resistance rating and building type of the model can be obtained. Based on this, applicable rule clauses are selected from the rule base to conduct compliance checks. The building model used is a public building with a fire resistance rating of Class I. Therefore, the following rules are mainly selected to verify the feasibility of the proposed method, as shown in Table 11.
[0089] Table 11 Examples of Case Rules
[0090]
[0091] The inspection results of this embodiment are as follows: Figure 5 As shown, the fire resistance limit and combustion performance of load-bearing walls 3bgw$n3zH6ThahYzr1Fd5V and 3bgw$n3zH6ThahYzr1Fd4d, as well as the number of safety exits in fire compartment 19ZZZ8bujBRh5tkMRjoRmr, do not meet the requirements of the specifications. This is consistent with the artificially modified settings in this study, proving the effectiveness and feasibility of the method proposed in this invention.
Claims
1. An automated compliance check method for architectural design based on IFC and deep learning, characterized in that, Includes the following steps: (1) Standardized expression of clauses First, the specification text is preprocessed, converting long specification clauses into single sentences and manually annotating them to form a dataset. The dataset adopts the BIO annotation strategy, dividing the specification clauses into condition and requirement parts. Each part contains four semantic tags: sub, prop, cmp, and value, which are used to represent the object being checked, the attribute being checked, comparison words or existence relationships, and attribute values, respectively. To further distinguish the semantic tags in the condition and requirement parts, the semantic tags in the condition part are prefixed with R. In the BIO annotation strategy, the position of the B tag indicates the first Chinese character of a certain entity, the position of the I tag represents the other Chinese characters of the entity besides the first Chinese character, and O is used to indicate Chinese characters that do not belong to any entity type. When an entity consists of only one Chinese character, only B is used for annotation. Secondly, a BERT-BiLSTM-CRF neural network model, consisting of a BERT module, a BiLSTM module, and a CRF module, was trained using the labeled dataset. The trained model was then used for named entity recognition of the standard text and the recognition results were returned. BERT utilizes its multi-layer encoder to extract semantic features of sentences, outputting the input text as a vector sequence. BiLSTM, through a bidirectional recurrent neural network, further captures the sequential relationships between the vector features extracted by BERT, adjusting the features according to contextual information, processing bidirectional semantic information, and solving the problems of long-term dependencies and gradient vanishing. The output of BiLSTM is used as the input to the CRF layer to learn and infer the transition probabilities and dependencies of each label in the sequence. The CRF globally optimizes the labeling results, avoiding the local optimum problem of BiLSTM and obtaining more accurate and stable labeling results. Finally, a keyword-based classification method was used to divide the standard provisions into direct attribute classes, indirect attribute constraint classes, and other classes. Due to the reasoning ability of the SPARQL language for implicit information, SPARQL review rule templates were set for different types of standard provisions. The structured expression of the standard provisions was completed by the correspondence between the named entity recognition results and the rule templates. In addition, the standard provisions were classified and stored in a MySQL database according to the classification standards of building types to form a standard rule base. (2) Model Information Extraction Using IFC files as the data source, and ifcOpenShell as the development tool, a model information extraction algorithm was designed to extract model information in a targeted manner. The specific model information extraction algorithm is as follows: First, obtain all entity types of the inspected objects and traverse all entity types. Then, determine all instances under a certain category according to the entity type. After that, traverse all instances and extract the GlobalID, the attribute names and attribute values of each derived attribute and the inverse attribute for each instance. The extracted information is stored in the Turtle file in triple format, where GlobalID is the subject of the triple, the attribute name is the predicate, and the attribute value is the object. (3) Information integrity check Building Information Modeling (BIM) integrity checks target the integrity of component attributes to determine whether the attribute information of components in the model is missing. By analyzing the specification inspection requirements, an information requirement template is constructed, and then the integrity of the BIM model is checked according to the template. That is, the integrity check method based on template matching uses the sub and prop entities in the named entity recognition results to create a model information requirement matching template, including the inspection object and inspection attributes. For an inspection object, firstly, the object to be inspected and all its attributes to be inspected are extracted from the template. Secondly, in the Turtle file stored after step (2), all instances of the inspection object and all attributes corresponding to each instance are extracted. Finally, all instances are traversed to determine whether the instance attribute matches the inspection object's attribute to be inspected. If the match is successful, the attribute value of the attribute is extracted, and it is determined whether the attribute value exists. (4) Rich model semantics The semantic enrichment of the BIM model achieves two goals: First, it supplements the missing information in step (3) through semantic enrichment, enabling accurate and comprehensive model checking; second, it infers implicit information in the model to assist in model compliance checking; the specific steps are as follows: First, enrich missing attribute information; batch supplementation of missing attributes is achieved by creating project parameters in Revit. Second, enrich missing attribute values; components are queried based on the component IDs output by the integrity check, thereby achieving rapid supplementation of missing attribute values. Finally, enrich implicit information that is not explicitly stated but can be inferred from other information; a set of reasoning rules is designed based on the obtained specification check objects and extracted model information; Jena reasoning is used to infer new knowledge based on the corresponding rules, thereby enriching implicit information. (5) Model compliance check The model type is determined according to the rule base classification standard. The rule set to be checked is selected from the database established in step (1). The check rules in the rule set are read one by one. Then, the semantically rich Turtle file processed by steps (2), (3), and (4) is queried in turn. For components that do not conform to the rules, the component ID is output.