Planning. Search vs. planning STRIPS operators Partial-order planning. CS 561, Session

Similar documents
Outline. Planning. Search vs. Planning. Search vs. Planning Cont d. Search vs. planning. STRIPS operators Partial-order planning.

Introduction to Planning

Partial-Order Planning Algorithms

Logic in general. Inference rules and theorem proving

Plan-Space Search. Searching for a Solution Plan in a Graph of Partial Plans

In which we see how an agent can take advantage of the structure of a problem to construct complex plans of action.

Satisfiability Checking

196 Chapter 7. Logical Agents

Static Program Transformations for Efficient Software Model Checking

The Model Checker SPIN

DELAWARE MATHEMATICS CONTENT STANDARDS GRADES PAGE(S) WHERE TAUGHT (If submission is not a book, cite appropriate location(s))

COMPUTER SCIENCE TRIPOS

A Spectrum of Plan Justifications

Linear Programming Notes V Problem Transformations

Mathematics SL subject outline

Omega Automata: Minimization and Learning 1

Using Use Cases for requirements capture. Pete McBreen McBreen.Consulting

Reading is the process in which the reader constructs meaning by interacting with the text.

Future Value of an Annuity Sinking Fund. MATH 1003 Calculus and Linear Algebra (Lecture 3)

PDDL (Planning Domain Definition Language) Jan Hrnčíř A4M33PAH Tutorial

Reasoning Component Architecture

Model Checking: An Introduction

CS510 Software Engineering

Row Echelon Form and Reduced Row Echelon Form

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

Version Spaces.

Enforcing Security Policies. Rahul Gera

MATHEMATICS PLACEMENT

Announcements. Project status demo in class

Section 1.1 Real Numbers

Base Conversion written by Cathy Saxton

Mathematics. What to expect Resources Study Strategies Helpful Preparation Tips Problem Solving Strategies and Hints Test taking strategies

Scheduling Shop Scheduling. Tim Nieberg

Foundational Proof Certificates

Logical Agents. Explorations in Artificial Intelligence. Knowledge-based Agents. Knowledge-base Agents. Outline. Knowledge bases

Solutions of Linear Equations in One Variable

Regular Languages and Finite Automata

Semantic Description of Distributed Business Processes

4.1 INTRODUCTION TO THE FAMILY OF EXPONENTIAL FUNCTIONS

Artificial Intelligence

Lecture 13 of 41. More Propositional and Predicate Logic

Unit I. Introduction

MCS 563 Spring 2014 Analytic Symbolic Computation Wednesday 9 April. Hilbert Polynomials

Big Ideas in Mathematics

CORRELATED TO THE SOUTH CAROLINA COLLEGE AND CAREER-READY FOUNDATIONS IN ALGEBRA

ML for the Working Programmer

Lecture 2: Universality

Curriculum Map. Discipline: Computer Science Course: C++

Course Syllabus For Operations Management. Management Information Systems

24 Uses of Turing Machines

Coverability for Parallel Programs

Technical Writing Examples Plus A Few Tips

Algebra I Notes Relations and Functions Unit 03a

Factorizations: Searching for Factor Strings

Activity 1: Using base ten blocks to model operations on decimals

Policy Analysis for Administrative Role Based Access Control without Separate Administration

Thesis Statement & Essay Organization Mini-Lesson (Philosophy)

Arithmetic Coding: Introduction

CMPSCI 250: Introduction to Computation. Lecture #19: Regular Expressions and Their Languages David Mix Barrington 11 April 2013

Section 1.4 Place Value Systems of Numeration in Other Bases

LINEAR INEQUALITIES. less than, < 2x + 5 x 3 less than or equal to, greater than, > 3x 2 x 6 greater than or equal to,

5 Systems of Equations

NP-Completeness and Cook s Theorem

Algorithms, Flowcharts & Program Design. ComPro

KS3 Computing Group 1 Programme of Study hours per week

Some programming experience in a high-level structured programming language is recommended.

Handout #1: Mathematical Reasoning

Algebra 2 Notes AII.7 Functions: Review, Domain/Range. Function: Domain: Range:

Logic in Computer Science: Logic Gates

Precalculus REVERSE CORRELATION. Content Expectations for. Precalculus. Michigan CONTENT EXPECTATIONS FOR PRECALCULUS CHAPTER/LESSON TITLES

facultad de informática universidad politécnica de madrid

Math Content by Strand 1

Compound Inequalities. AND/OR Problems

Programming Languages

Course Outline Department of Computing Science Faculty of Science. COMP Applied Artificial Intelligence (3,1,0) Fall 2015

Increasing for all. Convex for all. ( ) Increasing for all (remember that the log function is only defined for ). ( ) Concave for all.

Current Standard: Mathematical Concepts and Applications Shape, Space, and Measurement- Primary

CS201: Architecture and Assembly Language

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Correlational Research

First-order logic. Chapter 8. Chapter 8 1

What Is Singapore Math?

Threat-Removal Strategies for Partial-Order Planning

Datavetenskapligt Program (kandidat) Computer Science Programme (master)

What is Visualization? Information Visualization An Overview. Information Visualization. Definitions

CSE 135: Introduction to Theory of Computation Decidability and Recognizability

TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.

Pushdown Automata. place the input head on the leftmost input symbol. while symbol read = b and pile contains discs advance head remove disc from pile

Algorithms are the threads that tie together most of the subfields of computer science.

A Numerical Study on the Wiretap Network with a Simple Network Topology

Modeling, Computers, and Error Analysis Mathematical Modeling and Engineering Problem-Solving

Section 3-7. Marginal Analysis in Business and Economics. Marginal Cost, Revenue, and Profit. 202 Chapter 3 The Derivative

MATH 132: CALCULUS II SYLLABUS

Regular Expressions and Automata using Haskell

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

Overview. Essential Questions. Precalculus, Quarter 4, Unit 4.5 Build Arithmetic and Geometric Sequences and Series

10CS35: Data Structures Using C

Software Development Process Models

How To Understand The Theory Of Computer Science

2 SYSTEM DESCRIPTION TECHNIQUES

Transcription:

Planning Search vs. planning STRIPS operators Partial-order planning CS 561, Session 22-23 1

What we have so far Can TELL KB about new percepts about the world KB maintains model of the current world state Can ASK KB about any fact that can be inferred from KB How can we use these components to build a planning agent, i.e., an agent that constructs plans that can achieve its goals, and that then executes these plans? CS 561, Session 22-23 2

Remember: Problem-Solving Agent tion Note: This is offline problem-solving. Online problem-solving involves acting w/o complete knowledge of the problem and environment CS 561, Session 22-23 3

Simple planning agent Use percepts to build model of current world state IDEAL-PLANNER: Given a goal, algorithm generates plan of action STATE-DESCRIPTION: given percept, return initial state description in format required by planner MAKE-GOAL-QUERY: used to ask KB what next goal should be CS 561, Session 22-23 4

A Simple Planning Agent function SIMPLE-PLANNING-AGENT(percept) returns an action static: KB, a knowledge base (includes action descriptions) p, a plan (initially, NoPlan) t, a time counter (initially 0) local variables:g, a goal current, a current state description TELL(KB, MAKE-PERCEPT-SENTENCE(percept, t)) current STATE-DESCRIPTION(KB, t) if p = NoPlan then G ASK(KB, MAKE-GOAL-QUERY(t)) p IDEAL-PLANNER(current, G, KB) if p = NoPlan or p is empty then action NoOp else action FIRST(p) p REST(p) TELL(KB, MAKE-ACTION-SENTENCE(action, t)) t t+1 return action CS 561, Session 22-23 5

Search vs. planning CS 561, Session 22-23 6

Search vs. planning CS 561, Session 22-23 7

Planning in situation calculus CS 561, Session 22-23 8

Basic representation for planning Most widely used approach: uses STRIPS language states: conjunctions of function-free ground literals (I.e., predicates applied to constant symbols, possibly negated); e.g., At(Home) Have(Milk) Have(Bananas) Have(Drill) goals: also conjunctions of literals; e.g., At(Home) Have(Milk) Have(Bananas) Have(Drill) but can also contain variables (implicitly universally quant.); e.g., At(x) Sells(x, Milk) CS 561, Session 22-23 9

Planner vs. theorem prover Planner: ask for sequence of actions that makes goal true if executed Theorem prover: ask whether query sentence is true given KB CS 561, Session 22-23 10

STRIPS operators Graphical notation: CS 561, Session 22-23 11

Types of planners Situation space planner: search through possible situations Progression planner: start with initial state, apply operators until goal is reached Problem: high branching factor! Regression planner: start from goal state and apply operators until start state reached Why desirable? usually many more operators are applicable to initial state than to goal state. Difficulty: when want to achieve a conjunction of goals Initial STRIPS algorithm: situation-space regression planner CS 561, Session 22-23 12

State space vs. plan space Search space of plans rather than of states. CS 561, Session 22-23 13

Operations on plans Refinement operators: add constraints to partial plan Modification operator: every other operators CS 561, Session 22-23 14

Types of planners Partial order planner: some steps are ordered, some are not Total order planner: all steps ordered (thus, plan is a simple list of steps) Linearization: process of deriving a totally ordered plan from a partially ordered plan. CS 561, Session 22-23 15

Partially ordered plans CS 561, Session 22-23 16

Plan We formally define a plan as a data structure consisting of: Set of plan steps (each is an operator for the problem) Set of step ordering constraints e.g., A B means A before B Set of variable binding constraints e.g., v = x where v variable and x constant or other variable Set of causal links e.g., A c B means A achieves c for B CS 561, Session 22-23 17

POP algorithm sketch CS 561, Session 22-23 18

POP algorithm (cont.) CS 561, Session 22-23 19

Clobbering and promotion/demotion CS 561, Session 22-23 20

Example: block world CS 561, Session 22-23 21

Example (cont.) CS 561, Session 22-23 22

Example (cont.) CS 561, Session 22-23 23

Example (cont.) CS 561, Session 22-23 24

Example (cont.) CS 561, Session 22-23 25