configuration systems
DESCRIPTION
Configuration Systems. CSE 435 Sudhan Kanitkar. Outline of the Presentation. What is a Configuration System ? Requirements, Issues and Approaches Use of Case-based Reasoning for Configuration Systems Adaptation Problem and its Issues. What is Configuration System ?. - PowerPoint PPT PresentationTRANSCRIPT
Outline of the Presentation
What is a Configuration System ? Requirements, Issues and Approaches Use of Case-based Reasoning for
Configuration Systems Adaptation Problem and its Issues
What is Configuration System ?
What is a Configuration Task ?– Components– Connections– Constraints– Requirements
Example: Electrical system of a house Example: Automatic Code Generation
Configuration – A Design Task
Function of Configuration System is thus analogous to a Design Task
Types of Design– Routine Design– Innovative Design– Creative Design
Configuration Task can be modeled as Routine Design
Configuration Task
Predefined Components Connection of Components Task Specification
– Set of components (XCON)– Constraints
Constraint Satisfaction Problem
Properties
Comparatively tractable design task Usually applied on relatively Closed Problems Comparison with Planning tasks Full Automation which is desired is possible.
Approaches
Rule-Based Systems– Very attractive choice owing to closeness to
Configuration System– Drawbacks - Knowledge Acquisition, Consistency
checking, Lack of modularity & Adaptability– Limited use resolves these issues. – Found useful for representation of Glue
components
XCON – eXpert CONfigurer
Assist in configuration of DEC’s VAX computer systems
Input: Required Characteristics of computer Output: Specification of computer system Inference Engine: Forward chaining 25000 rules, 95-98% accuracy Processed 80000 orders by 1986 Developed to overcome lack of technical
knowledge of sales people
Approaches
Concept Hierarchies– Use of Object-oriented techniques such as frames
for knowledge representation– Supports IS-A and HAS-A relationships– Supports the use of description logics– Enables definitions of “Skeletal Plans”.– OWL – Web Ontology Language may provide the
ability to represent data on the web.
Concept Hierarchy – An Example
Component
MonitorKeyboardMainboardProcessorPC-Case OS Mouse
Single-CoreDual-Core
PentiumCeleronCoreDuo
ServerClient
Windows 2003XP-Prof.XP-Home
Approaches
Structure-Based Approach– Relies on forming solutions based on structure of
knowledge (Concept Hierarchies)– Solution is represented in same form as the
knowledge and can be generalized or specialized.
e.g. Music-Photos-Videos PC– Flatscreen Monitor, Printer, Card Reader .
e.g. Database Server– Hard drive, RAM, Processor
Example - Structured Approach
Music – Photos – Videos PC
DVD-R/W
Printer
Sound Card
Flatscreen Monitor
Video Card
Card Reader
Approaches
Constraint-Based System– Usually used in specifying requirements rather than
knowledge representation– Used in conjunction with a knowledge base
represented using a different approach– Impose restrictions as relations between objects.– Incremental built up of a solution causing reduction– Gives rise to the concept of constraint satisfaction– e.g. Use with skeletons generated by structured
approach to obtain complete solutions.
Approaches
Resource-Based Approach– Requirements specify only the functionality of the
developed system.– Component knowledge needs to be represented in
terms of the task it performs.– Depending on tasks needed to fulfill a function
components are selected.– Connectivity knowledge representation can be
incorporated into components itself
Example – Resource based Approach
Robot - Localization– GPS– Map building and Path planning algorithms
Robot – Obstacle Avoidance– Sensors – IR, Sonar, Laser, Camera– Potential fields and Obstacle avoidance
algorithms.
Approaches
Case-based Reasoning– Stores a set of solutions called Cases– Possible use of preprocessing on stored cases– Use these case to generate new solutions– May/May Not use a case completely– Methods of use:
Retrieval Adaptation Derivational Analogy
Example - Case-Based Reasoning
Problem is to configure an alarm system for a house from a set of pre defined components.
Problem Description consists number of rooms, windows and doors on each floor
Attribute Value
Doors 1
Rooms-1 2
Windows-1 2
Rooms-2 1
Windows-2 1
Fire Protection True
Motion Protection False
Example – Case based Reasoning
Properties– Maximum 6 sensors to one circuit– Fire & Motion sensors should be on separate circuits
so that they can be operated independently– Fire & motion if required should protect all the rooms– Atleast one door should have a door delay sensor– Each system should have atleast one sensor unit and
one alarm unit
Case-Based Reasoning
Compositional Adaptation– Select 2-3 cases that match most closely with the
input case.– For each attribute use the value from the case
which suits the solution the best– No modifications are made on the values– Values are however used from multiple cases
Case-Based Reasoning
Transformational Adaptation– Used when compositional adaptation doesn’t
provide satisfactory– Arises when input case is quite different from all
the cases in the case base.– Starts with an approach similar to compositional
adaptation– Involves changing of values, adding new values
or deleting values for certain attributes.
Adaptation – Knowledge Growth
Configuration systems provide – Case Representation– Similarity Assessment– Retrieval
Configuration system don’t provide– Case adaptation– New case generation
Result: No learning
Adaptation as Configuration
Adaptation can be said to be an incremental step to Configuration.
Should be able to generate new cases Add the new cases to the case base Update the inference engine accordingly
Adaptation Techniques
Substitutional Adaptation Transformational Adaptation Derivational Adaptation Composition Adaptation (Configuration) Incremental level of complexity in above
methods Actual adaptation system may be semi-
automatic
Adaptation – Configuration Perspective
Configuration task involves organizing an identifiable and predefined set of components in order to satisfy some constraints
Configuration Problem should involve:– Set of Configurable components– Set of ordering constraints – Configuration Operators that encode valid component
configurations
Adaptation Operators
Configuration Operators
Describe a unit of operation in the configuration task
Application of a certain operator will govern the next step in the configuration process
Maintain the dependencies and constraints at each stage
Operators are an abstract concept and implementation is domain dependent.
Application of operators is generally controlled by a certain rule based system
Common Configuration Operators
Configure (Object) Parameterize (Attribute) Compose (Concept) Decompose (Concept) Specialize (Concept)
Benefits of Operators
Explicit representation of decisions made during generating solution and dependencies
Support for withdrawing decisions in effective manner
Can easily be controlled through rules and constraints
Configuration based Adaptation
Most CBR systems implement adaptation limited to substitutional techniques
Difference between description space and solution space.
If there is a mapping between these two spaces then it might be possible to generate cases for various solutions created
Adaptation Operator & Action
Adaptation Operator is applied on attributes of a solution to adapt them into a case
This assumes the use of concept hierarchy representation
Adaptation Action involves application of a sequence of one of more Adaptation Operators– Simple Action – Applies on just one attribute– Complex Action – Applies on a more than one
operator
Doesn’t always work
Conflict Resolution Optimal solution not found/Incorrect of
Incompatible Solutions Revision of Decisions Repair of a partial solution
Inferences
There are primarily two approaches– Case based reasoning– Conceptual hierarchy
Although the latter is more promising in almost all criteria it also comes with a level of complexity
Most of the configuration systems currently use the CBR based techniques.