How can I test "Warehouse picking" feature?


I’ve managed to run the route optimization example perfectly (with Homberger dataset).
But in the description of cuOpt (blog, youtube, etc) it appears that it also solver the “Warehouse picking” problem (specially I want to test this part: “re-routes robots for efficient truck loading as new orders arrive”)

Where can I find an example\tutorial\guide of this feature? or is it something that will be released in a future version?

Hi Camilo,

I understand that you want to test a logistics use case for robots to pick orders and route them dynamically to dock zones for delivery. You can model this problem using the Pickup and Delivery approach. In this case, your cost matrix will represent time (instead of distance) between pairs of locations (pick zone to yard zone) and the optimization objective function will be to minimize total time for all orders thereby minimizing the idle time for the robot fleet. Some additional suggestions to set up features depending on the problem:
• To model waiting time you can add time windows to each order
• Fleet can represent the robots in a fleet
• You can add break windows to model any down time or charging time.
• You can add capacity dimension to model eaches or pallets.
• You can set up condition for robots to all return to original station for set up and asset management.
• You can specify break locations for robots to stop at specific locations for quality inspections or any value added service.
• You can set vehicle priorities for the robot type.

Please let us know if you are able to set up this model and/or any questions you may have on this one. We will also add more Notebook examples related to the pickup delivery feature in the coming release.

Hello @preethim and thank you for your quick answer,

I understand your approach, indeed it could work for my objective. The only problem (although I think I know how to solve it) is that Euclidean Distances are not optimal when you have to go through positions in a warehouse which has huge shelves, racks and aisles (some even with direction). For this, at some point I used an algorithm called A* (A-star) together with genetic-algorithms to find a relatively optimal solution, so, instead of using Euclidean Distance, I used the Manhattan Distance (Taxicab) avoiding obstacles to optimally navigate the positions in a picking path.

I could use this basis to generate a cost matrix between each position (even though they are thousands) by measuring the actual distances considering the aisles and pass this matrix to cuOpt with the considerations and constraints already in place to find an optimal and dynamic solution. Depending on what each person/forklift can transport to the packing area or conveyor belts (we are not using robots yet).

Anyway, I’d be really grateful if you could provide notebooks with examples of this kind in the near future.


You are correct as Euclidean Distance is not optimal for intralogistics. It is used as a sample in the notebook demo to compute sample vehicle routes. Manhattan distance is a better approach within a warehouse. We plan to add a feature in the next release that allows users to provide a weighted waypoint graph and a list of target locations which can include task locations, desired starting or ending locations. The required cost matrix will be then computed by CuOpt based on the provided inputs.

Thanks for your feedback on the notebook requests. This is something we are already considering in our future releases.


1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.