根据规划空间
- 状态空间搜索 state space planning
状态空间:搜索的目的实际上是在遍历一个隐式图,节点是所有的状态,有向边对应于状态的转移,而一个可行解就是一条从起始节点出发到达目标状态集中任意一个节点的路径。这样的图称为状态空间(state space),这样的搜索称为状态空间搜索(Single-agent Search),得到的遍历树称为解答树。
用状态空间法搜索求解问题:
首先要把待求解的问题表示为状态空间图;
把问题的解表示为目标节点Sg。
求解就是要找到从根节点S0到达目标节点Sg的搜索路径。
状态空间图在计算机中有两种存储方式:一种是图的显式存储,另一种是图的隐式存储。
利用状态空间图求解的具体思路和步骤:
(1)设定状态变量及确定值域;
(2)确定状态组,分别列出初始状态集和目标状态集;
(3)定义并确定操作集;
(4)估计全部状态空间数,并尽可能列出全部状态空间或予以描述之;
(5)当状态数量不是很大时,按问题的有序元组画出状态空间图,依照状态空间图搜索求解。
状态空间搜索规划包括前向搜索(forward search)、后向搜索(regression seareh)、以及启发式搜索(heuristics seareh)
State-space search produces inflexible plans.
State-space search wastes time examining many different orderings of the same set of actions.
- 规划空间搜索 plan space planning
- 没有状态的概念,只有部分规划 partial plan
2.遵循a least-commitment strategy最小承诺原则: 不保证 orderings, instantiations, etc, unless necessary - 产生部分排序的规划,代表所有的动作序列都兼容的顺序
- 优点:加速,灵活,更加容易进行重规划
基本要素:
动作集合 O
顺序限制
binding constraint
因果链
- 非层次规划
规划的任务就是找出一个能够达到最终目标的动作序列,其实几乎每一个规划问题都存在一种层次结构,即递归的目标与子目标之间的组成体系,
非层次规划方法[l21不区分哪些目标是重要的,哪些是次要的,因此应用该方法求解规划问题时可能会在一些非关键部分浪费大量的时间,早期的规划系统大都是非层次(Non一hierarehies)的,比较典型的包括:STRIPS,HACKER,WARPLAN - 层次规划方法
首先勾画出一个完整但又比较粗略的规划解,然后逐步细化、逐步明确,直到足以具体完成整个规划的各步操作,层次规划方法实际上是把不同性质的问题放在不同层次上加以考虑。
层次规划本质上是运用抽象理论进行规划求解的方法,抽象的过程则是从原问题空间到抽象问题空间的一个影射过程,在这个过程中,要求保留那些有助于解决原问题的某些期望属性而忽略那些与问题求解暂时关系不大的细节,规划求解时,先在抽象问题空间进行搜索
层次的形成有两种方法:计划抽象(Planabstraction)和空间抽象(sPace abstraction)。
计划抽象意味着在算子上运用高层这个概念。典型的代表是NOAH系统,该系统是作为一个计算机咨询系统的一部分而设计的,NOAH意即“行为层次网络”(NetsofActionHierarchies),它采用一种网络结构来记录它所选取的操作符之间所需要的排序,该系统运用最小约束策略(least commitment approach)来选择动作的执行次序,在没有理由对子目标排序的情况下就推迟排序,直到理由成熟为止。
空间抽象通过忽略一些次要的前提和子目标形成相同的阶层,典型代表是ABSTRIPS系统,在该系统中采用的分层方法能否成功关键的一步是要选取适当临界值,临界值是针对前提条件而言的,根据选出的前提条件,找出满足这些条件的动作,构成一个层次。该系统在进行求解时首先只考虑可能具有最高临界值的前提条件,应用所建立起的初步规划作为整个规划的一个轮廓,并考虑低一层的前提条件,用满足条件的动作证明当前规划,以此类推,直到所有的前提条件都被考虑到为止
HTN规划问题在HTN中通过提供一组任务来指定,这些任务可以是:
-- 原始任务,大致对应于STRIPS(Stanford Research Institute Problem Solver)的行动;
-- 复合任务,可以看作是由一组更简单的任务组成;
-- 目标任务,与STRIPS的目标基本一致,但更具一般性。
HTN 大事记
年份 | 事件 | 相关论文/Reference |
1975 | Earl D Sacerdoti提出了NOAH(Nets Of Action Hierarchies)系统 | Sacerdoti, E. D.(1975). A Structure for Plans and Behavior. Ph.D. dissertation, Standfor University, AI Center. aAI7605794. |
1977 | Austin Tate基于Earl D Sacerdoti的工作提出了Nonlin | Tate, A. (1977). Generating Project Networks. in Proceedings of the 5th International Joint Conference on Artificial Intelligence. 2: 888–893. |
1990 | DAVID E. WILKINS描述了SIPE-2的新应用 | Wilkins, D. E. (1990). Can AI Planners Solve Practical Problems?. Comput. Intell., 6(4): 232–246. |
1991 | Ken Currie和Austin Tate基于以前在Nonlin规划师及其衍生品方面的经验提出了O-Plan | Currie, K. and Tate, A. (1991). O-Plan: The Open Planning Architecture. Artificial Intelligence. 52(1): 49–86. |
1994 | Austin Tate等学者在论文中对O-Plan2进行了概述 | Tate, A.; Drabble, B. and Kirby, R. (1994). O-Plan2: An Open Architecture for Command, Planning and Control. in Intelligent Scheduling. Morgan Kaufmann Publishers Inc.,pp. 213–239. |
1996 | Erol Kutluhan提出了通用方法组合规划器(UMCP) | Erol, K. (1996). Hierarchical Task Network Planning: Formalization, Analysis, and Implementation. Ph.D. dissertation, Computer Science Department, University of Maryland. |
1999 | Dana Nau和Hector Munoz-Avila等学者提出了SHOP(Simple Hierarchical Ordered Planner) | Nau, D. S.; Cao, Y.; Lotem, A. and Avila, H. M. (1999). SHOP: Simple Hierarchical Ordered Planner. In Proceedings of the 16th International Joint Conference on Artificial Intelligence, ser. IJCAI’99. pp. 968–975. |
2003 | Dana Nau等学者对SHOP2进行了描述 | Nau, D. S.; Ilghami, O.; Kuter, U.; Murdock, J. W.; Wu, D. and Yaman, F. (2003). SHOP2: An HTN Planning System. Journal of Artificial Intelligence Research. 20(1): 379–404. |
- 偏序规划方法
在全序规划中必须总是决策如何从所有的子问题出发对动作排序,
其实在规划求解时可以用子规划先单独处理这些子问题,然后再合并这些子规划,在处理子问题时,规划系统可以先对一些“明显的”和“重要的”问题进行求解,这样不仅可以简化问题,也可以提高求解的灵活性。
在搜索期间延迟某个选择的通用策略为最小承诺(Leastcommitment)策略,也就是说对于两个动作序列,规划系统会进行独立处理,而不承诺一个序列中的某个动作在另一个序列的某个动作之前还是之后
任何能够将两个动作放在一个规划中而不指定哪个在前的规划算法称为偏序算法(partialorderplanning)。
偏序规划可以作为对偏序规划空间的一个搜索来实现,搜索问题的状态被看
作是规划,每一个规划都由4部分组成:
- 一组能够形成规划步骤的动作:这些动作属于规划问题中的动作集。
- 一组定序约束(orderingconstrainis):如果某个动作A应该在另一个动作B之前进行,那么就可以用A<B来表示,而在这个约束中不能出现循环,也就是说A<B和B<A不能同时存在。
- 一组因果链(causalhnks):它存在于一个规划的两个动作A和B之间,其表示法为: A_p_>B它代表的含义是:p是动作A的结果,也是动作B的前提。
- 一组开放的前提条件(openprecondition):说一个前提条件是开放的是指它还没有被规划里的动作实现。
- 基于事例的规划 case-based planning
该方法的基本思想是用一个事例数据库来存储事例,当一个系统需要解决新的问题时,它就会在一个合适的抽象层次上取回一个或者更多的事例。 - 基于逻辑的规划
逻辑规划(Logie一basedplanning)['2]系统基于助binson的消解原理(Refutation Resolution),它采用定理证明的方法,把求解规划的过程形式化为由初始状态和动作序列可以证明目标状态的过程,其证明过程的解释就是一个规划解,也有人称这种方法为基于变化(Change一Based)的规划,以命题逻辑、一阶谓词逻辑等规范逻辑和各种非规范逻辑如默认推理(Defaulthiferenee)、或然推理(Plausiblenferenee)、时序(时态)逻辑(TemporalLogie)、内涵逻辑(IntensionalLogie)、非单调逻辑和模糊逻辑等为其理论基础。
较为典型的系统是Newen、Shaw和Simon等在1956年设计的逻辑理论家(LogioTheorist)程序和Green的QA3系统。但是
基于演绎的定理证明方法直接应用于规划问题求解有其固有的先天性不足,它会产生一些异常模型(AnomalousMedels):存在一些模型,它们满足定理,但是没有相应的有效规划解存在。Ch即man深入研究了模型和规划解的对应关系,提出了模型对应规划解的充分条件,并且给出了证明过程。
因此人们普遍认为:规划问题必须采用具有特定目的的定理证明器来解决,即一般性的定理证明器不能求解普遍的规划问题,或者增加领域(启发式)知识,或者在推理的方式上进行有效的扩充。
- 基于启发式搜索的规划方法
根据规划问题性质
Assumption | Planning | |||
Classical | Neoclassical | Time & Resources | Under Uncertainty | |
Set of states | Finite | Finite | Finite | Finite |
Observability | Fully | Fully | Fully | Partially |
Deterministic | Deterministic | Deterministic | Deterministic | Stochastic |
Set of events | Static | Static | Static | Dyn amic |
Restricted goals | Yes | Yes | Yes | Yes |
Sequential plans | Fully ordered | Partially ordered | Fully & partially ordered | Conditional plans |
Time | Instantaneous | Instantaneous | Durative actions | Instantaneous |
Offline | Yes | Yes | Yes | Yes |