Clear Sky Science · zh

用于求解无容量设施选址问题的连续人工蜂群算法

· 返回目录

更聪明的仓库选址方法

任何发货的公司都会面临一个基本但代价高昂的问题:我们应该把仓库或服务中心放在哪儿,以便既经济又可靠地服务客户?本文使用一种受蜜蜂觅食行为启发的算法来解决这个难题,并展示了经过改进的蜂群方法如何比许多竞争技术更准确、更稳定地规划这些选址。

Figure 1
Figure 1.

选址难题

仓库选址背后的数学问题被称为无容量设施选址问题。设想一组潜在的开设地点,每个地点都有固定的开设成本;还有一张客户分布图,每个客户必须由恰好一个已开设施服务,且存在一定的配送成本。目标是决定哪些地点要开设、每个地点要为哪些客户服务,使得开设成本与配送成本之和尽可能低。即便对于计算机来说,随着网络规模增大,可能的组合数量也呈爆炸式增长,这意味着我们需要聪明的搜索策略而非简单穷举。

向蜜蜂觅食学习

人工蜂群(ABC)算法借鉴了真蜜蜂探索环境的方式。在算法中,每只“蜂”代表一个可能的解。受雇蜂在其当前解附近搜索,观察蜂关注有前景的解,而侦查蜂放弃表现不佳的选择并跳到新的区域。ABC 最初用于微调连续数值,例如将刻度向上或向下滑动。然而,仓库选址决策本质上是二选一的:开这个站点还是不开;把这个客户分配到这里还是其它地方。因此,经典 ABC 除非附加额外机制将连续数值与开关决策互译,否则在这类问题上往往难以奏效。

把平滑搜索变成明确决策

作者提出了一个称为连续 ABC(cABC)的变体,它保留了原方法的平滑搜索机制,但使其自然地处理开/关选择。算法在0到1的连续空间中运行,将每个值视为该设施被开启的概率,然后用一条简单规则将这些概率转换为明确的开或关决策。为了避免从糟糕或过于集中的一组初始猜测开始,cABC 使用一种“混沌”模式将初始解广泛地散布在搜索空间中。当某个试验解表示没有任何设施被开启,或以其它方式违反约束时,一个动态修复过程会自动调整其若干选择,使其在不远离有希望区域的前提下变为可行。

Figure 2
Figure 2.

有引导的蜂群与自适应调整

在此基础上,cABC 增加了若干改进以帮助虚拟蜜蜂更有效地协同工作。算法并非总是只基于自身和一个随机伙伴来调整蜂的位置,而是有时允许其它随机选出的解来引导变化,既偶尔使用非常优秀的解,也有时利用较差的解以保持集中与多样性之间的平衡。一个随时间变化的方案会在搜索进程中逐步扰动解的更多部分,允许蜜蜂之间更深层次的信息共享。在观察蜂选择要改进的解的阶段,修改后的概率规则确保即便是平庸的候选也能获得一定关注,从而降低群体过快坍缩到单一选项的风险。最后,当某一蜂的位置长期未能改进时,cABC 并不舍弃它;相反,会生成该解的“对立”版本,这常常能使解落到更好的区域,同时仍利用已有的知识。

对蜂群算法的检验

为验证这些想法是否有效,作者在两个来源于运筹学文献的大型标准测试集上运行了 cABC,涵盖从中等到非常大规模的网络。他们将结果与原始 ABC 及其它十一种基于不同比喻(如萤火虫、乌鸦、蚂蚱和树种子等)的先进算法进行了比较。在这些测试中,cABC 不仅在大多数情况下匹配或改进了已知的最好成本,而且更加稳定,常常在几乎每次独立运行中都找到最优解。其优势在最大且最具挑战性的实例上尤为明显,而其他方法则经常陷入成本更高的安排中。

对现实规划的意义

简而言之,这项工作提供了一个更可靠的“蜂群启发”规划器,用于决定仓库、工厂或服务枢纽的选址。通过让算法以平滑概率进行思考,然后将其干净利落地转成二元决策——同时修复错误猜测并保持多样性——cABC 能够既广泛又深入地探索选项空间。结果是一个能够更稳定地找到成本更低布局的工具,对于需要在复杂大规模物流环境中设计经济高效配送网络的公司和规划者来说,它是一个有力的候选方案。

引用: An, M., Xiang, W., Jiang, Y. et al. A continuous artificial bee colony algorithm for solving uncapacitated facility location problems. Sci Rep 16, 8780 (2026). https://doi.org/10.1038/s41598-026-37792-5

关键词: 设施选址, 群体智能, 元启发式优化, 物流规划, 人工蜂群