Skip to content

Use at most the default dual feasibility tolerance in primal simplex phase 1 #2693

@jajhall

Description

@jajhall

When forcing the use of primal simplex, if the all-slack basis is not primal feasible, phase 1 is used.

With a sufficiently large dual feasibility tolerance, all duals in the phase 1 problem are feasible, so its solution is considered to be optimal. However, if any primal feasibility remains, the original LP problem is considered to be infeasible.

The phase 1 problem should be solved using the smaller of the dual feasibility tolerance and the default dual feasibility tolerance so that primal feasibility is identified correctly.

Exhibited when using option file

dual_feasibility_tolerance=1e-3
solve_relaxation=true
simplex_strategy = 4

and MIPLIB 2017 problem mas74

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions