Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Modelling a Steel Mill Slab Design Problem Alan Frisch, Ian Miguel, Toby Walsh AI Group University of York."— 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 2 3 11111 2 1 Slab Sizes: {1, 3, 4} (  = 3) Orders: {o a, …, o i } (j = 9) Colours: {red, green, blue, orange, brown} (k = 5) p = 2 abcdefghi

8 An Example Solution 2 3 111 1 1 1 f gi e cd b h a 6 Slabs: (size 4)(size 3)(size 1) (size 3)(size 1) 2

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: {s 1, …, s j }. –Domains size . Solution quality:

10 Slab Variable Redundancy Some slab variables may be redundant: –0 is added to the domain of each s i. –If s i is not necessary to solve the problem, s i = 0.

11 Slab Variable Symmetry Slab variables are indistinguishable. So model A suffers from symmetry: –Counteract with binary symmetry-breaking constraints: s 1  s 2, s 2  s 3, etc.

12 Model A Order Matrix (Oa) oaoa obob ococ odod s1s1 0011 s2s2 0100 s3s3 1000 s4s4 0000

13 More Slab Symmetry Slab variables assigned the same size are indistinguishable. When s i and s i+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) RedGreenBlueOrange s1s1 0011 s2s2 0100 s3s3 1000 s4s4 0000 Channelling:

15 Model A of the Example Problem 2 3 11111 2 1 oaoa obob ococ odod oeoe ofof ogog ohoh oioi oaoa obob ococ odod oeoe ofof ogog ohoh oioi s1s1 1 s2s2 1 … RedGreenBlueOrangeBrown s1s1 1 s2s2 1 …

16 A Solution: Model A 2 3 11111 2 1 oaoa obob ococ odod oeoe ofof ogog ohoh oioi oaoa obob ococ odod oeoe ofof ogog ohoh oioi s1s1 000000111 s2s2 101000000 s3s3 010000000 s4s4 000111000 …000000000 RedGreenBlueOrangeBrown s1s1 00011 s2s2 11000 s3s3 01000 s4s4 00110 …00000 s 1 = 4, s 2 = 3, s 3 = 3, s 4 = 3, s i = 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) AssWt i is the weight of orders assigned to s i. –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) Waste i = s i – AssWt i –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 Waste i is the worst of these cases.

20 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. 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, {z 1, z 2, …}. –Domains: {0, …, j} number of slabs of corresponding sized used. Solution quality:

22 Model B, Phase 1 Order Matrix (Ob) oaoa obob ococ odod z1z1 0011 z3z3 0100 z4z4 1000

23 Model B, Phase 1 Colour Matrix (ColourMb) RedGreenBlueOrange z1z1 0011 z3z3 0100 z4z4 1000 Channelling:

24 A Solution: Model B, Phase 1 2 3 11111 2 1 oaoa obob ococ odod oeoe ofof ogog ohoh oioi oaoa obob ococ odod oeoe ofof ogog ohoh oioi z1z1 000000000 z3z3 111111000 z4z4 000000111 RedGreenBlueOrangeBrown z1z1 00000 z3z3 11110 z4z4 00011 z 1 = 0, z 3 = 3, z 4 = 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 2 3 11111 2 1 oaoa obob ococ odod oeoe ofof ogog ohoh oioi oaoa obob ococ odod oeoe ofof s1s1 101000 s2s2 010000 s3s3 000111 3 Slabs of size 3 1 Slab of size 4 ogog ohoh oioi s1s1 111

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 11 oaoa obob ococ odod p = 1 oaoa obob ococ odod s1s1 ???? s2s2 ???? 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: –o a = 4  o b = 4  o c = 4  o d = 4  z 4 > 2

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

31 A Dual Model A/B Combines model A and model B, phase 1. Variables: –Explicit slab variables (s i ) and slab-size variables (z i ). –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) = z i. Between order matrices and S: –Oa[i, j] = 1  Ob[i, s j ] = 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 OrdersOptimalModel AModel AB 127783: 14, 0.1s 78: 486, 0.2s 77: 1841, 0.6s 83: 14, 0.1s 78: 452, 0.2s 77: 1714, 0.6s 137983: 14, 0.1s 80: 451, 0.2s 79: 1536, 0.5s 83: 14, 0.1s 80: 407, 0.2s 79: 1447, 0.4s 148795: 16, 0.1s 89: 819, 0.2s 88: 934, 0.3s 87: 8797, 1.2s 95: 16, 0.1s 89: 726, 0.3s 88: 841, 0.4s 87: 8612, 2.2s 159295: 21, 0.1s 94: 5108, 1.1s 93: 5619, 1.2s 92: 17734, 3.6s 95: 21, 0.2s 94: 4950, 1.3s 93: 5456, 1.5s 92: 17190, 4.7s

36 Results OrdersOptimalModel AModel AB 1699107: 17, 0.1s 101: 5112, 0.9s 100: 5305, 0.9s 99: 92441, 17.8s 107: 17, 0.1s 101: 3673, 0.9s 100: 3866, 0.9s 99: 89618, 23.5s 17103107: 23, 0.1s 105: 13074, 2.6s 104: 26757, 5.5s 103: 237290, 50.2s 107: 23, 0.1s 105: 11556, 2.9s 104: 24792, 6.6s 103: 228918, 67.1s 18110119: 19, 0.2s 111: 1012, 0.4s 110: 1179281, 253.4s 119: 19. 0.1s 111: 977, 0.4s 110: 1153031, 350.3s

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.


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

Similar presentations


Ads by Google