1 / 39

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. Overview. The slab design problem An example Model A Model B A dual model A/B Results Conclusion/Future Work. Background. This work is based on the problem as stated in:

glynn
Download Presentation

Modelling a Steel Mill Slab Design Problem

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Overview • The slab design problem • An example • Model A • Model B • A dual model A/B • Results • Conclusion/Future Work

  3. Background • This work is based on the problem as stated in: • “Variable Sized Bin Packing with Color Constraints”, Dawande, Kalagnanam and Sethuraman 1998. • Approximation algorithms guaranteed to be within some bound of an optimal solution.

  4. Motivation • Many problems exhibit flexibility in portions of their structure. • Example: the number required of a certain type of variable. • Flexibility must be resolved during the solution process. • Slab design is a representative example of this type of problem.

  5. 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 such that the total slab capacity is minimised, subject to: • Capacity constraints. • Colour constraints.

  6. Slab Design 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. • Reason: expensive to cut slabs up to send them to different parts of the mill.

  7. An Example • Slab Sizes: {1, 3, 4} ( = 3) • Orders: {oa, …, oi} (j = 9) • Colours: {red, green, blue, orange, brown} (k = 5) • p = 2 3 2 2 1 1 1 1 1 1 a b c d e f g h i

  8. An Example Solution • 6 Slabs: 2 h 3 1 e 2 1 b f a 1 1 1 1 g c d i (size 4) (size 3) (size 3) (size 1) (size 1) (size 1)

  9. Model A – Redundant Variables • Number of slabs is not fixed. • Assume greatest order weight does not exceed maximum slab size. • A list, S, of slab variables: {s1, …, sj}. • Domains size . • Solution quality:

  10. Slab Variable Redundancy • 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.

  11. Slab Variable Symmetry • Slab variables are indistinguishable. • So model A suffers from symmetry: • Counteract with binary symmetry-breaking constraints: s1s2, s2s3, etc.

  12. Model A Order Matrix (Oa)

  13. More Slab Symmetry • Slab variables assigned the same size are indistinguishable. • When si and si+1 have the same assignment, the corresponding rows of the order matrix are lexicographically ordered. • E.g. 1001  0110.

  14. Model A Colour Matrix (colourMa) Channelling:

  15. Model A of the Example Problem 3 2 2 1 1 1 1 1 1 oa ob oc od oe of og oh oi

  16. A Solution: Model A 3 2 2 1 1 1 1 1 1 oa ob oc od oe of og oh oi s1 = 4, s2 = 3, s3 = 3, s4 = 3, si = 0 (5  i  9)

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

  18. 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:

  19. Model A Implied Constraints (3) • Wastei = si – AssWti • the unused portion of a slab. • Upper bound on total waste: • Assume each order is assigned to an individual slab, with smallest size able to hold it. • Sum waste in each case: leads to upper bound for optimisation variable. • Upper bound on Wastei is the worst of these cases.

  20. 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. • Solving phase 2 sub-problems either: • Provides a solution to the original problem, or: • Identifies new constraints which restrict set of solutions at phase 1.

  21. Model B, Phase 1 • Number of slab sizes is fixed. • A list, Z, of slab size variables, {z1, z2, …}. • Domains: {0, …, j} number of slabs of corresponding sized used. • Solution quality:

  22. Model B, Phase 1 Order Matrix (Ob)

  23. Model B, Phase 1 Colour Matrix (ColourMb) Channelling:

  24. A Solution: Model B, Phase 1 3 2 2 1 1 1 1 1 1 oa ob oc od oe of og oh oi • z1 = 0, z3 = 3, z4 = 1

  25. Model B Implied Constraints • Unary constraints on order matrix:

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

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

  28. The Price of Ambiguity • Model B, Phase 1 is ambiguous. • Phase 2 sub-problems may be inconsistent. • Due to interaction between weight/colour constraints. 3 3 p = 1 1 1 oa ob oc od • 2 Slabs of size 4

  29. Conflict Recording • Not simply underestimation of optimisation variable: • May be incorrect combination of slab sizes. • Or wrong assignment of orders to sizes. • Solution: • Isolate reasons for failure. • Post constraints at phase 1. • Solve phase 1 again. • Example: • oa = 4 ob = 4 oc = 4 od = 4 z4 > 2

  30. A Model B Solution Cycle Phase 1 Solution Phase 2 Constraints

  31. A Dual Model A/B • Combines model A and model B, phase 1. • Variables: • Explicit slab variables (si) and slab-size variables (zi). • Order matrices referring to explicit slabs (Oa) and to slab-sizes (Ob). • Both types of colour matrix.

  32. Channelling Constraints • Constraints for individual models as previously described. • Channelling constraints between the models maintain consistency, aid pruning. • Between S and Z: • (Number of occurrences of i in S) = zi. • Between order matricesand S: • Oa[i, j] = 1Ob[i, sj] = 1.

  33. A/B Search Strategy • 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 do not force instantiation of model A variables. • Model A variables are constrained though. • Analogous to pure model B approach.

  34. A/B Search Strategies 2 • Other search strategies exploit more complete view offered by model A/B. • Interleave instantiation of variables from 2 basic models: • Obtain most efficient pruning of the search space.

  35. Results

  36. Results

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

  38. Other Models • Set variables: • Each represents a slab • Domain is set of orders assigned. • Activity-based dynamic CSP: • Model A slab variables used. • Only `activated’ according to remaining capacity of activated slabs.

  39. Conclusions • Results only on small instances. • All models need further development: • More implied constraints. • Better heuristics • Explore new models: • Set variables. • aDCSP.

More Related