第一章 随机规划模型
1.1 投资问题
1.1.1 报童问题
问题描述
这是一个关于卖报商人采购报纸的问题. 每天早上, 卖报商以批发价c(每份)向报社采购x份当天的报纸。如果当天的需求量d比x大,那么商人需要以价格d(每份)向报社再采购d-x份。如果当天的需求量d比x小,会触发库存代价,每份报纸的库存代价是h。一般来说,, 。总代价为:
其中
确定型优化问题
我们的目标是使得总代价最少。即可写为如下优化问题
显然,给定,上述问题的最优解为。
随机规划问题
现在我们考虑每天的需求是一个随机变量的情况。那么我们希望,采购份报纸时,代价的期望最小。即可写为如下优化问题
该问题是两阶段问题(two-stage problem)的一个好例子。在第一阶段,报童不知道当天真实的需求,他需要做出决策购买多少份报纸,即的取值;在第二阶段,报童知道了当天的需求,若那么报童需要进行追索赔偿(recourse action),即以高价补购份报纸。
解析解
接下来的问题是如何求解上述优化问题。上述问题可以给出其解析解。记随机变量概率密度函数为,累计概率密度函数为,即。显然对于任意的,。期望可写为如下形式
其中,所以
记,则有
那么
接着我们分析函数的一阶导数与二阶导数。
- 一阶导数
- 二阶导数
依据二阶导数,我们可以判断函数是一个凸函数。由可求得最优解,其中。累积分布函数的左分位点定义为。同理,累积分布函数的右分位点定义为。若左右分位点相等,则最优解为左分位点或者右分位点;反之,最优解位于两个分位点之间。
假定在个场景(scenarios)中我们采集到的取值为,,...。那么此时经验累积分布函数是阶跃函数,最优解依然为分位点(左或右),亦为某个。
随机规划与确定型优化的关系
实际应用中很难得到解析解,对于有限场景(scenarios)的问题,我们通过改写期望 可以将该随机规划建模为一个确定型优化问题
其中可以写为
我们可以将不确定规划写为线性规划形式,即
值得注意的是上述分解形式。给定,随机规划的目标函数是个确定型优化问题()目标函数的组合。也就是说,它将一个随机规划分解为个确定型规划。后面我们会看到,这种分解形式是两阶段问题的典型特点。
考虑最坏的情况
接下来我们假定每天的需求,在已知需求上下界的情况下,思考如何决定每天的购买量使得最坏的情况下损失最少。即求解如下优化问题
依据函数定义,可计算,如下
考虑到与均为分片线性函数,可知依然为分片线性函数。当时,取最小值,即。
进一步的,假设我们还知道每天需求的平均值。显然符合条件(指上下界与均值的值)的分布有很多种。我们思考如何决定每天的购买量使得在最坏的分布情况下期望损失最少。模型如下
其中,表示所有符合条件的分布的累积分布函数的集合;表示给定的情况下,需求的累积分布函数为时的期望损失。我们会在后面讨论如何求解该问题。