You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何重塑CVXPY变量用于约束计算?线性规划问题咨询

问题梳理与遗漏要点总结

一、流量转换与时段映射的核心问题

  • 时段对应关系缺失:你只提到running_times的每个索引对应24小时内的时段,但未明确这7个时段和48个30分钟区间的映射规则(比如哪几个30分钟区间属于running_times[0]对应的时段)。没有这个明确的映射,将running_times转成(48,)向量的操作完全没有业务逻辑支撑。
  • 流量计算精度问题:按每秒流速9.6计算,单个30分钟满流量应为 9.6 * 60 * 30 = 17280,但你给出的示例值是17200。如果这不是笔误,必须明确是否存在未说明的损耗系数、流量修正项,这在规划模型里是不可缺失的参数。

二、线性规划模型的约束遗漏

  • 最大运行时间的约束未明确:给出的[480 360 120 180 90 120 90]最大运行时间,需要转化为LP模型的约束方程,比如running_times[i] ≤ max_running_times[i](每个时段运行时长不超过对应最大值),或者明确是否是全局累计上限。没有约束的最大值参数毫无意义。
  • 运行连续性约束未考虑:如果设备运行要求连续(不能在单个30分钟区间内仅运行部分时间),需添加约束:每个30分钟区间的流量要么为满值、要么为0;若允许部分运行,必须明确running_times的分钟数如何拆分到对应30分钟区间(比如231分钟对应7个完整30分钟+1个21分钟区间)。
  • 24小时总时长约束:48个30分钟区间总时长为1440分钟,需添加全局约束确保running_times的总和不超过1440,同时符合业务层面的运行时长限制,这是LP模型的基础约束之一。

三、向量生成的合理性问题

  • 重复规则无依据:你提到要重复示例数组得到(48,)形状,但未说明重复的逻辑(示例数组长度16,48是其3倍,对应什么时间划分?)。重复规则必须和running_times的时段划分匹配,否则会出现时间错位,导致后续对比完全失效。
  • 零值时段的处理规则缺失:running_times中的0值对应哪些30分钟区间?是直接设为0,还是存在设备待机流量?这会直接影响目标函数的计算结果。

内容的提问来源于stack exchange,提问作者Aidan Donnelly

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 16:36:11