(defun maze-init2 nil (put 'p1 'walls '(n w s)) (put 'p2 'walls '(n s)) (put 'p3 'walls '(n s)) (put 'p4 'walls '(n e)) (put 'p5 'walls '(n w e)) (put 'p6 'walls '(n w e)) (put 'p7 'walls '(n w)) (put 'p8 'walls '(n s)) (put 'p9 'walls '(e)) (put 'p10 'walls '(e w)) (put 'p11 'walls '(e w)) (put 'p12 'walls '(s)) (put 'p13 'walls '(n e s)) (put 'p14 'walls '(w s)) (put 'p15 'walls '(e)) (put 'p16 'walls '(w s)) (put 'p17 'walls '(n e)) (put 'p18 'walls '(n w e)) (put 'p19 'walls '(n w)) (put 'p20 'walls '(e)) (put 'p21 'walls '(n w s)) (put 'p22 'walls '(s)) (put 'p23 'walls '(s)) (put 'p24 'walls '(e s)) (put 'p25 'walls '(w s e)) )ロボットがどこにいるかで状態を表すために, たとえば,
(robot at (0.2 0.3))というように,座標ベクトルを第三要素として 持つ形で状態を表現することにすれば以下のように 基本関数を定義すればよい.