## 2 Task Allocation and Dispatching  
This section first provides a general introduction into the topic of task allocation and dispatching, followed by a selection of methods used within this work. Finally, the selected methods and how they are implemented is described in the corresponding subsections. The dispatching of tasks across the available fleet of agents is one of the cornerstones of an autonomous intralogistics system. Our simulated environment produces one type of product on parallel workstations. If a new production job is assigned to a workstation, the required parts are identified. Move requests are issued to fetch and deliver those parts to the workstation. Once completed, another move request is issued to fetch and deliver the product from the workstation to the output buffer storage. These move requests are assigned to the available vehicles based on the specific dispatching policy employed. These algorithms facilitate heuristics in order to identify and assign the agent to a task that seems most suitable to accomplish it efficiently. Goal of the optimisation is an increase in the plant's overall throughput, or conversely, the minimisation of the mean duration between shipments at any of the environment's configured output storage. The specifics of the implemented dispatching policy contributes to the overall performance, e.g., regarding empty travel time, pick-up durations, or the overall makespans. To this end, we evaluate different approaches in different environment configurations for comparison. We would like to gain insights not only about the relative performance of the approaches compared to each other, but also how they perform in response to different environment configurations. Vehicle dispatching in itself is a well-studied problem in the fields of logistics at warehouses or container terminals, and taxi operations. Different approaches exist, some of which support multiple loads to be transported, shared rides, reassignment, or guarantees on the delivery time. [PERSON] [26] is without a doubt one of the central sources on AGV dispatching in a job shop environment. They presented a number of rules according to which matching decisions would be made, e.g., Shortest Travel Time First (STTF), whereby the vehicle would be assigned to a job that would travel to the pick-up location in the shortest time. They distinguished _vehicle initiated_ and _work centre initiated_task assignment (dispatching) rules_, implying different rules could be employed whenever a vehicle becomes available (again) versus a new move request is generated at a workstation. Each rule calculates a priority according to which a vehicle should pick a task from the set of available move requests, or a workstation to claim service from a vehicle from the set of available vehicles, respectively. Later works started to refine these rules. [PERSON] and [PERSON] [20] propose methods that support preempting task execution in order to redispatch tasks to other agents becoming available later (Modified Shortest Travel Time First, MOD STTF), and another method providing vehicles with task queues to let them participate in the assignment procedure even while they are still busy, i.e., to facilitate a predictive consideration of future vehicle availability (Bidding-Based Dynamic Dispatching, B\({}^{2}\)D\({}^{2}\)). While previously dispatching decisions would only be triggered upon insertion or completion of a move request, they proposed to review the assignments of vehicles until they are actually committed to their assignment. Where this commitment would be calculated based on the remaining travel distance. They also let vehicles travel uncommitted to a parking point, in case they are not directly assigned another task. With the employed dispatching rule, decisions are based on the greedy (Greedy, in the sense that the closest vehicle is always preferred, disregarding the overall sum of distances travelled by all the vehicles (c.f., Section 2.2).) minimisation of travel time for individual vehicles.