Font size

NO Tableware Supply Chain

In this example you will learn how to configure Rate Matrix (transportation cost calculator) with the help of external tables. Additionally, we define special custom constraint, which limits the available number of sites to or from which the selected site can deliver products (Limit Inputs/Limit Outputs). And we also customize the objective function.

Problem definition

A logistics operator delivers various consumables (dishes, packaging) to fast-food restaurants.

The supply chain comprises:

  • 3 suppliers
    • Paper Tableware Supplier
    • Plastic Tableware Supplier
    • Wooden Cutlery Supplier
  • 5 distribution centers
  • 40 customers (fast-food restaurants)

In this example we are using custom constraints to limit the choice of DCs to 1 for each supplier and each customer. Which means that every supplier can send products only to one of the DCs, and every customer can receive products only from one of the DCs. This is done by using special type of custom constraints Limit Inputs/Limit Outputs.

Distribution centers can distribute products among themselves.

Rate matrix using an external table

The logistics operator wants to use the rate matrix for the calculation of transportation costs. The cost of transportation in rate matrix is defined per volume unit.

The rate matrix in this scenario uses a special external table, containing all transportation costs for delivering 1 product unit between the 2 locations. The first column contains source locations, every other column represents destination locations. Values in the cells are transportation costs for product delivery between these two locations.

External table is a part of input data which cannot be defined in default anyLogistix tables but needed in scenario. External tables mainly used for supporting model extensions with data. Rate matrix cost calculator is one of the extensions which need data from the external table to work properly in scenario.

Objective function customization

The NO scenario aims at profit maximization, which is calculated as difference between the revenue and the costs set by default. The resulting value is called objective function and all elements of this equation are called objective members. We can define which members we want to consider when calculating the objective function for the scenario. In this case we selected 6 members.

So, in this scenario the objective function is calculated as:
Objective = Revenue - Penalties - Transportation cost - Supply cost - Initial cost - Other cost


Customers place orders on weekly basis.


Find the optimal (cost-based) configuration of the delivery network, which follow the rules defined in Custom Constraints table.


In the results of the experiment, we can see that the most profitable option contains 4 DCs: Odessa, San Antonio, Houston, and Dallas.

Wooden and plastic products are shipped to DC San Antonio only, and paper products are shipped to DC Dallas. Then products are distributed among all four selected DCs and delivered to the customers. Note that every customer is supplied by one DC only, which means that Limit Inputs/Limit Outputs restrictions are met.

Transportation costs are calculated based on the provided rate matrix, which means that the external tables and the transportation cost policy parameters are defined correctly.

And, as we can see in the Overall Stats page, the objective function is calculated considering the defined costs only, so no other unconsidered costs are present.

How can we improve this article?