最近做AGV的调度模型,目前的做法是把申请AGV配送的任务记录到一张tableFile,然后按照状态满足,优先级,申请时间等排序任务集,若AGV在等待区且空闲则赋予AGV排序后的第一条任务。AGV离开等待区执行任务,在途不能接收新的任务,执行完回等待区等待一下个任务。; s1 ^) y d7 F6 V0 a
目前看了一些相关的文献,通用的调度策略是配送任务产生后去寻找最近的AGV,判断其是否可用,然后赋予其任务。请问如何去寻找“最近”的AGV,距离如何计算? 此外,如果任务申请时所有AGV都正在干活,那么是否所有AGV都回到等待区之后再响应这个任务?能否在AGV干活的时候就赋予其一个任务队列?AGV干完当前任务之后,自动执行下一道任务。% R& M8 f1 \8 Q9 f5 j6 R