community based partitioning for maxsat solving
play

Community-based Partitioning for MaxSAT Solving Ruben Martins Vasco - PowerPoint PPT Presentation

Community-based Partitioning for MaxSAT Solving Ruben Martins Vasco Manquinho In es Lynce IST/INESC-ID, Technical University of Lisbon, Portugal July 10, 2013 What is Maximum Satisfiability? CNF Formula: x 2 x 2 x 1 x 3 x


  1. Community-based Partitioning for MaxSAT Solving Ruben Martins Vasco Manquinho Inˆ es Lynce IST/INESC-ID, Technical University of Lisbon, Portugal July 10, 2013

  2. What is Maximum Satisfiability? CNF Formula: ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 x 1 x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 3 x 1 • Formula is unsatisfiable 2 / 13

  3. What is Maximum Satisfiability? CNF Formula: ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 x 1 x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 3 x 1 • Formula is unsatisfiable • Maximum Satisfiability (MaxSAT): ◦ Find an assignment that maximizes (minimizes) number of satisfied (unsatisfied) clauses 2 / 13

  4. What is Maximum Satisfiability? CNF Formula: ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 x 1 x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 3 x 1 • An optimal solution would be: ◦ ν = { x 1 = 1 , x 2 = 1 , x 3 = 1 } • This assignment unsatisfies only 1 clause 2 / 13

  5. MaxSAT Problems • MaxSAT: ◦ All clauses are soft ◦ Minimize number of unsatisfied soft clauses 3 / 13

  6. MaxSAT Problems • MaxSAT: ◦ All clauses are soft ◦ Minimize number of unsatisfied soft clauses • Partial MaxSAT: ◦ Clauses are soft or hard ◦ Hard clauses must be satisfied ◦ Minimize number of unsatisfied soft clauses 3 / 13

  7. MaxSAT Problems • MaxSAT: ◦ All clauses are soft ◦ Minimize number of unsatisfied soft clauses • Partial MaxSAT: ◦ Clauses are soft or hard ◦ Hard clauses must be satisfied ◦ Minimize number of unsatisfied soft clauses • Weighted Partial MaxSAT: ◦ Clauses are soft or hard ◦ Weights associated with soft clauses ◦ Minimize sum of weights of unsatisfied soft clauses 3 / 13

  8. MaxSAT Algorithms • Branch and Bound: ◦ Extensive use of lower bounding procedures ◦ Restrictive use of MaxSAT inference rules • Linear search on the number of unsatisfied clauses: ◦ Each time a new solution is found, a new constraint is added that excludes solutions with higher cost • Unsatisfiability-based solvers: ◦ Iterative identification and relaxation of unsatisfiable subformulas 4 / 13

  9. MaxSAT Algorithms • Branch and Bound: ◦ Extensive use of lower bounding procedures ◦ Restrictive use of MaxSAT inference rules • Linear search on the number of unsatisfied clauses: ◦ Each time a new solution is found, a new constraint is added that excludes solutions with higher cost • Unsatisfiability-based solvers: ◦ Iterative identification and relaxation of unsatisfiable subformulas 4 / 13

  10. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h (Hard): ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 ϕ s (Soft): x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 x 3 x 1 5 / 13

  11. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 ϕ s : x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 x 3 x 1 • Formula is unsatisfiable 5 / 13

  12. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 ϕ s : x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 x 3 x 1 • Formula is unsatisfiable • Identify an unsatisfiable core 5 / 13

  13. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : ¯ x 2 ∨ ¯ x 2 ∨ ¯ CNF( r 1 + r 2 ≤ 1) x 1 x 3 ϕ s : x 1 ∨ r 1 x 3 ∨ r 2 x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 • Relax unsatisfiable core: ◦ Add relaxation variables ◦ Add at-most-one constraint 5 / 13

  14. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : x 2 ∨ ¯ ¯ x 2 ∨ ¯ CNF( r 1 + r 2 ≤ 1) x 1 x 3 ϕ s : x 1 ∨ r 1 x 3 ∨ r 2 x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 • Formula is unsatisfiable 5 / 13

  15. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : x 2 ∨ ¯ ¯ x 2 ∨ ¯ CNF( r 1 + r 2 ≤ 1) x 1 x 3 ϕ s : x 1 ∨ r 1 x 3 ∨ r 2 x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 • Formula is unsatisfiable • Identify an unsatisfiable core 5 / 13

  16. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : ¯ x 2 ∨ ¯ x 2 ∨ ¯ CNF( r 1 + r 2 ≤ 1) CNF( r 3 + . . . + r 6 ≤ 1) x 1 x 3 ϕ s : x 1 ∨ r 1 ∨ r 3 x 3 ∨ r 2 ∨ r 4 x 2 ∨ ¯ x 1 ∨ r 5 x 3 ∨ x 1 ∨ r 6 ¯ • Relax unsatisfiable core: ◦ Add relaxation variables ◦ Add at-most-one constraint 5 / 13

  17. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : ¯ x 2 ∨ ¯ x 2 ∨ ¯ CNF( r 1 + r 2 ≤ 1) CNF( r 3 + . . . + r 6 ≤ 1) x 1 x 3 ϕ s : x 1 ∨ r 1 ∨ r 3 x 3 ∨ r 2 ∨ r 4 x 2 ∨ ¯ x 1 ∨ r 5 x 3 ∨ x 1 ∨ r 6 ¯ • Formula is satisfiable • An optimal solution would be: ◦ ν = { x 1 = 1 , x 2 = 0 , x 3 = 0 } 5 / 13

  18. Unsatisfiability-based Algorithms (Fu&Malik [SAT’06]) Partial MaxSAT Formula: ϕ h : ¯ x 2 ∨ ¯ x 2 ∨ ¯ x 1 x 3 ϕ s : x 2 ∨ ¯ ¯ x 3 ∨ x 1 x 1 x 3 x 1 • Formula is satisfiable • An optimal solution would be: ◦ ν = { x 1 = 1 , x 2 = 0 , x 3 = 0 } • This assignment unsatisfies 2 soft clauses 5 / 13

  19. Unsatisfiability-based Algorithms • Fu&Malik algorithm can be generalized for weighted partial MaxSAT (Manquinho et al. [SAT’09], Ans´ otegui et al. [SAT’09]) • Unsatisfiability-based algorithms are very effective on industrial benchmarks 6 / 13

  20. Unsatisfiability-based Algorithms • Fu&Malik algorithm can be generalized for weighted partial MaxSAT (Manquinho et al. [SAT’09], Ans´ otegui et al. [SAT’09]) • Unsatisfiability-based algorithms are very effective on industrial benchmarks • However, performance is related with the unsatisfiable cores given by the SAT solver: ◦ Some unsatisfiable cores may be unnecessarily large 6 / 13

  21. Unsatisfiability-based Algorithms • Fu&Malik algorithm can be generalized for weighted partial MaxSAT (Manquinho et al. [SAT’09], Ans´ otegui et al. [SAT’09]) • Unsatisfiability-based algorithms are very effective on industrial benchmarks • However, performance is related with the unsatisfiable cores given by the SAT solver: ◦ Some unsatisfiable cores may be unnecessarily large ◦ Solution: Partitioning of the soft clauses 6 / 13

  22. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 7 / 13

  23. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula 7 / 13

  24. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core 7 / 13

  25. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found ◦ Otherwise, go back to 2 7 / 13

  26. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core γ 1 ∪ γ 2 (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found ◦ Otherwise, go back to 2 7 / 13

  27. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core γ 1 ∪ γ 2 (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found ◦ Otherwise, go back to 2 7 / 13

  28. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core γ 1 ∪ γ 2 (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found ◦ Otherwise, go back to 2 7 / 13

  29. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core γ 1 ∪ γ 2 (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found γ 1 ∪ γ 2 ∪ γ 3 ◦ Otherwise, go back to 2 7 / 13

  30. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core γ 1 ∪ γ 2 (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found γ 1 ∪ γ 2 ∪ γ 3 ◦ Otherwise, go back to 2 7 / 13

  31. Unsatisfiability-based Algorithm w/ Partitioning (Martins et al. [ECAI’12]) (1) Partition the soft clauses γ 1 γ 2 γ 3 (2) Add a new partition to the formula (3) While the formula is unsatisfiable: ◦ Relax unsatisfiable core γ 1 ∪ γ 2 (4) The formula is satisfiable: ◦ If there are no more partitions: ⊲ Optimum found γ 1 ∪ γ 2 ∪ γ 3 ◦ Otherwise, go back to 2 7 / 13

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend