zoukankan      html  css  js  c++  java
  • Lingo求解线性规划案例2——多阶段投资问题

     凯鲁嘎吉 - 博客园

    http://www.cnblogs.com/kailugaji/

    某公司现有资金30万元可用于投资,5年内有下列方案可供采纳:

      1号方案:在年初投资1元,2年后可收回1.3元;

      2号方案;在年初投资1元,3年后可收回1.45元;

      3号方案:仅在第1年年初有一次投资机会。每投资1元,4年后可收回1.65元;

     4号方案:仅在第2年年初有一次投资机会。每投资1元,4年后可收回1.7元;

      5号方案。在年初存入银行1元,下一年初可得1.1元。

      每年年初投资所得收益及银行利息也可用作安排。

    问该公司在5年内怎样使用资金,才能在第6年年初拥有最多资金?

    :设xiji号方案在第j年年初所使用的资金数。

    显然,对于3号及4号方案,仅有x31x42。此外,不考虑x15x24x25,因为其相应投资方案回收期超过我们所讨论的期限。

    我们将各年的决策变量(表中虚线起点)及其相应效益(表中虚线终点)列表。

                                         

    显然,第j年年初可使用的资金之和应等于第j年年初所引用的决策变量之和。于是,根据表所示的各种因果关系,我们不难建立如下模型:

        maxf=1.7x42+1.45x23+1.3x14+1.1x55

        s.t.  x11+x21+x31+x51=300000

               x12+x22+x42+x52=1.1x51

               x13+x23+x53=1.3x11+1.1x52

               x14+x54=1.45x21+1.3x12+1.1x53

               x55=1.65x31+1.45x22+1.3x13+1.1x54

               x1j≥O,  j=1,2,3,4

              x2j≥O,  j=1,2,3;

              x31≥0,  x42≥0,  x5i≥0,i=1,…,5

    Lingo程序:

    max=1.7*x42+1.45*x23+1.3*x14+1.1*x55;
    x11+x21+x31+x51=300000;
    x12+x22+x42+x52=1.1*x51;
    x13+x23+x53=1.1*x52+1.3*x11;
    x14+x54=1.1*x53+1.3*x12+1.45*x21;
    x55=1.1*x54+1.3*x13+1.45*x22+1.65*x31;
    end

    结果为:

    Global optimal solution found.
      Objective value:                              565500.0
      Infeasibilities:                              0.000000
      Total solver iterations:                             0
    
    
                           Variable           Value        Reduced Cost
                                X42        0.000000           0.1363636E-01
                                X23        0.000000            0.000000
                                X14        435000.0            0.000000
                                X55        0.000000            0.000000
                                X11        0.000000            0.000000
                                X21        300000.0            0.000000
                                X31        0.000000           0.7000000E-01
                                X51        0.000000            0.000000
                                X12        0.000000           0.2363636E-01
                                X22        0.000000           0.1186364
                                X52        0.000000           0.1186364
                                X13        0.000000           0.2000000E-01
                                X53        0.000000           0.2000000E-01
                                X54        0.000000           0.9000000E-01
    
                                Row    Slack or Surplus      Dual Price
                                  1        565500.0            1.000000
                                  2        0.000000            1.885000
                                  3        0.000000            1.713636
                                  4        0.000000            1.450000
                                  5        0.000000            1.300000
                                  6        0.000000            1.100000
  • 相关阅读:
    PHP用curl发送get post put delete patch请求
    ubuntu中设置php7.0-fpm开机自启动
    对计算机领域中间层的理解
    后端程序猿怎能不会的linux命令
    查看磁盘空间和目录大小的命令
    Http协议详解
    supervisor使用总结
    vmware中扩充磁盘
    HDU 4946 共线凸包
    Codeforces_GYM Flight Boarding Optimization
  • 原文地址:https://www.cnblogs.com/kailugaji/p/8215308.html
Copyright © 2011-2022 走看看