You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MiniZinc简单TSP模型输出两条最优路径问题咨询

问题分析与解答

为什么会出现两个路径结果?

你看到的两个结果并非都是最优解,MiniZinc IDE默认会输出求解器在优化过程中每一个找到的改进型可行解,直到最终收敛到最优解:

  • 第一个结果(1533km)是求解初期找到的可行解,它满足所有约束,但总距离不是最小;
  • 第二个结果(1433km)才是真正的最优解,它的总距离更小,且输出末尾的==========标记表示求解已完成,找到全局最优。

你的模型是否有错误?

模型本身没有问题,核心约束都正确:

  • alldifferent([tour[i] | i in 1..n])确保所有城市仅被访问一次;
  • tour[1] == start_city和tour[n+1] == start_city保证路径从A出发并回到A;
  • 总距离的计算逻辑sum(i in 1..n) (dist[tour[i], tour[i+1]])正确累加了每一段路径的距离。

如何只输出最优解?

如果不想看到中间过程的可行解,可以修改MiniZinc IDE的运行设置:

  • 打开「Run Configuration」;
  • 找到「Show intermediate solutions」选项并取消勾选;
  • 重新运行模型,就只会输出最终的最优解。

内容的提问来源于stack exchange,提问作者Marcus J S Pereira

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 22:41:15