thh at mat.ua.pt
Fri Feb 7 08:00:42 EST 2003
> This look VERY interesting!
> What solver does minimize use?
> Can it use OSI's solver?
Yes, any OSI supported solver can be used. The model constructor takes a pointer to an
OSI solver interface as argument. F.ex.
MP_model myModel(new OsiCpxSolverInterface);
MP_model& MP_model::default_model = *new MP_model(new OsiClpSolverInterface);
> Would you release it under Common Public License (CPL) Open Source License?
> If not, which license?
> I wonder about a few things:
> Why is it minimize and not MP_minimize?
> Why is it forall and not MP_forall?
> Why is it sum and not MP_sum?
> I would worry that an application program trying to use flopc++ might
> already have symbols minimize, forall, and sum defined and they will
> collide flopc++ symbols with same name.
> (As far as I know all coin symbols start with a 3 character component id to
> avoid this potential problem).
It would probably be a good idea to use MP_minimize and MP_forall as you suggest.
I am a bit reluctant to change sum to MP_sum because it would make complicated
expressions involving many sums less appealing to read, but ....
> What kind of runtime performance have you experienced compared to Ampl or
I havent experimented with generation of big problems yet, but I would expect runtime performance
to be comparable or better than Ampl/Gams - at least that should be the goal.
A first order condition for good runtime performance is that the runtime complexity of generating
a constraint such as:
supply(S(i)) = sum( link(i,j), x(link(i,j))) <= capacity(i);
is of the order |link| rather than |S| * |link| as one might get by a naive implementation. This condition
is fulfilled by FLOPC++. There is however still considerable scope for "constant factor" improovements
of runtime performance, but I prefer to wait a little with this until the need is clearly identified and/or
eventual bugs (which hopefully will be diccovered if FLOPC++ becomes part of COIN) are removed.
> On what platforms has it been used:
> linux g++, windows microsoft visual c++, solaris, hpux, aix, ....
> With COIN components we try to support all of these.
> I think most of the current users are using Linux and then windows.
I am using linux g++. The code also uses STL, which might perhaps give portability problems
on some platforms?
> JP Fasano
> jpfasano at us.ibm.com
> (914)945-1324 (tie line 862-1324)
> COIN www.coin-or.org
More information about the Coin-discuss