202402161402

Tags : Combinatorial Optimisation

Separation Oracle for perfect matching LP


Motivation

We have the Ellipsoid Algorithm for solving an LP. In the algorithm we assume that we can check if all constraints are satisfied by a given point, or get the violated constraint easily. But there could be exponentially many constraints e.g. in the perfect matching LP. Thus we require a Separation Oracle, as described below, which we will construct.

Separation Oracle: An algorithm which takes a point as input and either outputs ” is feasible” or outputs a violated constraint.

LP


Goal: Given a point determine if satisfies all the constraints, else output a violated constraint.


for some reason we do the following:(??)

The max flow algorithm finds a max-flow from to , and hence a min-cut between and . Choose a vertex as , and for each choice of find an mincut. Output the mincut among those.

Assume even. So odd odd. be the mincut in , is even. be the min odd cut in .

Obs.: Either is odd or is odd. WLOG let be odd. For


References

LP algorithm for general Perfect Matching Linear Programming