【发布时间】:2021-09-30 20:09:27
【问题描述】:
我想改变|y-R*p|
abs(y[i]-R*p[i])
我想
sqrt((y[i]-Rp[i])* (y[i]-R*p[i]))
我使用了model.addConstr
for i in P:
model.addConstr(sqrt((y[i]-R*p[i])*(y[i]-R*p[i])) == E[i],name="absconstr" %i)
Type Error:must be real number, not gurobipy.QuadExpr
我使用了 model.addConstrAbs。
for i in P:
model.addGenConstrAbs(E[i],y[i]-R*p[i],"absConstr")
AttributeError: 'gurobipy.LinExpr' object has no attribute '__cindex__'
for i in P:
model.addGenConstrAbs(E,y[i]-R*p[i],"absConstr")
AttributeError: 'dict' object has no attribute '__cindex__'
我无法解决问题。 我该怎么办?
【问题讨论】:
-
你知道,
abs表示绝对值,sqrt表示平方根,对吧? -
@Karina: abs(x) = sqrt(x*x) 实数 x。
-
您能改写一下这个问题吗?我不明白。如果您有一个希望能够调用
abs()的自定义类,请为其定义一个__abs__方法:blog.finxter.com/python-__abs__ -
@Ry 哦,是的,当然,愚蠢的我哈哈。我猜
{ }比数学更能引起我的注意 -
y和Rp有哪些类型?
标签: python gurobi absolute-value