【发布时间】:2021-09-17 14:43:29
【问题描述】:
我想将下面的两个矩阵相乘并设置为我的模型的目标:
m = gp.Model("matrix")
x = m.addMVar((9, 9), vtype=GRB.BINARY, name="x")
c = np.random.rand(9,9)
m.setObjective(x @ c, GRB.MINIMIZE)
这是我想要达到的目标
这给了我以下错误:
错误代码 -1:变量不是一维 MVar 对象
我该如何解决?我想 Gurobi 不接受 2D Mvar 对象乘法
【问题讨论】:
-
您确定要将表达式
x @ matriz_de_coeficients设置为目标而不是约束吗?即使 Gurobi 会接受它,将结果矩阵设置为目标也没有意义,因为评估的目标总是必须返回一个标量。 -
既然你提到它,是的,这有点奇怪。我不太确定,但更新了我的问题。你介意看看吗?
标签: python matrix multidimensional-array linear-programming gurobi