Loops PROLOG/带循环的有向图中的所有路径

Loops PROLOG/带循环的有向图中的所有路径,loops,path,prolog,Loops,Path,Prolog,我得到了下面的图表: 第一个网关/连接器是或网关/连接器(其中有一个圆圈)。带有“x”的网关/连接器是XOR网关/连接器 或网关指定将采用一个或多个可用路径。 XOR网关表示在流中只选择一条路径的决策 我需要将此图转换为PROLOG,以便获得从节点1到节点8的所有可能路径,但我在编写OR网关代码和查找所有可能路径时遇到问题 如何将此图轻松转换为Prolog,以及如何找到两个节点之间网关的所有可能路径 谢谢你提前回复 您应该知道,Prolog程序基本上是一组规则。从图形中,每个节点都可以开始一条

我得到了下面的图表:

第一个网关/连接器是或网关/连接器(其中有一个圆圈)。带有“x”的网关/连接器是XOR网关/连接器

或网关指定将采用一个或多个可用路径。 XOR网关表示在流中只选择一条路径的决策

我需要将此图转换为PROLOG,以便获得从节点1到节点8的所有可能路径,但我在编写OR网关代码和查找所有可能路径时遇到问题

如何将此图轻松转换为Prolog,以及如何找到两个节点之间网关的所有可能路径


谢谢你提前回复

您应该知道,Prolog程序基本上是一组规则。从图形中,每个节点都可以开始一条规则,其中每个有向边给出一条显式规则。通过将图形编码为一组规则,对满足条件(1,X,8)的查询将为您提供每一条可能的路径,甚至是无限的路径


编码规则应该很容易(基本Prolog)。也许我不理解OR和XOR背后的特殊函数。如果这不是看起来那么简单,请解释更多。

因为有一个循环,所以有无限多的路径。你想怎么处理?