Date post: | 29-Dec-2015 |
Category: |
Documents |
Upload: | daisy-sherman |
View: | 222 times |
Download: | 1 times |
Abdul Rahim Ahmad
MITM 613Intelligent System
Chapter 1: Introduction To Intelligent Systems
Contents
Intelligent systems
Knowledge-based systems
The knowledge base
Deduction, abduction, and induction
The inference engine
Declarative and procedural programming
Expert systems
Knowledge acquisition
Search
Computational intelligence
Integration with other software
Abdul Rahim Ahmad
2
Intelligent System
Intelligence – A system’s comparative level of performance in reaching its objectives i.e: having experiences where the system learned which actions best let it reach its objectives. (Likewise: a person is not intelligent in all areas of knowledge, only in areas where they had experiences).
System - Part of the universe, with a limited extension in space and time. Outside the system, is the environment.
Intelligent System - A system that learns how to act so that it can reach its objectives.
Abdul Rahim Ahmad
3
Definition of Intelligent System
A system that learns during its existence. (In other words, it senses its environment and learns, for each situation, which action permits it to reach its objectives.) and it continually acts, mentally and externally, and by acting reaches its objectives more often than pure chance indicates (normally much oftener). It consumes energy and uses it for its internal processes, and in order to act.
Abdul Rahim Ahmad
4
Intelligent System
A broad term, covering a range of computing techniques within artificial intelligence.
Includes symbolic approaches in which knowledge is
explicitly expressed in words and symbols (explicit knowledge-based Models)
numerical approaches such as neural networks, genetic algorithms, and fuzzy logic (implicit numerical or computational Models).
Can also be a hybrid of different approaches.
Abdul Rahim Ahmad
5
Focus of this Course
Discuss issues encountered in the development of applied systems.
Describe a wide range of intelligent systems techniques with realistic problems in engineering and science.
Will look at: Techniques of intelligent systems.
A few categories of applications and the design and implementation issues.
Abdul Rahim Ahmad
6
Knowledge-based Systems
A system can be built in a conventional manner Where domain knowledge is intimately
intertwined with software for controlling the application of that knowledge.
But, in a knowledge-based system, the knowledge module and the the control module are explicitly separated. The knowledge module is called the knowledge
base
The control module is called the inference engine (IR) IR may also be a knowledge-based system containing
metaknowledge (how to apply the domain knowledge).
Abdul Rahim Ahmad
7
Knowledge-based Systems
Abdul Rahim Ahmad
8
Conventional vs Knowledge-based
Separating knowledge from control allows easier addition of new knowledge (during program development or from experience)
To change a program behavior; In conventional approach, program control
structures needs to be changed resulting in changing some other aspect of the program’s behavior.
In knowledge-based approach, knowledge is represented explicitly in the knowledge base, not implicitly within the structure of a programAbdul
Rahim Ahmad
9
Knowledge-based Systems
Knowledge can be altered with ease.
The inference engine uses the knowledge base to solve a problem similar to using a conventional program a data file.
Abdul Rahim Ahmad
10
The knowledge base
Contains rules and facts.
Facts may include Sequences
Structured entities
Attributes of entities
Relationships between entities
Representation of rules and facts vary from system to system
Abdul Rahim Ahmad
11
Example - a payroll system
Consider the facts :
In conventional program The fact and the rule are “hard-wired,” so that
they become an intrinsic part of the program.
In knowledge-based system The rule and the fact are represented explicitly
and can be changed at will.Abdul Rahim Ahmad
12
/* Fact 1.1 */ Joe Bloggs works for ACME/* Rule 1.1 */ IF ?x works for ACME THEN ?x earns a large salary
Rules and Facts
Rules can be uncertain.
Uncertainty can arise from three distinct sources uncertain evidence
uncertain link between evidence and conclusion
vague rule
Facts can be Static (facts that change sufficiently
infrequently)
Transient (apply at a specific instance only while the system is running)
Default (to be used in the absence of transient fact)
Abdul Rahim Ahmad
13
Examples
Facts about my car
Fact can be attribute (properties of objects or classes)
relationship
Abdul Rahim Ahmad
14
Attributes and relationships
Can be represented as a network (associative or semantic network)
Here, attributes = relationships.Abdul Rahim Ahmad
15
Facts
Facts are made available to the knowledge-based system statically or in transient. Both are given facts.
Derived fact is generated fact: One or more given facts may satisfy the condition of a
rule generating derived fact.
The derived fact may satisfy, or partially satisfy, another rule, such as:
Abdul Rahim Ahmad
16
/* Fact 1.1 */ Joe Bloggs works for ACME/* Rule 1.1 */ IF ?x works for ACME THEN ?x earns a large salaryApplying Rule 1.1 to Fact 1.1, we can derive:/* (Derived) Fact 1.2 */ Joe Bloggs earns a large salary
/* Derived Rule 1.2 */IF ?x earns a large salary OR ?x has job satisfaction THEN ?x is professionally content
Inference Network
The derived fact may satisfy, or partially satisfy, another rule , such as:
Rules 1.1 and 1.2 are interdependent, since the conclusion of one can satisfy the condition of the other.
The interdependencies amongst the rules define the inference network
Abdul Rahim Ahmad
17
/* Rule 1.1 */ IF ?x works for ACME THEN ?x earns a large salary/* Derived Rule 1.2 */IF ?x earns a large salary OR ?x has job satisfaction THEN ?x is professionally content
Inference Network
The interdependencies amongst the rules define the inference network
Abdul Rahim Ahmad
18
/* Rule 1.1 */ IF ?x works for ACME THEN ?x earns a large salary/* Derived Rule 1.2 */IF ?x earns a large salary OR ?x has job satisfaction THEN ?x is professionally content
Cause and Effect
Inference network are used to link cause and effect.
Using the inference network we can make: Deduction.
Abduction.
Induction
Abdul Rahim Ahmad
19
IF <cause> THEN <effect>
if Joe Bloggs works for ACME and is in a stable relationship (the causes) then he is happy (the effect).
Reasoning in the reverse direction, i.e., we wish to ascertain a cause, given an effect.If Joe Bloggs is happy, we can infer by abduction that Joe Bloggs enjoys domestic bliss and professional contentment.Inferring a rule from a set of example cases of cause and effect
Inference Network
The inference network represents a closed world Each node represents a possible state of some
aspect of the world
A model of the current overall state of the world is maintained. Can determine the extent of the relationships
between the nodes.
Abdul Rahim Ahmad
20
Inference Engines
Two types of inference engines forward-chaining (data-driven )
backward-chaining (goal-driven)
Abdul Rahim Ahmad
21
A knowledge based system working in data-driven mode takes the available information (the “given” facts) and generates as many derived facts as it can.
For tightly focused solution. It is also a lazy kind of inference. It does no work until absolutely necessary, in distinction to forward chaining, where the system eagerly awaits new facts and tries applying conditions as soon as they arrive.
Declarative Programming
In knowledge-based system knowledge is separated from reasoning.
programmer expresses information about the problem to be solved. Often this information is declarative, i.e., the
programmer states some facts, rules, or relationships without having to be concerned with the detail of how and when that information is applied.
Abdul Rahim Ahmad
22
Declarative Programming Examples of declarative programming:
Each is a part of a knowledge base.
Inference engine is procedural — obeying a set of sequential commands (extract and use information from the knowledge base).
The how, when, and if the knowledge should be used are implicit in the inference engine. Abdul
Rahim Ahmad
23
/* Rule 1.3 */IF pressure is above threshold THEN close valve/* Fact 1.3 */valve A is shut /* a simple fact *//* Fact 1.4 */valve B is connected to tank 3 /* a relation */
Procedural Programming
C is a procedural language - contains explicit step-by-step instructions telling the computer to perform actions:
Abdul Rahim Ahmad
24
/* A program in C to read 10 integers from a file and *//* print them out */#include <stdio.h>FILE *openfile;main(){ int j, mynumber; openfile = fopen("myfile.dat", "r"); if (openfile == NULL) printf("error opening file"); else { for (j=1; j<=10; j=j+1) { fscanf(openfile,"%d",&mynumber); printf("Number %d is %d\n", j, mynumber); } fclose(openfile); }}
Expert System
A knowledge-based system
Mirror a human consultant - offers advice, suggestions, or recommendations.
Capable of justifying its line of inquiry and explaining its reasoning in a conclusion.
Abdul Rahim Ahmad
25
Knowledge acquisition
3 approaches to acquire knowledge for a particular domain: Teased out of a domain expert by someone
else.
Build by a domain expert him/her self.
Knowledge learned automatically from examples.
Abdul Rahim Ahmad
26
Search
Most AI applications involve searching through the possible solutions (search space) to find one or more that are optimal or satisfactory.
In knowledge-based system, inference engine search the rules and facts to apply.
Search can be : exhaustive search or systematic search (depth first and breadth-first) using search tree.
Abdul Rahim Ahmad
27
Search Tree
Abdul Rahim Ahmad
28
Search Tree
Depth-first Search Breadth-first Search
Heuristic Search
Search can be improved by pruning – using heuristic search.
Ensure that the most likely alternatives are tested before less likely ones.
Abdul Rahim Ahmad
29
Computational intelligence
Knowledge-based system used symbols to explicitly build knowledge that form rules, facts, relations, or other forms of knowledge representation.
Computational intelligence (CI) or soft computing method represents knowledge by numbers which are adjusted as the system improves its accuracy (knowledge is not explicitly stated).
Abdul Rahim Ahmad
30
Examples of Computational intelligence
Neural networks.
Genetic algorithms or, more generally, evolutionary algorithms.
Probabilistic methods such as Bayesian updating and certainty factors.
Fuzzy logic.
Combinations of these techniques with each other and with KBSs.
Abdul Rahim Ahmad
31
Categories of Intelligent Systems
Abdul Rahim Ahmad
32
Computational Intelligence Techniques
Abdul Rahim Ahmad
33
END
Abdul Rahim Ahmad
34