# © C. Kemke Constructive Problem Solving 1 COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba.

## Presentation on theme: "© C. Kemke Constructive Problem Solving 1 COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba."— Presentation transcript:

© C. Kemke Constructive Problem Solving 1 COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba

© C. Kemke Constructive Problem Solving 2 COMP 4200: Expert Systems  Constructive Problem Solving I  cf. Jackson, Chapter 14  Constructive Problem Solving II  cf. Jackson, Chapter 15

© C. Kemke Constructive Problem Solving 3 Task Areas of Expert Systems System-Based View of XPS Task  Analysis Tasks (Interpretation of System)  Diagnosis  Classification  Synthesis Tasks (Construction of System)  Construction  Configuration  Design  Planning

© C. Kemke Constructive Problem Solving 4 Solution constructed by choosing and assembling solution elements. Examples: develop a plan for a robot to bring a cup of coffee from IQ; construct a system, e.g. a computer, by assembling a set of components, like HD, CPU etc. Solution elements are described as components (maybe with parameters); assembly is subject to constraints (robot cannot go to IQ if it cannot take the elevator; certain CPUs need certain power supply); solution might be subject to evaluation function

© C. Kemke Constructive Problem Solving 5 Constructive PS and Task Areas Planning solution elements = actions solutions = sequence of actions constraints = e.g. physical or logical constraints Design solution elements = components solutions = combination of components constraints = e.g. physical or logical constraints Diagnosis of multiple disorders solution elements = disorders solutions = sets of disorders to explain the symptoms ; determine 'best' set according to evaluation

© C. Kemke Constructive Problem Solving 6 Constructive PS Approach Choose combination of solution elements  set  sequence  complex arrangement Combined according to constraints  order (sequence of steps; arrangement of components)  time (sequence of actions in time; limit of time)  spatial arrangement (layout in space, e.g. floor plan)  features and their agreements (e.g. matching voltage for electrical components, matching colors for cloths) ...

© C. Kemke Constructive Problem Solving 7 Constructive PS as Search Search Space: all combinations of solution elements Search Space can be huge! Restrict search by selecting solution elements based on known constraints; selection of new components is restricted through constraints. Constraints can be formulated in rules: IF device requires battery THEN select battery for device IF select battery for device THEN pick battery WITH voltage(battery) = voltage(device) IF device requires battery AND device = watch THEN select micro- battery

© C. Kemke Constructive Problem Solving 8 Constructive PS - R1/XCON R1/XCON developed to design DEC VAX computer systems (early 1980ies) R1  uses a database of computer components  a rule base specifying design rules and constraints  a working memory (WM) to store interim structures, in particular the partial computer configuration generated so far

© C. Kemke Constructive Problem Solving 9 R1/XCON – Sample Component Jackson, p. 262, Figure 14.1

© C. Kemke Constructive Problem Solving 10 R1/XCON – Types of Rules Rule types related to tasks in PS: 1. Operator Rules create and extend partial configurations 2. Sequencing Rules determine order of processing (contexts, modules) 3. Information-Gathering Rules access database of components; perform various computations

© C. Kemke Constructive Problem Solving 11 R1/XCON – Sample Rule Jackson, p. 262, Figure 14.2

© C. Kemke Constructive Problem Solving 12 R1/XCON – Basic Principles R1 selects component from DB; entered as ‘token’ (instance) into Working Memory (WM). Rules specify configuration patterns (conditions, constraints) and actions for extending partial configurations (consequences). Rule set divided into "contexts" (modules) according to sub- tasks. Strategy  Finish a sub-task before starting a new one. Implementation  Add contexts to condition part of rules.  Switch to new context in the action part.

© C. Kemke Constructive Problem Solving 13 R1/XCON – Sub-Tasks 1. Check and complete order. 2. Configure CPU. 3. Configure unibus modules, prepare cabinets with modules. 4. Configure paneling; assign panels to unibus modules and devices. 5. Generate floor plan. Device arrangement. 6. Cabling.

© C. Kemke Constructive Problem Solving 14 R1/XCON – Problem Solving Propose-and-Apply (Bachant 1988): 1. Initialize Goal (for current task) 2. Propose Operator (plausible next steps) 3. Prune Operator (according to global criteria) 4. Eliminate Operator (pairwise comparison) 5. Select one Operator (based on 2-4) 6. Apply Operator (extend configuration) 7. Evaluate Goal (okay? or not?)

© C. Kemke Constructive Problem Solving 15 R1/XCON - Conclusion  DB of components  constraints and actions in rules  about 10.000 rules defined and used  integrate various experts' knowledge  heavily based on "what-to-do-next"  follows always one line of reasoning  control through contexts (modules)

Download ppt "© C. Kemke Constructive Problem Solving 1 COMP 4200: Expert Systems Dr. Christel Kemke Department of Computer Science University of Manitoba."

Similar presentations