question

Florian G3 avatar image
0 Likes"
Florian G3 asked tannerp commented

Simulate different storage strategies

Hello,

I'm trying to simulate a basic Warehouse (source, rack, ASRS vehicle, sink) model to compare three storrage strategies:

FIFO (first in first out), LIFO (last in first out) and FEFO (first expired first out).

I have tried to set some labels for the Flowitems, but im struggling to unload the flowitems out of the rack by the strategies.

Where can I define the strategie in the properties of the rack?

Where can I set some movement options for the ASRS, wether it moves in a single or double cycle?

Many thanks in advance for your feedback and ideas

FlexSim 18.1.2
flexsim commandswarehouseasrs vehiclefifolifo
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

tannerp avatar image
1 Like"
tannerp answered tannerp commented

Hi @Florian G3,

If you use a list in your model, you can pull from that list using queries like "ORDER BY age DESC" that follow the logic of FIFO, LIFO, and FEFO. The lists will automatically track the age of the items on the list so all you need to do is add the proper query. If you post an example model, I'd be happy to show you where to do this. Just make sure to tag me @tanner.p.

Regarding the question about ASRS movements, do you mean how many items it picks up per cycle (like a capacity) or something different?


fifo-query.png (19.3 KiB)
· 10
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Joerg Vogel avatar image
0 Likes"
Joerg Vogel answered

Random: you can add an global item list in the toolbox. There exists a dynamic field which calculate the distance to the queue where an item is. You adapt this code to compute the distance of populated rack cells and the location of the extender of an ASRS vehicle. You need some adjustments in the rack.

  • The dwell time is set to hold the items in the rack.
  • You release the item in rack cell that you pulled closest to the location of the vehicle. The command is releaseitem.

If you need a dwell time for a random rack you must think about a priority strategy when the distance is in favor to the delay of release. The dwell time and the priority are fields of your list, which you evaluate in your pull condition.

For the search of closest empty cells you add another list that stores all currently empty cells. An additional static field is the distance to your queue. You pull the cell node value from the list, when you transfer an item into the rack, and you push the cell node into the list when you unload an item from the cell.
You can start with my own question and answer to get rack cells. You need to convert the result table into an array to push the rack cells into a list. The querry clause to achieve this is ARRAY_AGG(yourColumnName).

5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.