This problem is an example of a goal programming problem. For this market sharing problem, we want to allocate retailers to two divisions of a company in order to optimize the trade-offs of several market sharing goals. This problem is formulated as a mixed integer linear programming problem using the Gurobi Python API and solved with the Gurobi Optimizer.
This model is example 13 from the fifth edition of Model Building in Mathematical Programming, by H. Paul Williams on pages 267-268 and 322-324.
This modeling example is at the beginner level, where we assume that you know Python and that you have some knowledge about building mathematical optimization models. The reader should also consult the documentation of the Gurobi Python API.
For details on licensing or on running the notebooks, see the overview on Modeling Examples
© Gurobi Optimization, LLC