Schematic operators. Principles of AI Planning 4. PDDL. Schematic operators: example. Bernhard Nebel and Robert Mattmüller October 23rd, 2017

Similar documents
Principles of AI Planning

Planning. CS 510: Intro to AI October 19 th 2017

Principles of Knowledge Representation and Reasoning. Principles of Knowledge Representation and Reasoning. Lecturers. Lectures: Where, When, Webpage

Principles of Knowledge Representation and Reasoning

Game Theory. 1. Introduction. Bernhard Nebel and Robert Mattmüller. Summer semester Albert-Ludwigs-Universität Freiburg

Game Theory. 0. Organizational Matters. Bernhard Nebel and Robert Mattmüller. Summer semester Albert-Ludwigs-Universität Freiburg

Description Logic. Agam Sarup Biplab Kar Hitesh Kewalramani

REASONS FOR THE DEVELOPMENT

Multiagent Classical Planning

Towards an Intelligent Planning Knowledge Base Development Environment

Algebra I: A Fresh Approach. By Christy Walters

Reasoning for Ontology Engineering and Usage

Lecturers. Multi-Agent Systems. Exercises: Dates. Lectures. Prof. Dr. Bernhard Nebel Room Dr. Felix Lindner Room

Algebra I: A Fresh Approach. By Christy Walters

CS472 Foundations of Artificial Intelligence. Final Exam December 19, :30pm

Introduction to Alloy

Algebra Date Lesson Independent Work Computer Tuesday, Introduction (whole class) Problem with Dice

Automated Agent Decomposition for Classical Planning

USER PROGRAMMABLE CONTROL SCRIPTS

FOOD INTAKE MONITOR. Hardware and Software User s Manual DOC-047 Rev 3.0. Copyright 2009 All Rights Reserved

A THESIS SUBMITTED TO THE FACULTY OF GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA

FixedWingLib CGF. Realistic CGF Aircraft Entities ware-in-the-loop Simulations

SAT and SMT-based Interactive Configuration for Container Vessel Stowage Planning

Discrete Math 2/10/19

Comp115: Databases. Relational Algebra

D-Case Modeling Guide for Target System

Algebra Date Lesson Independent Work Computer Tuesday, Introduction (whole class) Problem with Dice

CS 461: Database Systems. Relational Algebra. supplementary material: Database Management Systems Sec. 4.1, 4.2 class notes

Pressure Vessel Calculation for Yavin Thruster

Evaluation of the Performance of CS Freiburg 1999 and CS Freiburg 2000

Vibration of floors and footfall analysis

Hitting Your Marks on the Drag Strip

For IEC use only. Technical Committee TC3: Information structures, documentation and graphical symbols

Chapter 13. Factorial ANOVA. Patrick Mair 2015 Psych Factorial ANOVA 0 / 19

Workshop 1: Bubbly Flow in a Rectangular Bubble Column. Multiphase Flow Modeling In ANSYS CFX Release ANSYS, Inc. WS1-1 Release 14.

Assignment for Next Class. Information Systems ISM Put In Nonsense, Get Out Chaos. System and Modeling Concepts. Components of a System.

Tutorial on Flange Qualification using CAEPIPE

SIL Safety Manual. ULTRAMAT 6 Gas Analyzer for the Determination of IR-Absorbing Gases. Supplement to instruction manual ULTRAMAT 6 and OXYMAT 6

Partial Stroke Testing. A.F.M. Prins

Boyle s Law: Pressure-Volume Relationship in Gases. PRELAB QUESTIONS (Answer on your own notebook paper)

Operation of WinVent 4.0

Generating None-Plans in Order to Find Plans 1

WiiMaze Design Document March 13, 2008

Using MATLAB with CANoe

ORC Software Module for Performance Curve Calculation (PCS) Specifications

Navy Guidance and Tips for Using DOEHRS-IH Ventilation NAVY & MARINE CORPS PUBLIC HEALTH CENTER

Using AI Planning Techniques to Automatically Generate Image Processing Procedures: A Preliminary Report

Allocation of referees, hours and pistes User manual of Engarde - August, 2013

16. Studio ScaleChem Calculations

Integrating and querying data with AskOmics

OPTIMIZATION OF A WAVE CANCELLATION MULTIHULL SHIP USING CFD TOOLS

RUNNING MAMS IN GAMS: STEPS TO FOLLOW

Autodesk Moldflow Communicator Process settings

InstrumentationTools.com

Motion Graphing Packet

Algebra Date Lesson Independent Work Computer Tuesday, Introduction (whole class) Problem with Dice

SEAWAT Viscosity and Pressure Effects. Objectives Learn how to simulate the effects of viscosity and how pressure impacts the fluid density in SEAWAT.

CS 4649/7649 Robot Intelligence: Planning

Tying Knots. Approximate time: 1-2 days depending on time spent on calculator instructions.

ASCE D Wind Loading

Please review the following for basic information regarding the Fantasy Hockey Geek website and program.

Continuous Gas Analysis. ULTRAMAT 6, OXYMAT 6 Safety Manual. Introduction 1. General description of functional safety 2

Calibration and validation of an air quality finite element model around an electric power plant in Gran Canaria island

Computational Models: Class 6

Lab 3 Introduction to Quantitative Analysis: Pumps and Measurements of Flow

Building System Dynamics Models

GMS 10.0 Tutorial SEAWAT Viscosity and Pressure Effects Examine the Effects of Pressure on Fluid Density with SEAWAT

PSY201: Chapter 5: The Normal Curve and Standard Scores

Project Incorporation of Sea Level Rise City of Newport Beach Approach for Balboa Islands, City of Newport Beach, California

FEATURES. Features. UCI Machine Learning Repository. Admin 9/23/13

Determination of the Design Load for Structural Safety Assessment against Gas Explosion in Offshore Topside

The Powerful Sealing Calculation

An STPA Tool. Dajiang Suo, John Thomas

Special Documentation Proline Promass 500 Coriolis Flowmeter Modbus RS485 Petroleum Application Package

COMP 406 Lecture 05. Artificial. Fiona Yan Liu Department of Computing The Hong Kong Polytechnic University

A PHASE-AMPLITUDE ITERATION SCHEME FOR THE OPTIMIZATION OF DETERMINISTIC WAVE SEQUENCES

swmath - Challenges, Next Steps, and Outlook

Steltronic Focus. User Manual Manage Focus Tournaments

A Proof-Producing CSP Solver 1

The Game of Yinsh (Phase II)

National Geographic Kids Everything Birds Of Prey: Swoop In For Seriously Fierce Photos And Amazing Info By Blake Hoena

CHEMICAL ENGINEERING LABORATORY CHEG 239W. Control of a Steam-Heated Mixing Tank with a Pneumatic Process Controller

Training for Proofmaster M/S/Automat. Functional principle for airtightness testing

Run-a-Way Speed and Ballast Drag Length Calculator Tools User Guide

[A] 7 4 [B] 7 45 [C] 7 14 [D] [1] p. [3] 4. Solve. 2 x = 8 [B] 1 3

Introductory Lab: Vacuum Methods

Service & Support. Questions and Answers about the Proof Test Interval. Proof Test According to IEC FAQ August Answers for industry.

NCSS Statistical Software

New IBIS Techniques for Modeling Complex IO Cadence Webinar March 23, 2005 Donald Telian

100-Meter Dash Olympic Winning Times: Will Women Be As Fast As Men?

Law 16 Last Hour Time Lost Calculation. Toronto Cricket Umpires' and Scorers' Association

C o d i n g f o r i n t e r a C t i v e d i g i t a l M e d i a

Reliability of Safety-Critical Systems Chapter 3. Failures and Failure Analysis

LEE COUNTY WOMEN S TENNIS LEAGUE

G53CLP Constraint Logic Programming

Special Documentation Proline Promass 300 Modbus RS485. Petroleum Application Package MANUAL

Oil Calculator Pro User Manual 2014

MPO BICYCLE ADVISORY COMMITTEE (BAC)

Preparation for Salinity Control ME 121

Meter Data Distribution Market Trials

Transcription:

Principles of AI Planning 4. Albert-Ludwigs-Universität Freiburg Bernhard Nebel and Robert Mattmüller October 23rd, 2017 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 2 / 25 : example operator drive_car_from_to(x,y 1,y 2 : Description of state variables and in terms of a given finite set of objects. Analogy: propositional logic vs. predicate logic corresponds to the x {car1,car2}, y 1 {Freiburg,Strasbourg}, y 2 {Freiburg,Strasbourg} in(x,y 1,in(x,y 2 in(x,y 1 Planners take input as schematic and translate them into (ground. This is called grounding. in(car1, Freiburg, in(car1, Strasbourg in(car1, Freiburg, in(car1, Strasbourg, in(car1, Freiburg in(car1, Strasbourg, in(car2, Freiburg, in(car2, Strasbourg in(car2, Freiburg, in(car2, Strasbourg, in(car2, Freiburg in(car2, Strasbourg, plus four that are never applicable (inconsistent change set! and can be ignored, like in(car1, Freiburg, in(car1, Freiburg in(car1, Freiburg. October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 3 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 4 / 25

: quantification Existential quantification (for formulae only Finite disjunctions ϕ(a 1 ϕ(a n represented as x {a 1,...,a n } : ϕ(x. Universal quantification (for formulae and effects Finite conjunctions ϕ(a 1 ϕ(a n represented as x {a 1,...,a n } : ϕ(x. x {A,B,C} : in(x,freiburg is a short-hand for in(a, Freiburg in(b, Freiburg in(c, Freiburg. October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 5 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 6 / 25 : the Planning Domain Definition Language : domain files used by almost all implemented systems for deterministic planning supports a language comparable to what we have defined above (including schematic and quantification A domain file consists of (define (domain DOMAINNAME a :requirements definition (use :strips :typing by default syntax inspired by the Lisp programming language: e.g. prefix notation for formulae (and (or (on A B (on A C (or (on B A (on B C (or (on C A (on A B definitions of types (each parameter has a type definitions of predicates definitions of October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 7 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 8 / 25

: blocks world (with hand in : operator definition Note: Unlike in the previous chapter, here we use a variant of the blocks world domain with an explicitly modeled gripper/hand. (define (domain BLOCKS (:requirements :strips :typing (:types block (:predicates (on?x - block?y - block (ontable?x - block (clear?x - block (holding?x - block (:action OPERATORNAME list of parameters: (?x - type1?y - type2?z - type3 precondition: a formula <schematic-state-var> (and <formula>... <formula> (or <formula>... <formula> (not <formula> (forall (?x1 - type1...?xn - typen <formula> (exists (?x1 - type1...?xn - typen <formula> October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 9 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 10 / 25 effect: <schematic-state-var> (not <schematic-state-var> (and <effect>... <effect> (when <formula> <effect> (forall (?x1 - type1...?xn - typen <effect> (:action stack :parameters (?x - block?y - block :precondition (and (holding?x (clear?y :effect (and (not (holding?x (not (clear?y (clear?x (on?x?y October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 11 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 12 / 25

: problem files A problem file consists of (define (problem PROBLEMNAME declaration of which domain is needed for this problem definitions of objects belonging to each type definition of the initial state (list of state variables initially true definition of goal states (a formula like operator precondition (define (problem example (:domain BLOCKS (:objects a b c d - block (:init (clear a (clear b (clear c (clear d (ontable a (ontable b (ontable c (ontable d (:goal (and (on d c (on c b (on b a October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 13 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 14 / 25 The Fast Downward Planner The Fast Downward Planner Fast Downward is the state-of-the-art planner, usable both for research and applications. Fast Downward is available at http://www.fast-downward.org/ Main developers: Malte Helmert Gabi Röger Erez Karpas Installation: Follow instructions at http://www.fast-downward.org/ ObtainingAndRunningFastDownward Jendrik Seipp Silvan Sievers Florian Pommerening Running: Follow instructions at http://www.fast-downward.org/plannerusage October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 15 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 16 / 25

run of Fast Downward plan found by Fast Downward #./fast-downward.py --plan-file plan.txt \ domain.pddl problem.pddl --search "astar(blind(" INFO Running search. Solution found! Plan length: 6 step(s. Expanded 85 state(s. Search time: 0s # cat plan.txt (pick-up b (stack b a (pick-up c (stack c b (pick-up d (stack d c ; cost = 6 (unit cost October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 17 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 18 / 25 Editor... in the cloud : blocks world in In case you are looking for a decent editor: Check out the editor in the cloud: http://editor.planning.domains/ The website also includes a built-in solver: http://solver.planning.domains/... and an API + domain repository: http://api.planning.domains/ (define (domain BLOCKS (:requirements :strips :typing (:types block (:predicates (on?x - block?y - block (ontable?x - block (clear?x - block (holding?x - block October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 19 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 20 / 25

(:action pick-up :parameters (?x - block :precondition (and (clear?x (ontable?x :effect (and (not (ontable?x (not (clear?x (not (holding?x (:action put-down :parameters (?x - block :precondition (holding?x :effect (and (not (holding?x (clear?x (ontable?x October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 21 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 22 / 25 (:action stack :parameters (?x - block?y - block :precondition (and (holding?x (clear?y :effect (and (not (holding?x (not (clear?y (clear?x (on?x?y (:action unstack :parameters (?x - block?y - block :precondition (and (on?x?y (clear?x :effect (and (holding?x (clear?y (not (clear?x (not (not (on?x?y October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 23 / 25 October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 24 / 25

(define (problem example (:domain BLOCKS (:objects a b c d - block (:init (clear a (clear b (clear c (clear d (ontable a (ontable b (ontable c (ontable d (:goal (and (on d c (on c b (on b a October 23rd, 2017 B. Nebel, R. Mattmüller AI Planning 25 / 25