Some Observations on Boolean Logic and Optimization John Hooker - - PowerPoint PPT Presentation

some observations on boolean logic and optimization
SMART_READER_LITE
LIVE PREVIEW

Some Observations on Boolean Logic and Optimization John Hooker - - PowerPoint PPT Presentation

Some Observations on Boolean Logic and Optimization John Hooker Carnegie Mellon University January 2009 Slide 1 Outline Logic and cutting planes Logic of 0-1 inequalities Logic and linear programming Inference duality


slide-1
SLIDE 1

Slide 1

Some Observations on Boolean Logic and Optimization

John Hooker Carnegie Mellon University January 2009

slide-2
SLIDE 2

Slide 2

Outline

  • Logic and cutting planes
  • Logic of 0-1 inequalities
  • Logic and linear programming
  • Inference duality
  • Constraint programming
  • Good logic models
slide-3
SLIDE 3

Slide 3

Logic and Cutting Planes

slide-4
SLIDE 4

Slide 4

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

Prime implicates = undominated implications.

slide-5
SLIDE 5

Slide 5

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

Prime implicates = undominated implications. This means that resolution is a complete inference method for clauses.

slide-6
SLIDE 6

Slide 6

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

Example

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

slide-7
SLIDE 7

Slide 7

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

Resolve on x1

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

slide-8
SLIDE 8

Slide 8

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

Resolve on x1

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 2 3 3 2 3

x x x x x x x x ∨ ∨ ∨ ∨

slide-9
SLIDE 9

Slide 9

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 2 3 3 2 3

x x x x x x x x ∨ ∨ ∨ ∨

Resolve on x2

slide-10
SLIDE 10

Slide 10

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 2 3 3 2 3

x x x x x x x x ∨ ∨ ∨ ∨

1 2 1 3 2 2 3 3 3

x x x x x x x x x ∨ ∨ ∨ ∨

Resolve on x2

slide-11
SLIDE 11

Slide 11

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 2 3 3 2 3

x x x x x x x x ∨ ∨ ∨ ∨

1 2 1 3 2 2 3 3 3

x x x x x x x x x ∨ ∨ ∨ ∨

Drop redundant clauses

slide-12
SLIDE 12

Slide 12

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 2 3 3 2 3

x x x x x x x x ∨ ∨ ∨ ∨

1 2 1 3 2 2 3 3 3

x x x x x x x x x ∨ ∨ ∨ ∨

1 2 3

x x x ∨

Drop redundant clauses

slide-13
SLIDE 13

Slide 13

Theorem (Quine). The resolution method generates all prime implicates of a set of logical clauses.

Logic and cutting planes

1 2 3

x x x ∨

Prime implicates remain

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 2 3 3 2 3

x x x x x x x x ∨ ∨ ∨ ∨

1 2 1 3 2 2 3 3 3

x x x x x x x x x ∨ ∨ ∨ ∨

slide-14
SLIDE 14

Slide 14

Logic and cutting planes

This might be regarded as the fundamental theorem of cutting plane theory. Theorem (Chvátal). Every cutting plane for a 0-1 system Ax ≥ b can be generated by repeatedly taking nonnegative linear combinations and rounding up.

slide-15
SLIDE 15

Slide 15

Logic and cutting planes

This might be regarded as the fundamental theorem of cutting plane theory. A key step of the proof uses the resolution method. Theorem (Chvátal). Every cutting plane for a 0-1 system Ax ≥ b can be generated by repeatedly taking nonnegative linear combinations and rounding up.

slide-16
SLIDE 16

Slide 16

Theorem (Chvátal). Every cutting plane for a 0-1 system Ax ≥ b can be generated by repeatedly taking nonnegative linear combinations and rounding up.

Logic and cutting planes

This might be regarded as the fundamental theorem of cutting plane theory. A key step of the proof uses the resolution method. This suggests there are deep connections between resolution and cutting planes.

slide-17
SLIDE 17

Slide 17

A resolution step generates a rank 1 cut (i.e., a cut generated by

  • ne step of Chvátal’s method).

Logic and cutting planes

1 2 1 3

x x x x ∨ ∨

Convert to 0-1 inequalities

1 2 1 3

(1 ) 1 (1 ) 1 x x x x + − ≥ − + ≥

slide-18
SLIDE 18

Slide 18

A resolution step generates a rank 1 cut (i.e., a cut generated by

  • ne step of Chvátal’s method).

Logic and cutting planes

1 2 1 3

x x x x ∨ ∨

Take linear combination

1 2 1 3 2 3

(1/ 2) ( (1 ) 1 (1 ) 1 (1 ) 1/ 2) (1/ 2) (1/ 2 ) x x x x x x + − ≥ − + ≥ − ≥ ≥

2 3

(1 ) 1/ 2 x x − + ≥

slide-19
SLIDE 19

Slide 19

A resolution step generates a rank 1 cut (i.e., a cut generated by

  • ne step of Chvátal’s method).

Logic and cutting planes

1 2 1 3

x x x x ∨ ∨

1 2 1 3 2 3

(1/ 2) ( (1 ) 1 (1 ) 1 (1 ) 1/ 2) (1/ 2) (1/ 2 ) x x x x x x + − ≥ − + ≥ − ≥ ≥

2 3 2 3

(1 ) 1/ 2 (1 ) 1 x x x x − + ≥ − + ≥

Round up

2 3

x x ∨

Resolvent

slide-20
SLIDE 20

Slide 20

Theorem (JNH). Input resolution generates precisely those clauses that are rank 1 cuts.

Logic and cutting planes

1 2 3 1 3 2 3

x x x x x x x ∨ ∨ ∨

Result of input resolution Input resolution = use at least one of the original clauses to obtain each resolvent

slide-21
SLIDE 21

Slide 21

Theorem (JNH). Input resolution generates precisely those clauses that are rank 1 cuts.

Logic and cutting planes

1 2 3 1 3 2 3

x x x x x x x ∨ ∨ ∨

1 2 1 3 2 3 2 3 3

(1/ 4) (1/ 4) ( (1 ) 1 (1 ) 1 1 (1 ) 1/ 4 1/ 2) (1/ 4) (1/ 4) x x x x x x x x x + − ≥ − + ≥ + ≥ − ≥ ≥ ≥ Result of input resolution Take linear combination

slide-22
SLIDE 22

Slide 22

Theorem (JNH). Input resolution generates precisely those clauses that are rank 1 cuts.

Logic and cutting planes

1 2 3 1 3 2 3

x x x x x x x ∨ ∨ ∨

1 2 1 3 2 3 2 3 3 3

(1 ) 1 (1 ) 1 1 (1/ 4) (1/ 4) ( (1 ) 1/ 1/ 2) (1/ 4) (1/ 4 4 1 ) x x x x x x x x x x + − ≥ − + ≥ + ≥ − ≥ ≥ ≥ ≥ Result of input resolution Round up

slide-23
SLIDE 23

Slide 23

By generating enough Chvátal cuts, we obtain the convex hull of the 0-1 solutions.

Logic and cutting planes

slide-24
SLIDE 24

Slide 24

By generating enough Chvatal cuts, we obtain the convex hull of the 0-1 solutions.

Logic and cutting planes

Can we obtain the convex hull by generating resolvents?

slide-25
SLIDE 25

Slide 25

By generating enough Chvatal cuts, we obtain the convex hull of the 0-1 solutions.

Logic and cutting planes

Can we obtain the convex hull by generating resolvents? That is, do the prime implicates define the convex hull?

slide-26
SLIDE 26

Slide 26

By generating enough Chvatal cuts, we obtain the convex hull of the 0-1 solutions.

Logic and cutting planes

Can we obtain the convex hull by generating resolvents? That is, do the prime implicates define the convex hull? Not in general. They do, if and only if the underlying set covering problems define convex hulls.

slide-27
SLIDE 27

Slide 27

Theorem (JNH). The prime implicates of a clause set define an integral polytope if and only if all maximal monotone subsets of the prime implicates define an integral polytope.

Logic and cutting planes

monotone = every variable has the same sign in all occurrences. A monotone subset of clauses is a set covering problem (after complementing negated variables).

slide-28
SLIDE 28

Slide 28

Theorem (JNH). The prime implicates of a clause set define an integral polytope if and only if all maximal monotone subsets of the prime implicates define an integral polytope.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

Prime implicates

slide-29
SLIDE 29

Slide 29

Theorem (JNH). The prime implicates of a clause set define an integral polytope if and only if all maximal monotone subsets of the prime implicates define an integral polytope.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 3

x x x x ∨ ∨

1 3 2 3

x x x x ∨ ∨

Prime implicates Maximal monotone subsets

slide-30
SLIDE 30

Slide 30

Theorem (JNH). The prime implicates of a clause set define an integral polytope if and only if all maximal monotone subsets of the prime implicates define an integral polytope.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 3

x x x x ∨ ∨

1 3 2 3

x x x x ∨ ∨

Prime implicates Maximal monotone subsets

1 2 1 3

1 1 x x x x + ≥ + ≥

1 3 2 3

1 (1 ) 1 x x x x + ≥ − + ≥ These systems define integral polytopes

slide-31
SLIDE 31

Slide 31

Theorem (JNH). The prime implicates of a clause set define an integral polytope if and only if all maximal monotone subsets of the prime implicates define an integral polytope.

Logic and cutting planes

1 2 1 3 2 3

x x x x x x ∨ ∨ ∨

1 2 1 3

x x x x ∨ ∨

1 3 2 3

x x x x ∨ ∨

Prime implicates Maximal monotone subsets

1 2 1 3

1 1 x x x x + ≥ + ≥

1 3 2 3

1 (1 ) 1 x x x x + ≥ − + ≥ These systems define integral polytopes

1 2 1 3 2 3

1 1 (1 ) 1 x x x x x x + ≥ + ≥ − + ≥ Therefore this system defines an integral polytope

slide-32
SLIDE 32

Slide 32

Theorem (JNH). The prime implicates of a clause set define an integral polytope if and only if all maximal monotone subsets of the prime implicates define an integral polytope. Generalized by Guenin, and by Nobili & Sassano.

Logic and cutting planes

slide-33
SLIDE 33

Slide 33

Logic of 0-1 Inequalities

slide-34
SLIDE 34

Slide 34

Logic of 0-1 inequalities

0-1 inequalities can be viewed as logical propositions.

slide-35
SLIDE 35

Slide 35

Logic of 0-1 inequalities

0-1 inequalities can be viewed as logical propositions. Can the resolution algorithm be generalized to 0-1 inequalities?

slide-36
SLIDE 36

Slide 36

Logic of 0-1 inequalities

0-1 inequalities can be viewed as logical propositions. Can the resolution algorithm be generalized to 0-1 inequalities?

  • Yes. This results in a logical analog of Chvátal’s theorem.
slide-37
SLIDE 37

Slide 37

Logic of 0-1 inequalities

0-1 inequalities can be viewed as logical propositions. Can the resolution algorithm be generalized to 0-1 inequalities?

  • Yes. This results in a logical analog of Chvátal’s theorem.

Theorem (JNH). Classical resolution + diagonal summation generates all 0-1 prime implicates (up to logical equivalence).

slide-38
SLIDE 38

Slide 38

Logic of 0-1 inequalities

Diagonal summation:

1 2 3 4 1 2 3 4 1 2 3 4 1 2 1 2 3 4 3

5 3 4 2 4 3 4 2 5 2 4 2 5 3 3 4 2 5 5 x x x x x x x x x x x x x x x x x x x + + + ≥ + + + ≥ + + + + + ≥ + + ≥ ≥ +

Each inequality is implied by an inequality in the set to which 0-1 resolution is implied. Diagonal sum

slide-39
SLIDE 39

Slide 39

Logic of 0-1 inequalities

Diagonal summation:

1 2 3 4 1 2 3 4 1 3 4 1 2 4 1 2 3 2 3 4

5 3 4 2 3 4 2 5 4 2 5 3 4 4 2 2 5 3 5 x x x x x x x x x x x x x x x x x x x x + + + ≥ + + + ≥ + + + ≥ + ≥ + + + + + ≥

Each inequality is implied by an inequality in the set to which 0-1 resolution is implied. Diagonal sum

slide-40
SLIDE 40

Slide 40

Logic and Linear Programming

slide-41
SLIDE 41

Slide 41

Logic and linear programming

Theorem: A renamable Horn set of clauses is satisfiable if and

  • nly if it has a unit refutation.

Horn = at most one positive literal per clause Renamable Horn = Horn after complementing some variables. Unit refutation = resolution proof of unsatisfiability in which at least

  • ne parent of each resolvent is a unit clause.
slide-42
SLIDE 42

Slide 42

Logic and linear programming

Theorem: A renamable Horn set of clauses is satisfiable if and

  • nly if it has a unit refutation.

Horn = at most one positive literal per clause Renamable Horn = Horn after complementing some variables. Unit refutation = resolution proof of unsatisfiability in which at least

  • ne parent of each resolvent is a unit clause.

1 1 2 1 3 1 2 3

x x x x x x x x ∨ ∨ ∨ ∨

Horn set

slide-43
SLIDE 43

Slide 43

Logic and linear programming

Theorem: A renamable Horn set of clauses is satisfiable if and

  • nly if it has a unit refutation.

Horn = at most one positive literal per clause Renamable Horn = Horn after complementing some variables. Unit refutation = resolution proof of unsatisfiability in which at least

  • ne parent of each resolvent is a unit clause.

1 1 2 1 3 1 2 3

x x x x x x x x ∨ ∨ ∨ ∨

2 3 1 2 1 1 3 1

x x x x x x x x ∨ ∨ ∨ ∨

Horn set Unit resolution

slide-44
SLIDE 44

Slide 44

Logic and linear programming

Theorem: A renamable Horn set of clauses is satisfiable if and

  • nly if it has a unit refutation.

Horn = at most one positive literal per clause Renamable Horn = Horn after complementing some variables. Unit refutation = resolution proof of unsatisfiability in which at least

  • ne parent of each resolvent is a unit clause.

1 1 2 1 3 1 2 3

x x x x x x x x ∨ ∨ ∨ ∨

2 3 1 2 1 1 3 1

x x x x x x x x ∨ ∨ ∨ ∨

1 1 3 1 2 1 2 3

x x x x x x x x ∨ ∨ ∨ ∨

Horn set Unit resolution Unit resolution

slide-45
SLIDE 45

Slide 45

Logic and linear programming

We don’t know a necessary and sufficient condition for solubility by unit refutation. But we can identify sufficient conditions by generalizing Horn sets. For example, to extended Horn sets, which rely on a rounding property of linear programming.

slide-46
SLIDE 46

Slide 46

Logic and linear programming

Theorem: A satisfiable Horn set can be solved by rounding down a solution of the linear programming relaxation.

slide-47
SLIDE 47

Slide 47

Logic and linear programming

Theorem: A satisfiable Horn set can be solved by rounding down a solution of the linear programming relaxation.

1 1 2 3 2 3 1 2 3

x x x x x x x x x ∨ ∨ ∨ ∨ ∨

Horn set

slide-48
SLIDE 48

Slide 48

Logic and linear programming

Theorem: A satisfiable Horn set can be solved by rounding down a solution of the linear programming relaxation.

1 1 2 3 2 3 1 2 3

x x x x x x x x x ∨ ∨ ∨ ∨ ∨

Horn set

1 1 2 3 2 3 1 2 3

1 (1 ) (1 ) 1 (1 ) (1 ) 1 (1 ) (1 ) 1 1

j

x x x x x x x x x x ≥ − + − + ≥ − + − ≥ − + + − ≥ ≤ ≤

LP relaxation

slide-49
SLIDE 49

Slide 49

Logic and linear programming

Theorem: A satisfiable Horn set can be solved by rounding down a solution of the linear programming relaxation.

1 1 2 3 2 3 1 2 3

x x x x x x x x x ∨ ∨ ∨ ∨ ∨

Horn set

1 1 2 3 2 3 1 2 3

1 (1 ) (1 ) 1 (1 ) (1 ) 1 (1 ) (1 ) 1 1

j

x x x x x x x x x x ≥ − + − + ≥ − + − ≥ − + + − ≥ ≤ ≤

LP relaxation Solution: (x1,x2,x3) = (1,1/2,1/2)

slide-50
SLIDE 50

Slide 50

Logic and linear programming

Theorem: A satisfiable Horn set can be solved by rounding down a solution of the linear programming relaxation.

1 1 2 3 2 3 1 2 3

x x x x x x x x x ∨ ∨ ∨ ∨ ∨

Horn set

1 1 2 3 2 3 1 2 3

1 (1 ) (1 ) 1 (1 ) (1 ) 1 (1 ) (1 ) 1 1

j

x x x x x x x x x x ≥ − + − + ≥ − + − ≥ − + + − ≥ ≤ ≤

LP relaxation Solution: (x1,x2,x3) = (1,1/2,1/2) Round down: (x1,x2,x3) = (1,0,0)

slide-51
SLIDE 51

Slide 51

Logic and linear programming

To generalize this, we use the following: Theorem (Chandrasekaran): If Ax ≥ b has integral components and T is nonsingular such that:

  • T and T−1 are integral
  • Each row of T−1 contains at most one negative entry, namely −1
  • Each row of AT−1 contains at most one negative entry, namely −1

Then if x solves Ax ≥ b, so does

1

T Tx

− 

  

slide-52
SLIDE 52

Slide 52

Logic and linear programming

A clause has the extended star-chain property if it corresponds to a set of edge-disjoint flows into the root of an arborescence and a flow on one additional chain.

1 3 4 5 6 7

x x x x x x ∨ ∨ ∨ ∨ ∨

x1 x4 x2 x3 x5 x6 x7

slide-53
SLIDE 53

Slide 53

Logic and linear programming

A clause set is extended Horn if there is an arborescence for which every clause in the set has the extended star-chain property.

1 3 4 5 6 7

x x x x x x ∨ ∨ ∨ ∨ ∨

x1 x4 x2 x3 x5 x6 x7

slide-54
SLIDE 54

Slide 54

Logic and linear programming

Theorem (Chandru and JNH). A satisfiable extended Horn clause set can be solved by rounding a solution of the LP relaxation as shown:

1 3 4 5 6 7

x x x x x x ∨ ∨ ∨ ∨ ∨

x1 x4 x2 x3 x5 x6 x7 down down up

slide-55
SLIDE 55

Slide 55

Logic and linear programming

  • Corollary. A satisfiable extended Horn clause set can be solved by

assigning values as shown:

1 3 4 5 6 7

x x x x x x ∨ ∨ ∨ ∨ ∨

x1 x4 x2 x3 x5 x6 x7 1

slide-56
SLIDE 56

Slide 56

Logic and linear programming

Theorem (Chandru and JNH). A renamable extended Horn clause is satisfiable if and only if it has no unit refutation.

slide-57
SLIDE 57

Slide 57

Logic and linear programming

Theorem (Chandru and JNH). A renamable extended Horn clause is satisfiable if and only if it has no unit refutation. Theorem (Schlipf, Annexstein, Franco & Swaminathan). These results hold when then incoming chains are not edge disjoint. .

slide-58
SLIDE 58

Slide 58

Logic and linear programming

Theorem (Chandru and JNH). A renamable extended Horn clause is satisfiable if and only if it has no unit refutation. Theorem (Schlipf, Annexstein, Franco & Swaminathan). These results hold when then incoming chains are not edge disjoint. Corollary (Schlipf, Annexstein, Franco & Swaminathan). A one-step lookahead algorithm solves a satisfiable extended Horn problem without knowledge of the arborescence.

slide-59
SLIDE 59

Slide 59

Inference duality

slide-60
SLIDE 60

Slide 60

Inference duality

Consider an optimization problem:

min ( ) f x x D ∈

  • Constraint set

Variable domain

slide-61
SLIDE 61

Slide 61

Inference duality

Consider an optimization problem:

min ( ) f x x D ∈

  • Constraint set

Variable domain An inference dual is:

( )

max ( )

P

v f x v v P , ⇒ ≥ ∈ ∈ ℝ

  • There is a proof P of f(x) ≥ v

from premises in Family of admissible proofs

slide-62
SLIDE 62

Slide 62

Inference duality

Linear programming:

min cx Ax b x ≥ ≥

Inference dual is:

( ) ( )

max

P

v Ax b cx v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • Let Ax ≥ b ⇒ cx ≥ v when uAx ≥ ub

dominates cx ≥ v for some u ≥ 0. dominates = uA ≤ c and ub ≥ v

slide-63
SLIDE 63

Slide 63

Inference duality

Linear programming:

min cx Ax b x ≥ ≥

Inference dual is:

( ) ( )

max

P

v Ax b cx v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • This becomes the classical

LP dual. Let Ax ≥ b ⇒ cx ≥ v when uAx ≥ ub dominates cx ≥ v for some u ≥ 0. dominates = uA ≤ c and ub ≥ v

slide-64
SLIDE 64

Slide 64

Inference duality

Linear programming:

min cx Ax b x ≥ ≥

Inference dual is:

( ) ( )

max

P

v Ax b cx v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • This becomes the classical

LP dual. This is a strong dual because the inference method is complete (Farkas Lemma). Let Ax ≥ b ⇒ cx ≥ v when uAx ≥ ub dominates cx ≥ v for some u ≥ 0. dominates = uA ≤ c and ub ≥ v

slide-65
SLIDE 65

Slide 65

Inference duality

General inequality constraints:

min ( ) ( ) f x g x x S ≥ ∈

Inference dual is:

( ) ( )

max ( ) ( )

P

v g x f x v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • Let g(x) ≥ 0 ⇒ f(x) ≥ v when ug(x) ≥ 0

implies f(x) ≥ v for some u ≥ 0. implies = all x ∈ S satisfying ug(x) ≥ 0 satisfy f(x) ≥ v.

slide-66
SLIDE 66

Slide 66

Inference duality

General inequality constraints:

min ( ) ( ) f x g x x S ≥ ∈

Inference dual is:

( ) ( )

max ( ) ( )

P

v g x f x v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • This becomes the surrogate dual.

Let g(x) ≥ 0 ⇒ f(x) ≥ v when ug(x) ≥ 0 implies f(x) ≥ v for some u ≥ 0. implies = all x ∈ S satisfying ug(x) ≥ 0 satisfy f(x) ≥ v.

slide-67
SLIDE 67

Slide 67

Inference duality

General inequality constraints:

min ( ) ( ) f x g x x S ≥ ∈

Inference dual is:

( ) ( )

max ( ) ( )

P

v g x f x v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • Let g(x) ≥ 0 ⇒ f(x) ≥ v when ug(x) ≥ 0

dominates f(x) ≥ v for some u ≥ 0.

slide-68
SLIDE 68

Slide 68

Inference duality

This becomes the Lagrangean dual Let g(x) ≥ 0 ⇒ f(x) ≥ v when ug(x) ≥ 0 dominates f(x) ≥ v for some u ≥ 0. General inequality constraints:

min ( ) ( ) f x g x x S ≥ ∈

Inference dual is:

( ) ( )

max ( ) ( )

P

v g x f x v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

slide-69
SLIDE 69

Slide 69

Inference duality

Integer linear programming:

min cx Ax b x S ≥ ∈

Inference dual is: Let Ax ≥ b ⇒ cx ≥ v when h(Ax) ≥ h(b) dominates cx ≥ v for some subadditive and homogeneous function h.

( ) ( )

max

P

v Ax b cx v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

slide-70
SLIDE 70

Slide 70

Inference duality

Integer linear programming:

min cx Ax b x S ≥ ∈

Inference dual is:

( ) ( )

max

P

v Ax b cx v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

  • This becomes the subadditive dual.

Let Ax ≥ b ⇒ cx ≥ v when h(Ax) ≥ h(b) dominates cx ≥ v for some subadditive and homogeneous function h.

slide-71
SLIDE 71

Slide 71

Inference duality

Integer linear programming:

min cx Ax b x S ≥ ∈

Inference dual is: This becomes the subadditive dual. This is a strong dual because the inference method is complete, due to Chvátal’s theorem. Appropriate Chvátal function is subadditive and can found by Gomory’s cutting plane method. Let Ax ≥ b ⇒ cx ≥ v when h(Ax) ≥ h(b) dominates cx ≥ v for some subadditive and homogeneous function h.

( ) ( )

max

P

v Ax b cx v v P , ≥ ⇒ ≥ ∈ ∈ ℝ

slide-72
SLIDE 72

Slide 72

Inference duality

Inference duality permits a generalization of Benders decomposition.

slide-73
SLIDE 73

Slide 73

Inference duality

Inference duality permits a generalization of Benders decomposition. In classical Benders, a Benders cut is a linear combination

  • f the subproblem constraints using dual multipliers.
slide-74
SLIDE 74

Slide 74

Inference duality

Inference duality permits a generalization of Benders decomposition. In classical Benders, a Benders cut is a linear combination

  • f the subproblem constraints using dual multipliers.

The Benders cut rules out solutions of the master problem for which the proof of optimality in the subproblem is still valid.

slide-75
SLIDE 75

Slide 75

Inference duality

Inference duality permits a generalization of Benders decomposition. In classical Benders, a Benders cut is a linear combination

  • f the subproblem constraints using dual multipliers.

The Benders cut rules out solutions of the master problem for which the proof of optimality in the subproblem is still valid. For general optimization, a Benders cut does the same, but the proof of optimality is a solution of the general inference dual.

slide-76
SLIDE 76

Slide 76

Inference duality

Inference duality permits a generalization of Benders decomposition. In classical Benders, a Benders cut is a linear combination

  • f the subproblem constraints using dual multipliers.

The Benders cut rules out solutions of the master problem for which the proof of optimality in the subproblem is still valid. For general optimization, a Benders cut does the same, but the proof of optimality is a solution of the general inference dual. This has led to orders-of-magnitude speedups in solution of scheduling and other problems by logic-based Benders decomposition.

slide-77
SLIDE 77

Slide 77

Constraint Programming

slide-78
SLIDE 78

Slide 78

Constraint programming uses logical inference to reduce backtracking.

Constraint programming

slide-79
SLIDE 79

Slide 79

Constraint programming uses logical inference to reduce backtracking. Inference takes the form of consistency maintenance.

Constraint programming

slide-80
SLIDE 80

Slide 80

Constraint programming uses logical inference to reduce backtracking. Inference takes the form of consistency maintenance. A constraint set S containing variables x1, …, xn is k-consistent if

  • for any subject of variables x1, …, xj, xj+1
  • and any partial assignment (x1, …, xj) = (v1, …, vj) that violates no

constraint in S, there is a vj+1 such that (x1, …, xj+1) = (v1, …, vj+1) violates no constraint in S.

Constraint programming

slide-81
SLIDE 81

Slide 81

Constraint programming uses logical inference to reduce backtracking. Inference takes the form of consistency maintenance. A constraint set S containing variables x1, …, xn is k-consistent if

  • for any subject of variables x1, …, xj, xj+1
  • and any partial assignment (x1, …, xj) = (v1, …, vj) that violates no

constraint in S, there is a vj+1 such that (x1, …, xj+1) = (v1, …, vj+1) violates no constraint in S. S is strongly k-consistent if it is j-consistent for j = 1, …, k.

Constraint programming

slide-82
SLIDE 82

Slide 82

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

slide-83
SLIDE 83

Slide 83

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

1 2 3 1 2 4 3 5 4 5 6

x x x x x x x x x x x ∨ ∨ ∨ ∨ ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Dependency graph

slide-84
SLIDE 84

Slide 84

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

1 2 3 1 2 4 3 5 4 5 6

x x x x x x x x x x x ∨ ∨ ∨ ∨ ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

slide-85
SLIDE 85

Slide 85

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

1 2 3 1 2 4 3 5 4 5 6

x x x x x x x x x x x ∨ ∨ ∨ ∨ ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph We will show that this is strongly 3-consistent. We can therefore solve it without backtracking

slide-86
SLIDE 86

Slide 86

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

1 2 3 1 2 4 3 5 4 5 6

x x x x x x x x x x x ∨ ∨ ∨ ∨ ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-87
SLIDE 87

Slide 87

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

2 4 3 5 4 5 6

x x x x x x x ∨ ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-88
SLIDE 88

Slide 88

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

2 4 3 5 4 5 6

x x x x x x x ∨ ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-89
SLIDE 89

Slide 89

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

3 5 4 5 6

x x x x x ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-90
SLIDE 90

Slide 90

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

3 5 4 5 6

x x x x x ∨ ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-91
SLIDE 91

Slide 91

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

5 4 5 6

x x x x ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-92
SLIDE 92

Slide 92

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

5 4 5 6

x x x x ∨ ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-93
SLIDE 93

Slide 93

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

5 5 6

x x x ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

x x x x x x

slide-94
SLIDE 94

Slide 94

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

5 5 6

x x x ∨

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

1 x x x x x x

slide-95
SLIDE 95

Slide 95

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

6

x

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

1 x x x x x x

slide-96
SLIDE 96

Slide 96

Theorem (Freuder). If constraint set S is strongly k-consistent, and its dependency graph has width less than k (with respect to the branching order), then S can be solved without backtracking.

Constraint programming

6

x

x1 x2 x4 x3 x6 x5

Width = max in-degree = 2 Dependency graph

1 2 3 4 5 6

1 1 x x x x x x

slide-97
SLIDE 97

Slide 97

  • Theorem. Application of k-resolution makes a clause set

strongly k-consistent. k-resolution = generate only resolvents with fewer than k literals.

Constraint programming

1 2 3 1 2 4 3 5 4 5 6

x x x x x x x x x x x ∨ ∨ ∨ ∨ ∨ ∨ ∨

All resolvents have 3 or more literals. Clause set is therefore strongly 3-consistent, as claimed.

slide-98
SLIDE 98

Slide 98

Constraint programmers are primarily concerned with domain consistency.

Constraint programming

slide-99
SLIDE 99

Slide 99

Constraint programmers are primarily concerned with domain consistency. A constraint set S is domain consistent if for any given variable xj and any value vj in its domain, xj = vj in some solution of S.

Constraint programming

slide-100
SLIDE 100

Slide 100

Constraint programmers are primarily concerned with domain consistency. A constraint set S is domain consistent if for any given variable xj and any value vj in its domain, xj = vj in some solution of S. Domain consistency = generalized arc consistency = hyperarc consistency.

Constraint programming

slide-101
SLIDE 101

Slide 101

Constraint programmers are primarily concerned with domain consistency. A constraint set S is domain consistent if for any given variable xj and any value vj in its domain, xj = vj in some solution of S. Domain consistency = generalized arc consistency = hyperarc consistency. Filtering algorithms that achieve or approximate domain consistency have been devised for a wide variety of constraints.

Constraint programming

slide-102
SLIDE 102

Slide 102

Constraint programmers are primarily concerned with domain consistency. A constraint set S is domain consistent if for any given variable xj and any value vj in its domain, xj = vj in some solution of S. Domain consistency = generalized arc consistency = hyperarc consistency. Filtering algorithms that achieve or approximate domain consistency have been devised for a wide variety of constraints. The resolution algorithm achieves domain consistency for clause sets.

Constraint programming

slide-103
SLIDE 103

Slide 103

Constraint programmers are primarily concerned with domain consistency. A constraint set S is domain consistent if for any given variable xj and any value vj in its domain, xj = vj in some solution of S. Domain consistency = generalized arc consistency = hyperarc consistency. Filtering algorithms that achieve or approximate domain consistency have been devised for a wide variety of constraints. The resolution algorithm achieves domain consistency for clause sets. Filtering (= logical inference) is the workhorse of constraint programming, as solving relaxations is the workhorse of integer programming.

Constraint programming

slide-104
SLIDE 104

Slide 104

Good Logic Models

slide-105
SLIDE 105

Slide 105

Boolean models should be reformulated before solution to achieve two goals:

Good logic models

slide-106
SLIDE 106

Slide 106

Boolean models should be reformulated before solution to achieve two goals:

  • A high degree of consistency (in the constraint programming

sense)

  • We talked about resolution as a means of achieving

consistency.

Good logic models

slide-107
SLIDE 107

Slide 107

Boolean models should be reformulated before solution to achieve two goals:

  • A high degree of consistency (in the constraint programming

sense)

  • We talked about resolution as a means of achieving

consistency for boolean models.

  • A tight linear relaxation.
  • We talked about logic and cutting planes.
  • Logic constraints can also be given convex hull

formulations…

Good logic models

slide-108
SLIDE 108

Slide 108

Example: cardinality rules We have 3 possible sites for factories and 3 possible products. Rule 1: If at least 2 plants are built, then at least 2 products should be made. Rule 2. Only 1 product should be made, unless plants are built at both sites 1 and 2.

Good logic models

1 2 3 1 2 3

( 2) ( 2) x x x y y y + + ≥ ⇒ + + ≥

1 2 3 1 2

( 2) ( 2) y y y x x + + ≥ ⇒ + ≥

slide-109
SLIDE 109

Slide 109

Good logic models

1 2 3 1 2 3

( 2) ( 2) x x x y y y + + ≥ ⇒ + + ≥

Inequality form:

1 2 3 1 2 3 1 2 1 2 3 1 3 1 2 3 2 3 1 2 3 1 2 3 1 2 1 2 3 1 3 1 2 3 2 3

2( ) 2( ) 2 2( ) 2 2( ) 2 2( ) 2 2( ) 1 2( ) 1 2( ) 1 x x x y y y x x y y y x x y y y x x y y y x x x y y x x x y y x x x y y − + + + + + ≥ − − + + + + ≥ − − + + + + ≥ − − + + + + ≥ − − − − + + ≥ − − − − + + ≥ − − − − + + ≥ −

1 2 1 2 1 2 1 3 1 2 2 3 1 3 1 2 1 3 1 3 1 3 2 3 2 3 1 2 2 3 1 3 2 3 2 3

1 1 1 1 1 1 1 1 1 x x y y x x y y x x y y x x y y x x y y x x y y x x y y x x y y x x y y − − + + ≥ − − − + + ≥ − − − + + ≥ − − − + + ≥ − − − + + ≥ − − − + + ≥ − − − + + ≥ − − − + + ≥ − − − + + ≥ −

slide-110
SLIDE 110

Slide 110

Good logic models

Inequality form:

1 2 3 1 1 2 1 1 3 1 2 3 1 1 2 3 2 1 2 1 1 3 1 2 3 1

2( ) 3 2( ) 1 2( ) 1 2( ) 1 2( ) 3 2( ) 1 2( ) 1 2( ) 1 y y y x y y x y y x y y x y y y x y y x y y x y y x − + + + ≥ − − + + ≥ − − + + ≥ − − + + ≥ − − + + + ≥ − − + + ≥ − − + + ≥ − − + + ≥ −

1 2 3 1 2

( 2) ( 2) y y y x x + + ≥ ⇒ + ≥

slide-111
SLIDE 111

Slide 111

Good logic models

Theorem (Yan and JNH): These describe the convex hull of the feasible set. Generalized by Balas, Bockmayr, Pisaruk & Wolsey.