當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python SciPy optimize.fmin_slsqp用法及代碼示例


本文簡要介紹 python 語言中 scipy.optimize.fmin_slsqp 的用法。

用法:

scipy.optimize.fmin_slsqp(func, x0, eqcons=(), f_eqcons=None, ieqcons=(), f_ieqcons=None, bounds=(), fprime=None, fprime_eqcons=None, fprime_ieqcons=None, args=(), iter=100, acc=1e-06, iprint=1, disp=None, full_output=0, epsilon=1.4901161193847656e-08, callback=None)#

使用順序最小二乘法最小化函數

SLSQP 優化子例程的 Python 接口函數最初由 Dieter Kraft 實現。

參數

func 可調用 f(x,*args)

目標函數。必須返回一個標量。

x0 浮點數的一維數組

自變量的初始猜測。

eqcons 列表,可選

長度為 n 的函數列表,使得 eqcons[j](x,*args) == 0.0 在成功優化的問題中。

f_eqcons 可調用 f(x,*args),可選

返回一個一維數組,其中每個元素在成功優化的問題中必須等於 0.0。如果指定了 f_eqcons,則忽略 eqcons。

ieqcons 列表,可選

長度為 n 的函數列表,使得 ieqcons[j](x,*args) >= 0.0 在成功優化的問題中。

f_ieqcons 可調用 f(x,*args),可選

返回一個 1-D ndarray,其中每個元素在成功優化的問題中必須大於或等於 0.0。如果指定了 f_ieqcons,則忽略 ieqcons。

bounds 列表,可選

為每個自變量 [(xl0, xu0),(xl1, xu1),…] 指定下限和上限的元組列表 無限值將被解釋為較大的浮點值。

fprime 可調用的f(x,*args), 可選的

計算 func 的偏導數的函數。

fprime_eqcons 可調用的f(x,*args), 可選的

一個 f(x, *args) 形式的函數,它返回 m × n 等式約束法行數組。如果沒有提供,法線將是近似的。 fprime_eqcons 返回的數組大小應為 (len(eqcons), len(x0))。

fprime_ieqcons 可調用的f(x,*args), 可選的

一個 f(x, *args) 形式的函數,它返回 m × n 不等式約束法行數組。如果沒有提供,法線將是近似的。 fprime_ieqcons 返回的數組的大小應為 (len(ieqcons), len(x0))。

args 順序,可選

傳遞給 func 和 fprime 的附加參數。

iter 整數,可選

最大迭代次數。

acc 浮點數,可選

要求的準確性。

iprint 整數,可選

fmin_slsqp 的詳細程度:

  • iprint <= 0:靜默操作

  • iprint == 1:完成後打印摘要(默認)

  • iprint >= 2:打印每次迭代和摘要的狀態

disp 整數,可選

覆蓋 iprint 接口(首選)。

full_output 布爾型,可選

如果為 False,則僅返回 func 的最小化器(默認)。否則,輸出最終的目標函數和摘要信息。

epsilon 浮點數,可選

有限差分導數估計的步長。

callback 可調用的,可選的

每次迭代後調用,如 callback(x) ,其中 x 是當前參數向量。

返回

out 浮點數

func 的最終最小化器。

fx 浮點數數組,如果 full_output 為真

目標函數的最終值。

its 整數,如果 full_output 為真

迭代次數。

imode 整數,如果 full_output 為真

優化器的退出模式(見下文)。

smode 字符串,如果 full_output 為真

說明優化器退出模式的消息。

注意

退出模式定義如下

-1 : Gradient evaluation required (g & a)
 0 : Optimization terminated successfully
 1 : Function evaluation required (f & c)
 2 : More equality constraints than independent variables
 3 : More than 3*n iterations in LSQ subproblem
 4 : Inequality constraints incompatible
 5 : Singular matrix E in LSQ subproblem
 6 : Singular matrix C in LSQ subproblem
 7 : Rank-deficient equality constraint subproblem HFTI
 8 : Positive directional derivative for linesearch
 9 : Iteration limit reached

例子

教程中給出了示例。

相關用法


注:本文由純淨天空篩選整理自scipy.org大神的英文原創作品 scipy.optimize.fmin_slsqp。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。