help-glpk
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-glpk] GLPK and SYMPHONY not getting the same solution


From: Andrew Makhorin
Subject: Re: [Help-glpk] GLPK and SYMPHONY not getting the same solution
Date: Wed, 19 Oct 2005 01:30:52 +0400

> im having problems getting the same solution using
> both programs. I attached the MPS file that containts
> the problem, consisting of 3 integer variables and 1
> binary. GLPK calculates the problem correctly,
> SYMPHONY does not. Anyone knows how to get the same
> solution out of SYMPHONY?

I have sent the following message to coin-discuss list (it is a
reply to Ted Ralphs' message):

> Yes, this is exactly the problem. According to the MPS standard, any
> integer variable without bounds is assumed to be binary. The COIN MPS
> reader complies with this standard, but not all readers do (GLPKs reader
> does not, for instance).

OSL documentation says (chapter "Passing Your Model Using Mathematical
Programming System (MPS) Format", section "Integer Data"):

        General Integer Variables
            
        For general integer variables, the following indicates the
        various values you may use for the fields:

        If you are defining general integer variables, field 1 must
        be blank and field 5 must contain the value 'INTORG'
        (including the quotation marks) in the record that denotes
        the start of integer variables. In the record that denotes
        the end of integer variables, field 1 must be blank and
        field 5 must contain the value 'INTEND'.
            
        You can select any name for field 2 as long as it is
        different from the preceding and following column names.
            
        Field 4, although ignored, must be blank in free format.
            
        All variables between the INTORG and INTEND markers are
        taken as integer variables if the intunit parameter in
        the call to EKKMPS is nonzero.

And this is clarified by the following example:

        The following is an example of defining general integer
        variables:

*234567890123456789012345678901234567890123456789012345678901234567890
COLUMNS
    COL01     OBJ                1.0
    COL01     ROW01              3.0   ROW05              5.6
    COL02     ROW01              1.0   ROW02              2.0
*
*  Mark COL03 and COL04 as integer
*
    INT1      'MARKER'                 'INTORG'
    COL03     ROW02              1.1   ROW03              1.0
    COL04     ROW01             -2.0   ROW04              2.8
    INT1END   'MARKER'                 'INTEND'
*
    COL05     OBJ                2.0
    COL05     ROW01             -1.0   ROW05              1.0
    COL06     ROW03              1.0
    COL07     ROW04             -1.2
    COL08     OBJ               -1.0
    COL08     ROW01             -1.0   ROW05              1.9
    
        Here, the columns named COL03 and COL04 must take on integer
        values.

I didn't find any points that "any integer variable without bounds is
assumed to be binary".


Andrew Makhorin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]