Artificial intelligence
Download
1 / 61

Artificial Intelligence - PowerPoint PPT Presentation


  • 107 Views
  • Uploaded on

Artificial Intelligence. Knowledge Representation Problem. Knowledge bases. Knowledge base = set of sentences in a formal language. Stages of Knowledge Use. Acquisition structure of facts integration of old & new knowledge Retrieval (recall) roles of linking and chunking

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Artificial Intelligence' - sarah-fitzgerald


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Artificial intelligence

Artificial Intelligence

Knowledge Representation Problem


Knowledge bases
Knowledge bases

  • Knowledge base = set of sentences in a formal language


Stages of knowledge use
Stages of Knowledge Use

  • Acquisition

    • structure of facts

    • integration of old & new knowledge

  • Retrieval (recall)

    • roles of linking and chunking

    • means of improving recall efficiency


Representation
Representation

  • Set of syntactic and semantic conventions which make it possible to describe things

  • Syntax

    • specific symbols allowed and rules allowed

  • Semantics

    • how meaning is associated with symbol arrangements allowed by syntax


Knowledge representation schemas
Knowledge Representation Schemas

  • Logic based representation – first order predicate logic, Prolog

  • Procedural representation – rules, production system

  • Network representation – semantic networks, conceptual graphs

  • Structural representation – scripts, frames, objects


Conceptual graphs
Conceptual Graphs

  • each concept has got its type and an instance

    general concept – a concept with a wildcard instance

    specific concept – a concept with a concrete instance

  • there exsists a hierarchy of types subtype:

  • concept w is specialisation of concept v iftype(v)>type(w) or instance(w)::type(v)

colour

dog:*X

brown

colour

dog:Emma

brown

animal

dog

cat


Types of knowledge
Types of Knowledge

  • Objects

    • both physical & concepts

  • Events

    • usually involve time

    • maybe cause & effect relationships

  • Performance

    • how to do things

  • META Knowledge

    • knowledge about how to use knowledge



Artificial intelligence

Basic connectives and truth tables

statements (propositions): declarative sentences that are

either true or false--but not both.

Eg. Ahmed Hassan wrote Gone with the Wind.

2+3=5.

not statements:

What a beautiful morning!

Get up and do your exercises.


Artificial intelligence

Fundamentals of Logic

"The number x is an integer."

is not a statement because its truth value cannot be determined until a numerical value is assigned for x.


Propositional logic
Propositional logic

  • Logical constants: true, false

  • Propositional symbols: P, Q, S, ... (atomic sentences)

  • Sentences are combined by connectives:

    ...and [conjunction]

    ...or [disjunction]

    ...implies [implication / conditional]

    ..is equivalent [biconditional]

    ...not [negation]

  • Literal: atomic sentence or negated atomic sentence


Artificial intelligence

Truth Tables

p q

0 0 0 0 0 1 1

0 1 0 1 1 1 0

1 0 0 1 1 0 0

1 1 1 1 0 1 1


Examples of pl sentences
Examples of PL sentences

  • P means “It is hot.”

  • Q means “It is humid.”

  • R means “It is raining.”

  • (P  Q)  R

    “If it is hot and humid, then it is raining”

  • Q  P

    “If it is humid, then it is hot”

  • A better way:

    Hot = “It is hot”

    Humid = “It is humid”

    Raining = “It is raining”


Artificial intelligence

Example

s: Aya goes out for a walk.

t: The moon is out.

u: It is snowing.

: If the moon is out and it is not snowing, then

Aya goes out for a walk.

If it is snowing and the moon is not out, then Aya

will not go out for a walk.


Artificial intelligence

Logical Equivalence

p

q

0

0

1

1

0

1

0

1

1

1

0

0

1

1

0

1

1

1

0

1


Logical equivalence
Logical equivalence

  • Two sentences are logically equivalent} iff true in same models: α ≡ ß iff α╞ βand β╞ α


Tables of logical equivalences

Identity laws

Like adding 0

Domination laws

Like multiplying by 0

Idempotent laws

Delete redundancies

Double negation

“I don’t like you, not”

Commutativity

Like “x+y = y+x”

Associativity

Like “(x+y)+z = y+(x+z)”

Distributivity

Like “(x+y)z = xz+yz”

De Morgan

Tables of Logical Equivalences


Tables of logical equivalences1

Excluded middle

Negating creates opposite

Definition of implication in terms of Not and Or

Tables of Logical Equivalences


Artificial intelligence

Fundamentals of Logic

A compound statement is called a tautology(T0) if it is

true for all truth value assignments for its component statements.

If a compound statement is false for all such assignments, then it is called a contradiction(F0).

: tautology

: contradiction


Propositional logic 2 more defn
Propositional Logic - 2 more defn…

A tautology is a proposition that’s always TRUE.

A contradiction is a proposition that’s always FALSE.

T

T

F

F


Tautology example
Tautology example

Demonstrate that

[¬p(p q )]q

is a tautology in two ways:

  • Using a truth table – show that [¬p(p q )]q is always true

  • Using a proof (will get to this later).







Derivational proof techniques
Derivational Proof Techniques

EG: consider the compound proposition

(p p )  ((sr)t) )  (qr )

Q: Why is this a tautology?


Derivational proof techniques1
Derivational Proof Techniques

A: Part of it is a tautology (p p ) and the disjunction of True with any other compound proposition is still True:

(p p )  ((sr)t ))  (qr )

  • T  ((sr)t ))  (qr )

  • T

    Derivational techniques formalize the intuition of this example.


Tautology by proof
Tautology by proof

[¬p(p q )]q


Tautology by proof1
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive


Tautology by proof2
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE


Tautology by proof3
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity


Tautology by proof4
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE


Tautology by proof5
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE

[¬(¬p)¬q ] q DeMorgan


Tautology by proof6
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE

[¬(¬p)¬q ] q DeMorgan

[p ¬q ] q Double Negation


Tautology by proof7
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE

[¬(¬p)¬q ] q DeMorgan

[p ¬q ] q Double Negation

p [¬q q ]Associative


Tautology by proof8
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE

[¬(¬p)¬q ] q DeMorgan

[p ¬q ] q Double Negation

p [¬q q ]Associative

p [q ¬q ]Commutative


Tautology by proof9
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE

[¬(¬p)¬q ] q DeMorgan

[p ¬q ] q Double Negation

p [¬q q ]Associative

p [q ¬q ]Commutative

p T ULE


Tautology by proof10
Tautology by proof

[¬p(p q )]q

[(¬pp)(¬pq)]q Distributive

[ F (¬pq)]q ULE

[¬pq ]q Identity

¬[¬pq ] q ULE

[¬(¬p)¬q ] q DeMorgan

[p ¬q ] q Double Negation

p [¬q q ]Associative

p [q ¬q ]Commutative

p T ULE

T Domination


Examples
Examples

  • “I don’t study well and fail” is logically equivalent to “If I study well, then I don’t fail”

  • Write a C program that represents the compound proposition (pq)r


Use truth table to find
Use truth table to find

- P  Q  P  R

P  -Q  R  P  R  - Q

A  B  -C  D  E  F


Limitations of propositional logic
Limitations of propositional logic

  • So far we studied propositional logic

  • Some English statements are hard to model in propositional logic:

  • “If your roommate is wet because of rain, your roommate must not be carrying any umbrella”

  • Pathetic attempt at modeling this:

  • RoommateWetBecauseOfRain => (NOT(RoommateCarryingUmbrella0) AND NOT(RoommateCarryingUmbrella1) AND NOT(RoommateCarryingUmbrella2) AND …)


Problems with propositional logic
Problems with propositional logic

  • No notion of objects

  • No notion of relations among objects

  • RoommateCarryingUmbrella0 is instructive to us, suggesting

    • there is an object we call Roommate,

    • there is an object we call Umbrella0,

    • there is a relationship Carrying between these two objects

  • Formally, none of this meaning is there

    • Might as well have replaced RoommateCarryingUmbrella0 by P



Constants
Constants

  • Constants refer to objects, functions and relationships.

    Ahmed, Mona, loves, happy,

  • Simple sentences express relationships among objects.

    loves(Ahmed, Mona)

    They are called atoms.

  • Compound sentences capture relationships among relations.

    loves(x,y) Þ loves(y,x)

    loves(x,y) Ù loves(y,x) Þ happy(x)

  • Relations can be unary as well.

    tall(Tomy)


Elements of first order logic
Elements of first-order logic

  • Objects:can give these names such as Umbrella0, Person0, John, Earth, …

  • Relations:Carrying(., .), IsAnUmbrella(.)

    • Carrying(Person0, Umbrella0), IsUmbrella(Umbrella0)

    • Relations with one object = unary relations = properties

  • Functions: Roommate(.)

    • Roommate(Person0)

  • Equality: Roommate(Person0) = Person1


Example with functions
Example with Functions

E.g. Mona loves her dog.

loves(Mona, dog_of (Mona))

Note: We are allowed to relate sentences only.

So, we can say:

loves(Mona, dog_of (Mona)) Ù

loves(Mona, cat_of (Mona))

But not,

loves(Mona,

dog_of (Mona) Ù cat_of (Mona))

E.g. How about saying that Ahmed has a big nose?

Ahmed is an object and

nose_of (Ahmed)

is a function that constructs an object from the argument object.

Then, we can write:

big(nose_of (Ahmed))


First order logic1
First-Order Logic: ,

  • The language that we have described so far, consisting of atoms and the connectives (,,,,,) is typically called predicate logic.

  • To extend it to first-order logic, we need to add quantifiers.

  • The purpose of quantifiers is to allow us to say things about sets of objects.

  • To say that Heba loves everything we write:

    x. loves (Heba, x)

    We can think of  as a big conjunction. For example, if there are only three objects Heba, dog, and cat, what the above asserts is:

    loves (Heba, dog)  loves (Heba, cat)  loves (Heba, Heba)

  • To say that Hassan loves something we write:

    x. loves (Hassan, x)

    We can think of  as a big disjunction. For example, if there are only three objects as above, then what we are asserting is:

    loves (Hassan, dog)  loves (Hassan, cat)  loves (Hassan, Hassan)


Artificial intelligence

  • First Order Predicate Logic

    • enriched by variables, predicates, functions

    • quantifiers , 

      friends(father(david),father(andrew))

       Y friends(Y, petr)

       X likes(X,ice_cream)

       X  Y  Z parent(X,Y)  parent(X,Z)  siblings(Y,Z)


Reasoning about many objects at once
Reasoning about many objects at once

  • Variables: x, y, z, … can refer to multiple objects

  • New operators “for all” and “there exists”

    • Universal quantifier and existential quantifier

  • for all x: CompletelyWhite(x) => NOT(PartiallyBlack(x))

    • Completely white objects are never partially black

  • there exists x: PartiallyWhite(x) AND PartiallyBlack(x)

    • There exists some object in the world that is partially white and partially black


Practice converting english to first order logic
Practice converting English to first-order logic

  • “John has an umbrella”

  • there exists y: (Has(John, y) AND IsUmbrella(y))

  • “Anything that has an umbrella is not wet”

  • for all x: ((there exists y: (Has(x, y) AND IsUmbrella(y))) => NOT(IsWet(x)))

  • “Any person who has an umbrella is not wet”

  • for all x: (IsPerson(x) => ((there exists y: (Has(x, y) AND IsUmbrella(y))) => NOT(IsWet(x))))


More practice converting english to first order logic
More practice converting English to first-order logic

  • “John has at least two umbrellas”

  • there exists x: (there exists y: (Has(John, x) AND IsUmbrella(x) AND Has(John, y) AND IsUmbrella(y) AND NOT(x=y))

  • “John has at most two umbrellas”

  • for all x, y, z: ((Has(John, x) AND IsUmbrella(x) AND Has(John, y) AND IsUmbrella(y) AND Has(John, z) AND IsUmbrella(z)) => (x=y OR x=z OR y=z))


Even more practice converting english to first order logic
Even more practice converting English to first-order logic…

  • “Duke’s basketball team defeats any other basketball team”

  • for all x: ((IsBasketballTeam(x) AND NOT(x=BasketballTeamOf(Duke))) => Defeats(BasketballTeamOf(Duke), x))

  • “Every team defeats some other team”

  • for all x: (IsTeam(x) => (there exists y: (IsTeam(y) AND NOT(x=y) AND Defeats(x,y))))


Artificial intelligence

Reverse translation logic…

  • Translate the following into English.

  • x hesitates(x)  lost(x)

  • He who hesitates is lost.

  • x business(x)  like(x,Showbusiness)

  • There is no business like show business.

  • x glitters(x)  gold(x)

  • Not everything that glitters is gold.

  • x t person(x)  time(t)  canfool(x,t)

  • You can fool some of the people all the time.


Translating english to fol
Translating English to FOL logic…

Every gardener likes the sun.

x gardener(x)  likes(x,Sun)

You can fool some of the people all of the time.

x t person(x) time(t)  can-fool(x,t)

You can fool all of the people some of the time.

x t (person(x)  time(t) can-fool(x,t))

x (person(x)  t (time(t) can-fool(x,t)))

All purple mushrooms are poisonous.

x (mushroom(x)  purple(x))  poisonous(x)

No purple mushroom is poisonous.

x purple(x)  mushroom(x)  poisonous(x)

x (mushroom(x)  purple(x)) poisonous(x)

There are exactly two purple mushrooms.

x y mushroom(x)  purple(x)  mushroom(y)  purple(y) ^ (x=y)  z (mushroom(z)  purple(z))  ((x=z)  (y=z))

Clinton is not tall.

tall(Clinton)

X is above Y iff X is on directly on top of Y or there is a pile of one or more other objects directly on top of one another starting with X and ending with Y.

x y above(x,y) ↔ (on(x,y) z (on(x,z)  above(z,y)))

Equivalent

Equivalent


Resolution for first order logic
Resolution for first-order logic logic…

  • for all x: (NOT(Knows(John, x)) OR IsMean(x) OR Loves(John, x))

    • John loves everything he knows, with the possible exception of mean things

  • for all y: (Loves(Jane, y) OR Knows(y, Jane))

    • Jane loves everything that does not know her

  • What can we unify? What can we conclude?

  • Use the substitution: {x/Jane, y/John}

  • Get: IsMean(Jane) OR Loves(John, Jane) OR Loves(Jane, John)

  • Complete (i.e., if not satisfiable, will find a proof of this), if we can remove literals that are duplicates after unification

    • Also need to put everything in canonical form first


Properties of quantifiers
Properties of quantifiers logic…

  • x y is the same as yx

  • x y is the same as yx

  • x y is not the same as yxx y Loves(x,y)

    • “There is a person who loves everyone in the world” yx Loves(x,y)

    • “Everyone in the world is loved by at least one person”

  • Quantifier duality: each can be expressed using the other x Likes(x,IceCream) x Likes(x,IceCream) x Likes(x,Broccoli) xLikes(x,Broccoli)


Using fol
Using FOL logic…

  • Brothers are siblings

  •  x,y Brother(x,y)  Sibling(x,y)

  • One's mother is one's female parent

  •  m,c Mother(c) = m  (Female(m)  Parent(m,c))

  • “Sibling” is symmetric

  •  x,y Sibling(x,y)  Sibling(y,x)

  • A first cousin is a child of a parent’s sibling

  •  x,y FirstCousin(x,y)  p,ps Parent(p,x) Sibling(ps,p)  Parent(ps,y)


An example
An example logic…

  • Sameh is a lawyer.

  • Lawyers are rich.

  • Rich people have big houses.

  • Big houses are a lot of work.

  • We would like to conclude that Sameh’s house is a lot of work.

  • Natural languages are ambiguous so we can have different axiomatizations.


Axiomatization 1
Axiomatization 1 logic…

  • lawyer(Sameh)

  • x lawyer(x)  rich(x)

  • x rich(x)  y house(x,y)

  • x,y rich(x)  house(x,y)  big(y)

  • x,y ( house(x,y)  big(y)  work(y) )

  • 3 and 4, say that rich people do have at least one house and all their houses are big.

  • Conclusion we want to show:

    house(Sameh, S_house)  work(Sameh, S_house)

  • Or, do we want to conclude that John has at least one house that needs a lot of work? I.e.

  • y house(Sameh,y)  work(y)


Amir and the cat
Amir and the cat logic…

  • Everyone who loves all animals is loved by someone.

  • Anyone who kills an animal is loved by no one.

  • Mohamed loves all animals.

  • Either Mohamed or Amir killed the cat, who is named SoSo.

  • Did Amir kill the cat?