Steps to resolve slow schedule run time.
Preface
Cache Files
In your working folder you will see these files:
Tactical Scheduler file (.tsch)
Haul Infinity file (.hinf)
Cache file (.cache)
The cache file is used to store cycle time results from Haul Infinity. The bigger the cache file, the faster the schedule, because it can look up the cycle times instead of recalculating them.
If Haul Infinity is modified, or if the cache file is deleted, then the cache is regenerated on the next schedule run. This is why the schedule runs slower after changing Haul Infinity, and gets faster on subsequent runs.
Expected Performance
Assuming that the cache file is present:
Schedules with ~3,000 blocks should take 0-2 seconds to run one period.
Schedules with ~10,000 blocks should take 5-15 seconds to run one period.
Schedules with ~100,000 blocks may take 30-60 seconds to run one period.
The top right of the scheduling dialog contains some statistics on the current run. As a general rule, neither the Available Sources nor the Available Destinations should exceed 200.
...
Available Sources should not exceed 200.
Faster Scheduling
Check 1: Setup > On Bench Dependencies
Check 2: Setup > Between Benches
Check 3: Setup > Destination Logic.
Check 4: Setup > Agents.
Check 5: Setup > Incentives.
Check 6: Schedule > Calendar > Agents / Drills
Check 7: Setup > Stockpiles > Parcel Fingers
Check 8: Schedule > Calendar > Drills.
...
Check 1: Setup > On Bench Dependencies
Try to avoid using the <None> dependency type in long term plans. Switching to the Branch Out dependency type may yield a 3-4x speed improvement due to the reduced number of available blocks at each time step.
...
Avoid using <None> dependencies on benches.
Check 2: Setup > Between Benches
Any bench with a <None> Expand Distance is considered available to mine in every time period, even if it is underground. This slows down the schedule, in addition to allowing underground mining on that bench.
...
Avoid using <None> dependencies between benches.
Check 3: Setup > Destination Logic.
If you have more than 10 dumps, split the dump destinations into an ordered list. This reduces the number of haul routes that have to be tested at each time step.
...
Ordering the dump destinations reduces the scheduling time.
Check 4: Setup > Agents.
Try to avoid using the Proportional Extraction setting. This can square the scheduling time, since it mines every material in multiple passes instead of one pass.
...
Proportional Extraction can square the scheduling time.
Check 5: Setup > Incentives.
Generally speaking, an Agent should not be tasked with more than 10 incentives.
Check Ниже приведены действия, которые следует выполнить при слишком медленном запуске календарного плана.
Предварительные условия
Кэш-файлы
В вашей рабочей папке вы увидите следующие файлы:
Файл Tactical Scheduler (.tsch)
Файл Haul Infinity (.hinf)
Кэш-файл (.cache)
Кэш-файл используется для хранения результатов времени цикла от Haul Infinity. Чем больше этот файл, тем быстрее выполняется запуск планирования, поскольку календарный план сможет найти необходимое время цикла, а не пересчитывать его.
При изменении проекта Haul Infinity или удалении кэш-файла, необходимый файл вспомогательной памяти регенерируется при следующем запуске календарного плана. Вот почему планирование выполняется медленнее после изменения Haul Infinity и ускоряется при последующих запусках.
Ожидаемая производительность
Рассмотрим пример проекта, для которого уже есть кэш-файл.
Календарный план с ~ 3000 блоками должно занимать 0–2 секунды для запуска одного периода.
Календарный план с ~ 10 000 блоками должно занимать 5–15 секунд для запуска одного периода.
Календарный план с ~ 100 000 блоков может занять 30–60 секунд для запуска одного периода.
В правом верхнем углу диалогового окна составления календарного плана содержится некоторая статистика по текущему запуску. Как правило, значения в полях Available Sources (Доступные источники) и Available Destinations (Доступные назначения) не должны превышать 200.
...
Значение Available Sources не должно превышать 200
Ускорение составления календарного плана
Для ускорения процесса планирования, выполните перечисленные ниже проверки:
Шаг 1: Setup > Dependencies > On Bench
При долгосрочном планировании старайтесь избегать использования типа зависимости <None>. Переключение на тип <Branching> может увеличить скорость планирования в 3-4 раза за счет уменьшения количества доступных блоков на каждом временном интервале.
...
Шаг 2: Setup > Dependencies > Between Benches
Любой уступ с расстоянием простирания <None> считается доступным для разработки в любой период времени, даже если он находится под другим. В дополнение к разрешению подземной выемки на этом уступе, это замедляет ход планирования.
...
Шаг 3: Setup > Destination Logic
При наличии более 10 отвалов, разделите их назначения на упорядоченный список. Это сокращает количество маршрутов перевозки, которые подлежат тестированию на каждом временном интервале.
...
Упорядочивание мест назначения для отвалов сокращает время планирования
Шаг 4: Setup > Agents
Старайтесь избегать использования настройки пропорциональной выемки (Proportional Extraction). Это поможет сократить время планирования, так как каждый материал будет разрабатываться за несколько проходов вместо одного.
...
Шаг 5: Setup > Incentives
Не рекомендуется задавать одному агенту более 10 стимулов.
Шаг 6: Schedule > Calendar > Agents/Drills
...
In each period, try to enter zeroes in any incentive that is not relevant to the activities in that period. For example, in a project has 20 priority incentives (one mining sequence for each cutback), the Agent should only be following the incentives that apply to its current locations.
...
(Агенты/Буровые станки)
В каждом периоде старайтесь вводить нули для любого стимула, не имеющего отношения к деятельности в этот период. Например, для проекта, в котором есть 20 приоритетных стимулов (одна последовательность добычи для каждой стадии разработки), агент должен следовать только тем, которые применяются к его текущим положениям.
Шаг 7: Setup > Stockpiles > Parcel Fingers
...
Check how many material types can be mapped into a stockpile. If the project has over 30 material types, use a Mutex Subset to map the ex-pit material types into simpler ROM blend categories. This reduces the number of inputs into the crusher feed optimisation.
...
(Доли полезных компонентов)
Проверьте, сколько типов материалов можно сопоставить со складом. Если в проекте более 30 типов материалов, используйте мьютексное подмножество, чтобы сопоставить типы материалов вне карьера с более простыми категориями усреднения руды. Это уменьшает количество вводов данных для оптимизации питания дробилки.
Шаг 8: Schedule > Calendar > Drills
...
Do not enter 1000 drills into the Calendar. Every drill becomes an individual agent, and runs its own calculations to figure out where to drill. If you need to uncap the drills, change the drill time usage to 10,000% utilisation.
...
(Буровые станки)
Не вводите более 1000 буровых единиц в Календарь. Каждая буровая единица становится отдельным агентом и выполняет свои собственные вычисления для определения мест проведения буровых работ. Если вам нужно разблокировать ограничение по бурению, измените использование времени на 10 000 %.
Шаг 9: Haul Infinity > Join Interaction Mode > Auto Joins
...
Try to avoid letting blocks in Haul Infinity connect indiscriminately to 10+ nearby roads/ramps. Each additional connection increases the pathfinding calculation time.
...
(Haul Infinity > Режим взаимодействия объединений > Автоматические объединения)
Старайтесь не позволять блокам в Haul Infinity произвольно соединяться с более чем 10 ближайшими дорогами/съездами. Каждое дополнительное соединение увеличивает время расчета поиска пути.
Для повышения точности, скорости и простоты использования включите функцию присвоения съезда в своем проекте Haul Infinity, как описано в разделе TS. Назначение объединений на основе имен сегментов в Haul Infinity.