首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优化语句语法的差异(clingo 3和clingo 4)

优化语句语法的差异(clingo 3和clingo 4)
EN

Stack Overflow用户
提问于 2015-05-28 19:47:17
回答 1查看 896关注 0票数 1

我在一个逻辑程序中有一个优化语句,用于clingo3:

代码语言:javascript
复制
#minimize [ batteryFlat(mycar)=1, batteryFlat(yourcar)=1, hasNoFuel(mycar)=1, 
    hasNoFuel(yourcar)=1, brokenIndicator(mycar)=1, brokenIndicator(yourcar)=1].

(基本上,我希望解决方案包含尽可能少的上述内容-它们都具有相同的权重)。

此语法适用于clingo3,但不适用于clingo4。应该如何为clingo4重新编写?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-29 12:50:55

这个怎么样:

代码语言:javascript
复制
#minimize {batteryFlat(mycar); batteryFlat(yourcar); hasNoFuel(mycar); 
hasNoFuel(yourcar); brokenIndicator(mycar); brokenIndicator(yourcar)}.

集合现在与;,然后您可以使用,以连接条件。每个元素都有相同的优先级,但是如果您想要不同的优先级,您可以这样做:

代码语言:javascript
复制
#minimize {1@1: batteryFlat(mycar); 1@2: batteryFlat(yourcar); hasNoFuel(mycar); 
hasNoFuel(yourcar); brokenIndicator(mycar); brokenIndicator(yourcar)}.

现在第一个原子有优先级一个(我认为至少有一个),第二个原子有一个更高的优先级。

或者,如果有变量,那么优先考虑不同背景的数量,如下所示:

代码语言:javascript
复制
#minimize {X@1: batteryFlat(X); 1@2: batteryFlat(yourcar); hasNoFuel(mycar); 
hasNoFuel(yourcar); brokenIndicator(mycar); brokenIndicator(yourcar)}.

下面显示了比较:http://sourceforge.net/projects/potassco/files/clingo/4.2.0/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30515834

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档