Hi Jesper and Andrew, Andrew wrote: >Eplex performs propagation before passing constraints to the external >solver. The only constraints that eplex doesn't pass to the external >solver are those that are ground or involve a single variable bound >update after propagation. This is correct if you consider `passing' as meaning posting the constraint to an eplex instance. However, if the variable in such a single variable constraint occurs elsewhere, then the bounds imposed by the constraint is taken into account. The external solver will not get this variable only if it does not occur elsewhere in the problem (i.e. in other constraints and/or the objective). If you use the low level interface, then you can explicitly add single variable constraints such as X>=3 to an external solver using lp_add/3. >The simplification of constraints by the external solver >can be avoided by either calling > > lp_set(presolve, 0) For the purposes of getting or sending information from/to the external solver, it is not necessary to turn off the presolve. We make sure that inside eplex that we are working with the original matrix when we want to update it or get information from it. So even if a column/row is removed by presolve, it would still be there when information is retrieved. Cheers, KishReceived on Wed Feb 05 15:15:47 2003
This archive was generated by hypermail 2.1.8 : Wed 16 Nov 2005 06:07:22 PM GMT GMT