Transparente · determinista · verificable

Metodología de PackMize

PackMize distingue entre una solución sólida y un óptimo demostrado. Esta página explica los algoritmos, límites matemáticos y limitaciones que sustentan esa diferencia.

1. Cálculo determinista

PackMize no utiliza un modelo de lenguaje para producir resultados matemáticos. Las dimensiones se normalizan internamente a milímetros, el peso se gestiona en kilogramos y las mismas entradas validadas producen el mismo resultado con la misma versión del motor.

2. Qué significa «PROVEN OPTIMAL»

PackMize muestra ÓPTIMO DEMOSTRADO sólo cuando la solución obtenida alcanza un límite matemático válido para el problema modelado o cuando una búsqueda exacta demuestra que no existe una solución mejor. Si esa demostración no está disponible, el resultado se etiqueta como MEJOR SOLUCIÓN ENCONTRADA. Un buen resultado heurístico nunca se presenta como una demostración.

3. Optimización de palés — PMZ-PALLET 3.6.0

El motor de palés trata la base del palé y las cajas como rectángulos. Evalúa cuadrículas alineadas, cuadrículas giradas, patrones mixtos por franjas y varias puntuaciones de colocación MaxRects. La mejor capa probada se repite verticalmente hasta que la altura total máxima, la carga útil o la cantidad solicitada se convierten en la restricción limitante.

El campo estándar de carga del palé Carga útil máxima significa capacidad de carga. La tara del palé se añade al mostrar el peso bruto del palé; no se resta de la carga útil nominal. Para determinar la optimalidad, PackMize calcula un límite superior basado en el área para las cajas por capa. Si la capa seleccionada alcanza ese límite y la pila final también alcanza el límite activo de altura, carga útil o cantidad, el resultado puede marcarse como PROVEN OPTIMAL.

La cobertura real de la primera capa utiliza únicamente las cajas asignadas a esa primera capa. La cobertura potencial describe una capa completa. El aprovechamiento del volumen disponible divide el volumen de cajas cargadas entre la base útil × la altura máxima de apilado disponible. La compacidad de la envolvente ocupada utiliza, en cambio, la altura realmente ocupada. Estas métricas responden a preguntas distintas.

4. Carga de contenedores — PMZ-CONTAINER 3.6.0

El motor de contenedores genera todas las orientaciones de caja alcanzables mediante los ejes de rotación habilitados. Las orientaciones viables se agrupan por altura de capa. Para cada altura se evalúan varias estrategias de capa 2D. Después, una fase de programación dinámica combina alturas de capa para maximizar el número de cajas dentro de la altura útil del contenedor. La búsqueda de alturas utiliza una cuadrícula conservadora de hasta 60.000 estados (al menos 0,1 mm por paso); los costes de capa se redondean al alza mientras se conservan las alturas reales de las cajas. El motor también prueba combinaciones homogéneas y de dos alturas utilizando alturas reales, recuperando disposiciones como tres cajas de 333,33 mm en 1000 mm. Aun así, podrían omitirse otras combinaciones muy finas; ninguna altura se redondea a la baja para forzar un encaje. Los casos extremos con más de 100.000 capas posibles se rechazan expresamente.

Las dimensiones de la puerta se comprueban en la orientación de caja utilizada por la disposición. La validación Single-SKU, Multi-SKU y manual utiliza la misma regla conservadora; no se simula rotación ni inclinación dentro de la puerta. El resultado final queda limitado por la carga útil y la cantidad solicitada. Un límite superior basado en volumen constituye una demostración sólo cuando el número de cajas obtenido alcanza ese límite; en caso contrario, el motor sigue siendo explícitamente heurístico. No modela la secuencia de carga, la estabilidad ni el centro de gravedad. Para pedidos mixtos, consulta el método Multi-SKU específico más abajo.

5. Corte 2D de tableros — PMZ-SHEET 3.6.0

Las cantidades se expanden en piezas rectangulares independientes. Primero se descuenta el recorte de bordes. El anidado general compara 35 combinaciones deterministas (siete órdenes × cinco puntuaciones MaxRects). El ancho de corte separa piezas adyacentes, mientras que la franja reservada puede extenderse fuera del límite útil: un borde existente del tablero no necesita ancho de corte adicional. Esto permite colocar dos piezas de 1000 × 498,5 mm en un tablero de 1000 × 1000 mm con un corte de separación de 3 mm.

Opcional Guillotina compara 14 combinaciones (siete órdenes × dos direcciones de división). Cada corte generado atraviesa su subpanel actual de borde a borde; se muestran y exportan a CSV la secuencia ordenada y los rectángulos residuales. El recorte se aplica antes de esa secuencia. La sujeción, la veta, los defectos, las tolerancias de acabado y el control de máquina siguen siendo entradas o comprobaciones de producción independientes.

El límite inferior del número de tableros es el redondeo al alza del total de área de piezas terminadas dividido entre el área útil del tablero. Excluye deliberadamente una inflación artificial del ancho de corte por pieza. Sólo un plan completo y viable que alcance este límite válido se marca como PROVEN OPTIMAL. La demostración se refiere al número de tableros. Los informes separan piezas terminadas, recorte, reserva por ancho de corte/separación y retales potenciales no solapados. Los retales del anidado general describen geometría; los de guillotina proceden de la secuencia de corte informada. Un umbral de lado mínimo identifica rectángulos potencialmente reutilizables, no un valor de merma garantizado.

6. Corte lineal 1D — PMZ-LINEAR 3.6.0

El motor compara órdenes deterministas first-fit y best-fit. Ejecuta una búsqueda branch-and-bound con reducción de simetrías para hasta 26 piezas y un presupuesto de 300.000 nodos. El recorte de extremos se resta en ambos extremos antes de optimizar; introduce una reserva total de extremo que incluya cualquier pérdida por corte de recorte.

Entre piezas, el ancho de corte consume n−1 separaciones. Por defecto, un corte terminal adicional separa la última pieza del material restante; la pérdida de material se recorta en el borde del material. El modo anterior explícito sólo cuenta separaciones entre piezas. Para material de 1000 mm, tres piezas de 300 mm y 10 mm de ancho de corte, el resultado predeterminado es 900 mm de material terminado, 30 mm de pérdida de sierra y 70 mm de retal. Un residuo cero utiliza el borde del material sin otra separación.

El límite del número de unidades de material transforma cada pieza en longitud + ancho de corte y cada unidad útil en longitud útil + ancho de corte. Un corte final sobre el retal restante no puede eliminar una pieza terminada, por lo que modifica el desglose entre pérdida y retal, no el número de piezas que caben. PROVEN OPTIMAL requiere alcanzar este límite o completar una búsqueda exacta. Los informes separan recorte, pérdida de sierra y retales, incluidos los que cumplen el umbral de reutilización seleccionado. Con material limitado, los totales mostrados describen el plan parcial asignado y el rendimiento del pedido completo se muestra por separado.

7. Planificación Multi-SKU — PMZ-MULTI 3.6.0

El planificador Multi-SKU trabaja con cantidades de proyecto en lugar de una única caja repetida. La versión actual ofrece tres modos deterministas: Por capas, 3D con control de apoyo y Híbrido. Layer-safe prueba siete estrategias de ordenación de artículos frente a cinco puntuaciones MaxRects para candidatos con alturas de capa compatibles. Cuando una capa compatible es efectivamente homogénea, también evalúa las mismas cuadrículas alineadas, giradas y patrones mixtos por franjas utilizados por el motor Single-SKU específico. Para cada capa por encima de la base, cada estrategia candidata se filtra contra la geometría real inferior antes de competir: una caja elevada sólo se acepta cuando se cumplen el umbral configurado de apoyo de la base y la regla de apoyo del centro. Support-aware 3D aplica la misma regla geométrica de apoyo permitiendo que las cajas empiecen en distintos niveles Z. Hybrid ejecuta ambos modelos dentro de los límites de seguridad y conserva el plan viable más fuerte, priorizando menos cargas y después mejor aprovechamiento/compacidad.

Se aplican la rotación de 90° de la base por SKU, la apilabilidad, prioridad, grupo, altura útil, carga útil y holgura. La gestión de grupos puede ignorarse, priorizarse durante la ordenación o hacerse estricta para impedir que grupos distintos compartan un palé/contenedor. Una caja no apilable nunca se utiliza como superficie de apoyo ni en Layer-safe ni en Support-aware 3D. Las prioridades influyen en el orden de asignación. El orden de paradas es independiente: en contenedores directos, la parada 1 es la primera entrega, el motor con control de apoyo tiende a situar las paradas posteriores más al fondo desde la puerta x=0 y la geometría final se audita para detectar cajas de paradas posteriores que bloqueen el corredor de salida y-z de una caja de una parada anterior.

La versión actual también informa de un centro de gravedad geométrico para cada carga, reparto longitudinal de peso puerta/parte trasera y reparto lateral izquierda/derecha. Vehicle Load Balance puede además calcular reacciones estáticas en dos apoyos longitudinales configurados por el usuario, añadir reacciones de tara introducidas por el usuario y compararlas con límites opcionales. En semirremolques, los apoyos informados son el bogie del remolque y el perno rey; la reacción en el perno rey no es un cálculo de carga sobre los ejes de la tractora. Son diagnósticos de planificación, no una certificación reglamentaria de cargas por eje. Un editor manual permite cambiar coordenadas x/y/z, girar 90° una caja cuando esté permitido o moverla entre cargas existentes o a una nueva carga; PackMize rechaza ediciones que hagan que el origen o el destino excedan límites, colisionen o incumplan la restricción de puerta, carga útil, regla estricta de grupos o regla geométrica de apoyo. Los ID siguen siendo únicos entre cargas y las estimaciones derivadas de contenedor paletizado se actualizan tras editar o restablecer. Las ediciones aceptadas invalidan cualquier etiqueta previa de demostración de número mínimo porque el plan deja de ser la salida intacta del optimizador.

El modelo con control de apoyo es deliberadamente conservador. No no inclina cajas, calcula resistencia al aplastamiento, infiere fricción ni certifica estabilidad física. Un umbral de apoyo es únicamente una regla geométrica sobre la base. Para mantener la respuesta del navegador, Support-aware 3D se limita a 120 SKU y 2.200 unidades por ejecución; Hybrid cambia automáticamente al motor Layer-safe por encima de ese umbral. El planificador global sigue aceptando hasta 250 SKU y 10.000 unidades.

Para cada envío, PackMize calcula un límite inferior estricto a partir del volumen total de producto y la carga útil; con separación estricta de grupos, los límites se calculan por grupo y se suman. Cuando se conoce el peso bruto de todos los SKU, se cargan todas las unidades solicitadas y el número de palés/contenedores obtenido coincide con ese límite, el resultado número de cargas se marca como MÍNIMO DEMOSTRADO. Esta afirmación sólo se aplica al número de cargas bajo las restricciones modeladas; no demuestra que cada colocación o secuencia operativa sea globalmente óptima. En caso contrario, el planificador muestra MEJOR SOLUCIÓN ENCONTRADA.

La estimación opcional de contenedor paletizado coloca los palés generados sobre el suelo del contenedor sin apilarlos. Comprueba la altura del contenedor, la abertura de la puerta en la orientación del palé cargado y la carga útil, pero sigue siendo una estimación geométrica de carga sobre el suelo, no un análisis completo de cumplimiento de cargas por eje ni de amarre. Vehicle Load Balance es un modelo estático independiente de dos apoyos.

8. Por qué importan los límites

La carga y el corte son problemas de optimización combinatoria. En muchos casos, encontrar o demostrar el óptimo global resulta computacionalmente costoso. Publicar el límite y el estado del resultado hace visible la incertidumbre en lugar de ocultarla tras un porcentaje o una etiqueta genérica de «optimizado».

9. Qué no modela PackMize

Los resultados de carga no tienen en cuenta la resistencia al aplastamiento de las cajas, estabilidad dinámica, amarre, cumplimiento legal completo de cargas por eje, reglas de mercancías peligrosas, maniobras completas de carretilla ni límites específicos del fabricante salvo que se introduzcan expresamente. El planificador Multi-SKU sí informa del centro de gravedad geométrico de la carga, diagnósticos de acceso por paradas y, en el modo Vehicle Load Balance, reacciones estáticas en dos apoyos a partir de la geometría configurada. El corte de tableros ofrece anidado general y un modo guillotina independiente. Los resultados de corte no generan trayectorias CNC ni tienen en cuenta defectos del material, sujeción, alcance de máquina o secuenciación de producción salvo que se representen expresamente en las entradas.

10. Entradas, instantáneas y comparaciones

Introduce las dimensiones exteriores de las cajas de envío y el peso bruto incluido el embalaje. Un peso Multi-SKU vacío o igual a cero significa desconocido: la geometría sigue disponible, pero no se muestran la carga útil completa, el centro de gravedad, las reacciones en los apoyos ni la demostración del número mínimo de cargas. Los errores numéricos de importación identifican la fila de datos antes de guardar cambios; las cantidades y órdenes de parada deben ser números enteros.

Los nuevos planes guardados conservan el pedido exacto, dimensiones, pesos, restricciones, coordenadas, versión del motor y fecha/hora. Al reabrirlos se restaura la geometría guardada y validada. Los planes antiguos sin geometría se identifican expresamente como recálculos. El traspaso desde escenarios conserva todas las entradas comparadas; las comparaciones guardadas se vuelven a evaluar con el motor actual al abrirlas en el planificador. El coste del equipo debe indicarse expresamente para obtener un total comparable; los importes sólo de manipulación se marcan como parciales. El coste por unidad y el ahorro sólo se muestran para pedidos completos y comparables.

11. Dimensiones estándar y fuentes de referencia

Las dimensiones predefinidas se almacenan por separado del motor en archivos de configuración. El campo volume_m3 se deriva de esas dimensiones interiores; nominal_volume_m3 conserva la indicación de planificación redondeada. No deben confundirse con el volumen útil después de aplicar holguras. Las características de construcción/carga de los palés y las dimensiones de los contenedores pueden variar según el pool, fabricante y serie de equipo, por lo que los usuarios operativos deben introducir dimensiones y capacidades reales cuando la precisión sea importante.

PackMize documenta la capa de referencias externas por separado en Fuentes y supuestos. Las normas publicadas, los datos de asociaciones de palés y las páginas de equipos de transportistas se utilizan para explicar dimensiones de referencia y variaciones; no sustituyen silenciosamente las entradas numéricas explícitas mostradas en las calculadoras.

Verifica el motor: PackMize publica casos de prueba reproducibles y en vivo en Laboratorio de benchmarks. Cada caso muestra la versión del motor, la solución, el límite y el estado.
Herramienta de planificación: la optimalidad matemática dentro de un modelo simplificado no es una certificación de seguridad. Las decisiones reales de carga y producción deben seguir verificándose frente al equipo, embalaje, material y requisitos profesionales reales.

12. Referencias y ejemplos resueltos

La familia MaxRects se describe en el trabajo de Jukka Jylänki investigación e implementación RectangleBinPack. PackMize utiliza su propia implementación, restricciones y etiquetas de resultados; la referencia no constituye una certificación externa de este software.

Consulta un ejemplo de palé, un ejemplo de contenedor, un lista de corte de tableros o una lista de corte lineal.