Как express sum_ {i, j} x [i] [j] ^ (a + 1) / w [i] ^ a: любой решатель в Python? - PullRequest
0 голосов
/ 24 марта 2020

Я хочу решить проблему минимизации \ sum_ {i, j} {x [i] [j] ^ (a + 1) / w [i] ^ a}, где x и w - неотрицательные переменные, и а неотрицательное рациональное число. Есть несколько линейных ограничений. Я проверил, что это проблема выпуклой оптимизации.

В настоящее время я использую CVXPY для решения этой проблемы. Если a = 1, я могу express использовать Quadrati c поверх линейной формы, однако я не могу обобщить его. Я попытался express использовать конус мощности, однако он не работает, потому что w [i] взаимосвязано с x [i] [j]. Чтобы быть более точным c,

Целевая функция может быть выражена в виде конуса мощности следующим образом:

t[i][j] >= x[i][j]^(a+1)/w[i]^a -> (t[i][j],w[i],x[i][j]) \in Powercone

Если j в {1,2}, нам нужны два ограничения для всех i.

(t[i][1],w[i],x[i][1]) \in Powercone
(t[i][2],w[i],x[i][2]) \in Powercone

Проблема в том, что w [i] участвует в обоих ограничениях. В CVXPY выдается ошибка.

Есть ли способ решить эту проблему с помощью любого решателя в Python?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...