Недавно я столкнулся с проблемой квадратичного программирования (QCQP) с квадратичным ограничением в моих исследованиях. Я нашел что-то полезное в инструменте оптимизации MATLAB, то есть функцию fmincon (общая нелинейная оптимизация с нелинейными ограничениями), она использует «алгоритм внутренней точки» для решения моей проблемы, которая содержит 8 переменных, 1 квадратичное ограничение равенства и 1 квадратичное ограничение неравенства , «fmincon» с или без «Гессиан» и «Градиент» обеспечивают неплохое решение, единственное, чего я не удовлетворен, - это эффективность, так как мне нужно назвать это как миллион раз в моем основном коде. Мне нужно найти что-то, что может быть более специфичным для QCQP, возможно, эффективность может быть улучшена. Однако я нашел много информации из netlib и wiki, но у меня нет суждения о том, какой из них я должен использовать, и было бы утомительно пытаться делать вещи один за другим, мне действительно нужны некоторые предложения. Кстати, я в основном программирую в MATLAB для этой проблемы, но подходящий c/fortran также полезен.Квадратично ограниченное квадратичное программирование (QCQP) в MATLAB
-yan
Если проблема квадратная, используйте «quadprog». Кроме того, вам нужно будет предоставить дополнительную информацию о спасительной проблеме, чтобы остальные люди могли говорить о возможно более быстрых алгоритмах. –
«quadprog» MATLAB - это решатель квадратичного программирования, однако он принимает только линейные равенства и ограничения и границы без равенства. Мой вопрос касается нелинейных ограничений, которые не могут быть обработаны им. MATLAB 'fmincon' очень хорош для моей проблемы, но я ищу что-то более эффективное, так как мне нужно назвать миллионы времени этой функцией. – ywang