I am not familiar with the inner working of the solvers. I mostly use the python pulp
or IBM CPLEX
solver.
For fast execution time, what should be the priority, fewer constraints and loosely bounded variables or more constraints and tightly bounded variables?
For example, if I have a variable $X$ which, due to linearization, gets a value range between $[-M, +M]$ and its lower bound is $0$, so that its bounds are $[0, +M]$. Let's say it is a minimization problem and $X$ is somehow used in the objective function, so the solver will end up assigning value $0$ to it since it is the lowest.
My question is, will it be any help if I add constraints that bound the value of $X \in [0,0]$, does solver perform better in this case than previously?
pulp
is not a solver, it is a modeling environment. When you usepulp
, you are calling a solver, such as CPLEX or Gurobi. $\endgroup$