cost 290 ms
哪些运算符和谓词可以与 clp(fd) 一起使用? - Which operators and predicates can be used with clp(fd)?

首先, clp(fd) 文档提到: 在现代 Prolog 系统中,算术约束包含并取代整数上的低级谓词。 算术约束的主要优点是它们是真实的关系并且可以在所有方向上使用。 对于大多数程序,算术约束是您唯一需要从这个库中获得的谓词。 其次,在先前提出的问题中,提到include/3与 clp(fd) 不 ...

2023-01-10 19:25:38   2   91    prolog / clpfd  
为什么这个使用 include/3 的 prolog 规则评估为 false,但在将其分解为单独的比较时却不是? - Why does this prolog rule using include/3 evaluate to false, but not when exploding it into individual comparisons?

我有一个 prolog 规则position_that_is_equals_to_two将X设置为 position,在提供的三个元素[X, Y, Z]列表中找到数字2 : 查询时,我立即得到false : 但是,当我用单独的比较替换include/3时, prolog 为X提供了三个可能的值,这 ...

“bagof”的非分支版本 - Non-branching version of 'bagof'

我正在尝试实现一个类似数独的解谜器,它涉及 prolog 中的组,其中一个规则是相同的值不能在同一组中重复。 我的代码“有效”,但最终“分裂成两个分支”: 理想情况下,对于这个示例,我希望它返回一个I值并填充所有值,但我什至不知道发生了什么。 为什么会这样分支? 我应该怎么做才不会分支? 编辑:我已 ...

在 SWI-Prolog 中实现大于/不等式数独解算器时遇到问题 - Trouble implementing greater-than/inequality sudoku solver in SWI-Prolog

我一直在尝试修改clpfd 文档中可用的数独解算器,以解决大于数独的谜题,例如这个: 大于数独游戏示例在这些谜题中,每个块包含单元格之间的十二个不等式(六个水平不等式和六个垂直不等式),作为解决方案的一部分必须满足这些不等式。 我将不等式建模为九个列表的列表,每个列表包含从 0 到 1 的六个整数, ...

尝试在 Prolog 中解决游戏 - Trying to solve a game in Prolog

假设,我们有以下游戏: 有一对数字 (x, y),有 2 名玩家在走棋。 在移动过程中,玩家可以将任何数字增加 1 或将其乘以 2。在移动后 (x + y) >= 77 的玩家获胜。 初始的 position 是 (8, x),求最小的 x,比如如果第一个玩家下棋不成功,那么第二个玩家获胜。 ...

2022-09-04 18:59:05   2   47    prolog / clpfd  
如何限制 prolog 解决方案中可能使用的整数? - How can I limit the possible integers used in my solutions in prolog?

我一直在尝试学习 prolog,但在限制可在我的解决方案中使用的可能整数时遇到了问题。 例如,在我的 SWI 终端中,我运行[X,Y,Z] ins 0..1,X #\= Y, Y #\= Z, Z#\= Y. 作为 output 我得到了 当我想变得虚假时。 这只是我一直遇到的问题的一个例子。 我 ...

地图着色序言 - Map Coloring Prolog

我编写了这段代码来使用 prolog 解决地图着色问题: 我尝试使用查询获得解决方案: 但我总是收到错误“参数没有充分实例化” ,如何解决这个问题? ...

2022-05-26 16:31:50   1   42    prolog / clpfd  
为什么这个 CLP(FD) 约束解决缓慢,我该如何调试它? - Why is this CLP(FD) constraint solving slowly and how do I debug it?

我通过 Advent of Code 挑战来学习 Prolog。 代码出现 2021 天第 7 天的剧透如下: 目标是:给定一个自然数列表n_1,..., n_k ,找到 在下面的代码中norm1计算求和, cost计算给定x的总和, lowest_cost计算所有x的最小值。 一些示例查询: 使 ...

CLP(FD)中的奶奶生日拼图 - The Grandma Birthday Puzzle in CLP(FD)

Prolog 可以用 CLP(FD) 解决这个难题吗? 我看到了一些问题使用 CLP(FD) 进行操作,因为可能需要分饼: 爱德华正在去拜访他的祖母的路上,他还活着在 state 的末尾。 今天是她的生日,他想要把他做的蛋糕给她。 在他的位置之间和她奶奶家,他要过7座收费桥。 在你可以过收费桥之前 ...

2021-12-02 19:24:07   1   23    prolog / clpfd  
如何使用 fd 求解器来确定列表的哪些元素可以和给定的数字相加? - How to use an fd solver to determine which elements of a list can sum to a given number?

给定可能的被加数列表,我想确定哪些(如果有)可以形成给定的和。 例如,使用 [1,2,3,4,5] 我可以将 9 与 [4,5]、[5,3,1] 和 [4,3,2] 相加。 我正在使用 GNU Prolog 并且有类似以下的东西不起作用 我认为主要问题是我没有正确表示总和的约束? 或者也许是别的 ...

树方法无限循环 - Tree methods going on infinite loop

所以当我实例化我的整数变量时,我的所有树代码都不能正常工作。 这是我的意思的一个例子: 我实际上并没有使用它,但这是我对树的定义: 因此,如果运行以下查询tree_order(Tree, 2). 它给了我一个解决方案,然后当它回溯时,它会进入无限循环。 老实说,这让我感到困惑,因为我已经在脑 ...

2021-10-19 00:23:12   2   73    prolog / clpfd  
CLPFD ins 运算符产生未充分实例化的错误 - CLPFD ins operator yields not sufficiently instantiated error

所以,我的目标是在 Prolog 中制作地图着色器。 这是我正在使用的地图: 这是我的着色限制: 其中 [A,B,C,D,E,F] 是从 1 到 n 的数字(颜色)列表。 因此,我希望我的求解器在给定 6 种颜色列表和自然数 N 的情况下,以两种方式确定颜色和 N 约束,以一种即使是最一 ...

2021-10-16 15:14:17   2   83    prolog / clpfd  

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM