prolog - 将 Prolog 知识库表示为树
问题描述
我打算为知识库创建一个搜索算法。知识库本来就是规则的形式,例如:
a :- b, c.
a :- d
b.
d.
其中可以表示为列表[[a,b,c], [a,d], [b], [d]]
。或者,它可以表示为一棵树:
[a]
|
-------------
| |
[b,c] [d]
| |
[c] [ ]
但是,我不明白这些表示背后的原因。这是 Prolog 中使用的常见抽象吗?(我还是新手)。有同学告诉我,也可以看成是一个FSM,其中[b,c]
和[d]
是最终状态。但这似乎也没有意义,因为[b,c]
没有子节点,而[d]
有。
关于如何表示/查看知识库是否有一些共识?我很难找到每个表示之间的联系,以及它们的含义。对于我的问题含糊不清,我深表歉意,但我对 Prolog 和知识库知之甚少,以至于我不知道如何问这个问题。如果它有帮助,这是一门人工智能课程。任何见解表示赞赏,谢谢!
解决方案
推荐阅读
- javascript - onShippingChange 不适用于 data.shipping_address.country_code
- django - Django:如何过滤并获取包含所有搜索关键字的结果
- node.js - 使用 botium-cli 运行自定义示例时找不到 webdriver 模块?
- javascript - 测试库无法设置只有 getter 的 [object Object] 的属性错误
- python - 是否可以在进程之间共享一个不为空的 numpy 数组?
- c - 编译模块时找不到linux文件夹中的头文件time_types.h
- python - 在 numba 中使用 numpy 随机选择
- firebase - Firestore 规则以检查用户 Cloud Firestore 中是否存在用户喜欢的帖子
- python - 来自客户端系统的 Grep 路由器 ARP 表,无需使用 python 登录路由器主页
- python - 提取br标签美汤python