Upload
mark-stewart
View
220
Download
2
Tags:
Embed Size (px)
Citation preview
Chapter 9Products:
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.
- 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.
- 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.
- 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
- 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.
- 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.
- 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.
- 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.
- 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
- 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.
- 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
- 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
- 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 ...
- 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)...
- 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, ...
- 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
- 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,...
- 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.
- 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.
- 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
- 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
- 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 -
- 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 -
- 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 -
- 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
- 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.
- 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 -
- 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
- 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 -
- 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 -
- 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
- 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
- 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
- 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
- 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
- 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.
- 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
- 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
- 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
- 41 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern
Example Domain: Customization Activation
- 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
- 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!
- 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
- 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
- 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
- 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
- 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
- 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
- 50 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern
Implementation
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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 !
- 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, ...
- 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
- 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
- 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
- 65 - (c) 2000 Dr. Ralph Bergmann and Prof. Dr. Michael M. Richter, Universität Kaiserslautern
A Tool to Support Interactive Selection
- 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
- 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.