Part III Heuristics and Control StrategiesMotivation for Part 3 of the BookAbstract Search ProcedureSlide 4Slide 5Slide 6Plan-Space PlanningState-Space PlanningPlanning-Graph PlanningSearch HeuristicsBranching and Pruning TechniquesBranching Versus PruningDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/1Part IIIHeuristics and Control StrategiesDana S. NauUniversity of Maryland06:43 AM January 14, 2019Lecture slides forAutomated Planning: Theory and PracticeDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/2Motivation for Part 3 of the BookDomain-independent planners suffer from combinatorial complexityPlanning is in the worst case intractableNeed ways to control the searchDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/3Abstract Search ProcedureHere is a general framework for describing classical and neoclassical plannersThe planning algorithms we’ve discussed all fit into the framework, if we vary the detailse.g., the steps don’t have to be in this orderDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/4Abstract Search ProcedureCompute information that may affect how we do some of the other stepse.g., select a flaw to work on next, or compute a planning graphDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/5Abstract Search ProcedureDivide current set of solutions into several sets to be explored in parallele.g., B' ← {π.a | a is applicable to γ(s0,π)}Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/6Abstract Search ProcedureRemove some unpromising members of Be.g., loop detection, constraint violationDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/7Plan-Space PlanningRefinement: select which flaw to work on nextBranching: {the flaw’s resolvers}Pruning: loop detectionrecall this is weak for plan-space planningDana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/8State-Space PlanningRefinement: noneBranching: {applicable or relevant actions}Pruning: loop detectionOther branching & pruning techniques in Chapters 10 & 11Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/9Planning-Graph PlanningWrap iterative deepening around Abstract-searchRefinement: generate the planning graph, compute mutex infoBranching: {sets of actions in action-level i that achieve goals at state-level i}Pruning: prune sets of actions that are mutexfor number of levels = 0, 1, 2, …Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/10Search HeuristicsChapter 9: Heuristics in PlanningHeuristics for choosing where to search nextThe heuristics in this chapter are domain-independent within classical planningChapter 9Chapter 9Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/11Branching and Pruning TechniquesChapter 10: pruning via search-control rulesChapter 11: branching via hierarchical task decompositionThese chapters discuss domain-configurable state-space plannersDomain-independent planning engineDomain-specific information to control the searchChapter 10Chapter 11Dana Nau: Lecture slides for Automated PlanningLicensed under the Creative Commons Attribution-NonCommercial-ShareAlike License: http://creativecommons.org/licenses/by-nc-sa/2.0/12Branching Versus PruningTwo equivalent approaches:Generate all possible branches, then prune some of themJust don’t bother generating the ones that would be prunedExample: Domain-configurable implementations of the block-stacking algorithm from Chapter 4Separate branching and pruning (Chapter 10)»Branch: generate all applicable actions»Prune: prune actions that build up “bad” stacks or tear down “good” onesCombined branching and pruning (Chapter 11)»Only generate actions that don’t build up “bad” stacks and don’t tear down “good”
View Full Document