数值随机化
在本练习中,您将应用并比较不同的随机化方法。目标是让您熟悉这些方法,以及它们如何影响随机数的生成方式。不同方法适用于不同情境,因此理解它们的差异非常重要。
设想一个业务流程大约需要 15 分钟完成。但您知道其实际时长会有约 5 分钟的波动(上下浮动)。请使用 random 包中的不同随机化方法,在可控的前提下生成该时长的不同取值。
本练习是课程的一部分
Python 中的离散事件模拟
练习说明
- 基于给定信息,生成 1000 个作为"整数"的随机流程时长。
- 基于给定信息,生成 1000 个作为"浮点数"的随机流程时长。
- 基于高斯分布,生成 1000 个"浮点型伪随机"时长,均值为 15,标准差为 5。
- 基于指数分布,生成 1000 个"浮点型伪随机"时长,lambda 参数为 1.5(正数),并在 15 处达到峰值。
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Generate random integer numbers
randint_array = np.array([____ for i in range(1000)])
# Generate random float numbers
uniform_array = np.array([____ for i in range(1000)])
# Generate random float numbers based on the Gaussian distribution
gauss_array = np.array([____ for i in range(1000)])
# Generate random float numbers based on the Exponential distribution
expon_array = np.array([____ + 15 for i in range(1000)])
plot_all(randint_array, uniform_array, gauss_array, expon_array)