Решить квадратичное программирование - PullRequest
1 голос
/ 26 ноября 2010

Хотелось бы узнать метод решения квадратичного программирования с помощью компьютера (не вручную). Любой математический материал, который я могу прочитать? Спасибо!

Ответы [ 4 ]

1 голос
/ 29 ноября 2010

Могут быть использованы некоторые методы внутренних точек. Часто проблема QP является особой, и можно использовать менее общие методы, например алгоритм Платта для QP, возникающий в SVM.

1 голос
/ 06 мая 2011

Если код короткий и использует SVD и LU, то это, вероятно, простой решатель проблем только с ограничениями равенства или вообще без них.QP с ограничениями неравенства можно решить с помощью таких инструментов, как quadprog (matlab), quadprog ++ (c ++), mosek (matlab и c ++).Библиотеки c ++ могут использоваться на языке .net.

1 голос
/ 29 ноября 2010

Вы хотите использовать программный пакет черного ящика.Известно, что реализовать надежный решатель QP сложно.

Вы не упомянули, какой язык вы используете, но если это C ++, QuadProg ++ облегчен и бесплатен.

0 голосов
/ 26 июля 2011

Ответ сильно зависит от размера вашей задачи и выпуклости квадратичных функций.Если ваши проблемы выпуклые, и вам нравится использовать python, вы можете использовать cvxmod для free .Для математического материала есть также выпуклая книга оптимизации, в свободном доступе .Для невыпуклых задач пакет IPopt из проекта «монета-или» будет работать для поиска локально-оптимальных решений.

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