I am working on a large NLP model with equilibrium equations in which the variables are defined in the following form: $$x_i \in [L_B, U_B] \cup\{0\} \quad \text{where} \quad L_B \ \& \ U_B \in\Bbb R^+ \quad \text{and } \quad 0<L_B<U_B$$
Is there any way to define such a hybrid (mixed discrete, continuous) domain for variables in Pyomo or Ampl? I know that it's possible to define binary variables as indicators but this approach added a big number of binary variables to the model which is already hard to be solved.
One idea is to implement something like an MPEC or variational inequalities (mpec package of Pyomo) approach where XOR has been defined for sets of constraints. But is it possible for variables?