Presentation – John Mc. Carthy

Download Report

Transcript Presentation – John Mc. Carthy

The Impact of John McCarthy on the
Field of
Artificial Intelligence
Peter Tonner
Context and Other Important Researchers
Programs with Common Sense
Recursive Functions
– Lisp
• Philosophical Problems from the Standpoint of
Artificial Intelligence
• Epistemological Problems of Artificial Intelligence
– Epistemology and Situation Calculus
– Circumscription
John McCarthy
• 1955 Develop the
phrase “Artificial
• 1960 First LISP
• 1971 Turing Award
• 2001 Professor
Emeritus of Computer
Science at Stanford
Turing Award History
• Prize value
– Original Prize: $25,000
– Intel Sponsorship (2002): $100,000
– Google Sponsorship (2007): $250,000
Context of AI Research circa 1970
• Turing Test - Alan
• General Problem Solver
- Allen Newell and
Herbert Simon
Computing Machinery and Intelligence
- Alan Turing
• Turing Test
– Define Intelligence as:
• Actions that are indistinguishable from known
intelligent beings, i.e. humans
• Side steps philosophical arguments
• Turing predicts intelligent computing in 50
years (1950)
A Guide to the General Problem Solver
-Newell and Simon (1957)
• General mechanisms utilized in problem
• Built off the Logic Theory Machine
• Designed to cover
– theorem proving
– geometric problems
– chess playing
• Suffered from combinatorial explosion
• Led to the program SOAR
McCarthy’s Perspective
“I think the best hope for human-level AI is logical
AI, based on the formalizing of commonsense
knowledge and reasoning in mathematical logic.”
– John McCarthy
• Problems in AI
– Knowledge Representation
– Problem Solving
• Solutions from Philosophy
– Hierarchy of data
– Generalization of solution finding
Programs with Common Sense (1959)
• “ A program has common sense if it automatically
deduces for itself a sufficiently wide class of
immediate consequences of anything it is told and
what it already knows” – John McCarthy
• Outlines the Advice Taker
– Undertake and solve problems on level of a human
• First major AI paper for McCarthy
• Introduction to Predicate (Situational) Calculus
What is an Intelligent System?
• Core Features of Intelligent Systems:
– All behaviors represented by the system, can create
arbitrary automata or program in a language
– Interesting changes in behavior must be expressible
in a simple way
– Nearly all aspects of behavior must be improvable,
even the improving mechanism itself
– There must be a concept of partial success and failure
rather than a binary representation
– Create subroutines which form new base units
Giving Instructions
• Computer
– Imperative sentences
• Human or the Advice Taker
– Declarative and Imperative Sentences
• Imperative sentences
– “Punch the keys for god’s sake!”
• Declarative sentences
– “You’re the man now dog.”
Advantages of Instruction Types
• Imperative Sentences:
– A procedure of imperatives is carried out faster
– No previous knowledge of the machine needs to be
• Declarative Sentences:
– Use of previous knowledge is acceptable
– Order is not as important as in imperative sentences,
can have afterthoughts
– Previous state is less important so allows for less need
of instructor to know previous state
Immediate Deduction Routine
• Given a set of premises and finds the set of
immediate conclusions
• Not heuristic based, entirely logical
• Intelligent behavior -> proper use of the IDR
• EX:
at(I, desk)
at(x,y), at(y,z) -> at(x,y)
-------------------------------at(I, universe)
want(have(I, icecream))
have(I,price_of(icecream)) ->can(buy(I, icecream))
at(I,home) -> can(go(home, store, walking)
------do(go(home, store, walking))
do(go(store, home, walking))
do(devour(I, icecream))
Sources of Propositions
• Actions are guided by goals and desires
– EX: want(at(I,x))
• want(have(I, icecream))
• System starts with known general solutions
– EX: want(at(I,x)) -> do(observe_location(I))
• Machine memory stores past solution strategies
– Must be reasonably general to allow for wide problem
solving and constitute common sense
want(have(I,x)) -> do(go(current_location(),store,walking)
Problem Generalization
• want(at(I,x))
– general goal proposition
– this should point to previously successful solutions
– determine possible transportation solutions
• walking
• driving
• flying
• new generalizations must be formed after
completing tasks
– these would then be stored for later usage
Recursive Functions of Symbolic
Expressions and Their Computation by
Machine, Part I (1960)
LISP programming language
LISt Processor
List structure for data
Garbage Collection
Goals of LISP
• Writing a compiler to compile LISP programs into
machine language.
• Writing a program to check proofs in a class of formal
logical systems.
• Writing programs for formal differentiation and
• Writing programs to realize various algorithms for
generating proofs in predicate calculus.
• Making certain engineering calculations whose
results are formulas rather than numbers.
• Programming the Advice Taker system.
Data Representation
• Word := atomic data
– address and
• Cycles not permitted
– value CAN be linked
multiple times
More on Data Representation
• Figure A) ((A.B)(C(E.F))
• Figure B) (A,(B,C),D)
• Ends of list contain NIL
Advantages of Lists
• Solves the problem of dynamic memory usage
– does not need fixed lengths at compile time
• Registers that are not needed can be recycled
to the free memory list
– blocks of memory that are freed will have non
uniform size and are harder to allocate
• A sub-expression of many expressions need
only be stored once
Free Storage List
• contains all registers not filled with values
• special word FREE points to the top of this list
• adding new data
– take the node stored in FREE
– set FREE equal to next node
• population and repopulation of this list is
done automatically
Garbage Collection through the Free
Storage List
• Garbage collection routine will search the tree
of accessible nodes
• Nodes that are accessed have their address
set to negative
• Any node not set this way is collected
LISP Machines
• Built specifically for
• Bypass the
restrictions of
existing hardware
• Manufactured by
Symbolics and Lisp
Machines, inc.
– both spinoffs from
the MIT AI lab
Philosophical Problems from the
Standpoint of Artificial Intelligence (1969)
• Analyzes the link between philosophical and
AI problems
– questions of knowledge representation
• Provides a system for representing the known
• Presents a formal language for task
What is an Intelligent System?
Part Deux
• An intelligent agent :
– has an adequate model of the world
– can answer questions from this model
– can gather information from external sources
– can perform tasks in the world as permitted
physically and guided by its goals
Representations of the World
• Metaphysically Adequate:
– No contradictions of known laws
– EX: the world as a collection of particles
– EX: the world as a giant quantum-mechanical
wave function
• Epistemologically Adequate:
– No contradictions to an entity’s perspective
– Common Language + Mathematical Language + …
Epistemology and Situation Calculus
Knowledge and Ability
• Complete state of the universe at an instant of
• Represented as “facts”
– these can be used to deduce a cascade of more
• Represents actual and theoretical situations
• Sit: the set of all situations
• Domain: Sit
• Range
– [True, False] : Propositional Fluent
– Sit: Situational Fluent
• Provides a conditional to analyze state of situation
• Allows a program to query the state of a situation
• EX
at(p,x,s) AND raining(x,s)
• Special fluent to represent cause and effect
– F(N,s) := the situation s will be followed at some point in
time a situation that satisfies the fluent N
• Physical Law of Gravity:
– h = h0 + v0 * (t – t0 ) - .5g * (t – t0 )2
• Epistemological Law of Gravity
falling(b) AND t > 0 AND t > 0 AND h = height(b) AND
v = velocity(b) AND h + v*t - .5gt 2 > 0 AND time = t’
F(time = t + t’ AND falling(b) AND height = h + vt - .5gt 2 )
Actions and Strategies
• Actions : unit of change that creates a new
• Strategy
– combination of actions
– introduces general programming techniques
• loops
• flow control
Knowledge and Ability
idea-of-combination(p,sf,s) == combination(sf)?
• What does it mean to know the value of a
• One value, two Objects
• Critical for ability reasoning
The Frame Problem
• EX
– An agent decides to use a phone to call a friend
• Assumption: the phone is still present after looking up the
• After and actions
– must assert that fluents of a situation have not
– With n actions and m fluents
• n*m possible assertions
• Solution: Introduce a Frame
– fluents are attached to frame
• actions are modified to update all fluents that it changes
Epistemological Problems of Artificial
Intelligence (1977)
• Further extends the concepts of epistemology
• Not concerned with the design of heuristics
for search spaces
• New concept: Circumscription
• Problem– “Not all human reasoning can be translated into
deduction in some formal system of mathematical
• Circumscription
– the missing mode of deduction
– things are expected unless otherwise specified
– creates a list of conjectures that may not be
universally true
– provide a framework for common sense reasoning
More on Circumscription
• EX: Missionaries and Cannibals:
– Boat that fits two people
– 3 missionaries and 3 cannibals
– number of cannibals must never be larger than the number of
• Without Circumscription:
– are there oars with the boat?
– is there a bridge a few miles down?
– etc
• Circumscription
– assumes all needed information is given
– if there were significant issues with the boat, they would be
Open Problems
• Converting commonsense into a science
• Precise specification needed to model the
– theories of the universe are still being developed
– forced to use best fit theories
• Game of Life example:
– design the game of life with the ability to reason
– would it be able to determine it’s own physical
configuration is the same as the game of life?
Later work of John McCarthy
• Continued formalization of common sense
and circumscription
• Later papers cover topics in free will of robots
with intelligence
• The robot and the baby
– science fiction short story
– proposes questions about whether designed
intelligent machines can have emotions
• Programs with Common Sense (1959)
• Recursive Functions of Symbolic Expressions
and Their Computation by Machine, Part I
• Philosophical Problems from the Standpoint of
Artificial Intelligence (1969)
• Epistemological Problems of Artificial
Intelligence (1977)
Other Good Sources
• McCarthy’s website
• Douglas Hofstadter
– Gödel, Escher, Bach: An Eternal Golden Braid
– Common Lisp Open Code Collection
– Practical Common Lisp