目录

  • 随机规划
  • 报童问题
  • 求解方法

随机规划

研究约束条件中的系数和目标函数中的参数均为随机变量时的线性规划问题。用于研究具有不确定性的决策问题。随机规划的中心问题是选择参数,使收益的数学期望达到最大。

报童问题

经典的运筹问题
假设某种产品的订购数量 xxx,产品需求 ddd。 订购成本为 ccc 。 如果需求 ddd 大于 xxx,则脱销单位损失 c1c_1c1​。如果需求 ddd 小于 xxx ,则滞销单位损失为 c2c_2c2​。
总成本为
F(x,d)=cx+c1[d−x]++c2[x−d]+F(x,d)=cx+c_1[d-x]_++c_2[x-d]_+F(x,d)=cx+c1​[d−x]+​+c2​[x−d]+​
如果将部分参数转换为不确定的,将需求视为随机变量 DDD ,则转化为一个随机规划问题
min{f(x,D):=E[F(x,D)]}min\lbrace f(x,D):= \mathbb{E}[F(x,D)] \rbracemin{f(x,D):=E[F(x,D)]}
其中,E[⋅]\mathbb{E}[\cdot]E[⋅] 为所有随机变量的期望。
但是,这些参数又不是完全没有已知信息。假设一些概率分布信息是已知的。
假设随机变量 DDD 的概率密度函数为 H(x):=Pr(D≤x)H(x):=Pr(D≤x)H(x):=Pr(D≤x),则
E[F(x,D)]=cE(D)+c1x+c2∫0xH(t)dt\begin{aligned} \mathbb{E}[F(x,D)]=c\mathbb{E}(D)+c_1x+ c_2\int_0^x H(t)dt \end{aligned} E[F(x,D)]=cE(D)+c1​x+c2​∫0x​H(t)dt​
推导:

求解方法

1.基于场景的建模方法(Scenario-based): 根据假设的分布信息,生成若干个具有代表性的场景(Scenarios),每一个场景就对应一组参数,一个模型,并且这个场景有其对应的概率,使用不同的情景代替随机变量,问题转化为线性问题。对于较大规模的问题,情景树将会特别巨大从而难以求解,需要一定的情景树生成技巧从而减少问题规模。

假设有n个场景,需求分别为 d1,d2,...,dnd_1,d_2,...,d_nd1​,d2​,...,dn​,对应的概率为 p1,p2,...,pnp_1,p_2,...,p_np1​,p2​,...,pn​,则期望可以表示为:
E[F(x,D)]=∑i=1npiF(xi,di)\mathbb{E}[F(x,D)]=\sum_{i=1}^np_iF(x_i,d_i)E[F(x,D)]=i=1∑n​pi​F(xi​,di​)

2.机会约束规划
利用机会约束,将随机问题转化为线性问题。
通俗来讲,机会约束规划是指允许决策不满足约束条件,但是决策满足约束条件的概率不低于事先设定的置信水平的规划求解模型时,目标达到最优的理论。给定置信水平,其一般化的模型描述如下:
minf(x)s.t.P{h(x,ε)}≤α\begin{aligned} min f(x) s.t. P\{h(x,\varepsilon)\}≤α \end{aligned} minf(x)s.t.P{h(x,ε)}≤α​

3.鲁棒优化

4.抽样平均近似方法 SAA,Sample Average Approximation

1 运筹笔记-随机规划(Stochastic Programming)相关推荐

  1. 【Machine Learning 学习笔记】Stochastic Dual Coordinate Ascent for SVM 代码实现

    [Machine Learning 学习笔记]Stochastic Dual Coordinate Ascent for SVM 代码实现 通过本篇博客记录一下Stochastic Dual Coor ...

  2. 论文笔记——Asynchronous Stochastic Gradient Descent with Delay Compensation

    论文笔记--Asynchronous Stochastic Gradient Descent with Delay Compensation 论文对ASGD算法进行了改进,对具有延迟的梯度设计了新的更 ...

  3. 论文笔记:Stochastic Weight Completion for Road Networks using Graph Convolutional Networks

    ICDE2019 pytorch 笔记: 复现论文 Stochastic Weight Completion for Road Networks using Graph Convolutional N ...

  4. MITx - 6.00.1x 笔记(4) Good Programming Practices

    Testing and Debugging 防御性编程 测试的几种情况 Bugs Debugging Exceptions and Assertions try except else finally ...

  5. 读书笔记--Head First Programming 目录

    1. 转载于:https://www.cnblogs.com/0x2D-0x22/p/4059191.html

  6. 初识随机规划:用一个小例子理解随机规划

    文章目录 初识随机规划:一个小小例子 生产计划的例子 参数的不确定性 随机规划模型(Stochastic Programming) Python调用Gurobi求解随机规划模型 参考文献 Olittl ...

  7. 运筹学状态转移方程例子_动态规划 Dynamic Programming

    从运筹学和算法的角度综合介绍动态规划 规划论 Mathematical Programming / Mathematical Optimization In mathematics, computer ...

  8. Uncertainty Modeling and Optimization-不确定性建模与优化-理论篇(高速更新中)

    Uncertainty Modeling and Optimization-不确定性建模与优化 目录 Uncertainty Modeling and Optimization-不确定性建模与优化 0 ...

  9. OREILLY Programming .NET 3.5 读书笔记之一

    OREILLY Programming .NET 3.5 读书笔记之一 <Programming .NET 3.5>是OREILLY 2008.08出版的.NET 3.5 开发书籍,作者是 ...

最新文章

  1. 原生php开发cms,海洋cms视频内容管理系统v10.3 原生PHP代码+影视管理系统+视频点播系统+开源CMS...
  2. 15种主要编程语言介绍及应用场合
  3. excel如何生成mysql的sql语句_excel 批量生成SQL语句
  4. easyui-tabs
  5. VGGNet论文翻译-Very Deep Convolutional Networks for Large-Scale Image Recognition
  6. 敏捷开发绩效管理之二:用中医理论管理团队及其绩效(绩效考核,团队管理,自组织团队)...
  7. 转发 eclipse 取消javascript 验证
  8. 性能调优第一篇-SQL格式化
  9. 全志F1C100S声卡驱动探究
  10. hello world (android studio DNK )
  11. 造型简约的机箱,安装简单兼容性好,安钛克P20C体验
  12. JavaScript 剪贴板
  13. 深信服科技公司2008校园招聘笔试题
  14. 安卓键盘加上数字_安卓键盘键值对照表
  15. Mate 50,来了!
  16. 保卫资金链:资金链的五种死法和五种活法
  17. 成为一名专业Web渗透工程师难吗?
  18. linux硬盘的分区、格式化、挂载以及LVM
  19. 亚太地区旅行限制放宽,香港、泰国、越南、韩国旅游消费明显增长,预计旺季将持续反弹 | 美通社头条...
  20. 北京积分落户2021年新政策细则详解

热门文章

  1. python的for循环语句的用法及实例
  2. Ubuntu 18.04多网卡配置VLAN实战
  3. 编程,打印n*n(n<10)的螺旋方阵。
  4. iOS仿写计算器中缀转后缀 表达式求值
  5. 字节跳动面试官:请你实现一个大文件上传和断点续传
  6. 【rmzt】幻影水马xp主题
  7. CV目标检测 Task04:不讲武德-炼丹与品尝 终于,神功初成,可以开始施展拳脚了 打卡笔记
  8. imgaug 使用简介
  9. 福布斯发布2023全球亿万富豪榜
  10. 1000以内猜数游戏