bundles / scipy 1.17.1 / scipy / optimize / _linprog_simplex / _pivot_col
function
scipy.optimize._linprog_simplex:_pivot_col
Signature
def _pivot_col ( T , tol = 1e-09 , bland = False ) Summary
Given a linear programming simplex tableau, determine the column of the variable to enter the basis.
Parameters
T: 2-D arrayA 2-D array representing the simplex tableau, T, corresponding to the linear programming problem. It should have the form:
[[A[0, 0], A[0, 1], ..., A[0, n_total], b[0]],
[A[1, 0], A[1, 1], ..., A[1, n_total], b[1]], . . . [A[m, 0], A[m, 1], ..., A[m, n_total], b[m]], [c[0], c[1], ..., c[n_total], 0]]
for a Phase 2 problem, or the form:
[[A[0, 0], A[0, 1], ..., A[0, n_total], b[0]],
[A[1, 0], A[1, 1], ..., A[1, n_total], b[1]], . . . [A[m, 0], A[m, 1], ..., A[m, n_total], b[m]], [c[0], c[1], ..., c[n_total], 0], [c'[0], c'[1], ..., c'[n_total], 0]]
for a Phase 1 problem (a problem in which a basic feasible solution is sought prior to maximizing the actual objective.
Tis modified in place by_solve_simplex.
tol: floatElements in the objective row larger than -tol will not be considered for pivoting. Nominally this value is zero, but numerical issues cause a tolerance about zero to be necessary.
bland: boolIf True, use Bland's rule for selection of the column (select the first column with a negative coefficient in the objective row, regardless of magnitude).
Returns
: status: boolTrue if a suitable pivot column was found, otherwise False. A return of False indicates that the linear programming simplex algorithm is complete.
: col: intThe index of the column of the pivot element. If status is False, col will be returned as nan.
Aliases
-
scipy.optimize._linprog_simplex._pivot_col