[Coin-discuss] Open-source Modeling Languages

Ted Ralphs ted at lehigh.edu
Tue Nov 20 11:16:36 EST 2007


Brian Borchers wrote:
>> I am curious, why do you think users will shy away from XML more than 
>> say, MPS or nl formats?  Indeed I would argue that the XML is a lot more 
>> readable than MPS or nl formats.
> 
> I don't think that human readability is the major issue.  Rather, it's
> the difficulty of reading/writing correct XML from a program in a
> language like C or Fortran without depending on someone else's
> library.  It's easy to produce an MPS file with a bunch of loops and
> printf's.  Reading an MPS file is somewhat more difficult but not too
> hard.  It wouldn't be nearly as easy to do the same things with the
> corresponding OSiL XML.

As I understand it (from my outside viewpoint as a user), the intention 
is not for most normal users to ever actually write code to produce a 
file in XML format. The XML format provides a standard low-level 
interface to a wide range of solvers (something that didn't previously 
exist), but in most cases, users would use a higher-level layer (such as 
a modeling language or something like the current Osi) that would 
actually produce the XML. Most users probably wouldn't ever see the XML. 
The OS folks can correct me if I'm wrong, but it seems that the XML file 
acts more like the .nl file that AMPL produces (as an intermediate 
format between AMPL and a solver) than an MPS file. I doubt most people 
have ever looked at a .nl file. It is produced transparently by a higher 
level layer and they never see it.

The bottom line is that all this should be transparent for most users. 
Even with the OS framework, it should still be easy to input files in 
MPS format in the same way as it is done today by, for instance, reading 
the MPS file into an Osi object and then using the OS framework's back 
end to Osi to write out the XML (although I don't know exactly why 
anyone would want to do this). You can provide any sort of high level 
interface you want. It's just that some back end has to eventually 
produce the XML to be handed to the OS interface to the solver. Of 
course, not all the pieces are in place to make this a reality, but by 
defining a standard, the OS project has at least provided a starting 
point to develop a wide range of interoperable high level interfaces. 
After that, the sky is the limit. OS folks, is this correct?

Cheers,

Ted
-- 
Dr. Ted Ralphs
Associate Professor
Industrial and Systems Engineering
Lehigh University
(610)758-4784
ted at lehigh dot edu
www.lehigh.edu/~tkr2



More information about the Coin-discuss mailing list