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
来指定单边约束。将 lb 和 ub 的分量设置为相等以表示等式约束。请注意,您可以混合不同类型的约束:区间、单边或等式,通过根据需要设置 lb 和 ub 的不同分量。默认为lb = -np.inf
和ub = np.inf
(无限制)。- keep_feasible稠密布尔 array_like, 可选
在迭代过程中是否保持约束分量可行。单个值将此属性应用于所有分量。默认值为 False。对等式约束无效。
方法
residual
(x)计算约束函数与限制之间的残差