Pyomo 约束在达到指定值时将新迭代附加到变量
Pyomo constraint that appends new iteration to a variable when reaching specified values
我在 Pyomo 中调整约束时遇到问题。原始约束如下:
m.tou = Var(domain=Reals)
def peak_power_rule(m,i):
return m.pe_c[i] + m.pe_d[i] + load[i] <= m.tou
m.peak_power = Constraint(time, rule=peak_power_rule)
“负载”是指给定建筑物的每小时用电量数据,而变量 m.pe_c 是电池系统的充电量,而 m.pe_d 是电池的放电量。 m.tou是消费高峰期。 [i] 的范围是 8760(每小时迭代一年的值)。
该约束目前工作正常,但我想对其进行调整,使其成为新的 m.tou[x]
每次 [i] 达到 730(一个月的小时数)。我每个月都想要一个新的 m.tou[x]。当我在 pyomo 中做切片时出现错误,我对 pyomo 的有限知识在此时限制了我。
更新:我能够通过增加我有限的知识来解决这个问题。我为每个月创建了一个新变量。
我为每个月创建了一个新变量。以下是一月 (M.jan) 的示例。
Jan_time =time[0:745]
def peak_power_rule_jan(m,i):
return m.pe_c[i] + m.pe_d[i] + load[i] <= m.jan
m.peak_power_jan = Constraint(Jan_time, rule=peak_power_rule_jan)
我在 Pyomo 中调整约束时遇到问题。原始约束如下:
m.tou = Var(domain=Reals)
def peak_power_rule(m,i):
return m.pe_c[i] + m.pe_d[i] + load[i] <= m.tou
m.peak_power = Constraint(time, rule=peak_power_rule)
“负载”是指给定建筑物的每小时用电量数据,而变量 m.pe_c 是电池系统的充电量,而 m.pe_d 是电池的放电量。 m.tou是消费高峰期。 [i] 的范围是 8760(每小时迭代一年的值)。
该约束目前工作正常,但我想对其进行调整,使其成为新的 m.tou[x]
每次 [i] 达到 730(一个月的小时数)。我每个月都想要一个新的 m.tou[x]。当我在 pyomo 中做切片时出现错误,我对 pyomo 的有限知识在此时限制了我。
更新:我能够通过增加我有限的知识来解决这个问题。我为每个月创建了一个新变量。
我为每个月创建了一个新变量。以下是一月 (M.jan) 的示例。
Jan_time =time[0:745]
def peak_power_rule_jan(m,i):
return m.pe_c[i] + m.pe_d[i] + load[i] <= m.jan
m.peak_power_jan = Constraint(Jan_time, rule=peak_power_rule_jan)