做微网调度的人,这两年应该都有同一个感觉:以前算“怎么用电最便宜”,现在得先回答一句“排了多少碳”。碳交易市场把碳排放变成了一项可定价的成本项之后,传统只盯电价的调度逻辑明显不够用了。最近我在做一门关于综合能源系统优化的课题,课题名字就叫“碳交易背景下光热电站与电转气系统协同碳捕集的多能微网经济调度策略优化模型研究”。这题目乍看很长,拆开来其实就三件事:第一,把碳交易的成本逻辑写进调度目标;第二,把光热电站、电转气系统、碳捕集装置这些“能调能储”的新设备放进同一个微网里协同运行;第三,用混合整数规划把“省多少钱”和“减多少碳”一次算明白。这篇文章会把我在建模、调参、求解和结果分析过程中最关键的内容整理出来,适合正在做综合能源系统优化课题的研究生,也适合园区能源管理、碳资产管理方向的工程师参考。
1. 碳交易这股东风,怎么把“碳排放”变成调度里的硬约束
1.1 从配额到成本:碳交易机制如何进入经济调度
先看碳交易在数学模型里到底干了什么。在目前的碳市场机制下,免费配额一般按历史排放强度或者行业基准线发放,实际一年运行下来会有两类情况:实际排放量比配额多,就需要到碳市场购买缺口;实际排放量比配额少,可以把盈余配额卖出换钱。折算到24小时调度周期内,这部分成本完全可以显式写进目标函数。用文本公式表示大概是:
C_co2 = P_carbon × (E_net - E_quota_daily)其中P_carbon表示碳价,E_net是系统在调度周期内的净排放量,E_quota_daily是当日免费配额。注意净排放不是设备排多少就记多少,还要把碳捕集装置真正捕集并转化掉的那部分扣掉。也就是说,碳捕集系统在这个模型里不是单纯的“环保设施”,它本质上是一个可以参与经济调度的减排资产,捕集率越高,碳交易支出越少,但相应的再生蒸汽耗量和电耗会增加。
很多初学者容易漏掉一个细节:外购电力也隐含碳排放。电网电的隐含碳强度通常按区域电网平均排放因子折算,这部分排放会计入系统的总碳排放。所以调度模型里,购电不只是成本项,也会带来配额风险;当碳价高的时候,调度器往往会宁可多一点本地燃气出力,也不愿意在峰值时段高价购电再背上隐含碳。这一点直接改变了传统经济调度“只盯着电价曲线”的习惯,也让碳价成了和电价并列的核心决策输入。
1.2 为什么碳价一提高,光热电站的优势就被放大了
光热电站和光伏电站最大的区别不在发电原理,而在“能不能平移出力”。光伏的出力跟着太阳辐照走,中午高、傍晚断崖式下跌;而光热电站有集热场、储热罐、汽轮发电机组三大部分,太阳能先变成热能存进熔盐罐,再按调度指令把热能放出来发电,天然具备数小时级别的储热能力。
在不考虑碳成本时,光热电站往往被当成一个“贵一点的可再生机组”,因为它的单位装机初始投资比光伏高不少,调度时如果只看电价,优先用风电光伏就够了。但随着碳价升高,燃气轮机和燃气锅炉每发一度电对应的碳成本越来越高,光热电站的储热特性就显出了第二个价值:它可以用白天富余的太阳能加热熔盐,在晚高峰替代燃气出力,相当于用一个零碳的“调峰电源”替换掉高排放的“边际机组”。碳价越高,这种替代带来的边际收益越大。我调试模型时明显看到,碳价从30元/吨升到80元/吨,光热电站最优夜间出力会往上抬一大截,燃气轮机则退到低负荷区间。储能时长这个参数,在传统电价模型里只是个辅助指标,一旦碳成本掺进来,它就成了衡量“零碳调峰能力”的核心资产。
1.3 “捕碳”不只是一台设备,它可能改变整个系统的调峰策略
再聊碳捕集。很多人把碳捕集想象成“脱硫塔”,烟气进去、干净烟气出来,捕集率基本固定。但实际工程上,燃烧后化学吸收法碳捕集系统是一个可以灵活调节的过程装置:调节进入吸收塔的烟气量和贫液循环量,可以改变捕集率;调节再生塔再沸器的热负荷,可以改变溶剂再生程度。也就是说,捕集率不是常数,而是一个可以由运行策略决定的连续决策变量。
这一点对调度模型非常重要。碳捕集系统如果要提高捕集率,就必须消耗更多的热蒸汽和电能,而这些能耗恰好来自同一个燃气轮机或者蒸汽系统。于是出现一个有趣的耦合:燃气轮机多发一度电,一方面增加碳排放、需要更多捕集;另一方面多出的高温烟气恰好可以通过余热回收供再生塔使用。到底是让机组多发然后多捕,还是让机组少发、改用光热储热顶上,这不是设备层面能直接看出来的,必须靠优化模型算。
这也是我把碳捕集单独建模,而不是用固定捕集效率的原因。固定效率的模型会让调度器忽略“捕集能耗带来的净负荷抬升”,结果做出来的方案看似减排很漂亮,实际执行时要么蒸汽不够用,要么净出力达不到要求。碳捕集系统一旦作为可调设备放进模型,整个系统的调峰策略就被重塑了。
2. 从设备到闭环:光热电站、电转气、碳捕集如何拧成一股绳
2.1 微网拓扑:电、热、气、碳四张网怎么连到同一套母线上
先把模型里的微网想象成一个能量枢纽,所有设备都挂在不同种类的母线上。电母线连接风电、光伏、光热发电岛、燃气轮机、P2G电解槽、电储能、电制冷机和各类电负荷;热母线连接光热储热罐、燃气轮机余热、燃气锅炉、吸收式制冷机、碳捕集再生塔的热负荷以及用户热负荷;气母线连接外部天然气购入、燃气轮机与燃气锅炉的耗气以及P2G甲烷化产出的合成天然气。碳流比较特殊,它不单独成网,而是从燃气轮机和锅炉的烟气侧接到碳捕集吸收塔,再以CO2的形式供给P2G的甲烷化反应器。
这种结构的好处是设备的每个输入输出都能对应到具体的能量载体约束,也方便在电、热、气之间做耦合。比如P2G系统既挂在电母线上消耗电能,也挂在气母线上产气,还消耗来自碳捕集的CO2,这样一个设备就把电力系统、燃气系统和碳流系统三类约束串在了一起。光热电站则同时挂在电母线和热母线上,白天集热场把太阳辐照变成熔盐热能,一部分直接进汽轮机发电,一部分存进热罐;晚高峰热罐放热,汽轮机继续带着负荷跑。整个微网的灵活度,本质上取决于这些跨母线设备能在多大程度上把不同品位的能量相互转化。
2.2 光热电站建模的三个模块:集热场、储热罐、汽轮机组
光热电站的内部模型大致分三块,写进调度模型时可以逐模块处理。
第一块是集热场。忽略管路动态后,集热场收集到的热功率可以写成:
P_sf(t) = η_sf × A_sf × DNI(t)其中η_sf是光学效率和集热效率的乘积,A_sf是聚光面积,DNI是直接法向辐照。模型里需要限制集热功率不能超过吸热器的额定上限,同时高DNI时段允许快速调低集热量,防止熔盐过热。
第二块是储热系统。工程上最常见的是双罐熔盐储热,高温盐罐和低温盐罐之间通过换热器与导热油回路连接。调度模型里用能量守恒方程来约束:
SOC_tes(t+1) = SOC_tes(t) + [Q_ch_tes(t) × η_ch - Q_dis_tes(t) / η_dis - Q_loss] × ΔtSOC_tes是热罐储能量标幺值,η_ch和η_dis分别是充放热效率,Q_loss是单位时段的散热损耗。这三个系数对结果的影响比很多人想的大。如果晚上想靠储热连续发电到22点,SOC初始值和热损系数必须跟实测匹配,否则夜间出力会虚高,调度方案执行时会崩。
第三块是汽轮机发电岛。光热汽轮机可以选抽汽式或纯凝式,抽汽可以对外供热。简化建模时,用电功率和热功率的可行域近似为一个背压式或抽凝式的多边形区域,调度模型里用一组线性不等式描述。原理上就是限制低负荷率不能太低,同时抽汽和发电之间存在热功转换关系。这一块的系数需要根据汽轮机热平衡图去取点拟合,不能随手写一个固定热电比。
2.3 电转气的两步反应:电解制氢和二氧化碳甲烷化
电转气系统一般分两步。第一步是电解水制氢,碱性电解槽和PEM电解槽的效率差别很大,工程上常见的交流到氢气的综合效率在55%到70%之间。第二步是把氢气和二氧化碳通过甲烷化反应合成天然气:
4H2 + CO2 → CH4 + 2H2O这个反应正好把碳捕集系统捕到的CO2变成了可入网存储的CH4,实现从“捕碳”到“用碳”的闭环。在微网模型里,P2G可以有两种投运模式:要么直接产出氢气供氢负荷或燃料电池;要么深度甲烷化产出天然气进入气网。考虑并网运行时,我倾向于建模成甲烷化模式,因为合成天然气可以直接替代外购天然气,调度边界更清晰。
P2G给调度带来的核心能力是“柔性负荷”。风电和光伏大发时段电价往往很低,甚至出现零电价和负电价,此时让P2G消耗这部分本来要弃掉的电力来制氢、制甲烷,相当于给新能源装了一个可以按指令启停的“大功率消纳器”。但代价是P2G有最小技术出力,电解槽不能无限低负载运行。如果不加这个约束,优化器会在所有低谷时段都让P2G满负荷,结果虽然好看,实际运行根本复现不了。这一点我在后面“实操复盘”里还会专门提。
2.4 碳捕集的成本账:捕一吨碳到底要付出多少电和热
碳捕集系统在调度模型里最不好处理的是成本和能耗的折算。燃烧后化学吸收法的实际运行消耗主要包括三部分:吸收塔和贫液泵的电耗、再生塔再沸器的蒸汽热耗、溶剂损耗和冷却水耗。电耗相对较小,主要是泵和风机;热耗才是大头。通常捕集一吨CO2需要约2.5到4.0 GJ的热能,折合接近0.7到1.1 MWh,同时还要消耗大约0.1到0.3 MWh的电能。
这些能耗看起来不大,但在微网尺度上很可观。如果燃气轮机满发一小时产生10吨CO2,把捕集率从60%提到90%,多捕集的3吨CO2对应的再生能耗接近2到3 MWh热量,这些热量要从汽轮机抽汽里拿,机组净发电能力会明显下降。调度模型里我把捕集系统的能耗与捕集率的关系做了分段线性化,捕集率越高,单位能耗的边际增量越大,非常符合溶剂吸收接近饱和时的实际情况。
这样建模之后,系统里就出现了一对有趣的博弈:调高捕集率会降低碳交易支出,但会增加能耗成本、降低设备净出力。最优捕集率不是越高越好,而是碳价与能耗成本之间的经济平衡点,这正好是经济调度模型要回答的问题。
3. 把“省钱”定量化:经济调度模型的目标函数与关键约束
3.1 目标函数里每一块钱的来源
整个调度模型的目标可以统一写成最小化周期内总运行成本,包括购电成本、外购天然气成本、设备运行维护成本、机组启停成本、碳交易成本以及弃风弃光惩罚。用文本公式表示大概是:
min F = Σ_t [ C_buy(t) + C_gas(t) + Σ_i C_om_i(P_i(t)) + Σ_j C_su_j(t) + C_co2(t) ] + λ × Σ_t P_curtail(t)C_buy是向外部电网购电费用,按分时电价计算;C_gas是天然气的购入费用;C_om用一次项加常数项逼近设备磨损成本;C_su是启停成本,只在跨时段状态变化时产生;C_co2是碳交易成本;P_curtail是弃风弃光量,乘一个较大的惩罚系数λ,避免调度器为了省钱而故意弃掉本可以消纳的新能源。目标函数每一项都是“钱”,碳价、电价、气价的相对高低,决定了所有设备的出力排序。
很多论文喜欢把碳交易成本放在约束里,例如加一个“碳排放总量不能超过X吨”的硬约束。实际碳市场更接近可交易配额机制:不是一刀切禁止超额排放,而是超额就必须按碳价购买配额。所以把碳成本放进目标函数比放进约束更贴近真实的调度决策逻辑。如果配额设置得比较宽松,系统会自然选择低捕集率;如果配额收紧,捕集率上升,燃气机组出力下降,这些都是优化出来的,不是拍脑袋设定的。
3.2 功率平衡不是一道等式那么简单
多能微网的电功率平衡约束要写全所有挂载设备,把P2G、碳捕集系统、电解槽都当成可调负荷放进等号的一侧:
P_pv + P_wt + P_csp + P_gt + P_dis_bat = P_load_e + P_p2g + P_ccs_elec + P_ch_bat + P_elec_cool其中P_p2g是电转气耗电,P_ccs_elec是碳捕集系统电耗,P_dis_bat和P_ch_bat是电储能放电和充电功率。写方程的时候要注意,P2G和CCS的“负荷”不是固定值,而是决策变量,它们和风机、光热机组的出力在同一时刻互相竞争,这是多能耦合调度的关键。
热功率平衡更为复杂,因为热母线同时连着多个“源”和“荷”。源侧包括光热储热放热、燃气轮机余热回收、燃气锅炉产热;荷侧包括用户热负荷、吸收式制冷机的驱动热、碳捕集再生塔的热耗。再生塔热耗会随捕集率变化,相当于一个可调热负荷;如果热负荷高峰与捕集需求高峰叠加,热母线可能变成全系统最紧的约束。实际中不少方案执行不下去,就是热平衡算得不细。
气网平衡也不仅是“买多少气就烧多少气”。引入P2G后,气母线一侧是外购天然气注入量加甲烷化产气量,另一侧是燃气轮机和燃气锅炉的耗气量。为了让P2G产气有实际意义,建模时通常增加一个约束:P2G产气只能用于本地燃气设备或者气负荷,不能反向注入区域天然气管网,除非单独建模管网压力和流量。
3.3 储能与跨时段约束:储热、储氢、蓄电的动态方程
经济调度的“经济”很大一部分来自跨时段搬移能量。储热、储氢、电储能本质上都是同一个动态方程,只是效率和自损耗系数不同:
S(t+1) = S(t) + [P_ch(t) × η_ch - P_dis(t) / η_dis - S(t) × δ] × ΔtS是储能量,P_ch和P_dis是充放功率,δ是自损耗率,Δt是调度步长。电储能的自损耗很小,但光热储热罐的散热损耗不可忽略,仿真时长超过12小时时,热罐静置散热可能占储能量的2%到4%,这会直接影响夜间能否按时放完热量。
储氢罐比电储能更麻烦。电解槽制氢后,氢气进入储氢罐,下一时刻可以供氢负荷或进入甲烷化反应。储氢罐的压力约束不能只看SOC,还要考虑最高运行压力对应的注入限制。工程处理上,我会把压力约束折算成最大储氢量和最大充放速率,这样避免在调度模型里引入非线性气体状态方程,又能保证模型不离谱。储热罐和储氢罐这类跨时段设备,最怕的就是“日末SOC拍脑袋定”,一般取24小时周期末恢复到周期初的等值,才能让调度结果具备可重复性。
3.4 碳排放与碳交易约束:净排放怎么算才对
系统总碳排放由外购电力的隐含排放、燃气轮机排放、燃气锅炉排放三部分构成。净排放等于总排放减去碳捕集系统实际捕集并固定/利用的CO2量:
E_net = E_grid + E_gt + E_boiler - E_capture这里E_capture是把捕集并参与甲烷化反应的CO2也算进去的,因为甲烷化后CO2固定到了合成天然气里,这部分碳不再直接泄漏回大气。碳交易支出则按净排放与免费配额的差额乘以碳价计算,差额为正要买碳,为负可以卖配额。
还要提一个建模陷阱:捕集系统消耗的再生蒸汽如果来自余热锅炉,这部分热实际上也是燃气机组产生的,产生了间接排放。严谨的做法是把再生蒸汽对应的燃气消耗和排放也折算进系统总排放,而不是只算直接烟气排放。我在早期版本里偷懒不算这部分,结果碳价很高时调度器选择极限捕集,算出来减排很“漂亮”,但把再生能耗算进去后,系统净排放并没有想象中那么低,碳捕集的经济性也打了折扣。这也是为什么数据要来回验证,不能只信第一版结果。
4. 非线性项的处理:分段线性化和混合整数编程的基本功
4.1 非线性来源盘点:效率曲线、反应关系和热功转换
把目标函数和约束写出来后,几乎每一个设备都自带非线性。风机的出力曲线、燃气轮机的热耗率曲线、P2G电解槽的电流-电压特性、碳捕集系统的能耗-捕集率关系,这些在物理上都不是直线。如果在模型里全部用二次曲线表示,就变成了一个含有连续变量和整数变量的非凸问题,商业求解器要么算得很慢,要么给不出全局最优解。
工程上最常用的办法是分段线性近似。比如燃气轮机热耗率随出力变化,我在标幺出力上取0.25、0.5、0.75、1.0四个分段点,每段之间用直线近似;P2G的耗电-产气特性取两三段就够;碳捕集率与再生热耗的关系取三段,每一段代表不同运行区间。折点取得太多模型精度高但求解慢,折点太少结果偏差大。我用的经验值是3到4个分段点,计算误差可以控制在3%以内,求解时间几乎不增加。线性化不是越低端越好,它是把物理曲线压缩成易于求解又不失真的现实做法。
4.2 启停逻辑用大M法,但别乱用大M
燃气轮机和P2G电解槽都需要考虑启停。引入二进制变量u,设备功率约束变成:
u_i(t) × P_min_i ≤ P_i(t) ≤ u_i(t) × P_max_i同时用另一个启动变量v_i(t)表示本时段是否开机,把启停成本C_su写进目标函数。大M法在这里的作用是把“设备在线”和“设备出力”关联起来,M取设备最大容量乘以一个1.1的系数就够了,千万不要取一个很大的数,比如1e6,否则数值稳定性会很差。我调试时遇到过M过大导致的最优解振荡和约束松弛假象,把M缩小到设备容量上限的1.2倍,问题立刻恢复正常。这个细节听起来小,但在大规模模型里会直接决定求解器能不能收敛到稳定的整数解。
对于P2G,还要额外加最小连续运行时间或最小启停间隔约束,因为电解槽频繁启停会影响膜寿命和气体纯度。这类约束本质上增加了求解难度,但对于结果的工程可实施性至关重要,不能省。
4.3 为什么模型会“无解”:最容易被忽略的可行域问题
分段线性化和整数约束加完后,最常出现的报错是“模型不可行”。多数情况下不是因为问题本身无解,而是约束之间互相矛盾。举个典型的例子:碳捕集再生塔热耗设为固定值,同时又要求捕集率达到90%,而热母线上所有热源加起来都不够热耗,这时模型立即无解。
解决办法分两步:第一,把捕集率与再生热耗的耦合关系改成“可以再优化”的连续变量,而不是固定比例;第二,在热平衡约束中加入一个松弛变量,并在目标函数里给一个足够大的惩罚系数。这样模型宁可支付惩罚也保证有可行解,跑完之后看松弛变量是否归零,再反过来寻找是哪条约束太紧。这个“先松弛找原因、再收紧确认”的诊断思路,比反复删约束高效得多。模型无解很多时候不是“问题太复杂”,而是建模时某个物理限制写死了。
5. 案例设计:三组对比实验怎么看协同效果
5.1 典型日数据怎么准备
选一个冬季典型日作为案例:风电出力夜间高、白天低;光伏中午高、傍晚归零;DNI曲线是典型的上午爬坡、中午平顶、下午下降;电负荷有两个高峰,分别在11点和19点;热负荷集中在早上和夜间。设备参数设定为:光热电站装机50 MW,储热时长6小时;燃气轮机装机40 MW;电解槽制氢功率30 MW;碳捕集装置设计处理烟气量对应燃气轮机满发时的烟气流量的90%;免费配额取系统基准排放的70%。
仿真周期取24小时,时间步长1小时,用典型历史数据直接代入。这种粒度已经足够看出调度策略的协同特性,再细化到15分钟会成倍放大求解规模,对前期验证不太划算。参数要选得能体现矛盾:如果负荷太轻,所有设备都低负荷运行,看不出协同价值;如果负荷太重,设备全顶上,也看不出调度空间。典型的“甜点区间”是系统在某些时段需要依赖储热和P2G来转移能量。
5.2 三组对比方案怎么设
方案A是“基准无碳”:目标函数里没有碳交易项,也不投运CCS和P2G,这个方案模拟传统经济调度。方案B是“有碳市场但无协同”:加入碳交易成本,但仍不投运CCS和P2G,光热电站只按自身储热能力独立调度。方案C是“完整协同”:碳交易、CCS、P2G、光热储热全部投入,作为最终要推的策略。
三组对比围绕单一变量变化,能清楚拆出碳交易带来的成本压力,以及P2G和CCS协同带来的额外收益。如果一次把设备、碳价、配额全换掉,结果就说不清楚是谁的贡献了。对照组的设计,本质上是把复杂系统的收益归因拆干净。
5.3 结果解读的维度:成本、排放量、弃电量和购气量
这里给一组我调试时得到的示意性数据来展示解读思路(数值不是某个具体场景的实测值,只用于说明趋势)。碳价为35元/吨时,方案A总运行成本约41.2万元,系统净排放约186吨,弃风弃光电量约12.5 MWh;方案B成本约43.5万元,净排放约168吨,弃电量约11.8 MWh;方案C成本约42.1万元,净排放约139吨,弃电量约7.6 MWh。单看数据,方案B的成本反而比方案A高,因为碳成本增加了支出,而系统没有减排手段只能硬扛;方案C虽然比方案B排放低很多,成本也明显下降,说明P2G消纳弃电和CCS降低配额购买两项收益叠加,能补回协同运行的设备成本。
更值得关注的是碳价敏感性:碳价从35元/吨升到100元/吨时,方案C的最优捕集率从55%上升到82%,P2G在低谷时段的总能耗增加约1.9倍,光热储热在晚高峰放热功率提高约20%,燃气轮机平均出力从28 MW降到19 MW。这说明碳价传导到调度策略的路径非常清晰:碳价升高,系统更愿意用零碳的储热电源顶峰,更愿意把低谷电变成可储存的天然气,更愿意花能耗去捕集CO2。如果结果里这些联动反应一项都没有,那就要回头检查碳捕捉、P2G的参数是不是被写死了。
6. 实操复盘:我在建这套模型时踩过的几个坑
6.1 储热罐模型太粗糙,夜间出力全是空中楼阁
第一次搭模型时,我图省事把光热储热罐当成普通电储能,SOC充满以后想放多少就放多少;结果夜间光热出力曲线非常漂亮,几乎把晚高峰全包了。后来把熔盐罐的最大放热功率、换热器端差、散热系数、发电岛最低负荷率加进去,才发现夜间实际可调度出力比简化模型低15%左右。调度方案好看和调度方案可执行是两回事,光热储热罐的放热速率受汽轮机最低稳燃负荷限制,不能像电池一样瞬间切换。
我的建议是把储热罐SOC和汽轮机最小技术出力联合建模:放热功率、蒸汽参数、发电功率三者之间要有上下限约束。虽然多花一点时间,但方案的现场可执行性会大幅提升。如果做敏感性分析,优先研究储热时长和放热功率上限,这两个参数对结果影响最直接。
6.2 P2G参数到处抄,结果系统“无所不能”
第一次跑出P2G把全部弃风消纳掉的漂亮结果时,我冷静下来查了一下电解槽的参数,发现自己用了理想条件下的满负荷效率,而实际部分负载时电解效率会下降,并且设备有最低运行负载限制。如果建模时只给P2G一个恒定的效率,优化器会在每个低价时段疯狂制氢,导致P2G几乎满负荷运行24小时,系统总成本却比实际偏低了近8%。
后来给P2G加了两段式效率曲线和最低负载约束,产气量立刻降到合理范围。这里特别提醒:电转气设备参数要按电解槽制造商的实测能耗曲线或者权威实验数据来设,不要用科普文章里的理论效率。P2G的“灵活”是有边界的,边界一错,优化器会自动找到模型里的漏洞去钻。
6.3 碳捕集率固定成常数,协同优化就失去意义
如果碳捕集率被写死,比如固定为90%,那么调度模型只剩下“捕集还是不投运”两个选择,无法捕捉捕集率与碳价、热价互动带来的连续调节收益。真正有价值的结果都是捕集率作为决策变量参与优化后出现的:低谷时段系统会降低捕集率,把更多再生蒸汽用来供热;高峰时段或者碳价高时,再提升捕集率换取碳配额收益。
我在模型里对捕集率做了分段线性化,一段是30%到70%,一段是70%到95%,两段的单位再生热耗不同。这样优化出来的捕集率不再是固定的,会随着碳价和热负荷变化而浮动,最终结果也更可信。建议在结果表里单独列出各时段捕集率,便于观察协同机制是否真正激活。
6.4 求解时间是现实焦虑,分段数和收敛容忍度要对齐
这套模型完整建好后,24小时调度问题含数百个连续变量和几十个整数变量,分段线性化段数各取4段,在MILP商用求解器上、默认收敛容忍度下求解时间大约几十秒到几分钟。但一旦把多个典型日联合优化,或者把时间粒度改成15分钟,规模迅速膨胀,求解时间可能变成几十分钟甚至小时级。这时候不是模型错了,而是规模控制出了问题。
我的经验是做两阶段:先用1小时粒度跑通逻辑,统计哪些时段设备的启停状态基本稳定;再把这些已知状态固定下来,缩短到15分钟粒度做精细功率分配。这样既保留跨时段灵活性,又把求解规模压回可控范围。分段线性化折点数嘛,优先从精度敏感的设备开始加,别一上来就所有设备都给5段以上。求解时间是所有优化模型最后都要面对的坎,早做规划比临时砍约束要稳妥。
个人体会:这套涉及碳交易、光热电站、电转气、碳捕集的多能微网经济调度模型,最难的不是优化算法本身,而是参数背后的物理世界。碳捕集的再生热耗、储热罐的散热损失、电解槽的部分负载性能,每一个数字都会直接影响调度方案的可信度。建模一开始就把这些运行细节写进去,后面调参和结果解读会省很多力气。如果只做功能验证,可以先跑简化版本;要用于实际决策或者论文核心数据,就老老实实把设备约束补齐,哪怕多花一周调试也值得。
补充一句:把碳交易成本、能流平衡约束还有各类设备模型组件化之后,这套优化框架完全可以推广到带氢储能、电锅炉、甚至含生物质气化的微网场景。先把24小时单场景跑通,再逐步加多场景、多典型日,你会发现自己搭建的不只是一个调度程序,而是一套可以反复试验各种设备组合的仿真工具箱。