scipy.optimize.

LinearConstraint#

class scipy.optimize.LinearConstraint(A, lb=-inf, ub=inf, keep_feasible=False)[source]#

變數的線性約束。

此約束具有一般不等式形式

lb <= A.dot(x) <= ub

此處,獨立變數 x 的向量以形狀為 (n,) 的 ndarray 傳遞,而矩陣 A 的形狀為 (m, n)。

可以使用相等邊界來表示等式約束,或使用無限邊界來表示單邊約束。

參數:
A{array_like, 稀疏矩陣}, 形狀 (m, n)

定義約束的矩陣。

lb, ub密集 array_like, 可選

約束的下限和上限。每個陣列都必須具有形狀 (m,) 或為純量,在後一種情況下,邊界對於約束的所有組件都相同。使用 np.inf 和適當的符號來指定單邊約束。將 lbub 的組件設定為相等以表示等式約束。請注意,您可以通過根據需要設定 lbub 的不同組件,來混合不同類型的約束:區間、單邊或等式。預設值為 lb = -np.infub = np.inf (無限制)。

keep_feasible布林值的密集 array_like, 可選

是否在整個迭代過程中保持約束組件的可行性。單個值為所有組件設定此屬性。預設值為 False。對等式約束無效。

方法

residual(x)

計算約束函數與限制之間的殘差