Z3优化模块出现意外行为?

问题描述 投票:0回答:1

我也有一个带有软约束的优化问题。所有软约束都具有相同的权重 1. 问题:如果软约束改变了优化值,那么它们实际上不应该被忽略吗?在我的例子中,是一个最小化问题,使最优值比不使用它们时更高?

请参阅文件 '''https://pastebin.com/b688r7qf'''。如果我删除所有软约束,则最佳值为 1440;如果我添加(一些)软约束,则会增加到 1680。因此,即使我有软约束,我的最小值也应该是 1440。

这种现象仅在我遇到的一些优化问题上出现。

我错过了什么吗?

z3 z3py
1个回答
0
投票

理想值可能会受到软限制的影响,特别是当这些约束不一定需要达到可行的解决方案时。如果软约束大大增加了最优值,则可能会导致解决方案偏离真正的最小值,就像在您的情况下所做的那样。在许多优化情况下,这是预测的行为;然而,是否应该忽略此类软限制取决于它们在您的特定情况下的重要性。

问候 尼莎·马歇尔 尊贵长青

© www.soinside.com 2019 - 2024. All rights reserved.