Situation Calculus

Total Page:16

File Type:pdf, Size:1020Kb

Situation Calculus Institute for Software Technology Situation Calculus Gerald Steinbauer Institute for Software Technology Gerald Steinbauer Situation Calculus - Introduction 1 Institute for Software Technology Organizational Issues • Dates – 05.10.2017 8:45-11:00 (HS i12) lecture and first assignment – 12.10.2017 8:45-11:00 (HS i12) lecture and programming assignment – 11.10.2017 18:00-18:45 (HS i11) practice – 18.10.2017 18:00-18:45 (HS i11) practice and solution for first assignment – 16.10.2017 12:00 (office IST) submission first assignment – 09.11.2016 23:59 (group SVN) submission programming assignment Gerald Steinbauer Situation Calculus - Introduction 2 Institute for Software Technology Agenda • Organizational Issues • Motivation • Introduction – Brief Recap of First Order Logic (if needed) • Situation Calculus (today) – Introduction – Formal Definition – Usage • Programming with Situation Calculus (next week) – Implementation – Domain Modeling Gerald Steinbauer Situation Calculus - Introduction 3 Institute for Software Technology Literature “Knowledge in Action” “Artificial Intelligence: A by Raymond Reiter Modern Approach” MIT Press by Stuart Russel amd Peter Norvig Prentice Hall Gerald Steinbauer Situation Calculus - Introduction 4 Institute for Software Technology Motivation What is Situation Calculus good for? Gerald Steinbauer Situation Calculus - Introduction 5 Institute for Software Technology There is nothing permanent except change. Heraclitus of Ephesus, 535–c. 475 BC Gerald Steinbauer Situation Calculus - Introduction 6 Institute for Software Technology Perception-Decision-Execution Gerald Steinbauer Situation Calculus - Introduction 7 Institute for Software Technology Dealing with Multiple Worlds Gerald Steinbauer Situation Calculus - Introduction 8 Institute for Software Technology Belief Management Gerald Steinbauer Situation Calculus - Introduction 9 Institute for Software Technology Brief Recap First Order Logic Gerald Steinbauer Situation Calculus - Introduction 10 Institute for Software Technology The Situation Calculus • is a methodology to reason about actions and change • it allows deductive reasoning on • how to behave • what are the consequences • proposed by John McCarthy (1963) • further developed by Raymond Reiter and others • originally used for database transactions (1995) • uses second-order logic (Reiter 2001) • modeling of dynamic systems (e.g., robots, plants, …) • basis for several (action) programming languages (e.g. Golog, Yagi) Gerald Steinbauer Situation Calculus - Introduction 11 Institute for Software Technology Properties of the Situation Calculus • Advantages • allows for reasoning about actions and change • uses the foundations of logic • allows for testing and proving of properties • is a solution to some fundamental problems of AI (e.g. frame problem) • Drawbacks • based on second-order logic • domain modeling is complex and error prune • real implementations are somehow fuzzy • computational expensive (in particular if you do it wrong) Gerald Steinbauer Situation Calculus - Introduction 12 Institute for Software Technology Building Blocks Domain Dependent Fluents Objects Situations Actions The green building blocks are different sorts in the second order logic. The blue building block is used to retrieve properties about the world. Gerald Steinbauer Situation Calculus - Introduction 13 Institute for Software Technology States • abstraction of the world (temporal, situation) • Electrical Engineering or Computer Science • several applications of states • Deterministic Finite Automaton • protocols, parser • model checking, testing submission signup pass A Q,, ,q0, F q0 q1 q2 q30 no submission not pass Gerald Steinbauer Situation Calculus - Introduction 14 Institute for Software Technology Situations • inductively defined as term • a constant symbol S0 denotes the initial situation (nothing happened so far) • a binary function symbol do:actionssitationssituations • situations can be interpreted as sequences of actions • do(a,s) performs action a in situation s • do(a,s) adds action a to sequence represented by s • binary predicate symbol :situationsituation ss’ denotes that s is a proper subsequence of s’ Gerald Steinbauer Situation Calculus - Introduction 15 Institute for Software Technology Sates versus Situations • situations are different to states • they contain a history of what happened so far • snapshots of properties of the world are retrieved by fluents, i.e. which predicates hold in a situation • two situations are different if their sequence is different • the “state” of fluents may be the same Gerald Steinbauer Situation Calculus - Introduction 16 Institute for Software Technology Situation Tree an do(an,S0) a3 a2 an a1 S0 a3 a2 do(an,do(a1,S0)) a1 an a3 a do(a1,S0) 2 a1 Gerald Steinbauer Situation Calculus - Introduction 17 Institute for Software Technology Example – Dress Up Gerald Steinbauer Situation Calculus - Introduction 18 Institute for Software Technology Actions • actions are the only entities which change something (i.e., situations or truth values of fluents) • actions are represented as function symbols (can be used as terms) • actions have a unique name, if the names are different the actions perform different things • actions can have parameters of arity n, e.g. moveto(object, room) or sleep() • an action a is executed in a situation s by the function s’=do(a,s) leading to a new situation s’ • an action has a precondition – in which situation an action is possible to be executed Gerald Steinbauer Situation Calculus - Introduction 19 Institute for Software Technology Action Precondition Axioms • take care if an action a is executable • we introduce a binary predicate symbol Poss:actionsituation • is a sentence in the form Poss(A(x1,…,xn),s)A(x1,…,xn,s) • A is a formula with free variables x1,…,xn and s • e.g. • axioms have to be defined for all actions Gerald Steinbauer Situation Calculus - Introduction 20 Institute for Software Technology Fluents • used to catch the dynamic world • fluents are related to states • represent relations that change from situation to situation • we call them relational fluents Gerald Steinbauer Situation Calculus - Introduction 21 Institute for Software Technology Relational Fluents • represents a relation (or properties) of objects in a situation s • it is represented by a predicate symbol with arity n+1 in the form F(x1,…,xn,s) • F:(objectsactions)nsituation→{T,F} • it represents the truth value of a relation or property in a certain situation • examples: at(x,y,s) or broken(x,s) Gerald Steinbauer Situation Calculus - Introduction 22 Institute for Software Technology Frame Problem • a important (fundamental) problem of AI • formulated by John McCarhty and Patrick Hayes • related to the abstract modeling of dynamic domains • how to efficiently specify what is changed by an action and what remains the same • sloppy justification: logic has no memory • we need frame axioms • example: the color of an object does not change if it is lifted, color(x,c,s)→color(x,c,do(lift(x),s)) Gerald Steinbauer Situation Calculus - Introduction 23 Institute for Software Technology Successor State Axioms (1) • are a solution to the Frame Problem • naively we have to specify all effect axioms (because of the frame problem) + a. φF (x1,…,xn, y1,…,ym,s)→F(x1,…,xn,do(A(y1,…,ym),s)) - b. φF (x1,…,xn, y1,…,ym,s)→¬F(x1,…,xn,do(A(y1,…,ym),s)) + - • φF and φF formulas with free variables x1,…,xn; y1,…,ym and s • example: fragile(x,s)→broken(x,do(drop(x),s)) • we use the Causal Completeness Assumption • a and b specify all casual laws related to A and F • we are looking for a more compact representation relating situations Gerald Steinbauer Situation Calculus - Introduction 24 Institute for Software Technology Successor State Axioms (2) • we start with a reasonable assumption - • F(x1,…,xn,s)˄¬F(x1,…,xn,do(A(y1,…,ym),s))→φF (x1,…,xn,y1,…,ym,s) - • F(x1,…,xn,s)˄¬φF (x1,…,xn,y1,…,ym,s)→F(x1,…,xn,do(A(y1,…,ym),s)) [PFA] + • ¬F(x1,…,xn,s)˄F(x1,…,xn,do(A(y1,…,ym),s))→φF (x1,…,xn,y1,…,ym,s) + • ¬F(x1,…,xn,s)˄¬φF (x1,…,xn,y1,…,ym,s)→¬F(x1,…,xn,do(A(y1,…,ym),s)) [NFA] • lead to 2 x #actions x #fluents frame axioms • fragile(x,s)→broken(x,do(drop(x),s)) [PEA] • ¬broken(x,s)˄¬fragile(x,s)→¬broken(x,do(drop(x),s)) [NFA] Gerald Steinbauer Situation Calculus - Introduction 25 Institute for Software Technology Successor State Axioms (3) • the general solution • positive and negative normal form effect axioms + • → F(t1,…,tn,do(α,s)) + • (y1,…,ym)[a=α˄x=t ˄ ] → F(x1,…,xn,do(a,s)) + • → F(x1,…,xn,do(a,s)) +(1) +(k) • ( ˅…˅ ) → F(x1,…,xn,do(a,s)) + • (x1,…,xn,a,s) → F(x1,…,xn,do(a,s)) [PNF] - • (x1,…,xn,a,s) → ¬F(x1,…,xn,do(a,s)) [NNF] • unique name axiom for actions • A(x)B(y) and A(x1,…,xn)=A(y1,…,yn) → x1=y1˄…˄ xn=yn • if T entails ¬(x,a,s). +(x,a,s)˄ -(x,a,s) F(x,do(a,s)) +(x,a,s)˅F(x,s)˄¬ -(x,a,s) [SSA-RF] Gerald Steinbauer Situation Calculus - Introduction 26 Institute for Software Technology Successor State Axioms (4) • now we need only #actions + #fluents axioms Gerald Steinbauer Situation Calculus - Introduction 27 Institute for Software Technology Summary Successor State Axioms • provides a solution to the Frame Problem • yields simple compact axioms • does not solve the qualification and ramification problem • length of successor state axioms ~ #actions change a fluent • assumption: only a few actions change a fluent Gerald Steinbauer Situation Calculus - Introduction 28 Institute for Software Technology Initial Situation • S0 is a special constant of sort situation • it represents the initial situation • DS0 is the initial database • it comprises sentences describing the initial theory of the world, i.e. fluents that hold in S0 • S0 is the only situation mentioned • DS0 must not mention Poss, do or • it may comprise non-situation terms • examples: location(robot,office1,S0 ), mountain(MtEverest) Gerald Steinbauer Situation Calculus - Introduction 29 Institute for Software Technology Foundational Axioms for Situations • ensure some properties of situations • situations are understood as sequence of actions • abbreviation: do(an,(…do(a1,S0)) = do([a1,an],S0) • s’ s denotes that s’ is a subsequence of s 1.
Recommended publications
  • Mccarthy Variations in a Modal Key ∗ Johan Van Benthem A,B
    CORE Metadata, citation and similar papers at core.ac.uk Provided by Elsevier - Publisher Connector Artificial Intelligence 175 (2011) 428–439 Contents lists available at ScienceDirect Artificial Intelligence www.elsevier.com/locate/artint McCarthy variations in a modal key ∗ Johan van Benthem a,b, a University of Amsterdam, Institute for Logic, Language and Computation (ILLC), P.O. Box 94242, Amsterdam, GE, Netherlands b Stanford, United States article info abstract Article history: We take a fresh look at some major strands in John McCarthy’s work from a logician’s Available online 3 April 2010 perspective. First, we re-analyze circumscription in dynamic logics of belief change under hard and soft information. Next, we re-analyze the regression method in the Situation Keywords: Calculus in terms of update axioms for dynamic–epistemic temporal logics. Finally, we Circumscription draw some general methodological comparisons between ‘Logical AI’ and practices in Fixed-point logic Structural rules modal logic, pointing at some creative tensions. Belief change © 2010 Elsevier B.V. All rights reserved. Situation Calculus Temporal logic Regression method Dynamic epistemic logic 1. Introduction John McCarthy is a colleague whom I have long respected and admired. He is a truly free spirit who always commu- nicates about issues in an open-minded way, away from beaten academic tracks and entrenched academic ranks. Each encounter has been a pleasure, from being involved with his creative Ph.D. students in Logical AI (each a remarkable char- acter) to his lively presence at our CSLI workshop series on Logic, Language and Computation – and most recently, his participation in the Handbook of the Philosophy of Information [1].
    [Show full text]
  • A Logic-Based Calculus of Events
    10 A Logic-based Calculus of Events ROBERT KOWALSKI and MAREK SERGOT 1 introduction Formal Logic can be used to represent knowledge of many kinds for many purposes. It can be used to formalize programs, program specifications, databases, legislation, and natural language in general. For many such applications of logic a representation of time is necessary. Although there have been several attempts to formalize the notion of time in classical first-order logic, it is still widely believed that classical logic is not adequate for the representation of time and that some form of non-classical Temporal Logic is needed. In this paper, we shall outline a treatment of time, based on the notion of event, formalized in the Horn clause subset of classical logic augmented with negation as failure. The resulting formalization is executable as a logic program. We use the term ‘‘event calculus’’ to relate it to the well-known ‘‘situation calculus’’ (McCarthy and Hayes 1969). The main difference between the two is conceptual: the situation calculus deals with global states whereas the event calculus deals with local events and time periods. Like the event calculus, the situation calculus can be formalized by means of Horn clauses augmented with negation by failure (Kowalski 1979). The main intended applications investigated in this paper are the updating of data- bases and narrative understanding. In order to treat both cases uniformly we have taken the view that an update consists of the addition of new knowledge to a knowledge base. The effect of explicit deletion of information in conventional databases is obtained without deletion by adding new knowledge about the end of the period of time for which the information holds.
    [Show full text]
  • Reconciling Situation Calculus and Fluent Calculus
    Reconciling Situation Calculus and Fluent Calculus Stephan Schiffel and Michael Thielscher Department of Computer Science Dresden University of Technology stephan.schiffel,mit @inf.tu-dresden.de { } Abstract between domain descriptions in both calculi. Another ben- efit of a formal relation between the SC and the FC is the The Situation Calculus and the Fluent Calculus are successful possibility to compare extensions made separately for the action formalisms that share many concepts. But until now two calculi, such as concurrency. Furthermore it might even there is no formal relation between the two calculi that would allow to formally analyze the relationship between the two allow to translate current or future extensions made only for approaches as well as between the programming languages one of the calculi to the other. based on them, Golog and FLUX. Furthermore, such a formal Golog is a programming language for intelligent agents relation would allow to combine Golog and FLUX and to ana- that combines elements from classical programming (condi- lyze which of the underlying computation principles is better tionals, loops, etc.) with reasoning about actions. Primitive suited for different classes of programs. We develop a for- statements in Golog programs are actions to be performed mal translation between domain axiomatizations of the Situ- by the agent. Conditional statements in Golog are composed ation Calculus and the Fluent Calculus and present a Fluent of fluents. The execution of a Golog program requires to Calculus semantics for Golog programs. For domains with reason about the effects of the actions the agent performs, deterministic actions our approach allows an automatic trans- lation of Golog domain descriptions and execution of Golog in order to determine the values of fluents when evaluating programs with FLUX.
    [Show full text]
  • Reconciling the Event Calculus with the Situation Calculus
    1 In The Journal of Logic Programming, Special Issue: reasoning about action and change, 31(1-3), Pages 39-58, 1997. Reconciling the Event Calculus with the Situation Calculus Robert Kowalski and Fariba Sadri Department of Computing, Imperial College, 180 Queen's Gate, London SW7 2BZ Emails: [email protected] [email protected] Abstract In this paper, to compare the situation calculus and event calculus we formulate both as logic programs and prove properties of these by reasoning with their completions augmented with induction. We thus show that the situation calculus and event calculus imply one another. Whereas our derivation of the event calculus from the situation calculus requires the use of induction, our derivation of the situation calculus from the event calculus does not. We also show that in certain concrete applications, such as the missing car example, conclusions that seem to require the use of induction in the situation calculus can be derived without induction in the event calculus. To compare the two calculi, we need to make a number of small modifications to both. As a by-product of these modifications, the resulting calculi can be used to reason about both actual and hypothetical states of affairs, including counterfactual ones. We further show how the core axioms of both calculi can be extended to deal with domain or state constraints and certain types of ramifications. We illustrate this by examples from legislation and the blocks world. Keywords: temporal reasoning, event calculus, situation calculus, actual and hypothetical events 1 Introduction In this paper we revisit our earlier comparison of the situation calculus and event calculus [11] using a more general approach to the representations of situations, in the spirit of Van Belleghem, Denecker and De Schreye [20, 21].
    [Show full text]
  • Actions and Other Events in Situation Calculus
    ACTIONS AND OTHER EVENTS IN SITUATION CALCULUS John McCarthy Computer Science Department Stanford University Stanford, CA 94305 [email protected] http://www-formal.stanford.edu/jmc/ Abstract vention one situation at a time. Then we offer a general viewpoint on the sit- This article presents a situation calculus for- uation calculus and its applications to real malism featuring events as primary and the world problems. It relates the formalism of usual actions as a special case. Events that [MH69] which regards a situation as a snap- are not actions are called internal events and shot of the world to situation calculus theo- actions are called external events. The effects ries involving only a few fluents. of both kinds of events are given by effect axioms of the usual kind. The actions are assumed to be performed by an agent as is 1 Introduction: Actions and other usual in situation calculus. An internal event events e occurs in situations satisfying an occurrence assertion for that event. This article emphasizes the idea that an action by an A formalism involving actions and internal agent is a particular kind of event. The idea of event events describes what happens in the world is primary and an action is a special case. The treat- more naturally than the usual formulations ment is simpler than those regarding events as natural involving only actions supplemented by state actions. constraints. Ours uses only ordinary logic without special causal implications. It also The main features of our treatment are as follows. seems to be more elaboration tolerant.
    [Show full text]
  • Beyond Minimizing Change
    From: AAAI-97 Proceedings. Copyright © 1997, AAAI (www.aaai.org). All rights reserved. eyond imizing C Tom Costello Dept of Computer Science, Stanford, CA 94305 costelloQcs.Stanford.EDU Abstract Problem, the Stanford Murder Mystery, the Ferry Boat Problem, and many other problems were posed as counter examples to proposed solutions. This led researchers to look for ways to validate their theories. One of the first ways was proposed by Lin and Shoham (1995), where they proposed reducing a non-monotonic theory to a monotonic theory to show correctness. Lifschitz and Gelfond suggested reducing reasoning about action to well understood models like automata, and developed a language A well suited to describing automata as they arise in action. This work has been greatly extended, and many solutions have been shown equivalent under certain assumptions. Kartha studied the relationship between various dif- ferent proposals, and showed that under certain syn- tactic assumptions, that many solutions were equiva- lent to those solutions based on A. Lifschitz has considered certain properties, like stability under definitional extension, and restricted monotonicity, that he claims all approaches to the frame problem should obey. Sandewall (Sandewall 1994) proposed justifying non-monotonic treatments by reducing them to dynamical systems. We propose another way of studying non-monotonic treatments of actions, though the methodology is not restricted to actions. We consider what elaborations, Hntroduetion or changes, the treatment allows, in terms of conjoining information. Reasoning about action has been one of the favorite In this paper we shall keep to as simple a language domains for non-monotonic reasoning. One of the as possible.
    [Show full text]
  • A Formal Model of Opportunism Based on Situation Calculus
    A Formal Model of Opportunism Based on Situation Calculus Jieting Luo1,*, Frank Dignum2, and John-Jules Meyer3 1,2,3Utrecht University, PO Box 80089, 3508 TB, Utrecht, The Netherlands {J.Luo,F.P.M.Dignum,J.J.C.Meyer}@uu.nl Abstract. In social interactions, it is common for one party to possess more or better knowledge about a specific transaction than others. In this situation, par- ties who are more knowledgeable might perform opportunistic behavior to oth- ers, which is against others’ interest thus leading to relationship deterioration. In this study, we propose a formal model of opportunism based on situation calcu- lus. Specifically, knowledge asymmetry and intention are modeled by adapting the standard possible-world model semantics, and value opposition is specified through defining a value evaluation function on situation based on the perspec- tive of agents. We illustrate how to use our formal model through a simple ex- ample. By this model, we show that the judgment of opportunism is subjective since it depends on from which perspective agents evaluate the situation over their value, and it is not the intention, but the knowledge, of opportunistic agents to cause harm to others. Further study on its emergence and constraint mechanism can be carried out based on the formal model. Keywords: Opportunism, Value, Situation Calculus, Formalization 1 Introduction Consider a common social interaction. A seller is trying to sell a cup to a buyer. Since it is known by the seller beforehand that the cup is actually broken (e.g. there is a crack at the bottom of the cup), he makes a rule that the cup cannot be returned in any situations.
    [Show full text]
  • Chapter 2 & 3 from Kelly, Ryan, Asynchronous Multi-Agent
    Chapter 2 Background This chapter covers general background material for the thesis and provides a brief overview of the related literature. We defer more specific technical details and discussion of related work to the individual chapters that follow, where it can be presented in the appropriate context. Readers familiar with the situation calculus are encouraged to briefly review this chapter. While it does not present any new results, it does introduce some novel notation and definitions which will be needed later in the thesis. They are introduced here to maintain consistency of the presentation. The introductory material on the Mozart programming platform may also be helpful. We begin by introducing the base language of the situation calculus in Sec- tion 2.1, illustrated using examples from the \cooking agents" domain. Section 2.2 introduces the Golog family of programming languages, which are the standard for- malism for representing complex tasks in the situation calculus. Reasoning about the knowledge of an agent, or epistemic reasoning, is covered in Section 2.3. Related formalisms for reasoning about action and change are briefly discussed in Section 2.4. Finally, Section 2.5 introduces the Mozart programming system, which will be used to implement our multi-agent Golog variant. Basic familiarity with formal logic is assumed throughout; readers requiring background on such material may find a gentle introduction in [43] and a more detailed treatment in [31]. 2.1 The Situation Calculus The situation calculus is a powerful formalism for describing and reasoning about dynamic worlds. It was first introduced by McCarthy and Hayes [70] and has since been significantly expanded and formalised [85, 92].
    [Show full text]
  • A Situation Calculus Perspective?
    Logic, Probability and Action: A Situation Calculus Perspective? Vaishak Belle University of Edinburgh, UK & Alan Turing Institute, UK [email protected] Abstract. The unification of logic and probability is a long-standing concern in AI, and more generally, in the philosophy of science. In essence, logic provides an easy way to specify properties that must hold in every possible world, and probability allows us to further quantify the weight and ratio of the worlds that must satisfy a property. To that end, numerous developments have been under- taken, culminating in proposals such as probabilistic relational models. While this progress has been notable, a general-purpose first-order knowledge represen- tation language to reason about probabilities and dynamics, including in contin- uous settings, is still to emerge. In this paper, we survey recent results pertaining to the integration of logic, probability and actions in the situation calculus, which is arguably one of the oldest and most well-known formalisms. We then explore reduction theorems and programming interfaces for the language. These results are motivated in the context of cognitive robotics (as envisioned by Reiter and his colleagues) for the sake of concreteness. Overall, the advantage of proving results for such a general language is that it becomes possible to adapt them to any special-purpose fragment, including but not limited to popular probabilistic relational models. 1 Introduction The unification of logic and probability is a long-standing concern in AI [72], and more generally, in the philosophy of science [31]. The motivation stems from the observation that (human and agent) knowledge is almost always incomplete.
    [Show full text]
  • Incomplete Causal Laws in the Situation Calculus Using Free Fluents
    Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence (IJCAI-16) Incomplete Causal Laws in the Situation Calculus Using Free Fluents Marcelo Arenas, Jorge A. Baier, Juan S. Navarro Sebastian Sardina Universidad Catolica´ de Chile RMIT University, Australia marenas, jabaier, juansnn @ing.puc.cl [email protected] { } Abstract theories (GATs) [De Giacomo and Levesque, 1999], allow both the representation of the occlusion principle [Sandewall, We propose a simple relaxation of Reiter’s basic 1994] and non-deterministic actions. An important limitation action theories, based on fluents without succes- of GATs is that they do not come with a complete regres- sor state axioms, that accommodates incomplete- sion procedure. The Probabilistic Situation Calculus [Pinto ness beyond the initial database. We prove that fun- et al., 2000] is major variant of Reiter’s BATs which can rep- damental results about basic action theories can be resent non-deterministic and probabilistic actions, requiring fully recovered and that the generalized framework different foundational axioms, a different meta-theory, and allows for natural specifications of various forms of a re-work of important theorems. Finally, Delgrande and incomplete causal laws. We illustrate this by show- Levesque [2013] propose treatment a for non-deterministic ing how the evolution of incomplete databases, actions that builds on an epistemic view of the Situation Cal- guarded action theories, and non-deterministic ac- culus, which also requires different foundational axioms. tions can be conveniently specified. In this work, we show how non-determinism in causal laws can be accommodated in the Situation Calculus by simply al- 1 Introduction lowing some fluents to have no successor state axiom.
    [Show full text]
  • Representing Knowledge Within the Situation Calculus Using Interval-Valued Epistemic Fluents
    Representing Knowledge within the Situation Calculus using Interval-valued Epistemic Fluents John Funge Microcomputer Research Lab Intel Corporation www.cs.toronto.edu/ ˜funge Abstract The ability of interval arithmetic to provide a finite (and succinct) way to represent uncertainty about a large, possibly uncountable, set of alternatives turns out to be useful in building “intelligent” autonomous agents. In particular, consider the two important issues of reasoning and sensing in intelligent control for autonomous agents. Developing a principled way to combine the two raises complicated issues in knowledge representation. In this paper we describe a solution to the problem. The idea is to incorpo- rate interval arithmetic into the situation calculus. The situation calculus is a well known formalism for describing changing worlds using sorted first-order logic. It can also be used to describe how an agent’s knowledge of its world changes. Potentially, this provides a sound basis for incorporating sensing into logic programming. Previous work has relied on a possible worlds approach to knowledge. This leads to an elegant mathematical specification language. Unfortunately, there have been no proposals on how to implement the approach. This is because the number of possible worlds is potentially uncountable. We propose an alternative formalization of knowledge within the situation calculus. Our approach is based on intervals. The advantage is that it is straightforward to implement. Moreover, we can prove that it is sound and (sometimes) complete with respect to the previous possible worlds approach. 1 Introduction The work described in this paper grew out of an attempt to build an “intelligent” autonomous agent.
    [Show full text]
  • Situation Calculuscalculus
    SituationSituation CalculusCalculus Introduction to Artificial Intelligence Cse 150 CSE150, Spring 2007 Borrowed/edited from David Kriegman, slides TThhee MMididteterrmm • Will cover Chapters 1-9 • Yes, it will graded on a curve OtherOther NewsNews • Charles Elkan will lecture on Tuesday • What he covers most likely won’t be on the midterm, but will be on the final! CSE150, Spring 2007 Borrowed/edited from David Kriegman, slides WWhheerree hhaavvee wwee bbeeeenn?? • Solving problems by search • Game playing • Using logic to make inferences WWhheerree aarree wwee ggooiinngg?? • Planning • A bit of uncertainty and probabilistic reasoning CSE150, Spring 2007 Borrowed/edited from David Kriegman, slides TThhisis lelecctuturree • Situation Calculus • Planning RReeaaddiinngg • Chapter 10 CSE150, Spring 2007 Borrowed/edited from David Kriegman, slides PPlalannnniningg Find a sequence of operator instances that transform an initial state into a state in which the goal is satisfied. Issues: 1. Representation of states 2. Representation of actions 3. Representation of goals 4. Representation of plans CSE150, Spring 2007 Borrowed/edited from David Kriegman, slides WumpusWumpus world:world: BuildingBuilding anan agentagent usingusing FOLFOL • The knowledge base will start with axioms and definitions about the wumpus world • Since the agent is perceiving and acting over time, we can introduce the notion of time as an object in the database. • Suppose a wumpus-world agent is using a FOL KB and perceives a smell and a breeze (but no glitter) at t=5: • We can assert this percept (add it to the KB) using: Tell(KB, Percept([Smell,Breeze,None], 5)) CSE150, Spring 2007 Borrowed/edited from David Kriegman, slides WumpusWumpus world:world: BuildingBuilding anan agentagent usingusing FOLFOL • We can ask the KB what action to do: Ask(KB, ∃a Action(a,5)) • The FOL system would then have to infer whether the KB entails any particular actions for t=5.
    [Show full text]