First, learn about Categories and Hierarchies in the Optimization Engine at Main Concepts for Optimization Problems.
Hierarchies
The problem description starts with enumerating the hierarchies of categories used in the problem. Categories are sorted from the finest grain to the larger grain.
For instance, in the following example:
Each
customer
belongs to acustomer_group
and an unrelatedcustomer_country
.Each
product
belongs to aproduct_family
which itself belongs to aproduct_group
.shipping_mode
is a category without any hierarchical relation to any other category.
All categories used as dimensions in any space description must be present in the hierarchy list.
Note: Sometimes, from the end-user point of view, the customer group is hierarchical with the country: “wholesales/UK” is not the same group of customers as “wholesales/CZ” for instance. But if the customer group has the same name in both countries, like “wholesales”, it is not a hierarchy, it is a cartesian product. A hierarchy would be with the values “UK” and “CZ” for the countries and “wholesales-UK”, “wholesales-CZ”, “retail-CZ“ for the customer groups.