.


:




:

































 

 

 

 


2.3.




%move(Statel, Move, State2) - Move Statel % State2; : % State { MonkevHorizontal, MonkeyVertical, BoxPosition, KasBanana)

move! state) middle, onbox, middle, hasnot), %

grasp, %

state) middle, onbox, middle, has)). %

move (statel P, onfloor, P, H),

clinb, %

statel. P, onbox, P, H)).

move [ state (PI. onfloor, Pi, H},

push! Pi, P2), % 1 2

state[ 2, onfloor, P2, )).

movet state PI, onfloor, , Hi,

walk! PI, P2), % 1 2

state(P2, onfloor, , )).

% canget) State) - State

canget) state! _, _, _, has)). k canl -

canget) statel):- % 2 -

,

move(Statel, Move, State2), 4

cangetf Etate2). %

, . :?- canget(state) atdoor, onfloor, atwindow, hasnot))-

Prolog "yes". , Prolog , , Prolog, . . , . . . 2.12.


2. Prolog



5)

£tato(a(doort onflow, otwindow, hasno

walk(nldoo[,P2J

(state! P2, onfloor, atwlndow, hasnot) I



posh{P2,P2'l P2 = atwindow

climb/

3) Q
$
sloto{ P2', onfloor, P2', hasnot)

state{ atwindow, onbox, atwlndow, hasnot)


)


 



climb


t
 

state! P2", onbox, P2', hasnot}

grasp

P2' = middle


 
J>

statet middle, onbox, middle, has)


. 212 . , . .

Prolog . . , , move. ( ) . . , , , . , , .





:


: 2015-10-01; !; : 815 |


:

:

, , 1:10
==> ...

1668 - | 1595 -


© 2015-2024 lektsii.org - -

: 0.015 .