Warehouse Fast Track Tutorial

1. Intro

This is a concise, fast-track version of the Warehouse Tutorial:

  1. Almost no comments are given for each step.

  2. The subject area is simpler.

2. Description of the System Being Modeled

The warehouse stores cargo (in pallets).

The warehouse consists of the main storage area and dock areas of two types: for incoming and outgoing cargo. Each dock area is outfitted with a small number of storage places for cargo. Cargo is received through an incoming dock area. Cargo that is about to be shipped must first be placed into an outbound storage area.

Cargo is stored in pallets. Pallets can be placed to storage places (at most one pallet per place) in the main storage area and in the dock areas.

Forklifts are used to move the pallets around the warehouse. A forklift can carry at most one pallet of cargo at a time. A forklift can only pick a pallet at some storage place and deliver it to another storage place. Each pallet is moved independently by any available forklift.

When cargo arrives to an incoming dock area, it is unloaded instantly: several storage places in the dock area become occupied by pallets at once. If, by the time of cargo arrival, the dock area lacks vacant storage places, the arrival is considered failed and is not repeated or queued.

When there is a request to ship cargo, it is removed from an outbound dock area instantly. If, by the time of shipment request, there is not enough cargo in the outbound dock area, the shipment attempt is considered failed and is not repeated or queued.

Cargo can be moved from an incoming dock area to the main storage area, from the main storage area to an outbound dock area, and directly from an incoming dock area to an outbound dock area.

3. Simulation Goals

The goal is to estimate the minimum number of forklifts required to maximise the service level.

Service level = (successful arrivals + successful shipments) / (attempted arrivals + attempted shipments).

4. Source Code

You can get the ready-to-run source code for this tutorial here: https://github.com/amalgama-llc/warehouse-fast-track-tutorial/

After you clone the repository, do the following to launch the app:

  1. Visit the Step 1: Setup and create a project and do items "1.1. Download Eclipse" and "1.2. Install JavaFX"

  2. Start Eclipse. Install 'e(fx)clipse' and 'ResourceBundle editor' via the 'Help → Eclipse Marketplace' Eclipse menu item. Restart Eclipse.

  3. Do item "1.4. Setup Eclipse workspace" from Step 1: Setup and create a project.

  4. Import the source code to Eclipse (in Project Explorer, click 'Import…​' item in the context menu).

  5. Visit the Step 1: Setup and create a project again and do items "2.2. Select the active target", "2.3. Update JavaFX runtime path in the product file", and "2.4. Run the application". The application should now be running.

  6. As the app has started, open the scenario file from the 'scenario' folder.

  7. Switch to the simulation mode and run the simulation.