Как проверить результат перед показом
Проверка нужна не для того, чтобы получить большее число, а чтобы убедиться, что число измеряет именно то, что написано рядом с ним.
Проверка нужна не для того, чтобы получить большее число, а чтобы убедиться, что число измеряет именно то, что написано рядом с ним.
Шаги
-
Проверьте код:
.venv/bin/python -m pytestОсобенно важны инварианты пропускной способности: они защищают от учёта хвоста расчёта как KPI и от двойного учёта
nonsort. -
Повторите штатный запуск с фиксированной случайной последовательностью:
.venv/bin/python -m robozon.runner scenarios/production-12-lines.json \ --policies balanced-load --json > /tmp/result-a.json .venv/bin/python -m robozon.runner scenarios/production-12-lines.json \ --policies balanced-load --json > /tmp/result-b.json cmp /tmp/result-a.json /tmp/result-b.jsonПри одинаковых
seedи CV файлы должны совпасть. Это проверяет воспроизводимость одного случайного прогона, а не отсутствие разброса в реальной работе. -
Для каждого показателя ответьте:
- Это вход, выход сортировки или сквозной выход?
- Какова длительность рабочего окна и прогрева?
- Не включён ли хвост расчёта в KPI? Для KPI ответ всегда «нет».
- В каких единицах число: товары, КТЯ или палеты?
- Откуда взялся норматив, если это площадь или персонал?
-
Проверьте материальный баланс. Сквозной выход может быть немного выше или ниже выхода сортировки в отдельном окне из-за незавершённой работы на его границах. Для палет используйте связь
палеты × КТЯ на палете × товары в КТЯ.nonsortне добавляйте повторно к основному тракту. -
Запустите чувствительность и Монте-Карло. Честный вывод включает не только лучший режим, но и условие его устойчивости: 12 линий для штатной загрузки не выше 85% и 13 линий для строгого N+1.