前向链接与后向链接

时间:2010-07-29 15:27:53

标签: artificial-intelligence data-modeling prolog drools datalog

另一个人没有在实践中有什么好处?我理解他们所做的事情,但他们在实际使用中的局限性和能力是什么?我正在考虑Drools vs一个新的AI项目的java prolog,但对其他建议持开放态度。在复杂的关系数据集或替代方案上进行推理有哪些流行的方法?

4 个答案:

答案 0 :(得分:45)

后向链接(la Prolog)更像是找到初始条件形成目标的路径。在一个非常基本的层面上,它是从你的目标向后搜索,找到能够实现它的条件。

后向链接用于疑问应用程序(查找满足特定条件的项目) - 后向链接应用程序的一个商业示例可能是查找特定再保险合同涵盖哪些保险单。

正向链接(la CLIPS)匹配条件,然后根据这些条件生成推断。这些条件可以反过来匹配其他规则。基本上,这需要一组初始条件,然后从这些条件中得出所有推论。

推断(如果声明)也可以是可以触发外部操作的操作或事件。这在事件驱动的系统中很有用,因为规则集可以配置为(例如)启动工作流或其他一些操作。这种类型的规则引擎是商业应用中最常用的。

事件驱动系统是正向链规则引擎的常见应用。正向链接应用的一个示例可以是电信计划供应引擎(通常用于管理移动电话计划)。输入具有特定计划的特定用户将触发在各种电话交换机,计费系统,财务,CRM系统等中设置的一系列项目。

答案 1 :(得分:19)

关注的答案非常好。当被要求将差异煮沸时,我通常会说:

大量输出假设+前面的大量数据=>使用正向链接

更少的输出假设+必须查询数据=>使用后向链接

但这只是一个经验法则,而不是诫命。

答案 2 :(得分:4)

在旧的古老的老专家系统中,他们曾经说过前向链接有利于环顾四周(检查可能是什么),而后向链接有利于确认(检查“它”是否真的如此)。

思考配置(正向链接,XCON [1])和医疗诊断(MYCIN)[2]

  1. http://www.aaai.org/Papers/AAAI/1980/AAAI80-076.pdf
  2. https://www.amazon.com/Rule-Based-Expert-Systems-Addison-Wesley/dp/0201101726

答案 3 :(得分:1)

正向链接涉及“接下来会发生什么?”的问题,而反向链接则关注“为什么会发生这种情况?”这个问题。

正向链接的一个例子是预测股票市场状态是否会对利率变化产生影响。

反向链接的一个例子是诊断人类血癌。

简单地说,正向链接主要用于预测未来结果,而反向链接主要用于分析历史数据。