【发布时间】:2018-11-22 20:34:31
【问题描述】:
我正在使用 cligo 来解决 flood-it 问题。我使用谓词frontier([CELL], [COLOR], [TIMESTEP]) 来跟踪与洪水相邻的所有单元格。边界集可能如下所示:
frontier(c(1,3),2,3) frontier(c(2,1),2,3) frontier(c(2,2),3,3) frontier(c(2,3),3,3) frontier(c(3,1),3,3) frontier(c(3,2),3,3) frontier(c(4,1),3,3)
我们可以将这个集合分成两个子集。每个颜色值分别为 2 或 3 的一种。我需要的基本上是两件事:
- 确定哪个子集更大,即颜色值为 2 或 3 的单元格是否更多(顺便说一句,颜色数量不固定,因此解决方案必须是通用的)
- 获取最大集合成员的颜色值
如何在谓词逻辑中比较 n (n>=2) 个集合的基数?
提前谢谢你!
【问题讨论】:
标签: logic planning answer-set-programming clingo