Tiempo de ejecución de optimización
Reflejos
Controlar el tiempo de ejecución de la optimización es crucial para alinear los resultados con los plazos operativos y los recursos informáticos..
- MiningMath permite a los usuarios definir un límite de tiempo (
RunTimeLimit
) que guía el tiempo durante el cual el sistema iterará hacia mejores soluciones. - La calidad de los resultados mejora progresivamente, Permitir una revisión temprana sin detener el desarrollo.
- El tiempo de ejecución está influenciado por la complejidad del modelo y el tamaño de los datos., ofreciendo flexibilidad para pruebas y diseño de escenarios.
El tiempo de ejecución de la optimización es una preocupación común para los profesionales que trabajan con modelos robustos.. Esta página tiene como objetivo proporcionar contexto y orientación para mejorar los tiempos de ejecución., lo que puede ser bastante útil para tener una visión general del comportamiento del proyecto bajo diferentes suposiciones e hipótesis.
Barreras de tiempo de ejecución
El tiempo de ejecución depende de una combinación de múltiples aspectos.. Está directamente relacionado con la complejidad del depósito y es proporcional al número de:
- bloques.
- Destinos Múltiples (+3).
- Restricciones de uso y objetivos en conflicto con el mismo orden jerárquico.
- Variables importadas.
- Rangos de períodos.
- Parámetros que cambian con el tiempo.
- Yacimientos de minas múltiples.
- Memoria RAM disponible. Puedes comprobarlo usando el Administrador de tareas de Windows.. Puede encontrar más detalles sobre el hardware recomendado aquí.
A menudo, los usuarios están preocupados por los límites para manejar modelos con +20 millones de bloques. MiningMath puede manejar virtualmente cualquier tamaño de modelo. Ha realizado con éxito pruebas con modelos de hasta 240M bloques sin rebloqueo, que tardó tres semanas en ejecutarse, y sobre un 32 máquina de escritorio Gb.
Típicamente, conjuntos de datos con 5 millones de bloques toman algunas horas (en una máquina de 8 GB de RAM). En el futuro, La tecnología será capaz de ejecutar simultáneamente múltiples escenarios en la misma computadora.. No hay necesidad de servidores especiales con capacidades adicionales de RAM para depósitos de tamaño promedio.
Mejoras de hardware
Memoria
General, el principal cuello de botella para MininingMath es el consumo de memoria. Las actualizaciones de hardware que tienen un impacto más positivo en el tiempo de ejecución de la optimización son:
- Capacidad RAM
- Frecuencia RAM
Núcleos e hilos
MiningMath es una aplicación de un solo hilo, lo que significa:
- Los núcleos y subprocesos adicionales no afectan el tiempo de ejecución de la optimización.
- Los procesadores con velocidades de reloj más altas mejoran el tiempo de ejecución.
subprocesos múltiples
MiningMath utiliza el solucionador de programación lineal proporcionado por CLP para implementar el Algoritmo simplex. Cada ejecución de CLP utiliza un núcleo/núcleo/procesador porque Simplex no es fácilmente paralelizable (lo que significa que no puede ejecutarse más rápido usando múltiples procesadores). Hasta donde nuestros estudios han demostrado, No ha habido una solución de mercado para esto., y la investigación científica aún no ha dado resultados muy satisfactorios.
Estrategias para reducir el tiempo de ejecución.
Usar superficies
La estrategia más recomendada es pasar por los pasos del tutorial de validando datos y validaciones de restricciones entonces comenzando a usar el superficies como guía para reducir la complejidad, sin perder aspectos de dilución en tu acercamiento.
Para obtener dicha orientación sobre una vista más amplia con un tiempo de ejecución reducido, puede, por ejemplo crear retrocesos optimizados. El último paso es obtener un detallado Calendario ya que el modelo tiene tal complejidad. Si tales enfoques no ofrecen un tiempo de ejecución adecuado, tratar de obtener resultados intermedios dividiendo la producción total en 2 o 3 periodos.
Rebloqueo
El rebloqueo es un método utilizado para disminuir la cantidad de bloques en un modelo de bloques mediante la combinación de algunos de los bloques más pequeños para crear otros más grandes.. Esto se puede hacer usando MM Labs como se describe aquí.
Nota: al volver a bloquear su modelo es importante evaluar Aspectos de dilución que se pueden perder. aumentando el tamaño del bloque.
Límite de tiempo
Es posible indicar un límite de tiempo en horas antes de ejecutar un escenario. El límite de tiempo se define en horas debido a la complejidad habitual de los proyectos de minería y por el hecho de que MiningMath siempre intentará ofrecer una solución razonable..
Este es un parámetro complejo que puede no siempre ser factible de cumplir.. También podría dificultar la solución final., ya que está restringiendo que el algoritmo explore una gama más amplia de soluciones potenciales. Sin embargo, incluso si no se obtienen mejores resultados, las soluciones rápidas aún le darán una evaluación más rápida de su proyecto. Para comprender mejor cómo funciona el límite de tiempo, puedes visitar esto página.
Plazos
Otra estrategia para reducir el tiempo de ejecución podría ser el uso de plazos.. MiningMath permite la integración entre la visión de corto y largo plazo en el mismo proceso de optimización, facilitando el análisis y las definiciones estratégicas.
Por ejemplo, Es posible considerar menos detalles para horizontes temporales más largos.. Estos horizontes deben considerarse en la visión general de la mina., hasta el agotamiento, pero consumen tiempo de procesamiento de optimización que puede enfocarse más en los primeros años de operación. La siguiente figura muestra un ejemplo con plazos mensuales en los períodos iniciales del proyecto., transición a períodos anuales, y extenderse a períodos decenales en las etapas finales. Puedes visitar esto página para obtener más información sobre cómo utilizar los plazos.