基于欧氏距离的概率

Probability based on euclidean distance

首先对模棱两可的标题感到抱歉。

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

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 考虑其他路线

您可能想尝试 softmax action selection:

其中 d 是每个 depot,τ 是 "temperature" 参数。当 τ → 0 时,你的选择变成贪心选择(总是最小距离)。当 τ → ∞ 时,你的选择变成随机的。