[Coin-discuss] Re: Coin-discuss Digest, Vol 15, Issue 16

J P Fasano jpfasano at us.ibm.com
Sun Jan 29 10:25:17 EST 2006


> "The project file 'C:\coin\clp\samples\osiDylpLib\osiDylpLib.dsp'
> has errors and can't be opened"
>
> Does this error apear usig vs 6?

With V6 it is "not loaded".
Perhaps the "not loaded" flag does not port well from V6 to .Net.
At some point in time there were some issues with building OsiDylp in MS
Visual Studio.
If you need this project, let me know and I'm pretty sure I can get it to
work.

> CbcSamplesSample2,
> cglunitTest for eample failed because they can't find  'oslmd6030.lib'.
> Is this an Visual c++.net-building error? Has the download been
incorrect?

oslmd6030.lib is the name of the optional OSL solver which you shouldn't
need.

The error message makes me think that you are not starting the development
studio with COIN\Win\startMsDevStudio.bat or you have not properly edited
this file.
startMsDevStudio.bat sets an environment variable LibNames to indicate
which optional libraries you are using.

You should comment this line or set it to an empty string.

>
> The building of "clpsamplesminimum" worked. But it can't open the
> p0033.mps-file, though its in the correct place. No example of any
> project works.

Perhaps COIN\Mps\Sample\p0033.mps has not been uncompressed.

In addition to p0033.mps being in the correct place, the working directory
when running the executable needs to be the correct directory.

Line 10 of COIN\Clp\Samples\minimum.cpp is
  status=model.readMps("../../Mps/Sample/p0033.mps");
Stating the obvious this means from the current directory one needs to find
p033.mps by going up two directories and then to Mps/Sample.
One can specify the current directory in the development studio.
Perhaps this is an attribute that did not convert properly from V6 to .Net.

>
> This leds me to my last question. I am used to work with GAMS.
> Formulating a model looks like
> " sum(r,sum(t,sum(c,sum(d$DC(d,c),sum(g$DG(d,g),
pi(r,t,d,g)*x(r,t,d,g))))))
>  + sum(r,sum(t,sr(r)*u(r,t)))
>  + sum(k,sum(t,sk(k)*w(k,t)))
>  + sum(p,sum(t,sp(p)*q(p,t)))=e=F;"
>
> As I understand the work of coin, the model are in .mps-files.

GAMS is a modeling language. MPL and AMPL are other modeling languages.
The modeling languages interface with solvers (COIN Clp, COIN Cbc, Xpress,
Cplex, Dylp, Glpk, FortMP, Coin Vol, ... ).

An MPS file is an old format from the 1960's for representing a formulated
linear math programming problem.
An MPS file is more typically created by a program rather than by hand with
an editor.
MPS files are still actively used by the math programming community as a
standard method of expressing an LP.

You can formulate the objective function and constraints in C (or C++) code
and directly invoke a solver through an API.
This may not be as satisfying as using a modeling language.
COIN/Clp/Samples/addRows.cpp is an example of using the Clp API to
construct the constraints by rows.

FLOPC++ is a C++ class library for algebraic modelling of linear
optimization problems. You might find it useful (
http://www.mat.ua.pt/thh/flopc/).


> I feel very sorry to ask this basic stuff in that mailing list,

No problem.
This is the appropriate place to post questions.




More information about the Coin-discuss mailing list