AnyLogic 8.8.1 now supports first in, first out and last in, first out rack types

AnyLogic 8.8.1 is now released and available for download.

Last year we released new elements of the Material Handling Library (Storage markup, Store and Retrieve flowchart blocks) to support the creation of large-volume warehouse models. This time we are proud to announce that Storage now supports FIFO (First In, First Out) and LIFO (Last In, First Out) rack types, making it possible to model the four most popular racking methods (selective, drive-in, gravity, and push-back shelving).

FIFO rack type

The idea for the implementation of gravity FIFO racks had persisted in our minds for years, and when we were planning the new Storage markup we already knew it would support gravity racks in the future.

In many cases gravity racks represent FIFO shelves where items stored on one side of the rack will be taken from the other side. The incline of the shelves in the case of gravity racks or special tools ensures items move automatically to the deepest free cell and move to the place of the agent that was just taken from the shelf. That’s why in Store block, a resource or transporter that takes an item to such a rack will be released as soon as it puts the agent on the shelf without waiting for it to reach the target cell.

To support FIFO flow within the storage, select the FIFO flow option in the Rack type property. You can set the angle of the shelf using the Shelves tilt property in the Appearance section. If the movement inside the rack is governed by special tools like rollers or shuttles, the Shelves tilt may remain zero.


Storage showing the shelves tilt

Storage showing the shelves tilt


See the FIFO type rack in action in our demo model, Picking Station with a Gravity Rack, and learn how to model the order fulfillment process on a picking line.


Picking Station with a Gravity Rack model

LIFO rack type

Gravity racks can also represent a type of rack in which an item that is being stored pushes the other items that are already located on the rack deeper inside the shelf. As in the FIFO flow, during the retrieving process those items that stay within the rack will automatically move to the place that is vacated by the retrieved agent.

This rack behavior is supported by the LIFO flow option of Rack type property of the Storage markup element. As opposed to the FIFO rack type, the Shelves tilt property in this case sets the tilt to the aisle from which items are stored on the shelf.

To explore the LIFO type rack in more detail, see our demo model Push-back Rack.


Push-back Rack model

Minor storage improvements

We are continuously improving our new features related to warehouse modeling. In 8.8.1 we have made it possible to use the preliminary reservation of rack cell. It is possible to reserve a particular location within the rack using the setReservation() API.

Once the agent is in the storing process, the Storage block will verify if the location that is specified in the slot option (available if specific slot option is selected for Slotting policy property) matches the reserved location. In case of a match, an agent will occupy the reserved cell without re-reservation.


Slotting policy with example code

Slotting policy with example code


Another significant change is the ability to change a load/unload aisle location by selecting the Reverse loading direction option of Storage markup. Once the option is selected, the load and unload aisles of the FIFO rack will be switched. As for the other rack types, the load aisle of stand-alone racks will be moved to the opposite side.


Initial state of the rack

Initial state of the rack



State of the rack with the switched aisles

State of the rack with the switched aisles


Read more about AnyLogic 8.8.1 updates and improvements in our AnyLogic Help Release Notes.

We will continue to enhance the warehouse simulation features and have much more to add in the future.


Follow us in our blogposts, explore new features, and subscribe to our monthly newsletter to keep updated on new developments.

Related posts