Resource title

A universally fastest algorithm for Max 2-Sat, Max 2-CSP, and everything in between

Resource image

image for OpenScout resource :: A universally fastest algorithm for Max 2-Sat, Max 2-CSP, and everything in between

Resource description

In this paper we introduce "hybrid" Max 2-CSP formulas consisting of "simple clauses", namely conjunctions and disjunctions of pairs of variables, and general 2-variable clauses, which can be any integer-valued functions of pairs of boolean variables. This allows an algorithm to use both efficient reductions specific to AND and OR clauses, and other powerful reductions that require the general CSP setting. We use new reductions introduced here, and recent reductions such as "clause-learning" and "2-reductions" generalized to our setting's mixture of simple and general clauses. We parametrize a hybrid instance by the fraction p of non-simple clauses. We give an exact, exponential-time but polynomial-space algorithm that is the fastest known for p = 0, which includes the well-studied Max 2-Sat problem but also instances with arbitrary mixtures of AND and OR clauses; for an m-clause instance it runs in time O{star operator} (2m / 6.321). The same algorithm is tied for fastest for general Max 2-CSP (p = 1), with running time O{star operator} (2m / 5.263). The algorithm is the only one to treat mixtures of AND, OR, and general integer-valued clauses more efficiently than the general case, with intermediate running time bounds depending on the value of p. Since even a pure Max 2-Sat input instance may be transformed to a hybrid instance in the course of solving it, the algorithm's efficiency and generality go hand in hand. Our algorithm analysis and optimization use the familiar measure-and-conquer approach, but in a variation resulting in mathematical programs that are convex rather than quasi-convex, and can be solved efficiently and with a certificate of optimality. We produce a family of running-time upper-bound formulas, each optimized for instances with a particular value of p but valid for all instances.

Resource author

Resource publisher

Resource publish date

Resource language


Resource content type

Resource resource URL

Resource license