• MPS数据格式


    MPS文件是一种旧格式文件类型,原属于IBM的一种文件格式,格式为竖形文件,每行和每个变量都有一个名字。

    MPS区分大小写,内容只能写在第 2, 5, 15, 25, 40 和 50列。
    MPS的任何内容都有一个名字(例如行、列)。
    第一行为NAME区域,定义整个问题的名字,写在第15列。
    ROWS定义各行的名字,其中COST为 min定义。写在第二或第三列的为约束,E表示=,L表示<=,G表示>=, N表示无约束。
    COLUMNS定义各列的名字,变量系数为0的不写在内容中,从第5列开始写。
    RHS定义b,从第5列开始写。
    BOUND定义决策变量的约束值,第2列写约束,UP表示<=,LO表示>=,FR表示=。
    以ENDATA结尾。

    举个简单的例子:

    NAME          TESTPROB

    ROWS

     N  COST

     L  LIM1

     G  LIM2

     E  MYEQN

    COLUMNS

        XONE        COST                 1    LIM1                 1

        XONE        LIM2                  1

        YTWO       COST                  4   LIM1                 1

        YTWO       MYEQN               -1

        ZTHREE    COST                  9   LIM2                 1

        ZTHREE    MYEQN                1

    RHS

        RHS1      LIM1                   5   LIM2                10

        RHS1      MYEQN                7

    BOUNDS

     UP BND1      XONE                 4

     LO BND1      YTWO                -1

     UP BND1      YTWO                 1

    ENDATA

     

    如果写成lp问题,如下:

     

    min: +XONE +4 YTWO +9 ZTHREE;

    LIM1: +XONE +YTWO <= 5;

    LIM2: +XONE +ZTHREE >= 10;

    MYEQN: -YTWO +ZTHREE = 7;

    XONE <= 4;

    YTWO >= -1;

    YTWO <= 1;

    以上的MPS格式定义较为简单,不涉及详细定义,MPS格式原版说明见:http://web.mit.edu/lpsolve_v5520/doc/mps-format.htm

    “If you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime.”
  • 相关阅读:
    微信小程序-默认选中状态
    微信小程序-翻页(优化)
    openLayers3 中实现多个Overlay
    2月的最后一天
    2月27日
    杂记--写于狂风乱作的夜晚
    安装部署程序
    superMap Object 属性查看的一点代码
    坚持不懈的学习吧,少年
    Windows API中几个函数的总结
  • 原文地址:https://www.cnblogs.com/Scorpio989/p/3959495.html
Copyright © 2020-2023  润新知