Платформа Lokad

Программы количественной оптимизации цепей поставок можно выполнять на любой платформе с языком программирования, но именно платформа Lokad создавалась специально для этих целей. Lokad — это платформа, предназначенная для проектирования и развертки специализированных приложений для прогностической оптимизации цепей поставок. Производительность, надежность, эксплуатационные качества, безопасность и эффективность системы Lokad заметно выше, чем у обычных инструментов разработчиков ПО.

инженер строит стрелу из блоков


В основе Lokad лежит Envision, специальный язык программирования (DSL). Этот язык рассчитан на экспертов по цепям поставок, а не на программистов. Наша главная цель — чтобы оптимизацией цепей поставок занимались те, кто реально разбирается в этой теме. Таким образом, система Lokad значительно снижает риски при реализации программ оптимизации цепей поставок за счет устранения множества посредников между бизнесом и информационными технологиями.

Envision открывает значительное более широкие возможности, чем те, что доступны в усовершенствованных системах планирования (APS), совершенных лишь в названии, в бизнес-аналитиках (BI) или даже в других системах прогнозирования. Наконец, Lokad, что немаловажно, позволяет создавать более безопасные и удобные в обслуживании приложения, чем те, которые можно получить с помощью обычных языков программирования вроде Python.


Больше, чем электронные таблицы

Excel — это самый широко распространенный инструмент управления цепями поставок. Мы признаем, что Excel имеет множество замечательных характеристик: он простой, эффективный, наглядный и, что наиболее важно, Excel позволяет прекрасно ориентироваться в данных в любой момент времени. Excel пользуется заслуженным успехом во всем мире. При работе с Envision мы очень старались сохранить все замечательные свойства Excel.

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

К сожалению, проблема с алгоритмами и данными не может быть решена непосредственно в Excel, потому что «исправление» привело бы в первую очередь к потере важнейших качеств Excel. В результате, компания Lokad решила разработать технологию Envision, которая сохраняла бы ценные свойства Excel, с точки зрения цепей поставок, и поддерживала бы при этом работу с сотнями миллионов заказов или SKU, если это потребуется.

Электронные таблицы вообще — не только Excel — просто не рассчитаны на работу со специфическими, но важными видами вычислений, которые требуются для оптимизации цепей поставок. Например, электронные таблицы не поддерживают вероятностные прогнозы. Из-за этого при работе с ними всегда есть опасность начать ориентироваться на средние значения, которые вредны для цепей поставок. Равным образом, электронные таблицы не позволяют производить оптимизацию с определенными ограничениями. Как следствие, даже такие простые и распространенные ограничения, как минимальный объем заказа, приходится прописывать вручную.

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

Не просто наблюдение за данными, но работа на их основе

Системы бизнес-аналитики (BI) часто продаются как решения для анализа в деловой сфере следующего поколения после Excel. Тем не менее многолетний опыт Lokad подсказывает, что с точки зрения цепей поставок системы бизнес-аналитики почти никогда не дают ожидаемый результат. Проблема лежит не в качестве инструментов аналитики: рынок средств BI достаточно зрелый, и на нем можно найти отличные системы. Сложность заключается в том, что наблюдение за данными с целью “получения важной информации” обходится очень дорого компаниям, которые работают с тысячами продуктов и тысячами клиентов.

Системы BI не подходят для управления цепями поставок, не потому что они не могут обработать все доступные данные (в отличие от Excel, хорошие инструменты BI могут обрабатывать очень большой объем информации). Дело в том, что хотя расчет миллионов значений на ежедневной основе, как мы уже говорили, достаточно прост и недорог, ежедневный подбор десяти актуальных значений, которые необходимо отследить и использовать для дальнейшей деятельности, крайне сложен. Несмотря на все свои недостатки, Excel в отличие от систем BI нацелен на “выполнение задачи”.

Мы всегда хотели сохранить такое отношение к “выполнению задач” в Envision. Язык Envision предназначен для создания приложений. Например, с помощью Envision можно генерировать приоритетные списки действий:

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

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

Ваша компания нуждается в программировании

Envision — это язык программирования. Для большинства людей, не являющихся разработчиками ПО, этот термин кажется “крайне” техническим, и большинство руководителей даже в самых больших компаниях задумываются о том, смогут ли их работники продуктивно работать с такой сложной системой. Наш опыт подсказывает, что работать с цепями поставок всегда трудно. Мы видели, как некоторые компании выпускали настолько простые системы, что “их мог бы использовать даже 9-летний ребенок”, которые в итоге действительно давали результаты на уровне тех, которые мог получить “9-летний ребенок”.

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

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

Больше, чем Python

Несмотря на растущую популярность программ по анализу данных, суровая реальность заключается в том, что большинство этих программ не оправдывают ожиданий. Точнее говоря, изначальные прототипы часто выглядят многообещающими, но приспособить их в итоге к реальному производству не получается. Язык Envision создавался специально под цепи поставок, чтобы по возможности обойти соответствующие виды проблем. Существует две основных причины провалов. Обсуждение всех за и против для всех конкурентов Envision заняло бы очень много времени, поэтому для ясности мы ограничимся лишь выбором между Python и Envision.

Во-первых, для работы с Python нужны программисты. Python, будучи полноценным языком программирования, требует понимания множества тонкостей от тех, кто пишет на нем код. Не стоит ждать от сотрудников, что они станут специалистами и в цепях поставок, и в программировании. Программные возможности должны быть доступны большому числу людей с техническим складом ума, а не только профессиональным разработчикам ПО.

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

Envision — это наш ответ на подобные вызовы. Лучше всего наша система работает в случаях, которые вовсе не предусмотрены в Python, например:

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

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