Проект · игры-задачи

ОМ-Игры: полигон операционных решений

60 интерактивных задач по исследованию операций и операционному менеджменту — от маршрутизации и размещения до расписаний, очередей и управления запасами. Считают на реальных данных: улицы OpenStreetMap, бортовые сигналы самолётов, суда в портах, яркость ночного неба, солнечный ветер. Без регистрации, без установки, всё в браузере.

  • 60 игр-задач
  • 14 категорий
  • 16 движков
  • 65 источников данных
  • 67 записей аудита API

Приложение · 60 игр

Выберите игру в библиотеке — задача откроется здесь же

На весь экран ↗

Внутри — библиотека с фильтрами по категориям и уровню, карты, каталог источников данных и аудит доступа к API. Прогресс по задачам хранится локально в браузере, ничего не отправляется на сервер.

Что внутри

Категории собраны вокруг типовых решений: где разместить, как связать, в каком порядке пустить, сколько держать в запасе, кого обслужить первым.

  • 7 Тёмное небо и аврора
  • 7 Производство и поток
  • 4 Логистика и маршруты
  • 4 Размещение и покрытие
  • 4 Запасы и спрос
  • 4 Сервис и очереди
  • 4 Планировка
  • 4 Расписания
  • 4 Качество
  • 4 Сети поставок
  • 4 Доходы и цены
  • 4 Аналитика и рост
  • 3 Авиация
  • 3 Море и порты

Механик — 16: от точного перебора и жадных эвристик до имитационного моделирования и многокритериального выбора. Каждая задача проверяется по числу, а не по «правильному варианту»: ответ считается заново на данных пользователя.

На каких данных

Каталог из 65 источников в 11 доменах: транспорт, авиация, море, погода и климат, энергетика, население, карты, космос и связь. Часть отвечает без ключа, часть требует регистрации — это проверено и записано в аудите.

01

Геоданные и карты

Улицы и здания OpenStreetMap, POI и маршруты через OSRM, адреса и организации из 2ГИС и Яндекс.Карт. На них строятся задачи покрытия, маршрутизации и размещения.

02

Живой транспорт

Бортовые сообщения ADS-B, позиции судов AIS, расписания и опоздания поездов. В задачах это даёт настоящие интервалы, очереди на входе и стоимость срыва расписания.

03

Небо и погода

Яркость ночного неба VIIRS, индекс авроры, солнечный ветер NOAA SWPC, прогноз Open-Meteo. Здесь появляются задачи про засветку, окна наблюдений и планирование под неопределённость.

Аудит от 07.11.2026: 67 эндпоинтов, 37 отвечают анонимно, 27 требуют ключа или параметров, 3 заблокированы, 48 хостов отдают CORS. Результаты — в разделе «Живые данные» внутри приложения.

Как это устроено

Приложение живёт отдельно от сайта и подключается как готовый набор файлов — так его можно пересобирать, не трогая вёрстку ek0.ru.

01

Отдельная сборка

Приложение собирается в своём проекте и приезжает сюда готовым набором файлов: index.html, css/main.css и десять js-модулей. В этом репозитории нет ни исходников игр, ни сборщика — только копия сборки в public/games/app/.

02

Обновление одной командой

После пересборки игр достаточно выполнить npm run sync:games: файлы копируются, а числа на этой странице (игры, категории, движки, платформы, аудит) пересчитываются из самой сборки в src/data/games-stats.json.

03

Статика без бэкенда

Роутинг на хеше, запросов к своему серверу нет, поэтому приложение работает и внутри iframe, и по прямой ссылке, и с диска. Весит 689 КБ, из внешнего — только тайлы OpenStreetMap на картах.

Карты в приложении используют тайлы OpenStreetMap — для учебной нагрузки этого достаточно, при росте трафика нужен собственный тайл-сервер или провайдер. Версия сборки: 1.0.0, от 2026-11-07.