DECIS 求解器手册 — 两阶段随机规划

目录

1. 引言

DECIS 是一个用于求解两阶段随机线性规划问题的求解器。它使用 Benders 分解(也称为 L 形法)来有效处理具有不确定参数的大规模随机规划问题。DECIS 特别适用于以下场景:

  • 模型包含不确定的参数(如需求、价格、收益率等)
  • 不确定性可以用离散场景(场景树)表示
  • 决策过程分为两个阶段(先做出初始决策,观察随机事件后再做出修正决策)

两阶段随机规划的标准形式为:

\[ \begin{array}{ll} \text{Min} & c^T x + E_{\omega}[Q(x, \omega)] \\ \text{s.t.} & Ax = b \\ & x \geq 0 \end{array} \]

其中 \(Q(x, \omega)\) 是第二阶段(修正)问题的最优值,依赖于第一阶段决策 \(x\) 和随机事件 \(\omega\) 的实现。

2. 使用方法

要在 GAMS 中使用 DECIS 求解器:

    Option LP = DECIS;
          Solve mymodel using LP minimizing z;

DECIS 需要随机数据以场景树的形式提供,这通常通过 GAMS 模型中的随机参数和场景索引来实现。

3. 核心模型

DECIS 将两阶段随机线性规划分解为第一阶段问题和第二阶段问题。第一阶段决策变量对应于在观察到随机事件之前必须做出的决策。第二阶段(修正)变量对应于在随机事件实现后可以调整的决策。

典型的发电容量规划模型示例:

    Sets
            g        generators / g1, g2 /
            dl       demand levels / h, m, l /;

          Parameters
            c(g)     capital cost / g1 5, g2 3 /
            ccmin(g) min capacity  / g1 500, g2 300 /
            ccmax(g) max capacity  / g1 1000, g2 1000 /
            alpha(g) operating factor / g1 1.2, g2 0.8 /;

          Table f(g,dl) operating cost
                 h   m   l
            g1  4.3 2.0 0.5
            g2  8.7 4.0 1.0;

          Parameter d(dl) demand / h 1040, m 1040, l 1040 /;
          Parameter us(dl) cost of unserved demand / h 10, m 10, l 10 /;

          Free Variable tcost;
          Positive Variables
            x(g)     capacity
            y(g,dl)  operating level
            s(dl)    unserved demand;

          Equations
            cost        total cost
            cmin(g)     min capacity
            cmax(g)     max capacity
            omax(g)     max operating level
            demand(dl)  satisfy demand;

          cost .. tcost =e= sum(g, c(g)*x(g))
            + sum(g, sum(dl, f(g,dl)*y(g,dl)))
            + sum(dl, us(dl)*s(dl));

          cmin(g) ..    x(g) =g= ccmin(g);
          cmax(g) ..    x(g) =l= ccmax(g);
          omax(g) ..    sum(dl, y(g,dl)) =l= alpha(g)*x(g);
          demand(dl) .. sum(g, y(g,dl)) + s(dl) =g= d(dl);

          Model apl1p /all/;

          Option LP = MINOS;
          Solve apl1p using LP minimizing tcost;

4. 随机数据描述

DECIS 使用场景树来描述随机数据。每个场景对应一组随机参数的实现,并具有相应的概率。DECIS 支持多种方式来指定随机数据的概率分布,包括离散场景和连续分布(通过离散化)。

随机数据通常在 GAMS 模型中使用索引参数和场景维度进行建模。DECIS 会读取场景定义并将其转换为 Benders 分解所需的割平面生成过程。

5. 求解输出

DECIS 在求解过程中会输出详细的日志信息,包括:

  • 第一阶段解
  • 每个场景的第二阶段解
  • 期望值信息
  • Benders 割的生成和收敛情况
  • 迭代统计

6. 选项参考

选项描述默认值
decisalg求解算法:0=自动,1=Benders 分解,2=正则化分解0
decisiterlim迭代限制GAMS iterlim
decisout输出详细级别:0=最小,1=正常,2=详细1
decisreslim时间限制(秒)GAMS reslim
decisseed随机数生成器种子0
decisrtol相对收敛容差1e-6
decisatol绝对收敛容差1e-6
deciswarmstart热启动:0=关闭,1=开启0

 

 


 

在线留言

尊敬的客户朋友,如您有任何意见建议,请通过下表反馈给我们,我们会尽快与您联系。

 

 

 

 

联系我们

 

微信公众号

咨询微信

企业店铺

400-621-1085

(节假日期间办公室座机如无人接听,请选择其他联系方式,感谢理解!祝您节日快乐!)

 

联系我们 快速链接 相关产品 上海卡贝信息技术有限公司

©2025  上海卡贝信息技术有限公司

产品中心

下载中心

站点地图

隐私政策

 

销售QQ咨询

产品QQ咨询

淘宝店铺

 

GAMS:概述

最近更新

相关文档

下载试用

购买咨询

Berkeley Madonna

iThink

Stella Architect

IBM SPSS Modeler

DecisionTools Suite

NeuralTools

Frontier Analyst

Vensim

RISKOptimizer

PrecisionTree

LINGO

LINDO API

What'sBest!

@RISK

BARON

BayesiaLab

Oracle Crystal Ball

GEMPACK

GTAP Database

TreeAge