AECbytes "Building the Future"
Article (January 29, 2009)
Bluethink House Designer: Automating the Re-use of Design Knowledge
AECbytes has explored several forward-looking technologies in recent years as part of its “Building the Future” series, including the design optimization technology of SITEOPS, the innovations being developed at Autodesk Labs, the online virtual reality world of Second Life, the technology of Visual Estimating that makes the link between BIM and cost estimating, the Singapore CORENET automated code checking initiative, and the rule-based design technology that allowed the third largest manufacturer of pre-engineered metal buildings in the US, Robertson Ceco Corporation, to automate its design and engineering tasks.
This month’s issue of the Building the Future series continues a similar kind of exploration and takes a look at the rule-based design technology of Bluethink House Designer, an application developed by Selvaag Bluethink. This company is a dedicated technology subsidiary of the Selvaag Group, one of the largest home building companies in Norway. Selvaag could not find any product in the market that supported its wish for a structured re-use of experiences between projects, and it launched Bluethink to focus on developing methods and IT-based tools for knowledge-based industrialized house building. The resulting set of Bluethink applications form a portfolio of important tools for Selvaag’s own construction operations and help improve its design and construction processes, enabling projects to be completed with better quality, in less time, with fewer resources, and with fewer errors. They are now commercially available to other companies, allowing them to also improve their processes by automating the re-use of their own expert knowledge and experience.
The Bluethink suite consists of three main components: Bluethink House Designer, focused on building design and development; Bluethink Supervisor, focused on project configuration and information management; and Bluethink Experience, focused on learning and knowledge management. While the three components are available as stand-alone applications that can be used individually in order to obtain specific functionality, Bluethink recommends the combined use of all the modules across the phases of design, engineering, construction, and operations to establish a continuous improvement cycle and obtain the best results and effects. In this article, we will take a detailed look at the House Designer application, and see how it automatically applies embedded knowledge to support design and analysis, highlighting the potential of computer technology to become a much more active participant in the design process than it currently is.
Overview of Bluethink House Designer
The Bluethink House Designer is fundamentally an application aimed at the design of repeating building types. While it is currently implemented for the design of single family homes and multi-story apartments, it can also be extended for building types such as retail stores, hospitals, hotels, and so on. Rather than being a full-blown CAD or BIM application, Bluethink House Designer provides a simple Java-based graphical interface for sketching out the basic layout of the design and adding furniture, equipment, and so on. The system then uses the rule sets that are administered in the associated Bluethink Experience application to automatically work out details such as door and window placements, walls including layers and joints, roof plans, radiators and heating, ventilation, plumbing, electrical conduits, etc., and generate a model of the design. It also point out conflicts and rule violations in the model and makes design recommendations to fix the problems.
The rules are defined using Design++, a knowledge-based modeling solution that I had written about when describing the automated building design and engineering system at Robertson Ceco Corporation. At that time, Design++ was the product of a small company called Design Power, Inc.; it was acquired by Bentley Systems a few years ago. Currently, Bluethink House Designer has rule sets that have been developed by Bluethink and local partners for specific customers—this includes Selvaag in Norway and Inspace, a social and affordable housing developer in the UK (see Figure 1). The rule sets have typically have to be customized by Bluethink for different companies in different countries, based on local building codes and the standards and best practices followed in the company. While many kinds of rule sets can be defined, they would broadly fall into these two main categories: generative rules, which are used to automatically create a detailed design from the conceptual input; and evaluative rules, which are used to check the designs for the satisfaction of specified criteria and constraints. We will look at the Bluethink rule sets more closely in a later section.
Figure 1. Examples of housing developments by Selvaag Group in Norway and Inspace in the UK. (Courtesy: Selvaag Group and Inspace)
Needless to say, the design is stored within the application in a semantically intelligent format, so Bluethink House Designer can definitely be seen as a BIM application. Once the design process has been completed in Bluethink House Designer by verifying the design against all the defined rules, it can be exported to other CAD/BIM applications for design development and structural and energy analysis. House Designer features direct integration with MicroStation (and thus Bentley Architecture) and a Norwegian application for prefabricated houses called DDS-CAD House Partner. It also includes IFC export capability, allowing the design to be further processed in any application capable of reading IFC files, including Revit, ArchiCAD, Tekla Structures, EnergyPlus, etc. In addition, it can generate an energy report of the modeled building and allows quantity data to be exported in XML format, which can subsequently be imported into a third-party calculation and bill of materials system.
How It Works
Let’s move on to see how exactly the application works. You would start by choosing the type of design you want to create—a single apartment, an apartment block, common entrance, garage, basement, etc. Depending upon the layout type chosen, there are different additional attributes that can be specified. For an apartment, this includes the name and the overall dimensions, as shown in Figure 2-a. The next step is to create horizontal and vertical support lines, which are used to specify how rooms and other objects should be placed in relation to each other. Support lines can be placed absolutely or relative to other lines at specific distances, as shown in Figure 2-b—the relative lines are indicated by arrows. The relative dependencies between support lines are very important, as they make it possible to create flexible apartment layouts that can automatically adjust to different overall dimensions while maintaining the same shape and configuration. Some of the support lines can be set to define the edges of the layout, either by specifying them as building lines or as axes lines.
Figure 2. Creating a new apartment layout in Bluethink House Designer, and defining the support lines for the layout.
After defining the support lines, the different spaces in the apartment can be created by using the Room tool. Both rectangular as well as non-rectangular rooms can be created. If support lines do not already exist at the room junctions that are selected, they will get automatically created. After defining a room, you can specify its type from the predefined room type list, as shown in Figure 3. This list is part of the customized knowledge base that is developed by Bluethink (or local partners) for each of its customers, and each of the predefined room types comes with associated rules and reasoning capability. Thus, selecting a specific room type such as “Living Room” for a space automatically applies to it all the rules associated with that type in the knowledge base. In order for the application to function properly, all the rooms have to be assigned a room type and they cannot be created overlapping each other. You can, however, create some rooms to have an open layout with another room, such as the Living room and Dining room in the example shown in Figure 3. It is indicated by a green line. Another point to note is that the application encourages the designer to follow the company standards captured in the knowledge base. So, for example, the terrace outside the dining room had to be modeled as a building part rather than as a room—there was no terrace or balcony room type in the list.
Figure 3. Defining the rooms in the apartment with the help of the support lines.
Once the functional layout has been defined, you can generate a detailed model from it. It can then be seen in the View floor mode, where the detailed floor plan is shown along with the conflict violations detected by checking the model against the active rule sets. For each conflict, the rule that is violated is shown, along with recommended solutions to fix the problem, when available. As you can see in Figure 4, doors and windows have been automatically picked and positioned together with switches and some other electric components, all based on the generative rules embedded in the system. In the right panel, the two violations detected for the Kitchen are shown. One is related to the lack of kitchen equipment that had not yet been placed in the model. The second is related to one of the provisions in the knowledge base, which requires the terrace door to preferably be placed between the Kitchen and Terrace rather than between the Dining room and Terrace. In trying to place this door, the system has found that the wall segment dividing the Kitchen from the Terrace is too small to accommodate the kind of door required in this position. The hyperlinks included along with the rule violations in the right panel point to documents that contain more information about that rule.
Figure 4. A floor plan view of the detailed model that was automatically created from the layout in Figure 3, shown with the conflict violations detected for the different spaces.
You can go further and add furniture, equipment, fixtures, and other building parts to the layout, in which case the evaluation engine will also take that into account and provide feedback accordingly when you generate the model. Groups of furniture and fittings can be created for easy re-use. All these objects are parametric and can automatically adjust to different sizes of walls and spaces. An example of an apartment layout with furniture and its subsequent Floor view after model generation is shown in Figure 5. The list of warnings for the different components appears in the right panel. A more detailed explanation of one of the rules that was accessed by following the included hyperlink is shown in Figure 6.
Figure 5. An apartment layout designed with furniture and the resulting floor plan view of the automatically generated model, showing the rules that are violated.
Figure 6. The PDF document explaining one of the door rules that was violated, accessed from a hyperlink in Figure 5.
The direct integration with MicroStation allows the layout created with Bluethink House Designer to be directly opened with an application such as Bentley Architecture. As shown in Figure 7, the Bluethink layout as well as rules are also active within Bentley Architecture, allowing the design to continue to be developed without losing the connection to the rules and knowledge base.
Figure 7. Opening the layout shown in Figure 5 directly in Bentley Architecture for further design development.
The real power of the application can be appreciated in the speed and ease with which multi-story apartment blocks can be developed. You can define the overall shape of the block with the help of support lines, divide it up into parts, and assign apartments (that have already been created in Bluethink) and common functionality like stairs, entrance, elevator, to the various parts, as shown in Figure 8-a. Multiple floors can be created and layouts can be quickly copied from one floor to another, as shown in Figure 8-b. Layouts on the different floors can be modified as required. If the shape of the apartment outline in a layout is a little different from the actual apartment plan that is chosen for it, the system will make intelligent adjustments to the plan to fit it into the layout. You can also automatically create a mirror image of an apartment design to fit into a layout, as shown in Figure 8-c, which is very common in apartment buildings. The system, again, intelligently adjusts the design in the mirror image position.
Figure 8. Creating an apartment block in Bluethink House Designer. (a) Defining the layout on the ground floor. (b) Coping the layout to other floors. (c) Placing the mirror copy of an existing apartment design into one of the apartment outlines on the top floor.
For a multi-story apartment block such as the one shown in Figure 8, the model generation process yields many more views in addition to the floor plan view that was shown in Figure 5. An example is the cross-sectional view of a shaft, shown in Figure 9. As you can see, the system has automatically generated the various plumbing components that will be required for the apartment block, using the generative rules captured in the knowledge base.
Figure 9. The cross-sectional view of one of the shafts in the apartment block, showing the plumbing components that were automatically created by the application using the generative rules captured in the system.
As before, the model can be directly opened for further development in Bentley Architecture (see Figure 10). In addition, you can export the model as an IFC file which can be opened in any design or analysis tool that supports IFC import. Figure 10 shows the same model imported in IFC format into a structural analysis tool, FEM-Design.
Figure 10. Directly opening the apartment block model within Bentley Architecture, and opening it in IFC format in FEM-Design for structural analysis.
Let’s now take a closer set at the rule sets that are used by the application.
The Rule Sets Used in Bluethink House Designer
As mentioned earlier, Bluethink House Designer uses both generative and evaluative rules for design generation and validation respectively. The rules are gathered in rule sets and each rule set can be turned on and off. The rule sets are divided into several categories, as listed below. The standard generic rules are defaults and come with the application, while the other rule sets have to be developed and purchased separately.
- Standard generic building geometry rules: These are rules governing how to assemble standard building objects like walls, roofs, floor slabs, etc., ensuring, for instance, vertical alignment. Other rules ensure that building elements do not collide or create warnings describing conflicts.
- Standard generic housing functional rules: These rules maintain generic functional aspects of building design, for instance, checking that all spaces have access, doors are placed efficiently, all furniture can be accessed and used, and so on.
- Generic locality rules: These are rules capturing governmental codes and regulations for a region or country.
- Building systems rules: These are rules relate to building methods such as pre-fabricated elements, light steel frames versus timber frame, and so on.
- House types: These are rules related to various housing types such as low rise with an access balcony or common entrance, high rise, single homes, etc.
Some rules can be modified by simply changing the values of parameters, for example, whether exterior walls should be positioned so that they are on the inside of the building lines, or on the outside. Most of these parameters are available in the user interface, so that the designer can experiment with various values and thus different rules. Figure 11 shows an example where the default door type for a bathroom is over-ridden and replaced by a sliding door. The core rules, however, are written in the programming language Lisp used by Design++, and would typically be customized for different companies by Bluethink and local partners and resellers.
Figure 11. Over-riding the default door type for a bathroom and replacing it with a sliding door.
Analysis and Conclusions
From the perspective of a developer such as the Selvaag Group that is using Bluethink House Designer, capturing knowledge for automated re-use allows them to continue developing affordable, high-quality housing that meets their corporate standards while retaining a high degree of flexibility. They can better prevent repeat errors and apply an industrial approach throughout the whole building process. By capturing their own collective expert knowledge in the system, many what-if analyses of design alternatives can be performed and the search for the "best house" can be facilitated, taking into account various factors such as engineering considerations, local building codes, occupant demographics, and quality of living. The application allows the design process to be faster and more efficient by flagging any violated constraints, providing suggestions for refinements, and automating various details based on company standards and best practices. The reduction in design time, along with improved design quality and lesser likelihood of expensive changes during construction, all add up to potential cost savings for the developer.
From a usability point of view, I found that the interface of Bluethink House Designer could do with some improvements to make it more intuitive and easier to use. The drawing interface is somewhat quirky—for example, you need to hold down the Shift key in order to draw rectangular rooms. Adding furniture is not a simple drag-and-drop process as it is in most CAD applications. Also, there is no easy way to access and browse through all the various rule sets, let alone modify them, which would be critical for the broader adoption of this technology. The application is only limited to the metric system at this point. In short, I did not find the application fully ready for prime-time yet, and it seems that it would still take Bluethink some time and effort to customize it for individual housing developers as well as for other building types. However, once the interface of the application has been polished and its implementation more streamlined, it can bring all the speed, efficiency, and quality benefits to owners and developers that the Selvaag Group has achieved from using it.
As I had mentioned in my article on the rule-based system implemented at Robertson Ceco Corporation using Design++, rule-based design systems (also known as knowledge-based systems and expert systems) have been the subject of architectural CAD research for decades. It surprises me that the technology still hasn’t really taken off commercially after all these years. In studying Bluethink as well as the earlier adoption of Design++ at RCC, the underlying technology still seems to be very complex. But now that Design++ is the product of a mainstream BIM vendor such as Bentley, I hope to see it simplified and more widely disseminated. At the same time, I also hope to see more rule-based technologies being developed for the AEC industry by other vendors as well, bringing to a larger audience the potential of the computer to become a much more active participant in the design process rather than a passive tool.
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 firstname.lastname@example.org.