Привет, Хабр! Сегодня мы хотим рассказать о том, как машинное обучение помогает нам освободить время сотрудников в магазинах от длительного пересчета товаров в прямых поставках и сосредоточиться на работе с клиентами. В этом посте мы расскажем, как работает наш продукт «Светофор 3.0», сколько рабочего времени он позволяет экономить и как мы используем ML для оценки вероятностей наличия расхождений в заказах. Кроме этого, расскажем о тонкостях выстраивания доверия сотрудников рекомендациям умной системы. Всех заинтересованных приглашаем под кат и к обсуждению в комментариях.

Начнем с фактов. У Леруа Мерлен более чем полторы тысячи поставщиков, которые доставляют товары напрямую в магазины, а количество уникальных артикулов измеряется десятками тысяч единиц. Исходя из несложных арифметических расчетов можно понять, что сотрудникам приемки магазинов каждый день приходится пересчитывать огромное количество товаров при принятии ответственности за товар: сколько приехало лампочек, сколько перфораторов, горшков для цветов и так далее. 

Операция детального пересчета товара — самая длительная в процессе приемки. А если учитывать наши объемы, она требует большого количества ресурсов и ограничивает пропускную способность магазинов. 

Мы разработали «Светофор 3.0», чтобы сделать реальностью регулярные приемки без детального пересчета товаров (увеличить процент доверительных приемок), ограничиваясь лишь проверкой количества грузовых мест. Такой подход помогает кратно увеличить пропускную способность приемки товаров. Как результат, зона приемки высвобождается за счет последующего размещения товаров в другие зоны склада магазина или в торговый зал. Да и сам процесс приемки становится гораздо проще. Именно поэтому при увеличении объема прямых поставок нет надобности в привлечении дополнительного персонала.

Процесс прямых поставок в Леруа Мерлен

Поясним, что такое «прямые поставки» для Леруа Мерлен. В нашей сети товары, в большинстве случаев, поступают в магазины двумя способами: 

  • С распределительных центров (РЦ), и в этом случае у РЦ есть возможность проконтролировать качество поставок от наших поставщиков.

  • Напрямую от поставщика в магазины. И в этом случае, магазин - это первая и единственная инстанция по проверке товаров перед принятием их на баланс. Поэтому мы задались целью оптимизировать этот канал, составляющий 37% поставок от общего числа. 

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

Для решения этой задачи хорошо бы иметь в зоне приемки надежную систему, которая будет говорить: «В этой партии все нормально, а эту партию пересчитайте». Именно поэтому у команды возникла мысль научить модель прогнозировать поставки, которым можно доверять. Ведь фактические расхождения — это нечастое явление в нашей практике, в денежном соотношении доля найденных расхождений к общей сумме принятых заказов всего 0,19%. И вынужденный пересчет всех заказов — заведомо бессмысленная трата ресурсов. В обучающую выборку для ML-модели были занесены 1519 поставщиков, а общее количество артикулов для прямых поставок составляло на момент старта проекта 68 275.

«Светофор 3.0» с точки зрения бизнеса 

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

Чтобы автоматизировать расчет этих показателей, ещё весной 2021 года мы начали разработку продукта под названием «Светофор 3.0». В его основе лежит обучающаяся на исторических данных ML-модель, которая анализирует прямые поставки и результаты их приемки. Для выдачи рекомендации о решении по пересчету модель анализирует целый ряд показателей на уровне каждого заказа, таких как магазин, поставщик, весогабаритные характеристики товара, стоимость товара, отгруженное количество, принадлежность товара к отделу и так далее. 

По статистике, проблемы и расхождения возникали в 1,56% поставок. А это значит, что решение должно рекомендовать доверительную приемку примерно 90-98% всех поставок. При этом сотрудники должны пересчитывать только те поставки, которые с высокой долей вероятности содержат в себе расхождения. А результаты каждого пересчета также попадают в «Светофор 3.0».

Мы решили принимать решение о доверительности приемки следующим образом:

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

Психология и финансы

Конечно, нельзя просто так взять и сказать более чем 300 сотрудникам из разных магазинов, что все их решения, весь их опыт теперь не имеют смысла и им нужно слушаться какого-то искусственного интеллекта. Поэтому мы оставили рекомендательный характер решений «Светофора 3.0», но добавили обязательный блок выбора причин пересмотра рекомендованных решений. Это было полезно, чтобы провести анализ и запланировать индивидуальную работу с магазинами, сотрудники которых зачастую принимают решения, не соответствующие рекомендациям «Светофора 3.0». 

Так светофор встроился в привычную для пользователей систему Navision
Так светофор встроился в привычную для пользователей систему Navision

В конечном счете одна из ключевых метрик, которой мы придерживаемся, — это затраты магазинов на поиск каждого рубля расхождений. Задача продукта «Светофор 3.0» состоит в том, чтобы этот показатель был меньше 1 рубля. Кроме прямой очевидной выгоды, соблюдение этого правила означает, что мы пересчитываем как можно меньше и по возможности только те поставки, в которых велика вероятность найти расхождения.

Таблица ниже показывает, что продукт успешно справляется с этой задачей. Да, мы сознательно заменили рубли на «отвертки», потому что нам, разумеется, нельзя публиковать здесь точные данные. Но поскольку в статистике важны относительные величины, уровень актуальности таблицы остался тем же.

Затраты на пересчет, в отвертках

Найденные расхождения, в отвертках

Затраты на 1 рубль найденных расхождений, руб.

Рекомендуется

«Светофором»

5

80

0.0625

Не рекомендуется «Светофором», решение принято сотрудниками магазина

180

30

6

Всего

185

110

1.68

Значения в таблице взяты за случайный период времени на случайном числе магазинов. 

Из табличных данных видно, что «Светофор 3.0» рекомендовал пересчитать небольшое число поставок, в которых были найдены расхождения по стоимости, равные 80 отверткам. Затраты на пересчет составили 5 отверток, что равно 5/80 (0,0625 рубля на 1 рубль расхождений). В то же время сотрудники магазинов самостоятельно приняли решение пересчитать дополнительные поставки, затратив время, эквивалентное 180 отверткам, и нашли еще 30 отверток расхождений. Итого получилось, что затраты на 1 рубль найденных расхождений составили 1,68 рубля.

Таким образом, экономически выгодно руководствоваться только рекомендациями «Светофора 3.0». И текущая цель команды — убедить сотрудников складов магазинов пересчитывать только те поставки, которые рекомендует «Светофор 3.0». К счастью, свобода выбора и доступность результатов позволяют людям прийти к этому выводу самостоятельно, на своем личном опыте.

Результаты

«Светофор 3.0» не только позволяет нам снизить затраты на пересчет товаров и увеличить пропускную способность приемки, но и предоставляет возможность ротировать персонал в зоны по работе с клиентами. А это значит, что помимо достижения финансовых результатов мы повышаем качество сервиса в магазинах. 

В следующем посте мы подробно расскажем, на каких моделях ML работает новое решение, как мы их совершенствуем, какие потребовались интеграции для того, чтобы настроить передачу данных, контроль бизнес-показателей и повышение точности обучения системы. И если вы еще не подписались на наш блог, самое время сделать это, чтобы не пропустить следующий пост. 

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

Комментарии (5)


  1. Ka_Wabanga
    18.10.2022 14:41

    Контрольная группа, чтобы через полгода не прийти к “self fulfilling prophecy”?


    1. lizvladi
      18.10.2022 15:23

      Для избежания обозначенной проблемы в продукте реализован модуль рандомного скоринга, когда с определенной вероятностью поставки, которые маркируются как "не требующие пересчёта", всё равно отправляются на пересчёт для пополнения датасета для обучения.


  1. E_BEREZIN
    19.10.2022 15:03

    На фотографии видно, как сотрудники склада копошатся в коробках, пересчитывая количество единиц товара. Можно взвесить одну единицу, всю коробку - и получить общее количество единиц в коробке. Это сократит время пересчета товара)

    Пример с ML интересен, вероятно, есть подводные камни, которые не учитывавет Светофор, но по опыту знают сотрдуники магазинов, когда принимают решение не следовать рекомендациям.

    Если сегодня повтащик доверительный, Светофор не рекомендует, как его вернуть оьбратно в пересчет? С какой перитодичностью рекомендуется контрольная проверка доверительных?


  1. MikhailGariyants Автор
    19.10.2022 17:05
    +1

    На фотографии памятные дни запуска нашего проекта, конечно же, в реальной работе, такое количество сотрудников не пересчитывают одну паллету. Подводные камни безусловно существуют, например, когда светофор рекомендует принять заказ доверительно, но при этом сотрудники приемки видят какую-то аномалию с товаром невооруженным взглядом, например, откровенный брак/поломка, или отсутствие ожидаемого количества паллет, то в таком случае у сотрудников, есть возможность изменить в системе решение алгоритма. Но вместе с этим они указывают в системе причину изменения признака алгоритма из доступного (проработанного и заранее заложенного) списка причин. Благодаря этому команда может собирать список таких случаев и точечно работать с качеством поставок.

    Нет контрольной проверки, конечно, иначе какой бы был смысл Светофора :) Есть ежедневный рандомный скоринг, который рекомендует поставщиков, которые не были последнюю неделю на проверке с определенной вероятностью на пересчет. Вероятность - секрет фирмы (на самом деле, отправляем всех, кого можем, но без перенагрузки для сотрудников магазинов)


    1. E_BEREZIN
      19.10.2022 18:56

      Есть ежедневный рандомный скоринг, который рекомендует поставщиков, которые не были последнюю неделю на проверке с определенной вероятностью на пересчет.

      Хотелось в публикации больше деталей по теме машинного обучения и data mining. По тексту речь об оценке целесообразности подсчёта товара в пересчете на рубли, а по комментарию - есть другая логика (рандомный скоринг, в конечном счёте, всех).