Knowledge-based configuration
Knowledge-based configuration has a long history as an Artificial Intelligence application are, see, e.g., [1], [2], [3], [4], [5], [6]. Informally, configuration can be defined 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" [8]. Such constraints are representing technical restrictions, restrictions related to economic aspects and conditions related to production processes. The result of a configuration process is a product configuration (concrete configuration), i.e., a list of instances and in some cases also connections between these instances. Examples of such configurations are computers to be delivered or financial service portfolio offers (e.g., a combination of loan and corresponding risk insurance).
Configuration systems are one of the most successfully applied Artificial Intelligence technologies. Examples are the automotive industry [4], the telecommunication industry [2], the computer industry [1], [9] or power electric transformers [3]. Starting with rule-based approaches such as R1/XCON [1], model-based representations of knowledge (in contrast to rule-based representations) have been developed which strictly separate product domain knowledge from the problem solving one. This separation increased the effectiveness of configuration application development and maintenance [2], [4], [5], [10] since changes in the product domain knowledge do not effect search strategies and vice versa.
"Core configuration", i.e., guiding the user and checking the consistency of user requirements with the knowledge base, solution presentation and translation of configuration results into bill-of-materials are major tasks to be supported by a configurator [11] [16]. Configuration knowledge bases are often built using proprietary languages (see, e.g., [5], [12], [13]). In most cases knowledge bases are developed by knowledge engineers who elicit product, marketing and sales knowledge from domain experts. Configuration knowledge bases are composed of a formal description of the structure of the product and further constraints restricting the possible component combinations. Configurators can be considered as "open innovation toolkits", i.e., tools which support customers in the product identification phase [11]. In this context customers are innovators who articulate their requirements leading to new innovative products [11], [14]. "Mass Confusion" [15] - the overwhelming of customers by a large number of possible solution alternatives (choices) - is a phenomenon which often comes with the application of configuration technologies. This phenomenon motivated the creation of personalized configuration environments taking into account a customer’s knowledge and preferences [7] [13].
[1] V. Barker, D. O’Connor, J. Bachant, and E. Soloway, Expert systems for configuration at Digital: XCON and beyond, Communications of the ACM, vol. 32, no. 3, pp. 298–318, 1989. [2] G. Fleischanderl, G. Friedrich, A. Haselboeck, H. Schreiner, and M. Stumptner, Configuring Large Systems Using Generative Constraint Satisfaction, IEEE Intelligent Systems, vol. 13, no. 4, pp. 59–68, 1998. [3] C. Forza and F. Salvador, Managing for variety in the order acquisition and fulfillment process: The contribution of product configuration systems, International Journal of Production Economics, no. 76, pp. 87–98, 2002. [4]E. Juengst and M. Heinrich, Using Resource Balancing to Configure Modular Systems, IEEE Intelligent Systems, vol. 13, no. 4, pp. 50–58, 1998. [5] D. Mailharro, A classification and constraint-based framework for configuration, Artificial Intelligence for Engineering, Design, Analysis and Manufacturing Journal, Special Issue: Configuration Design, vol. 12, no. 4, pp. 383–397, 1998. [6] S. Mittal and F. Frayman, Towards a Generic Model of Configuration Tasks, in 11th International Joint Conference on Artificial Intelligence, Detroit, MI, 1989, pp. 1395–1401. [7] L. Ardissono, A. Felfernig, G. Friedrich, D. Jannach, G. Petrone, R. Schaefer, and M. Zanker, A Framework for the development of personalized, distributed web-based configuration systems, AI Magazine, vol. 24, no. 3, pp. 93–108, 2003. [8] D. Sabin and R. Weigel, Product Configuration Frameworks - A Survey, IEEE Intelligent Systems, vol. 13, no. 4, pp. 42–49, 1998. [9] D. McGuiness and J. Wright, An Industrial Strength Description Logics-Based Configurator Platform, IEEE Intelligent Systems, vol. 13, no. 4, pp. 69–77, 1998. [10] S. Mittal and B. Falkenhainer, Dynamic Constraint Satisfaction Problems, in National Conference on Artificial Intelligence (AAAI 90), Boston, MA, 1990, pp. 25–32. [11] N. Franke and F. Piller, Configuration Toolkits for Mass Customization: Setting a Research Agenda, Working Paper No. 33 of the Dept. of General and Industrial Management, Technische Universitaet Muenchen, no. ISSN 0942-5098, 2002. [12] A. Haag, Sales Configuration in Business Processes, IEEE Intelligent Systems, vol. 13, no. 4, pp. 78–85, 1998. [13] U. Junker, Preference programming for configuration, in IJCAI’01 Workshop on Configuration, Seattle, WA, 2001. [14] F. Piller and M. Tseng, The Customer Centric Enterprise, Advances in Mass Customization and Personalization. Springer Verlag, 2003, pp. 3–16. [15] C. Huffman and B. Kahn, Variety for Sale: Mass Customization or Mass Confusion, Journal of Retailing, no. 74, pp. 491–513, 1998. [16] A. Felfernig, Standardized Configuration Knowledge Representations as Technological Foundation for Mass Customization, IEEE Transactions on Engineering Management, 54(1), pp. 41-56, 2007.