Optimization 用于解决优化问题的Scipy代码(编写了gurobi代码!)

Optimization 用于解决优化问题的Scipy代码(编写了gurobi代码!),optimization,gurobi,scipy-optimize-minimize,Optimization,Gurobi,Scipy Optimize Minimize,我编写了一个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, nam

我编写了一个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?或者您推荐其他库吗?

Scipy不包含MIP解算器。@Erwin Kalvelagen感谢您的回复。你说得对,我也明白了!我认为我的解决方案是MIP。