【发布时间】:2021-05-07 07:15:02
【问题描述】:
编辑以获得更好的解释(对不起)。
我有一个半去中心化的优化问题。半去中心化的意思是:我有一个聚合器来控制每个代理的最佳响应,但是这些代理有一个单独的成本函数(变量和约束都被复制)。理论上,我只需要找到一个初始可行点(对于所有代理),然后通过迭代解决每个代理的优化问题,它会收敛到一个最优值。
我的问题是,为了找到一个初始可行点,我不会同时考虑每个代理,而是在没有目标函数的情况下使用迭代循环进行优化阶段(使用 mdl.remove_objective) .我想,通过运行足够多的时间,它最终会为所有代理提供一个可行的解决方案。但是,CPLEX 得出的解决方案都非常相似。这使得无论我运行多少次,第 6 个代理都没有可行的解决方案。
我的问题是:如何在每次迭代中强制可行点是可行集中的实际随机点?因为看起来,也许从 CPLEX 用来寻找可行解决方案的捷径来看,它总是选择相似的解决方案。
(我知道我可以同时解决所有代理的初始可行点,但我仍然想知道是否可以做我想做的事)
谢谢!
【问题讨论】:
-
您能解释一下什么是“代理”,以及它与变量、约束等建模概念的关系吗?
-
嘿菲利普。我刚刚编辑了这个问题。我很抱歉最初的解释很糟糕,我希望现在可以理解了。谢谢