20
Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland Jesper Møller [[email protected]] IT University, Denmark [www.it.edu] ConfigIt [www.configit-software.com]

Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

  • Upload
    boyd

  • View
    27

  • Download
    0

Embed Size (px)

DESCRIPTION

Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland. Jesper Møller [ [email protected] ] IT University, Denmark [ www.it.edu ] ConfigIt [ www.configit-software.com ]. Agenda. Background: Online sales of complex products Product Configuration: - PowerPoint PPT Presentation

Citation preview

Page 1: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Configuration and E-commerce

Invited talk, IFORS 20028-12 July 2002, Edinburgh, Scotland

Jesper Møller [[email protected]]

IT University, Denmark [www.it.edu]ConfigIt [www.configit-software.com]

Page 2: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Agenda

• Background: Online sales of complex products

• Product Configuration: Constraint Propagation and Virtual Tabulation

• Tool Description: ConfigIt

• An Example: The Virtual Bike Shop

Page 3: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Background: Manufacturers of complex products

• More and more companies want to sell their products and services online: B2C: Computers, furniture, bikes, cars, cell phones,

insurances, … B2B: A/C systems, refrigeration units, medical

equipment, wells, …• Companies must constantly innovate, shape their core

competences, and improve their ability to operate as suppliers of many product variants built from the same core set of products

• The knowledge describing these products is the core competency of a company, giving raise to focus on how to capture this knowledge

• Companies want to reduce cost of operation and focus on both their products and their customers

Page 4: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Background: Manufacturers of complex products

• Electronic products are increasingly being controlled by embedded software to meet the need for greater flexibility and more customizable features

• Examples are tele-communication equipment programmable controllers for industrial equipment cars, medical equipment, A/C systems, etc.

• This embedded software encapsulates complex interdependencies between the parameters defining the correct operation of the product

• Companies want to deliver flexible electronic products that are easy to set up and use

Page 5: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Background: The customers

• Customers want to buy customized products with more and more features that fulfill their individual needs

• Products should be flexible and customizable even after purchase

• Customers want personalized websites with adaptive GUIs

• Their patience is dropping [Giga Research]: 2001: 10 seconds 2002: 7 seconds 2003: 4 seconds (expected)

Page 6: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Background: The Challenges

• How to deliver the right product for the right customer at the right time using the right presentation?

• How to capture detailed knowledge about the products?• How to maintain product information and manuals? • How to handle many different product variants built

from a core set of products?• How to handle the inter-dependencies between

parameters defining the product and the GUI presentation of the product?

• How to handle many, almost identical versions of the setup software for electronic products?

• How to provide more features and greater flexibility without increasing the complexity of the correct operation of the product?

Page 7: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Agenda

• Background: Online sales of complex products

• Product Configuration: Constraint Propagation and Virtual Tabulation

• Tool Description: ConfigIt

• An Example: The Virtual Bike Shop

Page 8: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Product Configuration

• Product model: Parameters: x1,…,xn

Domains: D1,…,Dn

Rules (business logic): R1,…,Rm

• Solution: Assignment of the parameters such that each rule is satisfied

• Complexity: Deciding consistency of a product model (does it have a solution) is NP-complete

• Product configuration: Is an assignment a solution? Is a partial assignment a solution? What values can be assigned to each variable, given

a partial assignment?

Page 9: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

• Place 8 queens on a chessboard so that no queen can capture another:

constant

N: 8;

variable

col: array N of [0..N-1];

rule

forall i in [0..N-2]:

(forall j in [i+1..N-1] :

(col[i] <> col[j] and

i+col[i] <> j+col[j] and

i+col[j] <> j+col[i]);

Product Configuration: An Example

Page 10: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Product Configuration: An Example (II)

Page 11: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Product Configuration: Constraint Propagation

• Whenever a user selects a value for a variable, derive the consequences by propagating this information through the rules

• Disadvantages: Response times may be too large, or only

approximate solutions can be found All work is done at runtime Syntactic formulation of rules may influence

response times Difficult to reuse computations

Page 12: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Product Configuration: Virtual Tabulation

• Compute all solution to the configuration problem and store them in a virtual table

• Virtual table: Compact data structure for representing all solutions implicitly. Decision DAG where nodes are variables, edges are values, and a path = a solution

• Size depends on the structure of the product model, not the number of solutions

• Efficient algorithms for building/querying a VT: Deciding consistency is O(1) Determinig the legal values for xi is O(|Di| + |VT|)

Page 13: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Product Configuration: Virtual Tabulation (II)

• Advantages: Always correct answers Compact, makes it possible to embed a configurator

on small devices such as SmartCards, iButtons, iPaqs, etc.

Predictable, bounded response times All work is done at compile time The number of solutions is known Rules and other data need only be available at

compile time Syntactic formulation of rules does not influence the

size of the virtual table

Page 14: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Product Configuration: Virtual Tabulation (III)

• Disadvantages: Only finite domains, no real-valued variables Relatively simple rules: plus, minus, comparison,

and, or, not, if-then-else Virtual table must be recompiled whenever the

product model changes Most product models have compact virtual tables,

but some don’t

Page 15: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Agenda

• Background: Online sales of complex products

• Product Configuration: Constraint Propagation and Virtual Tabulation

• Tool Description: ConfigIt

• An Example: The Virtual Bike Shop

Page 16: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Tool Description: ConfigIt

GUI for buildingproduct model

Java/C++/COM API forruntime lookup in VT file

ERP

GUI for test andvalidation of PM

Page 17: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

Agenda

• Background: Online sales of complex products

• Product Configuration: Constraint Propagation and Virtual Tabulation

• Tool Description: ConfigIt

• An Example: The Virtual Bike Shop

Page 18: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

An Example: The Virtual Bike Shop

User preferences: height, type of bike

The presentation

Components: frame, tires, gear, pedals, etc.

Properties: frame-size, frame-color, etc.

Page 19: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

An Example: The Virtual Bike Shop (II)

Data extracted from a bike stores’ SQL-DB

PM has 42 variables, took 2 days to develop

127 million solutions (different bikes)

1500 entries in Virtual Table (32Kb)

Page 20: Configuration and E-commerce Invited talk, IFORS 2002 8-12 July 2002, Edinburgh, Scotland

An Example: The Virtual Bike Shop (III)

Took 1–2 hours to develop

Approximately 200 lines of ASP code

To create a drop-down menu: <% webControls.Dropdown "Shoes", "Not Selected" %>

Use library of COM functions to query the Virtual Table