包头教育平台网站建设google中文搜索引擎
文章目录
- 1 引言
- 2 最大化达成目标利润的概率
- 2.1 不考虑缺货损失
- 2.2 考虑缺货损失
- 3 约束目标利润的达成概率
- 3.1 一维变量
- 3.2 多维变量
- 4 总结
- 5 相关阅读
1 引言
上个月因回老家结婚和过春节,持续学习的计划暂时被搁置一旁。这个月开始,要重回正轨了。
去年,我总结了几篇关于随机规划的文章:①随机规划:求解报童问题期望值模型的算法方案;②一文了解经典报童模型的扩展问题;③经典报童问题的2类扩展实例:带广告的报童问题和多产品报童问题。在这些文章中,目标函数都是围绕最大化利润的期望值。
本文将不再关注利润的期望值,而是研究与目标利润达成概率相关的两类目标函数:①最大化达成目标利润的概率;②约束目标利润的达成概率。
为更好地说明期望值模型与这两类新模型之间的差异,以下是一个不太严谨的例子:在股票市场中,期望值模型回答的是,投资方案A的平均利润为100万,但对于此次具体投资,利润并不保证;“最大化达成目标利润的概率”模型则表明,要达到100万以上的目标利润,投资方案B的实现概率最高;“约束目标利润的达成概率”模型则告诉我们,要达到100万以上的目标利润,且实现概率不低于90%,可以选择投资方案C。
通常情况下,决策者对不利情况的发生越敏感,越会关注目标利润的达成概率。接下来的内容,将主要介绍如何求解这两类问题。
正文如下。
2 最大化达成目标利润的概率
本节将继续使用报童模型来阐述该类问题的求解方案。
在报童模型中,我们定义如下变量:$ D$ 表示需求量, g ( D ) g(D) g(D) 和 G ( D ) G(D) G(D) 是对应的概率分布函数和累积分布函数; Q Q Q 是订购量; R R R 是售卖价格; C C C 是成本; V V V是滞销损失; S S S 是缺货损失。假设变量满足如下条件: R > C > V R > C > V R>C>V。
实际销量可以表示为:
A = min ( Q , D ) A = \min(Q, D) A=min(Q,D)
接下来,我们将分别讨论不考虑缺货损失和考虑缺货损失这两种情况。
2.1 不考虑缺货损失
此时 S = 0 S=0 S=0,报童模型的利润表达式可以写为
Z = R A + V ⋅ max ( 0 , Q − D ) − C Q Z=RA + V·\max(0,Q-D) - CQ Z=RA+V⋅max(0,Q−D)−CQ
由于 max ( 0 , Q − D ) = Q − min ( Q , D ) \max(0,Q-D) = Q - \min(Q,D) max(0,Q−D)=Q−min(Q,D),所以上式等价于
Z = ( R − V ) A − ( C − V ) Q Z = (R-V)A - (C-V)Q Z=(R−V)A−(C−V)Q
假设目标利润为 B B B,则最大化达成目标利润的概率可以表达为
max Pr ( Z ≥ B ) \max \text{Pr}(Z≥B) maxPr(Z≥B)
为了求解该问题,假设 Q Q Q为定值,此时 Z Z Z的最大值为 Z m = ( R − C ) Q Z_m=(R-C)Q Zm=(R−C)Q。因此,如果
B > ( R − C ) Q B>(R-C)Q B>(R−C)Q
那么
Pr ( Z ≥ B ) = 0 \text{Pr}(Z≥B)=0 Pr(Z≥B)=0
反之,令 Z = B Z=B Z=B,可以得到对应的 D B D_B DB为
D B = B + ( C − V ) Q R − V D_B=\frac{B+(C-V)Q}{R-V} DB=R−VB+(C−V)Q
因此
Pr ( Z ≥ B ) = Pr ( D ≥ D B ) = 1 − G ( D B ) \text{Pr}(Z≥B)=\text{Pr}(D≥D_B)=1-G(D_B) Pr(Z≥B)=Pr(D≥DB)=1−G(DB)
从上面几个式子可以看出, Q Q Q越小, D B D_B DB越小, G ( D B ) G(D_B) G(DB)越小,而 Pr ( Z ≥ B ) \text{Pr}(Z≥B) Pr(Z≥B)越大。因此,要最大化 Pr ( Z ≥ B ) \text{Pr}(Z≥B) Pr(Z≥B),应该取 Q Q Q的最小值。结合 B ≤ ( R − C ) Q B≤(R-C)Q B≤(R−C)Q的约束,可得
Q ∗ = B R − C Q^{\ast}=\frac{B}{R-C} Q∗=R−CB
这里有个有意思的现象: Q Q Q的最优解,和 D D D的分布没有任何关系。
2.2 考虑缺货损失
此时 S > 0 S>0 S>0,报童模型的利润表达式可以写为
Y = R A + V ⋅ max ( 0 , Q − D ) − S max ( 0 , D − Q ) − C Q Y=RA + V·\max(0,Q-D) - S\max(0,D-Q) - CQ Y=RA+V⋅max(0,Q−D)−Smax(0,D−Q)−CQ
由于 max ( 0 , D − Q ) = S ( D − A ) \max(0,D-Q)=S(D-A) max(0,D−Q)=S(D−A),所以上式等价于
Y = ( R − V + S ) A − S D − ( C − V ) Q Y=(R-V+S)A - SD - (C-V)Q Y=(R−V+S)A−SD−(C−V)Q
继续假设 Q Q Q为定值,相比不考虑缺货损失时的 Z Z Z, Y Y Y关于 D D D不再是单调函数:当 D < Q D < Q D<Q时,单调递增;当 D > Q D > Q D>Q时,单调递减。即,给定目标利润 B B B后,会同时存在两个恰好达成目标利润的 D D D(不考虑目标利润达不成的情况)。如下图所示。
当 D < Q D < Q D<Q时,令 Y = B Y = B Y=B,可以得到
D 1 = B + ( C − V ) Q R − V D_1=\frac{B+(C-V)Q}{R-V} D1=R−VB+(C−V)Q
当 D > Q D > Q D>Q时,仍令 Y = B Y = B Y=B,可以得到
D 2 = ( R − C + S ) Q − B S D_2=\frac{(R-C+S)Q-B}{S} D2=S(R−C+S)Q−B
目标函数可以写为
P = Pr ( Y ≥ B ) = G ( D 2 ) − G ( D 1 ) P=\text{Pr}(Y≥B)=G(D_2)-G(D_1) P=Pr(Y≥B)=G(D2)−G(D1)
此时, Q Q Q同时影响 D 1 D_1 D1和 D 2 D_2 D2的值,其和 P P P的单调性关系不再容易判断。为了求得 P P P的极值,直接求导
d P d Q = g ( D 2 ) d D 2 d Q − g ( D 1 ) d D 1 d Q \frac{dP}{dQ}=g(D_2)\frac{dD_2}{dQ}-g(D_1)\frac{dD_1}{dQ} dQdP=g(D2)dQdD2−g(D1)dQdD1
将 D 1 D_1 D1和 D 2 D_2 D2的表达式带入上式,并令其值为0,得到
g ( ( R − C + S ) Q − B S ) R − C + S S − g ( B + ( C − V ) Q R − V ) C − V R − V = 0 g(\frac{(R-C+S)Q-B}{S})\frac{R-C+S}{S}-g(\frac{B+(C-V)Q}{R-V})\frac{C-V}{R-V}=0 g(S(R−C+S)Q−B)SR−C+S−g(R−VB+(C−V)Q)R−VC−V=0
该等式的根 Q ∗ Q^{\ast} Q∗即为最优解。
举个例子:假设 D ∼ N ( μ , σ 2 ) D \sim N(\mu,\sigma^2) D∼N(μ,σ2),且 μ = 20 \mu=20 μ=20, σ = 4 \sigma=4 σ=4, R = 6 R=6 R=6, C = 4 C=4 C=4, S = 4 S=4 S=4, V = 1 V=1 V=1, B = 20 B=20 B=20。
运行以下代码,便可以得到,最优解 Q ∗ Q^{\ast} Q∗的值为 20.94 20.94 20.94,对应的最大概率为 0.7503 0.7503 0.7503。
import math
from scipy.optimize import fsolve
import numpy as np
from scipy.stats import norm# 迭代计算模型
def f1(x, mu, sigma):return norm.pdf((6 * x - 20) / 4, mu, sigma) * 3 / 2 - norm.pdf((3 * x + 20) / 5, mu, sigma) * 3 / 5if __name__ == '__main__':mu = 20sigma = 4sol = fsolve(f1, mu, args=(mu, sigma, )) # 使用mu值为初值max_prob = norm.cdf((6 * sol - 20) / 4, mu, sigma) - norm.cdf((3 * sol + 20) / 5, mu, sigma)print('sol: {}, max_prob: {}'.format(sol, max_prob))
3 约束目标利润的达成概率
为了求解该类问题,本节考虑如下的机会约束规划模型(CCP)
max f ‾ \max \quad \overline{f} maxf
KaTeX parse error: No such environment: eqnarray at position 7: \begin{̲e̲q̲n̲a̲r̲r̲a̲y̲}̲\nonumber \text…
式中, α \alpha α和 β \beta β是约束条件和目标函数的达成概率,这意味着同时限制了目标利润的达成概率和约束条件的满足概率;如果不考虑约束条件,则退化为仅限制目标利润的达成概率。由于上述表达式可以统一为
Pr { g ( x , ξ ) ≤ 0 } ≥ α \text{Pr}\{g(\pmb x,\pmb \xi) ≤ 0 \} ≥ \alpha Pr{g(x,ξ)≤0}≥α
因此,在问题建模时,不必特别关注限制的是目标函数,还是约束条件的达成概率。
CCP的经典求解方法是将其转化为一个等价类,这可以理解为:将原包含随机变量的表达式转化为一个不含随机变量的新表达式,并保证新表达式的解与原公式的解保持一致。
接下来,我们将根据随机变量是一维还是多维分别进行分析。
3.1 一维变量
此时, ξ \xi ξ是一维变量,假设 g ( x , ξ ) = h ( x ) − ξ g(\pmb x,\xi)=h(\pmb x)-\xi g(x,ξ)=h(x)−ξ,则上式转化为
Pr { g ( x ) ≤ ξ } ≥ α \text{Pr}\{g(\pmb x) ≤ \xi \} ≥ \alpha Pr{g(x)≤ξ}≥α
其中, h ( x ) h(\pmb x) h(x)可以为 x \pmb x x的线性或非线性函数, ξ \xi ξ是一维随机变量,累积分布函数为 G ( ⋅ ) G(·) G(⋅)。
由于 Pr { g ( x ) ≤ ξ } = 1 − G ( g ( x ) ) \text{Pr}\{g(\pmb x) ≤ \xi \}=1-G(g(\pmb x)) Pr{g(x)≤ξ}=1−G(g(x)),带入上式,可以得到
g ( x ) ≤ 1 − α g(\pmb x) ≤ 1- \alpha g(x)≤1−α
举个实例:
Pr { x 1 2 − x 2 3 ≤ ξ } ≥ 0.90 \text{Pr}\{x_1^2 - x_2^3 ≤ \xi \} ≥ 0.90 Pr{x12−x23≤ξ}≥0.90
该约束条件就等价于
x 1 2 − x 2 3 ≤ G − 1 ( 1 − 0.90 ) = 0.7184 x_1^2 - x_2^3 ≤ G^{-1}(1-0.90)=0.7184 x12−x23≤G−1(1−0.90)=0.7184
3.2 多维变量
此时, ξ = ( a 1 , a 2 , ⋅ ⋅ ⋅ , a n , b ) \xi=(a_1,a_2,···,a_n,b) ξ=(a1,a2,⋅⋅⋅,an,b),假设 g ( x , ξ ) g(\pmb x,\pmb \xi) g(x,ξ)的表达式为
g ( x , ξ ) = a 1 x 1 + a 2 x 2 + ⋅ ⋅ ⋅ + a n x n − b g(\pmb x,\pmb \xi) = a_1x_1+a_2x_2+···+a_nx_n - b g(x,ξ)=a1x1+a2x2+⋅⋅⋅+anxn−b
上式中, a i a_i ai和 b b b相互独立,且均为正态随机变量。
机会约束可以写为
Pr { ∑ i = 1 n a i x i ≤ b } ≥ α \text{Pr}\{\sum_{i=1}^na_ix_i ≤ b\} ≥ \alpha Pr{i=1∑naixi≤b}≥α
令函数
y ( x ) = ∑ i = 1 n a i x i − b y(x) = \sum_{i=1}^na_ix_i-b y(x)=i=1∑naixi−b
根据正态分布的叠加性, y y y也服从正态分布,且
μ = ∑ i = 1 n E ( a i ) x i − E ( b ) \mu=\sum_{i=1}^nE(a_i)x_i - E(b) μ=i=1∑nE(ai)xi−E(b)
σ = ∑ i = 1 n V ( a i ) x i 2 + V ( b ) \sigma=\sum_{i=1}^nV(a_i)x_i^2 + V(b) σ=i=1∑nV(ai)xi2+V(b)
式中, E ( ⋅ ) E(·) E(⋅)和 V ( ⋅ ) V(·) V(⋅)分别为期望值和方差。
再定义新的变量 X X X
X = ∑ i = 1 n a i x i − b − ( ∑ i = 1 n E ( a i ) x i − E ( b ) ) ∑ i = 1 n V ( a i ) x i 2 + V ( b ) X = \frac{\sum_{i=1}^na_ix_i-b - (\sum_{i=1}^nE(a_i)x_i - E(b))}{\sqrt{\sum_{i=1}^nV(a_i)x_i^2 + V(b)}} X=∑i=1nV(ai)xi2+V(b)∑i=1naixi−b−(∑i=1nE(ai)xi−E(b))
显然, X X X服从标准正态分布。
针对不等式 ∑ i = 1 n a i x i ≤ b \sum_{i=1}^na_ix_i≤b ∑i=1naixi≤b,等价于
∑ i = 1 n a i x i − b − ( ∑ i = 1 n E ( a i ) x i − E ( b ) ) ∑ i = 1 n V ( a i ) x i 2 + V ( b ) ≤ − ∑ i = 1 n E ( a i ) x i − E ( b ) ∑ i = 1 n V ( a i ) x i 2 + V ( b ) \frac{\sum_{i=1}^na_ix_i-b - (\sum_{i=1}^nE(a_i)x_i - E(b))}{\sqrt{\sum_{i=1}^nV(a_i)x_i^2 + V(b)}} ≤-\frac{\sum_{i=1}^nE(a_i)x_i - E(b)}{\sqrt{\sum_{i=1}^nV(a_i)x_i^2 + V(b)}} ∑i=1nV(ai)xi2+V(b)∑i=1naixi−b−(∑i=1nE(ai)xi−E(b))≤−∑i=1nV(ai)xi2+V(b)∑i=1nE(ai)xi−E(b)
所以原约束条件等价于
Pr { X ≤ − ∑ i = 1 n E ( a i ) x i − E ( b ) ∑ i = 1 n V ( a i ) x i 2 + V ( b ) } ≥ α \text{Pr}\{X≤-\frac{\sum_{i=1}^nE(a_i)x_i - E(b)}{\sqrt{\sum_{i=1}^nV(a_i)x_i^2 + V(b)}}\} ≥ \alpha Pr{X≤−∑i=1nV(ai)xi2+V(b)∑i=1nE(ai)xi−E(b)}≥α
到这里,就和一维变量的过程很相似了,此处直接给出上式的化简等价类如下
D − 1 ( α ) ≤ − ∑ i = 1 n E ( a i ) x i − E ( b ) ∑ i = 1 n V ( a i ) x i 2 + V ( b ) D^{-1}(\alpha)≤-\frac{\sum_{i=1}^nE(a_i)x_i - E(b)}{\sqrt{\sum_{i=1}^nV(a_i)x_i^2 + V(b)}} D−1(α)≤−∑i=1nV(ai)xi2+V(b)∑i=1nE(ai)xi−E(b)
即
∑ i = 1 n E ( a i ) x i + D − 1 ( α ) ∑ i = 1 n V ( a i ) x i 2 + V ( b ) ≤ E ( b ) \sum_{i=1}^nE(a_i)x_i +D^{-1}(\alpha)\sqrt{\sum_{i=1}^nV(a_i)x_i^2 + V(b)}≤E(b) i=1∑nE(ai)xi+D−1(α)i=1∑nV(ai)xi2+V(b)≤E(b)
再举个实例:
Pr { a 1 x 1 + a 2 x 2 + a 3 x 3 ≤ b } ≥ 95 % \text{Pr}\{a_1x_1+a_2x_2+a_3x_3≤b\}≥95\% Pr{a1x1+a2x2+a3x3≤b}≥95%
其中 a 1 , a 2 , a 3 a_1,a_2,a_3 a1,a2,a3和 b b b分别服从正态分布 N ( 1 , 1 ) N(1,1) N(1,1), N ( 2 , 1 ) N(2,1) N(2,1), N ( 3 , 1 ) N(3,1) N(3,1)和 N ( 4 , 1 ) N(4,1) N(4,1)。则该式的等价类为
x 1 + 2 x 2 + 3 x 3 + 1.645 x 1 2 + x 2 2 + x 3 2 + 1 ≤ 4 x_1+2x_2+3x_3+1.645\sqrt{x_1^2+x_2^2+x_3^2+1}≤4 x1+2x2+3x3+1.645x12+x22+x32+1≤4
4 总结
正文到此结束,以下是核心内容的总结:
(1) 最大化达成目标利润的概率:以报童问题为例,若不考虑缺货损失,最优解可以通过一个简单的公式得到; 而考虑缺货损失后,这个问题则可以转化为求解根的问题。
(2) 约束目标利润的达成概率:使用机会约束规划模型进行建模,根据随机变量是一维还是多维进行区分,当目标函数为特定类型时,可以将其转化为等价类进行求解。
5 相关阅读
The Newsboy Problem under Alternative Optimization Objectives:https://link.springer.com/article/10.1057/jors.1980.96
随机规划与模糊规划:https://book.douban.com/subject/1508496/