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. Outline
Introduction
Introduction .1
Background and Related
Work
Background and Related Work
Problem Specification
Problem Specification
Methods
CBL Concepts 2 Methods
CBL Orientations
CBL Operations CBL Concepts
3D CBL
Tri-Branch and Corner
Cubic Block
CBL Orientations
3D CBL Operations CBL Operations
3D CBL Algorithm
Results
3D CBL
Conclusion Tri-Branch and Corner Cubic Block
References 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. Introduction
Background and Related Work
Introduction . Generally, 3D packing problem is the task of arranging a set
Background and Related
Work of rectangular boxes into a larger rectangular box of
Problem Specification
minimal volume without overlapping each other.
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
4. Introduction
Background and Related Work
Introduction . Generally, 3D packing problem is the task of arranging a set
Background and Related
Work of rectangular boxes into a larger rectangular box of
Problem Specification
minimal volume without overlapping each other.
Methods
CBL Concepts The problem arises in many practical applications including;
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA design
Cubic Block
3D CBL Operations scheduling)
3D CBL Algorithm
2 Logistics (pallet loading, container ship loading, cargo and
Results
warehouse management)
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 3/24
5. Introduction
Background and Related Work
Introduction . Generally, 3D packing problem is the task of arranging a set
Background and Related
Work of rectangular boxes into a larger rectangular box of
Problem Specification
minimal volume without overlapping each other.
Methods
CBL Concepts The problem arises in many practical applications including;
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA design
Cubic Block
3D CBL Operations scheduling)
3D CBL Algorithm
2 Logistics (pallet loading, container ship loading, cargo and
Results
warehouse management)
Conclusion
References
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. Introduction
Background and Related Work
Introduction . Generally, 3D packing problem is the task of arranging a set
Background and Related
Work of rectangular boxes into a larger rectangular box of
Problem Specification
minimal volume without overlapping each other.
Methods
CBL Concepts The problem arises in many practical applications including;
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA design
Cubic Block
3D CBL Operations scheduling)
3D CBL Algorithm
2 Logistics (pallet loading, container ship loading, cargo and
Results
warehouse management)
Conclusion
References
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. Introduction
Background and Related Work
Introduction . Generally, 3D packing problem is the task of arranging a set
Background and Related
Work of rectangular boxes into a larger rectangular box of
Problem Specification
minimal volume without overlapping each other.
Methods
CBL Concepts The problem arises in many practical applications including;
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner 1 VLSI design (packing of integrated circuits, FPGA design
Cubic Block
3D CBL Operations scheduling)
3D CBL Algorithm
2 Logistics (pallet loading, container ship loading, cargo and
Results
warehouse management)
Conclusion
References
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. Introduction
Defining the Task
Consider the layout as a 3D Euclidean space described
Introduction
Background and Related
.
using Cartesian coordinates with perpendicular axes X, Y, Z
Work
Problem Specification and an origin (0, 0, 0).
Methods
CBL Concepts
Then the task is to pack n rectangular boxes of volume
CBL Orientations
CBL Operations
Vi , i ∈ {1, . . . , n} tightly. Each block has the following
3D CBL information;
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 4/24
9. Introduction
Defining the Task
Consider the layout as a 3D Euclidean space described
Introduction
Background and Related
.
using Cartesian coordinates with perpendicular axes X, Y, Z
Work
Problem Specification and an origin (0, 0, 0).
Methods
CBL Concepts
Then the task is to pack n rectangular boxes of volume
CBL Orientations
CBL Operations
Vi , i ∈ {1, . . . , n} tightly. Each block has the following
3D CBL information;
Tri-Branch and Corner
Cubic Block
3D CBL Operations Block size: depth (Db ), width (Wb ) and height (Hb ).
3D CBL Algorithm
Results
Coordinate system (xb , yb , zb ) in the block’s lower-left-front
Conclusion corner.
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 4/24
10. Introduction
Defining the Task
Consider the layout as a 3D Euclidean space described
Introduction
Background and Related
.
using Cartesian coordinates with perpendicular axes X, Y, Z
Work
Problem Specification and an origin (0, 0, 0).
Methods
CBL Concepts
Then the task is to pack n rectangular boxes of volume
CBL Orientations
CBL Operations
Vi , i ∈ {1, . . . , n} tightly. Each block has the following
3D CBL information;
Tri-Branch and Corner
Cubic Block
3D CBL Operations Block size: depth (Db ), width (Wb ) and height (Hb ).
3D CBL Algorithm
Results
Coordinate system (xb , yb , zb ) in the block’s lower-left-front
Conclusion corner.
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 4/24
11. Introduction
Defining the Task(Continued)
Introduction
Required?
.
Background and Related
Work
Problem Specification
A Packing P = {(xi , yi , zi )|1 ≤ i ≤ n} which is an
Methods assignment of coordinates to the lower left corners of the
CBL Concepts
CBL Orientations
blocks such that there is no two rectangular blocks
CBL Operations
3D CBL
overlapping and volume of enclosing block is minimized.
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 5/24
12. Introduction
Defining the Task(Continued)
Introduction
Required?
.
Background and Related
Work
Problem Specification
A Packing P = {(xi , yi , zi )|1 ≤ i ≤ n} which is an
Methods assignment of coordinates to the lower left corners of the
CBL Concepts
CBL Orientations
blocks such that there is no two rectangular blocks
CBL Operations
3D CBL
overlapping and volume of enclosing block is minimized.
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 5/24
13. Corner Block List
Overview of concepts in 2D
Introduction .
Background and Related
Work Definition (Mosaic floorplan)
Problem Specification
Methods A floorplan divides a given space into rectangular rooms with
CBL Concepts
CBL Orientations vertical and horizontal components. Floorplans belong to the
CBL Operations
3D CBL class of mosaic floorplans if and only if they satisfy the
Tri-Branch and Corner
Cubic Block following properties[Ma et al., 2005]
3D CBL Operations
3D CBL Algorithm
Results
There is no empty space in the plan.
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 6/24
14. Corner Block List
Overview of concepts in 2D
Introduction .
Background and Related
Work Definition (Mosaic floorplan)
Problem Specification
Methods A floorplan divides a given space into rectangular rooms with
CBL Concepts
CBL Orientations vertical and horizontal components. Floorplans belong to the
CBL Operations
3D CBL class of mosaic floorplans if and only if they satisfy the
Tri-Branch and Corner
Cubic Block following properties[Ma et al., 2005]
3D CBL Operations
3D CBL Algorithm
Results
There is no empty space in the plan.
Conclusion 1 Each room is assigned exactly one block. Furthermore, the
References
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. Corner Block List
Overview of concepts in 2D (Continued)
Introduction
Background and Related
. Topological equivalence on segment sliding
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
16. Corner Block List
Overview of concepts in 2D (Continued)
Introduction . Topological equivalence on segment sliding i.e. sliding
Background and Related
Work
non-crossing segment to fit block size preserves topology.
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
17. Corner Block List
Overview of concepts in 2D (Continued)
Introduction . Topological equivalence on segment sliding i.e. sliding
Background and Related
Work
non-crossing segment to fit block size preserves topology.
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Non-degenerate topology
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
18. Corner Block List
Overview of concepts in 2D (Continued)
Introduction . Topological equivalence on segment sliding i.e. sliding
Background and Related
Work
non-crossing segment to fit block size preserves topology.
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Non-degenerate topology i.e. no two distinct T-junctions
Results meet at the same point. Fixed by sliding the non-crossing
Conclusion segment.
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
19. Corner Block List
Overview of concepts in 2D (Continued)
Introduction . Topological equivalence on segment sliding i.e. sliding
Background and Related
Work
non-crossing segment to fit block size preserves topology.
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Non-degenerate topology i.e. no two distinct T-junctions
Results meet at the same point. Fixed by sliding the non-crossing
Conclusion segment.
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 7/24
20. CBL Orientations
Corner Block, Orientations
Introduction
Background and Related
.
Definition (Corner Block and its Orientation)
Work
Problem Specification
Methods
Corner Block (CB) is the block packed at the upper right
CBL Concepts
CBL Orientations
corner of the placement. It’s orientation is determined by the
CBL Operations
3D CBL
T-junction containing it’s left and bottom segments.
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 8/24
21. CBL Orientations
Corner Block, Orientations
Introduction
Background and Related
.
Definition (Corner Block and its Orientation)
Work
Problem Specification
Methods
Corner Block (CB) is the block packed at the upper right
CBL Concepts
CBL Orientations
corner of the placement. It’s orientation is determined by the
CBL Operations
3D CBL
T-junction containing it’s left and bottom segments.
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 8/24
22. top boundary), and if all the rooms passed by have
ave 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, we
ce 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 the
rner of the surface sequence.
Introduction
D 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 Corner
epresentation is to
Cubic Block
3D CBL Operations
e 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 junction
s constructed by Figure 4. Four types of T-junctions
ghbor (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 in
ght 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. CBL Operations
Corner Block Deletion
Introduction
Background and Related
.
Work Corner Block Deletion
Problem Specification
Methods If the corner block is oriented horizontally, deletion is done by
CBL Concepts
CBL Orientations shifting its left segment to right boundary of the chip and pull
CBL Operations
3D CBL the attached T-junctions along with the segment. For
Tri-Branch and Corner
Cubic Block vertically oriented corner blocks, shift the bottom segment to
3D CBL Operations
3D CBL Algorithm the top boundary and drag along attached T-junctions.
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 10/24
24. CBL Operations
Corner Block Deletion
Introduction
Background and Related
.
Work Corner Block Deletion
Problem Specification
Methods If the corner block is oriented horizontally, deletion is done by
CBL Concepts
CBL Orientations shifting its left segment to right boundary of the chip and pull
CBL Operations
3D CBL the attached T-junctions along with the segment. For
Tri-Branch and Corner
Cubic Block vertically oriented corner blocks, shift the bottom segment to
3D CBL Operations
3D CBL Algorithm the top boundary and drag along attached T-junctions.
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 10/24
25. CBL Operations and CBL
Corner Block Insertion
Introduction .
Background and Related
Work Corner Block Insertion
Problem Specification
Methods Given as the reverse of deletion. If inserting block is vertically
CBL Concepts
CBL Orientations
oriented, push down the horizontal segment at the top
CBL Operations
3D CBL
covering designated T-junctions to get a room for the new
Tri-Branch and Corner
Cubic Block corner block. Similar procedure for horizontally oriented
3D CBL Operations
3D CBL Algorithm blocks.
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 11/24
26. CBL Operations and CBL
Corner Block Insertion
Introduction .
Background and Related
Work Corner Block Insertion
Problem Specification
Methods Given as the reverse of deletion. If inserting block is vertically
CBL Concepts
CBL Orientations
oriented, push down the horizontal segment at the top
CBL Operations
3D CBL
covering designated T-junctions to get a room for the new
Tri-Branch and Corner
Cubic Block corner block. Similar procedure for horizontally oriented
3D CBL Operations
3D CBL Algorithm blocks.
Results
Conclusion 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. Corner Block List
Simple Generating CBL Example
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
28. Corner Block List
Simple Generating CBL Example
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
29. Corner Block List
Simple Generating CBL Example
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
30. Corner Block List
Simple Generating CBL Example
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
31. Corner Block List
Simple Generating CBL Example
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 12/24
32. Corner Block List
Simple Generating CBL Example
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL Orientations
CBL Operations
3D CBL
Tri-Branch and Corner
Cubic Block
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
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. 3D CBL
3D Mosaic Floorplan
Introduction .
Background and Related
Work Definition (3D Mosaic floorplan)
Problem Specification
Methods A 3D mosaic floorplan divides the total packing region into
CBL Concepts
CBL Orientations cubic rooms. Topology is defined in terms of sides so that
CBL Operations
3D CBL
block "a" is left of block "b" if any point on block "a" is left of
Tri-Branch and Corner
Cubic Block any point of "b". Again three properties categorize 3D mosaic
3D CBL Operations
3D CBL Algorithm floorplans.
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 13/24
34. 3D CBL
3D Mosaic Floorplan
Introduction .
Background and Related
Work Definition (3D Mosaic floorplan)
Problem Specification
Methods A 3D mosaic floorplan divides the total packing region into
CBL Concepts
CBL Orientations cubic rooms. Topology is defined in terms of sides so that
CBL Operations
3D CBL
block "a" is left of block "b" if any point on block "a" is left of
Tri-Branch and Corner
Cubic Block any point of "b". Again three properties categorize 3D mosaic
3D CBL Operations
3D CBL Algorithm floorplans.
Results
Conclusion
1 No empty rooms, i.e. each cubic room is assigned exactly
References
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. 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
3D CBL
sliding surface and a third forms the direction branch. The
Tri-Branch and Corner
Cubic Block
direction branch determines the orientation of the Tri-branch
3D CBL Operations
3D CBL Algorithm
as either Y, X or Z oriented.
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 14/24
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. The
a “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 direction
nd of the deletion branch may have three choices, we can classify the tri-branches
Results
me 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. Corner Cubic Block
Definition
Introduction
Background and Related
. efinition (Corner Cubic Block)
D
Work
Problem Specification
If there is no cubic block locating at right-of, nor above nor
Methods
CBL Concepts
behind a given cubic block B, cubic block B is said to be
CBL Orientations
CBL Operations
corner cubic block for this packing. Given a 3D mosaic
3D CBL
Tri-Branch and Corner
floorplan of one or more blocks, there exists a unique corner
Cubic Block
3D CBL Operations
cubic block.
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 15/24
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 surface
mosaic 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 4
cted by the sliding 3 S4=4 1 3
1
4 L4=Y
ioning sides meet 2 T4=1110 2
as 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. 3D CBL Operations
Deletion and Notes
Introduction
Background and Related
.
Work
Problem Specification
Corner cubic blocks can cover any of the Tri-branches
Methods
CBL Concepts
CBL Orientations
Uncovered Tri-branches provide locations for succeeding
CBL Operations placements
3D CBL
Tri-Branch and Corner
Cubic Block The notation Tid for d ∈ {X , Y , Z } is used to keep a
3D CBL Operations
3D CBL Algorithm sequence of uncovered Tri-branches.
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 16/24
40. 3D CBL Operations
Deletion and Notes
Introduction
Background and Related
.
Work
Problem Specification
Corner cubic blocks can cover any of the Tri-branches
Methods
CBL Concepts
CBL Orientations
Uncovered Tri-branches provide locations for succeeding
CBL Operations placements
3D CBL
Tri-Branch and Corner
Cubic Block The notation Tid for d ∈ {X , Y , Z } is used to keep a
3D CBL Operations
3D CBL Algorithm sequence of uncovered Tri-branches.
Results
Deletion is performed in a manner similar to the 2D case,
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 16/24
41. 3D CBL Operations
Deletion and Notes
Introduction
Background and Related
.
Work
Problem Specification
Corner cubic blocks can cover any of the Tri-branches
Methods
CBL Concepts
CBL Orientations
Uncovered Tri-branches provide locations for succeeding
CBL Operations placements
3D CBL
Tri-Branch and Corner
Cubic Block The notation Tid for d ∈ {X , Y , Z } is used to keep a
3D CBL Operations
3D 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 the
References
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. 3D CBL Algorithm
Making 3D CBL and using it
Introduction
Background and Related
.
Work T now stores the number of Tri-branches attached to the
Problem Specification
Methods
deleted block. S is still block names and L orientations.
CBL Concepts
CBL Orientations
Given the 3D CBL, the blocks are then packed on the
CBL Operations
3D CBL
floorplan from left bottom front corner to the
Tri-Branch and Corner
Cubic Block upper right behind corner.
3D CBL Operations
3D CBL Algorithm
Results
Conclusion
References
Billy Okal 3D CBL: An Efficient Algorithm for General 3-Dimensional Packing Problems March 8, 2012 17/24
43. 3D CBL Algorithm
Making 3D CBL and using it
Introduction
Background and Related
.
Work T now stores the number of Tri-branches attached to the
Problem Specification
Methods
deleted block. S is still block names and L orientations.
CBL Concepts
CBL Orientations
Given the 3D CBL, the blocks are then packed on the
CBL Operations
3D CBL
floorplan from left bottom front corner to the
Tri-Branch and Corner
Cubic Block upper right behind corner.
3D CBL Operations
3D CBL Algorithm
Results
Data: 3D CBL
Conclusion
Result: Floorplan
References
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. 3D CBL Algorithm
Practical Implementation Details
Introduction
Background and Related
.
Work
Problem Specification
Methods
This is a global optimization problem and many stochastic
CBL Concepts
CBL Orientations
approaches are available
CBL Operations
3D CBL
Standard simulated annealing is used to find the optimal
Tri-Branch and Corner
Cubic Block (S , L, T ).
3D CBL Operations
3D CBL Algorithm Neighboring solutions are created based on a number of
Results 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. 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-line
Introduction .packing in three dimensions” J. Algorithms, vol.13, no.4,
pp.589-605, Dec.1992
Background and Related
Work 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 asymptotic
Problem Specification performance analysis” Algorithmica, vol.18, no1. pp.122-
144, May 1997.
Methods Table 1. Results for volume optimization.
CBL Concepts
CBL Orientations
# Sum of ST 3D-subTCG 3D CBL
CBL Operations Test1 of Dead Space Run Time Dead Run Time Dead Run Time
Volume
3D CBL blocks (%) (Sec) Space (%) (Sec) Space (%) (Sec)
Tri-Branch and Corner beasley1 10 6218 28.6 7.7 17.1 8.5 23.5 6
Cubic Block beasley2 17 11497 21.5 45.2 7.2 28.5 7.0 7
3D CBL Operations beasley3 21 10362 35.3 44.1 18.0 18.0 17.0 12
3D 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 20
Results 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 10
Conclusion 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 40
References 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. Yoji Kajitani, “The 3D-Packing by Meta Data Structure and
anning problems by
sentation, 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: An
ological 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 3D
putation complexity.
Problem Specification
n Methods
complexity of our
sultsConcepts that our
CBL
show
CBL Orientations
nyCBLresearch 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
References
mensional packing”
7-867, Oct.1990
orithms for on-line
ithms, 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. Conclusion
Recap of main ideas
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
CBL is a 2D representation scheme. Extended to 3D
CBL Orientations
CBL Operations
The representation scheme is very simplistic, precise and
3D CBL
Tri-Branch and Corner
rich.
Cubic Block
3D CBL Operations Experimental results show that the algorithm be very
3D CBL Algorithm
Results
efficient in dead space minimization and run times when
Conclusion 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. Conclusion
Personal Thoughts
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts The algorithm is very practical given its simplistic nature
CBL Orientations
CBL Operations and leanness.
3D CBL
Tri-Branch and Corner
Cubic Block I believe more improvement in the run time and even the
3D CBL Operations
3D CBL Algorithm dead space minimization is possible by use of other global
Results 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. References
Introduction
Background and Related
.
Work
Problem Specification
Methods
CBL Concepts
Hong, X., Huang, G., Cai, Y., Gu, J., Dong, S., Cheng, C. K. and Gu, J. (2000).
CBL Orientations
CBL 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 on
Tri-Branch and Corner
Computer-aided design ICCAD ’00 pp. 8–12, IEEE Press, Piscataway, NJ, USA.
Cubic Block
3D 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