If you know your way around ProcessModel, you will know that there are 5 arrival types’ entities, continuous, daily pattern, ordered, periodic, and scheduled. In all the years I had been model building for six sigma process improvement, I have encountered a situation several time where I want the arrivals to be somewhat different, not that ProcessModel itself has limitation there are some arrival scenario’s that simply have to be coded and will not fit any already given type, or that a type cannot me made for them.
Like having entities arrive early, late or on-time or having a weekly random arrival for an example, there can literally be millions of arrival patterns that one can come up with. I will be talking about one of the most used (at-least by me) arrival pattern with ProcessModel in the lens, when you are process mapping for process improvement in your simulation software you will be stuck at-least once with this questions, how to make the arrivals come-in early, late or on-time? This is how you will do it.
As an example, I will be discussing a model that uses a single scheduled arrival 20 minutes prior to the target arrival time of 8:00am. The arrival occurs 20 minutes early (7:40), then the storage uses a Triangular distribution to randomly releases the entities between 0 and 40 minutes after their initial arrival, with the mean value being 20 minutes after they enter the storage (or 8:00am). To add additional arrivals simply add more scheduled arrivals at the desire “early” time as per your process improvement needs. A Scheduled arrival is used here, but you may change to another arrival type as needed. In any case, you must enter your specific arrival times. Action Logic In “Arrival Generator” a random time value is assigned to each entity. After that waiting time, the starting cycle time and value added time attributes are set to 0 so that when the entity leaves the storage location, it will be as though the entity just arrived in the model delivering what you required for your process simulation need.
To be clear, set up your arrival pattern as required, the arrival route of the entity that needs early, late or on-time arrivals should connect to storage, the Action Logic of the storage should first have time in distribution you want (example: Time(T(0,20,40) Min)) after setting the time set the CycleStart default attribute to system clock (example: CycleStart = Clock()) set VATime to 0 (example: VATime = 0) so that it make the entity as it just came into the model.