问题标签 [clpr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
160 浏览

prolog - SWI-PROLOG 如何使用库(clpqr)求解器谓词

我在 SWI-Prolog 中使用库 CLPQR 中的谓词失败了。图书馆本身可以工作。像“clpq: {X = 5^2}”这样的表达式得到了正确解决。但我不知道如何使用“最小化”、“最大化”、“inf”、“sup”等。链接到 Prolog 手册http://www.swi-prolog.org/pldoc/man?section =clpqr。如果有人可以提供一些代码示例,我将不胜感激!

0 投票
2 回答
345 浏览

prolog - Prolog 约束逻辑编程 (clpr) 中的未知数顺序

我有:

哪个与查询:

产量:

正如预期的那样。但是为什么不

还给我 Y 和 Z 的值吗?我得到的是:

谢谢!

0 投票
1 回答
43 浏览

prolog - 访问数值表达式中的系数 (clpr)

我有一些子句,其中头部代表线性方程中一组变量的名称和值,主体代表实际方程。像这样:

有没有一种直接的方法来(间接地)得到这个方程的系数?即返回coefficient(VARNAME, COEFFICIENT)例如coefficient(x1, 0.5), coefficient(x2, 0.6)等的规则。

我知道这似乎是一个愚蠢的问题,因为将所有系数放在子句的头部很容易。但是在我的应用程序中,我希望这些子句的开头严格显示每个变量的值(而不是它们的系数)。即避免歧义。

我目前的解决方案是一个复杂且不雅的解决方案,涉及member/2, subtract/3maplist/2并将 X1、X2、X3 设置为 1 或 0 以计算出每个斜率。

相关问题: 在序言中表示线性函数

谢谢!

/JC

0 投票
1 回答
85 浏览

prolog - SWI Prolog,CLP(R):我可以将约束绑定到变量吗?

或者可以将约束变量绑定到另一个变量(参见下面的示例)?

0 投票
1 回答
260 浏览

prolog - 在 CLPQ/R (Prolog) 中解决一个简单的几何难题

考虑以下正方形:

在此处输入图像描述

给你三个约束:

  1. 所有矩形(A、B、C、D 和 E)的面积相同;
  2. 它们的几何布局构成一个正方形;和
  3. A的高度为2。

现在,我知道手动解决这个问题非常简单,但我认为这将是一个很好的例子,可以用 Prolog 展示 CLP(Q/R) 的功能:


剧透警告:如果您想先自己解决难题,请不要继续阅读此内容,因为存在限制会放弃解决方案。


无论如何,这是我用 CLP(Q/R) 定义这个难题的尝试(我认为包括冗余约束):

查询时:

...让我伤心。约束求解器的一个如此美丽的例子......有人愿意消除我的悲伤吗?


附录:我使用 Mathematica 和FindMinimum函数来检查我的约束。它似乎正在工作:

答案: