Making the most of Groups in your data¶
Grouping can be used in a variety of ways depending on the needs of your model. When you set up your configuration, you can select to allow for grouping of various categories of data.
Essentially, a Group is any collection or subset of data that is useful to you. This allows you to assign values to all items in the group at once: cost or price, transportation lane, inventory levels, or anything else that makes sense in your model. Please note that for string valued attributes you currently need to specify the data for the individual items in the group.
A few examples can help to explain this concept.
- Transportation – A group of products (Product Group) can be sent from all plants in one region (Resource or Location Group) to all customers in one region (Customer or Location Group).
- Sales Responsibility – A sales representative is responsible for a certain group of products (Product Group) sold to a group of Customers (Customer Group) in one region (Location Group).
- Minimum Inventory – The total inventory of a group of products (Product Group) should be maintained at least at this value.
- Production Cost – The cost of making a group of final products or components (Product Group) is the same.
Now we can discuss further what these groups might look like.
You may want to group locations by region if there is a reason that proximity or arbitrary lines such as state or country borders will influence your network. This would allow you to connect locations of several types (e.g. from resource locations to customer locations) together within regional borders.
Another use could be to assign outlying locations that are far from your resources to a group that may be assigned an extra premium for deliveries, while the base product delivery costs per product would remain fixed for all customers.
For a customer with many locations, you can assign individual stores to the same parent company (Customer = BigMart; Location = 001, 002…) with specific properties. This may be more convenient than relying on a naming system (Location = BigMart001, BigMart002…) to connect them because it allows you to define the entire group as, e.g., a Customer.
For several individual stores (BigMart001, BigMart002…) that belong to the same parent company, you can assign a Customer Group (like BigMart). This is convenient when there is a negotiated rate applied to all stores/locations for the parent company.
You can more easily represent subgroups in the model using groups that you define. For example, in a transportation network, if you want to define multiple phases in your Resources while your product can only flow through them in a particular sequence, you can use Groups to define the phases. An example could be to differentiate different kinds of Resources as holding stations, cross-docks, central warehouses, and local warehouses. Then you could define the possible lanes for the product to flow through your network from group to group, so the model can define individual connections.
You can use product groups when certain products always travel together, or are counted together.
Aggregate cost groups¶
In cases where your totals can span multiple items (for example, to guarantee a minimum amount of business to a Supplier) you can name which items to group together for creating subtotals.
You may have seasonal change in your network. In that case, grouping periods allows you to add extra conditions for your network based on seasons that recur across multiple periods.
Some numbers may remain the same for the entire planning horizon. Using period groups means you assign the number once to the group, instead of specifying the same number for each period.
One case this might be handy is to assign a certain throughput or utilization limit for a period grouping (say
FY_2020). But depending on your model settings this can have different results:
- If only one period is defined (e.g.
FY_2020) which includes the entire year’s data, then assigning a throughput etc. to FY_2020 means that is the total throughput for all months combined.
- If all data is separated by month in the model AND we have the grouping FY_2020, then assigning a throughput to FY_2020 means that the resource in question will have that specific throughput or utilization limit for each month.
Defining group relationships and properties¶
You’ll use the sheets labeled “… Relation” to define the individual items belonging to the same group. Use the sheets labeled “… Data” to define properties at a group level.
Here is an example of Product Groups in a dataset:
- In the sheet “Product Relation”, define the hierarchy.
- In the sheet “Trans Type Product Data”, you can define the data by product groups.
Hopefully this has given you some idea of how Groups can be used in your datasets.
With the examples above, you can see that the purpose of the Group is up to you. Once a Group is defined by what items it includes, its meaning to the model can be defined in by connecting the groups’ relationships in the data.