Ограничения неравенства Matlab quadprog не выполнены в решении

Я пытаюсь использовать функцию quadprog для двойной svm-формулировки, и у меня возникла проблема с ограничениями неравенства. Я хочу переформатировать ограничение a в [0,C] в виде Ax <= b, а затем использовать quadprog, чтобы найти оптимальное решение для x, используя следующие матрицы:

A = diag((1/C)*ones(1,n));

b = ones(n,1);

lb = zeros(1,n);

where C is a constant set at C = .1

Они включены в функцию quadprog (наряду с другими матрицами), и окончательное решение, которое я получаю для x, представляет собой вектор всех 1. Поскольку C=.1, A будет иметь диагональ 10 с, а поскольку x - все 1 с, Ax даст вектор всех 10 с. Это означает, что при решении x ни одно из ограничений неравенства Ax<= b не выполняется. Я не уверен, как это возможно.

0 ответов

Другие вопросы по тегам