answer-set-programming

    1热度

    1回答

    我正在参加人工智能课程,我们正在使用Answer Set Programming(特别是Clingo)。目前我们主要讨论的是理论,我在模型和最小模型之间存在一些问题。我有以下定义: 通过满足规则,模型,至少模型和答案集明确 程序 的程序被称为明确的,如果没有“不”,在其体内规则。 集合S被认为满足形式a的规则: - b1,...,bm,而不是c1,...,not cn。如果它的主体满足S(即,b1

    2热度

    1回答

    我有一个应答集编程(ASP)的例子问题。当我尝试在Prolog中创建相应的代码时,我一直在阻止not。 这是ASP代码: road(berlin,potsdam). road(potsdam,werder). road(werder,brandenburg). road(X,Y) :- road(Y,X). blocked(werder,brandenburg). route(X,Y

    0热度

    1回答

    我想在clingo,解决那些有一系列事实和约束的断言经典灯谜的一个实施方案,你必须推断其他事实。这里有问题: 五个不同国籍的男子住在五个并排的房子里,每个房子都是不同的颜色;他们都有不同的工作,不同的喜爱的动物和喜爱的饮料。我们知道: 英国人住在红房子里。 西班牙男人最喜欢的动物是狗。 日本人是一位画家。 意大利人喝茶。 挪威人住在从左边的第一个房子。 (number_norw = 1) 生活在温

    2热度

    1回答

    问题是:盐被偷了!那么,它被发现的罪魁祸首是卡特彼勒, 比尔蜥蜴或柴郡猫。三是审判和法院作出以下 声明: CATERPILLAR: Bill the Lizard ate the salt. BILL THE LIZARD: That is true! CHESHIRE CAT: I never ate the salt. 。就这样,他们中的至少一个撒谎和至少一个说了实话。谁吃了盐 ? 我

    2热度

    1回答

    我是答案设置编程和尝试将问题编码到ASP的新手。我认为这是一个简单的问题。这是代码; events(1..3). sequence(A,B,C) :- events(A;B;C), A!=B, A!=C, B!=C. 正如你所看到的,有一个由事件组成的序列。在这种情况下,它的长度是3.但是我希望它由用户决定。例如; 如果用户希望它是一个长度为3,然后 外国佬asp.lp --const N

    1热度

    1回答

    我想在Clingo中制作一个程序来解决欧拉路径。到目前为止,这是我提出的。我想让我的图形如下所示。 我的输入。 edge(a,b). edge(b,c). edge(c,d). edge(d,e). edge(a,d). edge(b,d). %edge(x,y):-edge(y,x). num(1..6). 我的程序到目前

    0热度

    1回答

    使用CLINGO将给定的一组方块打包到指定的矩形区域中,但没有重叠。 例如,我们要打包的平方: 大小为4的A,尺寸3的B,C &大小为2 d,大小1 电子到一个区域5×8 #const x = 8. #const y = 5. square(a,4; b,3; c,2; d,2; e,1). %generate a grid: 1 { pos(X,Y) } 1 :- x(X),

    2热度

    1回答

    我已生成: curr(p5,2) curr(p5,1) curr(p5,6) 如何可以总结LASE字段2 + 1 + 6? 只见clingo_guild.pdf第21页以下: 15 :- not M-2 [ enroll(C) : hours(C,H) = H ] M, max_hours(M). ,并提出: #sum [pick(P) : curr(P,I) = I]. ,但我得到:

    2热度

    2回答

    我正在尝试使用DLV以最小距离查找图中的所有路径。说我有以下图表: 我期待获得谓词(我希望我不要跳过任何): 路径(A,B,1),路径(b,c,1),路径(b,c,1),路径(d,1),路径(a,e,1),路径(a,c,2) (c,b,1),路径(c,e,1),路径(c,a,2),路径(c,d,3),路径(b,e,2) ) path(d,a, (e,a,1),路径(e,c,1),路径(d,b,2)

    0热度

    1回答

    我一直在研究DLV一段时间,当程序很大时,我发现很难遵循规则的激活。所以我去了manual,并检查是否有什么可以让我做到这一点。 我发现的唯一的东西是前端选项-FP,但我不确定这是否是我正在寻找的,因为手册在这方面没有提供足够的信息。所以,我做了什么与此标志运行我的程序,但我得到以下错误: Background knowledge must not contain aggregates 程序运行没