3D CBL

846 views

Published on

3D CBL, An algorithm for 3D packing problems

Published in: Education, Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
846
On SlideShare
0
From Embeds
0
Number of Embeds
36
Actions
Shares
0
Downloads
11
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

3D CBL

  1. 1. . 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems {Yuchun Ma, Xianlong Hong, Sheqin Dong}1 and C.K. Cheng2 Billy Okal Automation Seminar 2012 March 8, 2012 1 Department of Computer Science and Technology, Tsinghua University, Beijing, China 2 Department of Computer Science and Engineering, University of California,San Diego, CA, USA
  2. 2. Outline IntroductionIntroduction .1Background and RelatedWork Background and Related WorkProblem Specification Problem SpecificationMethodsCBL Concepts 2 MethodsCBL OrientationsCBL Operations CBL Concepts3D CBLTri-Branch and CornerCubic Block CBL Orientations3D CBL Operations CBL Operations3D CBL AlgorithmResults 3D CBLConclusion Tri-Branch and Corner Cubic BlockReferences 3D CBL Operations 3D CBL Algorithm 3 Results 4 Conclusion 5 References Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 2/24
  3. 3. Introduction Background and Related WorkIntroduction . Generally, 3D packing problem is the task of arranging a setBackground and RelatedWork of rectangular boxes into a larger rectangular box ofProblem Specification minimal volume without overlapping each other.MethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
  4. 4. Introduction Background and Related WorkIntroduction . Generally, 3D packing problem is the task of arranging a setBackground and RelatedWork of rectangular boxes into a larger rectangular box ofProblem Specification minimal volume without overlapping each other.MethodsCBL Concepts The problem arises in many practical applications including;CBL OrientationsCBL Operations3D CBLTri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA designCubic Block3D CBL Operations scheduling)3D CBL Algorithm 2 Logistics (pallet loading, container ship loading, cargo andResults warehouse management)ConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
  5. 5. Introduction Background and Related WorkIntroduction . Generally, 3D packing problem is the task of arranging a setBackground and RelatedWork of rectangular boxes into a larger rectangular box ofProblem Specification minimal volume without overlapping each other.MethodsCBL Concepts The problem arises in many practical applications including;CBL OrientationsCBL Operations3D CBLTri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA designCubic Block3D CBL Operations scheduling)3D CBL Algorithm 2 Logistics (pallet loading, container ship loading, cargo andResults warehouse management)ConclusionReferences The problem is known to be NP-Complete. Various algorithms including evolutionary ones proposed. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
  6. 6. Introduction Background and Related WorkIntroduction . Generally, 3D packing problem is the task of arranging a setBackground and RelatedWork of rectangular boxes into a larger rectangular box ofProblem Specification minimal volume without overlapping each other.MethodsCBL Concepts The problem arises in many practical applications including;CBL OrientationsCBL Operations3D CBLTri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA designCubic Block3D CBL Operations scheduling)3D CBL Algorithm 2 Logistics (pallet loading, container ship loading, cargo andResults warehouse management)ConclusionReferences The problem is known to be NP-Complete. Various algorithms including evolutionary ones proposed. CBL (Corner Block List)[Hong et al., 2000] is a floorplan representation system for 2D. Extension to 3D (This paper) Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
  7. 7. Introduction Background and Related WorkIntroduction . Generally, 3D packing problem is the task of arranging a setBackground and RelatedWork of rectangular boxes into a larger rectangular box ofProblem Specification minimal volume without overlapping each other.MethodsCBL Concepts The problem arises in many practical applications including;CBL OrientationsCBL Operations3D CBLTri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA designCubic Block3D CBL Operations scheduling)3D CBL Algorithm 2 Logistics (pallet loading, container ship loading, cargo andResults warehouse management)ConclusionReferences The problem is known to be NP-Complete. Various algorithms including evolutionary ones proposed. CBL (Corner Block List)[Hong et al., 2000] is a floorplan representation system for 2D. Extension to 3D (This paper) Other representations exist like SP, O-Tree, B*-Tree, TCG, BSG[Lin and Chang, 2004] etc Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
  8. 8. Introduction Defining the Task Consider the layout as a 3D Euclidean space describedIntroductionBackground and Related . using Cartesian coordinates with perpendicular axes X, Y, ZWorkProblem Specification and an origin (0, 0, 0).MethodsCBL Concepts Then the task is to pack n rectangular boxes of volumeCBL OrientationsCBL Operations Vi , i ∈ {1, . . . , n} tightly. Each block has the following3D CBL information;Tri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 4/24
  9. 9. Introduction Defining the Task Consider the layout as a 3D Euclidean space describedIntroductionBackground and Related . using Cartesian coordinates with perpendicular axes X, Y, ZWorkProblem Specification and an origin (0, 0, 0).MethodsCBL Concepts Then the task is to pack n rectangular boxes of volumeCBL OrientationsCBL Operations Vi , i ∈ {1, . . . , n} tightly. Each block has the following3D CBL information;Tri-Branch and CornerCubic Block3D CBL Operations Block size: depth (Db ), width (Wb ) and height (Hb ).3D CBL AlgorithmResults Coordinate system (xb , yb , zb ) in the block’s lower-left-frontConclusion corner.References Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 4/24
  10. 10. Introduction Defining the Task Consider the layout as a 3D Euclidean space describedIntroductionBackground and Related . using Cartesian coordinates with perpendicular axes X, Y, ZWorkProblem Specification and an origin (0, 0, 0).MethodsCBL Concepts Then the task is to pack n rectangular boxes of volumeCBL OrientationsCBL Operations Vi , i ∈ {1, . . . , n} tightly. Each block has the following3D CBL information;Tri-Branch and CornerCubic Block3D CBL Operations Block size: depth (Db ), width (Wb ) and height (Hb ).3D CBL AlgorithmResults Coordinate system (xb , yb , zb ) in the block’s lower-left-frontConclusion corner.References Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 4/24
  11. 11. Introduction Defining the Task(Continued)Introduction Required? .Background and RelatedWorkProblem Specification A Packing P = {(xi , yi , zi )|1 ≤ i ≤ n} which is anMethods assignment of coordinates to the lower left corners of theCBL ConceptsCBL Orientations blocks such that there is no two rectangular blocksCBL Operations3D CBL overlapping and volume of enclosing block is minimized.Tri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 5/24
  12. 12. Introduction Defining the Task(Continued)Introduction Required? .Background and RelatedWorkProblem Specification A Packing P = {(xi , yi , zi )|1 ≤ i ≤ n} which is anMethods assignment of coordinates to the lower left corners of theCBL ConceptsCBL Orientations blocks such that there is no two rectangular blocksCBL Operations3D CBL overlapping and volume of enclosing block is minimized.Tri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 5/24
  13. 13. Corner Block List Overview of concepts in 2DIntroduction .Background and RelatedWork Definition (Mosaic floorplan)Problem SpecificationMethods A floorplan divides a given space into rectangular rooms withCBL ConceptsCBL Orientations vertical and horizontal components. Floorplans belong to theCBL Operations3D CBL class of mosaic floorplans if and only if they satisfy theTri-Branch and CornerCubic Block following properties[Ma et al., 2005]3D CBL Operations3D CBL AlgorithmResults There is no empty space in the plan.ConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 6/24
  14. 14. Corner Block List Overview of concepts in 2DIntroduction .Background and RelatedWork Definition (Mosaic floorplan)Problem SpecificationMethods A floorplan divides a given space into rectangular rooms withCBL ConceptsCBL Orientations vertical and horizontal components. Floorplans belong to theCBL Operations3D CBL class of mosaic floorplans if and only if they satisfy theTri-Branch and CornerCubic Block following properties[Ma et al., 2005]3D CBL Operations3D CBL AlgorithmResults There is no empty space in the plan.Conclusion 1 Each room is assigned exactly one block. Furthermore, theReferences internal segments form T-junctions. 2 These junctions have two segments; a crossing segment and a non-crossing segment. 3 The non-crossing segment has one end in the touching point of a crossing segment. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 6/24
  15. 15. Corner Block List Overview of concepts in 2D (Continued)IntroductionBackground and Related . Topological equivalence on segment slidingWorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
  16. 16. Corner Block List Overview of concepts in 2D (Continued)Introduction . Topological equivalence on segment sliding i.e. slidingBackground and RelatedWork non-crossing segment to fit block size preserves topology.Problem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
  17. 17. Corner Block List Overview of concepts in 2D (Continued)Introduction . Topological equivalence on segment sliding i.e. slidingBackground and RelatedWork non-crossing segment to fit block size preserves topology.Problem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL Algorithm Non-degenerate topologyResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
  18. 18. Corner Block List Overview of concepts in 2D (Continued)Introduction . Topological equivalence on segment sliding i.e. slidingBackground and RelatedWork non-crossing segment to fit block size preserves topology.Problem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL Algorithm Non-degenerate topology i.e. no two distinct T-junctionsResults meet at the same point. Fixed by sliding the non-crossingConclusion segment.References Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
  19. 19. Corner Block List Overview of concepts in 2D (Continued)Introduction . Topological equivalence on segment sliding i.e. slidingBackground and RelatedWork non-crossing segment to fit block size preserves topology.Problem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL Algorithm Non-degenerate topology i.e. no two distinct T-junctionsResults meet at the same point. Fixed by sliding the non-crossingConclusion segment.References Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
  20. 20. CBL Orientations Corner Block, OrientationsIntroductionBackground and Related . Definition (Corner Block and its Orientation)WorkProblem SpecificationMethods Corner Block (CB) is the block packed at the upper rightCBL ConceptsCBL Orientations corner of the placement. It’s orientation is determined by theCBL Operations3D CBL T-junction containing it’s left and bottom segments.Tri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 8/24
  21. 21. CBL Orientations Corner Block, OrientationsIntroductionBackground and Related . Definition (Corner Block and its Orientation)WorkProblem SpecificationMethods Corner Block (CB) is the block packed at the upper rightCBL ConceptsCBL Orientations corner of the placement. It’s orientation is determined by theCBL Operations3D CBL T-junction containing it’s left and bottom segments.Tri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 8/24
  22. 22. top boundary), and if all the rooms passed by haveave a front, a right CBL Orientationscan move at “1” room at the left side the x-axis, y-axis been covered, we of the 0˚ T-junction. And to the of sequence T, wece is a 2-D mosaicCorner Block, Orientations move to the right branch, symmetric to the process of room, we push a moving to the left branch. Lastly, “2” means end of therner of the surface sequence. IntroductionD corner block, as . T-junctions can be oriented in+any one of four ways The Background and Related Proposition 1: For any sub-C -tree defined above,eans that the new Work shown in below. aHowever, only two arecovers the rooms Problem Specification there exists rectangular slice which considered since all rs the rooms under Methods operation are on theof the sub-C+-tree and does not covertwo in the sequence corner block and this eliminates orientations. not in the sequence. any room CBL Concepts CBL Orientations CBL Operations 3D CBL Proof: omit here. Tri-Branch and Cornerepresentation is to Cubic Block 3D CBL Operationse up-right corner of 3D CBL Algorithm Results esentation for 2-D Conclusion (a) 0˚ T- (b) 90˚ T- (c) 180˚ T- (d) 270˚ T- duced. In this References junction junction junction junctions constructed by Figure 4. Four types of T-junctionsghbor (the adjacent We now have feasible corner block insertions by a of the up-right 1 Rotated 90 counterclockwise, indicated by a 0 (vertical) T-ck. The root of the representation of sub-C+-tree. To make this sub-C+-tree 2 Rotated 180 counterclockwise, indicated strength(horizontal) reasonable, we need to prove its by a 1 inght corner block of at the corner block representing rectangular coverings. overed area for the Proposition 2: When false modules [5] can be added Billy Okal into a An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 9/24 3D CBL: 2-D mosaic floorplan, any rectangular covering
  23. 23. CBL Operations Corner Block DeletionIntroductionBackground and Related .Work Corner Block DeletionProblem SpecificationMethods If the corner block is oriented horizontally, deletion is done byCBL ConceptsCBL Orientations shifting its left segment to right boundary of the chip and pullCBL Operations3D CBL the attached T-junctions along with the segment. ForTri-Branch and CornerCubic Block vertically oriented corner blocks, shift the bottom segment to3D CBL Operations3D CBL Algorithm the top boundary and drag along attached T-junctions.ResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 10/24
  24. 24. CBL Operations Corner Block DeletionIntroductionBackground and Related .Work Corner Block DeletionProblem SpecificationMethods If the corner block is oriented horizontally, deletion is done byCBL ConceptsCBL Orientations shifting its left segment to right boundary of the chip and pullCBL Operations3D CBL the attached T-junctions along with the segment. ForTri-Branch and CornerCubic Block vertically oriented corner blocks, shift the bottom segment to3D CBL Operations3D CBL Algorithm the top boundary and drag along attached T-junctions.ResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 10/24
  25. 25. CBL Operations and CBL Corner Block InsertionIntroduction .Background and RelatedWork Corner Block InsertionProblem SpecificationMethods Given as the reverse of deletion. If inserting block is verticallyCBL ConceptsCBL Orientations oriented, push down the horizontal segment at the topCBL Operations3D CBL covering designated T-junctions to get a room for the newTri-Branch and CornerCubic Block corner block. Similar procedure for horizontally oriented3D CBL Operations3D CBL Algorithm blocks.ResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 11/24
  26. 26. CBL Operations and CBL Corner Block InsertionIntroduction .Background and RelatedWork Corner Block InsertionProblem SpecificationMethods Given as the reverse of deletion. If inserting block is verticallyCBL ConceptsCBL Orientations oriented, push down the horizontal segment at the topCBL Operations3D CBL covering designated T-junctions to get a room for the newTri-Branch and CornerCubic Block corner block. Similar procedure for horizontally oriented3D CBL Operations3D CBL Algorithm blocks.ResultsConclusion Definition (Corner Block List)References For each corner block deletion, three lists are kept. S the list of block names, L the list of corner block orientations and T the list of T-junctions. The 3-tuple (S , L, T ) is called a Corner Block List. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 11/24
  27. 27. Corner Block List Simple Generating CBL ExampleIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
  28. 28. Corner Block List Simple Generating CBL ExampleIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
  29. 29. Corner Block List Simple Generating CBL ExampleIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
  30. 30. Corner Block List Simple Generating CBL ExampleIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
  31. 31. Corner Block List Simple Generating CBL ExampleIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
  32. 32. Corner Block List Simple Generating CBL ExampleIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL ConceptsCBL OrientationsCBL Operations3D CBLTri-Branch and CornerCubic Block3D CBL Operations3D CBL AlgorithmResultsConclusionReferences S = (fcegbad ), L = (001100), T = (001010010) Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
  33. 33. 3D CBL 3D Mosaic FloorplanIntroduction .Background and RelatedWork Definition (3D Mosaic floorplan)Problem SpecificationMethods A 3D mosaic floorplan divides the total packing region intoCBL ConceptsCBL Orientations cubic rooms. Topology is defined in terms of sides so thatCBL Operations3D CBL block "a" is left of block "b" if any point on block "a" is left ofTri-Branch and CornerCubic Block any point of "b". Again three properties categorize 3D mosaic3D CBL Operations3D CBL Algorithm floorplans.ResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 13/24
  34. 34. 3D CBL 3D Mosaic FloorplanIntroduction .Background and RelatedWork Definition (3D Mosaic floorplan)Problem SpecificationMethods A 3D mosaic floorplan divides the total packing region intoCBL ConceptsCBL Orientations cubic rooms. Topology is defined in terms of sides so thatCBL Operations3D CBL block "a" is left of block "b" if any point on block "a" is left ofTri-Branch and CornerCubic Block any point of "b". Again three properties categorize 3D mosaic3D CBL Operations3D CBL Algorithm floorplans.ResultsConclusion 1 No empty rooms, i.e. each cubic room is assigned exactlyReferences one cubic block 2 Topological Equivalence on side sliding. 3 Non-degenerate Topology. No two partitioning sides should meet at the same line. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 13/24
  35. 35. Tri-Branch Definition and OrientationIntroduction .Background and RelatedWork Definition (Tri-Branch)Problem SpecificationMethods A Tri-Branch is composed of three branches parallel to theCBL ConceptsCBL Orientations X,Y,Z axes respectively. Two of these branches form aCBL Operations3D CBL sliding surface and a third forms the direction branch. TheTri-Branch and CornerCubic Block direction branch determines the orientation of the Tri-branch3D CBL Operations3D CBL Algorithm as either Y, X or Z oriented.ResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 14/24
  36. 36. Tri-Branch Definition and Orientation Introduction . Background and Related Work Definition (Tri-Branch) Problem Specification Methods A Tri-Branch is composed of three branches parallel to the CBL Concepts CBL Orientations X,Y,Z axes respectively. Two of these branches form a CBL Operations sliding surface and a third forms the direction branch. Thea “0”, corresponds 3D CBL slicing surface can be slided along the direction branch Cubic Block direction branch determines the orientation of the Tri-branch Tri-Branch and Corner vertically. Correspondingly, we can define the X-oriented and Z- f block name, CB as either Y, of or Z oriented. 3D CBL Operations 3D CBL Algorithm oriented X the Tri-branch. Since the orientation of a directionnd of the deletion branch may have three choices, we can classify the tri-branches Resultsme list {Bn,Bn-1,… into 3 types: X-Tri-branch, Y-Tri-branch and Z-Tri-branch.on list{Tn,Tn-1, … Conclusion Direction branch espectively. Thus, References Sliding surface Direction branch L of orientations,ned into a binary Sliding surface Sliding surface Direction branch is a corner block d on given (S,L,T) Y-Tri-branch X-Tri-branch Z-Tri-branch Fig.1 is a non- Fig.2 Three types of Tri-branch In 3D mosaic packing, we set the tri-branches at the corre-ist: sponding corner. As shown in Fig.3, each packed block in 3D Billy Okal 3D CBL: An Efficient Algorithm provide 3-Dimensional Packing Problems different mosaic packing will for General 3 tri-branches with March 8, 2012 14/24
  37. 37. Corner Cubic Block DefinitionIntroductionBackground and Related . efinition (Corner Cubic Block) DWorkProblem Specification If there is no cubic block locating at right-of, nor above norMethodsCBL Concepts behind a given cubic block B, cubic block B is said to beCBL OrientationsCBL Operations corner cubic block for this packing. Given a 3D mosaic3D CBLTri-Branch and Corner floorplan of one or more blocks, there exists a unique cornerCubic Block3D CBL Operations cubic block.3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 15/24
  38. 38. uncovered Y-tri-branches in packing sequence are {T 3, T 2, TY1}, The uncovered X-tri-branches in packing sequence are Corner2,TX3}, TX1 Block by block 2. The uncovered Z-tri- {TX Cubic is covered branches are {TZ1,TZ3} and TZ2 is covered by block 3. Definition relative relations The uncovered tri-branches provide the positions for the next lock “a” is said to blocks. We find that the blocks should cover the previous eft-of any point of . efinition blocks according to their packing sequence. We take the Introduction D packed (Corner Cubic Block) , “front-of”, “rear- Background and Related Work tri-branches of Y direction for instance. In Fig.3, the surfacemosaic Specification Problem structure in If there is no of TY1 and its extension cover the previous uncovered projection cubic block locating at right-of, nor above nor al packing region Methods Y Y tri-branches(Tcubic block which means the block said toTbe 2 and T 3), B, cubic block B is covers Y is assigned to no behind a given 1 Y Y CBL Concepts should also cover T 2 and T 3. In Fig.3, block 4 covers three tri- an define the 3D corner cubic block for this 3). Therefore, we a 3D mosaic CBL Orientations CBL Operations branches(TY1,TY2 and TY packing. Given define the tri-gs. A 3D packing floorplan of covered by the block as its attached tri-branches. 3D CBL branches one or more blocks, there exists a unique corner y Tri-Branchsatisfies the if it and Corner Cubic Block cubic block. 1: Y TheY uncovered tri-branches list inY packing Lemma sequence is {T 1, T 2, … TYk}. If a block B covers T i, then B 3D CBL Operations 3D CBL Algorithm mosaic floorplan may cover TYm(m i) and block B does not cover TYn(n i ). king region into n Results igned exactly one Conclusion Insert block 4 References g: The topology delete block 4 4cted by the sliding 3 S4=4 1 3 1 4 L4=Y ioning sides meet 2 T4=1110 2as degenerate of (a) (b) (c)pens, we separate Fig.3 The Tri-branches in packing: (a) each block has 3 tri- istance so that the branches, (b) the uncovered Tri-branches, (c) the Tri-branches ue. Billy Okal 3D are covered by block 4 and the corresponding 3D CBL: 8, 2012 CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 15/24
  39. 39. 3D CBL Operations Deletion and NotesIntroductionBackground and Related .WorkProblem Specification Corner cubic blocks can cover any of the Tri-branchesMethodsCBL ConceptsCBL Orientations Uncovered Tri-branches provide locations for succeedingCBL Operations placements3D CBLTri-Branch and CornerCubic Block The notation Tid for d ∈ {X , Y , Z } is used to keep a3D CBL Operations3D CBL Algorithm sequence of uncovered Tri-branches.ResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 16/24
  40. 40. 3D CBL Operations Deletion and NotesIntroductionBackground and Related .WorkProblem Specification Corner cubic blocks can cover any of the Tri-branchesMethodsCBL ConceptsCBL Orientations Uncovered Tri-branches provide locations for succeedingCBL Operations placements3D CBLTri-Branch and CornerCubic Block The notation Tid for d ∈ {X , Y , Z } is used to keep a3D CBL Operations3D CBL Algorithm sequence of uncovered Tri-branches.Results Deletion is performed in a manner similar to the 2D case,ConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 16/24
  41. 41. 3D CBL Operations Deletion and NotesIntroductionBackground and Related .WorkProblem Specification Corner cubic blocks can cover any of the Tri-branchesMethodsCBL ConceptsCBL Orientations Uncovered Tri-branches provide locations for succeedingCBL Operations placements3D CBLTri-Branch and CornerCubic Block The notation Tid for d ∈ {X , Y , Z } is used to keep a3D CBL Operations3D CBL Algorithm sequence of uncovered Tri-branches.Results Deletion is performed in a manner similar to the 2D case, i.e.Conclusion If the corner cubic block is X -oriented, shift its left side to theReferences right boundary side of the packing region, and pull the sliding surface of the attached Tri-branch along the direction branch. Analogous procedures for Y and Z oriented blocks. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 16/24
  42. 42. 3D CBL Algorithm Making 3D CBL and using itIntroductionBackground and Related .Work T now stores the number of Tri-branches attached to theProblem SpecificationMethods deleted block. S is still block names and L orientations.CBL ConceptsCBL Orientations Given the 3D CBL, the blocks are then packed on theCBL Operations3D CBL floorplan from left bottom front corner to theTri-Branch and CornerCubic Block upper right behind corner.3D CBL Operations3D CBL AlgorithmResultsConclusionReferences Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 17/24
  43. 43. 3D CBL Algorithm Making 3D CBL and using itIntroductionBackground and Related .Work T now stores the number of Tri-branches attached to theProblem SpecificationMethods deleted block. S is still block names and L orientations.CBL ConceptsCBL Orientations Given the 3D CBL, the blocks are then packed on theCBL Operations3D CBL floorplan from left bottom front corner to theTri-Branch and CornerCubic Block upper right behind corner.3D CBL Operations3D CBL AlgorithmResults Data: 3D CBLConclusion Result: FloorplanReferences Initialize floorplan with block S [1]; for i ← 2 to n do Insert block S [i ] with orientation L[i ]; end Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 17/24
  44. 44. 3D CBL Algorithm Practical Implementation DetailsIntroductionBackground and Related .WorkProblem SpecificationMethods This is a global optimization problem and many stochasticCBL ConceptsCBL Orientations approaches are availableCBL Operations3D CBL Standard simulated annealing is used to find the optimalTri-Branch and CornerCubic Block (S , L, T ).3D CBL Operations3D CBL Algorithm Neighboring solutions are created based on a number ofResults strategies;Conclusion 1 Randomly exchange the order of the blocks in S.References 2 Randomly choose a position in L and change the orientation. 3 Randomly choose a position in T , change "1" to "0" or change "0" to "1". Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 18/24
  45. 45. CBL to represent much more general packings. And the advanced abilities of 2D CBL to handle the constraint-driven floorplan can be extended to handle the problem in 3D packing Results problems. Time and Space REFERENCES VII. Usage [1] K.Li and K.H. Cheng, “On three-dimensional packing” SIAM J. Computing, vol.19, no.5, pp.847-867, Oct.1990 [2] K.Li and K.H.Cheng, “Heuristic algorithms for on-lineIntroduction .packing in three dimensions” J. Algorithms, vol.13, no.4, pp.589-605, Dec.1992Background and RelatedWork Results showing volume optimization andThe packing results of beasley1 Fig.4. running times [3] F.K. Miyazawa and Y.Wakabayashi, “an algorithm for the three-dimensional packing problem with asymptoticProblem Specification performance analysis” Algorithmica, vol.18, no1. pp.122- 144, May 1997.Methods Table 1. Results for volume optimization.CBL ConceptsCBL Orientations # Sum of ST 3D-subTCG 3D CBLCBL Operations Test1 of Dead Space Run Time Dead Run Time Dead Run Time Volume3D CBL blocks (%) (Sec) Space (%) (Sec) Space (%) (Sec)Tri-Branch and Corner beasley1 10 6218 28.6 7.7 17.1 8.5 23.5 6Cubic Block beasley2 17 11497 21.5 45.2 7.2 28.5 7.0 73D CBL Operations beasley3 21 10362 35.3 44.1 18.0 18.0 17.0 123D CBL Algorithm beasley5 14 16734 26.4 18.2 11.5 16.0 13.5 12 beasley6 15 11040 26.3 27.9 16.3 24.8 15.4 20Results beasley7 8 17168 30.1 3.8 16.5 2.3 24.6 4 beasley10 13 493746 25.2 13.0 14.2 10.8 15.2 10Conclusion beasley11 15 383391 24.8 17.5 12.6 9.8 13.2 10 beasley12 22 646158 29.9 100.0 21.5 58.5 21.2 40References okp1 50 1.24*108 42.6 1607.2 28.4 387.3 29.1 202 okp2 30 8.54*107 33.2 285.3 22.3 73.8 27.0 57 okp3 30 1.23*108 33.1 280.7 23.0 70.6 26.3 56 okp4 61 2.38*108 42.8 791.3 27.3 501.9 28.6 320 okp5 97 1.89*108 57.7 607.8 35.8 565.9 36.2 340 1 The data of beasley4, beasley8 and beasley9 in [3] do not consist with the original data in [7]. So we omit these cases. 1082 Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 19/24
  46. 46. Yoji Kajitani, “The 3D-Packing by Meta Data Structure andanning problems bysentation, called 3D ResultsPacking April 2000. IEICE Trans. Fundamentals, Vol.E83- Heuristics”, (continued) A, No.4 We propose a triple Demo Usage [9] Hong Xianlong, Huang Gang et al. “Corner Block List: Anological relationship Effective and Efficient Topological Representation of Non- ndle not only slicing Results from packing ofICCAD’2000.dataset. slicing Floorplan” beasley 1 tructure. Though we Introduction .ability to Related Background and Work handle 3Dputation complexity. Problem Specificationn Methods complexity of oursultsConcepts that our CBL show CBL OrientationsnyCBLresearch can be Operations to CBL and Corner the 3D 3D develop Tri-Branch packings. And the Cubic Block he CBL Algorithm 3D constraint-driven 3D CBL Operations blem in 3D packing Results Conclusion Referencesmensional packing”7-867, Oct.1990orithms for on-lineithms, vol.13, no.4,an algorithm for the with asymptotic Fig.4. The packing results of beasley1 Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 20/24
  47. 47. Conclusion Recap of main ideasIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL Concepts CBL is a 2D representation scheme. Extended to 3DCBL OrientationsCBL Operations The representation scheme is very simplistic, precise and3D CBLTri-Branch and Corner rich.Cubic Block3D CBL Operations Experimental results show that the algorithm be very3D CBL AlgorithmResults efficient in dead space minimization and run times whenConclusion compared to competing algorithms.References Complexity of the algorithm is O (n) which is great for an NP-Complete problem. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 21/24
  48. 48. Conclusion Personal ThoughtsIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL Concepts The algorithm is very practical given its simplistic natureCBL OrientationsCBL Operations and leanness.3D CBLTri-Branch and CornerCubic Block I believe more improvement in the run time and even the3D CBL Operations3D CBL Algorithm dead space minimization is possible by use of other globalResults optimization approaches other than simulated annealing.Conclusion For instance, stochastic gradient descent or Tabu search.References Nevertheless, the work is very commendable. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 22/24
  49. 49. ReferencesIntroductionBackground and Related .WorkProblem SpecificationMethodsCBL Concepts Hong, X., Huang, G., Cai, Y., Gu, J., Dong, S., Cheng, C. K. and Gu, J. (2000).CBL OrientationsCBL Operations Corner block list: an effective and efficient topological representation of non-slicing floorplan.3D CBL In Proceedings of the 2000 IEEE/ACM international conference onTri-Branch and Corner Computer-aided design ICCAD ’00 pp. 8–12, IEEE Press, Piscataway, NJ, USA.Cubic Block3D CBL Operations Lin, J.-M. and Chang, Y.-W. (2004).3D CBL Algorithm TCG-S: Orthogonal Coupling of P*-admissible Representations for General Floorplans. Computer-Aided Design of Integrated Circuits and Systems (TCAD) 23, 968–980.Results Ma, Y., Hong, X., Dong, S. and Cheng, C. (2005).Conclusion 3D CBL: an efficient algorithm for general 3D packing problems.References IEEE Transactions on Circuits and Systems 2, 1079–1082. Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 23/24
  50. 50. .

×