SEGMENT 9 Intelligent Systems Development 1 Intelligent Systems

  • Slides: 52
Download presentation
SEGMENT 9 Intelligent Systems Development 1

SEGMENT 9 Intelligent Systems Development 1

Intelligent Systems Development n Overview of the expert system development process n Performed differently

Intelligent Systems Development n Overview of the expert system development process n Performed differently depending on the – Nature of the system being constructed – Development strategy – Support tools 2

Prototyping: ES Development Life Cycle n 6 phases n Nonlinear process 3

Prototyping: ES Development Life Cycle n 6 phases n Nonlinear process 3

Phases I. III. IV. VI. Project Initialization Systems Analysis and Design Rapid Prototyping System

Phases I. III. IV. VI. Project Initialization Systems Analysis and Design Rapid Prototyping System Development Implementation Postimplementation 4

Phase I: Project Initialization n n n n Problem Definition Need Assessment Evaluation of

Phase I: Project Initialization n n n n Problem Definition Need Assessment Evaluation of Alternative Solutions Verification of an Expert Systems Approach Feasibility Study Cost-benefit Analysis Consideration of Managerial Issues Organization of the Development Team 5

Problem Definition and Need Assessment n Write a clear statement and provide as much

Problem Definition and Need Assessment n Write a clear statement and provide as much supporting information as possible n Conduct a formal needs assessment to understand the problem 6

Evaluation of Alternative Solutions n n n Using experts Education and training Packaged knowledge

Evaluation of Alternative Solutions n n n Using experts Education and training Packaged knowledge Conventional software Buying knowledge on the Internet 7

Verification of an Expert Systems Approach Framework to determine problem fit with an ES

Verification of an Expert Systems Approach Framework to determine problem fit with an ES (Waterman [1985]) 1. Requirements for ES Development 2. Justification for ES Development 3. Appropriateness of ES 8

1. Requirements for ES Development (all necessary) 1. Task does not require common sense

1. Requirements for ES Development (all necessary) 1. Task does not require common sense 2. Task requires only cognitive, not physical, skills 3. At least one genuine expert, willing to cooperate 4. Experts involved can articulate their problemsolving methods 5. Experts involved can agree on the knowledge and the solution approach (continued) 9

6. 7. 8. 9. Task is not too difficult Task well understood and defined

6. 7. 8. 9. Task is not too difficult Task well understood and defined clearly Task definition fairly stable Conventional (algorithmic) computer solution techniques not satisfactory 10. Incorrect or nonoptimal results generated by the ES can be tolerated 11. Data and test cases are available 12. Task's vocabulary has no more than a couple of hundred concepts 10

2. Justification for ES Development (Need at least one) 1. Solution to the problem

2. Justification for ES Development (Need at least one) 1. Solution to the problem has a high payoff 2. ES can preserve scarce human expertise, so it will not be lost 3. Expertise is needed in many locations 4. Expertise is needed in hostile or hazardous environments 5. The expertise improves performance and/or quality 6. System can be used for training 7. ES solution can be derived faster than a human 8. ES is more consistent and/or accurate than a human Benefits Must Exceed Costs 11

3. Appropriateness of the ES (Consider 3 Factors) 1. Nature of the problem: Symbolic

3. Appropriateness of the ES (Consider 3 Factors) 1. Nature of the problem: Symbolic structure and heuristics 2. Complexity of the task: Neither too easy nor too difficult for a human expert 3. Scope of the problem: Manageable size and practical value Problem Selection is a Critical Factor 12

Feasibility Study n Economic (financial): Should we build it? n Technical: Can we build

Feasibility Study n Economic (financial): Should we build it? n Technical: Can we build it? n Organizational: If we build it, will they come? 13

Cost-Benefit Analysis n Determines project viability n Often very complicated n Difficult to predict

Cost-Benefit Analysis n Determines project viability n Often very complicated n Difficult to predict costs and benefits – many are qualitative n Expert systems evolve constantly 14

Cost-Benefit Analysis Complicating Factors n Getting a handle on development costs – Consider (and

Cost-Benefit Analysis Complicating Factors n Getting a handle on development costs – Consider (and revise) system scope – Estimate time requirements n Evaluating benefits – – – Some intangible Hard to relate specifically to the ES Benefits result over time Not easy to assess quantity and quality Multiplicity of consequences hard to evaluate • (goodwill, inconvenience, waiting time and pain) n Key: identify appropriate benefits 15

n When to justify (very often!) – At the end of Phase II –

n When to justify (very often!) – At the end of Phase II – After the initial prototype is completed – Once the full prototype is in operation – Once field testing is completed (prior to deployment) – Periodically after the system is in operation (e. g. , every six or twelve months) n Reality checks – How to justify? 16

Consideration of Managerial Issues n n n n Selling the project Identifying a champion

Consideration of Managerial Issues n n n n Selling the project Identifying a champion Level of top management support End user involvement, support, and training Availability of financing Availability of other resources Legal and other potential constraints 17

Organizing Development Team n Team varies with the phases – Typical development team –

Organizing Development Team n Team varies with the phases – Typical development team – Expert – Knowledge engineer – IS person 18

Team May Also Include n n n Vendor(s) User(s) System integrator(s) Cooperation and communication

Team May Also Include n n n Vendor(s) User(s) System integrator(s) Cooperation and communication required!!! Possible functions and roles in an ES team 19

Important Players n Project champion n Project leader 20

Important Players n Project champion n Project leader 20

Phase II: Systems Analysis and Design n n Conceptual design and plan Development Strategy

Phase II: Systems Analysis and Design n n Conceptual design and plan Development Strategy Knowledge sources Computing resources 21

Conceptual Design n n n n General Idea of the System General capabilities of

Conceptual Design n n n n General Idea of the System General capabilities of the system Interfaces with other CBIS Areas of risk Required resources Anticipated cash flow Composition of the team Other information for detailed design later Determine the development strategy after design is complete 22

Development Strategy and Methodology n n n In-house development Outsourcing Blended approach 23

Development Strategy and Methodology n n n In-house development Outsourcing Blended approach 23

In-house Development n n n End-user computing Centralized computing End-user computing with centralized control

In-house Development n n n End-user computing Centralized computing End-user computing with centralized control High-technology islands Information centers 24

Outsourcing n n n Hire a consulting firm Become a test site Partner with

Outsourcing n n n Hire a consulting firm Become a test site Partner with a university Join an industry consortium Buy into an AI firm 25

Blended Approach Mix both n n In-house Outsourcing 26

Blended Approach Mix both n n In-house Outsourcing 26

Selecting an Expert n n n Experts Expertise is based on experience and can

Selecting an Expert n n n Experts Expertise is based on experience and can be expressed by heuristics Selection Issues – Who selects the expert(s)? – How to identify an expert – What to do if several experts are needed – How to motivate the expert to cooperate 27

Software Classification: Technology Levels Expert System Applications (Specific ES) Hybrid Systems Shells Support Tools,

Software Classification: Technology Levels Expert System Applications (Specific ES) Hybrid Systems Shells Support Tools, Facilities, and Construction Aids Programming Languages 28

Software Classification: Technology Levels n n n Specific expert systems Shells Support tools Hybrid

Software Classification: Technology Levels n n n Specific expert systems Shells Support tools Hybrid Systems (environments) Programming languages NEW – Object-oriented Programming (OOP) – Internet/Web/Intranet-based Tools 29

Building Expert Systems with Tools 1. The builder employs the tool's development engine to

Building Expert Systems with Tools 1. The builder employs the tool's development engine to load the knowledge base 2. The knowledge base is tested on sample problems using the inference engine 3. The process is repeated until the system is operational 4. The development engine is removed and the specific expert system is ready for its users (using a separate runtime (executable) component of the tool) 30

Shells and Environments n Expert systems components 1. Knowledge acquisition subsystems 2. Inference engine

Shells and Environments n Expert systems components 1. Knowledge acquisition subsystems 2. Inference engine 3. Explanation facility 4. Interface subsystem 5. Knowledge base management facility 6. Knowledge base n Shell: Components 1 -5 31

Shell Concept for Building Expert Systems Tip of the iceberg Knowledge base (rules) Consultation

Shell Concept for Building Expert Systems Tip of the iceberg Knowledge base (rules) Consultation manager Explanation program Knowledge base editor and debugger Knowledge base management facilities Shell Inference engine 32

Rule-Based Shells n n n n Exsys Instant. Tea Xpert. Rule KBS G 2

Rule-Based Shells n n n n Exsys Instant. Tea Xpert. Rule KBS G 2 Guru K-Vision CLIPS JESS 33

Domain-Specific Tools Designed to be used only in the development of a specific area

Domain-Specific Tools Designed to be used only in the development of a specific area n n Diagnostic systems Shells for configuration Shells for financial applications Shells for scheduling 34

Development Environments n n Support several different knowledge representations and inference methods Examples –

Development Environments n n Support several different knowledge representations and inference methods Examples – ART-IM – Level 5 Object – KAPPA PC 35

Software Selection n Complex problem – Frequent technology changes – Many criteria n First

Software Selection n Complex problem – Frequent technology changes – Many criteria n First check out: – “PC AI Buyer’s Guide” – “Expert Systems Resource Guide” in AI Expert – Newsgroup FAQs on ES Major Issues in Selecting ES Development Software 36

Shells vs. Languages n n How to select which Try a Multicriteria Decision Making

Shells vs. Languages n n How to select which Try a Multicriteria Decision Making Method 37

Hardware Support Software Choice Usually Depends on the Hardware n n n PCs Unix

Hardware Support Software Choice Usually Depends on the Hardware n n n PCs Unix workstations Web servers AI workstations Mainframes 38

Phase III: Rapid Prototyping and a Demonstration Prototype n Build a small prototype n

Phase III: Rapid Prototyping and a Demonstration Prototype n Build a small prototype n Test, improve, expand n Demonstrate and analyze feasibility n Complete design 39

Rapid Prototyping n Crucial to ES development Small-scale system Includes knowledge representation Small number

Rapid Prototyping n Crucial to ES development Small-scale system Includes knowledge representation Small number of rules For proof of concept n Rapid prototyping process n n 40

Phase IV: System Development n n n n n Develop the knowledge base Define

Phase IV: System Development n n n n n Develop the knowledge base Define the potential solutions Define the input facts Develop an outline Draw a decision tree Create a knowledge map (matrix) Create the knowledge base Test, evaluate, and improve (knowledge base) Plan for integration 41

Use a System Development Approach n Continue with prototyping (yes) n Use the structured

Use a System Development Approach n Continue with prototyping (yes) n Use the structured life cycle approach (rare) n Do both (rare) 42

Develop the Knowledge Base Acquire and Represent Knowledge Appropriately n n n Define potential

Develop the Knowledge Base Acquire and Represent Knowledge Appropriately n n n Define potential solutions Define input facts Develop outline Draw decision tree Map matrix Create knowledge base 43

Test, Validate and Verify, and Improve n Test and evaluate the prototype and improved

Test, Validate and Verify, and Improve n Test and evaluate the prototype and improved versions of the system – In the lab – In the field – Initially - evaluate in a simulated environment 44

n n n Modified Turing Test: Compare ES performance to an accepted criterion (human

n n n Modified Turing Test: Compare ES performance to an accepted criterion (human expert's decisions) Experimentation Iterative Process of evaluation: – Refine the ES in the field – Use new cases to expand the knowledge base n Validation - determine whether the right system was built • Does the system do what it was meant to do and at an acceptable level of accuracy? n Verification - confirms that the ES has been built correctly according to specifications 45

Phase V: Implementation n n n Acceptance by users Installation, demonstration, deployment Orientation, training

Phase V: Implementation n n n Acceptance by users Installation, demonstration, deployment Orientation, training Security Documentation Integration, field testing 46

ES Implementation Issues n n n n Acceptance by the user Installation approaches Demonstration

ES Implementation Issues n n n n Acceptance by the user Installation approaches Demonstration Mode of deployment Orientation and training Security Documentation Integration and field testing 47

Phase VI: Postimplementation n Operations n Expansion: maintenance and upgrades n Includes periodic evaluation

Phase VI: Postimplementation n Operations n Expansion: maintenance and upgrades n Includes periodic evaluation 48

Upgrading (Expansion) n n n The environment changes More complex situations arise Additional subsystems

Upgrading (Expansion) n n n The environment changes More complex situations arise Additional subsystems can be added (e. g. , LMS) 49

Evaluation (Periodically) n n Maintenance costs versus benefits Is the knowledge up-to-date? Is the

Evaluation (Periodically) n n Maintenance costs versus benefits Is the knowledge up-to-date? Is the system accessible to all users? Is user acceptance increasing? (feedback) 50

The Future of Expert Systems Development Processes Expect Advances In n n n Flexible

The Future of Expert Systems Development Processes Expect Advances In n n n Flexible toolkit capabilities, including inferencing hybrids Improved languages and development systems Better front ends to help the expert provide knowledge Improved GUIs via Windows-based environments Further use of intelligent agents in toolkits Better ways to handle multiple knowledge representations 51

n n n Use of intelligent agents to assist developers Use of blackboard architectures

n n n Use of intelligent agents to assist developers Use of blackboard architectures and intelligent agents in ES Advances in the object-oriented approach, for representing knowledge and ES programming Improved and customized CASE tools to manage ES development Increased hypermedia use and development (Web) Automated machine learning of databases and text 52