MODEL.setObjective(gurobipy.quicksum((x[i,j,c] * self.C1 * (gurobipy.max(0,t[j,c] - self.DueDate[j])) AttributeError: module 'gurobipy' has no attribute 'max'
时间: 2023-06-20 22:05:54 浏览: 158
这 error 的原因可能是因为 gurobipy 模块中没有名为 max 的函数。可能是您想要使用 Python 内置的 max 函数,而不是 gurobipy 模块中的函数。您可以尝试将 "gurobipy.max" 更改为 "max",以调用 Python 内置的 max 函数。如果您需要使用 gurobipy 模块中的 max 函数,请查看 gurobipy 文档以了解如何正确使用它。
相关问题
MODEL.setObjective(gurobipy.quicksum((x[i,j,c] * self.C1 * gurobipy.quicksum(gurobipy.max_(0,t[j,c] - self.DueDate[j])) File src\gurobipy\gurobi.pxi:3631 in gurobipy.quicksum TypeError: 'GenExprMax' object is not iterable
这错误提示是因为在你的代码中使用了 `gurobipy.max_()` 这个函数,它返回的是一个 `GenExprMax` 对象,而不是一个可迭代的对象。因此在调用 `gurobipy.quicksum()` 函数时就会抛出这个错误。
你需要将 `gurobipy.max_()` 函数替换为一个可以迭代的函数,例如 `gurobipy.max_(0,t[j,c] - self.DueDate[j])` 可以替换为 `max(0, t[j,c] - self.DueDate[j])`。这样就可以避免这个错误。
MODEL.setObjective(gurobipy.quicksum((x[i,j,c] * self.C1 * (max(0,t[j,c] - self.DueDate[j])) File src\gurobipy\linexpr.pxi:444 in gurobipy.LinExpr.__richcmp__ NotImplementedError
这 error message 是因为 gurobipy.LinExpr 这个 class 中的 __richcmp__ 方法没有被实现。你需要检查一下你的代码逻辑,看看是否有地方没有正确的使用了 gurobipy.LinExpr。同时,你也可以尝试更新你的 gurobipy 库,看看是否可以解决问题。如果还有问题,建议到 Gurobi 官网的论坛上寻求帮助。