Apilar rectángulos para ocupar el menor espacio posible

Tengo un programa que calculará el área mínima tomada ajustando rectángulos juntos.

Entrada: Rectángulos de diferente altura y ancho.
Salida: un rectángulo que contiene todos estos rectángulos.
Reglas: Uno no puede girar o rodar los rectángulos y no pueden superponerse.

Entiendo que esto está relacionado o posiblemente se define como un problema de empaque de contenedores (NP-hard). Sin embargo, los algoritmos que encontré para aquellos a menudo establecen un límite en, por ejemplo, el ancho. No tengo tales límites, el único objetivo es conseguir que el área resultante sea lo más pequeña posible.

¿Algún indicador sobre qué algoritmo es apropiado para obtener una solución decente?

Respuestas a la pregunta(3)

Su respuesta a la pregunta