Перейти к содержимому
Robozon: база знаний
Esc
navigateopen⌘Jpreview
На этой странице

HTTP API и команды терминала

Все команды запускаются из корня проекта. Ниже используется Python из виртуального окружения .venv.

Все команды запускаются из корня проекта. Ниже используется Python из виртуального окружения .venv.

Аналитика

Для штатного сценария дашборда «12 линий · штатный режим с разбросом»:

.venv/bin/python -m robozon.analytics scenarios/production-12-lines.json
.venv/bin/python -m robozon.analytics scenarios/production-12-lines.json --json

Команда считает номинальные потоки, КТЯ, палеты, nonsort и загрузку ворот. Она не запускает DES и не возвращает фактический сквозной выход.

Сравнение политик

.venv/bin/python -m robozon.runner scenarios/production-12-lines.json \
  --policies throughput-first departure-priority balanced-load \
  --json

Без --json команда выводит краткую строку по каждой политике. С --json ответ содержит:

Поле Содержание
runs Полные результаты каждой политики: сценарий, метрики DES, площадь.
metric_rows Краткие показатели для таблицы сравнения.
insights Русскоязычные выводы.
floor_plan Данные для плана зала.
failure_analysis Данные об отказе, если он задан.
labor Аналитический расчёт персонала.

Монте-Карло

.venv/bin/python -m robozon.monte_carlo scenarios/production-12-lines.json \
  --policy balanced-load \
  --replications 12 \
  --service-time-cv 0.25 \
  --json

Опции:

Опция По умолчанию Значение
--policy balanced-load Правило управления.
--replications 20 Число последовательных прогонов, не меньше 1.
--service-time-cv значение сценария Переопределяет CV. 0 отключает случайность.
--json нет Печатает JSON вместо текста.

Веб-сервер

.venv/bin/python -m robozon.web --host 127.0.0.1 --port 8000

После запуска доступны четыре GET-метода.

Адрес Назначение
/api/scenarios Список сценариев, метаданные и поля, которые можно переопределить.
/api/compare Один или несколько вариантов политики.
/api/sensitivity Серия прогонов с изменением одного параметра.
/api/monte-carlo Серия случайных DES-прогонов.

Примеры запросов

curl 'https://robozon.vadimevgrafov.ru/api/compare?scenario=production-12-lines.json&policies=balanced-load'
curl 'https://robozon.vadimevgrafov.ru/api/sensitivity?scenario=production-12-lines.json&policy=balanced-load&param=sorter_count&values=10,11,12,13'
curl 'https://robozon.vadimevgrafov.ru/api/monte-carlo?scenario=production-12-lines.json&policy=balanced-load&replications=20&service_time_cv=0.25'

/api/compare, /api/sensitivity и /api/monte-carlo принимают только поля из списка override_fields, который возвращает /api/scenarios. При ошибке сервер отвечает HTTP 400 и JSON с ключом error.

Эта страница была полезной?