当前位置: 首页 > web >正文

箱式不确定集

箱式不确定集(Box Uncertainty Set)”可以被认为是一种 相对简单但实用的不确定集建模方式


✅ 一、什么是“简单的不确定集”?

在鲁棒优化领域,“简单不确定集”通常指的是:

特点描述
形式直观数学表达简洁,易于理解和实现
易于求解可以通过线性化等手段转化为标准 MILP 模型
参数可调具有少量关键参数,便于调整保守程度
计算效率高不会显著增加模型复杂度或计算时间

而“箱式不确定集”正好具备这些特点,因此可以被归类为一种简单的不确定集


🧩 二、论文中的箱式不确定集具体形式

根据你提供的内容,论文中使用了如下形式的不确定性能耗建模:

✅ 能耗不确定性范围定义:

γ ~ i ∈ [ γ i , γ i + γ ^ i ] , ∀ i ∈ I \tilde{\gamma}_i \in [\gamma_i, \gamma_i + \hat{\gamma}_i], \quad \forall i \in I γ~i[γi,γi+γ^i],iI

即:每条路线 $ i $ 的实际能耗可以在基准值 $ \gamma_i $ 到最大偏差 $ \hat{\gamma}_i $ 之间波动。

进一步引入扰动变量 $ z_{i,t} \in [0,1] $,表示当前时刻 t 对应路线 i 的能耗偏差比例:

γ ~ i = γ i + γ ^ i ⋅ z i , t \tilde{\gamma}_i = \gamma_i + \hat{\gamma}_i \cdot z_{i,t} γ~i=γi+γ^izi,t

并加入一个不确定性预算 $ \Gamma $ 来控制最多有多少个路线可以同时出现最大偏差:

∑ i = 1 I z i , t ≤ Γ , 0 ≤ z i , t ≤ 1 \sum_{i=1}^I z_{i,t} \leq \Gamma,\quad 0 \leq z_{i,t} \leq 1 i=1Izi,tΓ,0zi,t1


三、为什么说它“简单”?

原因说明
1. 结构简单所有变量独立变化,不考虑变量之间的相关性
2. 线性约束引入的是线性不等式和边界约束,易于嵌入 MILP 模型
3. 参数少只需要设定两个参数:
- 每个路线的最大偏差 γ ^ i \hat{\gamma}_i γ^i
- 整体预算 Γ \Gamma Γ
4. 易于扩展可以方便地与现有调度模型结合,仅需修改部分约束即可
5. 求解友好不会导致模型变成非线性或非凸问题,仍可用 Gurobi、CPLEX 等求解器高效处理

四、它的局限性(也体现了“简单”的代价)

尽管箱式不确定集结构简单、易于实现,但它也有一些明显的局限性,这也是它被称为“简单”的原因:

局限性描述
1. 过于保守当多个变量同时达到最大偏差时,可能导致不必要的高成本策略
2. 忽略变量相关性实际中某些路线的能耗可能高度相关(如相同时间段、相同线路),但该模型假设它们相互独立
3. 偏差分布均匀性假设所有路线都被赋予相同的不确定性建模方式,未考虑不同路线的实际波动差异
4. 不考虑历史数据分布没有利用历史能耗数据进行更精确的概率建模

五、与其他不确定集对比

不确定集类型是否简单是否考虑相关性是否可求解是否适合实时应用
箱式(Box)✅ 是❌ 否✅ 是✅ 是
椭球(Ellipsoidal)❌ 否✅ 是❌ 否(需求解 SOCP)❌ 否
多面体+预算(Budgeted RO)✅ 是✅ 部分✅ 是✅ 是
数据驱动(Data-driven)❌ 否✅ 是❌ 否(依赖预测模型)❌ 否
分布式鲁棒(DRO)❌ 否✅ 是❌ 否(需求解复杂优化问题)❌ 否

从上表可以看出,箱式不确定集在所有不确定集中是最简单的一种建模方式,适用于对建模复杂度要求不高、但需要快速部署的工程场景。


六、论文中的验证结果(是否有效?)

虽然它是“简单的不确定集”,但在论文中已经通过实验验证了其有效性:

  • 在 $ \Gamma = 10, \xi = 0.5 $ 的设置下,总运营成本上升了 28.77%
  • 但相比 BAU(Business As Usual)场景,仍然节省了 11.76% 的成本;
  • 更重要的是,系统可靠性大幅提升,避免了低电量导致的任务中断风险。

这说明:

即使是一个简单的不确定集,在面对电动公交充电调度这类现实问题时,也能发挥重要作用。

在这里插入图片描述

http://www.xdnf.cn/news/10497.html

相关文章:

  • Baklib加速企业AI数据治理实践
  • AtCoder Beginner Contest 399题目翻译
  • 前端面经 响应式布局
  • 2023ICPC杭州题解
  • 文档核心结构优化(程序C++...)
  • TensorFlow深度学习实战(19)——受限玻尔兹曼机
  • seq2seq 视频截图
  • 深度学习篇---人脸识别中的face-recognition库和深度学习
  • 【Canvas与色彩】八彩大风车
  • springboot-响应接收与ioc容器控制反转、Di依赖注入
  • nt!MiDispatchFault函数里面的nt!IoPageRead函数分析和nt!MiWaitForInPageComplete函数分析
  • URLDNS利用链剖析
  • latex figure Missing number, treated as zero. <to be read again>
  • mybatis01
  • 3、禁止树莓派屏幕休眠,设置树莓派屏幕常亮
  • VisionPro —— 不规则胶路检测
  • Codeforces Round 1028 (Div. 2) C. Gellyfish and Flaming Peony
  • java synchronized关键字用法
  • STM32Cubemx-H7-17-麦克纳姆轮驱动
  • 关于神经网络中的梯度和神经网络的反向传播以及梯度与损失的关系
  • 用Python打开不同联类型的文件
  • 【xmb】】内部文档148344599
  • 大数据学习(126)-窗口函数范围
  • 通过WiFi无线连接小米手机摄像头到电脑的方法
  • AI炼丹日志-27 - Anubis 通过 PoW工作量证明的反爬虫组件 上手指南 原理解析
  • Java数值处理常见错误解析
  • java多线程与JUC
  • nt!MiDispatchFault函数分析之nt!MiCompleteProtoPteFault函数的作用
  • sqli-labs靶场32-37关(宽字节注入)
  • 历年苏州大学计算机保研上机真题