1 computer group engineering department university of science and culture s. h. davarpanah...

15
1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah [email protected]. ir

Upload: austen-dixon

Post on 30-Mar-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

1

Computer GroupEngineering Department

University of Science and Culture

S. H. Davarpanah

[email protected]

Page 2: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

Constructive Problem Solving 2

Expert Systems

Constructive Problem Solving I cf. Jackson, Chapter 14

Constructive Problem Solving II cf. Jackson, Chapter 15

Page 3: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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

Page 4: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

Constructive Problem Solving 4

Constructive 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: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

Constructive Problem Solving 5

Constructive 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: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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)– ...

Page 7: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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 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: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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

Page 9: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

Constructive Problem Solving 9

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

Page 10: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

Constructive Problem Solving 10

R1/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: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

Constructive Problem Solving 11

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

Page 12: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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.

Page 13: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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.

Page 14: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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 (pair-wise comparison)

5. Select one Operator (based on 2-4)

6. Apply Operator (extend configuration)

7. Evaluate Goal (okay? or not?)

Page 15: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir

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)