1 / 21

Max 2 Sat Example: (Hansen & Jaumard) (n = 4, m = 12) Clause # Clause

Solution of Satisfiability Problems by Unconstrained Quadratic Programming Talk given by Gary Kochenberger University of Colorado & Hearin Center for Enterprise Science Other Team Members Fred Glover Bahram Alidaee Keith Womer Haitao Li.

miriam-love
Download Presentation

Max 2 Sat Example: (Hansen & Jaumard) (n = 4, m = 12) Clause # Clause

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Solution of Satisfiability ProblemsbyUnconstrained Quadratic ProgrammingTalk given byGary KochenbergerUniversity of Colorado&Hearin Center for Enterprise ScienceOther Team MembersFred GloverBahram AlidaeeKeith WomerHaitao Li

  2. Introduction:sThe Tenet of Linearity in Combinatorial OptimizationsMetaheuristics Methods call this devotion into questionsRecent work suggests that nonlinear representations may offer a fruitful alternativesIn this research we investigate the use of such methods for satisfiability problems (SAT)

  3. Definition of SAT:A SAT instance is a Boolean CNF Formula with:s A set of n variables:s A set of literals: either a variable or its negations A set of Clauses: . Each Clause consists only of literals connected by logical “or” connectivess CNF: . Where is the logical “and” connective.Goal: Find an assignment of Truth values such that the Boolean function evaluates to True. For Max SAT, we want an assignment that satisfies the maximum number of clauses.

  4. Applications:s Propositional Logics Data Base Design and Analysiss Automated Reasonings SAILOR 21s Computer Aided Designs Machine visions Roboticss Schedulings Integrated Circuit Design

  5. Zero/One (IP) formulation of SAT and Max-SAT: subject tos : literals in clause ms 0/1 (logical) variabless : whether or not clause m is satisfieds

  6. Max 2 Sat Example: (Hansen & Jaumard) (n = 4, m = 12)Clause # Clause

  7. IP Model: s 16 variables and 12 constraintss , all other variables equal to 1s 11 of the 12 clauses are satisfieds (by setting equal to 1 and equal to 0)

  8. Max 2-SAT & Unconstrained Quadratic Binary Programming:s Quadratic Penalty Functions Unconstrained Quadratic Binary Programs 2-SATw Three possible clause typesw Each with linear constraintw Each with equivalent exact penaltyThree possibilities are: (a) No negations: Classical constraint: Exact Penalty: (b) One negation: Classical constraint: Exact Penalty: (c) Two negations: Classical constraint: Exact penalty:

  9. For our example:Clause # Clause Quadratic Penalty (penj) 1 2 3 4 5 6 7 8 9 10 11 12

  10. Form Penalty Function: SAT (UQP): spenj is the quadratic penalty associated with clause js In the form of xQx (i.e., UQP)s Advances is solving UQPFor our example we get:or,where the matrix Q is given bySolving SAT (UQP) gives: at

  11. Remarks:s This unconstrained quadratic model in 4 variables is equivalent to the 16 variable, 12 constraint IPs The general SAT (UQP) model will be of the form , where c is a constant and s Model applies both to the SAT and Max-SATw If equals zero, we have a SAT solutionw Else, our solution is a result for the Max-SAT problems Eliminates the need for the “y” variablesw Problem with m = 5,000 clauses and 200 variablesw SAT (UQP) model with a Q matrix of size 200 by 200 (very modest)w IP model would have 5,200 variables and 5000 constraints

  12. Random Problems….available from authors • xQx times rounded up • xQx code run for 50 SPAN cycles • 2Sat 500d and 1000a too large for CPLEX • CPLEX results from version 8.0

  13. All times in seconds unless noted otherwise. • Maxsat is an exact method developed by Borchers & Furman • Maxsat results obtained on IBM RS/6000-590 • xQx results obtained 1.6 MHZ PC. • Each xQx run was for 50 SPAN cycles • Problem 100_600 was previously unsolved.

  14. 3-SAT & Max 3-SAT:s Four clause typess Each with classical constraint & penalty1. No Negations: Classical constraint: Exact Penalty:2. One Negations: Classical constraint: Exact Penalty:3. Two Negations: Classical constraint: Exact Penalty:4. Three Negations: Classical constraint: Exact Penalty:s As before, minimize the sum of the penalty termss Penalty function is cubics Convert to xQx via procedure of Hammer and Boros:w Replace the product term xy by a new variable zw Add the penalty termg penalty is zero only wheng else it is positive

  15. 3-Sat Example:(n = 5, m = 12)Clause # Clause 1 2 3 4 5 6 7 8 9 10 11 12

  16. Forming the penalty function:s five cubic termss introduce two new variablesw ws with associated penaltiesWhich is of the form:

  17. Taking (arbitrarily) the penalty P to be 10, the 7-by-7 Q matrix is:Minimizing xQx yields for which . Thus, implying that all 12 clauses are satisfied at this solution.Remarks pertaining to 3-SAT and Max 3-Sat:s For 3-SAT, # clauses does matters SAT (UQP) could be as large as (n + m)s But terms combine (and cancel)s And, our ability to solve larger UQP continues to advances General SAT problems

  18. Solving xQx (An Overview):s Tabu Search (TS) method is centered around the use of strategic oscillation.s The method alternates between constructive phases (“add moves”) and destructive phases (“drop moves”).s To control the underlying search process, we use a memory structure that is updated at critical events.s A parameter span is used to indicate the amplitude of oscillation about a critical event.s We begin with span equal to 1 and gradually increase it to some limiting value.s For each value of span, a series of alternating constructive and destructive phases is executed before progressing to the next span value.s At the limiting point, span is gradually decreased, allowing again for a series of alternating constructive and destructive phases.s When span reaches a value of 1, a complete span cycle has been completed and the next cycle is launched.

  19. Solving xQx (An Overview), continued:s The search process is typically allowed to run for a pre-set number of span cycles.s Information stored at critical events is used to influence the search process by penalizing potentially attractive add moves and inducing drop moves associated with assignments of values to variables in recent critical solutions.s Cumulative critical event information is used to introduce a subtle long-term bias into the search process by means of additional penalties and inducements similar to those discussed above.s Other standard elements of tabu search such as short and long- term memory structures are also included.s A complete description of the method is given in Glover, Kochenberger, Alidaee (Management Science).

  20. Where we are headed:s Further testing of max 2-SAT casew More test problemsw State of the Art comparisonss Extend to 3- SAT casew Code and test generatorw Converting “cubic” penalty function to xQxw Test on standard test bedw Assess performance/make comparisonss Extend to General SAT casew Convert back to xQxw Examine other solution possibilitiesw Long term planss Develop improved heuristic method for solving xQxw Enable larger instances to be solvedw Useful for other problem classes

  21. Wrap-up:s Shown xQx to be a fruitful modeling and solution framework for 2-SAT and Max 2-SAT problems.s Indicated how xQx could be applied to more general SAT problems.s Encouraged by our progress to date and with the prospects for future findings and contributions.

More Related