Численная библиотека для минимизации многомерной функции на окнах

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

Однако я привык к GSL, который, к сожалению, требует gcc. Однако мы должны работать в Windows, используя VC++ 2010. Я нашел порт GSL для Windows, но последний коммит датирован 2006 годом, и я сомневаюсь, что он будет работать с нашей установкой.

Какие библиотеки есть в Windows и рекомендуются? Нам нужно решить только одну эту проблему, поэтому чем специализированнее библиотека, тем лучше.

Мы используем C++, поэтому должен быть доступен интерфейс C или C++.


person janoliver    schedule 25.10.2011    source источник
comment
Я использую GSL через поставляемую с ним DLL. gcc вообще не нужен.   -  person David Heffernan    schedule 25.10.2011


Ответы (2)


Эта реализация метода L-BFGS подходит для ваших целей. Он также имеет файл решения VS2010, что упрощает его включение в ваш проект.

person Alexandre C.    schedule 25.10.2011

У Cygwin есть GSL. В зависимости от характера вашего ограничения для Windows, возможно, это возможно.

person Michael J. Barber    schedule 25.10.2011
comment
Спасибо за комментарий. Я никогда не использовал cygwin, но я думал, что он связан с gcc. Поскольку мы хотим включить это в наши проекты, которые мы компилируем с помощью VC++, я не думаю, что мы можем использовать для этого cygwin. (Также ДОЛЖЕН быть какой-то эквивалент для окон...) - person janoliver; 25.10.2011
comment
Ага, понятно. Я неправильно понял вопрос, означающий, что вам нужно решить конкретную проблему один раз, а не то, что вам нужно включить решатель для определенного класса проблем. В этом случае я не думаю, что cygwin поможет, так как он основан на gcc. Но я оставлю ответ на случай, если кто-то с похожим вопросом найдет ваш. - person Michael J. Barber; 25.10.2011