Monte Carlo 模拟

menu icon

Monte Carlo 模拟

了解有关 Monte Carlo 模拟的所有须知内容,这种计算算法使用重复的随机抽样,确定产生一系列结果的可能性。

什么是 Monte Carlo 模拟?

Monte Carlo 模拟又称为 Monte Carlo 法或多概率模拟,是一种数学方法,用于估算某个不确定事件的可能结果。 Monte Carlo 法由 John von Neumann 和 Stanislaw Ulam 在二战期间发明,旨在改善不确定条件下的决策。 它得名于著名的赌场城市摩纳哥,因为机会的要素是建模方法的核心,类似于轮盘赌。

自推出以来,Monte Carlo 模拟评估了许多现实场景中风险的影响,如人工智能、股票价格、销售预测、项目管理和定价等。 它们比具有固定输入的预测模型更具优势,例如可进行敏感度分析或计算输入的相关性。 敏感度分析帮助决策者了解各个输入对特定结果的影响及其相关性,让他们理解任何输入变量之间的关系。

Monte Carlo 模拟如何工作?

与常规预测模型不同, Monte Carlo 模拟基于估计的值范围而非一组固定输入值来预测一组结果。 换句话说,Monte Carlo 模拟可针对具有内在不确定性的任何变量,利用概率分布(如均匀分布或正态分布),构建可能结果的模型。 然后,每次使用介于最小值和最大值之间的一组不同的随机数时,重新计算结果。 在典型的 Monte Carlo 实验中,这种计算可重复成千上万次,产生大量可能的结果。

Monte Carlo 模拟因其准确性而被用于长期预测。 随着输入数量的增加,预测数量也会增加,使您能够以更高的准确性预测更长时间段内的结果。 当 Monte Carlo 模拟完成时,它会产生一系列可能的结果,以及每个结果的发生概率。

Monte Carlo 模拟的一个简单示例是计算两颗标准骰子的滚动概率。 共有 36 种骰子滚动组合。 基于此,可手动计算特定结果的概率。 通过使用 Monte Carlo 模拟,可模拟滚动骰子 10000 次(或更多次)以实现更准确的预测。

如何使用 Monte Carlo 方法

无论使用何种工具, Monte Carlo 方法都包含三个基本步骤:

  1. 设置预测模型,同时确定要预测的因变量以及将驱动预测的自变量(也称为输入、风险或预测变量)。
  2. 指定自变量的概率分布。 使用历史数据和/或分析人员的主观判断,定义一系列可能值,并为每个值分配概率权重。
  3. 重复运行模拟,生成自变量的随机值。 重复执行此过程,直至收集到足够多的结果,可以构成近似无限数量可能组合的代表性样本。

可通过修改用于模拟数据的底层参数,运行众多 Monte Carlo 模拟。 但是,您还需要通过计算方差和标准偏差,得出样本中的差异范围,这是通常使用的分布测度。 给定变量的方差是变量与其预期值之间方差的期望值。 标准差是方差的平方根. 通常,方差越小越好。

在此(链接位于 IBM 外部)阅读有关如何进行 Monte Carlo 模拟的更多信息。

Monte Carlo 模拟和 IBM

虽然您可以使用许多工具(如 Microsoft Excel)来执行 Monte Carlo 模拟,但最好使用成熟的统计软件程序,如 IBM SPSS Statistics,它针对风险分析和 Monte Carlo 模拟进行了优化。 IBM SPSS Statistics 是功能强大的统计软件平台,提供一系列强大的功能,帮助组织从数据中获得切实可行的洞察。

利用 SPSS Statistics,您可以:

  • 通过用户友好型界面,分析并更好地理解数据,解决复杂的业务和研究问题。
  • 借助高级统计程序,更快地了解大型复杂的数据集,帮助确保高精度和高质量的决策。
  • 使用扩展功能、Python 和 R 编程语言代码,与开源软件集成。
  • 通过灵活的部署选项,更轻松地选择和管理您的软件。

例如,可使用 SPSS Statistics 中的模拟模块,模拟各种广告预算金额,并了解它会如何影响销售总额。 根据模拟的结果,您可能会决定花费更多的广告经费,以满足销售总额目标。 在此(链接位于 IBM 外部)阅读有关如何使用 IBM SPSS Statistics 进行 Monte Carlo 模拟的更多信息。

IBM Cloud Functions 也有助于执行 Monte Carlo 模拟。 IBM Cloud Functions 是无服务器函数即服务平台,用于执行代码以响应入局事件。 通过使用 IBM Cloud 函数,只需 90 秒执行 1000 次并行调用,即可完成整个 Monte Carlo 模拟。 在此阅读有关如何使用 IBM 工具执行 Monte Carlo 模拟的更多信息。

要了解有关 Monte Carlo 模拟的更多信息,请注册 IBMid 并创建 IBM Cloud 帐户