Студенты Университета МИСИС — победители хакатона от Магнита

Команда «MISIS and more» заняла первое место в онлайн-хакатоне Magnetic Code Hackathon, посвященном решению задач для одного из крупнейших ритейлеров России — сети магазинов Магнит. Участники создали мобильное приложение с удобным интерфейсом, которое поможет сотрудникам склада быстро получить лучший вариант размещения коробок с товаром на палете.

Участникам необходимо было решить задачу распределения определенного количества коробок так, чтобы объем тары использовался оптимально, а товары лежали наиболее плотно. В результате расчета должна была появиться схема размещения коробок с учетом возможных вращений и с указанием порядковых номеров загрузки.

В состав команды вошли опытные участники, уже неоднократно создававшие цифровые продукты как для вуза, так и для сторонних компаний: Илья Брегман (ИТКН, 2 курс), Геннадий Альхеев (ИТКН, 3 курс), Анастасия Зубченко (ИТКН, 2 курс), Марк Вишневский (выпускник НИТУ МИСИС, студент университета Иннополис), Евгений Гришин (студент ПГУ).

«Трое backend-разработчиков на Java отвечали за разработку алгоритма, налаживание процесса сортировки и проработку системы парсинга json файла, приходящего от WMS. Frontend-разработчик на Flutter занимался организацией отображения данных с бэкенда, а также творил чудеса с различными вариантами визуализации размещения коробок на палете. Я, как UX/UI-дизайнер, работал над проработкой удобного интерфейса, а также презентацией на защиту проекта. В результате мы должны были получить кроссплатформенное мобильное приложение», — рассказал капитан команды Илья Брегман.

Участники приняли решение, что выбор алгоритма из трех возможных вариантов должен происходить динамически в зависимости от загруженных данных. Такой подход позволяет компенсировать недостатки каждого отдельно взятого алгоритма и всегда находить оптимальный вариант упаковки. Алгоритм полного перебора Brute Force, например, генерирует идеальное решение, но занимает очень много времени. LVFF — итеративный поиск самого объёмного объекта и установка в любое возможное место. LAFF — алгоритм, основанный на идее упаковки объектов с большой площадью в первую очередь.

Самой интересной частью проекта была визуализация. За время хакатона у ребят возникло целых три идеи того, как можно отобразить результат работы предложенного алгоритма, но выбрать оптимальный вариант помогло время на отдых.

«Первой идеей было создать полноценную 3D-модель получившегося расположения коробок на палете. Однако при проработке данного варианта мы столкнулись с тем, что приложение очень долго прогружало модели. Вторым вариантом стало создание четырёх проекций палеты, заполненной коробками. На первом экране — вид слева, справа и спереди, на втором — пошаговое заполнение палеты с видом сверху. Данный вариант работал довольно быстро, однако ни о каком удобстве не могло идти и речи. И вот, когда мы оказалась в идейном тупике, было принято решение выделить пару часов времени на отдых. Как раз в это время младшая сестра одного из участников команды смотрела TikTok, и коллега, бросив взгляд на видеоряд, мелькавший на экране смартфона, побежал рассказывать внезапно возникшую идею применения „ложного“ 3D — изометрии. Таким образом, мы одновременно и сделаем визуализацию более понятной, и сохраним скорость работы приложения», — поделился историей возникновения идеи Илья Брегман.

В результате у команды получился концепт мобильного кроссплатформенного приложения, позволяющего сотруднику склада увидеть необходимое расположение коробок. Пошаговый прогресс позволяет вернуться на шаг назад и уточнить детали. Так как в ТЗ допускалась возможность вращения коробок, то для определения стороны участники создали отдельную текстуру в виде линии разреза, которая обозначает верх. Также для большего удобства приложение показывает название, габариты и тип товара, который в текущий момент «падает» на палету.

Участникам удалось добиться высокой скорости работы алгоритма. Файл, содержащий информацию о 56 коробках с товарами, он обработал всего за три секунды.

Все участники команды являются членами студенческого хакатон-клуба НИТУ МИСИС, развивающего платформу IT at MISIS (ITAM) для поддержки студенческих инициатив в сфере информационных технологий.

Директор Института биомедицинской инженерии Фёдор Сенатов на визионерской сессии «Прекрасное не далеко. Квантовый мир завтрашнего дня»Директор Института биомедицинской инженерии Фёдор Сенатов на визионерской сессии «Прекрасное не далеко. Квантовый мир завтрашнего дня»