Я хочу решить задачу максимизации с целью
f (x, y, z) = 0,5 * (x ^ 2 + y ^ 2 + z ^ 2)
с x, y, z в [0, 1].
Однако при подаче этой проблемы в CPLEX с помощью приведенного ниже кода появляется сообщение об ошибке, в котором говорится, что моя цель невыпуклая.
Также яДолжен сказать, что я проверил файл .lp, чтобы убедиться, что правильно сформулировал проблему.
import cplex
p = cplex.Cplex()
p.objective.set_sense(p.objective.sense.maximize)
p.variables.add(ub=[1, 1, 1],
names=["x", "y", "z"])
qmat = [[[0], [1.]],
[[1], [1.]],
[[2], [1.]]]
p.objective.set_quadratic(qmat)
p.write("qpex.lp")
p.solve()
Я не понимаю, почему, поскольку моя функция f определенно выпуклая (гессиан - это единичная матрица),Что я делаю не так?