# Same values constraint and grouping of variables

In a linear program, I would like some variables to: 1. Take the same values 2. Group some variables i.e. some variables should take same values or lie within certain percentage. 3. All different values

The objective function is given by: • You specified $x_i \ge 0$ for all $i$. For (2), did you maybe mean $>0$ instead of $\ge 0$? Apr 30, 2020 at 0:53
• Yes, I intended to say greater than zero in (2) and not greater than equal to
– Sam
Apr 30, 2020 at 9:08

(1) This is correct, and there's nothing wrong with having a whole lot of constraints that each require $$x_6 = x_j$$ for some $$j$$. But if you know in advance that these variables will all equal each other, why not just define a new variable that equals all of them? That is, create a variable $$x_{6-10}$$ that equals $$x_6$$ through $$x_{10}$$ and use this variable everywhere any of the $$x_6$$ through $$x_{10}$$ variables appear?
(2) Using the logic described here, you can create a binary variable $$y_6$$ that equals 1 if $$x_6 \ge 0$$, and another binary variable $$y_8$$ that equals 1 if $$x_8 \ge 0$$. Then you can enforce the "if-then" implications using the logic described here.
• You can't really do strict inequalities for continuous variables. The best you can do is something like $x_i \ge \delta$ for some small $\delta > 0$. Then the logic described in the answers linked to above still applies. Apr 30, 2020 at 14:11