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

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

Apr 01, 2015

Download

Documents

Shania Avent
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: © 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 1

COMP 4200: Expert SystemsCOMP 4200:

Expert Systems

Dr. Christel Kemke

Department of Computer Science

University of Manitoba

Page 2: © 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 COMP 4200: Expert Systems

Constructive Problem Solving I cf. Jackson, Chapter 14

Constructive Problem Solving II cf. Jackson, Chapter 15

Page 3: © 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 3

Task Areas of Expert Systems

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

Page 4: © 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 4

Constructive Problem SolvingConstructive Problem Solving

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

Page 5: © 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 5

Constructive PS and Task AreasConstructive PS and Task Areas

Planningsolution elements = actionssolutions = sequence of actionsconstraints = e.g. physical or logical constraints

Designsolution elements = componentssolutions = combination of componentsconstraints = e.g. physical or logical constraints

Diagnosis of multiple disorderssolution elements = disorderssolutions = sets of disorders to explain the symptoms ;

determine 'best' set according to evaluation

Page 6: © 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 6

Constructive PS ApproachConstructive 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) ...

Page 7: © 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 7

Constructive PS as SearchConstructive 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 deviceIF select battery for device THEN pick battery WITH voltage(battery) = voltage(device)IF device requires battery AND device = watch THEN select micro-battery

Page 8: © 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 8

Constructive PS - R1/XCONConstructive 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

Page 9: © 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 9

R1/XCON – Sample Component Jackson, p. 262, Figure 14.1

R1/XCON – Sample Component Jackson, p. 262, Figure 14.1

Page 10: © 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 10

R1/XCON – Types of RulesR1/XCON – Types of Rules

Rule types related to tasks in PS:

1. Operator Rulescreate and extend partial configurations

2. Sequencing Rulesdetermine order of processing (contexts, modules)

3. Information-Gathering Rulesaccess database of components; perform various computations

Page 11: © 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 11

R1/XCON – Sample RuleJackson, p. 262, Figure 14.2

R1/XCON – Sample RuleJackson, p. 262, Figure 14.2

Page 12: © 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 12

R1/XCON – Basic PrinciplesR1/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.

Page 13: © 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 13

R1/XCON – Sub-TasksR1/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.

Page 14: © 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 14

R1/XCON – Problem SolvingR1/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?)

Page 15: © 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 15

R1/XCON - ConclusionR1/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)