0

我写了一个 Gorubi 优化代码,但是因为一些问题,我需要转换成 Scipy 代码。转换它仍然有困难。以下是与 Gorubi 相关的部分代码:

m = Model()
#x is charging, discharging variable
x = m.addVars(n,lb=-1.5,ub=1.5,vtype=GRB.INTEGER, name="x")
#Y is SOC variable
Y = m.addVars(n+1,lb=0,ub=100,vtype=GRB.CONTINUOUS, name="Y")
# Add constraint: SOC[start]=50, initial SOC
m.addConstr(Y[0]==initialsoc,name='c1')
#Final targeted SOC
m.addConstr(Y[n]>=65,name='c2')

m.addConstrs((Y[i+1]-Y[i] == 3.75*x[i] for i in range(n)), name='c0')
#Objective function. 6 comes from capacity of inverter.
obj1=sum(((load[i+1]-(6*x[i]))*(load[i+1]-(6*x[i])) for i in range (n)))

m.setObjective(obj1,GRB.MINIMIZE)
m.optimize()

我的 x 约束只能有 -1 或 0 或 1 个值。另一个约束是 Y,其中每一步 y(i+1)-y(i) 等于 3.75*X(i)。
是否可以将此代码转换为 Scipy?或者你推荐任何其他图书馆?

4

0 回答 0