Text this: Evolutionary algorithms for robot path planning, task allocation and collision avoidance in an automated warehouse