首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我按照书中的指示运行了程序,但是它没有工作,错误:未知的过程

我按照书中的指示运行了程序,但是它没有工作,错误:未知的过程
EN

Stack Overflow用户
提问于 2021-12-23 13:10:03
回答 1查看 30关注 0票数 0
代码语言:javascript
复制
start :- action(state(left,left,left,left),
state(right,right,right,right)).

action(Start,Goal):-
plan(Start,Goal,[Start],Path),
nl,write(’Solution:’),nl,
write_path(Path).
% write_path(Path), fail. % all solutions output

plan(Start,Goal,Visited,Path):-
go(Start,Next),
safe(Next),
\+ member(Next,Visited), % not(member(...))
plan(Next,Goal,[Next|Visited],Path).
plan(Goal,Goal,Path,Path).

go(state(X,X,Z,K),state(Y,Y,Z,K)):-across(X,Y). % farmer, wolf
go(state(X,W,X,K),state(Y,W,Y,K)):-across(X,Y). % farmer, goat
go(state(X,W,Z,X),state(Y,W,Z,Y)):-across(X,Y). % farmer, cabbage
go(state(X,W,Z,K),state(Y,W,Z,K)):-across(X,Y). % farmer
across(left,right).
across(right,left).

safe(state(B,W,Z,K)):- across(W,Z), across(Z,K).
safe(state(B,B,B,K)).
safe(state(B,W,B,B)).

**要运行程序,您需要编写两个命令、写(路径)和启动。我在“人工智能入门-沃尔夫冈·埃特尔”一书中找到的,它在第76-77页** 1页:https://i.stack.imgur.com/cy8mh.png

EN

回答 1

Stack Overflow用户

发布于 2021-12-27 21:36:31

看看您在.png上提供的错误,您似乎已经编写了write_path过程。也许你可以把它加到这个问题上。

您在这一行中有一个错误:

代码语言:javascript
复制
nl,write(’Solution:’),nl,

它应该是

代码语言:javascript
复制
nl,write("Solution:"),nl,

请注意我已经更改了字符串符号。

在纠正了那个错误之后,我运行了你在这里显示的程序,它给了我:

代码语言:javascript
复制
procedure `write_path(A)' does not exist
Reachable from:
      action(A,B)
      start

但正如我之前说过的,没有像write_path这样的东西。也许你错过了?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70462570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档