2012-09-04 47 views
0

我有一个问题,如下Lisp的不输出任何结果

(define (problem GP) 
    (:domain world) 
    (:objects x1 z1 y1) 
    (:init (X x1) (Z z1)) 
    (:goal (Y y1)) 
    ) 

和域如下

(define (domain GP-domain) 
    (:action A 
    :paremeters(?x y1) 
    :precond((X ?x)) 
    :effect((Y y1))) 
) 

我试图用一个策划运行此,但目前还没有结果。正确的行动A将执行的前提条件(X?X)met.I不知道什么是错的。

另一个疑问是,当我在对象问题中声明y1作为一个对象时,我是否允许像上面那样在动作A中实际“声明”(Y y1)?它是否正确?

(解决)

我应该把它放在一个更简单的方法

(define (domain GP-domain) 
    (:action A 
    :precond X 
    :effect Y) 

(define (problem GP-problem) 
    (:domain GP-domain) 
    (:init X Z) 
    (:goal Y) 
) 
+0

这Lisp是这样,什么库,如果有的话, 你正在用吗?另外:什么是规划师? – sepp2k

+0

paremeters?错字? –

+0

我昨天解决了。应该把它当作原子而不是将它当作对象来对待 – edelweiss

回答

0

我应该把它放在一个更简单的方法

(define (domain GP-domain) 
    (:action A 
    :precond X 
    :effect Y) 

(define (problem GP-problem) 
    (:domain GP-domain) 
    (:init X Z) 
    (:goal Y) 
)