Last Updated | | Ratings | | Unique User Downloads | | Download Rankings |
2022-09-01 (29 days ago) | | Not yet rated by the users | | Total: 26 This week: 1 | | All time: 10,673 This week: 206 |
|
Description | | Author |
This package can find the shortest path to visit warehouse bins.
It can generate a graph with a given number of nodes and a list of edges that can have bins in a warehouse.
The package can find the shortest path to traverse all bins from a starting point and return to the same point.
A Python component can render the warehouse bins' path as an image. | |
|
|
Innovation award
Nominee: 5x |
|
Details
Sylvane Task
This is a task to find the shortest path by visiting all the bins in the warehouse and coming back to the start position in an optimal way.
Approach
-
We are considering the aisle as the nodes in the graph and when we are at a certain aisle we can pick the item from the bin on either side of the aisle.
-
The Modified Breadth-First Search is used to find the shortest path from all pairs of nodes in the graph.
-
Starting with the start position this approach greedily picks the nearst node from the start position and then takes the path and then from there picks the next nearsest node until all the bins are visited.
-
Finally, it returns back to the start position.
The graph of the warehouse is as follows:
In the above graph, the green nodes are the aisles and are paths that can be traversed and the white nodes are the bins from which we can pick the items.
Execution
To test the working of this code. Clone this repository and then run the following command:
php main.php
Make sure you have PHP CLI installed before running the above command.
Visualization
To execute the visualization using Python you need to install the NetworkX
and Matplotlib
libraries. They can be installed by running the following command:
python -m pip install -r requirements.txt
Then, run the following command to generate the visualization of the Warehouse.
python visualization.py
|
Applications that use this package |
|
No pages of applications that use this class were specified.
If you know an application of this package, send a message to the author to add a link here.