Combining Models and Algorithms - PowerPoint PPT Presentation

1 / 62
About This Presentation
Title:

Combining Models and Algorithms

Description:

Combining Models and Algorithms - from Alchemy to Cookery. 2. Divide and Conquer ... Solver for each Subproblem. Combine Solvers. 3. Architecture. Conceptual ... – PowerPoint PPT presentation

Number of Views:39
Avg rating:3.0/5.0
Slides: 63
Provided by: mgw4
Category:

less

Transcript and Presenter's Notes

Title: Combining Models and Algorithms


1
Combining Models and Algorithms
  • - from Alchemy to Cookery

2
Divide and Conquer
  • Decompose Problem
  • Devise Solver for each Subproblem
  • Combine Solvers

3
Architecture
PhD
Solver Platform
4
Overview
  • Two Example Problems
  • Steps from Conceptual Model to Design Model
  • Schemas for Subproblem Interaction
  • Transformations
  • Design Model Requirements

5
Construction Scheduling
6
Construction Scheduling with Maintenance
Constraints
  • No resource is used more than a fixed time limit
    without maintenance
  • No more than a fixed number of resources are in
    maintenance at the same time

7
Construction Scheduling Complexity Results
  • Resource problem Polynomial
  • (maximum flow of minimum cost)
  • Resource problem with maintenance NP-hard
  • (multiprocessor scheduling problem)

8
Construction Scheduling
  • Decomposition
  • assign resources to tasks
  • schedule resource maintenance
  • Hybridisation
  • pass maintenance intervals to (B)
  • report success or failure to (A)
  • (A) after failure, extend duration of each task
    by one maintenance interval

9
Logistics with Depots
10
Logistics with Depots
  • Collection and delivery time windows
  • Vehicle capacity data
  • Travel time data
  • Vehicle load/unload time data
  • Driver shift data
  • Minimise cost

11
Logistics with Depots
  • Decomposition
  • (A) consignment routing
  • (B) load consolidation
  • vehicle routing
  • inter-depot consolidation
  • vehicle assignment
  • driver allocation
  • Hybridisation
  • route for consignment - to (B)
  • consolidate with other consignments, cost - to
    (A)
  • (A) choose cheapest alternative - to (B)
  • (B) optimise consolidation for all consignments

12
Overview
  • Two Example Problems
  • Steps from Conceptual Model to Design Model
  • Schemas for Subproblem Interaction
  • Transformations
  • Design Model Requirements

13
Steps to Design Model
  • Decompose
  • Transform
  • Add Inference
  • Specify Search
  • Specify Subproblem Interaction

14
A Toy Example
problem1 - c1(X,Y), c2(Y,Z), c3(Z,X), c4(X,U,
V).
c2
Y
Z
c1
c3
X
U
V
c4
15
Toy Example Decomposition
sub_p
problem - sub_p(X), sub_q(X). sub_p(X)
- c1(X,Y), c2(Y,Z), c3(Z,X). sub_q(X)
- c4(X,U,V).
c2
Y
Z
c1
c3
X
U
V
c4
sub_q
16
Toy Example Transformation

sub_p
problem - sub_p(X), sub_q(X). sub_p(X)
- c1(X,Y), c2(Y,Z), c3(Z,X). sub_q(X)
- c5(T,X), c6(T,U), c7(T,V).
c2
Y
Z
c1
c3
X
c5
T
c6
c7
U
V
sub_q
17
Toy Example Inference
problem - sub_p(X), sub_q(X). sub_p(X) -
X,Y,Z1..10, infer( c1(X,Y) ,fc) , infer(
c2(Y,Z) ,fc) , infer( c3(Z,X) ,fc) . sub_q(X)
- X,U,V1..10, infer( c5(T,X) ,fc) ,
infer( c6(T,U) ,ac) , infer( c7(T,V) ,ac) .
sub_p
c2fc
Y
Z
c1fc
c3fc
X
c5fc
T
c6ac
c7ac
U
V
sub_q
18
Toy Example Search
problem - sub_p(X),sub_q(X). sub_p(X) -
X,Y,Z1..10, infer( c1(X,Y) ,fc) , infer(
c2(Y,Z) ,fc) , infer( c3(Z,X) ,fc), label(X),
check(Y) . sub_q(X) - X,U,V1..10, infer(
c5(T,X) ,fc) , infer( c6(T,U) ,ac) , infer(
c7(T,V) ,ac) .
19
Steps to Design ModelConstruction Scheduling
  • Decompose
  • Assign resources to tasks
  • Schedule resource maintenance
  • Transform
  • Introduce assignment booleans
  • Add Inference
  • Optimise linear relaxation
  • FD propagation
  • Specify Search
  • MIP
  • Partially order maintenance tasks

20
Steps to Design ModelLogistics with Depots
  • Decompose
  • Consignment routing
  • Load consolidation
  • Transform
  • Introduce minimisation of routes per collection
    point
  • Add Inference
  • Interval consistency
  • Specify Search
  • BB interleaved with consignment routing final
    BB

21
Overview
  • Two Example Problems
  • Steps from Conceptual Model to Design Model
  • Schemas for Subproblem Interaction
  • Transformations
  • Design Model Requirements

22
Subproblem Interaction Direct
Subproblems solved concurrently
23
Subproblem Interaction Via Search Agent
sub_p
Search agent alternates with subproblem solvers
global search agent
sub_q
24
Subproblem Interaction Via Intermediates
Constraint store is blackboard forsubproblem
solvers
sub_p
global search agent
sub_q
constraint store
sub_r
25
Subproblem Composition
problem
26
Subproblem Interaction What is Communicated?
  • Perfect Relaxation
  • Via Search Agent
  • Via Intermediates
  • Direct

27
Perfect Relaxation - A Toy Example
W
c3
c2
problem1 - c1(X,Y), c2(Y,W), c3(W,Z), c4(Z,X)
, c5(X,U,V).
Z
Y
c4
c1
X
U
V
c5
Naïve worst-case complexity o(d6)
28
Perfect Relaxation No Subproblem Interaction!
problem1 - sub_1(X), sub_4(X). sub_1(X)
- sub_2(X,W), sub_3(W,X). sub_2(X,W)
- c1(X,Y),c2(Y,W). sub_3(W,X) - c3(W,Z),
c4(Z,X). sub_4(X) - c5(X,U,V).
Naïve worst-case complexity o(d3)
29
Subproblem Interaction What is Communicated?
  • Perfect Relaxation
  • set of solutions
  • Via Search Agent
  • Via Intermediates
  • Direct

30
Reporting Success or Failure
sub_p
search agent
assignment
sub_q
NB Search method influences communication
31
Reporting Cost
sub_p
search agent
assignment
sub_q
32
Returning Value Choice Heuristics
sub_p
Example Limited Discrepancy Search
search agent
assignment
sub_q
33
Returning Variable Choice Heuristics
sub_p
search agent
assignment
Tree Search
sub_q
34
Variable Choice Heuristics Updating the
Meta-Data
sub_p
assignment
result
search agent
Constraint Names Scopes
result
sub_q
assignment
35
Subproblem Interaction What is Communicated?
  • Perfect Relaxation
  • set of solutions
  • Via Search Agent
  • assignment/result/constraint scopes
  • Via Intermediates
  • Direct

36
Info Communicated with Intermediates
sub_p
search agent
sub_q
constraint store
sub_r
NB Search method influences communication
37
Info Communicated with Intermediate Repair
Search
38
Info Communicated with Intermediate
Incremental Search
sub_p
fd
search agent
finite domains
assignment
fd
39
Info Communicated with FD Intermediate
sub_p MAC
fd
search agent
finite domains
assignment
fd
40
Deleteff
sub_p
search agent
finite domains
sub_q
sub_r
constraint graph
41
Search by Adding Constraints
sub_p
search agent
finite domains
sub_q
constraint
sub_r
constraint graph
newsub
42
Propagation by Adding Constraints
sub_p
search agent
finite domains
sub_q
sub_r
constraint graph
43
Info Communicated with Linear Intermediate
44
Info Communicated with Linear Intermediate
linear constraint solver
linear constraint
sub_p
assignment
45
Combining Solvers - Probing
sub_p
alternative constraints
variablelabels
conflicts
searchagent
assignment
linearconstraintsolver
sub_q
linear constraint
46
Combining Solvers FD and Linear
sub_p
finite domains
search agent
sub_q
sub_r
47
Subproblem Interaction What is Communicated?
  • Perfect Relaxation
  • set of solutions
  • Via Search Agent
  • assignment/result/constraint scopes
  • Via Intermediates
  • assignment/result/ constraint scopes/
  • constraints/conflict
  • Direct

48
Communicating Infeasible Assignments
Relaxed Problem
Full Problem
assignment
success/failure
Solve relaxed problem
Extend relaxed solution to a solution to the
full problem
49
Communicating Infeasible Assignments -
Construction Scheduling
assign resources to tasks
schedule resource maintenance
assignment
success/failure
On failure, add one maintenance periodto each
task, and solve again
50
Communicating Infeasible Assignments -
Construction Scheduling
create fdconstraints
assignment
finite domains
sub_p
sub_q
sub_r
linear constraint solver
search agent
createlinearconstraints
failure
51
Communicating Infeasible Assignments
Relaxed Problem
Full Problem
assignment
constraint
Search for a solution
Find violated constraints
Constraint always holds for the full problem
52
Communicating Infeasible Assignments Via an
Intermediate
search agent
assignment
sub_p
constraint store
constraint
Constraint posted at root of search tree
53
Communicating Infeasible Assignments Via a
Linear Solver
sub_q
linear constraint solver
linear constraints
sub_r
search agent
assignment
variable labels
54
Communicating Tentative Assignments
Partial Problem
Full Problem
assignment
constraint
Generate a solution
Use assignment as a search heuristic
Constraint only holds below current node in
search tree
55
Communicating Tentative Assignments - Probing
assignmentconflicts
variablelabels
sub_q
constraints
sub_p
finite domains
searchagent
linearconstraintsolver
constraints
56
Communicating Assignments and Costs
sub_p
sub_q
assignment
cost
Search for a feasible assignment
Evaluate cost
Local or Constructive Search
57
Logistics with Depots
consignmentrouting
loadconsolidation
assignment
cost
Propose assignment
Evaluate cost
58
Logistics with Depots
tentative label
search consignmentrouting
variablelabels
search loadconsolidation
cost
finitedomains
chosen label
59
Local Search Under Constraints
Sub Problem
Full Problem
assignment
cost
Find a feasible neighbour
Calculate its cost bound
Skeleton and Flesh
60
Local Search Under Constraints Workforce
Scheduling
createMIPconstraints
sub_p
assignment
search engineersrouting
linearconstraints
search allocate tasks to engineers
cost
variablelabels
61
Lagrangian Relaxation
Main Problem With Soft Constraints
Sub Soft Constraints
assignment
cost function
Evaluate violations of soft constraints
Search for a solution
Aim Find cost function such that optimal
solution of relaxed problem is optimal solution
of full problem
62
Lagrangian Relaxation Interdependence of
Subproblems
  • Aim only possible if Main problem has necessary
    properties
  • Termination of iteration requires further
    properties of Main
  • Sub only makes sense for solving Main
  • Sub cannot be tackled independently of Main

63
Lagrangian Relaxation
assignment
Remainder Of Problem
64
Lagrangian Relaxation
lagrangian relaxation
hard constraints
linear constraints
soft constraints
assignment
Remainder Of Problem
For cookery treat as one solver
65
Column Generation
Slave Problem
Master Problem
assignment
cost
Use assignment to improve previous solutions
Search for solutions under cost constraint
Done when no admissible solutions can be found
66
Column Generation Interdependence of Subproblems
  • Decomposition only makes sense for column
    generation
  • Master problem solution is a linear combination
    of slave problem solutions
  • Slave problem can be handled independently of
    master

67
Column Generation Construction Scheduling
find optimal combination for all resources
find sequence of activities for a resource
68
Column Generation
linear constraints
master constraints
sub_p
dual costs
new columns
column generator
cost
slave constraints
slave problem
assignment
Still Alchemy!
69
Subproblem Interaction What is Communicated?
  • Perfect Relaxation
  • set of solutions
  • Via Search Agent
  • assignment/result/constraint scopes
  • Via Intermediates
  • assignment/result/ constraint scopes/
  • constraints/conflict
  • Direct
  • assignment/result/ constraint scopes/
  • constraints/conflict
  • transformed assignments/constraints

70
Overview
  • Two Example Problems
  • Steps from Conceptual Model to Design Model
  • Schemas for subproblem interaction
  • Transformations
  • Design Model Requirements

71
Steps to Design Model
  • Decompose
  • Transform
  • Infer
  • Search

72
Transformations
  • N-ary to Binary
  • CSP -gt MIP
  • CSP Dual
  • Linear Dual

73
Decomposition and Transformation
sub_q
sub_p
Transformation
t_sub_p
???
74
N-ary to Binary
sub_n
Variables remain Constraints changed New
variables added
N-ary to binary
Alchemy New constraints and new variables
exported
sub_2
Cookery Only old variables exported
75
CSP to MIP
  • Numeric variables remain
  • Constraints reified
  • Boolean variables added
  • Symbolic values mapped to numeric

csp_p
CSP to MIP
Alchemy New constraints, new variables, and new
values exported
mip_p
Cookery Only old variables exported. New numeric
values automatically mapped to symbolic
76
CSP Dual
sub
Variables changed Constraints changed
CSP Dual
Alchemy New constraints and new variables
exported
dual_sub
Cookery Exported information automatically
undualised!
77
Linear Dual
sub
This dual is usually hidden Within the linear
solver.
Alchemy Export Shadow Prices And Reduced Costs
Linear Dual
dual_sub
Cookery Hide dual info. inside specialised agents
78
Overview
  • Two Example Problems
  • Steps from Conceptual Model to Design Model
  • Schemas for Subproblem Interaction
  • Transformations
  • Design Model Requirements

79
Design Model Requirements
  • Represent problem decomposition
  • Map problem model to subproblem models
  • Represent subproblem solvers
  • Map conceptual model to algorithm
  • Capture solver combination
  • Map algorithms to hybrid algorithm

80
Research into Design Model
  • Start bottom up
  • Routing
  • Partitioning
  • Scheduling
  • Collect and analyse algorithms
  • Constraint propagation
  • Linear constraint solving
  • Complete search
  • Stochastic search
  • Devise (modelling) languages
  • For expressing algorithms
  • For combining algorithms

81
CSP and Constraint Programming -Language Aims
  • Teaching MBAs
  • Familiar
  • Simple
  • Closed
  • Developing Advanced Algorithms
  • Powerful
  • Integrated
  • Reconfigurable

82
IC-Parc Research Aims the ECLiPSe Language
  • Separate modelling from behaviour
  • Support an extensive toolset
  • Representations
  • Algorithms
  • Support experimentation
  • Representations
  • Algorithms
  • Hybrids

83
IC-Parc and Parc Technologies - Applications
  • Transportation
  • Internet Support
  • Logistics
Write a Comment
User Comments (0)
About PowerShow.com