Presented By S.Yamuna AP/CSE

Slides:



Advertisements
Similar presentations
Inference without the Engine!. What is EZ-Xpert 3.0? EZ-Xpert is a Rapid Application Development (RAD) environment for creating fast and accurate rule-based.
Advertisements

Chapter 11 user support. Issues –different types of support at different times –implementation and presentation both important –all need careful design.
Software Development Languages and Environments. Programming languages High level languages are problem orientated contain many English words are easier.
1 Inferences with Uncertainty Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson Copyright 1998, Prentice Hall, Upper Saddle.
Chapter 11 Artificial Intelligence and Expert Systems.
Software: Systems and Application Software
Artificial Intelligence
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
Rules and Expert Systems
Part 2: Decision Support Systems
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
EXPERT SYSTEMS Part I.
Chapter 12: Intelligent Systems in Business
Building Knowledge-Driven DSS and Mining Data
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Chapter 14: Artificial Intelligence Invitation to Computer Science, C++ Version, Third Edition.
B. Ross Cosc 4f79 1 Commercial tools Size of system: –small systems 400 rules single user, PC based –larger systems narrow, problem-type specific or hybrid.
13: Inference Techniques
 Knowledge Acquisition  Machine Learning. The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
11 C H A P T E R Artificial Intelligence and Expert Systems.
School of Computer Science and Technology, Tianjin University
1 CHAPTER 13 Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson 6th ed, Copyright 2001, Prentice Hall, Upper Saddle River,
CSE (c) S. Tanimoto, 2002 Expert Systems 1 Expert Systems Outline: Various Objectives in Creating Expert Systems Integration of AI Techniques into.
CSC 554: Knowledge-Based Systems Part-1 By Dr. Syed Noman Hasany Assistant Professor, CoC Qassim University.
Jess: A Rule-Based Programming Environment Reporter: Yu Lun Kuo Date: April 10, 2006 Expert System.
 Dr. Syed Noman Hasany 1.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing.
1 (CHAPTER 5 Con’t) Modeling and Analysis. 2 Heuristic Programming Cuts the search Gets satisfactory solutions more quickly and less expensively Finds.
Overview Of Expert System Tools Expert System Tools : are all designed to support prototyping. Prototype : is a working model that is functionally equivalent.
Architecture of Decision Support System
ES component and structure Dr. Ahmed Elfaig The production system or rule-based system has three main component and subcomponents shown in Figure 1. 1.Knowledge.
Chapter 4 Decision Support System & Artificial Intelligence.
 Programming - the process of creating computer programs.
EXPERT SYSTEMS or KNOWLEDGE BASED SYSTEMS a. When we wish to encode a rich source of knowledge within the program. and b. The scope of systems.
Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools.
Artificial Intelligence
ITEC 1010 Information and Organizations Chapter V Expert Systems.
Primary Decision Support Technologies Management Support Systems (MSS)
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
1 CHAPTER 10 Knowledge-Based Decision Support: Artificial Intelligence and Expert Systems Decision Support Systems and Intelligent Systems, Efraim Turban.
Decision Support and Business Intelligence Systems (9 th Ed., Prentice Hall) Chapter 12: Artificial Intelligence and Expert Systems.
Tutoring & Help Systems Deepthi Bollu for CSE495 10/31/2003.
Knowledge Representation. A knowledge base can be organised in several different configurations to facilitate fast inferencing Knowledge Representation.
Chapter Goals Describe the application development process and the role of methodologies, models, and tools Compare and contrast programming language generations.
Intelligent Systems Development
Definition CASE tools are software systems that are intended to provide automated support for routine activities in the software process such as editing.
CHAPTER 1 Introduction BIC 3337 EXPERT SYSTEM.
CSCI-235 Micro-Computer Applications
System Design Ashima Wadhwa.
Computer Aided Software Engineering (CASE)
Modern Systems Analysis and Design Third Edition
Introduction to Expert Systems Bai Xiao
Architecture Components
Introduction to Operating System (OS)
CSCI/CMPE 3334 Systems Programming
Unit# 8: Introduction to Computer Programming
MANAGING KNOWLEDGE FOR THE DIGITAL FIRM
Tools of Software Development
Intro to Expert Systems Paula Matuszek CSC 8750, Fall, 2004
Artificial Intelligence introduction(2)
Chapter 1 Introduction(1.1)
Analysis models and design models
Decision Support Systems: An Overview
Chapter 11 user support.
Principles of Programming Languages
강의 내용 및 방법 접근방법 리포트 시험 Lambda Calculus, Proof of Correctness
전문가 시스템(Expert Systems)
Modern Systems Analysis and Design Third Edition
This presentation was developed by Dr. Steven C
Technology of Data Glove
Presentation transcript:

Presented By S.Yamuna AP/CSE SNS College of Engineering Department of Computer Science and Engineering Expert System Development Tools Presented By S.Yamuna AP/CSE AI

Introduction During the last decades ES evolved from a laboratory curiosity into a valuable tool for assisting human decision making. AI

Software Classification: Technology Levels Specific expert systems Shells Support tools Hybrid Systems (environments) Programming languages NEW Object-oriented Programming (OOP) Internet/Web/Intranet-based Tools Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson 6th ed, Copyright 2001, Prentice Hall, Upper Saddle River, NJ AI

Software Classification: Technology Levels (Figure 14.2) Expert System Applications (Specific ES) Shells Hybrid Systems Support Tools, Facilities, and Construction Aids Programming Languages Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson 6th ed, Copyright 2001, Prentice Hall, Upper Saddle River, NJ AI

Expert System Development Tools Language: Development time, convenience, maintainability, efficiency and speed determine what language software is written in.   Tool: A language plus utility programs to facilitate development (debugging, file management, code generators, text and graphics editors, etc.) aids for knowledge acquisition, knowledge validation and verification and construction of interfaces to other software packages AI

Expert System Development Tools Hybrid Systems: consist of several support tools and programming languages. Shell: A special purpose tool designed for certain types of application in which the user must only supply the knowledge base (EMYCIN). AI

Language AI

Language AI

Language Using a language provides flexibility. Once you know what features are needed for the system, you can generate the required code. On the down-side, you need to develop the entire infrastructure, including the traditional subsystems such as the inference engine and explanation facility (OPS provides many of the needed facilities). You will also need, obviously, proficiency in the chosen language AI

Preferred Languages in Developing ES: LISP -  list processing language (MIT). John McCarthy, 1950s In the U.S., LISP was the language of choice. Powerful in its symbolic processing capability, but difficult to master. The many dialects of LISP were the source of migraines for researchers who looked to exchange code. Fortunately, this situation improved in mid-1970s with the introduction of a LISP standard called Common LISP -- the aspirin of choice for LISP programmers. AI

Preferred Languages in Developing ES PROLOG - logical programming language. Marseille, France, 1970. Researchers in the U.K. and Japan adopted PROLOG for developing intelligent programs. It was also the language chosen in Japan for the Fifth Generation effort. Based in a formal well-understood logic, PROLOG offers a language to develop exact deductive programs. Like LISP, PROLOG required a disciplined student to master it, thus limiting the number of competent programmers. AI

Preferred Languages in Developing ES OPS, Official Production System, has been a very popular choice of expert system developers. OPS is a product of the Instructable Production System Project at CMU back in 1975. It was used by John McDermott to create one of the classic expert systems called R1 (later called XCON), to help DEC configure VAX computer systems. Over the years various versions of OPS emerged, the latest being OPS/R2, which supports backward chaining and objects with inheritance. AI

Preferred Languages in Developing ES Given the complexities of these two languages, AI research was confined principally to the academic world during the 1960s and 1970s. Also, since these systems were built from scratch, development time was large AI

Expert System Shells MYCIN (Shortliffe, 1976) was developed at Stanford University MYCIN took approximately 20 person-years to complete. The system was written in INTERLISP, a dialect of the LISP programming language. AI

Expert System Shells During the work on MYCIN, a large amount of LISP code was written for different modules: Knowledge base Inference engine Working memory Explanation facility End-user interface Toward the end of the project, the MYCIN developers realized that because the knowledge on infectious diseases was separate from its control, then the code written for the other modules should be portable to other applications. AI

Expert System Shells By removing the knowledge about infectious blood diseases, a system known as EMYCIN (van Melle, 1979) was formed. EMYCIN is a domain-independent version of MYCIN that contains all of MYCIN except its knowledge about infectious blood disease. EMYCIN facilitated the development of other expert systems, such as PUFF (Aikens et al., 1983), an application for the diagnosis of pulmonary problems. PUFF was produced in about 5 person-years. AI

EXPERT SYSTEM SHELL ARCHITECTURE Inference Engine Working memory Explanation Facility Knowledge Base User Interface Developer’s interface User Knowledge Engineer System interface External Programs Knowledge base contains higly specialized knowledge on the problem area as provided by the expert. Includes problem facts, rules, concepts and relations. Inference engine is the knowledge processor, modeled after the expert’s reasoning, that works with available information on a given problem, coupled with the knowledge stored in the knowledge base, to draw conclusions or recommendations. Working memory contains the facts entered by the user or inferred by the expert system during a consultation. User interface is the vehicle through which the user views and interacts with the system. Developer interface is the vehicle through which the knowledge engineer develops the system. Explanation facility provides explanations on the reasoning of the system. System interface links the expert system to external programs such as databases, spreadsheets, algorithms, etc., that work in a support role for the system. AI

Shells and Environments Expert systems components 1. Knowledge acquisition subsystems 2. Inference engine 3. Explanation facility 4. Interface subsystem 5. Knowledge base management facility 6. Knowledge base Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson 6th ed, Copyright 2001, Prentice Hall, Upper Saddle River, NJ AI

Shell Concept for Building Expert Systems (Figure 14.3) Tip of the iceberg Knowledge base (rules) Knowledge base editor and debugger Consultation manager Shell Explanation program Knowledge base management facilities Inference engine Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson 6th ed, Copyright 2001, Prentice Hall, Upper Saddle River, NJ AI

Classification of Tools Rule Based Tools Rule-based tools use if-then rules to represent knowledge. These rules are processed through a backward or forward chaining process, or a combination of the two (called bidirectional inference). Some tools permit the coding of inexact rules and inexact inferencing, possibly using confidence factors and processing methods found in the certainty theory, AI

Classification of Tools Rule-Based Shells Exsys InstantTea XpertRule KBS G2 Guru K-Vision CLIPS JESS ESTA Decision Support Systems and Intelligent Systems, Efraim Turban and Jay E. Aronson 6th ed, Copyright 2001, Prentice Hall, Upper Saddle River, NJ AI

Classification of Tools Frame-based Tools Today's frame-based tools share many common points with object-oriented programming. The advantage that these tools have over the base language approach is that they enable the coding of knowledge in a natural symbolic language style versus the more rigid syntax of an object-oriented programming language. Though rule-based tools dominated the 1980s, frame-based ones are dramatically picking up steam during the 1990s AI

Classification of Tools Fuzzy Logic Tools Fuzzy logic expert system tools represent knowledge in fuzzy rules and fuzzy sets. They include statements that contain fuzzy variables with corresponding fuzzy values that are represented mathematically in a fuzzy set. It is most widely used in the area of control systems. Common sense control rules are usually easy to generate. AI

Classification of Tools Induction Tools Induction tools generate rules from examples. They are products of AI research in machine learning. A developer enters a large set of examples from the domain under consideration, where each example contains values for a set of domain features, and a single result characterizing the example. The induction tool then uses an algorithm, such as ID3, to generate a rule or a decision tree. In operation, a user enters information about a current problem and the system then determines the probable result. ID3 (Iterative Dichotomiser 3) is an algorithm used to generate a decision tree invented by Ross Quinlan The ID3 algorithm can be summarized as follows: Take all unused attributes and count their entropy concerning test samples Choose attribute for which entropy is minimum Make node containing that attribute AI

Classification of Tools Case Based reasoning Tools (CBR) In practice, they serve a role similar to induction tools in that they use past experiences (cases) to solve current problems. Given an input specification of a problem, the system will search its case memory for an existing case that matches the input specification. It may find an exact match and immediately go to a solution. Even if an exact match can't be found, the system applies a matching algorithm in order to find a case that is most similar to the input specification. AI

Domain Specific Tools Domain Description Control Governing system behavior to meet specifications Design Configuring objects under constraint Diagnosis Inferring system malfunctions from observables Instruction Diagnosing, debugging, and repairing student behavior Interpretation Inferring situation description from data Monitoring Comparing observations to expectations AI

Domain Specific Tools Domain Description Planning Selecting and sequencing activities according to a set of constraints to achieve a goal Prediction Inferring likely consequences of given situations Prescription Recommending solution to system malfunction Selection Identifying best choice from a list of possibilities Simulation Modeling the interaction between system components AI

Choosing a Tool KNOWLEDGE BASE Knowledge representation This facility defines how you can represent the knowledge (e.g., rules, frames, decision trees). Inexact reasoning. Procedural processing capability Functions might be needed, or in a frame-based system, methods required to support message-passing AI

Choosing a Tool INFERENCE AND CONTROL PROCESS Chaining. When selecting a chaining method, consider the problem-solving activity to be programmed. For example, backward chaining is a good choice for diagnostic and prescription problems, while forward chaining applies well to design and planning ones. Agendas. Some shells permit you to define an agenda of activities for the expert system to perform. This agenda might be a series of goals that a backward chaining system is instructed to pursue in a predefined sequence, or, the shell may permit the agenda to be executed in an intelligent fashion, where certain tasks are performed conditionally based on the system's findings. AI

Choosing a Tool INFERENCE AND CONTROL PROCESS Meta-rules. It is usually used to direct the processing of the other knowledge into a new area on the basis of discovered information. Nonmonotonic reasoning. This type of reasoning allows for changes in the reasoning for changes in a given fact. It not only permits the retraction of the given fact, it also causes the retraction of all other facts that were dependent on the changed fact. This requires that the shell has an additional record-keeping facility called a truth maintenance system (Dolye, 1979). Non-monotonic reasoning is valuable in planning, design, or scheduling applications. AI

Choosing a Tool EXPLANATION FACILITY An explanation facility provides a transparency to the expert system's reasoning. This is of particular importance in interactive systems, where the user might want to know why a given question is being asked, or how the provided result was obtained. AI

Choosing a Tool DEVELOPER INTERFACE Knowledge base creation Debugging utilities. rule-tracing. incremental compilation On-line help. AI

Choosing a Tool USER INTERFACE Display type. The early expert systems all relied on a text-based display. Questions were posed to the user in text and answers were provided via keyboard typing or by selecting from a menu. Today, most shells provide a graphical-user-interface (GUI) Information entry. There is a wide range of methods by which the user can enter information into the system. It may be as simple as typing an answer to some question, or as extensive as filling out an entire form. AI

Choosing a Tool USER INTERFACE Interface control. The user must always feel in control of the session. This includes an easy way of starting and ending a session, and readily accessible ways of activating needed control during the session. AI

Choosing a Tool SYSTEM INTERFACE Most shells offer an open architecture that permits the developed system to share information with external software such as databases, spreadsheets, and procedural programs like C and Fortran. Being able to embed an expert system within an established software environment greatly enhances its applicability and improves its portability between applications. AI

Choosing a Tool HARDWARE The platform on which the expert system will be developed and, if different, where it will be run, is a major consideration when selecting a shell. Overall, the platforms can be divided into four general categories: personal computers, workstations, Web servers, and minicomputers or mainframe computers. The majority of expert systems have been developed on a PC. AI

Choosing a Tool SUPPORT Documentation. Example programs. Training. Help-desk services AI

Choosing a Tool COST Licensing costs. License agreement prohibits the copying of the software and requires that it be used on only one computer. In the event the shell will need to be used on several computers at the same site, purchasing a site license may be the way to go. Distribution costs. When the shell is used to develop an expert system to be used on other computers, possible distribution costs should also be considered. AI

Support Tools Tools are available for building the various parts of a complex system Knowledge acquisition ACQUIRE (www.aiinc.ca) assists in knowledge acquisition EZ-Xpert (www.ez.xpert.com) Once the knowledge is encoded in it, it is capable of generating 26 different format expert system knowledge base files, including 8 language shells (in 2000) Automated knowledge acquisition tools: CBR: Easy Reasoner (Halley Enterprise Inc.) uses associative memory to learn in the process mining data into decision trees. Knowledge verification System interface constructors ActiveAgentX fully supports Microsoft’s component object module (COM) and integrates into Windows application software AI

Hybrid Systems (environments) They enable complex multiple-knowledge representation systems to be built faster than they would if only the programming languages were used. Toolkits – from which the programmer selects the appropriate tools for appropriate tasks ART (Brightware inc.) contains modules from which an inference engine can be built. A module for handling measures of uncertainty A module for handling probabilities (Bayesian procedure) Common KADS Workbench TestBench CommonKADS is the leading methodology to support structured knowledge engineering. It has been gradually developed and has been validated by many companies and universities in the context of the European ESPRIT IT Programme. It now is the European de facto standard for knowledge analysis and knowledge-intensive system development, AI

THANK YOU AI