SlideShare a Scribd company logo
Module
     9
Planning
Version 2 CSE IIT, Kharagpur
Lesson
                24
Planning algorithm - I
             Version 2 CSE IIT, Kharagpur
9.4 Planning as Search
Planning as Search:

There are two main approaches to solving planning problems, depending on the kind of
search space that is explored:
    1. Situation-space search
    2. Planning-space search

9.4.1 Situation-Space Search

In situation space search

   •   the search space is the space of all possible states or situations of the world
   •   initial state defines one node
   •   a goal node is a state where all goals in the goal state are satisfied
   •   a solution plan is the sequence of actions (e.g. operator instances) in the path from
       the start node to a goal node




9.4.2 Plan-Space Search

   •   the search space is the space of all possible plans
   •   a node corresponds to a partial plan
   •   initially we will specify an "initial plan" which is one node in this space
   •   a goal node is a node containing a plan which is complete, satisfying all of the
       goals in the goal state
   •   the node itself contains all of the information for determining a solution plan (e.g.
       sequence of actions)




                                                            Version 2 CSE IIT, Kharagpur
9.4.3 Situation-Space Planning Algorithms

There are 2 approaches to situation-space planning:
   1. Progression situation-space planning
   2. Regression situation-space planning

Progression Planning:

   •   Forward-chaining from initial state to goal state
   •   Looks just like a state-space search except STRIPS operators are specified instead
       of a set of next-move functions
   •   You can use any search method you like (i.e. BFS, DFS, A*)
   •   Disadvantage: huge search space to explore, so usually very inefficient

Algorithm:
   1. Start from initial state
   2. Find all operators whose preconditions are true in the initial state
   3. Compute effects of operators to generate successor states
   4. Repeat steps #2-#3 until a new state satisfies the goal conditions

The work through of the progression algorithm for the Blocks World example is shown
below:

          Step State             Applicable Operators           Operator
                                                                Applied
          #1     ontable(A) Λ    pickup(A)                      pickup(A)
                 ontable(B) Λ    unstack(C,B)
                 on(C, B) Λ
                 clear(A) Λ
                 clear(C) Λ
                 handempty
          #2     ~ontable(A)     putdown(A)                     stack(A,C)
                 Λ               stack(A,C)


                                                            Version 2 CSE IIT, Kharagpur
ontable(B) Λ
                    on(C, B) Λ
                    ~clear(A) Λ
                    clear(C) Λ
                    ~handempty
                    Λ
                    holding(A)
             #3     ontable(B) Λ Matches goal state so
                    on(C, B) Λ   STOP!
                    on(A, C) Λ
                    clear(A) Λ
                    ~clear(C) Λ
                    handempty
                    Λ
                    ~holding(A)


Regression Planning

      •    Backward-chaining from goal state to initial state
      •    Regression situation-space planning is usually more efficient than progression
           because many operators are applicable at each state, yet only a small number of
           operators are applicable for achieving a given goal
      •    Hence, regression is more goal-directed than progression situation-space planning
      •    Disadvantage: cannot always find a plan even if one exists!

Algorithm:

   1. Start with goal node corresponding to goal to be achieved
   2. Choose an operator that will add one of the goals
   3. Replace that goal with the operator's preconditions
   4. Repeat steps #2-#3 until you have reached the initial state
   5.
While backward-chaining is performed by STRIPS in terms of the generation of goals,
sub-goals, sub-sub-goals, etc., operators are used in the forward direction to generate
successor states, starting from the initial state, until a goal is found.

The work through of the regression algorithm for the Blocks World example is shown
below.

Ste       State        Stack                             Plan         Note
p
#1        ontable(A)   achieve(on(A,C))                               Stack contains original
          Λ                                                           goal. State contains
          ontable(B)                                                  the initial state

                                                                Version 2 CSE IIT, Kharagpur
Λ                                                      description.
     on(C, B) Λ
     clear(A) Λ
     clear(C) Λ
     handempty
#2   Same.      achieve(clear(C), holding(A),               Choose operator Stack
                apply(Stack(A,C))                           to solve goal popped
                achieve(on(A,C))                            from top of goal stack.
#3   Same.      achieve(holding(A))                         Order sub-goals
                achieve(clear(C))                           arbitrarily.
                achieve(clear(C), holding(A),
                apply(Stack(A,C))
                achieve(on(A,C))
#4   Same.      achieve(ontable(A), clear(A),               Choose operator
                handempty),                                 pickup to solve goal
                apply(pickup(A))                            popped from top of
                achieve(holding(A))                         goal stack.
                achieve(clear(C))
                achieve(clear(C), holding(A),
                apply(Stack(A,C))
                achieve(on(A,C))
#5   ontable(B) achieve(clear(C))               Pickup(A    Top goal is true in
     Λ          achieve(clear(C), holding(A),   )           current state, so pop it
     on(C, B) Λ apply(Stack(A,C))                           and apply operator
     clear(C) Λ achieve(on(A,C))                            pickup(A).
     holding(A)
#6   ontable(B) achieve(on(A,C))                pickup(A    Top goal achieve(C)
     Λ                                          )           true so pop it. Re-
     on(C, B) Λ                                 stack(A,C   verify that goals that
     on(A,C) Λ                                  )           are the preconditions
     clear(A) Λ                                             of the stack(A,C)
     handempty                                              operator still true, then
                                                            pop that and the
                                                            operator is applied.
#7   Same.                  <empty>                         Re-verify that original
                                                            goal is true in current
                                                            state, then pop and halt
                                                            with empty goal stack
                                                            and state description
                                                            satisfying original
                                                            goal.




                                                    Version 2 CSE IIT, Kharagpur
Goal Interaction
Most planning algorithms assume that the goals to be achieved are independent or nearly
independent in the sense that each can be solved separately and then the solutions
concatenated together. If the order of solving a set of goals (either the original goals or a
set of sub-goals which are the preconditions of an operator) fails because solving a latter
goal undoes an earlier goal, then this version of the STRIPS algorithm fails. Hence,
situation-space planners do not allow for interleaving of steps in any solution it finds.

Principle of Least Commitment

The principle of least commitment is the idea of never making a choice unless required to
do so. The advantage of using this principle is you won't have to backtrack later!
In planning, one application of this principle is to never order plan steps unless it's
necessary for some reason. So, partial-order planners exhibit this property because
constraint ordering steps will only be inserted when necessary. On the other hand,
situation-space progression planners make commitments about the order of steps as they
try to find a solution and therefore may make mistakes from poor guesses about the right
order of steps.




                                                             Version 2 CSE IIT, Kharagpur

More Related Content

What's hot

Theory of Computation Unit 4
Theory of Computation Unit 4Theory of Computation Unit 4
Theory of Computation Unit 4
Jena Catherine Bel D
 
Generating Assertion Code from OCL: A Transformational Approach Based on Simi...
Generating Assertion Code from OCL: A Transformational Approach Based on Simi...Generating Assertion Code from OCL: A Transformational Approach Based on Simi...
Generating Assertion Code from OCL: A Transformational Approach Based on Simi...
Shinpei Hayashi
 
Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...
Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...
Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...
Masahiro Kanazaki
 
Microprocessor Week 7: Branch Instruction
Microprocessor Week 7: Branch InstructionMicroprocessor Week 7: Branch Instruction
Microprocessor Week 7: Branch Instruction
Arkhom Jodtang
 
Dfdofpayroll1
Dfdofpayroll1Dfdofpayroll1
Dfdofpayroll1
Rahul Sharma
 
Flow control instructions
Flow control instructionsFlow control instructions
Flow control instructions
Prodip Ghosh
 
Chap5 - ADSP 21K Manual
Chap5 - ADSP 21K ManualChap5 - ADSP 21K Manual
Chap5 - ADSP 21K Manual
SethCopeland
 
Microprocessor Week 8: Advance programming
Microprocessor Week 8: Advance programmingMicroprocessor Week 8: Advance programming
Microprocessor Week 8: Advance programming
Arkhom Jodtang
 
Polish nootation
Polish nootationPolish nootation
Polish nootation
Srikanth Chennupati
 

What's hot (9)

Theory of Computation Unit 4
Theory of Computation Unit 4Theory of Computation Unit 4
Theory of Computation Unit 4
 
Generating Assertion Code from OCL: A Transformational Approach Based on Simi...
Generating Assertion Code from OCL: A Transformational Approach Based on Simi...Generating Assertion Code from OCL: A Transformational Approach Based on Simi...
Generating Assertion Code from OCL: A Transformational Approach Based on Simi...
 
Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...
Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...
Multidisciplinary Design Optimization of Supersonic Transport Wing Using Surr...
 
Microprocessor Week 7: Branch Instruction
Microprocessor Week 7: Branch InstructionMicroprocessor Week 7: Branch Instruction
Microprocessor Week 7: Branch Instruction
 
Dfdofpayroll1
Dfdofpayroll1Dfdofpayroll1
Dfdofpayroll1
 
Flow control instructions
Flow control instructionsFlow control instructions
Flow control instructions
 
Chap5 - ADSP 21K Manual
Chap5 - ADSP 21K ManualChap5 - ADSP 21K Manual
Chap5 - ADSP 21K Manual
 
Microprocessor Week 8: Advance programming
Microprocessor Week 8: Advance programmingMicroprocessor Week 8: Advance programming
Microprocessor Week 8: Advance programming
 
Polish nootation
Polish nootationPolish nootation
Polish nootation
 

Viewers also liked

Lesson 28
Lesson 28Lesson 28
Lesson 28
Avijit Kumar
 
Lesson 20
Lesson 20Lesson 20
Lesson 20
Avijit Kumar
 
Lesson 23
Lesson 23Lesson 23
Lesson 23
Avijit Kumar
 
Lesson 21
Lesson 21Lesson 21
Lesson 21
Avijit Kumar
 
Lesson 22
Lesson 22Lesson 22
Lesson 22
Avijit Kumar
 
Lesson 25
Lesson 25Lesson 25
Lesson 25
Avijit Kumar
 
Lesson 18
Lesson 18Lesson 18
Lesson 18
Avijit Kumar
 
Lesson 19
Lesson 19Lesson 19
Lesson 19
Avijit Kumar
 

Viewers also liked (8)

Lesson 28
Lesson 28Lesson 28
Lesson 28
 
Lesson 20
Lesson 20Lesson 20
Lesson 20
 
Lesson 23
Lesson 23Lesson 23
Lesson 23
 
Lesson 21
Lesson 21Lesson 21
Lesson 21
 
Lesson 22
Lesson 22Lesson 22
Lesson 22
 
Lesson 25
Lesson 25Lesson 25
Lesson 25
 
Lesson 18
Lesson 18Lesson 18
Lesson 18
 
Lesson 19
Lesson 19Lesson 19
Lesson 19
 

Similar to Lesson 24

AI Lesson 23
AI Lesson 23AI Lesson 23
AI Lesson 23
Assistant Professor
 
Planning
PlanningPlanning
Planning
ahmad bassiouny
 
Planning
PlanningPlanning
Planning
ahmad bassiouny
 
Goal stack planning.ppt
Goal stack planning.pptGoal stack planning.ppt
Goal stack planning.ppt
SadagopanS
 
CS1017-unitIV.pdf
CS1017-unitIV.pdfCS1017-unitIV.pdf
CS1017-unitIV.pdf
SaswatSeth
 
CSCI 2033 Elementary Computational Linear Algebra(Spring 20.docx
CSCI 2033 Elementary Computational Linear Algebra(Spring 20.docxCSCI 2033 Elementary Computational Linear Algebra(Spring 20.docx
CSCI 2033 Elementary Computational Linear Algebra(Spring 20.docx
mydrynan
 
Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2
Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2
Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2
Stavros Vassos
 
Memory Management C++ (Peeling operator new() and delete())
Memory Management C++ (Peeling operator new() and delete())Memory Management C++ (Peeling operator new() and delete())
Memory Management C++ (Peeling operator new() and delete())
Sameer Rathoud
 
AI_Planning.pdf
AI_Planning.pdfAI_Planning.pdf
AI_Planning.pdf
SUSHMARATHI3
 
Homework Value of InformationPlease respond to the following.docx
Homework Value of InformationPlease respond to the following.docxHomework Value of InformationPlease respond to the following.docx
Homework Value of InformationPlease respond to the following.docx
adampcarr67227
 
22 planning
22 planning22 planning
22 planning
Tianlu Wang
 
Lec 02. C Program Structure / C Memory Concept
Lec 02. C Program Structure / C Memory ConceptLec 02. C Program Structure / C Memory Concept
Lec 02. C Program Structure / C Memory Concept
Rushdi Shams
 
AI_unit IV Full Notes.pdf
AI_unit IV Full Notes.pdfAI_unit IV Full Notes.pdf
AI_unit IV Full Notes.pdf
Asst.prof M.Gokilavani
 
AI Lesson 03
AI Lesson 03AI Lesson 03
AI Lesson 03
Assistant Professor
 
famous placement papers
famous placement papersfamous placement papers
famous placement papers
Ramanujam Ramu
 
Unit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptxUnit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptx
DrYogeshDeshmukh1
 
C++ Question
C++ QuestionC++ Question
C++ Question
Selipar Mahal
 
Spring 2003
Spring 2003Spring 2003
Spring 2003
butest
 
10-SLR parser practice problems-02-06-2023.pptx
10-SLR parser practice problems-02-06-2023.pptx10-SLR parser practice problems-02-06-2023.pptx
10-SLR parser practice problems-02-06-2023.pptx
venkatapranaykumarGa
 

Similar to Lesson 24 (19)

AI Lesson 23
AI Lesson 23AI Lesson 23
AI Lesson 23
 
Planning
PlanningPlanning
Planning
 
Planning
PlanningPlanning
Planning
 
Goal stack planning.ppt
Goal stack planning.pptGoal stack planning.ppt
Goal stack planning.ppt
 
CS1017-unitIV.pdf
CS1017-unitIV.pdfCS1017-unitIV.pdf
CS1017-unitIV.pdf
 
CSCI 2033 Elementary Computational Linear Algebra(Spring 20.docx
CSCI 2033 Elementary Computational Linear Algebra(Spring 20.docxCSCI 2033 Elementary Computational Linear Algebra(Spring 20.docx
CSCI 2033 Elementary Computational Linear Algebra(Spring 20.docx
 
Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2
Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2
Intro to AI STRIPS Planning & Applications in Video-games Lecture4-Part2
 
Memory Management C++ (Peeling operator new() and delete())
Memory Management C++ (Peeling operator new() and delete())Memory Management C++ (Peeling operator new() and delete())
Memory Management C++ (Peeling operator new() and delete())
 
AI_Planning.pdf
AI_Planning.pdfAI_Planning.pdf
AI_Planning.pdf
 
Homework Value of InformationPlease respond to the following.docx
Homework Value of InformationPlease respond to the following.docxHomework Value of InformationPlease respond to the following.docx
Homework Value of InformationPlease respond to the following.docx
 
22 planning
22 planning22 planning
22 planning
 
Lec 02. C Program Structure / C Memory Concept
Lec 02. C Program Structure / C Memory ConceptLec 02. C Program Structure / C Memory Concept
Lec 02. C Program Structure / C Memory Concept
 
AI_unit IV Full Notes.pdf
AI_unit IV Full Notes.pdfAI_unit IV Full Notes.pdf
AI_unit IV Full Notes.pdf
 
AI Lesson 03
AI Lesson 03AI Lesson 03
AI Lesson 03
 
famous placement papers
famous placement papersfamous placement papers
famous placement papers
 
Unit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptxUnit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptx
 
C++ Question
C++ QuestionC++ Question
C++ Question
 
Spring 2003
Spring 2003Spring 2003
Spring 2003
 
10-SLR parser practice problems-02-06-2023.pptx
10-SLR parser practice problems-02-06-2023.pptx10-SLR parser practice problems-02-06-2023.pptx
10-SLR parser practice problems-02-06-2023.pptx
 

More from Avijit Kumar

Lesson 26
Lesson 26Lesson 26
Lesson 26
Avijit Kumar
 
Lesson 27
Lesson 27Lesson 27
Lesson 27
Avijit Kumar
 
Lesson 29
Lesson 29Lesson 29
Lesson 29
Avijit Kumar
 
Lesson 30
Lesson 30Lesson 30
Lesson 30
Avijit Kumar
 
Lesson 31
Lesson 31Lesson 31
Lesson 31
Avijit Kumar
 
Lesson 32
Lesson 32Lesson 32
Lesson 32
Avijit Kumar
 
Lesson 33
Lesson 33Lesson 33
Lesson 33
Avijit Kumar
 
Lesson 36
Lesson 36Lesson 36
Lesson 36
Avijit Kumar
 
Lesson 35
Lesson 35Lesson 35
Lesson 35
Avijit Kumar
 
Lesson 37
Lesson 37Lesson 37
Lesson 37
Avijit Kumar
 
Lesson 39
Lesson 39Lesson 39
Lesson 39
Avijit Kumar
 
Lesson 38
Lesson 38Lesson 38
Lesson 38
Avijit Kumar
 
Lesson 41
Lesson 41Lesson 41
Lesson 41
Avijit Kumar
 
Lesson 40
Lesson 40Lesson 40
Lesson 40
Avijit Kumar
 

More from Avijit Kumar (14)

Lesson 26
Lesson 26Lesson 26
Lesson 26
 
Lesson 27
Lesson 27Lesson 27
Lesson 27
 
Lesson 29
Lesson 29Lesson 29
Lesson 29
 
Lesson 30
Lesson 30Lesson 30
Lesson 30
 
Lesson 31
Lesson 31Lesson 31
Lesson 31
 
Lesson 32
Lesson 32Lesson 32
Lesson 32
 
Lesson 33
Lesson 33Lesson 33
Lesson 33
 
Lesson 36
Lesson 36Lesson 36
Lesson 36
 
Lesson 35
Lesson 35Lesson 35
Lesson 35
 
Lesson 37
Lesson 37Lesson 37
Lesson 37
 
Lesson 39
Lesson 39Lesson 39
Lesson 39
 
Lesson 38
Lesson 38Lesson 38
Lesson 38
 
Lesson 41
Lesson 41Lesson 41
Lesson 41
 
Lesson 40
Lesson 40Lesson 40
Lesson 40
 

Recently uploaded

What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
Ajin Abraham
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
DianaGray10
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
Edge AI and Vision Alliance
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Neo4j
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
Antonios Katsarakis
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Precisely
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
Safe Software
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Neo4j
 

Recently uploaded (20)

What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
AppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSFAppSec PNW: Android and iOS Application Security with MobSF
AppSec PNW: Android and iOS Application Security with MobSF
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectorsConnector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
Connector Corner: Seamlessly power UiPath Apps, GenAI with prebuilt connectors
 
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
“How Axelera AI Uses Digital Compute-in-memory to Deliver Fast and Energy-eff...
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and BioinformaticiansBiomedical Knowledge Graphs for Data Scientists and Bioinformaticians
Biomedical Knowledge Graphs for Data Scientists and Bioinformaticians
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 
Artificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic WarfareArtificial Intelligence and Electronic Warfare
Artificial Intelligence and Electronic Warfare
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Dandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity serverDandelion Hashtable: beyond billion requests per second on a commodity server
Dandelion Hashtable: beyond billion requests per second on a commodity server
 
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their MainframeDigital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
Digital Banking in the Cloud: How Citizens Bank Unlocked Their Mainframe
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
Essentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation ParametersEssentials of Automations: Exploring Attributes & Automation Parameters
Essentials of Automations: Exploring Attributes & Automation Parameters
 
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid ResearchHarnessing the Power of NLP and Knowledge Graphs for Opioid Research
Harnessing the Power of NLP and Knowledge Graphs for Opioid Research
 

Lesson 24

  • 1. Module 9 Planning Version 2 CSE IIT, Kharagpur
  • 2. Lesson 24 Planning algorithm - I Version 2 CSE IIT, Kharagpur
  • 3. 9.4 Planning as Search Planning as Search: There are two main approaches to solving planning problems, depending on the kind of search space that is explored: 1. Situation-space search 2. Planning-space search 9.4.1 Situation-Space Search In situation space search • the search space is the space of all possible states or situations of the world • initial state defines one node • a goal node is a state where all goals in the goal state are satisfied • a solution plan is the sequence of actions (e.g. operator instances) in the path from the start node to a goal node 9.4.2 Plan-Space Search • the search space is the space of all possible plans • a node corresponds to a partial plan • initially we will specify an "initial plan" which is one node in this space • a goal node is a node containing a plan which is complete, satisfying all of the goals in the goal state • the node itself contains all of the information for determining a solution plan (e.g. sequence of actions) Version 2 CSE IIT, Kharagpur
  • 4. 9.4.3 Situation-Space Planning Algorithms There are 2 approaches to situation-space planning: 1. Progression situation-space planning 2. Regression situation-space planning Progression Planning: • Forward-chaining from initial state to goal state • Looks just like a state-space search except STRIPS operators are specified instead of a set of next-move functions • You can use any search method you like (i.e. BFS, DFS, A*) • Disadvantage: huge search space to explore, so usually very inefficient Algorithm: 1. Start from initial state 2. Find all operators whose preconditions are true in the initial state 3. Compute effects of operators to generate successor states 4. Repeat steps #2-#3 until a new state satisfies the goal conditions The work through of the progression algorithm for the Blocks World example is shown below: Step State Applicable Operators Operator Applied #1 ontable(A) Λ pickup(A) pickup(A) ontable(B) Λ unstack(C,B) on(C, B) Λ clear(A) Λ clear(C) Λ handempty #2 ~ontable(A) putdown(A) stack(A,C) Λ stack(A,C) Version 2 CSE IIT, Kharagpur
  • 5. ontable(B) Λ on(C, B) Λ ~clear(A) Λ clear(C) Λ ~handempty Λ holding(A) #3 ontable(B) Λ Matches goal state so on(C, B) Λ STOP! on(A, C) Λ clear(A) Λ ~clear(C) Λ handempty Λ ~holding(A) Regression Planning • Backward-chaining from goal state to initial state • Regression situation-space planning is usually more efficient than progression because many operators are applicable at each state, yet only a small number of operators are applicable for achieving a given goal • Hence, regression is more goal-directed than progression situation-space planning • Disadvantage: cannot always find a plan even if one exists! Algorithm: 1. Start with goal node corresponding to goal to be achieved 2. Choose an operator that will add one of the goals 3. Replace that goal with the operator's preconditions 4. Repeat steps #2-#3 until you have reached the initial state 5. While backward-chaining is performed by STRIPS in terms of the generation of goals, sub-goals, sub-sub-goals, etc., operators are used in the forward direction to generate successor states, starting from the initial state, until a goal is found. The work through of the regression algorithm for the Blocks World example is shown below. Ste State Stack Plan Note p #1 ontable(A) achieve(on(A,C)) Stack contains original Λ goal. State contains ontable(B) the initial state Version 2 CSE IIT, Kharagpur
  • 6. Λ description. on(C, B) Λ clear(A) Λ clear(C) Λ handempty #2 Same. achieve(clear(C), holding(A), Choose operator Stack apply(Stack(A,C)) to solve goal popped achieve(on(A,C)) from top of goal stack. #3 Same. achieve(holding(A)) Order sub-goals achieve(clear(C)) arbitrarily. achieve(clear(C), holding(A), apply(Stack(A,C)) achieve(on(A,C)) #4 Same. achieve(ontable(A), clear(A), Choose operator handempty), pickup to solve goal apply(pickup(A)) popped from top of achieve(holding(A)) goal stack. achieve(clear(C)) achieve(clear(C), holding(A), apply(Stack(A,C)) achieve(on(A,C)) #5 ontable(B) achieve(clear(C)) Pickup(A Top goal is true in Λ achieve(clear(C), holding(A), ) current state, so pop it on(C, B) Λ apply(Stack(A,C)) and apply operator clear(C) Λ achieve(on(A,C)) pickup(A). holding(A) #6 ontable(B) achieve(on(A,C)) pickup(A Top goal achieve(C) Λ ) true so pop it. Re- on(C, B) Λ stack(A,C verify that goals that on(A,C) Λ ) are the preconditions clear(A) Λ of the stack(A,C) handempty operator still true, then pop that and the operator is applied. #7 Same. <empty> Re-verify that original goal is true in current state, then pop and halt with empty goal stack and state description satisfying original goal. Version 2 CSE IIT, Kharagpur
  • 7. Goal Interaction Most planning algorithms assume that the goals to be achieved are independent or nearly independent in the sense that each can be solved separately and then the solutions concatenated together. If the order of solving a set of goals (either the original goals or a set of sub-goals which are the preconditions of an operator) fails because solving a latter goal undoes an earlier goal, then this version of the STRIPS algorithm fails. Hence, situation-space planners do not allow for interleaving of steps in any solution it finds. Principle of Least Commitment The principle of least commitment is the idea of never making a choice unless required to do so. The advantage of using this principle is you won't have to backtrack later! In planning, one application of this principle is to never order plan steps unless it's necessary for some reason. So, partial-order planners exhibit this property because constraint ordering steps will only be inserted when necessary. On the other hand, situation-space progression planners make commitments about the order of steps as they try to find a solution and therefore may make mistakes from poor guesses about the right order of steps. Version 2 CSE IIT, Kharagpur