Как минимизировать функцию C ++, используя boost? - PullRequest
3 голосов
/ 04 февраля 2011

поэтому у меня есть такая функция, как

int f(int i, int j, int c, double d) {
    /*...any operations with i, j, c, d affect on some return int we have*/
}

Есть ли в boost или STD что-нибудь, что могло бы взять мою функцию и найти входные аргументы, минимизирующие вывод моей функции?

Ответы [ 3 ]

5 голосов
/ 04 февраля 2011

Полагаю, вы пытаетесь выполнить "простую" математическую многомерную минимизацию.

GSL имеет несколько функций, которые помогут вам в этом . Я бы не стал больше смотреть ;)

4 голосов
/ 04 февраля 2011

Я понимаю, что вы ищете код для выполнения математической оптимизации .

Насколько мне известно, Boost не имеет ничего общего с этим, как и стандартная библиотека;однако NLopt может быть тем, что вы ищете.

2 голосов
/ 21 февраля 2014

Вы можете использовать алгоритм Брента для минимизации простых функций.

http://www.boost.org/doc/libs/1_65_0/libs/math/doc/html/math_toolkit/roots/brent_minima.html

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