# Labeling constraints in a MILP

A manufacturing company consisting of two plants intends to introduce up to three new products. The production quantity of each product can be any number, integer or non-integer, but there is an upper limit on the amount of a product that can be sold per week. To avoid undue diversification of the company’s product line, management has imposed following restrictions:

Constraint (i): from the three possible new products, at most two should be chosen to be produced;

Constraint (ii): just one of the production plants should be chosen to produce new products. Given the data below, the objective is to choose the products, the plant and weekly production quantities of the chosen products so as to maximise the total profit.

I am having trouble understanding some things. I have the answer which I will post below.

I do the following

Now we have for $x_1, x_2, x_3$ for weekly production quantities of the corresponding products

Object function:

max z = $5x_1 + 7x_2 + 3x_3$

Constraints give the following:

As production hours for each plant should not be exceeded:

Either

$3x_1 +4x_2 + 2x_3 \leq 30$

or

$4x_1 + 6x_2 + 2x_3 \leq 40$

also we have:

$0 \leq x_1 \leq 7$, $0 \leq x_2 \leq 5$, $0 \leq x_3 \leq 9$

Now introduce $\delta_1 = 1$ if product 1 is produced, $0$ if not. And the same for $\delta_2 , \delta_3$ .

Where from constraint (i) we have: $\delta_1 + \delta_2 + \delta_3 \leq 2$

I don't understand why the following is necessary?

$x_1 \leq M\delta_1$, $x_2 \leq M\delta_2$, $x_3 \leq M\delta_3$

And I don't understand how to do constraint (ii)

Here is it step by step:

The end result should be:

Any help would be appreciated, I am having difficultly understanding the details of this notation. Also if this is better suited in another part of stack - apologies.

Constraint (i) is being modelled with the three subscripted $\delta$s. The lines $x_i-9\delta_i \leq 0$ are effectively ensuring that that any unselected product ($\delta_i = 0$) is produced in quantity zero.
Constraint (ii) is being modelled using the unsubscripted $\delta$. If the value is zero, Plant 1 is being used, and the constraints for plant two are irrelevant because a larger number (36) has been added to the limit. If the value is 1, Plant 2 is being used, and the value calculated for plant 1 will always easily meet its limit, whereas Plant 2 limits now are effective. I'm not sure how "36" was chosen as the multiplier, but it is certainly large enough to ensure that only one of the limits is in effective use.
• Thanks for your reply. I understand how $M =$ max $\{7,5,9\} = 9$ and how constraint (i) therefore works. As for constraint (ii), do you mind elaborating slightly on what I do to achieve this? I understand that either $\delta \in \{0,1\}$ but where do I go from there to calculate this end result that you describe, thanks! – mrhappysmile Jan 15 '15 at 22:05
• I have added the method to do it in my answer, if you could explain it step by step, because thats what I am having difficulty understanding. Like for instance why are you adding this $M'$ to both sides of the equation... – mrhappysmile Jan 17 '15 at 11:57