# 矿山任务调度算法
一、常见调度决策算法
1. 蚁群算法:
蚁群算法是一种仿生学算法,是由自然界中蚂蚁觅食的行为而启发的。在自然界中,蚂蚁觅食过程中,蚁群总能够按照寻找到一条从蚁巢和食物源的最优路径。下图显示了这样一个觅食的过程。
![](https://img.kancloud.cn/c6/b5/c6b5c739bd719ac145622e57dd364534_507x386.png)
在图(a)中,有一群蚂蚁,假如A是蚁巢,E是食物源(反之亦然)。这群蚂蚁将沿着蚁巢和食物源之间的直线路径行驶。假如在A和E之间突然出现了一个障碍物(图(b)),那么,在B点(或D点)的蚂蚁将要做出决策,到底是向左行驶还是向右行驶?由于一开始路上没有前面蚂蚁留下的**信息素(pheromone)**,蚂蚁朝着两个方向行进的概率是相等的。但是当有蚂蚁走过时,它将会在它行进的路上释放出信息素,并且这种信息素会议一定的速率散发掉。信息素是蚂蚁之间交流的工具之一。它后面的蚂蚁通过路上信息素的浓度,做出决策,往左还是往右。很明显,沿着短边的的路径上信息素将会越来越浓(图(c)),从而吸引了越来越多的蚂蚁沿着这条路径行驶。
2. 蜂群算法:
人工蜂群算法属于群智能算法的一种,其受启发于蜜蜂的寻蜜和采蜜过程,相比于常见的启发式算法,它的优点在于其使用了较少的控制参数,并且鲁棒性强,在每次迭代过程中都会进行全局和局部的最优解搜索,因此能够找到最优解的概率大大增加。
相比于遗传算法来说,人工蜂群算法在局部的收敛和寻优能力上要更为出色,不会出现遗传算法的“早熟”现象,并且算法的复杂度也较低。但由于遗传算法有交叉以及变异的操作,因此遗传算法在全局最优值的搜索上要优于人工蜂群算法。此外,人工蜂群算法适用于进行连续函数的全局优化问题,而不适用于一些离散函数。
结论:
了解了两种常用的智能调度算法。
结合石矿业务场景分析抽象矿山业务场景:
矿山调度需要根据车辆数、路线耗时、车辆吨位、挖机效率、配矿比等因素实现产量最大化/ 人员绩效最均衡/ 车辆工时最均衡的 不同的目标。 与蜂群算法有一定的类似性: 使用较少的控制参数,达到全局最优化的结果!