250 likes | 264 Views
This deri research seminar from 2004 explores the philosophical problems that arise in the field of artificial intelligence, such as representation of the world and the formalization of causality, ability, and knowledge. The seminar also discusses different formalisms and open problems in AI research.
E N D
DERI Research Seminar „Some philosophical problems from the standpoint of artificial intelligence“ – John McCarthy & Patrick J. Hayes, 1969 Uwe Keller
Overview • Motivation • Philosophical questions • Formalisms: Situation Calculus • Remarks & open problems • Discussion of literature DERI Research Seminar 03/2004
Motivation • A dream of CS researchers: Intelligent Agents • Requires … • General representationof the world in terms of which the inputs are interpreted • Commitment on: what is knowledge and how is it obtained? ► Some of the major traditional problems of philosophy arise in AI too! • More specifically: We want to build a program that … • decides what to do by inferring in a formal language that a certain strategy will achieve its assigned goal. ► Hence, we have to formalize the notions • causality (“causes”), ability (“can”) and knowledge (“knows”). DERI Research Seminar 03/2004
… Philosophical questions Adequate representation of the world „can“, „causes“, „knows“
Representation of the world • We have to decide … • What structure is the world to be regarded as having • How to represent information about … • the world & its laws of change in the machine • Adequacy of such a representation ? Def.: A representation is metaphysically adequate if the world could have that form without contradicting the facts of the aspect of reality that interests us. • Examples (for different aspects of reality) … • Representation of the world as a collection of particles interacting through forces between each pair of particles • Representation of the world as a giant quantum-mechanical wave function • Representation as a system of interacting discrete automata DERI Research Seminar 03/2004
Representation of the world (II) Def.: A representation is epistemologically adequate for a person or machine if it can used be practically to express the facts that one actually has about the world. ►None of the given examples are adequate for representing e.g. „John is at home“ or „dogs chase cats“! • Ordinary language … • is obviously adequate to express facts that people communicate to each other in ordinary language, but … • is not adequate e.g. for expressing what people know about how to recognize a particular face. • Later: • Give an epistemologically adequate formal representation of common-sense facts for causality, ability and knowledge DERI Research Seminar 03/2004
Automaton representation Let S be a system of interacting discrete finite automata: S = (Subautomata, Signals, Statefunctions, Outputfunctions) • Statefunction: ai(t+1) = Ai(ai(t), s1(t), …, sk(t)), t=0,1, … (time) • Outputfunction: si(t+1) = Si(ai(t)) • Input/Output of S are defined as expected • Simplest examples of systems that interact over time; determ. • Automaton representation: Consider the world as such an S • Difficulties with this model in some situations: • Huge number of states, e.g. representing all the knowledge of a person • Geometric info about objects are hard to represent • System of fixed interconnections is inadequate • Most serious objection: Not epistemologically adequate: We don‘t ever know a person well enough to list all his internal states. The kind of information we do have about him has to be represented in some other way („know“) • But: We may use it for concepts of „can“, „causes“ and „believes“ DERI Research Seminar 03/2004
Notion of „can“ • Let S be a system of automata (SOA) without external inputs, p be a subautomata with m output signals. • Let S* be the SOA which is obtained by disconnecting these m signals from p and replacing them by external input lines • Then • The new system S* has always the same set of states as S • Let πbe a condition on the state - „the box is under the bananas“ • We‘ll write can(p,π,s) („subautomaton p can bring about the condition π in state s“) … • if there is a sequence of outputs of S* which that will eventually put S into a state a‘ that satisfies π(a‘) • In other words: In determining what p can achieve, we consider the effects of sequences of ist actions, quite apart form the conditions what it actually will do! • This seems to be in line with our common-sense notion of „can“ • But needs further elaboration for actual coverage of common-sense notion and for practical purposes! DERI Research Seminar 03/2004
Notion of „can“ (II) • Now suppose that S admits external inputs. • Then, there are two possible definitions of „can“: • Assert that can(p,π,s) if p can achieve πregardless of what signals appear on external inputs („cana“) • Note, that we‘re not requiring here that p have any way of knowing what the external inputs were • p can achieve a goal if the goal would be achieved for arbitrary inputs by some automaton put in place of p („canb“) • Counter-intuitive, since „can“ only depends on the place instead of the function of automaton p DERI Research Seminar 03/2004
Notion of „causes“ • Besides the explication of „can“, the automata representation of the world is very suited for defining notions of causalty: • causes(p,π,s) = subautomaton p caused the condition πin s • causes(p,π,s) if changing the output of p would prevent π. DERI Research Seminar 03/2004
… Formalisms for proving that a strategy will achieve a goal Situation, fluent, future operator action, strategy, result of a strategy & knowledge
Situation • Definition • A situation s is the complete state of the universe at an instant of time. • Sit := {s | s is situation} • Since the universe is too large, we‘ll never describe the universe completely, but give only facts • These facts will be used to deduce further facts about that situation, future situations, situations that persons can bring about • Requires also to consider hypothetical situations • These situations can‘t be completely described, but with sufficient details for some purposes. (Jones-sell-car) DERI Research Seminar 03/2004
Fluents • Idea: Partial description of a situation s • Definition • A fluent f is a function with domain Sit • Range of f • {true,false}: propositional fluent • Sit: situational fluent • Fluents are often the values of functions • raining(x) is a fluent f s.t. raining(x)(s) is true iff. it is raining at the place x in situation s • Also written as: raining(x,s), … DERI Research Seminar 03/2004
Causality • Make assumptions about causality by means of a fluent F(π) (where π is a fluent itself!) • F(π,s) asserts that the situation s will be followed (after some time) by a situation that satisfies the fluent π • Example: • All x, All p [ raining(x) and at(p,x) and outside(x) -> F(wet(p))] • Expression of physical laws, … • Other useful operators • F(π,s): For some situation s‘ in the future of s holds π(s‘) • G(π,s): For all situation s‘ in the future of s holds π(s‘) • P(π,s): For some situation s‘ in the past of s holds π(s‘) • H(π,s): For all situation s‘ in the past of s holds π(s‘) DERI Research Seminar 03/2004
Causality (II) • It seems also useful to to define the situational fluent next(π) • The next situation s‘ in the future of s for which π(s‘) holds • If there is no such fluent (not F(π,s)) then next(π) is undefined DERI Research Seminar 03/2004
Actions • Fundamental role in our study of actions: • Situational fluent: result(p,σ, s) where … • p:Person, σ: Action/Strategy, s:Situation • The value of result(p,σ, s) is the situation that results when p carries out σ, starting in situation s • When σ is nonterminating in that context, this value is undefined • With this fluent, we can express certain laws of ability: • e.g.: has(p,k,s) and fits(k,sf) and at(p,sf,s) -> open(sf, result(p,open(sf,k)),s)) DERI Research Seminar 03/2004
Strategies • Actions can be combined into strategies • Simplest case: Finite sequence of actions • More general: ALGOL-like compound statement • containing actions written in the form of procedure calling assignement statements and conditional GOTO statements • Example strategy: begin face(South) n:=0; b: if n = 17 then goto a; walk-a-block;n:=n+1; goto b; a: turn-right; c: walk-a-block; if name-on-street-sign <> ‚Chestnut Street‘ then goto c; end; DERI Research Seminar 03/2004
Strategies applied (I) • In order to apply mathematical theory of computation (Manna) • Write program differently: replace each occurrence of an action A by an assignement statement „s:=result(p,A,s)“ • For our example strategy this means … • Try to show: John can go home, provided that he initially is in his office begin s:= result(p, face(South), s); n:=0; b: if n = 17 then goto a; s:=result(p,walk-a-block,s);n:=n+1; goto b; a: s:=result(p,turn-right,s); c: s:=result(p,walk-a-block,s); if name-on-street-sign <> ‚Chestnut Street‘ then goto c; end; DERI Research Seminar 03/2004
Strategies applied (II) Ex s0 ( at(John, office(John), s0) and q1(0, result(John, face(South),s0)) ) -> Ex n,s ( q1(n,s) and if n = 17 then q2(result(John, walk-a-block, result(John,turn-right,s))) else not q1(n+1, result(John, walk-a-block, s))) or Ex s ( q2(s) and if name-on-street-sign <> ‚Chestnut Street‘ then not q2(result(John,walk-a-block, s)) else at(John, home(John), s)) • Given • initial condition: at(John, office(John), s0) • final condition: at(John, home(John), s) • and our strategy (program) S • The Theory of Manna allows us to generate a sentence W of FOL • Proving W will show that S terminates and that when it terminates s will satisfy at(John, home(John), s) begin s:= result(p, face(South), s); n:=0; b: if n = 17 then goto a; s:=result(p,walk-a-block,s);n:=n+1; goto b; a: s:=result(p,turn-right,s); c: s:=result(p,walk-a-block,s); if name-on-street-sign <> ‚Chestnut Street‘ then goto c; end; DERI Research Seminar 03/2004
Strategies applied (III) • Needed facts for proving W • Facts of geography • Fluent „name-on-street-sign“ will have the value ‚ChS‘ at that point • Facts giving the effects of action A expressed as predicates about result(p,A,s) deducible from sentences about s • Axiomschema for induction Ex s0 ( at(John, office(John), s0) and q1(0, result(John, face(South),s0)) ) -> Ex n,s ( q1(n,s) and if n = 17 then q2(result(John, walk-a-block, result(John,turn-right,s))) else not q1(n+1, result(John, walk-a-block, s))) or Ex s ( q2(s) and if name-on-street-sign <> ‚Chestnut Street‘ then not q2(result(John,walk-a-block, s)) else at(John, home(John), s)) DERI Research Seminar 03/2004
… Remarks & open problems in extenting the discussed formalism
result(p,o,s) … • Approximate character of result(p,o,s) • Using the situational fluent result(p,o,s) has 2 main advantages over the can(p,π,s) from section 2: • permits more compact and transparent sentences • lends itself to the application of the mathematical theory of computation • However • it‘s only an approximation to say that an action (other than that which will actually occur) leads to a definite situation (Spontaneous, emotional decision on actions in the real-world vs. artifical operations under partial knowledge) DERI Research Seminar 03/2004
Possible meanings for „can“ • A computer program can readily be given much more powerful introspection than a person has (self-simulation possible!) • Various possible notions of „can(Program, Cond)“ for a computer program: • The is a subprogram S and room for it in the memory which would achieve Cond if it where in the memory and control were transfered to S. No assertion is made that Program knows S or even knows that S exists • S exists as above and that S will achieve Cond follows from information in memory according to a proof that Program is capable of checking • Program‘s standard problem-solving procedure will find S if achieving Cond is ever accepted as a subgoal DERI Research Seminar 03/2004
Frame Problem • As often for formalisms that „hypothetically“ execute State-Transitions: • What changes and what stays unchanged? • Explicit unchanged statements might be needed to proof something. This can be a tedious task DERI Research Seminar 03/2004