Первый запуск модели за полчаса
За полчаса вы получите первый результат для штатного варианта проекта и увидите, чем входное требование отличается от фактического выхода. Нужны Python 3.1
За полчаса вы получите первый результат для штатного варианта проекта и увидите, чем входное требование отличается от фактического выхода. Нужны Python 3.11+ и терминал.
Шаг 1. Подготовьте окружение
В корне репозитория должны быть pyproject.toml, scenarios/, src/ и
tests/. Выполните:
python3 -m venv .venv
.venv/bin/python -m pip install -e '.[dev]'
Виртуальное окружение .venv хранит зависимости проекта отдельно от других
программ Python на компьютере.
Шаг 2. Убедитесь, что модель исправна
.venv/bin/python -m pytest
Ожидаемый результат: все тесты заканчиваются словом passed. Они проверяют
формулы, события DES, исключение хвоста расчёта из KPI и веб-интерфейс.
Шаг 3. Посмотрите номинальные мощности
В этом учебнике используем сценарий, который в дашборде называется «12 линий · штатный режим с разбросом»:
.venv/bin/python -m robozon.analytics scenarios/production-12-lines.json
Это ещё не имитация. Команда отвечает на вопрос: «какие потоки и мощности следуют из заданных параметров?» В результате будут примерно:
- 100 000 товаров/ч на входе;
- 3 703,7 КТЯ/ч;
- 185,2 палеты/ч полного sort-потока;
- 192 палеты/ч мощности 24 ворот;
- 96,5% расчётной загрузки ворот.
Здесь 100 000 товаров/ч — требование задачи, а не доказанный результат работы центра.
Шаг 4. Запустите имитацию
.venv/bin/python -m robozon.runner scenarios/production-12-lines.json \
--policies balanced-load --json
Команда запускает дискретно-событийную имитацию: создаёт поток КТЯ, проводит его через очереди и оборудование, собирает выходные КТЯ по направлениям и считает только завершения в рабочем окне после прогрева.
В JSON найдите:
runs[0].simulation.totals.sorting_throughput_items_per_hour
runs[0].simulation.totals.end_to_end_throughput_items_per_hour
runs[0].area.total_area_m2
Для фиксированного seed=42, четырёх часов прогрева, 24 часов измерения и
CV=0,25 результат будет около 99 350 товаров/ч после сортировки, 99 450
товаров/ч сквозного выхода и 23 445 м² расчётной площади. Это один
воспроизводимый прогон, а не обещание, что в любой случайный день получится
та же цифра до единицы.
Что вы только что сделали
Параметры сценария
|
+--> аналитика: номинальные потоки и мощности
|
+--> DES: очереди, случайность и фактические завершения в окне
Дальше откройте дашборд или разберите результат по шагам.
Если команда не работает
| Симптом | Что сделать |
|---|---|
No module named robozon |
Выполните установку из шага 1 и используйте .venv/bin/python. |
pytest: No module named |
Установите зависимости: .venv/bin/python -m pip install -e '.[dev]'. |
| Python старее 3.11 | Установите современный Python и заново создайте .venv. |
| Расчёт идёт дольше ожидаемого | Суточный DES-прогон моделирует тысячи КТЯ. Начните с одной политики, как в примере. |