Lecture_1
Lecture_1
Back
Textbooks
• Gerardus Blokdyk, "Knowledge Representation And
Reasoning A Complete Guide," ISBN 978-1867335252,
2020
• Dean Allemang, Jim Hendler, Fabien Gandon, "Semantic
Web for the Working Ontologist: Effective Modeling for
Linked Data, Rdfs, and Owl," ACM Books, 3rd Edition,
ISBN 978-1450376143, 2020
Back
Grading
Lecture Attendance 7
Lab. Attendance 3
Exam1 25
Exam2 25
Practical 30
Final Exam 60
Total 150
Back
Introduction
• What is Intelligent ?
1. Someone’s intelligence is their ability to
understand and learn things.
2 Intelligence is the ability to think and understand
instead of doing things by instinct or automatically.
(Essential English Dictionary, Collins, London, 1990)
Back
Data, Information, Knowledge
Information is manipulated data.
• Information can be considered as an aggregation of data.
• has usually got some meaning and purpose.
• The information can help us to make decisions easier.
• After processing the data, we can get the information within a context
in order to give proper meaning. In computer jargon, a relational
database makes information from the data stored within it.
Back
Data, Information, Knowledge
Knowledge is a theoretical or practical understanding of a subject or
a domain.
• We make decisions about what to do based on what we know (or
believe) about the world
• Knowledge is information with meaning.
• Knowledge happens only when human experience and insight is
applied to data and information.
• We can talk about knowledge when the data and the information
turn into a set of rules to assist the decisions.
• The ultimate purpose of knowledge is for value creation.
Data, Information, Knowledge
Representation
• Representation is a relationship between two domains,
where the first is meant to “stand for” or take the place of the
second.
• The first domain, the representor, is more concrete,
immediate, or accessible in some way than the second.
• Drawing of a milkshake and a hamburger on a sign might
stand for a less immediately visible fast food restaurant
Representation
• The type of representor that we will be most concerned with
is the formal symbol, that is, a character or group of
characters taken from some predetermined alphabet.
• The digit “7,” for example, stands for the number 7
• As with all representation, it is assumed to be easier to deal
with symbols (recognize them, distinguish them from each
other, display them, etc.) than with what the symbols
represent.
Knowledge representation
• Knowledge representation is the field of study concerned
with using formal symbols to represent a collection of
propositions believed by some putative agent.
• The used symbols must represent all the propositions
believed by the agent.
Why knowledge representation
• It is sometimes useful to describe the behavior of
sufficiently complex systems (human or otherwise) using a
vocabulary involving terms like “beliefs,” “desires,” “goals,”
“intentions,” “hopes,”
• Constructing systems for which the intentional stance is
grounded by design in symbolic representations these
systems are called knowledge-based systems and the
symbolic representations involved their knowledge bases
(KBs).
Reasoning
• what is reasoning? In general, it is the formal manipulation
of the symbols representing a collection of believed
propositions to produce representations of new ones.
• Binary addition is formal manipulation done on binary
numbers.
• We start with symbols like “1011” and “10,” for instance, and
end up with “1101.”
Reasoning
John loves Mary
Mary is coming to the party
after a certain amount of manipulation produce the sentence,
“Someone John loves is coming to the party.”
this form of reasoning is called logical inference because the
final sentence represents a logical conclusion of the
propositions represented by the initial ones
What is Knowledge - Based System (KBS)?
Back
Knowledge Base (KB)
Knowledge Base (KB):
is a repository of special heuristics or rules that direct the use of
knowledge, facts (productions). It contains the knowledge necessary for
understanding, formulating, & problem solving.
Back
What is a language?
Is a set of words or a set of symbols of some sort, what
more is needed?
1. syntax:
specify which groups of symbols, arranged in what way, are
to be considered properly formed.
In English:
the cat my mother loves -> wellformed noun phrase
the my loves mother cat-> not wellformed noun phrase
For knowledge representation, we need to be especially
clear about which of the well-formed strings are the
sentences of the language.
What is a language?
2. Semantics:
we need to specify what the well-formed
expressions are supposed to mean.
Some well-formed expressions may not mean
anything
The hardnosed decimal holiday
For sentences, we need to be clear about
what idea about the world is being
expressed.
Back
What is a language?
3. Pragmatics:
we need to specify how the meaningful expressions in
the language are to be used.
English
There is someone right behind you
Warning to be careful in
Or a request to move in others.
For knowledge representation, this involves how we use
the meaningful sentences of a representation language
as part of a knowledge base from which inferences will be
drawn.
Back
Declarative and Imperative programming languages
• Programming paradigms are approaches used to
categorize or classify programming languages
based on techniques and features they support.
• Imperative and declarative programming are two
of the most popular programming paradigms in
software development.
Back
Declarative and Imperative languages
• Declarative programming is a paradigm
describing WHAT the program does, without
explicitly specifying its control flow.
• Developers are more concerned with the answer
that is received.
• It declares what kind of results we want and leave
programming language aside focusing on simply
figuring out how to produce them.
• In simple words, it mainly focuses on end result.
It expresses the logic of computation.
• Miranda, Erlang, Haskell, Prolog, SQL are a few
popular examples of declarative programming.
Declarative and procedural languages
• Imperative programming is a paradigm
describing HOW the program should do something
by explicitly specifying each instruction (or
statement) step by step, which mutate the
program's state.
• Developers are more concerned with how to get
an answer step by step.
• It comprises the sequence of command
imperatives.
• The order of execution is very important.
• Fortran, Java, C, C++ programming languages
Back
are examples of imperative programming.
Declarative and procedural languages
Declarative and procedural languages
Imperative Declarative
Programs specify how it is to be Programs specify what is to be
done. done.
The user is allowed to make A compiler is allowed to make
decisions and commands to the decisions.
compiler.
Includes mutable variables Does not include any mutable
variables
Gives full control to developers Automate repetitive flow along
with simplifying code structure.
Programmer is responsible for The system optimizes the code
optimizing the code for based on the rules and constraints
performance specified by the programmer.