The “Russian Farmer” Problem Continued - PowerPoint PPT Presentation

Slide1 l.jpg
Download
1 / 7

  • 233 Views
  • Updated On :
  • Presentation posted in: Pets / Animals

The “Russian Farmer” Problem Continued. (F,W,G,C) (l, l, l, l). (r, l, r, l). (l, l, r, l). (r, r, r, l) (r, l, r, r). (l, r, l, l) (l, l, l, r). (r, r, l, r) (r, r, l, r). (l, r, l, r) (l, r, l, r). (r, r, r, r).

Related searches for The “Russian Farmer” Problem Continued

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Presentation

The “Russian Farmer” Problem Continued

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Slide1 l.jpg

The “Russian Farmer” Problem

Continued

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


Slide2 l.jpg

(F,W,G,C)

(l, l, l, l)

(r, l, r, l)

(l, l, r, l)

(r, r, r, l)(r, l, r, r)

(l, r, l, l) (l, l, l, r)

(r, r, l, r)(r, r, l, r)

(l, r, l, r)(l, r, l, r)

(r, r, r, r)

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


Slide3 l.jpg

?- go( state(left,left,left,left), state(right,right,right,right) ).

A solution is:

The farmer takes the Goat from left of the river to right

The farmer crosses the river from right to left

The farmer takes the Wolf from left of the river to right

The farmer takes the Goat from right of the river to left

The farmer takes the cabbage from left of the river to right

The farmer crosses the river from right to left

The farmer takes the Goat from left of the river to right

A solution is:

The farmer takes the Goat from left of the river to right

The farmer crosses the river from right to left

The farmer takes the cabbage from left of the river to right

The farmer takes the Goat from right of the river to left

The farmer takes the Wolf from left of the river to right

The farmer crosses the river from right to left

The farmer takes the Goat from left of the river to right

No

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


Slide4 l.jpg

go(Start,Target):-

path(Start, Target,[Start],Path),

write(‘A solution is:’),nl,

write_path(Path).

path(Start, Target,Visited,Path):-

move(Start, NextNode),% Generate a move

not( unsafe(NextNode) ),% Check that it issafe

not( member(NextNode,Visited) ),% Check for recurrence

path(NextNode, Target,[NextNode |Visited],Path),!.

path(Target, Target,Path,Path).% Reached the goal

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


Slide5 l.jpg

move(state(X,X,G,C),state(Y,Y,G,C)):-opposite(X,Y). % FARMER & WOLF

move(state(X,W,X,C),state(Y,W,Y,C)):-opposite(X,Y).% FARMER &GOAT

move(state(X,W,G,X),state(Y,W,G,Y)):-opposite(X,Y).%FARMER & Cbg.

move(state(X,W,G,C),state(Y,W,G,C)):-opposite(X,Y).% FARMER alone

unsafe( state(F,X,X,_) ):- opposite(F,X),!. % The wolf eats the goat

Other unsafe clauses

opposite(left,right).

opposite(right,left).

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


Slide6 l.jpg

write_path( [] ).

write_path( [H1,H2|T] ) :-write_move(H1,H2),

write_path([H2|T]).

write_move( state(X,W,G,C), state(Y,W,G,C) ) :-!,

write(‘The farmer crosses the river from ‘), write(X),write(‘ to ‘),write(Y),nl.

write_move( state(X,X,G,C), state(Y,Y,G,C) ) :-!,

write(‘The farmer takes the Wolf from the ‘), write(X),write(‘side of the river to ‘),write(Y),nl.

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


Slide7 l.jpg

?-go(X,Y).

?-go(state(left,left,left,left),Y).

Lecture 24 Farmer, Goat, Cabbage and Wolf Problem Continued


  • Login