### 调度系统作用于多AGV
#### 首先,什么时候需要调度。当多个任务同时进行,而且多个AGV对路径(结点)资源存在竞争时就需要调度。什么时候不需要调度。如果只有一个AGV运输任务,所有的资源任由这个任务分配,则不需要调度。或者多AGV任务同时进行,但之间不存在竞争关系就不需要调度,因为他们不会发生冲突。故调度的前提是多个AGV共享路径网络,AGV之间存在资源争夺。我们需要同时考虑将任务分配给合适的AGV的问题,在存在资源争夺时哪台AGV优先的问题以及各AGV运行效率的问题。在调度问题中的路径规划不再是单机路线最短最优,如果每台AGV都只考虑自己而不考虑其他车辆,其后果可能会造成死锁进而影响到系统安全和稳定。故只考虑单个AGV路径规划的最优解会陷入局部最优解反而可能变成全局最差解。(单AGV的任务是调度问题的一个特例,此时调度问题退化成了路径规划问题)
>
### 调度问题主要包括任务分配(派遣),环境建模和路径规划
#### 例如,任务分配由Dispatch决策哪辆车应该处理哪一个运输任务。在调度问题中环境构建能够极大的降低死锁现象的发生,主要通过一些layout建模的方法来解决冲突,极大地降低了死锁现象的发生概率。最后在分布式调度系统中可以通过对Route为每个AGV规划的最低能耗路径进行局部协调来(交通管理,资源分配)寻求全局最优解的近似以提高效率加避免死锁。
>
### 调度问题的难点
#### 事实上调度系统是完备的,调度问题的全局最优解(例如总能耗最低)是一定存在的,但是现实中几乎不可能解出来。原因之一是想要通过预测的方式来“完美”地取代交通管理来处理结点冲突是不可能的。调度系统所掌握的信息是动态的,AGV在运行过程中自身出现的各种问题是不可预测的(甚至抛锚发生死锁),这最终导致我们对各个AGV对路径资源占用情况的理想预测与实际相比不准确。故大多数时候我们还是需要交通规则法来“折衷”的寻求一个近似全局最优解。
>
### 调度的设计需求: