Как решить комбинированный набор линейных уравнений и неравенств в Matlab?

У меня есть задача, связанная с системой линейных уравнений и неравенств. Задача определяется Ax = 0 и Cx > 0 (A и C — матрицы, x — вектор переменных, для которых необходимо решить). Эта проблема, вероятно, имеет ряд решений. Я хотел бы найти хотя бы одно решение или набор решений, а затем выбрать одно из них. Любые идеи, как это сделать с MATLAB?

Для фона (хотя не уверен, что это поможет) вектор x содержит коэффициенты для функции, которую я пытаюсь определить. У функции есть известные минимумы (определяемые равенством) и другой набор ограничений для точек, которые должны быть выше минимумов (определяются неравенствами).


person Moot    schedule 19.09.2013    source источник
comment
Иногда, просто для развлечения, я беру заголовок чьего-то вопроса и вставляю его в Google. Тебе стоит попробовать это! Мы не можем дать здесь много советов, не зная, какие у вас есть наборы инструментов. Вы можете легко сделать это с помощью набора инструментов символьной математики.   -  person paddy    schedule 19.09.2013
comment
Как сказал @paddy, это действительно зависит от того, что у вас есть и чего вы действительно хотите достичь в конце. Это может помочь начать: ссылка. И в зависимости от того, как вы сформулировать его, вы также можете использовать линейное программирование.   -  person Yunus    schedule 19.09.2013


Ответы (1)


Если у вас есть набор инструментов для оптимизации, вы можете использовать linprog.

Если у вас нет набора инструментов оптимизации, используйте null(A) или svd(A), чтобы найти нетривиальные решения для A*x = 0, что позволит вам свести задачу к поиску линейной комбинации этого решения, так что C*x > 0 будет удовлетворено.

person Rody Oldenhuis    schedule 19.09.2013