Knowledge-based Configuration: From Research to Business Cases, FIRST EDITION (2014)
Part I. Introduction
Chapter 1. Motivation for the Book
Alexander Felferniga, Lothar Hotzb, Claire Bagleyc and Juha Tiihonend, aGraz University of Technology, Graz, Austria, bHITeC e.V., University of Hamburg, Hamburg, Germany, cOracle Corporation, Burlington, MA, USA, dAalto University, Aalto, Finland
Welcome to this book on configuration systems! The purpose of this book is to expose the reader to a field of Artificial Intelligence that has been successfully integrated and used in the industry for more than 30 years. This book provides configuration-related material for interested readers from the fields of industry, education, and research.
Knowledge-based Configuration; Motivation
1.1 What Is Configuration?
This part of the book starts with a motivation, takes a look at historical developments (Chapter 2), related technological issues (Chapter 3), and commercial benefits (Chapter 4). Chapter 5 provides an overview of the organization of the book.
Mass Production. In the first part of the last century, Henry Ford introduced the T model (see Figure 1.1) and revolutionized the way cars were manufactured by introducing the concept of mass production, which is the efficient production of a high number of identical products. One of the best characterizations of mass production was given by Ford himself: You can have any car color as long as it’s black (remark about T model in 1909).
FIGURE 1.1 Sketch of Ford T-model produced around 1908.
Mass Customization. In the meantime, the mass production of identical products is a business model of the past since buyer markets predominate. This situation imposes new challenges on production and sales processes since companies are now forced to provide products that meet the individual needs of their customers. As a consequence, the mass customization paradigm (Anderson and Pine, 1996; Pine, 1999) has been established. This paradigm is based on the idea of the customer-individual production of highly variant products under near mass production pricing conditions. This means that the major goal was not only to perform a paradigm shift to more intensively take into account customer requirements and preferences but also to achieve this goal under mass production level time and pricing conditions. The era of mass customization ringed the bell for technological developments urgently needed to effectively implement the paradigm. Configuration technologies have evolved into a leading technology to support mass customization business scenarios.
Knowledge-based Configuration. One definition of configuration (as an activity) has been given by Sabin and Weigel (1998), who define configuration as “a special case of design activity where the artifact being configured is assembled from instances of a fixed set of well defined component types which can be composed conforming to a set of constraints.” Component types are further characterized by attributes and represent sets of alternative components (instances); for example, a Motherboard can be either an MBSilver or anMBDiamond (see Figure 1.2); an attribute of a Motherboard is price. Components are related to each other via part–whole relationships (also denoted as aggregations, e.g., a CPU is part of a Motherboard) or generalization relationships (also denoted as taxonomies, e.g., MBSilver is a Motherboard). In Sabin and Weigel’s definition, configuration is typically knowledge-based (knowledge-based configuration) since it relies on product domain and problem-solving knowledge.
FIGURE 1.2 A simple example of a configuration model (personal computer – PC). PC configuration serves as a working example throughout the whole book. For a more detailed configuration model of a PC see Chapter 6.
Constraints are restricting the way in which different components can be combined with each other; for example, an MBSilver must not be combined with a CPUD. Component types and constraints are also known as configuration model. Configuration models are needed due to the fact that in many cases there is a huge number of possible configurations. If we would store each individual solution, for example, in a database, searching for the preferred solution would be an extremely time-consuming task (Falkner et al., 2011); in addition, maintaining the set of different solutions would also be extremely time-consuming. The process of developing a configuration model is known as knowledge acquisition process. In the case that a customer is interested in a personal computer, his/her requirements have to be taken into account; for example, the customer prefers to have a motherboard of type MBSilver. The union of a configuration model and a corresponding set of customer requirements is known as configuration task (Mittal and Frayman, 1989). The configuration task then is the input for a configuration system (configurator) that determines a configuration (see, e.g., Figure 1.3). A configuration environment can be seen as the union of a configurator and the associated knowledge acquisition and maintenance component. As may have been observed by the reader, the term configuration is overloaded since it represents both the process of generating an artifact, which is comprised of instances of component types, and the artifact itself, the outcome of a configuration process, which for example, can be a bill of material (BoM).
FIGURE 1.3 A simple example of a personal computer configuration.
1.2 Why Use Configuration Technologies?
A short answer to this question is that configuration technologies significantly reduce the development and maintenance costs of key functionalities needed for the implementation of the mass customization paradigm. These functionalities encompass the efficient development and maintenance of constraint sets (configuration knowledge bases), the development and maintenance of configurator user interfaces, and the integration of configurators into existing software environments such as ERP (Enterprise Resource Planning) systems and systems supporting product data management (PDM). For a more detailed discussion of the commercial benefits of configuration technologies, refer to Chapter 4 of this book.
Persons involved in a configurator project (stakeholders). Persons responsible for the development of a configurator application (or parts of it) are denoted as knowledge engineers. Knowledge engineers have deep knowledge about configuration technologies and cooperate closely with domain experts who are the major providers of technical (product engineers), marketing, and sales knowledge (experts from marketing and sales). Knowledge acquisition is the process of transforming product domain knowledge into the formal representation of a configuration knowledge base (configuration model). In order to develop and maintain a configuration knowledge base that really reflects the real-world product domain, a number of communication iterations between domain experts and knowledge engineers are necessary. This can result in a communication overhead, which is also well known as the knowledge acquisition bottleneck. The third group of stakeholders involved in a configuration project are end users who are applying the configurator in the context of real-world business processes such as technical or sales configuration.
1.3 Why Read This Book?
Configuration is one of the most successfully applied technologies of Artificial Intelligence (AI). It is applied in many different product and service domains such as automotive, telecommunication, electronic equipment, elevators, railways, and financial services. Major reasons for reading this book are the following. (1) For industry representatives not familiar with configuration technologies this book provides a detailed introduction into basic configuration technologies and includes a set of business cases that show successfully deployed configuration environments as well as cases of ongoing deployments. We want to point out that this book is not intended to serve as an introduction to a specific configuration system; however, we provide an overview of technologies used in commercial configuration environments. (2) For industry representatives who already have expertise in the application of configuration technologies this book includes a discussion of new technologies and approaches currently not integrated in configuration environments. To mention examples in this context, we show how recommendation technologies can be applied to improve the interaction with configuration systems, the impact that theories of human decision making have on the way customers will interact with configurator interfaces, and how such systems can be tested have on the basis of an integrated approach to consistency-based knowledge base testing and (automated) debugging. (3) For representatives from industry and academia interested in teaching configuration technologies, we provide throughout the whole book working examples that are related to the product domain of personal computer configuration. We selected this domain due to the fact that it is well known and often used as a reference example. In addition, we provide a set of slides that can be used freely for courses on the topic of configuration systems.1 (4) For researchers interested in configuration systems we provide an overview of basic technologies as well as an introduction to advanced topics that finally lead to a discussion of issues for future research. A more in-depth overview of the contents of this book including recommendations for which parts are useful for which segments of readers can be found in Chapter 5.
1. Anderson D, Pine BJ. Agile Product Development for Mass Customization. McGraw-Hill 1996.
2. Falkner A, Felfernig A, Haag A. Recommendation Technologies for Configurable Products. AI Magazine. 2011;32(3):99–108.
3. Mittal S, Frayman F. Towards a generic model of configuration tasks. In: 1989:1395–1401. 11th International Joint Conference on Artificial Intelligence (IJCAI-89), Detroit, Michigan, USA. vol. 2.
4. Pine BJ. Mass Customization: The New Frontier in Business Competition. Harvard Business School Press 1999.
5. Sabin D, Weigel R. Product configuration frameworks – a survey. IEEE Intelligent Systems. 1998;13(4):42–49.