Warehouse location problems

Describes examples that involve warehouse location and planning, a typical discrete optimization problem; that is, an application of integer programming.

A set of warehouse location examples

A company is considering a number of locations for building warehouses to supply its existing stores. Each possible warehouse has a fixed maintenance cost and a maximum capacity specifying how many stores it can support. Each store can be supplied by only one warehouse and the supply cost to the store differs according to the warehouse selected. The application consists of choosing which warehouses to build and which of them should supply the various stores in order to minimize the total cost (the sum of the fixed and supply costs). The key idea in representing a warehouse-location problem as an integer program consists of using a 0-1 variable for each (warehouse, store) pair to represent whether a warehouse supplies a store.

In addition, the model associates a variable with each warehouse to indicate whether the warehouse is selected.

The examples are:

  • A typical warehouse location model: examples/opl/warehouse. This is accessed using the default run configuration Basic Configuration.

  • A version of the warehouse location model with internal data, which you can scale by changing the number of warehouses and stores: scalableWarehouse.mod. This is accessed using the run configuration Scalable data.

  • There are two additional run configurations in this project — Filter script and Solution pool script.

See also Warehouse location in the Language User’s Manual and The scalable warehouse example in IDE Tutorials.