AI人工智能 如何用逻辑编程解决问题
在本章中,我们将重点介绍逻辑编程以及它在人工智能中的作用。
我们已经知道逻辑是对正确推理原则的研究,或者简单地说就是研究什么是什么。 例如,如果两个陈述是真的,那么我们可以从中推断出任何第三个陈述。
概念 逻辑编程是两个字,逻辑和编程的组合。 逻辑编程是一种编程模式,其中问题通过程序语句表达为事实和规则,但在形式逻辑系统中。 就像面向对象,函数式,声明式和程序式等其他编程模式一样,它也是编程方法的一种特殊方式。
逻辑编程使用事实和规则来解决问题。 这就是为什么他们被称为逻辑编程的基石。 在逻辑编程中需要为每个程序指定一个目标。要理解在逻辑编程中如何解决问题,我们需要了解构建块 - 事实和规则 -
事实 实际上,每个逻辑程序都需要事实来处理,以达到既定目标。 事实上基本上是关于计划和数据的真实陈述。 例如,北京是中国的首都。
规则 实际上,规则是允许我们对问题域做出结论的约束条件。 规则基本上写成逻辑条款来表达各种事实。 例如,如果构建游戏,那么必须定义所有规则。
规则对于解决逻辑编程中的任何问题都非常重要。 规则基本上是可以表达事实的合乎逻辑的结论。 以下是规则的语法 -
A∶− B1,B2,...,Bn
在这里,A是头部,B1,B2,… Bn 主体。
例如 - ancestor(X,Y): - father(X,Y)
。
ancestor(X,Z): - father(X,Y),ancestor(Y,Z)
。
对于每一个X
和Y
,如果 X
是 Y
的父亲,Y
是 Z
的祖先,那么 X
是 Z
的祖先。对于每个 X
和 Y
,X
是 Z
的祖先,如果 X
是 Y
和 Y
的父亲是 Z
的祖先。