67
Chapter 9 Products: Representation, Design and Customization Stand 20.12.0

Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

Embed Size (px)

Citation preview

Page 1: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

Chapter 9Products:

Representation, Design and Customization

Stand 20.12.00

Page 2: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 2 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Recommended Reference

• The algorithms are presented in this chapter in some detail. Further information can be found in the following original literature:– Stahl, A., Bergmann, R. & Schmitt, S. (2000). A Customization

Approach for Structured Products in Electronic Shops. 13th Bled Electronic Commerce Conference.

– Schmitt, S. & Bergmann, R. (1999). Applying case-based reasoning technology for product selection and customization in electronic commerce environments. 12th Bled Electronic Commerce Conference.

– Bergmann, R. & Vollrath, I. (1999). Generalized cases: Representation and steps towards efficient similarity assessment. In W. Burgard, Th. Christaller & A. B. Cremers (Hrsg.) KI-99: Advances in Artificial Intelligence, Lecture Notes in Artificial Intelligence, 1701, Springer, 195-206.

Page 3: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 3 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Products• We understand products as the objects which are

demanded by the customer and sold by the supplier.• The concept of a product cover a wide range:

– Technical devices (PC’s, cars, video recorders, ....– Natural objects (plants, food, animals,...)– Real estate, houses,...– Events (concerts,...), Travel, ...– Services (insurance's, financial advice, ...)– etc.

• The supplier may products have some on stock, others may have to be designed or modified by the supplier and again others may have to be ordered from other suppliers.

Page 4: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 4 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

General Description Aspects

• Products have in general two descriptions:– one for the customer– one for the supplier

• The description for the supplier is mainly intended – to identify the product– to design the product

• The descriptions uses attributes, properties etc.• Technical products (but others too) are objects which

are a (possibly complex) composition of atomic parts. Between the parts certain constraints are defined.

Page 5: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 5 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Representation of Products

• Representation in the form of frames and frame hierarchies• The most important relations are (see chapters 4 and 5):

– Is-a-relation: More spezial - more general, including an inheritance mechanism

– Instantiation: Class - Instance– The part-of-relation between components– Constraints between components (hard and weak constraints)

• Components have an inner structure and connections to the outside represented by port variables (constraints are defined between them)

• We have complex components and atomic components which cannot be decomposed.

• Between components the relation „direct subcomponent“ is defined

Page 6: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 6 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Decomposition of Products

Product

The decompositioninto parts is oftennecessary to meetcustomerrequirements

Some questions can only be answered on the level of parts.

Page 7: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 7 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Functionalities (1)• A functionality is the ability to carry out one or more

intended functions, e.g.– to drive, show a movie, play music,...

• A product (e.g. a machine or a technical device) realizes a functionality if it is able to carry out the intended functions.

• Functionalities are again described in two ways:– for the customer – for the supplier

• The description is about what the functionality is and how it has to be performed (quality aspects). Both are usually expressed in terms of constraints.

Page 8: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 8 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Products and Functionalities (2)• Devices and machines :

– Concrete (e.g. technical as cars or manufacturing machines)– Abstract (e.g. finite automata, computer programs)

• Component-orientation (static): Is interested in the structure of machines, their configuration etc.

• Process-orientation (dynamic): Is interested in the processes running on the machine e.g. organization, correctness, resources, values of parameters, etc. Here, it is the process for which we need the product, not the process during which the product is produced.

• Reminder: Processes are (partially ordered) sets of actions• Both aspects can be considered interleaved as well as

completely independent of each other.

Page 9: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 9 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Products and Functionalities (3)

• Many products which are not technical devices share their basic properties, in particular the component orientation.

• Examples are travel offers and real estate objects.• Their functionality is not given as directly described

processes (like nice holidays) but indirectly in terms of constraints.

• The task is to find an optimal composition of components with respect to the (hard or weak) constraints.

Page 10: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 10 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Decomposition of Functionalities (1)

• Decomposition of functionalities is often necessary because not one single product can realize a functionality.

• The decomposition terminates if realization is possible or it is clear that no realization can take place.

• Termination happens always at atomic actions but possibly earlier.

Functionality

Decomposition

Page 11: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 11 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Decomposition of Functionalities (2)

• Example: Decomposition of the complex function “build a house”:– Find a lot– Select an architect– Select companies for construction, electricity, roofs, ....– Get a loan from a bank– Make appropriate insurances– etc.

• These functions are not only different but carried out by different companies.

• A portal can be provided from a company which organizes the search in such a way that the customer has nothing to do with it. Compare also chapter 14.

Page 12: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 12 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Products Realize Functionalities

Object class PrinterCompany: StringPrice: Number

Object class laser printerSuperclass: Printer

Object class colour printerSuperclass: Printer

Object class inkinjection printerSuperclass: Printer

Object class Printing

Object instance: BestPrCompany: MillerPrice: 1200

Object instance: WonderPrCompany: MayerPrice: 1600

Generalproductfunctionality

taxonomy

instances

Subclasses and instances are chosen according to customer utilities

realizes

Page 13: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 13 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Description by Semantic Nets

• Labeled Graph:• Node labels:

– Demands (for products, for functionalities) and some properties– Products and some properties

• Edge labels:– Product-product relations (first net)– Demand-demand relations (second net)– Demand-product relations (third net)

• See chapter 5

Page 14: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 14 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

The Net Labels (1): Products

• Product relations: domain knowledge (and general knowledge about customers)

• Unary relations (properties, at the nodes):– is available, has to be configured...

• Binary relations :– Part-of, kind-of, needs, improves, constraints

between properties and parameters of products ...

Page 15: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 15 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

The Net Labels (2): Functionalities as Demands

• Functionality relations: Domain knowledge and customer preferences

• Unary relations (properties, at the nodes):– technical data, intended utilities

• Binary relations (at the edges):– part-of, kind-of, equivalence, is usually wanted both

by the customer, is usually not wanted together by the customer, dependencies (and functionality requires another one as precondition or makes it necessary as a consequence)...

Page 16: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 16 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

The Net Labels (3): Products as Demands

• Products required by demands do not necessarily exist, they are wishes in the first place

• Unary relations: Desired technical data, quality properties, price, ...

• Binary relations: Is usually wanted both by the customer, is usually not wanted together by the customer, ...

Page 17: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 17 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

The Net Labels (4) : Products and Functionalities

• Labels at the edges:– Products P realizes functionality F:

• total or partial realization (other parts needed ?)• quality degrees according to listed utilities• possible constraints

– Link to other products that satisfy F too

Page 18: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 18 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Language Levels (1)

• The language in order to describe products has two dimensions:– Product orientation or functionality orientation– Level of details (see chapter 5)

• Product orientation:– What are the products, e.g. MS Word, MS Powerpoint,

Framemaker,...– Levels of details e.g. available fonts, ...

• Functionality orientation:– Produce letters,, overhead slides, animation, ....– Levels of details e.g. Business letters, standard letters,

documents with special graphics,...

Page 19: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 19 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Language Levels (2)

• There is no unique language level, the choice depends on the purpose:– internal uses of the supplier– external uses for customers

• According to the demands and the level of experience of the customer different language are appropriate.

• Consequences:– Products should have a complete description with all details

and a location in the hierarchies– There should be selected suggestions for certain language

levels which often occur.

Page 20: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 20 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Customization

• Many shops do not further support customers after the retrieval step: One can only select a product.

• This excludes parameterizable or configurable products: They are not directly available as demanded but could after some work (adaptation or configuration) still be delivered.This work is called Customization (we mainly use the term to denote adaptation).

• Customization takes always place with respect to the

query and requires domain knowledge.

• Similarity based retrieval and customization have to be

combined.

Page 21: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 21 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

The Continuum of Products1) Fixed Products:

Product customization impossible

Examples: books, CDs, integrated circuits, etc.

2) Parameterizeable Products:Limited customization capabilities

Examples: color of products, date and duration of vacations

3) Configurable Products:Various customization capabilities

Example: complex technical systems (e.g., PCs),

financial or insurance products Co

mp

lexi

ty o

f C

ust

om

izat

ion

FixedProducts

ParameterizeableProducts

ConfigurableProducts

InnovativeProduct Design

CreativeProduct Design

CoveredProduct Range

Page 22: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 22 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Approaches to Customization

Method Products Knowledge Needs

rule-based transformation(Bergmann & Wilke, 1996)

parametrizable productsfew variants

few dependencies

productscustomization rules

operator-based transformation(Bergmann 1998; Schmitt & Bergmann, 1999)

productscustomization operators

analogy-based configuration(Pfitzner 1993; Schumacher, 1998)

configurable productsmany variants

many dependencies

component knowledgedependencies

control knowledgeknowledge-based configuration

(Günter et al., 1995-1998)

compositional adaptation(Smyth, 1998; Stahl & Bergmann, 2000)

component knowledgedependenciescontrol cases

generalized cases(Bergmann & Vollrath, 1999-2000)

parametrizable products many variants

many dependencies

parametrizable products few variants

few dependencies

configurable productsmany variants

many dependenciesconfigurable products

many variantsmany dependencies

component knowledgedependencies

prototype configurations

products including variant descriptions

Page 23: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 23 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Transformational Approaches:Basic Notions

• We define the terms problem, solution, and quality– P : problem space (queries, possibly infinite)

– S : solution space (products, possibly infinite)

– Q : P x S R total function, called quality function R : totally ordered set of quality values (typically set of real numbers)

• No assumption about the structure of P or S.

• Q assigns a quality value to each (problem, solution) pair

• Quality can stand for: appropriateness, utility, degree of correctness, ...

• Quality is a more fine-grained correctness measure than just correct / incorrect

- 4 -

Page 24: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 24 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Problem Solving Task

• Goal of problem solving: given a problem p (customers wish) determine a solution sS such that holds.

• Q contains the whole specification of the problem solving task.

• Looks like an optimization task !

• But: Q is not completely known !

SystemProblem p solution s

s S Q p s Q p s' ( , ' ) ( , )

- 5 -

Page 25: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 25 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example• Sales support for PC

• Problem Space: set of possible combinations of

requirements, e.g., P = 2 {Textprocessing, Games, Music,...}

• Solution Space: set of possible PC configurations,

e.g., S = 2 {xyz-mainboard, 4.3GB Harddisk,...}

• Quality function:

• Note: Q is not completely known, e.g. because of– special offers

– special prices for pre-configured PCs

Q p sc

( , )

: s fulfills all requirements p and the price of s is c

- : s does not fulfill all requirements p

- 6 -

Page 26: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 26 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Adaptation Operators (1)

- 7 -

• A case is a triple c=(p,s,q) P x S x R =:C

• A case base is a finite set of cases: CB={c1,c2,...,cn}

C

A case c=(p,s,q) is sound w.r.t. a quality function Q

iff q=Q(p,s) holds.

• Cases with different quality can be distinguished

• The change of quality through adaptation can be captured

Page 27: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 27 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Adaptation Operators (2)

• An adaptation operator is a partial function : C C,

i.e., transforms a case into a successor case.

• The adaptation changes the product and its quality .

• The adaptation container A is a set of adaptation

operators A = { 1, 2 ,... }.

An adaptation operator is sound w.r.t. Q iff

for all c,c’C holds: if (c)=c’ and c is sound then c’ is

sound.

Page 28: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 28 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example (cont.)

• Adaptation operator 1 :

If you add 4.3 GB hard disk space, then the PC will fulfill

the requirements of database applications and the price

will increase by 985 DM.

1(p,s,q) = (p {DB-Applics}, s {4.3 GB hard disk}, q-

985)

- 9 -

Page 29: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 29 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Adaptation Process• Current problem: p

• Retrieved case: cR CB

• Adaptation: transforms cR into the adapted case cA

by applying adaptation operators from AcA = n ... 1(cR)

• We write:

If the case base and the adaptation container are sound w.r.t. Q, then every adapted case is also sound w.r.t. Q.

1 2 ncR cA

...

- 10 -

cR cA*A

Page 30: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 30 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Correctness and Completeness

• A CBR system has only restricted knowledge about Q:

– the case base CB

– adaptation container A.

• Correctness: A CBR system always produces the best

solutions it can produce w.r.t. its knowledge about Q

• Completeness: A CBR system produces a solution to a

problem if one exists on the basis of its knowledge about Q

- 11 -

Page 31: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 31 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Discussion of Completeness and Correctness Properties

• Correctness and completeness are desirable properties for a CBR system.

• For pure case retrieval systems we usually require completeness and correctness (retrieve most similar case).

• BUT impossible with adaptation: deciding whether a solution exists w.r.t. to CB and A is undecideable in the general case.

• How to deal with this:– Find relaxed version of completeness and correctness,

e.g. like in PAC learning.

– User-controlled adaptation

- 14 -

Page 32: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 32 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

What about Similarity ?• Similarity measure should:

– select adaptable cases and

– select the best case for adaptation

• All knowledge is already contained in CB and A !

• Similarity measure contains compiled knowledge from A.

A similarity measure sim: P x C [0..1] is correct iff – there exists a bijective monotonous function f: R ]0..1] and

– sim(p,c) =

- 15 -

f ( max{q | c (p,,q) } )

0 if c is not adaptable{ *A

Page 33: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 33 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Customization Operators

• Product customization process divided into units of

changes

• Operator = Unit of Change

• Customer chooses which changes to make

OperatoriIntermediate Producti Intermediate Producti+1

Query Product

influences

influences

changes

Page 34: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 34 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example for the Customization Process

RetrievedProduct

TargetProduct

Customized Fishing Trip

IntermediateProduct

Rent Fishing Boat

IntermediateProduct

Rent Fishing Equipment

IntermediateProduct

Book Fishing Course

Fishing Trip

Page 35: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 35 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Adaptation Operator Representation

• Name

• Precondition

• Parameters

• Parameter Condition

• Action

• Reference Class

Page 36: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 36 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Application Area

• Product categories:– unchangeable products,

e.g., ICs, etc.

– products with few changeable features,

e.g., vacations, cars, etc.

– products with many changeable features,

e.g., computers, networks, design tasks, etc.

• Adaptation Operators only for – configurable products in general– products without many possibilities for modifications– products with low interaction

Page 37: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 37 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example Domain: Electro-Mechanical Components

• Testbed for the Customization Module:

The Electronic Product Catalog

• Catalog contents: thousands of electro-mechanical components and devices:floating and magnetic switches, level controls, liquid level indicators, moisture detectors for cooling ceilings, etc.

• Expert knowledge for product selection needed

• Catalog supported by CBR Technology:ESPRIT Project SMARTSELL

• Many product variation possibilities: length, diameters, (mandatory) accessories, etc.

Page 38: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 38 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example Domain: Level Measure Device

TSK

Liquid LevelTransmitter

float

screw-in nippel

Transducer

MWU

Switching Unitfor Signals

SKG

DisplayInstrument

Customer canchoose length

Page 39: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 39 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

System Architecture

CustomizationGUI

CustomizationClient

CustomizationServer

Controlling Servicewith Cases

AuthoringTool

Operator DBService

OperatorDB

ServerGUI

CLIENT

SERVER

Internet Server 1

Internet Server 2

XML

TCP/IP

XML

TCP/IP

XML

Page 40: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 40 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Communication between the Components

Customization Client

Customization Server

Controlling Service

OperatorDB

System

OOCCL

OOCSL

OOOML

• OOCCL = ORENGE Operator Customization Client Language

• OOCSL = ORENGE Operator Customization Service Language

• OOOML = ORENGE Operator Object Markup Language

Page 41: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 41 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example Domain: Customization Activation

Page 42: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 42 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Compositional Adaptation (1)

• Configuration problems can be described through a decomposition problem:

Overall problem (e.g., the configuration of a PC)

Complex sub-problems (e.g., the configuration of a sub-system)

Atomic sub-problems (e.g., the selection of a component)

Dependencies between sub-problems (e.g., compatibility between components)

Goal: Effective solving of such a problem

Page 43: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 43 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Compositional Adaptation (2)

1) Retrieve a solution for the complete configuration problem

2) Determine still unsolved sub-problem

3) Retrieve suitable sub-solution

4) Try to integrate this sub-solution into the overall solution

5) Repeat 2) - 4) until a solution for the overall

problem is obtained

Basic idea: Implement product customization (resp. adaptation) of highly structured products (resp. cases) again similarity-based!

Page 44: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 44 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Compositional Adaptation (3)

Retrieval

Retrieval

Retrieval

Problem Solution Final Solution

Reusable Sub-Solution

Non-reusable Sub-Solution

Solution

Integration

Page 45: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 45 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Compositional Adaptation for Product Configuration (I)

Basic assumptions:

• Existence of two different bases:1) pre-configured base-products

2) single components

• Availability of a constraint propagation system:– used for the definition of domain dependent constraints– is able to validate the consistency of a generated solution

• The configuration problem (i.e. the query) is described by an incomplete product description

Page 46: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 46 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Compositional Adaptation Product Configuration (II)

Query

Base ProductRetrieval

ComponentRetrieval

ComponentSelection

ComponentExchange

BaseProduct

Weak Component

ProductValidation

AlternativeComponents

ModifiedProduct

ValidatedProduct

Base Products

Components

ConstraintsConstraints

AdaptationCycle

Page 47: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 47 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Query

Hard-DiskCapacity: 20GB

PCPrice: 2000

CD-DriveType: CD-RW

Example PC: Configuration

Hard-Disk 5Capacity: 15GB

PC 3Price: 1599

CD-Drive 2Type: CD-ROM

...

BaseProduct

Retrieval

Hard-Disk 2Capacity: 20GB

Hard-Disk 8Capacity: 15GB

.. .AlternativeCD-Drives

.. .

AlternativeHard-Disks

CD-Drive 7Type: CD-RW

CD-Drive 3Type: CD-R

CD-Drive

Retrieval

Retrieval

Hard-Disk Sim

ilarity

Case

ComponentExchange

Page 48: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 48 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

The Customization Problem

• The customization problem can be characterized as a combination of two different problems:

1) Constraint Satisfaction ProblemFinding of a consistent product, i.e., a product that fulfills all

technical restrictions

2) Optimization ProblemFinding of a product that matches the customer demands as

well as possible

Goal: Maximization of the similarity between the product

and the query

Page 49: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 49 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Controlling the Adaptation Process

• The adaptation cycle realizes a hillclimbing approach– every adaptation step navigates in the solution space– the similarity measure represents a kind of quality function

the adaptation order plays an important role

• Two basic approaches:

1) Preservation of consistency– The result of every adaptation step is a consistent product

2) Temporary loss of consistency– Constraint violations between adaptation steps are allowed

better configuration results– but: significant higher computation effort

Page 50: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 50 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Implementation

Page 51: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 51 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Generalized Cases

• Motivated by design reuse applications:– Cases are descriptions of previous designs– Nowadays EE designs are made for a range of problems– Example: design of an n-bit adder unit, with n: 1...64

Problem

So

lutio

n

traditionalcases

ProblemS

olu

tion

generalizedcases

Extensionof view

Page 52: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 52 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Definition of Generalized Cases

Definitions:

A traditional (point) case

A generalized caseSPc SPgc

gcc

Solution SpaceProblem Space

Remarks:• gc is an abbreviation for a set of closely related cases• gc should have a compact representation

Semantics:

gc is equivalent to the set of individual cases

i.e., nn gcgcCBCBgcgc ...},...,{ 1211

Page 53: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 53 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Different Kinds of Generalized CasesConstant Solution GC

Set of problems P with same solution s,

i.e.,

Functional Solution GC

Set of problems with solution f(p),

i.e.,

Independent Alternative Solution GC

Set of problems P with a set of

alternative solutions S

i.e.,

}|),{( Ppspgc

Pp}|))(,{( Pppfpgc

SPgc

S

P

S

P

P

S

Page 54: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 54 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

q

Similarity Measures

Assumption

Available similarity measure sim for point cases

Definition

Canonical extension of sim for generalized cases: sim*}|),(max{),(* gcccqsimgcqsim

P

S

sim

q

c

1

c

2

S

P

sim*

gc1

gc

2CanonicalExtension

Page 55: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 55 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Equivalence

Case with same solution is retrieved

CBR System withTraditional Cases

),( cqsim

Case Base

Similarity Measure

CBR System withGeneralized Cases

ngcgcCB ...12

Case Base

Similarity Measure

),(* gcqsim

q q

},...,{ 11 ngcgcCB

Page 56: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 56 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Selecting Solutions

DefinitionCanonical selection of point cases– from generalized case gc– for a query q and– similarity measure sim

Select most similar point cases from generalized case

RetrieveGeneralized

case SelectPointcase Reuse

)},(),(|{),,( ** gcqsimcqsimgccsimgcqSelect

qP

gc1

S

qP

gc1

Ss 1gcc

Select step is a kind of adaptation

Page 57: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 57 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Representing Generalized Cases

• Compact representation is essential for generalized cases

(Just enumerating the elements is not useful)• Goal:

– compression of the representation of the case set – encode case specific adaptation knowledge– simplify storage of generalized cases– enable similarity assessment

• Basic assumption: Attribute-Value-RepresentationProblem Space n problem attributes

Solution Space m solution attributes

Query

Case

nPPPP ...21

mSSSS ...21

),...,( 1 nqqq )),...,(),,...,(( 11 nn ssppc

Page 58: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 58 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Hyperrectangles Representation

• Representing cases as n+m dimensional hyperrectangles

• Very simple representation: independent set for each attrib.• Selection not necessary • Simple and efficient similarity measures:

the canonical extension of

is

)),...,(),,...,((: 11 mn ssppgc

Subsets,Intervals

ii Pp

Subsets,Intervals

ii Ss 1p

P2

P1

S1

2p1s

)),(),...,,((),( 111 nnn pqsimpqsimcqsim

Monotonic aggregation Local Similarity Measures

Canonical extension of local similarity: }|),(max{*iiiiii pppqsimsim

)),(),...,,((),(* *111

*nnn pqsimpqsimgcqsim

Page 59: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 59 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Representation with Constraints

• Extended representation as follows:

• Constraints between problem and solution variables• Example

)),...,,,...,,,...,(),,...,(),,...,((: kmnmn vvssppCssppgc 11111

Set of Constraints auxiliary var’sBounding Box

3

Constraints Area

Bounding Box}),,,{

(...),]),..[],..(([

11533131

12

21

21

21

pppppppp

gc

a

b

c

d

P2

P1

1

1

3

a

b

c

d

Page 60: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 60 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Similarity Assessment

• Using the bounding box for

similarity assessment

• Similarity to bounding box is

easy to compute

( Hyperrectangles Rep.)

• Only estimation of similarity!!

P2

P1

q

sim*

sim*

sim* sim* sim*

gc

sim*

• Constraint satisfaction techniques in special situations:

– Assign query values to problem space variables in constraints

– Apply CS to find consistent values for auxiliary and solution variables

• If Successful: canonical selection performed by CS, exact similarity can be determined

– Works only if query completely falls in the generalized case !

Page 61: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 61 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Application Domain: IP ReuseIntellectual Properties (IPs) in Electronic Engineering• Skill of the designer• Redesign would consume significant time• Reuse avoids „reinventing the wheel“• IPs developed for a design space rather than for a fixed design• Reuse difficult: No Intelligent Support

IP Representation

• Measures: describe general IP propertiesgate count, power dissipation, latency, maximum clock frequency

• Application specific parameters: describe the IP functione.g. frequency, bus width, ...

• Design space parameters: unique to a specific implementatione.g. number of pipeline stages, degree of parallelism, ...

• Design: Design & Synthesis Information Parameterse.g. reference technology, scripts for synthesis tools, ...

Page 62: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 62 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Example IPExample: Discrete Cosine Transformation

(e.g. used for MPEG-2)

– Design: Design & Synthesis information; scripts for synthesis tool;

– Parameters: f: frequency a: area w: width s: subword– Constraints:

nosssss

wwwww

f

8421

577625496088751118941115660

ififififif

.

....

nos

s

s

s

s

ww

ww

ww

ww

ww

a

8

4

2

1

if

if

if

if

if

2782076194

24131594416

27941676532

43672436692

1006428851081

2

2

2

2

2

Page 63: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 63 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Design Space of the example IP

resolution (bits) clock frequency (MHz)

gate-count

67

89

1011

1213

141516

10 20 30 40 50 60 70 80 90 100 110

0

50.000

100.000

150.000

200.000

250.000

300.000

subword=1

subword=2

subword=4

subword=8

non-pipelined

Page 64: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 64 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Representation of IP‘s

• Generalized Cases

Combine all parameter combinations to one single case

• Constraints

Express the complex dependencies between the design parameters

• Constraints represent case specific knowledge

Store constraints within the case

Page 65: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 65 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

A Tool to Support Interactive Selection

Page 66: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 66 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Advantages of Generalized Cases

• Representation of experience that naturally covers a

space

• Turn several traditional cases into a single generalized

case

• Means for representing case-specific adaptation

knowledge

Traditional case + Adaptation Knowledge Generalized case

• Integration with traditional cases in a single case base

Page 67: Chapter 9 Products: Representation, Design and Customization Stand 20.12.00

- 67 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern

Summary

• The representation issues of objects are concerned with products, functionalities and the relations between them.

• Adaptation is done by adaptation operators are composed to an adaptation process.

• Product configuration needs also operators.• The algorithms make use of monotonic aggregation

functions and perform a local optimization.• Generalized cases combine many cases which then can

be treated in a uniform way.• Major examples are complex technical devices.