concise decision diagrams for branching and storing … · 2017. 9. 5. · from trees to diagrams....
TRANSCRIPT
-
CONCISE DECISION DIAGRAMS FOR
BRANCHING AND STORING
NEAR-OPTIMAL SOLUTIONS
Thiago Serra John Hooker
Carnegie Mellon University
MOPTA 2016
-
IF FINDING ONE IS EASY, WHAT ABOUT ALL?
-
WE CARE ABOUT THAT EVEN IN FICTION
Motivation
-
4
Poké Ball Belt Bag
PresenterPresentation Noteshttps://www.youtube.com/watch?v=3xTyohQhZmI
-
ONE OPTIMAL SOLUTION MAY NOT BE ENOUGH
(Real) Motivation
-
6
Alternative courses of action
-
7
Alternative courses of action
How much is left on the table?
-
8
Truthful bidding in combinatorial auctions
PresenterPresentation Noteshttp://www.picgifs.com/disney-gifs/pinocchio/http://blog.winspireme.com/5-reasons-not-to-hire-a-benefit-auctioneer
-
9
Truthful bidding in combinatorial auctions
Prices defined by solving problem many times
PresenterPresentation Noteshttp://www.picgifs.com/disney-gifs/pinocchio/http://blog.winspireme.com/5-reasons-not-to-hire-a-benefit-auctioneer
-
10
Solvers are already doing that
PresenterPresentation Noteshttp://yetanothermathprogrammingconsultant.blogspot.com/2016/01/finding-all-optimal-lp-solutions-using.html
-
11
Solvers are already doing that
Where is my Poké Belt?
PresenterPresentation Noteshttp://yetanothermathprogrammingconsultant.blogspot.com/2016/01/finding-all-optimal-lp-solutions-using.html
-
USING AND RELAXING DECISION DIAGRAMS
Our approach
-
13
From trees to diagrams Too many solutions,
not much information
X1
X2
X3
Variable for branching:
0-arc
1-arc
Branching tree
-
14
From trees to diagrams Too many solutions,
not much information
X1
X2
X3
Variable for branching:
0-arc
1-arc
r
t Branching tree Decision diagram
-
15
From trees to diagrams Anything other than a path gets smaller
Branching tree Decision diagram
-
16
From trees to diagrams Anything other than a path gets smaller
Branching tree Decision diagram
-
17
From trees to diagrams Anything other than a path gets smaller
Solutions ≡ Leaves → Solutions ≡ Paths
-
18
From trees to diagrams Anything other than a path gets smaller
Solutions ≡ Leaves → Solutions ≡ Paths
-
19
From trees to diagrams Anything other than a path gets smaller
Solutions ≡ Leaves → Solutions ≡ Paths
Optimal solutions ≡ Shortest (Longest) paths
-
20
Sound relaxations Exact for Δ–optimal solutions
Decision diagram
3
2
3
Weights of 1-arcs:
-
21
Sound relaxations Exact for Δ–optimal solutions
Min problem: optimal value z* to z* + Δ
Decision diagram (z* = 3 Δ = 3)
3
2
3
Weights of 1-arcs:
-
22
Sound relaxations Exact for Δ–optimal solutions
Min problem: optimal value z* to z* + Δ
Decision diagram Sound relaxation (z* = 3 Δ = 3)
3
2
3
Weights of 1-arcs:
-
23
Sound relaxations Exact for Δ–optimal solutions
Min problem: optimal value z* to z* + Δ
Decision diagram Sound relaxation (z* = 3 Δ = 3)
3
2
3
Weights of 1-arcs:
-
24
Sound relaxations Decision diagram ≡ Paths within a budget
Decision diagram Sound relaxation (z* = 3 Δ = 3)
3
2
3
-
25
Sound relaxations Decision diagram ≡ Paths within a budget
Some arcs forbidden after worse choices
Decision diagram Sound relaxation (z* = 3 Δ = 3)
3
2
3
-
26
How it works Reduction
Merges nodes with same children
-
27
How it works Reduction
Merges nodes with same children
-
28
How it works Reduction
Merges nodes with same children
-
29
How it works Reduction
Merges nodes with same children
Converges to minimum size diagram
-
30
How it works Sound-reduction
Redirects incoming arcs from node u to v
v u
-
31
How it works Sound-reduction
Redirects incoming arcs from node u to v
v u v u
-
32
How it works Sound-reduction
Redirects incoming arcs from node u to v
(i) Node v has a superset of completions
v u v u
-
33
How it works Sound-reduction
Redirects incoming arcs from node u to v
(ii) Min cost r-u path
+ Min cost extra v-t path
> z* + Δ
(i) Node v has a superset of completions
v u v u
-
34
How it works Sound-reduction
4
1
1
2
2
z* = 1 Δ = 6
v1 u1
v2 q u2
v3 u3
r
t
-
35
How it works Sound-reduction
4
1
1
2
2
v1 u1
v2 q u2
v3 u3
z* = 1 Δ = 6
Min r-u2 path: 6
+ Min extra q-t path: 2
> 7
r
t
-
36
How it works Sound-reduction
4
1
1
2
2
v1 u1
v2 q
v3 u3
z* = 1 Δ = 6
Min r-u2 path: 6
+ Min extra q-t path: 2
> 7
r
t
-
37
How it works Sound-reduction
4
1
1
2
2
v1 u1
v2 q u2
v3 u3
z* = 1 Δ = 6
Min r-u2 path: 6
+ Min extra v2-t path: 2
> 7
r
t
-
38
How it works Sound-reduction
4
1
1
2
2
v1 u1
v2 q
v3 u3
z* = 1 Δ = 6
Min r-u2 path: 6
+ Min extra v2-t path: 2
> 7
r
t
-
39
How it works Sound-reduction
4
1
1
2
2
v1 u1
v2 q u2
v3 u3
z* = 1 Δ = 6
Min r-u1 path: 5
+ Min extra v1-t path: 3
> 7
r
t
-
40
How it works Sound-reduction
4
1
1
2
2
v1
v2 q
v3 u3
z* = 1 Δ = 6
Min r-u1 path: 5
+ Min extra v1-t path: 3
> 7
r
t
-
41
How it works Sound-reduction
Same children → Extra paths are costly
4
1
1
2
2
v1
v2 q
v3 u3
z* = 1 Δ = 6 r
t
-
42
How it works Sound-reduction
Bottom-up comparison of completions
4
1
1
2
2
v1 u1
v2 q u2
v3 u3 u3 → Min extra v3-t path: 2
r
t
-
43
How it works Sound-reduction
Bottom-up comparison of completions
4
1
1
2
2
v1 u1
v2 q u2
v3 u3 u3 → Min extra v3-t path: 2
r
t
u2 → Min extra v2-t path: 2
-
44
How it works Sound-reduction
Bottom-up comparison of completions
4
1
1
2
2
v1 u1
v2 q u2
v3 u3 u3 → Min extra v3-t path: 2
r
t
u2 → Min extra v2-t path: 2
u1 → Min extra v1-t path: 3
-
45
How well it works Small problems
-
46
How well it works Small problems
-
47
How well it works Small problems
-
48
How well it works Large problems
-
49
How well it works Large problems
-
50
How well it works Large problems
-
51
What we learned Sound relaxations disguise suboptimal solutions
-
52
What we learned Sound relaxations disguise suboptimal solutions
If Δ=0, there are no deviations
and no forbidden arcs
-
53
What we learned Sound relaxations disguise suboptimal solutions
If Δ=0, there are no deviations
and no forbidden arcs
When sound-reducing u into v,
min r-u path > min r-v path
-
54
What we learned Sound-reduction converges to minimum diagram
-
55
What we learned Sound-reduction converges to minimum diagram
Equivalent diagrams → Same completion sets
-
56
What we learned Sound-reduction converges to minimum diagram
Equivalent diagrams → Same completion sets
{φ} {1} {0,1}
-
57
What we learned Sound-reduction converges to minimum diagram
Sound diagrams → Essential completion sets
{00,10} {00,01}
v1 u1
v2 q u2
v3 u3
r
t
{000,010} {100,101}
-
58
What we learned What if the diagram is exact for [z*, z*+ Δ]?
-
59
What we learned What if the diagram is exact for [z*, z*+ Δ]?
Decision diagram Generalized sound (z* = 1 Δ = 0) relaxation
1
1
-
60
What we learned What if the diagram is exact for [z*, z*+ Δ]?
Decision diagram Generalized sound (z* = 1 Δ = 0) relaxation
1
1
-
61
What we learned What if the diagram is exact for [z*, z*+ Δ]?
Generalizing the relaxation makes it NP-hard
Decision diagram Generalized sound (z* = 1 Δ = 0) relaxation
1
1
-
62
What we learned What if we approximate or go heuristic?
-
63
What we learned What if we approximate or go heuristic?
-
64
What we learned What if we approximate or go heuristic?
-
65
What we learned What if we approximate or go heuristic?
Every step may be co-NP-complete
-
66
What comes next Branch less often
-
67
What comes next Branch less often
We are still generating all tree nodes
-
68
What comes next Branch less often
We are still generating all tree nodes
-
69
What comes next Identify nodes with equivalent states
-
70
What comes next Identify nodes with equivalent states
-
71
What comes next Identify nodes with equivalent states
x1 = 0 x1 = 1
-
72
What comes next Identify nodes with equivalent states
x1 = 0 x1 = 1
x2 = 0 x2 = 0 x2 = 1 x2 = 1
-
73
What comes next Identify nodes with equivalent states
x1 = 0 x1 = 1
x2 = 0 x2 = 0 x2 = 1 x2 = 1
-
74
What comes next Identify nodes with equivalent states
Same RHS → Same completions
-
75
What comes next Identify nodes with equivalent states
Same RHS → Same completions
Saturated constraints can be ignored
-
76
What comes next Identify nodes with equivalent states
Resulting diagram may be a relaxation
-
77
What comes next Identify nodes with equivalent states
Resulting diagram may be a relaxation
z* = 7, Δ = 1
-
78
What comes next Identify nodes with equivalent states
Resulting diagram may be a relaxation
z* = 7, Δ = 1
r
5 p1 p2 6
-
79
What comes next Identify nodes with equivalent states
Resulting diagram may be a relaxation
z* = 7, Δ = 1
r
5 p1 p2 6
2 s1 s2 3 t
-
80
What comes next Identify nodes with equivalent states
Resulting diagram may be a relaxation
z* = 7, Δ = 1
c([p1 s1]) = 7
c([p1 s2]) = 8
c([p2 s1]) = 8
c([p2 s2]) = 9
r
5 p1 p2 6
2 s1 s2 3 t
-
81
How far we are Small problems
-
82
How far we are Large problems
82
-
DECISION DIAGRAMS SAVE SPACE
Takeaway 1
-
RELAXED BRANCHING DOES LESS WORK
Takeaway 2
-
QUESTIONS?
Concise Decision Diagrams for Branching and Storing �Near-Optimal SolutionsIf finding one is easy,�what about all?We care about that�even in fictionSlide Number 4One optimal solution�MAY not BE enough Using and relaxing decision diagramsFrom trees to diagramsFrom trees to diagramsFrom trees to diagramsFrom trees to diagramsFrom trees to diagramsFrom trees to diagramsFrom trees to diagramsSound relaxationsSound relaxationsSound relaxationsSound relaxationsSound relaxationsSound relaxationsHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow it worksHow well it worksHow well it worksHow well it worksHow well it worksHow well it worksHow well it worksWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat we learnedWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextWhat comes nextHow far we areHow far we areDecision diagrams SAVE SPACERelaxed branching Does less WORKQuestions?