В настоящее время мы используем функцию Matlab fmincon для нелинейной оптимизации проекта, над которым я работаю. Нам нужно перенести эту часть проекта на C++, чтобы интегрировать ее с другими частями проекта. Есть ли хороший способ скомпилировать функцию fmincon в библиотеку, которую можно использовать в C++? Или где-нибудь уже есть библиотека, реализующая fmincon?
Если ни один из вышеперечисленных вариантов не подходит, какие библиотеки оптимизации доступны, на которые было бы довольно легко переключиться с fmincon?
Справочная информация:
Мы пытаемся оптимизировать траекторию полета БПЛА по путевой точке, чтобы как можно точнее следовать заданной траектории камеры путевой точки вдоль земли. Путевые точки между двумя путями совпадают во времени, поэтому подвес камеры будет направлен на i-ю путевую точку камеры, когда БПЛА прибудет в i-ю путевую точку траектории полета. Все сегменты траектории полета будут одинаковой длины, поскольку БПЛА летит с постоянной скоростью. Радиус поворота также ограничивается верхней границей. На траекторию движения камеры ограничений нет, поэтому ее сегменты могут быть длиннее или короче, чем сегменты траектории полета, и она может иметь крутые повороты. Функция стоимости представляет собой квадрат суммы расстояний между соответствующими путевыми точками полета и путевыми точками камеры (без учета разницы высот).