1 computer group engineering department university of science and culture s. h. davarpanah...
TRANSCRIPT
![Page 1: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/1.jpg)
1
Computer GroupEngineering Department
University of Science and Culture
S. H. Davarpanah
![Page 2: 1 Computer Group Engineering Department University of Science and Culture S. H. Davarpanah Davarpanah@usc.ac.ir](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/2.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/3.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/4.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/5.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/6.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/7.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/8.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/9.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/10.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/11.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/12.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/13.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/14.jpg)
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](https://reader035.vdocuments.site/reader035/viewer/2022062619/55189f2d550346b31f8b47b8/html5/thumbnails/15.jpg)
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)