Introduction to Planning Han Yu University of Central Florida.

Slides:



Advertisements
Similar presentations
Informed search algorithms
Advertisements

Algorithm Design Techniques
Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
An Introduction to Artificial Intelligence
Ali Husseinzadeh Kashan Spring 2010
CS6800 Advanced Theory of Computation
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Multi-Objective Optimization NP-Hard Conflicting objectives – Flow shop with both minimum makespan and tardiness objective – TSP problem with minimum distance,
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
Part2 AI as Representation and Search
Computing & Information Sciences Kansas State University Lecture 20 of 42 CIS 530 / 730 Artificial Intelligence Lecture 20 of 42 Introduction to Classical.
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
Linkage Problem, Distribution Estimation, and Bayesian Networks Evolutionary Computation 8(3) Martin Pelikan, David E. Goldberg, and Erick Cantu-Paz.
Fast Planning through Planning Graph Analysis By Jan Weber Jörg Mennicke.
A GENETIC ALGORITHM APPROACH TO SPACE LAYOUT PLANNING OPTIMIZATION Hoda Homayouni.
Date:2011/06/08 吳昕澧 BOA: The Bayesian Optimization Algorithm.
Artificial Intelligence Chapter 11: Planning
1 DCP 1172 Introduction to Artificial Intelligence Chang-Sheng Chen Topics Covered: Introduction to Planning (generalized state-space search) Means-Ends.
Artificial Intelligence Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni.
Chapter 14 Genetic Algorithms.
Evolutionary Computation Application Peter Andras peter.andras/lectures.
Genetic Algorithms Nehaya Tayseer 1.Introduction What is a Genetic algorithm? A search technique used in computer science to find approximate solutions.
PLANNING Partial order regression planning Temporal representation 1 Deductive planning in Logic Temporal representation 2.
Genetic Programming.
Genetic Algorithms: A Tutorial
Genetic Algorithm.
Cristian Urs and Ben Riveira. Introduction The article we chose focuses on improving the performance of Genetic Algorithms by: Use of predictive models.
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
Introduction to Job Shop Scheduling Problem Qianjun Xu Oct. 30, 2001.
CS 484 – Artificial Intelligence1 Announcements Lab 3 due Tuesday, November 6 Homework 6 due Tuesday, November 6 Lab 4 due Thursday, November 8 Current.
Lecture 8: 24/5/1435 Genetic Algorithms Lecturer/ Kawther Abas 363CS – Artificial Intelligence.
Computing & Information Sciences Kansas State University Wednesday, 15 Oct 2008CIS 530 / 730: Artificial Intelligence Lecture 20 of 42 Wednesday, 15 October.
More on Heuristics Genetic Algorithms (GA) Terminology Chromosome –candidate solution - {x 1, x 2,...., x n } Gene –variable - x j Allele –numerical.
Fuzzy Genetic Algorithm
1 “Genetic Algorithms are good at taking large, potentially huge search spaces and navigating them, looking for optimal combinations of things, solutions.
Genetic Algorithms Siddhartha K. Shakya School of Computing. The Robert Gordon University Aberdeen, UK
CPS 270: Artificial Intelligence Planning Instructor: Vincent Conitzer.
1 Search vs. planning Situation calculus STRIPS operators Search vs. planning Situation calculus STRIPS operators.
C OMPARING T HREE H EURISTIC S EARCH M ETHODS FOR F UNCTIONAL P ARTITIONING IN H ARDWARE -S OFTWARE C ODESIGN Theerayod Wiangtong, Peter Y. K. Cheung and.
1 Genetic Algorithms and Ant Colony Optimisation.
CPS 570: Artificial Intelligence Planning Instructor: Vincent Conitzer.
Genetic Algorithms Przemyslaw Pawluk CSE 6111 Advanced Algorithm Design and Analysis
1 Chapter 16 Planning Methods. 2 Chapter 16 Contents (1) l STRIPS l STRIPS Implementation l Partial Order Planning l The Principle of Least Commitment.
Chapter 12 FUSION OF FUZZY SYSTEM AND GENETIC ALGORITHMS Chi-Yuan Yeh.
Biologically inspired algorithms BY: Andy Garrett YE Ziyu.
AI Lecture 17 Planning Noémie Elhadad (substituting for Prof. McKeown)
Waqas Haider Bangyal 1. Evolutionary computing algorithms are very common and used by many researchers in their research to solve the optimization problems.
Ferdowsi University of Mashhad 1 Automatic Semantic Web Service Composition based on owl-s Research Proposal presented by : Toktam ghafarian.
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
Genetic Algorithms. Overview “A genetic algorithm (or GA) is a variant of stochastic beam search in which successor states are generated by combining.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
Genetic Algorithm(GA)
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
Chapter 14 Genetic Algorithms.
Genetic Algorithms.
Evolutionary Algorithms Jim Whitehead
USING MICROBIAL GENETIC ALGORITHM TO SOLVE CARD SPLITTING PROBLEM.
L9. Planning Agents L7_exAnswer and explanation Review
Introduction Contents Sungwook Yoon, Postdoctoral Research Associate
L11. Planning Agents and STRIPS
Planning Problems On(C, A)‏ On(A, Table)‏ On(B, Table)‏ Clear(C)‏
Multi-Objective Optimization
EE368 Soft Computing Genetic Algorithms.
Traveling Salesman Problem by Genetic Algorithm
Presentation transcript:

Introduction to Planning Han Yu University of Central Florida

Outline What is planning? Formal definitions of planning problems Basic planning algorithms Recent development

What is Planning? Planning is a search problem that requires to find an efficient sequence of actions that transform a system from a given starting state to the goal state

What’s Given? Initial state of the problem Goal state of the problem A finite set of actions: pre-conditions: a finite set of conditions for the action to be performed post-conditions: a finite set of conditions that will be changed after the action is performed cost

What’s Output? A sequence of actions that meet the following criteria every action matches the current system state can transform system from initial state to goal state the total cost of the actions is below a specified value

Planning as a Real-World Problem Planning problem has a wide range of applications in the real world planning in daily life game world workflow management

Planning a Trip Begin PreparationAirline Reservation Hotel ReservationRental Car Reservation Confirm ReservationsEnd

Towers of Hanoi

Problem Analysis Optimal solution contains 2 n -1 actions, where n is the number of disks Up to 6 possible actions in each system state The upper bound on search space to find an optimal solution will be 6 (2 n -1)

Sliding-Tile Puzzle

Planning in Workflow Management Start Assembly Examine Order Gather Components Install Motherboard Test Install Internal Disk Install Network Card Assembly Box and Motherboard Plug in CD Insert Modem Plug in Battery Install Video Card End Assembly

Partial-Order Plan versus Total-Order Plan Partial-order plan consists partially ordered set of actions sequence constraints exist on these actions plan generation algorithm can be applied to transform partial-order plan to total-order plan Total-order plan consists totally ordered set of actions

Partial-Order Plan Start Get brush Get ladder Paint ceilingFinish

Total-Order Plan StartGet brushGet ladderPaint ceilingFinish StartGet brushGet ladderPaint ceilingFinish

Features of Planning Problems Large search space Action is associated with system states Restrictions on the action sequence Valid solution may not exist Optimization requirement

STRIPS Planning System A tuple T = (P, O, I, G), where P is a finite set of ground literals, the conditions O is a finite set of operators I is the initial state, a subset of P G is the goal state, a subset of P

STRIPS Operators Each operator O has the following attributes PC, a set of ground literals, defines the precondition of the operator D, a set of ground literals, defines the conditions that will be removed after the operation is executed A, a set of ground literals, defines the conditions that will be added after the operation is executed C, the cost of the operation

A Simple Example - Blocks World BA C C B A Initial State Goal State On(C, A) Clear(Fl) On(A, Fl) Clear(B) On(B, Fl) Clear(C) On(A, B) On(B, C) On(C, Fl) Clear(A) Clear(Fl)

Graphical Representation of Initial State Start T Clear(Fl)On(A, Fl)On(B, Fl)On(C, A)Clear(B)Clear(C)

Graphical Representation of Goal State Nil finish On(A, B)On(B, C)On(C, Fl)Clear(A)Clear(Fl)

Block World - Operator Move(x, y, z) Move block x that is above y to above z PC: On(x,y), Clear(x), Clear(z) D: Clear(z), On(x, y) A: On(x,z), Clear(y), Clear(Fl)

Graphical Representation of Operator A Clear(y)On(x, z) Move(x, y, z) On(x, y)Clear(x)Clear(z) Operator PC Clear(Fl)

Forward Chaining Search from the initial state Expand the search tree by finding the set of all applicable operators from the current state applicable means the precondition of the operator is a subset of current state Update current state For every state that is reached, record the shortest path (or path with lowest cost) from the initial state to this state If the goal state is reached, stop the algorithm

Forward Chaining On(C, A) Clear(Fl) On(A, Fl) Clear(B) On(B, Fl) Clear(C) On(C, Fl) Clear(Fl) On(A, Fl) Clear(B) On(B, Fl) Clear(C) Clear(A) Move(C, A, Fl) Move(B, Fl, C) On(B, C) Clear(Fl) On(C, A) Clear(B) On(A, Fl)

Backward Chaining Search backward from the goal state Expand the search tree by finding the set of all applicable operators that can reach the current state applicable means set A of the operator is a subset of current state Update the state If the initial state is reached, stop the algorithm The solution is a partial-ordered plan Constraints in action ordering may be violated

Backward Chaining On(A, B) On(B, C) On(C, Fl) Clear(A) Clear(Fl) Move(A, Fl, B) On(B, C) On(C, Fl) Clear(A) Clear(Fl) On(A, Fl) Clear(B)

Recent Developments Plan Reuse Graphplan Problem-specific planning Evolutionary computation approach

Plan Reuse Reuse old plans for new planning problems Consists of two steps plan matching plan modification Research findings generally, plan reuse is even harder than plan from scratch do better only when two problems are close enough plan matching could be the bottleneck

Graphplan Partial-order general planner Constructing a planning graph before search plan graph contains all possible actions that can be taken in each time step actions that interfere with one another can coexist in the graph More efficient than other general planners in some problems

Problem-specific Planning Heuristics combined during search heuristics is problem dependent cannot apply to other problems Usually outperforms general planners in specific problems Example in sliding-tile puzzle, accurate estimation of the distance between current state and goal state can speed up the search for a plan

Genetic Algorithms Parallel search and optimization algorithm Inspired by the basic rule of natural selection, survival-of-the-fittest Non-deterministic algorithm randomness is incorporated during implementation

Solution Formation Candidate solution is encoded as a list of genes, called chromosome Start with a population of randomly generated chromosomes Population is evolved in every generation evaluate each chromosome select chromosomes to the next generation apply genetic operations

Genetic Operation crossover Crossover point Before crossover After crossover

Genetic Operation Mutation Before mutation After mutation

GA Procedure Initialize the population Evaluate each chromosome in the population While the stopping condition is not met select chromosomes to the next generation crossover, mutation evaluate newly generated chromosomes End while

Evolutionary Computation Approach Non-deterministic algorithm Starts from a set of randomized plan Plans are evolved during generations In each generation evaluate the performance of the plan select the plans to next generation, based on performance crossover, mutation to create new plans

Evolutionary Computation Approach Solution encoding a list of floating-point number, each number maps to an action in the problem number of actions can vary during search A4A3A2 A1

Evolutionary Computation Approach State-aware crossover crossover points are selected based on the matching of states Parent 1 Parent 2 Child 1 Child 2 s1 s2 Match(s1, s2) = true

Evolutionary Computation Approach Mutation randomly select an action and replace it with a random floating-point number Before mutation After mutation

Evolutionary Computation Approach Fitness evaluation consists of two parts: goal fitness f g and cost fitness f c goal fitness: how the solutions reach the goal state cost fitness: the total cost of the solution overall fitness = a * f g + b * f c

Experimental Results Towers of Hanoi can solve the 5 and 6-disk case with high probability state-aware crossover does not perform well Sliding-tile puzzle can solve 3*3 problem case with high probability state-aware crossover perform much better since a looser definition of matching state is used Performance scalability is not good Heuristics may be helpful to improve the performance

References Artificial Intelligence: A Modern Approach. Stuart Russell and Peter Norvig. Prentice Hall. Artificial Intelligence: A New Symthesis. Nils Nilsson. Kaufmann. Intelligent Planning: A Decomposition and Abstraction Based Approach. Qiang Yang. Springer. Internet-Based Workflow Management: Towards a Semantic Web. Dan C. Marinescu. Wiley, 2002.

References Plan reuse versus plan generation: a theoretical and empirical analysis. B. Nebel, J. Koehler. Journal of Artificial Intelligence 76 (1995), Fast planning through planning graph analysis. A. L. Blum, M. L. Furst Journal of Artificial Intelligence 90 (1997), Planning as heuristic search. B. Bonet, H. Geffner. Journal of Artificial Intelligence 129 (2001), What it is, What it could be, An introduction to the Special Issue on Planning and Scheduling. D. McDermott, J. Handler. Journal of Artificial Intelligence 76 (1995), 1-16.

Concluding Words Failing to plan is planning to fail --Effie Jones