Files
2026_mcm_b/p2/README.md
2026-01-31 18:00:43 +08:00

9.5 KiB
Raw Permalink Blame History

任务二:非完美运行条件下的蒙特卡洛模拟分析

Task 2: Monte Carlo Analysis Under Imperfect Operating Conditions

本目录包含针对 MCM 2026 Problem B 任务二的完整分析:

"To what extent does your solution(s) change if the transportation systems are not in perfect working order (e.g, swaying of the tether, rockets fail, elevators break, etc.)."


一、问题背景与建模思路

1.1 任务一回顾(完美条件下)

方案 完成时间 总能耗 (PJ) 特点
纯电梯 186.2 年 15,720 能耗最低
混合-最短时间 100.7 年 31,537 时间最短
混合-膝点平衡 139 年 24,361 成本-时间平衡

1.2 任务二:引入故障因素

现实运输系统不可能完美运行,本任务通过蒙特卡洛模拟量化以下故障对方案的影响:

故障类型 物理机制 建模方法
缆索摆动 释放点偏差 → 轨道修正ΔV 正态分布 N(0, σ²),计算修正能量
火箭发射失败 发射失败 → 载荷损失 伯努利分布,失败率 2%
电梯故障 设备停机维护 泊松过程 + 正态停机时间
天气取消 不利天气 → 发射延迟 伯努利分布,按发射场差异化

二、蒙特卡洛模拟模型

2.1 故障参数设置(基于历史数据与合理假设)

故障参数:
├── 火箭发射失败率: 2.0%  [参考: SpaceX Falcon 9 历史失败率 ~2-3%]
├── 电梯年故障次数: 2.0 次/部/年  [假设值,进行敏感性分析]
├── 电梯平均停机时间: 14 ± 7 天  [正态分布]
├── 缆索摆动角度: σ = 0.5°  [考虑潮汐力、月球引力摄动]
└── 天气取消率: 8% ~ 30%  [按发射场地理位置差异化]

天气取消率(分发射场)

发射场 取消率 原因
California 8% 气候干燥
Kourou 10% 热带,偶有雨季
Taiyuan 10% 内陆干燥
Baikonur 12% 大陆性气候
Texas 12% 风暴偶发
SDSC (India) 15% 季风影响
Virginia 18% 东海岸天气
Mahia 20% 海洋性气候
Florida 25% 雷暴频繁
Alaska 30% 极端天气

2.2 缆索摆动的物理建模

问题:缆索摆动如何导致能量损失?

第一性原理分析

  1. 摆动导致释放点速度方向偏差 θ
  2. 载荷进入非设计轨道,需要轨道修正
  3. 轨道修正需要额外 ΔV \Delta V_{correction} \approx V_{release} \cdot \sin(\theta) \approx V_{release} \cdot \theta
  4. 额外燃料消耗(火箭方程): \Delta m_{fuel} = m_{payload} \cdot \left[ \exp\left(\frac{\Delta V}{v_e}\right) - 1 \right]

本模型设置

  • 摆动角度服从正态分布:\theta \sim N(0, 0.5°)
  • 释放速度7,270 m/s100,000 km 高度)
  • 每次释放独立抽取摆动角度

2.3 三种方案定义

方案 代号 策略 目标年限
成本优先 Scenario A 仅使用太空电梯 186.2 年
时间优先 Scenario B 电梯 + 火箭全开 105.7 年
综合平衡 Scenario C 电梯优先 + 低纬火箭 139.0 年

三、蒙特卡洛模拟结果

3.1 模拟配置

  • 模拟次数1,000 次
  • 时间步长:年
  • 随机种子42可复现

3.2 核心结果汇总

方案 目标年限 实际完成年限 延迟率 总能耗 (PJ)
A: 成本优先 186.2 年 202.3 ± 0.6 年 +8.6% 15,738 ± 0
B: 时间优先 105.7 年 120.7 ± 0.4 年 +14.2% 30,217 ± 30
C: 综合平衡 139.0 年 155.3 ± 0.5 年 +11.7% 24,060 ± 26

3.3 故障统计详情

方案A纯电梯

指标 数值
电梯总停机时间 17,073 天 ≈ 46.8 年
摆动能量惩罚 17.9 PJ (占总能耗 0.11%)
火箭失败/天气取消 N/A

方案B时间优先混合全速

指标 数值
火箭发射失败 6,590 次
天气取消 62,761 次
电梯总停机时间 10,199 天 ≈ 27.9 年
摆动能量惩罚 10.7 PJ (占总能耗 0.04%)

方案C综合平衡

指标 数值
火箭发射失败 3,788 次
天气取消 36,078 次
电梯总停机时间 13,114 天 ≈ 35.9 年
摆动能量惩罚 13.8 PJ (占总能耗 0.06%)

四、结果分析与讨论

4.1 关键发现

发现一:故障导致的时间延迟不可忽略

各方案的完成时间均显著延迟

  • 纯电梯方案延迟 16.1 年+8.6%
  • 时间优先方案延迟 15.0 年+14.2%
  • 平衡方案延迟 16.3 年+11.7%

原因分析

  • 电梯故障累计停机时间达 28-47 年(取决于运行总年限)
  • 火箭发射受天气取消和失败双重影响
  • 时间优先方案虽然目标年限短,但相对延迟率最高14.2%

发现二:缆索摆动的能量惩罚可控

摆动能量惩罚仅占总能耗的 0.04% - 0.11%,原因:

  • 0.5° 的摆动角度在工程上是可控的
  • 电梯释放速度7.27 km/s相对较低
  • 轨道修正效率较高

敏感性提示:若摆动角度增大到 5°能量惩罚将增加 ~100 倍。

发现三:火箭故障是时间延迟的主要因素

对于使用火箭的方案B、C

  • 天气取消是最主要的障碍(取消次数 >> 失败次数)
  • 高纬度发射场Alaska 30%)贡献了大量天气取消
  • 火箭失败率 2% 导致约 6,600 次方案B载荷损失

4.2 方案对比:完美 vs 非完美条件

指标 完美条件 非完美条件 变化
方案A 完成时间 186.2 年 202.3 年 +8.6%
方案B 完成时间 100.7 年 120.7 年 +19.9%
方案C 完成时间 139.0 年 155.3 年 +11.7%
方案A 能耗 15,720 PJ 15,738 PJ +0.1%
方案B 能耗 31,537 PJ 30,217 PJ -4.2%*
方案C 能耗 24,361 PJ 24,060 PJ -1.2%*

*注:能耗略有下降是因为火箭失败后载荷未交付,总运输量略少。

4.3 敏感性分析

基于方案C的Spearman相关系数分析

因素 与完成时间的相关性
电梯停机时间 强正相关
天气取消次数 中等正相关
火箭失败次数 弱正相关
缆索摆动惩罚 极弱相关

结论电梯可靠性是影响项目进度的最关键因素。


五、图表索引

图表文件 内容描述
completion_time_distribution.png 三方案完成时间概率分布直方图
energy_distribution.png 三方案能耗概率分布直方图
boxplot_comparison.png 完成时间与能耗箱线图对比
failure_analysis.png 故障统计分布(火箭失败、天气取消、电梯停机、摆动惩罚)
sensitivity_tornado.png 敏感性分析龙卷风图
comprehensive_comparison.png 综合对比图散点图、CDF、统计表、延迟分布

图表预览

完成时间分布

completion_time_distribution

能耗分布

energy_distribution

箱线图对比

boxplot_comparison

故障分析

failure_analysis

敏感性龙卷风图

sensitivity_tornado

综合对比

comprehensive_comparison


六、结论与建议

6.1 核心结论

  1. 故障对项目进度影响显著:所有方案均出现 8-14% 的时间延迟
  2. 电梯可靠性是关键:电梯停机累计达 28-47 年,是最主要的延迟源
  3. 缆索摆动影响可控:在 0.5° 摆动范围内,能量惩罚 < 0.2%
  4. 方案排序不变
    • 成本优先 → 纯电梯(~202 年15,738 PJ
    • 时间优先 → 混合全速(~121 年30,217 PJ
    • 综合平衡 → 膝点方案(~155 年24,060 PJ

6.2 风险缓解建议

风险因素 缓解措施
电梯故障 增加冗余电梯、提高可维护性设计
天气取消 优先使用低纬度、气候稳定的发射场
火箭失败 提高技术成熟度、建立快速重发机制
缆索摆动 主动阻尼控制、优化释放时机

6.3 模型局限性

  1. 故障参数假设:电梯故障率基于假设,缺乏实际数据
  2. 故障独立性假设:未考虑级联故障
  3. 恢复时间简化:未建模复杂的维修调度
  4. 天气模型简化:未考虑季节性变化

七、文件清单

文件 描述
monte_carlo_simulation.py 蒙特卡洛模拟核心代码
simulation_results.csv 原始模拟数据1000×3方案
simulation_report.txt 统计报告文本版
*.png 可视化图表6张
README.md 本分析报告

八、如何运行

# 安装依赖
pip install numpy matplotlib pandas scipy tqdm

# 运行模拟约15分钟
cd /Volumes/Files/code/mm/20260130_b/p2
python monte_carlo_simulation.py

可在 monte_carlo_simulation.py 中修改:

  • n_simulations:模拟次数(默认 1000
  • FailureParameters:故障率参数

报告生成时间2026-01-31