Automating Code Compliance in AECAECbytes Feature (October 22, 2015)

Towards the end of my article, Autodesk AEC Summit: 2016 Release and Upcoming Products, published a few months ago, I urged leading vendors like Autodesk to look into applying their technological skills to automating the code compliance process in AEC, which still seems to be “unchartered territory” as far as technological advancements such as BIM are concerned:

“Likewise, it would also be helpful to the AEC industry for vendors like Autodesk to address one aspect of AEC practice that seems to have been completely untouched by technology so far—the process of getting approvals and permits from regulatory authorities. Why are we still submitting drawings instead of models for approvals? Why are design proposals still being checked manually for code enforcement instead of running automated code-checking on BIM models? The AEC technology industry really needs to address this bottleneck to derive efficiencies from BIM across the entire AEC spectrum.”

Given that it’s been over 20 years since Singapore initiated its CORENET project for automating the checking of building plans submitted online for code compliance, and we have had a company like Solibri focused on model-checking since 1999, and BIM has taken off for all other processes in AEC, it remains somewhat of a mystery as to why the process of getting building approvals from regulatory agencies remains very much a 2D process, with the building drawings still being checked manually for code compliance. About the only technological progress that has been made is that the drawings can now be submitted electronically instead of as hard copy prints. For those using BIM for design and construction—which is an increasingly large number—the BIM model has to be “dumbed down” and flattened out in 2D for the purpose of submitting the design for building approvals. It seems like such a tremendous waste of resources and effort, not to mention the tedium of manually checking a “non-intelligent” 2D drawing for code satisfaction when quite a bit of that code-checking could have been automatically done on a 3D model.

Of course, it would be remiss of us to presume that automating code compliance is just a technological problem that has to be solved. There are likely many more issues at play, as an astute reader pointed out in a comment on the reference to automated code-checking in the above-mentioned article:

“… this would likely require a business model shift for the code promulgating authorities, whom I believe currently derive most of their revenue from selling new books to their relatively captive customers each code cycle.”

Still, it would be helpful to at least get an understanding of the different efforts and technologies that are working towards automating the code-checking process to get a sense of where the technology currently stands, where it is headed, and how much further it still needs to go.

Efforts to Automate Code Checking

Singapore’s CORENET was the first effort to attempt to automate code-checking, and it still remains the emblem of the automated code-checking “movement” worldwide. I first heard of this project all the way back in 1997 as a graduate student, and it seemed very ambitious at that time, given that BIM was nowhere on the horizon. Understandably, it was in the research stage at that time, far from being ready for prime-time. When I revisited it in 2005 (see the AECbytes archived article, CORENET e-PlanCheck: Singapore's Automated Code Checking System), substantial progress had been made and it seemed actually operational, with the implementation details and technology all worked out, and a full public rollout to happen shortly after the pilot implementation (Figure 1). It should be noted that CORENET itself was a larger national initiative to boost the turnaround time, productivity and quality of Singapore’s construction industry, and in addition to automated code-checking (called e-PlanCheck), it included the ability to electronically submit project plans and documents for approval (called e-Submission) and the availability of a central online repository of building and construction related information (called e-Info). With the introduction of BIM technology in the AEC industry, e-PlanCheck seemed poised to be a success, given that it is so much easier to check a model for code compliance than a drawing.

Figure 1. Implementation of the CORENET e-PlanCheck module in 2005. The image shows non-compliance results detected by e-PlanCheck for a specified clause in a building. The problem area is highlighted in red in the viewer. (Courtesy: novaCITYNETS Pte. Ltd., Singapore)

Fast forward 10 years, and if you visit the CORENET project website now, there is no mention of e-PlanCheck. e-Info has been greatly expanded, and there is now a BIM e-Submission in addition to a regular e-Submission along with submission templates for different disciplinary BIM applications including Revit, Bentley AECOsim, and Tekla Structures. However, there is no mention of any kind of automated code-checking. Obviously, the project was shelved at some point during the last 10 years.

A similar fate has befallen another promising automated code-checking project in the US. This was the SMARTcodes project to automate BIM-based code compliance that was initiated about 10 years ago—perhaps inspired by CORENET’s e-PlanCheck—by the International Code Council (ICC) in collaboration with BuildingSmart, the organization behind IFC and other model interoperability efforts. I recall attending a presentation on SMARTcodes at a conference several years ago and being gratified to see that the potential of BIM to enable more high-level tasks in AEC was being recognized and put to use. The project was exciting to both industry and academia—I found references to it in a 2007 Wisconsin Department of Commerce newsletter and in a journal paper, as well some notes on it in classes at Stanford University. Unfortunately, the SMARTcodes project was discontinued in 2008 due to lack of funding, as described here. There is no mention of SMARTcodes now on the ICC website, and its own website no longer works. As far as BuildingSmart is concerned, its focus seems to have shifted more towards furthering BIM interoperability with its openBIM initiative and no longer on pushing the use of BIM for more advanced tasks such as automated code-checking.

Another more recent initiative to automate code-checking is the AutoCodes project by the organization, Fiatech (which stands for “Fully Integrated and Automated Technologies for Construction”). Fiatech is a global consortium of capital project industry stakeholders that was launched in 2000, and as its name suggests, it is focused on developing advanced technologies for buildings, infrastructure, and other AEC industry segments such as process plants, oil and gas, etc. Since its mission is technology advancement, and it has such a broad representation from many AEC industries—which hopefully means that it is well-funded as well—Fiatech seems to be in a good position to make some headway in automated code-checking. It launched the AutoCodes project in 2011 with the objective of using technology to enable a digital review process, including automated code checking of BIM models (Figure 2), making the building regulatory process faster, more uniform, and ultimately more competitive. Its vision is to be able to reduce the review time “from 60 days to 60 seconds!”

Figure 2. A prototype implementation of the AutoCodes project listing the results of an automated code-checking exercise. (Courtesy: Fiatech)

The AutoCodes project was planned in multiple phases, each with different deliverables. Phase 1 was completed in 2012 and focused on demonstrating the feasibility of the project with a “proof of concept” implementation showing how codes, specifically those for access and egress in a retail structure, could be captured in the form of “rulesets” that could then be used to automatically check a BIM model for code compliance. Phase 2, which was launched shortly thereafter and has been recently completed, aimed to expand the development of rule sets for additional codes as well as develop model guidelines for a BIM model—called the Minimum Modeling Matrix or M3—that will allow it to be reviewed for code compliance. Phase 3 of the project, which is planned to be launched soon, will continue to develop the Minimum Modeling Matrix in other design areas, expand review capabilities to other codes and industries, and determine the steps that need to be taken by the public and private sectors to make AutoCodes adoptable across the nation.

Technological Requirements

What does automation of code-checking involve from a technology perspective? There’s no doubt that the introduction of BIM in the AEC industry has been responsible for even considering that code-checking could be automated in the first place. Without an intelligent building representation from which different aspects of the building could be deciphered and subsequently evaluated, any kind of automation of code-checking—from a CAD drawing—would be extremely difficult. You could, of course, develop sophisticated programs that can extrapolate building information from a 2D drawing, but having BIM makes the process so much easier. A BIM model of a building, created in any BIM application, readily provides us with the information about the building that needs to be checked.

Now that we have the building information easily available in a computable manner, there are other important pieces of technology required for automated code-checking: the ability to capture building codes in the form of computable rules; and a solution that can check a BIM model for the satisfaction of these rules. Thus far, we have seen only one AEC application that can do this—Solibri Model Checker (SMC), which was first reviewed in AECbytes in March 2009 and again in November 2011. While SMC is a general model-checking application that can check a model for any “rule” that has been encoded—even if it is not related to code-checking—it would be impossible to create any kind of automated code-checking system without such an application. This is why Solibri is one of the key technology partners working with Fiatech on the AutoCodes project. In fact, the illustrations shown in Figure 2 above and in Figure 3 below are of Solibri’s model-checking technology implemented in AutoCodes.

Figure 3. Checking a space in a BIM model for the satisfaction of spatial code requirements, captured as a rule, in Solibri Model Checker. (Courtesy: Solibri)

Another technology partner listed for the AutoCodes project is Avolve Software, whose flagship application is a product called ProjectDox, targeted specifically for electronic plan review. However, contrary to automating code-checking in any way, ProjectDox seems to be a portal for the electronic submission of 2D drawing files for review to the code-compliance authorities, who would then mark them up to indicate problem areas. The markups would be immediately available to the designers, who could update the design and submit the drawings again to the portal. In this manner, by avoiding the physical transmission of drawings and comments back and forth, the review cycle can be shortened. ProjectDox certainly seems to be a good stop-gap solution until we have a full-fledged commercial automated code-checking implementation in the AEC industry.

Going back to my original question of how leading vendors like Autodesk can think about applying their technological skills to automating code compliance, there is quite a bit that they can do. BIM applications can actually have rules built in for meeting design standards. This is already available to some extent in structural and MEP BIM applications—for example, in Autodesk Structural Bridge Design—as well as infrastructure design applications—for example, InfraWorks 360 and Civil 3D can both work with roadway design standards by AASHTO (American Association of State Highway and Transportation Officials) In some cases, the standards are built in as defaults, and there are even a few specific examples in Civil 3D where the user is notified if there is a standards violation. While it is undoubtedly more difficult to program rules for architectural design than for structure, MEP, or infrastructure—which tend to be more algorithmic, with computable rules—we could at least make a start with simple architectural criteria such as the minimum dimensions of a space depending upon its type, the dimensions of stairs including treads and risers, the number of elevators in a building, and so on.

Future Outlook

 We have had only a few automated code-checking initiatives in the building industry so far, and an even fewer number of those that have survived. In particular, the discontinuation of the code-checking component of Singapore’s CORENET program is a huge blow to the effort, given how advanced the prototype implementation was even 10 years ago. While Fiatech’s AutoCodes project is still alive, it seems to be progressing quite slowly and is still very much below the radar rather than being widely known about in the AEC industry. I attend a fair amount of AEC technology events and have still to come across a presentation on it, explaining what it is and how it will work.

At the same time, BIM implementation has been steadily growing all over the world, and it is likely that those working to advance technology in the building industry—including organizations such as the BCA (Building and Construction Authority) in Singapore, BuildingSmart, and even Fiatech—are spending most of the resources available to them to boost the implementation of BIM and speed up the transition from CAD.  This, of course, makes sense, since there are so many benefits to be gained from BIM adoption, not just during the design phase of a building but also during construction and operations/maintenance. In terms of priority, an “across-the-board” BIM implementation certainly ranks higher in the pecking order than automated code-checking in the AEC industry.

Does this mean that we can give up on automated code-checking as something that is not going to happen in our lifetime? I don’t think so. While automating code compliance is a technology challenge that many developers would love to work on, I realize now—contrary to my earlier expectations—that it makes a lot of sense to wait to work on commercializing it until BIM has matured and is universally adopted, perhaps even mandated. With so much work in AEC still being done in CAD, it would be difficult to expect regulatory agencies to have two different sets of code-checking processes, one for CAD and one for BIM. But when CAD becomes a legacy technology and most work is being done in BIM, we could certainly expect model-based code-checking technology to be widely adopted to conduct a large percentage—a number that Fiatech estimates could be as high as 80%—of compliance review automatically.

Whenever this happens, it would be great if the technology was ready to roll, so efforts like Solibri Model Checker and AutoCodes are extremely critical. Hopefully, others, including the BIM vendors will join in, and what seems to be a premature effort now will reach full maturity once it is ready to be adopted.

About the Author

Lachmi Khemlani is founder and editor of AECbytes. She has a Ph.D. in Architecture from UC Berkeley, specializing in intelligent building modeling, and consults and writes on AEC technology. She can be reached at

AECbytes content should not be reproduced on any other website, blog, print publication, or newsletter without permission.

Related Archive Articles

  • Solibri Model Checker v7
  • Solibri Model Checker is a model-checking tool that allows BIM models to be checked for potential problems, conflicts, or design code violations, with additional capabilities for visualization, walkthrough, interference detection, and model comparison. The enhancements in the new release include significant updates to its already user-friendly interface, new capabilities for the BIM QA/QC (Quality Assurance/Quality Control) process and workflow, as well as improvements in processing power and performance.
  • CORENET e-PlanCheck: Singapore's Automated Code Checking System
  • This article provides an overview of the CORENET project—an initiative that was launched in 1995 in Singapore to "propel the construction and real estate sector into the new millennium"—and takes an in-depth look at its automated code checking module, e-PlanCheck. .
  • Measuring BIM's Disruption: Understanding Value Networks of BIM/VDC
  • In this article, John Tobin, Director of Architecture at EYP, shares his insights on how the two contrasting types of innovation, "sustaining" and "disruptive" — as popularized in the book, The Innovator's Dilemma — can be applied to the AEC technology industry.
  • Around the World with BIM
  • This article attempts to capture the key developments in BIM implementation in different countries around the world, so that we have a better global perspective on BIM.
  • Exploring the National BIM Standard
  • This article explores the National BIM Standard or NBIMS that is still relative new in the AEC industry. It looks at the background of the standard and its development, examines how the NBIMS is related to the IFC effort, and looks at what exactly it contains, how it is situated internationally, and what it means for the average AEC professional.