Unit No 1 (Fundamental of AI)
Unit No 1 (Fundamental of AI)
Unit No-:01
Foundations of AI
In today's world, technology is growing very fast, and we are getting in touch with different
new technologies day by day.
Here, one of the booming technologies of computer science is Artificial Intelligence which is
ready to create a new revolution in the world by making intelligent machines.The Artificial
Intelligence is now all around us. It is currently working with a variety of subfields, ranging
from general to specific, such as self-driving cars, playing chess, proving theorems, playing
music, Painting, etc.
AI is one of the fascinating and universal fields of Computer science which has a great scope
in future. AI holds a tendency to cause a machine to work as a human.
Artificial Intelligence is composed of two words Artificial and Intelligence, where Artificial
defines "man-made," and intelligence defines "thinking power", hence AI means "a man-
made thinking power."
"It is a branch of computer science by which we can create intelligent machines which can
behave like a human, think like humans, and able to make decisions."
Artificial Intelligence exists when a machine can have human based skills such as learning,
reasoning, and solving problems
With Artificial Intelligence you do not need to preprogram a machine to do some work,
despite that you can create a machine with programmed algorithms which can work with
own intelligence, and that is the awesomeness of AI.
It is believed that AI is not a new technology, and some people says that as per Greek myth,
there were Mechanical men in early days which can work and behave like humans.
Why Artificial Intelligence?
Before Learning about Artificial Intelligence, we should know that what is the importance of
AI and why should we learn it. Following are some main reasons to learn about AI:
o With the help of AI, you can create such software or devices which can solve real-
world problems very easily and with accuracy such as health issues, marketing, traffic
issues, etc.
o With the help of AI, you can create your personal virtual Assistant, such as Cortana,
Google Assistant, Siri, etc.
o With the help of AI, you can build such Robots which can work in an environment
where survival of humans can be at risk.
o AI opens a path for other new technologies, new devices, and new Opportunities.
o High Accuracy with less error: AI machines or systems are prone to less errors and
high accuracy as it takes decisions as per pre-experience or information.
o High-Speed: AI systems can be of very high-speed and fast-decision making, because
of that AI systems can beat a chess champion in the Chess game.
o High reliability: AI machines are highly reliable and can perform the same action
multiple times with high accuracy.
o Useful for risky areas: AI machines can be helpful in situations such as defusing a
bomb, exploring the ocean floor, where to employ a human can be risky.
o Digital Assistant: AI can be very useful to provide digital assistant to the users such
as AI technology is currently used by various E-commerce websites to show the
products as per customer requirement.
o Useful as a public utility: AI can be very useful for public utilities such as a self-
driving car which can make our journey safer and hassle-free, facial recognition for
security purpose, Natural language processing to communicate with the human in
human-language, etc.
2) Discuss applications of Artificial Intelligence.
Artificial Intelligence has various applications in today's society. It is becoming essential for
today's time because it can solve complex problems with an efficient way in multiple
industries, such as Healthcare, entertainment, finance, education, etc. AI is making our daily
life more comfortable and fast.
Following are some sectors which have the application of Artificial Intelligence:
AI in Astronomy
o Artificial Intelligence can be very useful to solve complex universe problems. AI
technology can be helpful for understanding the universe such as how it works, origin,
etc.
AI in Healthcare
o In the last, five to ten years, AI becoming more advantageous for the healthcare
industry and going to have a significant impact on this industry.
o Healthcare Industries are applying AI to make a better and faster diagnosis than
humans. AI can help doctors with diagnoses and can inform when patients are
worsening so that medical help can reach to the patient before hospitalization.
AI in Gaming
o AI can be used for gaming purpose. The AI machines can play strategic games like
chess, where the machine needs to think of a large number of possible places.
AI in Finance
o AI and finance industries are the best matches for each other. The finance industry is
implementing automation, chatbot, adaptive intelligence, algorithm trading, and
machine learning into financial processes.
AI in Data Security
o The security of data is crucial for every company and cyber-attacks are growing very
rapidly in the digital world. AI can be used to make your data more safe and secure.
Some examples such as AEG bot, AI2 Platform,are used to determine software bug
and cyber-attacks in a better way.
AI in Social Media
o Social Media sites such as Facebook, Twitter, and Snapchat contain billions of user
profiles, which need to be stored and managed in a very efficient way. AI can organize
and manage massive amounts of data. AI can analyze lots of data to identify the latest
trends, hashtag, and requirement of different users.
AI in Automotive Industry
o Some Automotive industries are using AI to provide virtual assistant to their user for
better performance. Such as Tesla has introduced TeslaBot, an intelligent virtual
assistant.
o Various Industries are currently working for developing self-driven cars which can
make your journey more safe and secure.
AI in Robotics:
o Artificial Intelligence has a remarkable role in Robotics. Usually, general robots are
programmed such that they can perform some repetitive task, but with the help of AI,
we can create intelligent robots which can perform tasks with their own experiences
without pre-programmed.
o Humanoid Robots are best examples for AI in robotics, recently the intelligent
Humanoid robot named as Erica and Sophia has been developed which can talk and
behave like humans.
AI in Entertainment
o We are currently using some AI based applications in our daily life with some
entertainment services such as Netflix or Amazon. With the help of ML/AI
algorithms, these services show the recommendations for programs or shows.
AI in Agriculture
o Agriculture is an area which requires various resources, labor, money, and time for
best result. Now a day's agriculture is becoming digital, and AI is emerging in this
field. Agriculture is applying AI as agriculture robotics, solid and crop monitoring,
predictive analysis. AI in agriculture can be very helpful for farmers.
AI in E-commerce
o AI is providing a competitive edge to the e-commerce industry, and it is becoming
more demanding in the e-commerce business. AI is helping shoppers to discover
associated products with recommended size, color, or even brand.
AI in education:
o AI can automate grading so that the tutor can have more time to teach. AI chatbot
can communicate with students as a teaching assistant.
o AI in the future can be work as a personal virtual tutor for students, which will be
accessible easily at any time and any place.
There is no one technology in Artificial Intelligence and it requires developers to learn a lot
of things to become productive programmer. Artificial Intelligence requires deep knowledge
many things including good programming skills. If we talk about programming one must
have extensive experience in Java, Python, Scala, R, Spark and also the Big Data
technologies.
The aim of AI is to develop program for simulating learning of human being and its a
complex process which requires knowledge of various disciplines like Computer Science,
Biology, Psychology, Linguistics etc... Learning all these things are really complex task and
that's why in project team we have to hire resources from many fields.
Philosophy
Philosophy is very important as it attempts to answer important questions like "Can a
machine act intelligently?", "Can it solve like human being?", "Are computer intelligence is
like Human one?" etc...
Mathematics
Mathematics is used to write the logic and algorithm for machine learning. Philosophy thinks
and defines particular intelligence and way it should work. But here comes the intelligence
of Mathematicians to come out with calculations and algorithms for learning. Good
knowledge of mathematics is a must skills to be able to develop model of AI.
Economics
Lots of Economics reasoning is used in developing programs for Artificial Intelligence.
Neuroscience
Study of Neuroscience providing information about how human brain works and how
neurons responds to a particular event. This enables AI scientists to develop programming
model to work like human brain.
Psychology
The Psychology is used to study and find the process of thinking of humans and animals.
This discipline enables data science to understand the Brain, Behaviour and Person which is
essential to make things like human brain.
Computer engineering
Computer engineer write the codes for making the neural network for artificial intelligence.
It then updates the values/properties of the neural network based on the data provided to the
system. This way Artificial Intelligence is achieved. Computer programmer should have very
high programming skills along with the knowledge of Mathematics and other disciplines
used with AI.
Linguistics
The modern Linguistics is called computational linguistics or natural language processing.
The natural language processing allows the intelligent system to communicate through
language such as English. To natural language processing experience is also a must for
developing Artificial Intelligence system for machines.
Big Data
Big Data is fuelling the growth of Artificial Intelligence as it provides a platform for saving
and querying huge data sets. AI requires to process a lot of data and its not possible to save
data in one computer and Big Data plays big role here. Big Data also provides distributed
computing environment which can be used for training the model on distributed system.
4) What is the Turing machine? How is it used for machine intelligence?
A Turing Machine is an accepting device which accepts the languages (recursively
enumerable set) generated by type 0 grammars. It was invented in 1936 by Alan Turing.
Definition
A Turing Machine (TM) is a mathematical model which consists of an infinite length tape
divided into cells on which input is given. It consists of a head which reads the input tape. A
state register stores the state of the Turing machine. After reading an input symbol, it is
replaced with another symbol, its internal state is changed, and it moves from one cell to the
right or left. If the TM reaches the final state, the input string is accepted, otherwise rejected.
A TM can be formally described as a 7-tuple (Q, X, ∑, δ, q0, B, F) where −
Q is a finite set of states
X is the tape alphabet
∑ is the input alphabet
δ is a transition function; δ : Q × X → Q × X × {Left_shift, Right_shift}.
q0 is the initial state
B is the blank symbol
F is the set of final states
Comparison with the previous automaton
The following table shows a comparison of how a Turing machine differs from Finite
Automaton and Pushdown Automaton.
Here the transition 1Rq1 implies that the write symbol is 1, the tape moves right, and the next
state is q1. Similarly, the transition 1Lq2 implies that the write symbol is 1, the tape moves
left, and the next state is q2.
For a Turing machine, the time complexity refers to the measure of the number of times the
tape moves when the machine is initialized for some input symbols and the space complexity
is the number of cells of the tape written.
Time complexity all reasonable functions −
T(n) = O(n log n)
TM's space complexity −
S(n) = O(n)
There are mainly four ways of knowledge representation which are given as follows:
1. Logical Representation
2. Semantic Network Representation
3. Frame Representation
4. 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.
Syntax:
o Syntaxes are the rules which decide how we can construct legal sentences in the logic.
o It determines which symbol we can use in knowledge representation.
o How to write those symbols.
Semantics:
o Semantics are the rules by which we can interpret the sentence in the logic.
o Semantic also involves assigning a meaning to each sentence.
a. Propositional Logics
b. Predicate logics
Statements:
a. Jerry is a cat.
b. Jerry is a mammal
c. Jerry is owned by Priya.
d. Jerry is brown colored.
e. 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.
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.
Example: 1
Slots Filters
Year 1996
Page 1152
Example 2:
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:
Slots Filter
Name Peter
Profession Doctor
Age 25
Weight 78
4. Production Rules
Production rules system consist of (condition, action) pairs which mean, "If condition then
action". It has mainly three parts:
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.
Example:
o IF (at bus stop AND bus arrives) THEN action (get into the bus)
o IF (on the bus AND paid AND empty seat) THEN action (sit down).
o IF (on bus AND unpaid) THEN action (pay charges).
o IF (bus arrives at destination) THEN action (get down from the bus).
Propositional logic (PL) is the simplest form of logic where all the statements are made by
propositions. A proposition is a declarative statement which is either true or false. It is a
technique of knowledge representation in logical and mathematical form.
Example:
a) It is Sunday.
b) The Sun rises from West (False proposition)
c) 3+3= 7(False proposition)
d) 5 is a prime number.
The syntax of propositional logic defines the allowable sentences for the knowledge
representation. There are two types of Propositions:
a. Atomic Propositions
b. Compound propositions
Example:
Example:
Logical connectives are used to connect two simpler propositions or representing a sentence
logically. We can create compound propositions with the help of logical connectives. There
are mainly five connectives, which are given as follows:
Truth Table:
In propositional logic, we need to know the truth values of propositions in all possible
scenarios. We can combine all the possible combination with logical connectives, and the
representation of these combinations in a tabular format is called Truth table. Following are
the truth table for all logical connectives:
Truth table with three propositions:
We can build a proposition composing three propositions P, Q, and R. This truth table is
made-up of 8n Tuples as we have taken three proposition symbols.
Precedence of connectives:
Just like arithmetic operators, there is a precedence order for propositional connectors or
logical operators. This order should be followed while evaluating a propositional problem.
Following is the list of the precedence order for operators:
Precedence Operators
Logical equivalence:
Logical equivalence is one of the features of propositional logic. Two propositions are said
to be logically equivalent if and only if the columns in the truth table are identical to each
other.
Let's take two propositions A and B, so for logical equivalence, we can write it as A⇔B. In
below truth table we can see that column for ¬A∨ B and A→B, are identical hence A is
Equivalent to B
Properties of Operators:
o Commutatively:
o P∧ Q= Q ∧ P, or
o P ∨ Q = Q ∨ P.
o Associativity:
o (P ∧ Q) ∧ R= P ∧ (Q ∧ R),
o (P ∨ Q) ∨ R= P ∨ (Q ∨ R)
o Identity element:
o P ∧ True = P,
o P ∨ True= True.
o Distributive:
o P∧ (Q ∨ R) = (P ∧ Q) ∨ (P ∧ R).
o P ∨ (Q ∧ R) = (P ∨ Q) ∧ (P ∨ R).
o DE Morgan's Law:
o ¬ (P ∧ Q) = (¬P) ∨ (¬Q)
o ¬ (P ∨ Q) = (¬ P) ∧ (¬Q).
o Double-negation elimination:
o ¬ (¬P) = P.
In the topic of Propositional logic, we have seen that how to represent statements using
propositional logic. But unfortunately, in propositional logic, we can only represent the facts,
which are either true or false. PL is not sufficient to represent the complex sentences or
natural language statements. The propositional logic has very limited expressive power.
Consider the following sentence, which we cannot represent using PL logic.
To represent the above statements, PL logic is not sufficient, so we required some more
powerful logic, such as first-order logic.
First-Order logic:
The syntax of FOL determines which collection of symbols is a logical expression in first-
order logic. The basic syntactic elements of first-order logic are symbols. We write
statements in short-hand notation in FOL.
Variables x, y, z, a, b,....
Connectives ∧, ∨, ¬, ⇒, ⇔
Equality ==
Quantifier ∀, ∃
Atomic sentences:
o Atomic sentences are the most basic sentences of first-order logic. These sentences are
formed from a predicate symbol followed by a parenthesis with a sequence of terms.
o We can represent atomic sentences as Predicate (term1, term2, ......, term n).
Complex Sentences:
o Complex sentences are made by combining atomic sentences using connectives.
Consider the statement: "x is an integer.", it consists of two parts, the first part x is the
subject of the statement and second part "is an integer," is known as a predicate.
Quantifiers in First-order logic:
Universal Quantifier:
Universal quantifier is a symbol of logical representation, which specifies that the statement
within its range is true for everything or every instance of a particular thing.
o For all x
o For each x
o For every x.
Example:
Let a variable x which refers to a cat so all x can be represented in UOD as below:
It will be read as: There are all x where x is a man who drink coffee.
Existential Quantifier:
Existential quantifiers are the type of quantifiers, which express that the statement within its
scope is true for at least one instance of something.
It is denoted by the logical operator ∃, which resembles as inverted E. When it is used with a
predicate variable then it is called as an existential quantifier.
If x is a variable, then existential quantifier will be ∃x or ∃(x). And it will be read as:
Example:
It will be read as: There are some x where x is a boy who is intelligent.
Points to remember:
Properties of Quantifiers:
The quantifiers interact with variables which appear in a suitable way. There are two types of
variables in First-order logic which are given below:
Free Variable: A variable is said to be a free variable in a formula if it occurs outside the
scope of the quantifier.
Universal Quantifier
Universal quantifier states that the statements within its scope are true for every value of the
specific variable. It is denoted by the symbol ∀.
∀ x P(x) is read as for every value of x, P(x) is true.
Example − "Man is mortal" can be transformed into the propositional form ∀ x P(x) where
P(x) is the predicate which denotes x is mortal and ∀ x represents all men.
Existential Quantifier
Existential quantifier states that the statements within its scope are true for some values of
the specific variable. It is denoted by the symbol ∃.
∃ x P(x) is read as for some values of x, P(x) is true.
Example − "Some people are dishonest" can be transformed into the propositional form ∃ x
P(x) where P(x) is the predicate which denotes x is dishonest and ∃ x represents some
dishonest men.
5) Functions
Earlier we denoted "Ram" as x and "is a student" as predicate P then we have statement as
P(x). Here P(x) is a statement function where if we replace x with a Subject say Sunil then
we'll be having a statement "Sunil is a student."
Thus a statement function is an expression having Predicate Symbol and one or multiple
variables. This statement function gives a statement when we replaced the variables with
objects. This replacement is called substitution instance of statement function.
6) Predicates
A predicate is an expression of one or more variables defined on some specific domain. A
predicate with variables can be made a proposition by either assigning a value to the
variable or by quantifying the variable.
Consider the following statement.
Ram is a student.
Now consider the above statement in terms of Predicate calculus.
Here "is a student" is a predicate and Ram is subject.
Let's denote "Ram" as x and "is a student" as a predicate P then we can write the above
statement as P(x).
Generally a statement expressed by Predicate must have at least one object associated
with Predicate. In our case, Ram is the required object with associated with predicate
P.
11) List and explain various inference techniques in propositional logic and
FOPL.
Propositional logic (PL) is the simplest form of logic where all the statements are made by
propositions. A proposition is a declarative statement which is either true or false. It is a
technique of knowledge representation in logical and mathematical form.
Example:
a) It is Sunday.
b) The Sun rises from West (False proposition)
c) 3+3= 7(False proposition)
d) 5 is a prime number.
The syntax of propositional logic defines the allowable sentences for the knowledge
representation. There are two types of Propositions:
c. Atomic Propositions
d. Compound propositions
Example:
Example:
Logical Connectives:
Logical connectives are used to connect two simpler propositions or representing a sentence
logically. We can create compound propositions with the help of logical connectives. There
are mainly five connectives, which are given as follows:
Truth Table:
In propositional logic, we need to know the truth values of propositions in all possible
scenarios. We can combine all the possible combination with logical connectives, and the
representation of these combinations in a tabular format is called Truth table. Following are
the truth table for all logical connectives:
Truth table with three propositions:
We can build a proposition composing three propositions P, Q, and R. This truth table is
made-up of 8n Tuples as we have taken three proposition symbols.
Precedence of connectives:
Just like arithmetic operators, there is a precedence order for propositional connectors or
logical operators. This order should be followed while evaluating a propositional problem.
Following is the list of the precedence order for operators:
Precedence Operators
Logical equivalence:
Logical equivalence is one of the features of propositional logic. Two propositions are said
to be logically equivalent if and only if the columns in the truth table are identical to each
other.
Let's take two propositions A and B, so for logical equivalence, we can write it as A⇔B. In
below truth table we can see that column for ¬A∨ B and A→B, are identical hence A is
Equivalent to B
Properties of Operators:
o Commutatively:
o P∧ Q= Q ∧ P, or
o P ∨ Q = Q ∨ P.
o Associativity:
o (P ∧ Q) ∧ R= P ∧ (Q ∧ R),
o (P ∨ Q) ∨ R= P ∨ (Q ∨ R)
o Identity element:
o P ∧ True = P,
o P ∨ True= True.
o Distributive:
o P∧ (Q ∨ R) = (P ∧ Q) ∨ (P ∧ R).
o P ∨ (Q ∧ R) = (P ∨ Q) ∧ (P ∨ R).
o DE Morgan's Law:
o ¬ (P ∧ Q) = (¬P) ∨ (¬Q)
o ¬ (P ∨ Q) = (¬ P) ∧ (¬Q).
o Double-negation elimination:
o ¬ (¬P) = P.
Recruitment:
Since many of the questions would require us to understand how users use other to-do list
apps, the main screening criteria would be that the participant must have some experience
using to-do lists in the past (they need not be currently using them, since someone who used
to-do list apps before but eventually stopped might be able to share interesting insights
about why they stopped).
A minimum of 5 participants would be required for these interviews (more is possible, but
since you‘ll be having a separate set of sessions for usability testing, it might make sense to
stick to 5, to manage the time spent on this project). Check out this useful article from Nielsen
Norman Group on why interviewing 5 users is sufficient.
General questions about how the user achieves a particular objective (in this case,
managing and recalling tasks):
1. How do you currently manage your tasks?
2. Walk us through the last time you had to manage your task list.
3. What’s the hardest part about managing your task list?
4. How do you currently recall tasks that need to be done?
5. Tell us about the last time you had to recall a task?
6. What’s the hardest part about recalling tasks that need to be done?
7. How do you work around [issue mentioned by user]?
Note: We ask these questions separately from the app-specific questions because users may
have their own ways of achieving an objective that may not involve applications (e.g., in the
case of task management, they may be putting post-its on the fridge, or keeping a handwritten
task list on their desk).
We also wouldn‘t ask about their usage of apps immediately because the user might fixate on
software issues and not raise more fundamental issues.
App-specific questions
1. What to-do list apps are you currently using/did you use in the past to help you keep track
of your tasks?
2. How did you find out about this to-do list app?
3. Is this a paid or free app?
4. What platform do you use this app on (mobile/desktop/both)?
5. Walk us through the most recent occasion when you used the app.
6. What did you like most about managing your tasks through the app?
7. What was the biggest problem or the hardest part about managing your tasks through the
app?
8. How did you work around [issue mentioned by user]?
Remember to probe deeper when users raise issues. For example, the user might mention an
issue in passing while describing how they used the app, at which point you should ask
additional probing questions such as:
Could you tell me more about that issue you just mentioned?
How did that affect your process of completing your task?
Tell me more about why you felt that way?
General tips:
Always prepare a script.
Have someone join as a note taker, or at the very least take a recording of the session.
Make sure to let users finish their thoughts — this entails being a bit comfortable with
silence. If you move on too quickly as soon as the user has paused, you may lose out on
key insights.
Don‘t share your own experiences, even if it seems like a good way to build rapport —
this will distract from the key purpose of the interview which is to find out more about
the user.
It‘s important to remain neutral and not affirm users‘ ideas or statements one way or
another — this could lead the user to try and say what they think you want to hear.
Where possible, ask users to recall a specific time when they performed a task, rather than
asking them how they generally go about performing it. This will guide them to share
specific insights rather than more general impressions.
Remember to probe deeper. The ‗five whys‘ technique is an established technique to
determine the root cause of a problem by repeating the question ‗Why?‘. You generally
won‘t need to ask it 5 times, but you get the point!
Stay under 20 questions — this gives you more time to probe the participants‘ responses
further.
Make sure not to ask leading questions — keep your questions short and don‘t include any
suggestion of an answer or response in the question.
Users might make mistakes in an interview (e.g., while describing how they used a
particular app). Don‘t correct them during the interview, as this might spoil the flow of
the interview and make them feel guarded. Just note them down and inform them at the
end of the interview if it‘s helpful.
INHERITANCE REASONING
Semantic net allows us to perform inheritance reasoning as all members of a class will inherit
all the properties of superclass .We could use inheritance to derive the additional relation.
Semantic nets allow multiple inheritance. So an object can belong to more than one category
and a category can be a subset of more than one another category.
INVERSE LINKS
It allows a common form of inference known as inverse links. For example we can have a
HasMother link which is the inverse of MotherOf link. The inverse links make the job of
inference algorithms much easier to answer queries such as who the mother of John is. On
discovering that HasMother is the inverse of MotherOf the inference algorithm can follow
that link HasMother from John to Gavy and answer the query.
ADVANTAGES
Semantic nets have the ability to represent default values for categories. In the above figure
John has one leg while he is a person and all persons have two legs. So persons have two legs
has only default status which can be overridden by a specific value.
DISADVANTAGES
One of the drawbacks of semantic network is that the links between the objects represent only
binary relations. For example, the sentence Run(RajdhaniExpress,
Chandigarh,delhi,Tomorrow) cannot be asserted directly.
It has been used by many programs that portend to understand English (MARGIE, SAM,
PAM). CD developed by Schank et al. as were the previous examples.
CD provides:
Sentences are represented as a series of diagrams depicting actions using both abstract and
real physical situations.
The agent and the objects are represented
The actions are built up from a set of primitive acts which can be modified by tense.
ATRANS
-- Transfer of an abstract relationship. e.g. give.
PTRANS
-- Transfer of the physical location of an object. e.g. go.
PROPEL
-- Application of a physical force to an object. e.g. push.
MTRANS
-- Transfer of mental information. e.g. tell.
MBUILD
-- Construct new information from old. e.g. decide.
SPEAK
-- Utter a sound. e.g. say.
ATTEND
-- Focus a sense on a stimulus. e.g. listen, watch.
MOVE
-- Movement of a body part by owner. e.g. punch, kick.
GRASP
-- Actor grasping an object. e.g. clutch.
INGEST
-- Actor ingesting an object. e.g. eat.
EXPEL
-- Actor getting rid of an object from body. e.g. ????.
Six primitive conceptual categories provide building blocks which are the set of allowable
dependencies in the concepts in a sentence:
PP
-- Real world objects.
ACT
-- Real world actions.
PA
-- Attributes of objects.
AA
-- Attributes of actions.
T
-- Times.
LOC
-- Locations.
18) Give example for the conceptual graph.
A cat is on a mat.
In the display form (DF), concepts are represented by rectangles: the concept [Cat]
represents a instance of a cat, and [Mat] represents an instance of a mat. Conceptual relations
are represented by circles or ovals: the conceptual relation (On) relates a cat to a mat. The
arcs that link the relations to the concepts are represented by arrows: the first arc has an
arrow pointing toward the relation, and the second arc has an arrow pointing away from the
relation. If a relation has more than two arcs, the arcs are numbered.
In the linear form (LF), concepts are represented by square brackets instead of boxes, and the
conceptual relations are represented by parentheses instead of circles:
[Cat]®(On)®[Mat].
Both DF and LF are designed for communication with humans or between humans and
machines. For communication between machines, the conceptual graph interchange form
(CGIF) has a syntax that uses coreference labels to represent the arcs:
[Cat: *x] [Mat: *y] (On ?x ?y)
The symbols *x and *y are called defining labels. The matching symbols ?x and ?y are
the bound labels that indicate references to the same instance of a cat x or a mat y. To reduce
the number of coreference labels, CGIF also permits concepts to be nested inside the relation
nodes:
(On [Cat] [Mat])
The display form in Figure 1 represents the abstract CG most directly. All the variations of
LF and CGIF represent stylistically different, but logically equivalent ways of linearizing the
same abstract graph. All these variations are accommodated by the LF grammar and the
CGIF grammar, which are defined in the CG standard.
CGIF is intended for transfer between computer systems that use CGs as their internal
representation. For communication with systems that use other internal representations,
CGIF can be translated to another logic-based formalism called the Knowledge Interchange
Format (KIF):
(exists ((?x Cat) (?y Mat)) (On ?x ?y))
Although DF, LF, CGIF, and KIF look very different, their semantics is defined by the same
logical foundations. They can all be translated to a statement of the following form in typed
predicate calculus:
($x:Cat)($y:Mat)on(x,y).
Any statement expressed in any one of these notations can be automatically translated to a
logically equivalent statement in any of the others. Formatting and stylistic information,
however, may be lost in translations between DF, LF, CGIF, KIF, and predicate calculus.