minimize(method=’BFGS’)#

scipy.optimize.minimize(fun, x0, args=(), метод=None, jac=None, hess=None, hessp=None, границы=None, ограничения=(), tol=None, callback=None, опции=None)

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

Смотрите также

Для документации по остальным параметрам см. scipy.optimize.minimize

Опции:
——-
dispbool

Установите True для вывода сообщений о сходимости.

maxiterint

Максимальное количество итераций для выполнения.

gtolfloat

Успешно завершить, если норма градиента меньше gtol.

normfloat

Порядок нормы (Inf — максимум, -Inf — минимум).

epsfloat или ndarray

Если jac is None абсолютный размер шага, используемый для численного приближения якобиана через прямые разности.

return_allbool, необязательно

Установите в True, чтобы вернуть список лучшего решения на каждой из итераций.

finite_diff_rel_stepNone или array_like, опционально

Если jac in ['2-point', '3-point', 'cs'] относительный размер шага для численного приближения якобиана. Абсолютный размер шага вычисляется как h = rel_step * sign(x) * max(1, abs(x)), возможно, скорректированный для соответствия границам. Для jac='3-point' знак h игнорируется. Если None (по умолчанию), то шаг выбирается автоматически.

xrtolfloat, по умолчанию: 0

Относительная погрешность для x. Успешно завершить, если размер шага меньше xk * xrtol где xk является текущим вектором параметров.

c1float, по умолчанию: 1e-4

Параметр для правила условия Армихо.

c2float, по умолчанию: 0.9

Параметр для правила условия кривизны.

hess_inv0None или ndarray, опционально

Начальная оценка обратной матрицы Гессе, форма (n, n). Если None (по умолчанию), то используется единичная матрица.

workersint, вызываемый объект, подобный отображению, опционально

Вызываемый объект, подобный отображению, такой как multiprocessing.Pool.map для параллельного вычисления любой численной производной. Это вычисление выполняется как workers(fun, iterable).

Добавлено в версии 1.16.0.

Примечания

Параметры c1 и c2 должно удовлетворять 0 < c1 < c2 < 1.

Если минимизация не завершается успешно, с сообщением об ошибке Desired error not necessarily achieved due to precision loss, тогда рассмотрите установку gtol до большего значения. Эта потеря точности обычно происходит, когда (конечно-разностное) численное дифференцирование не может обеспечить достаточную точность для удовлетворения gtol критерий завершения. Это может произойти при работе с одинарной точностью и если вызываемый jac не предоставлен. Для задач с одинарной точностью gtol значение 1e-3, по-видимому, работает.