
Boston custom house tower 
Assume we have an infinite collection of 3d boxes of different sizes. As an example let's use [1]:
 30 PARAMETER boxes available box sizes
sizex sizey sizez
box1 4 6 7
box2 1 2 3
box3 4 5 6
box4 10 12 32
We want to build a tower of boxes such that the base of the box on top is strictly smaller than the underlying box. The "strictly" part is essential. Otherwise, we can just repeat the same type of box ad infinitum. The interesting angle is: we can rotate the boxes. Without loss of generality, we can assume that for all boxes, after rotation, we have: the width (\(x\)) is less than the depth \((y\)). (This may require a bit of thinking). With this, any box can be placed in just three different ways.

3d rotations 
The objective is to build a tower that is as tall as possible. In [1], this problem is solved using a
Dynamic Programming algorithm. Here I want to see how this looks using a
MIP model.