我正在尝试在 prolog 中使用 clp 解决问题。问题如下:
基本上,一艘船载有许多集装箱,我们想卸下它们。集装箱被描述为谓词 container(I,N,D),其中 I 是集装箱标识符,N 是需要卸货的人数,D 是持续时间。一个示例可能如下所示:
容器(a,1,1)。
容器(b,2,2)。
容器(c,2,2)。
容器(d,3,3)。
容器也可以放在另一个容器上,例如:
上(a,c)。
上(b,c)。
上(c,d)。
容器 a 在 c 之上,依此类推...
问题是最小化卸载集装箱的成本。成本定义为雇佣人数乘以所需时间。在整个卸货期间雇用所有人员。
我从问题开始就遇到了问题,因为我不熟悉 prolog 的 clp 部分。有没有人对如何解决问题或在哪里可以找到有关 clp prolog 如何工作的示例有任何建议?