The following constraints are used in this example:
bounds on variables
for
,
![\[ \sum _{\text {division} \in \text {DIVISIONS}} \Variable{Assign[retailer,division]} = 1 \]](images/ormpex_ex130017.png)
for
,
![\[ \Variable{MarketShare[`delivery',division]} = \frac{\sum \limits _{\text {retailer} \in \text {RETAILERS}} \Argument{delivery[retailer]} \cdot \Variable{Assign[retailer,division]}}{\sum \limits _{\text {retailer} \in \text {RETAILERS}} \Argument{delivery[retailer]}} \]](images/ormpex_ex130018.png)
for
,
![\[ \Variable{MarketShare[`spirit',division]} = \frac{\sum \limits _{\text {retailer} \in \text {RETAILERS}} \Argument{spirit[retailer]} \cdot \Variable{Assign[retailer,division]}}{\sum \limits _{\text {retailer} \in \text {RETAILERS}} \Argument{spirit[retailer]}} \]](images/ormpex_ex130019.png)
for
and
,
![\[ \Variable{MarketShare[`oil'||reg,division]} = \frac{\sum \limits _{\text {retailer} \in \text {RETAILERS}\mr{\_ }\text {region[reg]}} \Argument{oil[retailer]} \cdot \Variable{Assign[retailer,division]}}{\sum \limits _{\text {retailer} \in \text {RETAILERS}\mr{\_ }\text {region[reg]}} \Argument{oil[retailer]}} \]](images/ormpex_ex130021.png)
for
and
,
![\[ \Variable{MarketShare[`growth'||group,division]} = \frac{\sum \limits _{\text {retailer} \in \text {RETAILERS}\mr{\_ }\text {group[group]}} \Variable{Assign[retailer,division]}}{\left|\text {RETAILERS}\mr{\_ }\text {group[group]}\right|} \]](images/ormpex_ex130023.png)
for
and
,
![\[ \Variable{MarketShare[category,division]} - \Variable{Surplus[category,division]} + \Variable{Slack[category,division]} = \Argument{target[division]} \]](images/ormpex_ex130024.png)
for
and
,
![\[ \Variable{MinMax} \ge \Variable{Surplus[category,division]} + \Variable{Slack[category,division]} \]](images/ormpex_ex130025.png)