Cross-docking simulation with tasksequence

Cross-docking simulation with tasksequence

edu_perez
Not applicable
974 Views
3 Replies
Message 1 of 4

Cross-docking simulation with tasksequence

edu_perez
Not applicable

[ FlexSim 23.0.15 ]

Hi, I'm getting some troubles with my simulation of a cross-docking solution.

In my simulation I have eight sources and eight sinks (represented as trucks). each Income truck has a table of different products to unload and they do on pairs, so they send the product to 4 queues. Each queue has a dispatcher with an operator assigned to it. The output of the products follows the same scheme, 4 output queues that each serves to two possible client trucks, and each output truck is gonna carry a single type of product.

1712783353800.png


I had the model with simple connections but I wan't implement it using task sequence but I just can't figure out how should i do it...

I adjunct the model working and the poor try I made of getting it to work

cross-docking-case1.fsm
cross-docking-case1-processflow.fsm

0 Likes
Accepted solutions (1)
975 Views
3 Replies
Replies (3)
Message 2 of 4

joerg_vogel_HsH
Mentor
Mentor
Process Flow is a logic level. You can do almost everything in this logic level. And you have to do it all by yourself. In your 3D model you use several automatic features:
  • Choose a taskexecuter by center port connection,
  • Load from same loadstation,
  • Capacity of Taskexecuter,
  • transport to a destination object.

You start in your process Flow with an item to load. Please use global list instead of a local list, because you find entries in the model tree.

You know about an item a value of label Type and Object where it is by property up. You need data for a destination by type or queue, a taskexecuter doing a transport job. Then you collect two items of same type or residing in same queue from a list by a single query or multiple queries in pull form list activities. You load both items from a run sub flow sequence of activities. You let travel a chosen taskexecuter to a destination and you unload both items in a sub flow.

0 Likes
Message 3 of 4

FelixMoehlmann
Collaborator
Collaborator
Accepted solution

You can push the items to a global list directly in the "Use Transport" field. This has the added benefit that certain parameters, like the destination, are written to the item as labels. In the attached model I also write a reference to the input queue to a label, so the task executers can pull from 'their' queue.

1712839072127.png

In the Process Flow I create one token per task executer. These then pull two items from the list and transport them one by one. Note that because multiple items are pulled at a time, the resulting label is an array that contains all the pulled items. You need to load and unload them individually though. For this you can use a subflow and run through it once per entry in the array.

cross-docking-case1-processflow_example.fsm

To get closer to the 3d-model logic, you would need to make some further adjustments:

- Only pull a single item at first, then note down its type and try to pull additional items of the same type, so all pulled items will go to the same destination.

- Separate the load and unload into two subflows; first load all pulled items in a subflow, then travel to the destination queue, then unload all items in a subflow and finally travel back to the input queue.

Message 4 of 4

Jeanette_Fullmer
Community Manager
Community Manager

Hi @Eduardo Perez, was Felix Möhlmann's answer helpful? If so, please click the "Accept" button at the bottom of their answer. Or if you still have questions, add a comment and we'll continue the conversation.

If we haven't heard back from you within 3 business days we'll auto-accept an answer, but you can always comment back to reopen your question.

0 Likes