Building the Model: Advanced Elements > Modeling Tips > Batching & Unbatching Entities

Batching & Unbatching Entities

Batching refers to congregating or consolidating multiple entities of the same or different type for processing or movement purposes. Batching may be either temporary or permanent. For temporary batching, use the GROUP statement. For permanent batching, use the COMBINE statement.

Temporary Batching Using GROUP/UNGROUP

The GROUP statement allows you to group entities together and ungroup them at a later time. You may group entities by individual entity type by defining a process record for the type to group, or group them irrespective of entity type by defining an ALL process record. To combine multiple entity types in which you must control the quantity of each type requires controlling the routing which sends parts to the grouping location. ProModel maintains all of the identities and attributes of the grouped entities and allows them to remain with the individual entities after an UNGROUP command.

 

To illustrate how GROUP/UNGROUP works, suppose we want to consolidate 20 incoming entities into a group called Batch. If the current location performs no additional operation steps once you group the entities, you can simply use the statement “GROUP 20” to group the 20 entities and then specify an output of 1 Batch in the routing. If, on the other hand, the current location performs additional operation steps after the grouping occurs, use the statement “Group 20 as Batch” and define no output routing for the grouped entities. Instead, the entities become a new entity called “Batch” that needs a process record defined afterwards for the same location where you batched them.

Once you accomplish the purpose for which you grouped the entities, such as moving them, you can unbatch the entities using the UNGROUP statement as shown next. Note that after the ungrouping takes place, you must define processes for each potential entity that could have been in the group (alternatively you could define an ALL process record).

COMBINE Statement

ProModel uses the COMBINE statement to accumulate and consolidate a specified quantity of entities into a single entity, optionally with a different name. The entities may be the same type of entity or they may be different. Combined entities lose their identities and attributes and you cannot ungroup them later. When defining the location, the location capacity where you use the COMBINE statement should be at least as large as the combined quantity. The following shows the correct syntax for combining 5 Castings into a single entity called Pallet (the location, Out, should have a capacity of at least 5).

LOAD/UNLOAD Statements

Another method of batching and unbatching involves the LOAD and UNLOAD statements. As with the GROUP statement, ProModel maintains the identities and attributes of the batched entities. Therefore, when you use the UNLOAD statement, each entity still has its attribute assignments.

 

The difference between LOAD and GROUP is that LOAD requires a “base” entity on which you temporarily load other entities that might represent a pallet or container. Also, the entities you are going to load, travel to the loading location on an “If load request” routing rule.

 

In the following example, four Gears are loaded onto a pallet. Pallet is the entity which issues the LOAD statement. In addition, the example includes a time element (LOAD 4 in 10 min). This means “load 4 gears or wait 10 minutes, whichever occurs first.” If after 10 minutes only 3 gears arrive, the entity loaded with the 3 gears continues.

Note that the loaded entity, Gear, has “LOAD” in the Routing Rule field as shown here. This tells ProModel that the gear only goes to Loc2 when a Load command requests it.

Since the example does not specify an entity type as part of the LOAD statement, ProModel will load temporarily any entity type waiting for the LOAD request. To control which entity types the model loads, use the “IFF” option with the LOAD statement (e.g., LOAD 4 IFF Entity()=gear).

 

Once the batch moves to its destination, the model uses the UNLOAD statement to break it into individual components (Gear and Pallet). You must define a routing for the entity Gear after the UNLOAD takes place. Typical uses for LOAD/UNLOAD are palletizing operations, AGV systems, and AS/RS systems.

ACCUM Statement

The ACCUM statement is short for “accumulate.” Its use is slightly different than the GROUP and LOAD statements. ACCUM does not “batch together” entities, but rather holds entities at a location until a certain number accumulate. It behaves much like a gate restricting entities until a certain number arrive at the location. After the required number accumulate, ProModel releases them for downstream processing. This allows you to model a certain type of batching which involves simply the accumulation of parts and their subsequent release—all at a single location.

 

When using the ACCUM statement, make sure the capacity of the location where you are using the ACCUM statement is at least as large as the amount accumulating.


© 2012 ProModel Corporation • 556 East Technology Avenue • Orem, UT 84097 • Support: 888-776-6633 • www.promodel.com