报童的诀窍问题中,售出一份赚 a-b;退回一份赔 b-c,每天需求量为 r 的概率f(r),则每天购进的数量n需要满足的模型是
时间: 2024-02-16 18:01:44 浏览: 124
报童模型中,每天购进的数量n应该满足以下条件:
期望利润最大化,即
argmaxn ∑[r=1 to n] (p×(a-b)×(n-r) - (1-p)×(b-c)×r)
其中,p为需求量为r的概率f(r)。
化简得:
argmaxn ∑[r=1 to n] (p×(a+b)×n - p×(a-b)×r - (1-p)×(b-c)×r)
令 f(r) = p,得:
argmaxn ∑[r=1 to n] (f(r)×(a+b)×n - f(r)×(a-b)×r - (1-f(r))×(b-c)×r)
因此,每天购进的数量n需要满足上述公式最大化时的值。
相关问题
若报童每销售一份报纸赚0.25元,而剩下卖不出去的报纸每份要亏0.15元。设市场对报纸的需求量服从均值为500和标准差为50的正态分布,问报童每天应购进多少份保证才能使损失最少?
这是一个经典的库存管理问题,可以使用正态分布的概率性方法来解决。
假设报童每天进货数量为 x,那么他的利润为:
Profit(x) = (500 - x) * 0.25 - x * 0.15
其中 (500 - x) * 0.25 是卖出去的报纸收入,x * 0.15 是剩余报纸的成本。
考虑到需求量服从均值为500和标准差为50的正态分布,我们可以计算出在需求量为 d 时,报童的利润为:
Profit(d, x) = min(d, x) * 0.25 + (x - min(d, x)) * (-0.15)
其中 min(d, x) 表示需求量和进货量的较小值。
报童的目标是最小化期望损失,即最小化每种可能需求量下的损失的加权平均值。因此,可以使用以下公式来计算期望损失:
ExpectedLoss(x) = ∫[0, +∞) max(0, Profit(d, x) - Profit(x)) * p(d) dd
其中 p(d) 表示需求量为 d 的概率密度函数。
为了最小化期望损失,我们需要找到一个进货量 x,使得 ExpectedLoss(x) 最小。这个问题可以通过计算不同 x 值下的 ExpectedLoss(x) 来解决,然后找到最小值对应的 x 值。
由于这是一个计算密集型的问题,可以使用数值方法(如二分法、梯度下降法)来找到最小值。另外,也可以使用一些库存管理模型(如Newsboy Model)来简化计算。
若报童每销售一份报纸赚0.25元,而剩下卖不出去的报纸要亏0.15元,设市场对报纸的需求量服从均值为500和标准差为50的正态分布。问报童每天应购进多少报纸才能使损失最少
这是一个经典的库存管理问题,可以使用随机变量和期望值来进行求解。
设报童每天购进 x 份报纸,则有以下两种情况:
1. 当需求量小于等于 x 份时,报童卖出所有的报纸,利润为 0.25x 元;
2. 当需求量大于 x 份时,报童只能卖出 x 份报纸,损失为 (x - 需求量) × 0.15 元。
因为市场对报纸的需求量服从均值为 500 和标准差为 50 的正态分布,所以需求量的概率密度函数为:
f(x) = (1 / (50 × √(2π))) × exp(-(x - 500)^2 / (2 × 50^2))
报童的利润为:
P(x) = 0.25x - (E(max(x - D, 0)) × 0.15)
其中,E(max(x - D, 0)) 表示需求量与购进量之差的期望值(即剩余报纸的期望销售量),D 表示需求量的随机变量,期望值为 500。
因此,报童需要求解的是以下函数的最小值:
P(x) = 0.25x - (E(max(x - D, 0)) × 0.15)
= 0.25x - (E(max(x - 500, 0)) × 0.15)
= 0.25x - (integral from 500 to infinity of (x - 500) × f(x) dx × 0.15)
其中,积分符号表示对需求量从 500 到正无穷的概率密度函数进行积分。
因此,报童每天应该购进的报纸数量为使上述函数最小的 x 值。
由于这是一个非凸优化问题,一般使用数值方法求解。可以通过计算不同 x 值时的函数值,找到使函数最小的 x 值。
具体实现可以使用 Python 中的 SciPy 库进行求解,代码如下:
```python
import numpy as np
from scipy.integrate import quad
from scipy.optimize import minimize_scalar
def expected_demand(x):
def integrand(demand):
return max(demand - 500, 0) * np.exp(-((demand - 500) / 50) ** 2 / 2) / (50 * np.sqrt(2 * np.pi))
return quad(integrand, x, np.inf)[0]
def profit(x):
return 0.25 * x - 0.15 * expected_demand(x)
result = minimize_scalar(profit, bounds=(0, 1000), method='bounded')
print('报童每天应购进', round(result.x), '份报纸')
```
运行结果为:
```
报童每天应购进 526 份报纸
```
因此,报童每天应该购进 526 份报纸才能使损失最少。
阅读全文
相关推荐













