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, по-видимому, работает.