- Artificial Intelligence (AI) Tutorial
- Application of AI
- History of Artificial Intelligence
- Types of AI
- Types of AI Agents
- Agents in Artificial Intelligence
- Turing Test in AI
- Search Algorithms in Artificial Intelligence
- Uninformed Search Algorithms
- Informed Search Algorithms
- Hill Climbing Algorithm in Artificial Intelligence
- Means-Ends Analysis in Artificial Intelligence
- Adversarial Search
- Mini-Max Algorithm in Artificial Intelligence
- Alpha-Beta Pruning
- Knowledge-Based Agent in Artificial intelligence
- What is knowledge representation?
- Techniques of knowledge representation
- Propositional logic in Artificial intelligence
- Rules of Inference in Artificial intelligence
- The Wumpus World in Artificial intelligence
- Knowledge-base for Wumpus world
- First-Order Logic in Artificial intelligence
There are mainly four ways of knowledge representation which are given as follows:
- Logical Representation
- Semantic Network Representation
- Frame Representation
- Production Rules
1. Logical Representation
Logical representation is a language with some concrete rules which deals with propositions and has no ambiguity in representation. Logical representation means drawing a conclusion based on various conditions. This representation lays down some important communication rules. It consists of precisely defined syntax and semantics which supports the sound inference. Each sentence can be translated into logics using syntax and semantics.
- Syntaxes are the rules which decide how we can construct legal sentences in the logic.
- It determines which symbol we can use in knowledge representation.
- How to write those symbols.
- Semantics are the rules by which we can interpret the sentence in the logic.
- Semantic also involves assigning a meaning to each sentence.
Logical representation can be categorised into mainly two logics:
- Propositional Logics
- Predicate logics
Note: We will discuss Prepositional Logics and Predicate logics in later chapters.
Advantages of logical representation:
- Logical representation enables us to do logical reasoning.
- Logical representation is the basis for the programming languages.
Disadvantages of logical Representation:
- Logical representations have some restrictions and are challenging to work with.
- Logical representation technique may not be very natural, and inference may not be so efficient.
Note: Do not be confused with logical representation and logical reasoning as logical representation is a representation language and reasoning is a process of thinking logically.
2. Semantic Network Representation
Semantic networks are alternative of predicate logic for knowledge representation. In Semantic networks, we can represent our knowledge in the form of graphical networks. This network consists of nodes representing objects and arcs which describe the relationship between those objects. Semantic networks can categorize the object in different forms and can also link those objects. Semantic networks are easy to understand and can be easily extended.
This representation consist of mainly two types of relations:
- IS-A relation (Inheritance)
Example: Following are some statements which we need to represent in the form of nodes and arcs.
- Jerry is a cat.
- Jerry is a mammal
- Jerry is owned by Priya.
- Jerry is brown colored.
- All Mammals are animal.
In the above diagram, we have represented the different type of knowledge in the form of nodes and arcs. Each object is connected with another object by some relation.
Drawbacks in Semantic representation:
- Semantic networks take more computational time at runtime as we need to traverse the complete network tree to answer some questions. It might be possible in the worst case scenario that after traversing the entire tree, we find that the solution does not exist in this network.
- Semantic networks try to model human-like memory (Which has 1015 neurons and links) to store the information, but in practice, it is not possible to build such a vast semantic network.
- These types of representations are inadequate as they do not have any equivalent quantifier, e.g., for all, for some, none, etc.
- Semantic networks do not have any standard definition for the link names.
- These networks are not intelligent and depend on the creator of the system.
Advantages of Semantic network:
- Semantic networks are a natural representation of knowledge.
- Semantic networks convey meaning in a transparent manner.
- These networks are simple and easily understandable.
3. Frame Representation
A frame is a record like structure which consists of a collection of attributes and its values to describe an entity in the world. Frames are the AI data structure which divides knowledge into substructures by representing stereotypes situations. It consists of a collection of slots and slot values. These slots may be of any type and sizes. Slots have names and values which are called facets.
Facets: The various aspects of a slot is known as Facets. Facets are features of frames which enable us to put constraints on the frames. Example: IF-NEEDED facts are called when data of any particular slot is needed. A frame may consist of any number of slots, and a slot may include any number of facets and facets may have any number of values. A frame is also known as slot-filter knowledge representation in artificial intelligence.
Frames are derived from semantic networks and later evolved into our modern-day classes and objects. A single frame is not much useful. Frames system consist of a collection of frames which are connected. In the frame, knowledge about an object or event can be stored together in the knowledge base. The frame is a type of technology which is widely used in various applications including Natural language processing and machine visions.
Let’s take an example of a frame for a book
Let’s suppose we are taking an entity, Peter. Peter is an engineer as a profession, and his age is 25, he lives in city London, and the country is England. So following is the frame representation for this:
Advantages of frame representation:
- The frame knowledge representation makes the programming easier by grouping the related data.
- The frame representation is comparably flexible and used by many applications in AI.
- It is very easy to add slots for new attribute and relations.
- It is easy to include default data and to search for missing values.
- Frame representation is easy to understand and visualize.
Disadvantages of frame representation:
- In frame system inference mechanism is not be easily processed.
- Inference mechanism cannot be smoothly proceeded by frame representation.
- Frame representation has a much generalized approach.
4. Production Rules
Production rules system consist of (condition, action) pairs which mean, “If condition then action”. It has mainly three parts:
- The set of production rules
- Working Memory
- The recognize-act-cycle
In production rules agent checks for the condition and if the condition exists then production rule fires and corresponding action is carried out. The condition part of the rule determines which rule may be applied to a problem. And the action part carries out the associated problem-solving steps. This complete process is called a recognize-act cycle.
The working memory contains the description of the current state of problems-solving and rule can write knowledge to the working memory. This knowledge match and may fire other rules.
If there is a new situation (state) generates, then multiple production rules will be fired together, this is called conflict set. In this situation, the agent needs to select a rule from these sets, and it is called a conflict resolution.
- IF (at bus stop AND bus arrives) THEN action (get into the bus)
- IF (on the bus AND paid AND empty seat) THEN action (sit down).
- IF (on bus AND unpaid) THEN action (pay charges).
- IF (bus arrives at destination) THEN action (get down from the bus).
Advantages of Production rule:
- The production rules are expressed in natural language.
- The production rules are highly modular, so we can easily remove, add or modify an individual rule.
Disadvantages of Production rule:
- Production rule system does not exhibit any learning capabilities, as it does not store the result of the problem for the future uses.
- During the execution of the program, many rules may be active hence rule-based production systems are inefficient.