• Aucun résultat trouvé

Product configurator technology and its applications

N/A
N/A
Protected

Academic year: 2021

Partager "Product configurator technology and its applications"

Copied!
8
0
0

Texte intégral

(1)

Publisher’s version / Version de l'éditeur:

Vous avez des questions? Nous pouvons vous aider. Pour communiquer directement avec un auteur, consultez la première page de la revue dans laquelle son article a été publié afin de trouver ses coordonnées. Si vous n’arrivez pas à les repérer, communiquez avec nous à PublicationsArchive-ArchivesPublications@nrc-cnrc.gc.ca.

Questions? Contact the NRC Publications Archive team at

PublicationsArchive-ArchivesPublications@nrc-cnrc.gc.ca. If you wish to email the authors directly, please see the first page of the publication for their contact information.

https://publications-cnrc.canada.ca/fra/droits

L’accès à ce site Web et l’utilisation de son contenu sont assujettis aux conditions présentées dans le site LISEZ CES CONDITIONS ATTENTIVEMENT AVANT D’UTILISER CE SITE WEB.

Proceedings of AMT 2005, pp. 1-6, 2005-05-16

READ THESE TERMS AND CONDITIONS CAREFULLY BEFORE USING THIS WEBSITE. https://nrc-publications.canada.ca/eng/copyright

NRC Publications Archive Record / Notice des Archives des publications du CNRC :

https://nrc-publications.canada.ca/eng/view/object/?id=038b4bca-a947-4eb6-91f1-2ab175c77d00 https://publications-cnrc.canada.ca/fra/voir/objet/?id=038b4bca-a947-4eb6-91f1-2ab175c77d00

NRC Publications Archive

Archives des publications du CNRC

This publication could be one of several versions: author’s original, accepted manuscript or the publisher’s version. / La version de cette publication peut être l’une des suivantes : la version prépublication de l’auteur, la version acceptée du manuscrit ou la version de l’éditeur.

Access and use of this website and the material on it are subject to the Terms and Conditions set forth at

Product configurator technology and its applications

(2)

http://irc.nrc-cnrc.gc.ca

P r o d u c t c o n f i g u r a t o r t e c h n o l o g y a n d i t s

a p p l i c a t i o n s

I M T I - X P - 3 8 0

X i e , H . ; K e r n a h a n , M .

A version of this document is published in / Une version de ce document se trouve dans: Proceedings of AMT 2005, London, Ontario, May 16, 2005, pp. 1-6

The material in this document is covered by the provisions of the Copyright Act, by Canadian laws, policies, regulations and international agreements. Such provisions serve to identify the information source and, in specific instances, to prohibit reproduction of materials without written permission. For more information visit http://laws.justice.gc.ca/en/showtdm/cs/C-42

Les renseignements dans ce document sont protégés par la Loi sur le droit d'auteur, par les lois, les politiques et les règlements du Canada et des accords internationaux. Ces dispositions permettent d'identifier la source de l'information et, dans certains cas, d'interdire la copie de documents sans permission écrite. Pour obtenir de plus amples renseignements : http://lois.justice.gc.ca/fr/showtdm/cs/C-42

(3)

Product Configurator Technology and Its Applications

Helen Xie and Michael Kernahan

Integrated Manufacturing Technologies Institute, National Research Council Canada 800 Collip Circle, London, Ontario, Canada, N6G 4X8

helen.xie@nrc.gc.ca michael.kernahan@nrc.gc.ca

Abstract

The paper presents a customer-driven product configurator developed at the Integrated Manufacturing Technologies Institute (IMTI) of the National Research Council (NRC). Advanced with a constraint-based approach, the configurator is able to solve complex engineering configuration problems by allowing design constraints expressed as mathematical formulae and computable procedures. The paper also discussed issues related to implementing a configurator for a product family. The first is how to extract product knowledge to build a product model for configurator setup. The second is how to integrate configuration results into other application systems, such as CAD systems and ERP systems.

Keywords: product configuration, product customization, constraint-based configurator, Web-based system

1. Introduction

To increase market shares and capture new business opportunities, today’s manufacturers are increasingly moving towards mass customization that offers products tailored to each individual customer’s needs, at a low cost. The mass customization paradigm allows customers to select, order, and receive a specially configured product, often choosing from a multitude of product options. One of the challenges in fulfilling custom orders is to generate bills of materials and design specifications quickly and accurately from the thousands of possible combinations. Current practices among enterprises in customized product manufacturing include product catalogues and manual product configuration. Product catalogues provide a pre-defined, limited number of combinations for choice of products, and often cannot meet a customer’s specific needs. Manual product configuration relies on human experts to configure products, and has some serious limitations: long lead-time, human errors, and expensive training. To address these challenges, we have undertaken research and development on the product configuration technology. Combined with Web technology and a constraint-based problem solving approach, the technology enables manufacturers and their customers to automated product configuration for complex engineering products anytime, from anywhere around world.

The customer-driven product configurator is a software tool that allows a user to customize a product that meets certain given criteria by combining a number of components, features or functions. It can automatically generate bills of materials and design specifications based on pre-defined product descriptions and design constraints. Compared with manual product configuration, the advantage of using automated tools for product configuration is obvious: reducing lead-time, improving order quality, and simplifying job training. In order to work, the configurator requires a product model for product description and design constraints, which is often defined by product specialists or engineers. Therefore, an easy and user-friendly modeling approach is essential to implement the configurator technology in industry. In some cases, product data is already stored in a database. This data should be loaded into the configurator transparently. In order to use the configuration results effectively, the product configurator can be easily integrated with various exiting systems, such as ERP systems for bills of materials, and CAD systems for CAD drawings. Therefore, an integration interface was generated for this purpose.

The focus of this paper is to introduce the advantages of the customer-driven product configurator and demonstrate implementation aspects of the configurator technology for customized products. The paper will first analyse and classify product customization options with an elevator system as a case study. It then presents the innovative configurator technology developed at NRC/IMTI for configuring complex engineering products. It also discusses configurator setup and system integration for the configurator implementation. Throughout the discussion, a case study for configuring an elevator system is used as an example.

(4)

Customer-driven Product Configurator and Its Applications

2. A Configuration Problem Defined

This section introduces a general overview of configuration, analyzes and classifies product customization options, and presents a case study for configuring an elevator system.

2.1 A Configuration Problem and Configurator

According to M. Aldanondo, et al. [1], common features regarding a configuration problem are: • Hypothesis: a product is a set of components

• Given: (i) a generic model of a configurable product able to represent a family of products with all possible variants and options, in which a generic model is a set of components, each with several models, plus a set of constraints; and (ii) a set of customer requirements, in which each requirement can be expressed by a constraint,

• A configuration task can be defined as finding at least one component set that satisfies all the constraints. A configurator is a software package that automatically performs the configuration task. It is composed of a knowledge base that stores the generic model of the product and a configuration engine that finds a solution through searching. The fundamental requirement is to guarantee the consistence of the configured product with both the generic model and customer requirements.

2.2 Classifying Product Customization Options

Before implementing a configurator solution, manufacturers need to identify product customization features according to the product complexity and expected end user experience.

Product Complexity

According to the previous definition, a configurable product is composed of a set of components, each of which may have several models to choose from to form a customized product. Depending on how the component model is designed to fit into the product, customized designs can be handled in two levels: a component level of configuration and a parametric level of configuration.

On the component level of configuration, we assume that several models of the same component are inter-exchangeable, meaning that choosing any component model does not have impacts on the overall product layout. Most of computer components have this inter-exchangeable characteristic. For example, hard disks with different storage capacities are considered as different models, but they can all be fitted into a standard slot of a computer box.

On the parametric level of configuration, the dimensions and quantity attributes of a component can be modified to meet customer requirements. Although several models of a component perform the same functionality, the overall dimensions for each model may be different. Hence, the product layout has to be rearranged for different models. Most engineering products and industrial equipment falls into this parametric level of configuration. An elevator system is a typical example, which will be described in detail in section 2.3.

User Experience

To configuring a product, an end user of a configurator needs to be presented with product options. The way the product options are presented to the user is usually based on user’s knowledge level about the product. One approach to present to the user is called a “physical” model, where a list of component models is presented to the user for selection. This approach assumes the user to have a good knowledge of the product and to understand the implications of his/her decisions. However, this approach may be difficult for a non-expert user to make decisions, and extra assistance is often required. This requirement leads to another approach, a “descriptive” model [1], where “descriptive” attributes or functional requirements are presented to the user. The advantage is that the user can be guided to a solution from functional requirements without advanced product knowledge. To achieve this end, a configurator needs to maintain constraints that allow deriving a list of component models from the values of the descriptive attributes.

2.3 A Case Study – Configuring an Elevator System

To demonstrate a product customization scenario in the parametric level configuration with a descriptive model, let’s consider the configuration design of an elevator system. The elevator system under study is a cable-operated system driven by an overhead machine [2]. An elevator system is typically made from a number of main components, such as a car cab, counterweight, and machine assembly. Each component can be chosen from several

(5)

The Fifth International Workshop on Advanced Manufacturing Technologies, London, Canada

models, which represents different design options. Each component is further associated with a number of parametric design attributes. The wide variety of building types, structures, and locations where an elevator can be installed means that there are potentially thousands of different design and construction options. The actual configuration process begins with a list of functional requirements from a customer, such as elevator car capacity and building dimensions. The result of the configuration is a set of values assigned to components and their associated design attributes that satisfies both functional requirements and design constraints. In the following subsections, we will address component and design attributes, functional requirements, and design constraints in detail.

Component and Parametric Design Attributes

There are 15 main components in the elevator system. Each is considered as a configurable unit with several models to form a part of a valid configuration solution. For example, there are four models of a machine assembly for an elevator system. In increasing size, they are machine model 18, 28, 38, and 58. A component may also be associated with parametric design attributes. These attributes can be categorized as quantity, dimension (size, position), physics (weight), and resource (load) attributes. For example, with each machine model, there is an increased size, weight, and maximum suspended load. There are 237 design attributes in the elevator system.

Functional Requirements

In elevator design, it is difficult for the customer to specify a particular component model, such as a machine model, to meet their requirements. To improve usability, a descriptive model takes functional requirements as input from customers instead of specific component models. In an elevator design, such requirements include elevator capacity, size, speed, and building dimensions, etc. There are 26 functional requirements in the elevator system.

Design Constraints

The design constraints are formulated by engineering principle, physics laws, and safety regulations. They are expressed as look-up tables, mathematical formulae, and computable procedures, such as if-then blocks. These design constraints can be divided into two categories as dependent relationships and hard constraints. Dependent relationships specify how a design attribute is derived from other design attributes. For example, the selection of

counterweight guiderail model depends on the counterweight weight, and counterweight weight is the counterweight system weight plus the counterweight stack weight. There are 185 dependent relationships in the elevator system.

Complex interactions among elevator system components and design attributes complicate the configuration process. Not all component models are compatible, and certain directly derived values of design attributes will not meet functional or safety requirements. The hard constraints specify certain conditions which should be satisfied regardless of the dependent relationships. For example, a safety regulation requires that the counterweight weight must be at most 56000 pounds. When this constraint is violated, other design attributes, such as the counterweight

system weight or counterweight stack weight, should be modified to satisfy the hard constraint. There are 50 hard

constraints in the elevator system.

3. Customer-driven Product Configurator Overview

Addressing the challenge of engineering product configuration with complex interactions of component models and design attributes, the customer-driven product configurator uses a constraint-based approach to search for a feasible solution through the design space. Distinct from conventional rule-based configurators, the constraint-based configurator is capable to go back to search for other possible solutions if it reaches a dead end [3, 4, 5]. The search algorithms are generic, independent of any particular product. The configurator setup is only involved with constraint modeling without specific control logic as in a rule-based configurator. This feature makes it easy to maintain product update and design change information. The constraint-based configurator can provide multiple solutions based on different criteria to allow tailoring a solution to customer preference [6].

The proposed customer-driven product configurator offers very sophisticated modeling capabilities, which can handle mathematical formulae and computable procedures as design constraints [7]. Its advance in constraint modeling and search algorithms makes the configuration process very efficient. It only takes less than a second to configuring an elevator system [8]. The configurator is deployed as a Web application so that it can be accessed anytime from anywhere.

The configurator system mainly consists of a configuration engine and product modelling tool. The configuration engine takes the user requirements and generates a feasible design solution based on pre-defined design constraints using search algorithms. The product-modeling tool is used for configurator setup by defining component models, parametric design attributes and design constraints. As shown in Figure 1, the system is designed to facilitate product configuration and product modelling for two groups of users: an end user group and an

(6)

Customer-driven Product Configurator and Its Applications

advanced user group. The end user group, including customers, salespersons, engineers and production managers, performs a configuration task using the configuration engine. Customers and salespersons enter customer requirements as input, and the configuration engine automatically generates design results, which satisfy both customer requirements and design constraints, and responds with a product quotation. Engineers are able to review the generated design results and CAD drawings, and approve them as is, or make slight modifications. Production managers can take the approved design results and bill of materials into production stages. The advanced user group, including engineers and information specialists, generates a constraint model before a product is configured. The tasks include modeling component models and design attributes as variables, and modeling design constraints among the variables. Configuration Engine Product Modelling Tool Customer or Salesperson Production Manager Engineer Engineer and Information Specialist needs choices configuration pricing availability

design approval design spec CAD drawing configuration bill of materials product structure design constraints manufacturing info

Figure 1. Customer-driven product configurator

4. Configurator Setup

The configurator setup is the first step for a configurator to work. It involves defining component models and design attributes as variables, and establishing dependent relationships and hard constraints among those variables. The modelling tasks can be achieved using the product modelling tool.

4.1 Variable Modelling

The variable modelling involves variable identification, variable classification, and variable domain definition. In a configuration problem, component models and design attributes that can be modified are considered as variables. Otherwise, they are considered as constants. These variables are further classified into input variables, independent variables, and dependent variables.

Input Variables

The input variables are defined for capturing user requirements. The variable domain can be given as continuous data range or discrete values. For example, in the elevator system design, the elevator capacity is in the range between 2000 and 4000 pounds. The elevator speed can be set as 200, 250, 300, 350, 400 feet/min. Once the user chooses a particular value, the input variable becomes a fixed value. An input variable may be allowed to change when a feasible solution cannot be found.

Independent Variables

Independent variables are variables that can be modified independently to satisfy constraints. They can further be divided into discrete and continuous domains. In the elevator case, the machine model is an independent variable with a discrete domain. There are four machine models. In increasing size, they are machine model 18, 28, 38, and 58. Initially, model 18 is chosen. Each machine model has its machine suspended load maximum. The actual

machine suspended load must be at most as great as the machine suspended load maximum the selected machine model can support. If it is not, the machine model should be upgraded. This example shows that the machine model

can be modified independently. Another variable counterweight plate depth is an independent variable with a continuous domain. The counterweight plate depth must be between seven and twelve inches, inclusive. It is initially set as seven inches. It can be increased from its initial value by half-inch steps when the counterweight stack

(7)

The Fifth International Workshop on Advanced Manufacturing Technologies, London, Canada

counterweight plate depth can be modified independently. It is specified in the range of 7 to 12 inches with an

interval as 0.5 inches.

Dependent Variables

The dependent variables are those variables that can be derived from other variables. The dependent relationships can be expressed in look-up tables, mathematical formulae, and computable procedures (if-then block). For example, the machine suspended load maximum and the machine weight depends on the machine model. The dependent relationships are defined in a table. The counterweight weight depends on the counterweight system weight and the

counterweight stack weight. The relationship is defined by a mathematical formula:

counterweight weight = counterweight system weight + counterweight stack weight (1)

The control cable model depends on the number of floors the elevator will stop on. The dependent relationships are defined by a computable procedure. If the number of stops is less than or equal to 15, the control cable model with 0.167 lb/inch unit weight should be used. If the number of stops is more than 15 but less than or equal to 25, the control cable that weighs 0.199 lb/inch should be used. For more than 25 stops, the 0.209 lb/inch control cable should be used.

4.2 Constraint Modelling

The design constraints in engineering product design, including both the dependent relationships and hard constraints, should be defined into a constraint model. The dependent relationships, as discussed above, define how a variable can be derived from other variables. The hard constraints specify conditions that should be satisfied for a feasible solution. Since the dependent relationships are linked to dependent variables, which are described above, only hard constraints are focused on here. The hard constraints can be classified as greater than (>) constraints, less than (<) constraint, greater and equal than (>=), and less and equal than (<=) constraints. For example, for safety reasons, the car overtravel must be at least R+1.5S+24 inches, where R is the counterweight runby and S is the

counterweight buffer stroke. Constraint satisfaction can be achieved by adjusting a number of variables, such as counterweight bottom reference and sling underbeam space.

4.3 Product Modelling Tool

A product modeling tool is available to facilitate the modeling tasks. It supports both modeling from scratch, and modeling with existing product database scenarios. From scratch, input variables, independent variables, dependent variables with dependent relationships, and hard constraints can be defined sequentially with the modelling tool. For a complex product, product component models may be already stored in a product database or an ERP system. The component model information can be extracted from a database into a XML document, which is in turn loaded into the product modelling tool. Based on the pre-loaded model, other information such as dependent variables and relationships, and hard constraints can be further defined.

5. System Integration

As previously discussed, the design solutions generated from the configurator can be used for multiple purposes. They can be stored in a product database. They can also be exported as a bill of material for product planning, as a CAD drawing for design approval and assembling, as a quotation for customer and salespersons to review, and as a design specification document for contracts and instructions. To achieve this end, the output needs to be integrated dynamically with other systems, such as ERP systems and CAD systems.

Since Extensible Markup Language (XML) is playing an increasingly important role in the exchange of a wide variety of data on the Web and elsewhere [9], the configurator uses an XML document as a common interface for integration with other systems. Several sections are defined in the data model for design solutions, including product general description, customer requirements, design specification, components with model, quantity, and associated design attributes. A sample XML document is shown in Figure 2 to describe an elevator design solution.

In addition to the XML document as common interface for the design solution, adaptors for each receiving system are also required to load the information into the corresponding system. These adaptors often use the application programming interface (API) of the receiving system to dynamically process the incoming design solutions and generate a response. The adaptors can also be developed as Web services for data exchange and service invocation across different platforms.

(8)

Customer-driven Product Configurator and Its Applications

< ?xm l version= " 1.0 " encoding= "UTF- 8" ?>

< = "5"> < >e le va t or 1< / > < >e le v a t or s< / > < >Re ddish _ Ru sh< / >

< >a ca ble - ope r a t e d syst e m dr ive n by a n ov e r h e a d m ot or a sse m bly< / > < > < = "1" > < >m a chine< / > < >2 8< / > < >1< / > < > < > < >M a ch in e Angle Of Con t a ct< / > < >1 5 2 .4 0 5< / > < / > < >

< >M a chin e Efficie ncy< / >

< >0 .7 6< / > < / > .... < / > < / > .... < / > .... < / > product id nam e nam e

cat alog cat alog

m anufact urer m anufact urer descript ion

descript ion com ponent List

com ponent id nam e nam e m odel m odel quant it y quant it y param et erList param et er nam e nam e value value param et er param et er nam e nam e value value param et er param et erList com ponent com ponent List product

Figure 2. XML interface for configurator output

6. Conclusions

Customized products offer great market potential to manufacturers in the global competition environment. With more manufacturers adapting their business model to mass customization, the complexity of customized products brings new challenges to product configuration technology. The customer-driven product configurator addresses the challenges by offering sophisticated constraint modeling capabilities, in which design constraints can be expressed as mathematical formulae and computable procedures. The configuration engine is independent from the constraint model, making product information easy to maintain. Using the constraint-based approach, the configurator is able to find multiple feasible solutions according to different search criteria, so that the solutions can be tailored to customer preferences.

References

[1] Aldanondo, M., Hadj, H.K., Moynard, G. and Lamothe, J., 2003, “Mass customization and configuration: Requirement analysis and constraint based modeling propositions,” Integrated Computer Aided Engineering, 10(2), pp. 177-189.

[2] Yost, G.R. and Rothenfluh, T.R., 1996, “Configuring elevator systems,” Int. J. Human-Computer Studies, 44, pp. 521-568.

[3] Mittal, S. and Frayman, F. 1989, “Towards a generic model of configuration tasks,” In IJCAI-89 Proceedings of

the Eleventh International Joint Conference on Artificial Intelligence, pp. 1395-1401.

[4] Mittal, S. and Falkenhainer, B. 1990, “Dynamic constraint satisfaction problems,” In AAAI-90-Proceedings.

Eighth National Conference on Artificial Intelligence, pp. 25-32.

[5] Stumptner, M. 1997, “An overview of knowledge-based configuration,” AI Communications, 10(2), pp. 111-125.

[6] Junker, U. and Mailharro, D. 2003, “Preference programming: advanced problem solving for configuration,” Artificial Intelligence for Engineering Design, Analysis and Manufacturing, 17(1), pp. 13-29.

[7] Xie, H., Henderson, P., Neelamkavil, J., and Kernahan, M. 2004, “Web-based Generic Product Configuration Using CSP,” Proceedings of the 14th International Conference on Flexible Automation and Intelligent

Manufacturing, pp. 648-655.

[8] Xie, H., Henderson, P., Neelamkavil, J., and Li, J. 2004, “A systematic search strategy for product configuration,” Proceedings of the 17th International Conference on Industrial and Engineering Applications of

Artificial Intelligence and Expert Systems, IEA/AIE 2004, pp. 718-727.

Figure

Figure 1. Customer-driven product configurator
Figure 2. XML interface for configurator output

Références

Documents relatifs

Al mismo tiempo, nos interesa conocer cómo se comportan los alumnos con sus profesores hacia esta nueva metodología de enseñanza; como asimilan la explicación,

The remaining question is what will be the best moment in the assembly line to send a manufacturing signal to the feeder, to be sure that the expected component arrives at the

Considering the costs of modifications are usually very expensive and it may make the product (system) more complex, a novel idea is proposed, which to generate a user manual

This paper proposed a design method that can obtain a ranged set of solutions that satisfies multiple product performance criteria, cost, and environmental load

The contribution of this paper is to propose architectural constraints for Product Line expressed in UML as meta-level OCL constraints, providing a set of patterns for

Diffusion tensor imaging in human global cerebral anoxia: correlation with histology in a case with autopsy.. Stéphane Kremer, Felix Renard, Vincent Noblet, Roxana Mialin,

To better understand biomass cellular structure and to map in situ biochemical compounds compartmentation and to study the effect of biomass processing on rubber, waxes and

Sur le plan biologique, les méningites à Bacille de Koch (BK) et à Cryptococcus Néoformans sont classiquement des méningites lymphocytaires, mais nous constatons actuellement