1. 为什么要用蒙特卡洛法研究电动汽车接入配电网
1.1 无序充电到底"无序"在哪里
先聊一个我在实际项目中反复遇到的问题。电动汽车规模上来之后,配电网最头疼的不是"电动汽车这个负荷有多大",而是"你根本不知道它什么时候充电、充多久、在哪充"。传统配电网的负荷曲线虽然也有波动,但大体上还能靠历史数据摸出规律,比如晚高峰、早高峰、季节性变化,电力调度多少心里有数。
电动汽车完全不一样。以最常见的私家车用户为例,一天上下班通勤,回家之后顺手把充电枪插上,什么时候插、电池还剩多少电、充到多少拔枪,全都取决于个人习惯。有人下班六点到家就充,有人半夜十一点才回来,有人周末白天在家充,还有人纯靠单位停车场蹭电。把这些行为叠加在一起,配电网侧的负荷波动就带上很强的随机性。
这里说的"无序接入",指的就是没有任何激励或调度机制引导充电行为,用户想充就充。从电网角度看,这意味着充电负荷在时间和空间上都是不确定的。你没法用一个固定数值去描述"下班后小区有多少辆电动车在同时充电",只能描述成"有多大比例的车会在某个时段充电"。
我在做这类项目的时候,一开始也想走捷径,用典型日负荷曲线叠加一个固定的充电负荷估算值。算出来结果看起来挺合理,但真正拿来指导台区改造或者变压器容量校验,心里是发虚的。因为真实世界里的"最恶劣场景"并不等于"所有车都在最晚高峰同时开始充电"这么简单,它可能是80%的车在某个时段重叠充电,加上基础生活负荷恰好到达峰值,再叠加某栋楼下面变压器的散热条件,多个因素凑出来的一个概率极低的组合。
这就是蒙特卡洛法介入的第一个理由:无序充电问题天然是概率问题,而概率问题需要概率化的工具。
1.2 为什么确定性潮流计算方法不够用
常规的配电网潮流计算,比如前推回代法、牛拉法,本身没有问题,它们是求解配电网运行状态的基础工具。问题是输入参数的取值方式。传统做法一般是取一个"典型场景"——比如晚高峰时刻,给定每户的负荷功率,然后算潮流,看节点电压是否越限,看线路是否过载。这个方法做了几十年,工程上完全够用。
但要把它用到电动汽车接入评估上,困难就来了。因为你不知道"典型场景"里的电动汽车负荷该取多少。取小了,评估结果太乐观,变压器可能实际过载,夏天直接跳闸;取大了,结果太保守,一个小区明明能接100辆电车,你评估下来只敢批30辆,接入容量被白白浪费。
我曾经在一个项目上遇到过很典型的争议。开发商报了一个充电桩报装容量,供电公司觉得太大,理由是"晚高峰叠加充电负荷肯定超";开发商觉得没问题,理由是"不可能每家都同时充"。两边都有道理,但谁都没有量化证据。最后是用蒙特卡洛抽样跑了五千次仿真,把"超载概率"和"电压越限概率"摆到桌面上,才达成一致。这个案例让我深刻意识到,面对无序充电这种强随机性问题,确定性计算的上限太低了。
蒙特卡洛法的思路是反过来的:既然电动汽车的充电行为是随机的,那就先按概率分布大量抽样,模拟出成千上万种可能出现的情况,每种情况都做一次潮流计算,最后把所有结果汇总成概率统计。什么"95%置信度下变压器负载率不超过多少""电压越下限的概率是百分之几",全都能算出来。这才是无序接入影响分析需要的答案形态。本篇文章接下来的所有内容,都是围绕这套方法展开的实操拆解。
2. 蒙特卡洛法的本质与电动汽车建模关键
2.1 蒙特卡洛法的本质:用随机性对抗随机性
很多刚接触蒙特卡洛的读者容易把它想得很玄,其实这里面的道理非常朴素。蒙特卡洛法的核心思想说白了就是:当一个系统的输入具有随机性、没办法精确预测时,就按照这些随机量的概率分布大量抽样,把每一种抽样结果都当成一次"可能的现实"去模拟,最后统计大量模拟结果,得到输出量的概率特征。
理论基础是大数定律:当抽样次数足够多的时候,样本平均值会收敛到期望值。这句话翻译成工程语言就是——只要你模拟的次数够多,统计出来的结果就够接近真实情况。
我自己的理解是,它本质上是"用随机性对抗随机性"。电动汽车充电行为导致的电网影响是随机的,我们无法精确预知,那就构造另一个随机过程去逼近它,也就是用概率分布去描述行为规律,然后用大量随机抽样去覆盖可能的场景空间。
这与确定性方法的区别非常关键。确定性方法追求"一个值",比如"该台区的最大负荷是320千瓦";蒙特卡洛方法追求"一个分布",比如"该台区最大负荷有80%概率落在280到350千瓦之间,超过350千瓦的概率是5%"。对配电网规划来说,后者的信息量显然大得多。变压器该选315千伏安还是400千伏安,不是靠拍脑袋,而是要靠这些概率数字去支撑。
蒙特卡洛法在电网行业落地很早,系统可靠性评估、新能源出力预测里都有大量应用。这几年在电动汽车接入评估领域频繁出现,纯粹是这个问题的随机性太适合这个工具了。
2.2 电动汽车充电负荷模型需要哪些关键参数
蒙特卡洛法的精度取决于输入模型是否贴近真实。我在项目里构建电动汽车充电负荷模型时,重点关注这几个参数:
起始充电时间。这是对电网晚高峰影响最大的一个参数。大部分私家车用户回家后就开始充电,所以起始充电时间集中在18:00到22:00之间,峰值大概在19点到20点。工程上通常用正态分布近似,期望值约19点,标准差约1.5到2小时。当然各地数据有差异,我见过有些三四线城市通勤距离短,下班早,峰值会往前挪一些;一二线城市加班多,峰值会延后。
日行驶里程。这个参数直接决定电池的起始SOC状态,进而决定充入电量和充电持续时间。日行驶里程一般服从对数正态分布,期望值大约在30到50公里之间,标准差也不小。这一点很关键,意味着大部分用户每天开得不多,也有一部分用户每天跑上百公里。北京、上海这种超大城市通勤距离长,充电需求明显偏高,直接用国外数据会偏乐观。
充电功率。这个跟充电设施类型强相关。私人慢充桩常见的是3.3千瓦和7千瓦;公共交流桩一般是7千瓦到22千瓦;直流快充则从30千瓦到120千瓦甚至更高。无序接入场景分析,我一般默认用户在自有桩上慢充,因为家用慢充才是"无感接入"的主体。快充对配电网的影响会在后文单独讨论。
充电行为模式。在基础模型里通常会做一个简化假设:用户到家插枪即充,一直充到充满或者第二天早上出门。实际肯定有人充到80%就拔枪、有人设置了低谷电价延时充电,但既然是模拟"无序接入",假设插枪即充本身就是要表达的意思——没有任何调度干预。
这些参数之间不是独立的,比如日行驶里程越长,起始SOC就越低,需要的充电时间就越长。如果在建模中把这些参数当成独立变量,仿真结果会失真。正确的做法是建立日行驶里程与起始SOC的概率关联,再推导充电时长。这一点经常被初学者忽略,我在第六部分还会展开讲。
3. 建模实操:从概率分布到蒙特卡洛抽样
3.1 基础算例与参数设置
下面我以一个典型居民台区为例,完整梳理建模过程。假设这个台区配有一台315千伏安变压器,供一个约300户的住宅小区,基础生活负荷峰值约220千瓦,功率因数约0.95。该小区当前电动汽车渗透率按20%考虑,约60辆车。
每辆车的充电参数设置如下:
| 参数 | 取值 | 说明 |
|---|---|---|
| 起始充电时间 | 正态分布,均值19:00,标准差1.8h | 参考国内居民区充电行为统计数据 |
| 日行驶里程 | 对数正态分布,均值35km,标准差12km | 按城市私家车通勤特征修正 |
| 充电功率 | 70%用户为7kW,30%用户为3.3kW | 按小区慢充桩实际配置比例 |
| 电池容量 | 40kWh~80kWh均匀分布 | 覆盖不同车型 |
| 充电效率 | 0.9 | 含AC-DC转换损耗 |
| 起始SOC | 与日里程关联计算 | SOC=1-里程/(满电续航) |
起始SOC计算公式为:
日均行驶里程占比 = 日行驶里程 / 等效续航里程 起始SOC = 1 - 日均行驶里程占比这里要注意,等效续航里程不能直接取车型标称值,应取实际续航的85%~90%,因为NEDC/CLTC工况数据普遍偏理想,冬天开暖气、夏天开空调都会打折。否则SOC初值偏低,充电量和负荷会被高估。
3.2 蒙特卡洛抽样的完整流程
每轮模拟中,对60辆车中的每一辆依次执行:
- 按对数正态分布抽样得到日行驶里程;
- 按均匀分布抽样得到电池容量和充电功率;
- 由日行驶里程推算起始SOC;
- 由起始SOC、电池容量、充电功率、充电效率计算充电时长;
- 按正态分布抽样得到起始充电时间;
- 把充电功率叠加到对应时段的台区基础负荷曲线上。
全部车辆处理完成后,就得到一轮完整的24小时台区负荷曲线,记录下该轮的最高负载率、最大电压偏差、总电量等指标。重复上述过程N轮(一般取1000到5000轮),最后对记录的所有指标做统计分析。
核心代码如下,我用Python写过一版简化但可运行的实现,贴出来供参考:
import numpy as np import pandas as pd # 基础参数 n_ev = 60 # 电动汽车数量 n_sim = 2000 # 蒙特卡洛模拟轮数 base_load = load_profile_24h() # 基础负荷曲线,长度为24*12=288(5分钟粒度) # 概率参数 t_start_mean, t_start_std = 19.0, 1.8 # 起始充电时间(小时) miles_mean, miles_std = 35, 12 # 日行驶里程(km) results = np.zeros((n_sim, 288)) # 存储每轮的负荷曲线 for sim in range(n_sim): load = base_load.copy() for i in range(n_ev): # 抽样日行驶里程(对数正态分布) mileage = np.random.lognormal( mean=np.log(miles_mean**2 / np.sqrt(miles_std**2 + miles_mean**2)), sigma=np.sqrt(np.log(1 + miles_std**2 / miles_mean**2)) ) # 电池容量与充电功率 battery_cap = np.random.uniform(40, 80) # kWh charge_power = np.random.choice([7, 3.3], p=[0.7, 0.3]) # kW # 起始SOC与充电时长 real_range = battery_cap / 0.18 # 等效续航,按百公里18kWh估算 soc_init = max(0.15, 1 - mileage / real_range) energy_needed = battery_cap * (1 - soc_init) / 0.9 # 含充电效率 charge_hours = energy_needed / charge_power # 起始充电时间抽样 t_start = np.random.normal(t_start_mean, t_start_std) t_start = max(0, min(24, t_start)) # 叠加到负荷曲线 start_idx = int(t_start * 12) duration_idx = int(charge_hours * 12) load[start_idx : start_idx + duration_idx] += charge_power results[sim] = load这段代码真正跑起来还需要基础负荷具体数据、功率因数、线路阻抗参数,用于后续潮流计算。但核心的随机抽样逻辑是完整的,直接改参数就能用于你自己的项目。
3.3 模拟次数与收敛性:一个容易被忽略的工程问题
很多人上来就问"N取多少合适",我自己的经验是1000到3000轮在大多数居民台区评估中足够,但必须验证收敛性,不能盲信经验值。
验证方法很简单:每增加一轮模拟,记录当前累计的平均峰值负荷,观察它是否已经趋于稳定。具体操作上,可以把峰值负荷的累计均值随迭代次数的变化画出来,如果曲线在某个N之后进入±2%的波动带,就认为收敛了。
值得注意的是,不同指标的收敛速度不一样。均值类的指标(比如平均负载率)收敛很快,几百轮就稳了;但尾部概率类的指标(比如超过变压器额定负载的概率)需要更多轮次,因为要捕捉的是低概率事件。如果深究极端事件的概率,5000轮都不嫌多。我在实际项目中通常先跑1000轮看趋势,如果尾部概率的置信区间太宽,再增加轮数。
3.4 潮流计算环节的处理方式
抽样得到每轮的负荷曲线后,下一步是潮流计算。如果配电网结构简单,比如单辐射线路、节点数量不多,用前推回代法就够,手动实现也不难。如果有条件用专业的配电网分析工具,直接把各节点负荷注入导入即可,省去自己写潮流求解器的功夫。
我要强调的是时间维度:每个时间断面的负荷分布都不一样,严格做法是每个断面做一次潮流计算,一天288个断面乘以2000轮,就是57.6万次潮流计算。这个计算量说大不大、说小不小,用配电网分析工具批量处理会引入大量I/O和管理开销。我的做法是折中:先在所有轮次中找出峰值负荷所在的时段(通常集中在19点到21点),只对这种高风险时段做全网潮流计算,其余时段只做功率平衡校核。这样计算量降一个数量级,且不会遗漏最关键的评估场景。
4. 无序充电对配电网影响的量化分析结果
4.1 变压器负载率与过载风险
先看变压器这个配电网最核心的设备。我在上述算例基础上做了仿真。无电动汽车接入时,台区峰值负载率约70%,还在安全红线内。接入60辆电动汽车后,20%渗透率对应的负载率分布如下:
| 指标 | 数值 |
|---|---|
| 平均峰值负载率 | 92.8% |
| 最大峰值负载率(2000轮中) | 118.6% |
| 超过100%的概率 | 约8.7% |
| 超过80%的概率 | 约67.3% |
这就是蒙特卡洛法相对确定性分析的价值所在。用传统方法,按最恶劣场景估算,60辆车全部同时充电,负载率直接干到120%,这时候结论是"必须扩容";但蒙特卡洛结果显示,真正发生过载的概率只有8.7%——当然,这个8.7%绝不能忽视,因为一旦过载,变压器寿命损耗和故障风险是实实在在的。
我还在实际项目中见过变压器已经处于"高负荷+高温季节"状态的情况。如果夏季高温叠加电动汽车无序充电,变压器过载概率会显著上升且持续时间长,这时哪怕过载概率只有5%,也必须采取措施。风险评估要结合设备状态判断,不能单看一个概率值。
4.2 节点电压偏移与网损变化
低压配电网的电压问题同样突出。充电负荷集中在末端节点时,电压偏移往往最先暴露。算例中某个末端节点在电动汽车负荷高峰时段的电压分布如下:
| 指标 | 数值 |
|---|---|
| 平均最低电压 | 0.932 p.u. |
| 最低电压(2000轮中) | 0.897 p.u. |
| 低于0.93 p.u.(国标下限)的概率 | 约15.2% |
| 低于0.90 p.u.的概率 | 约3.1% |
按国标GB/T 12325-2008,220V单相供电电压允许偏差为标称电压的+7%和-10%,即0.90到1.07 p.u.。模拟显示该末端节点有约3%的概率触及低压红线。看起来只有3%,但注意这是每天充电高峰时段反复可能出现的状态,一年下来就是大约10天末端用户家里的电压低于198V,灯闪、空调启动困难就在这些晚上发生,实际投诉不止。
网损方面,无序充电使台区线损率从平均3.2%上升到4.7%左右,增幅接近50%。这个数字看着不大,但配电网基数大,折算成全年的电能损耗是一笔不小的经济账。而且网损不是均匀分布的,越是充电集中度高、线路末端远的区域,损耗增长越明显。有一个11节点辐射网络的理论研究表明,接入位置不同的电动汽车对网损的影响相差可达数倍,充电桩位置规划不当会造成局部线损陡增。
这里我要强调一个工程直觉:电压问题和变压器过载问题同样重要,但在实际运维中,用户对电压跌落的主诉往往更敏感,因为它直接体现在用电体验上,灯会闪、电器会异常。规划设计阶段如果只盯着变压器不看电压,后期会非常被动。
4.3 渗透率升高后的"雪崩效应"
把渗透率从10%逐步升高到50%,可以看到一些非线性现象。10%时,各项指标几乎都在安全范围内,额外的负荷被配电网本身的冗余吸收掉了;20%时开始出现少量越限;到30%以上,问题开始加速恶化,变压器过载概率从10%出头猛增到40%以上。
这个"雪崩点"很重要。配电网对电动汽车的接纳能力不是线性的,它有一个明显的拐点。拐点之前,边际接入成本很低;拐点之后,每增加一辆电动车,风险都在加速积累。在接入容量评估中,找到这个拐点,比算出一个精确数字有意义得多。
我从几个项目中观察到的经验是,这个拐点大约出现在变压器负载率基线在60%到70%的台区、渗透率20%到30%之间的位置,具体数值取决于当地的基础负荷水平、线路供电半径、充电功率分布。基础负荷高的区域,拐点出现得更早。这也是为什么同样的小区,一个在市中心、一个在城乡结合部,电动汽车接入容量可以差出两倍。
5. 基于蒙特卡洛结果的接入容量预测方法
5.1 接入容量的定义与评估框架
接入容量预测是蒙特卡洛仿真结果最终要回答的问题:这个配电台区到底能容得下多少辆电动汽车?我建议把它定义成一组概率约束下的最大接入数量,而不是一个拍脑袋的"硬上限"。常用的约束条件包括:
| 约束类型 | 典型限值 | 概率要求 |
|---|---|---|
| 变压器负载率 | ≤100%(短时不超过120%) | 过载概率≤5% |
| 节点电压 | ≥0.93 p.u. | 越限概率≤5% |
| 线路载流量 | ≤导线长期允许载流量 | 过载概率≤2% |
| 谐波畸变率 | THD≤5% | 越限概率≤5% |
在蒙特卡洛框架下,评估过程就是不断改变电动汽车数量,重复仿真,找出满足所有概率约束的最大车辆数。这个方法可以叫"概率化容量评估",比传统N-1校验或者固定车位数法精细得多。它不追求“永远不出问题”,而是把风险控制在可接受的概率范围里,这更符合配电网实际运行逻辑——现有的民用负荷也从来不是按最恶劣情况设计的。
5.2 逐步提高渗透率的仿真策略
实际操作中,我一般这么做:先以5%渗透率起步,完整跑一遍蒙特卡洛仿真,得到各项指标的概率分布;如果没有越限,把渗透率提高5个百分点;有越限了,用二分法收敛到临界渗透率。这个方法比一次性大跨度试错效率高,且能可视化地看出"距离临界值还有多远"。
在刚才的算例里,逐步仿真的结果大致是:25%渗透率(约75辆车)时,变压器过载概率仍在5%以内;30%渗透率(约90辆车)时,变压器过载概率突破5%同时电压越限概率达到6.8%,不再满足约束。所以该台区的接入容量可评估为约75辆,对应渗透率25%。
这里要说明清楚,这是针对"无序充电"场景的结论。如果换成有序充电,延迟一个半小时、错峰启动、功率可调馈能,接入容量可以大幅提升,这个结论也在不少研究和试点项目中得到了验证。关于有序充电和快充的衔接,我在最后一部分展开。
5.3 不确定性传递分析:不只算一个数,还要算置信区间
把蒙特卡洛结果直接输出成一个精确数字,比如"可以接入75辆",其实是不够严谨的。因为输入分布参数本身是从有限样本中统计出来的,存在估计误差。比如起始充电时间的均值是19点,但如果样本只有200份,真实均值可能在18.7到19.3之间。这个误差会传递到最终结果。
一种工程上可行的做法是对输入参数做敏感性分析,找出对结果影响最大的参数,对其做更精细的采样统计;对影响小的参数,保持默认值即可。我在做项目时发现,起始充电时间的分布参数对结果影响最大,其次才是充电功率配比和日里程分布。日里程的影响反而比直觉上弱一些,可能是因为居民区充电时长普遍在3到5小时,时长超过晚高峰持续时间之后,边际影响递减。
如果想让接入容量评估结果更稳健,可以进一步做分层分析:比如分别估计晚高峰充电集中期和平峰时段的约束,取更严格的约束作为容量边界。这种偏保守的处理在工程立项阶段是有意义的,因为电网规划的容错空间本就有限,你宁可稍微低估接入能力,也不能在规划阶段就埋下过载隐患。
6. 实际项目中的工程经验与避坑指南
6.1 参数建模的陷阱:别把独立分布硬拼在一起
入门者最常见的错误,是把日行驶里程、起始SOC、充电时长当作三个独立变量分别抽样。这会导致充电时长分布失真,进而影响整个配电网负荷峰值的计算。
正确的做法是建立它们之间的物理关联。日行驶里程长,则起始SOC低,需要充入的电量多,充电时长长——这三个量必须保持逻辑一致。我见过一个项目,把起始SOC设成独立均匀分布,结果很多辆车"起始SOC还有80%却充了5个小时",仿真出来的负荷曲线高估了充电行为,导致变压器容量评估过于保守,白白多花了几十万扩容费用。
6.2 收敛性检验不能省
第二个常见问题是不做收敛性检验直接跑完N轮就输出结果。我曾经在配置一台普通笔记本的情况下跑过3000轮仿真,耗时不到半小时,算力对这类问题通常不是瓶颈。真正的问题出在"轮数足够多但指标没收敛"时,你却不知道。
具体表现是:前500轮统计的过载概率是10%,加到2000轮时变成了8%,再跑到5000轮又变成8.5%。如果不观察收敛过程,你可能会拿着10%的偏保守结果或者8%的偏乐观结果去做决策。我建议在每次正式仿真前,用目标指标的累计均值曲线做一次快速检查,确认曲线进入平稳段后再开始正式仿真。如果重点关心尾部概率,建议把模拟轮数往上提,并且在报告中给出置信区间,不要只给一个点估计。
6.3 快充与无序充电的关系需要分开建模
题目里提到了"电动汽车快充"这个热点词,正好展开说说。快充的场景和家用慢充完全不同:充电功率从几十千瓦到上百千瓦,单桩峰值冲击巨大,但持续时间短,且分布位置偏公共设施,对10千伏中压配电网的影响更突出。用居民慢充模型去评估快充,显然不合适。
快充接入分析需要单独建模型,重点考虑:快充站的选址(是否在配电网末端)、充电桩数量与同时使用率、单桩峰值功率、一天内使用强度分布。快充负荷的随机性比家用慢充更强,因为用户到达时间更分散,充电时长更短,客户行为更难预测。蒙特卡洛法在这里同样适用,但参数分布需要重新标定。
顺带说一个自己的观察:很多城市在推"快充为主、慢充为辅"的公共充电策略,这会改变配电网的负荷形态。快充负荷虽然单点冲击大,但因为位置可规划、集群可管理,反而比分散在千家万户的慢充负荷更可控。慢充无序接入的治理难点恰恰在于分散、量大、难以逐一调度。这也是为什么我坚持在台区评估中把慢充无序场景作为瓶颈场景来看待。
6.4 从评估结果到改造方案的落地衔接
蒙特卡洛评估做完,最终的产出不能只是一份报告。规划层面,需要明确是扩容变压器、改架导线还是新增台区;运行层面,需要确认是否加装智能融合终端监测负载率;用户管理层面,需要考虑引导错峰充电或低谷充电的机制。
这里有个顺序问题值得注意:先做监测,再做引导,最后才是扩容。因为实测数据能修正仿真参数,如果直接按仿真结果启动扩容,可能过度投资;如果只靠引导不扩容,一旦渗透率突破临界,风险会快速积累。我经手的项目里,比较成熟的做法是:仿真评估给出容量边界和风险概率,运维部门据此对台区做分级(绿色/黄色/红色),绿色台区继续监测,黄色台区启动有序充电引导,红色台区列入改造计划。这个路径不管在哪个城市、哪个供电公司,大体都适用。
7. 横向对比:蒙特卡洛法与其他评估方法的位置
7.1 三类评估方法怎么选
做电动汽车接入评估,方案不止蒙特卡洛一种,把方法放在一起对比,更能看清楚各自适用边界。
| 方法类型 | 原理 | 优点 | 局限性 |
|---|---|---|---|
| 确定性典型场景法 | 取最恶劣或最典型工况计算 | 简单直接、计算量小 | 无法刻画风险概率,要么保守要么冒进 |
| 解析概率法 | 用卷积/解析公式求解负荷分布 | 速度快、数学严谨 | 难以处理复杂分布和高度非线性关系 |
| 蒙特卡洛仿真法 | 大量抽样+逐次计算+统计 | 适应性强、能输出完整概率分布 | 计算量大,精度受输入模型影响 |
解析概率法在理论上是蒙特卡洛的替代方案之一,但实际工程中很少见到大面积使用。原因是配网节点多、约束非线性强、参数分布类型复杂,解析推导往往卡在“太理想化”上。蒙特卡洛胜在工程灵活,只要你能把模型写成程序,就能算。
7.2 场景扩展:蒙塔卡洛还能用在哪些配电网分析里
这套方法的适用范围其实远超电动汽车接入。分布式光伏出力受天气影响、储能充放电策略随机性、微电网中多能互补调度,都是典型的随机性问题。蒙特卡洛法都能派上用场。
我在后续项目中经常把电动汽车模型和光伏出力模型耦合在一起做仿真。白天光伏大发时电动汽车不在家,晚上光伏为零时电动汽车集中充电,这个时序错配天然导致“光伏白发了电用不掉,晚上又要烧煤来充车”的现象。蒙特卡洛法可以把这种时序耦合关系量化出来,为台区配置储能提供决策依据。思路和本文讲的是同一套,只是输入模型多了光伏和储能两个模块。
7.3 数据源的重要性排在算法之前
最后想强调一个看起来不酷但非常重要的点:算法再先进,也救不了糟糕的输入数据。我在多个项目中体会到,起始充电时间的分布参数是否贴合本地实际,对结果的影响远大于你选的是2000轮还是3000轮模拟。如果本地的充电行为调研数据够扎实,哪怕用简单的确定性方法做初步估算,方向也不会跑偏;反过来,数据不准,蒙特卡洛只是把错误的输入变成了“看起来很有道理的错误输出”。
做这类评估,我建议把精力的分配放到:60%用于收集和分析充电行为数据,20%用于建立符合本地实际的概率模型,15%用于跑仿真和写分析程序,5%用于调参优化算法本身。很多团队把比例倒过来了,天天调算法参数,数据基础却薄弱得很,最后的结果在专家评审会上根本站不住脚。数据源建设这件事,值得在做蒙特卡洛分析之前就认真铺好。