Discord
@hash/modern-warehouse
Simulation
1
0
Public

Modern Warehouse

This model provides a base template for constructing warehousing simulations in HASH. It makes use of the Waypoint library for intelligent navigation.

This model provides a base template for constructing warehousing simulations in HASH.

Initialization

This simulation uses a modular approach to initialize the warehouse layout. The parameters in globals.json are used in init.js to determine the widths of aisles, the the depth and number of shelves in each column and row, and the dimensions of the warehouse itself.

Any of these parameters may be modified to adjust the layout of the factory for different use cases.

Forklifts

Forklifts are responsible for transporting goods around the warehouse.

To interact with the shelves and dock, forklifts make use of the Rack Library. This published library consists of behaviors that allow agents to pick up and place objects by using messages. See the library's documentation for more detailed instructions on its use.

Navigation

The forklifts make use of a new Waypoint navigation method. An underlying network of waypoints is built underneath the model. Each waypoint contains a map that allows agents to find the destination of their next waypoint, based on their destination:

"map": {
  "aisle3": [
    19.75,
    2
  ],
  "aisle4": [
    19.75,
    2
  ],
  "aisle5": [
    19.75,
    2
  ],
  "aisle6": [
    19.75,
    2
  ],
  "dock": [
    19.75,
    2
  ]
}

Agents move towards their next waypoint until they are close enough to receive their next destination. Once agents have reached the waypoint closest to their final destination, they navigate directly to the location.

This creates realistic and efficient agent movement around obstacles.

You can learn more about the Waypoints Library here.

Manager

The Manager agent is responsible for assigning loading and unloading to forklifts. The manager.js behavior uses messages to pass instructions to the appropriate forklift agents.