Robotic object packing has been a core challenge for robotic deployment in logistics, industry, etc., due to the curse of dimensionality in combinatorial search and the difficulty of dealing with dynamic collision constraints for irregularly shaped objects. Current heuristic and learning-based methods mainly assume a limited spatial discretization resolution of space, and computation becomes extremely inefficient as discretization accuracy increases. In this work, we eliminate this assumption by introducing SOPO-CD, which frames sequential object placement as a differentiable nonlinear optimization problem with hard constraints in a decomposed free space. We formulate the constraints of placing a convex object inside a convex hull as constraining the vertices of the object to lie inside the convex hull. The constraints and their derivatives can be written in closed form and calculated efficiently. We implement a custom solver that achieves local-optimal placements within tightly constrained space in milliseconds; a 50× speedup compared to a fine-grained grid search method. We evaluate our framework on 2D Tangram, 2D Tetris, and 3D Bin Packing, and have demonstrated strong computational performance and packing utility. We also demonstrate its real-world applicability for solving the Tangram puzzle using a robot equipped with a dexterous hand.
Figures & tables
Fig. 2: Visualization of the Tangram puzzle with the given object sequence and cost functions. The first two rows show the free-space decomposition using Delaunay Triangulation [ 22 ] and merged convex polygons. At each iteration, we select the largest convex hull, and SQP will calculate the best placement in this convex hull, as shown in the third row.
Fig. 3: Illustration of hull assignment for placing an L-shaped object. The free-space convex hulls can be grouped into 5 pairs of adjacent hulls. We sort the pairs by height and select the top k=2 hull pairs. Each convex body of the object is assigned to each hull, resulting in 4 combinations of constraint pairs, and we will solve these 4 problems separately.
scenario
gradient ( ns )
Jacobian ( ns )
Hessian ( ns )
Analytic
2D
16.29
24.96
41.45
3D
85.64
188.70
368.59
ForwardDiff
2D
21.16
45.70
311.65
3D
167.82
345.27
7652.00
TABLE I: Computation time for calculating gradient, Jacobian, and Hessian.
obj 1
obj 2
obj 3
obj 4
obj 5
obj 6
obj 7
SOPO-CD
preprocess ( \SIUnitSymbolMicros )
35.34
60.35
25.05
75.44
49.64
39.94
31.78
SQP time ( ms )
0.31
0.21
0.16
0.32
0.88
0.20
0.26
SQP iters
9.40
4.11
5.43
7.72
11.70
2.99
5.99
solved rate (%)
100.00
100.00
99.89
99.89
99.18
100.00
99.99
DCOL
SQP time ( ms )
0.31
1.01
1.00
2.25
6.13
20.13
23.19
SQP iters
9.15
7.72
6.46
10.43
27.80
49.63
50.00
TABLE II: Computation time for Tangram on a single thread.
n_threads
total time ( ms )
successful placements
memory estimate (MiB)
SOPO-CD
2
9.02
4.35
2.53
4
9.31
5.62
4.66
8
10.02
6.63
9.44
16
12.98
6.96
17.67
DCOL
2
27.48
2.63
3.26
4
46.34
3.54
6.76
TABLE III: Performance for full sequence Tangram.
Fig. 4: SQP convergence for a single object in Tangram.
n_threads
total time ( ms )
successful placements
success rate (%)
5-Tetris
2
3.14
4.75
74.95
4
3.46
4.94
93.71
8
4.62
4.99
99.84
8-Tetris
2
10.45
7.28
35.13
4
6.90
7.80
81.05
8
8.22
7.99
98.71
TABLE IV: Performance for mini Tetris using SOPO-CD.
Fig. 5: An intermediate screenshot of convex hull generation and placed objects for 2D Tetris.
grid size
compute time per obj ( ms )
successful placements
occupancy rate (%)
Grid-Search
8 × 8
0.03
14.10
84.86
80 × 80
1.69
13.97
83.92
800 × 800
1455.24
13.67
82.29
TABLE V: Performance for full Tetris using grid search.
top- k
preprocess per obj ( \SIUnitSymbolMicros )
compute time per obj ( ms )
successful placements
occupancy rate (%)
SOPO-CD (n_threads=2)
1
5.40
9.05
9.95
59.46
2
5.59
13.52
10.88
65.13
3
5.83
18.70
11.06
66.23
SOPO-CD (n_threads=4)
1
5.73
12.39
12.06
72.28
2
6.09
19.06
12.28
73.62
3
5.84
26.05
12.32
73.94
TABLE VI: Performance for full Tetris.
Fig. 6: An intermediate screenshot of convex hull generation and placed objects for 3D Bin Packing.
Faculty of Technology, Policy and Management Technische Universiteit Delft, Delft, Netherlands · Department of Industrial and Systems Engineering The Hong Kong Polytechnic University, Hong Kong, China