【问题标题】:Minizinc: partial search strategy with sharing indexesMinizinc:共享索引的部分搜索策略
【发布时间】:2021-07-26 12:01:20
【问题描述】:

给定 3 个长度相同的向量变量(比如 A、B 和 C),Minizinc 中有没有办法在其中一个(比如 B)上应用搜索策略,并在 B 的每个变量上实例化,搜索到A和C中相同位置的变量?

例如:A =[a1,a2,a3], B=[b1,b2,b3], C=[c1,c2,c3]

我想要这样的搜索:

  1. 使用某些条件搜索 B(例如:首先失败,以确保我们没有按顺序进行)
  2. 找到下一个要赋值的变量 (b2)
  3. 为 a2 和 c2 赋值(b2 的相同位置/相同索引)
  4. 继续搜索 B 等...

【问题讨论】:

    标签: constraint-programming minizinc


    【解决方案1】:

    MiniZinc 通常不支持复杂的启发式搜索。但是,您对搜索的描述可能接近于优先搜索:为 Chuffed 求解器发布的搜索机制。 您可以在以下研讨会论文中找到优先搜索的描述:https://ozgurakgun.github.io/ModRef2017/files/ModRef2017_PrioritySearchWithMiniZinc.pdf

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-28
      • 2011-07-06
      • 1970-01-01
      • 2020-11-17
      • 2019-07-07
      • 1970-01-01
      相关资源
      最近更新 更多