示例实验¶
这页收集了一组可以直接在当前仓库里运行的实验配方。
可运行配方
按问题选择示例
每一条都是当前仓库里可以直接运行的真实命令。想看策略裸奔,就先跑基线; 想看安全过滤和可审计链路,就继续看投影 shield 和 Lean 规则表 shield。
配方 1
无 Shield 基线
先看策略在没有运行时纠正时会做什么。
配方 2
投影 Shield
重点观察 unsafe proposal 在什么时刻被改写。
配方 3
Lean 规则表 Shield
看最强的 Lean 到运行时集成路径。
配方 4
光伏外送
切到中午富余更强的曲线,观察行为差异。
配方 5
Stress Test
把约束收紧,看边界 margin 如何缩小。
1. 无 Shield 基线¶
适合先看策略本身在没有在线过滤时会做什么。
python3 -m vpp_rl.train \
--episodes 180 \
--algorithm double_q \
--scenario peak_shaving \
--shield-mode none \
--output artifacts/peak_shaving_double_q_none_v3_trace.json
建议观察:
- 策略本身是否已经学到有效套利
- 低 SoC 状态下是否容易出现脆弱行为
- 在没有安全过滤前到底有多少收益空间
2. 投影 Shield 运行¶
适合想要在线安全过滤,但又不想先导出规则表的情况。
python3 -m vpp_rl.train \
--episodes 180 \
--algorithm double_q \
--scenario peak_shaving \
--shield-mode project \
--output artifacts/peak_shaving_double_q_project_v3_trace.json
建议观察:
- shield 介入频率
- 实际动作和提议动作偏差是否很大
- 相比无 shield 基线,收益有没有改善
3. Lean 规则表 Shield¶
适合看最完整的 Lean 到运行时链路。
python3 -m vpp_rl.rule_table \
--scenario peak_shaving \
--output artifacts/peak_shaving_shield_table.json
python3 -m vpp_rl.train \
--episodes 180 \
--algorithm double_q \
--scenario peak_shaving \
--shield-mode table_project \
--shield-table artifacts/peak_shaving_shield_table.json \
--output artifacts/peak_shaving_double_q_table_project_v3_trace.json
建议观察:
- Lean 导出的规则表是否改变运行时行为
- intervention reasons 是否集中在电池边界或并网边界
- 生成的 trace 是否能稳定通过 Lean verifier
4. 光伏外送示例¶
适合想看中午光伏富余更明显的调度曲线。
python3 -m vpp_rl.train \
--episodes 180 \
--algorithm sarsa \
--scenario solar_export \
--shield-mode project \
--output artifacts/solar_export_sarsa_project_trace.json
建议观察:
- 中午充电和外送的行为模式
- 电池是否会为傍晚高价时段保留能量
- 相比
peak_shaving,奖励形态怎么变化
5. Stress Test 安全实验¶
适合看更紧约束下的边界行为。
python3 -m vpp_rl.train \
--episodes 220 \
--algorithm double_q \
--scenario stress_test \
--shield-mode table_project \
--shield-table artifacts/stress_test_shield_table.json \
--output artifacts/stress_test_double_q_table_project_trace.json
建议观察:
- 介入频率是否明显升高
- grid / SoC margin 是否急剧缩小
- 在更紧的约束下策略是否仍然优于 idle baseline