# Modelling a Steel Mill Slab Design Problem - PowerPoint PPT Presentation

1 / 24

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 .

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Modelling a Steel Mill Slab Design Problem

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

## 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.

• 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

### 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.

### An Example

• Slab Sizes: {1, 3, 4} ( = 3)

• Orders: {oa, …, oi} (j = 9)

• Colours: {red, green, blue, orange, brown} (k = 5)

• p = 2

2

1

3

Solution:

2

1

1

1

1

3

1

2

2

1

1

1

1

1

1

a

b

c

d

e

f

g

h

i

### 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:

### 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.

### Model A Order Matrix

• Slab variables assigned the same

• size are indistinguishable.

• When si = si+1:

• Corresponding rows of orderAare lexicographically ordered.

• E.g. 1001  0110.

### Model A Colour Matrix

Channelling:

A Solution: Model A

3

2

2

1

1

1

1

1

1

oa

ob

oc

od

oe

of

og

oh

oi

### Model A Implied Constraints

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

• Lower bound on number of slabs required:

• With symmetry-breaking constraints, decomposes

• into unary constraints on slab variables.

### 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:

### Model A Implied Constraints (3)

• wastei = si – assWti

(under conditions 1, 2).

### Model B – Abstraction

• 2-phase approach:

• Construct/solve an abstraction of the problem.

• 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:

### Model B, Phase 1 Order Matrices

Channelling:

A Solution: Model B, Phase 1

3

2

2

1

1

1

1

1

1

oa

ob

oc

od

oe

of

og

oh

oi

Model B Implied Constraints

• Unary constraints on order matrix:

### 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.

Model B, Phase 2 Sub-problems

3

2

2

1

1

1

1

1

1

oa

ob

oc

od

oe

of

og

oh

oi

• 3 Slabs of size 3

• 1 Slab of size 4

### 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

3

1

1

oa

ob

oc

od

Slab Sizes: {4}, p = 1

• 2 Slabs of size 4

### 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.

### 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.

### 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.

### 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.