【问题标题】:Probability based on euclidean distance基于欧几里得距离的概率
【发布时间】:2016-10-11 10:49:52
【问题描述】:

首先抱歉标题含糊。

我正在研究多场站车辆路线问题的遗传算法。 我正在根据从客户到仓库的距离创建候选解决方案。我创建了一种方法,可以为每个仓库为每个客户提供服务的概率。伪代码如下:

for each customer

    for each depot
        calculate euclidean distance between customer and depot

    get the maximum distance

    for each depot
        totalDistance = totalDistance + (maximumDistance - currentDepotDistance)

    for each depot 
        depotProbability = (maximumDistance - currentDepotDistance) / totalDistance

结果如下:

虽然这个公式有效,但我希望能够以某种方式增加或减少概率以找到合适的比率。我希望能够从始终选择最近的站点的点移动到随机分配站点的点。

编辑 在接受的答案中实现算法后的结果:

T=0.1 离每个客户最近的仓库

T=20 考虑的其他路线

【问题讨论】:

  • 你的目标指标是什么?
  • @MarcusMüller 我不明白你的问题
  • 您要优化什么?
  • 我试图在随机分配和严格分配之间找到平衡点。当前方法也倾向于随机分配。我有 32 个不同模式的测试用例,所以我希望能够改变概率。
  • 余额由什么衡量?行驶的总距离?最小角度变化量?最小路径交叉点?

标签: probability graph-algorithm genetic-algorithm euclidean-distance


【解决方案1】:

您可能想尝试类似softmax action selection:

其中d 是每个仓库,τ 是“温度”参数。当 τ → 0 时,您的选择变成贪婪选择(总是最小距离)。当 τ → ∞ 时,您的选择变得随机。

【讨论】:

  • d 是一个仓库吗?所以分母将是 `e 与 T 上每个距离的幂的总和?
  • 没错。只是为了确保:它是负距离,而不是距离。
  • 感谢您的帮助。它工作得很好。我还将结果添加到问题中。
猜你喜欢
  • 2013-03-02
  • 2015-07-15
  • 2014-02-04
  • 1970-01-01
  • 2014-10-06
  • 2021-10-01
  • 2012-12-21
相关资源
最近更新 更多