I have several orders now, but his processing order is random, say 1-3-5-2-sink
Or maybe 1-2-5-sink will also have 1-5-4-3-2-sink and so on, how can I model something like that. and I need to collect his processing order
I have several orders now, but his processing order is random, say 1-3-5-2-sink
Or maybe 1-2-5-sink will also have 1-5-4-3-2-sink and so on, how can I model something like that. and I need to collect his processing order
It would be good if you provide some further information.
Is the order pre-determined for each item? Or should each item only have the information which processors it needs to pass and the order will depend on the availability in the model?
Your model is build on the foundation of the Reinforcement Learning Tutorial model. Is this order logic supposed to interact with the RL system and if so in what way?
In general, a good approach would probably be to use a list the processors can pull from. The items should always return to a (collective) queue after being processed. Otherwise you might run into a deadlock situation where two processors need to pull each others item.
Hi @mark zhen , 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 unaccept and comment back to reopen your question.
In the attached model each item is assigned between 1-5 production steps on the different processors in the "On Creation" trigger of the source. Each processor is assigned a number through the "Num" label.
The items are pushed onto a list by the queue. The list has two custom expression fields.
The first one "needsProcessor" handles the pulling of items by the processor. It checks whether the number of the processor is present in the steps that the item still has to go through. If so, the field value is set to 1. This allows the processors to only pull items that need to be worked on by the respective machine.
In their "On Process Finish" trigger, the number is removed from the step array and instead added onto another array label that keeps track of the order in which the item was pulled by the processors.
The second field value evaluates to 1 if the step array is empty, so the item can then get pulled by the sink. In its entry trigger the needed steps and the order in which they were done is written to a global table.
I sorted out the ideas and determined the ideas are as follows. I have a total of five production processes as shown in the figure, 0 means skip, then I now have an order of 5,000 sheets (there are already related orders in my file), So now the situation is that when I have a type 4 order I have to start with the third machine and process it sequentially. What I want to do is probably like this
This can be done with two small changes to the model I attached in my answer.
1) Instead of generating a completely random order, a random column from a global table containing the processes is chosen and the steps copied to the array label.
2) The "needsProcessor" expression of the list is changed to only compare the first value in the array to the processor number to enforce the given order of the steps.
13 People are following this question.
FlexSim can help you understand and improve any system or process. Transform your existing data into accurate predictions.
FlexSim is a fully 3D simulation software environment. FlexSim can be used to simulate any process in any industry.
FlexSim®, FlexSim Healthcare™, Problem Solved.®, the FlexSim logo, the FlexSim X-mark, and the FlexSim Healthcare logo with stylized Caduceus mark are trademarks of FlexSim Software Products, Inc. All rights reserved.
Privacy | Do not sell or share my personal information | Cookie preferences | Report noncompliance | Terms of use | Legal | © Autodesk Inc. All rights reserved