Алгоритм неотрицательного множественного линейного наименьших квадратов?
В настоящее время я использую в своем коде алгоритм множественного линейного наименьшего квадрата, но я достиг точки, в которой я действительно хотел бы наложить ограничение неотрицательности на фитинг.
Я знаю, что это другая математическая проблема, где были проведены различные исследования, и не может быть простого "лучшего" ответа. Тем не менее, я надеюсь получить помощь здесь, в SO, - несколько указателей на соответствующий код [C++], который я мог бы использовать. Я в первую очередь не ищу решающие библиотеки, но хочу изучить и понять некоторый фрагмент кода, но любые предложения приветствуются.
1 ответ
Как только вы добавляете ограничения, он больше не является линейным. Я предполагаю, что вы столкнулись с квадратичной проблемой, взгляните, например, на https://en.wikipedia.org/wiki/Levenberg%E2%80%93Marquardt_algorithm. Я думаю, что это реализовано в библиотеке Eigen, так или иначе, должна быть реализация с открытым исходным кодом.