modelling a steel mill slab design problem

24
Modelling a Steel Mill Slab Design Problem Alan Frisch, Ian Miguel, Toby Walsh AI Group University of York

Upload: vilmos

Post on 25-Jan-2016

35 views

Category:

Documents


1 download

DESCRIPTION

Modelling a Steel Mill Slab Design Problem. Alan Frisch, Ian Miguel, Toby Walsh AI Group University of York. Background/Motivation. Many problems exhibit some structural flexibility. E.g. the number required of a certain type of variable . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Modelling a Steel Mill Slab Design Problem

Modelling a Steel Mill Slab Design Problem

Alan Frisch, Ian Miguel, Toby Walsh

AI Group

University of York

Page 2: Modelling a Steel Mill Slab Design Problem

Background/Motivation

• Many problems exhibit some structural flexibility.– E.g. the number required of a certain type of variable.

• Flexibility must be resolved during the solution process.• Slab design representative of this type of problem.• Dawande et al. ” Variable Sized Bin Packing with Color

Constraints”.– Approximation algorithms guaranteed to be within some

bound of an optimal solution

Page 3: Modelling a Steel Mill Slab Design Problem

The Slab Design Problem• The mill can make different slab sizes.

• Given j input orders with:– A colour (route through the mill).– A weight.

• Pack orders onto slabs, minimising total slab capacity. Constraints:– Capacity: Total weight of orders assigned to a slab

cannot exceed slab capacity.– Colour: Each slab can contain at most p of k total

colours.

Page 4: Modelling a Steel Mill Slab Design Problem

An Example

23

1 1 1 1 12

1

• Slab Sizes: {1, 3, 4} ( = 3)• Orders: {oa, …, oi} (j = 9) • Colours: {red, green, blue, orange, brown} (k = 5)• p = 2

a b c d e f g h i

2 3111

11

1

2Solution:

Page 5: Modelling a Steel Mill Slab Design Problem

Model A – Redundant Variables

• Number of slabs is not fixed.– Assume highest order weight does not exceed

maximum slab size.

• Slab variables: {s1, …, sj}.

– Value is size of slab.

• Solution quality:

i

i ttotalWeighs

Page 6: Modelling a Steel Mill Slab Design Problem

Slab Variable Redundancy/Symmetry

• Some slab variables may be redundant:– 0 is added to the domain of each si.

– If si is not necessary to solve the problem, si = 0.

• Slab variables are indistinguishable.

• So model A suffers from symmetry:– Counteract with binary symmetry-breaking

constraints: s1 s2, s2 s3, etc.

Page 7: Modelling a Steel Mill Slab Design Problem

Model A Order Matrix

oa ob oc od

s1 0 0 1 1

s2 0 1 0 0

s3 1 0 0 0

s4 0 0 0 0

i

A ihorderh 1],[

i

h

Ah sihorderoweighti ],[).(

• Slab variables assigned the same size are indistinguishable.

• When si = si+1:

• Corresponding rows of orderA are lexicographically ordered.

• E.g. 1001 0110.

Page 8: Modelling a Steel Mill Slab Design Problem

Model A Colour Matrix

Red Green Blue Orange

s1 0 0 1 1

s2 0 1 0 0

s3 1 0 0 0

s4 0 0 0 0

Channelling:

1]),([1],[ iocolourcolourihorder hAA

pihcolourih

A ],[

Page 9: Modelling a Steel Mill Slab Design Problem

A Solution: Model A

23

1 1 1 1 12

1oa ob oc od oe of og oh oi

order oa ob oc od oe of og oh oi

s1=4 0 0 0 0 0 0 1 1 1

s2=3 1 0 1 0 0 0 0 0 0

s3=3 0 1 0 0 0 0 0 0 0

s4=3 0 0 0 1 1 1 0 0 0

… 0 0 0 0 0 0 0 0 0

colour Red Green Blue Orange Brown

s1 0 0 0 1 1

s2 1 1 0 0 0

s3 0 1 0 0 0

s4 0 0 1 1 0

… 0 0 0 0 0

Page 10: Modelling a Steel Mill Slab Design Problem

Model A Implied Constraints

• Combined weight of input orders is a lower bound on optimisation variable:

• Lower bound on number of slabs required:

i

i ttotalWeighoweight )(

][

)(

slabSizes

oweighti

i

• With symmetry-breaking constraints, decomposes into unary constraints on slab variables.

Page 11: Modelling a Steel Mill Slab Design Problem

Model A Implied Constraints (2)• assWti is the weight of orders assigned to si.

– Prune domains by reasoning about reachable values via dynamic programming [Trick, 2001].

– Incorporate both size and colour information.– More powerful if done during search (future work).

• Minimum number of slabs required:

)max(

)(

i

i

i

assWt

oweight

Page 12: Modelling a Steel Mill Slab Design Problem

Model A Implied Constraints (3)

• wastei = si – assWti

stemaxTotalWaoweightttotalWeighi

i )(

)(. iih wastemaxwasteh

i

iwastestemaxTotalWa

ih ooihih .)(.. hih oweightasaslabSizesaaioh

1. 2.

• (under conditions 1, 2).

Page 13: Modelling a Steel Mill Slab Design Problem

Model B – Abstraction• 2-phase approach:

1. Construct/solve an abstraction of the problem.

2. Solve independent sub-problems, assigning a subset of the orders to slabs of a common size.

• Phase 1:– Slab size variables, {z1, z2, …}.

– Domains: {0, …, j} number of slabs of corresponding sized used.

– Solution quality: i

i ttotalWeighiz

Page 14: Modelling a Steel Mill Slab Design Problem

Model B, Phase 1 Order Matricesoa ob oc od

z1 0 0 1 1

z3 0 1 0 0

z4 1 0 0 0

i

B ihorderh 1],[

i

h

Bh izihorderoweighti ],[).(

Red Green Blue Orange

z1 0 0 1 1

z3 0 1 0 0

z4 1 0 0 0

pzihcolouri i

h

B ],[

Channelling:

1]],[[1],[ ihrorderColoucolourihorder BB

Page 15: Modelling a Steel Mill Slab Design Problem

A Solution: Model B, Phase 1

23

1 1 1 1 12

1oa ob oc od oe of og oh oi

oa ob oc od oe of og oh oi

z1=0 0 0 0 0 0 0 0 0 0

Z3=3 1 1 1 1 1 1 0 0 0

Z4=4 0 0 0 0 0 0 1 1 1

Red Green Blue Orange Brown

z1 0 0 0 0 0

z3 1 1 1 1 0

z4 0 0 0 1 1

Page 16: Modelling a Steel Mill Slab Design Problem

Model B Implied Constraints

• Unary constraints on order matrix:

i

ii

i

i

zAssWt

oweight

)max(

)(

i

i ttotalWeighoweight )(

0],[][)(: ihorderislabSizesoweightih Bh

Page 17: Modelling a Steel Mill Slab Design Problem

Model B, Phase 2

• Model B, Phase 1 is ambiguous.• A Phase 1 solution does provide:

– Number and sizes of slabs required.– Size of slab each order is assigned to.– Quality of final solution.

• Phase 1 solution used to construct much simpler, independent, phase 2 sub-problems.

Page 18: Modelling a Steel Mill Slab Design Problem

Model B, Phase 2 Sub-problems

23

1 1 1 1 12

1oa ob oc od oe of og oh oi

oa ob oc od oe of

s1 1 0 1 0 0 0

s2 0 1 0 0 0 0

s3 0 0 0 1 1 1

• 3 Slabs of size 3 • 1 Slab of size 4

og oh oi

s1 1 1 1

Page 19: Modelling a Steel Mill Slab Design Problem

The Price of Ambiguity

• Phase 2 sub-problems may be inconsistent.– Isolate reasons for failure.– Post constraints at phase 1.– Solve phase 1 again.

• E.g.oa = 4 ob = 4 oc = 4

od = 4 z4 > 2

3 31 1

oa ob oc od

oa ob oc od

s1 ? ? ? ?

s2 ? ? ? ?

• 2 Slabs of size 4

Slab Sizes: {4}, p = 1

Page 20: Modelling a Steel Mill Slab Design Problem

A Dual Model A/B

• Model A and model B, phase 1.– Explicit slab variables (si) and slab-size variables (zi).

– Order matrices referring to explicit slabs (orderA) and to slab-sizes (orderB).

– Both types of colour matrix.

• Channelling constraints between the models maintain consistency, aid pruning.– Number of occurrences of i in {s1, …, sj} = zi.

– orderA[h, i] = 1 orderB[h, si] = 1.

Page 21: Modelling a Steel Mill Slab Design Problem

A/B Search Strategies

• Instantiate model A variables first:– Channelling constraints ensure model B variables

instantiated.– Analogous to pure model A approach.

• Instantiate model B variables first:– Channelling constraints constrain model A variables.– Analogous to pure model B approach.

• Interleaved Strategy:– Obtain most efficient pruning of the search space.

Page 22: Modelling a Steel Mill Slab Design Problem

ResultsOrders Optimal Model A Model AB

15 92 95: 21, 0.1s

94: 5108, 1.1s

93: 5619, 1.2s

92: 17734, 3.6s

95: 21, 0.2s

94: 4529, 1.2s

93: 4948, 1.4s

92: 15983, 4.6s

16 99 107: 17, 0.1s

101: 5112, 0.9s

100: 5305, 0.9s

99: 92441, 17.8s

107: 17, 0.1s

101: 2934, 0.8s

100: 3103, 0.9s

99: 78548, 23.5s

17 103 107: 23, 0.1s

105: 13074, 2.6s

104: 26757, 5.5s

103: 237290, 50.2s

107: 23, 0.1s

105: 11201, 2.9s

104: 21580, 6.4s

103: 204513, 67.1s

18 110 119: 19, 0.2s

111: 1012, 0.4s

110: 1179281, 253.4s

119: 19. 0.2s

111: 988 0.4s

110: 1014092, 350.3s

Page 23: Modelling a Steel Mill Slab Design Problem

Model B Results?

• On these problems, many solutions at phase 1.

• Cycle is therefore lengthy.

• Improve efficiency:– Model phase 1 as a dynamic CSP.– Reduce arity of recorded constraints.– Phase 1 heuristics.– Use dynamic programming information.

Page 24: Modelling a Steel Mill Slab Design Problem

Conclusions• Results only on small instances.• All models need further development:

– More implied constraints.– Better heuristics

• Set variable model:– Each represents a slab– Domain is set of orders assigned.

• Activity DCSP model:– Model A slab variables `activated’ according to

remaining capacity of open slabs.