Presentation is loading. Please wait.

Presentation is loading. Please wait.

Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools.

Similar presentations


Presentation on theme: "Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools."— Presentation transcript:

1 Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools

2 Chapter Ten: AI Tools Abdul Rahim Ahmad 2 10.1 A range of intelligent systems tools 10.2 Expert system shells 10.3 Toolkits and libraries 10.4 Artificial intelligence languages 10.4.1 Lists 10.4.2 Other data types 10.4.3 Programming environments 10.5 Lisp 10.5.1 Background 10.5.2 Lisp functions 10.5.3 A worked example 10.6 Prolog 10.6.1 Background 10.6.2 A worked example 10.6.3 Backtracking in Prolog 10.7 Comparison of AI languages

3 Intelligent System Tools Tools to assist in constructing intelligent systems can be divided into:  Stand-alone packages, e.g., expert system shells and neural network packages;  KBS toolkits, e.g., Goldworks, Kappa, and Flex;  libraries, e.g., neural network libraries for MatLab and C++;  AI programming languages for processing words, symbols, and relations, e.g., Lisp and Prolog;  Object-oriented programming languages, e.g., Smalltalk, C++, CLOS, and Java;  Conventional programming languages, e.g., C, Pascal, and Fortran. Abdul Rahim Ahmad 3

4 Expert System Shell  An expert system without the knowledge base.  Consists of :  inference engine  user interface for programming  editor for creating rules  debugging tools.  user interface for running the system.  useful for building prototype expert systems but inflexible facilities for knowledge representation and inference. Abdul Rahim Ahmad 4

5 Toolkits  Provide knowledge representation facilities  Rules  objects or frames  uncertainty handling.  Use underlying programming language.  Need more processing power and memory  Based on the AI languages.  Goldworks is based on Lisp  Flex are based Prolog.  Kappa based on the C or C++ languages. Abdul Rahim Ahmad 5

6 Libraries  Similar advantages to toolkits.  Provide specific functionality within a programming environment.  Many KBS and computational intelligence libraries available, for C++, MatLab and Java. Abdul Rahim Ahmad 6

7 Artificial intelligence languages  Two main AI languages  Lisp  Prolog.  Both can manipulate symbolic data (characters and words), numerical data and lists. Abdul Rahim Ahmad 7

8 Lists  Data structures that allow words, numbers, and symbols to be combined in a wide variety of ways.  Useful for symbol manipulation  A feature of Lisp and Prolog.  Example of Lisp or Prolog, respectively, as follows: Abdul Rahim Ahmad 8 LISP (close_valve (exceeds pressure 10 mpa)) PROLOG [if, pressure, exceeds, 10, MPa, then, close, valve]

9 C++ vs LISP vs PROLOG Abdul Rahim Ahmad 9 LISP (close_valve (exceeds pressure 10 mpa)) PROLOG [if, pressure, exceeds, 10, MPa, then, close, valve] To represent a simple fact such as: pressure in valve #2 is 12.8 MPa C++

10 Comparison of AI Languages PROLOG  Prolog code is the most compact and elegant solution to the problem of choosing materials which meet a specification  Because Prolog is good at tasks that involve pattern matching and retrieval of data.  Many constraints on the programmer, particularly in committing him or her to one particular search strategy.  Prolog doesn’t need a structure for iteration, e.g., FOR x FROM 1 TO 10, as recursion can be used to achieve the same effect.. Abdul Rahim Ahmad 10 LISP  Lisp has a completely different structure from Prolog  Procedural (or functional) language.  Good in manipulating symbols and lists of symbols.  Allows practically any reasoning strategy to be implemented. In fact, it is so flexible that it can be reconfigured by the programmer.


Download ppt "Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools."

Similar presentations


Ads by Google