Дешевизна отдельного направления не гарантирует дешёвый план целиком. Заняв запас одного склада, можно вынудить другой склад обслуживать оставшийся магазин по дорогому направлению. Сравнивать нужно весь набор поставок с одинаковыми объёмами и условиями.
В учебной сети склады А и Б имеют по десять единиц товара, магазинам X и Y нужны тоже по десять. Доставка одной единицы стоит: А–X один рубль, А–Y два, Б–X два, Б–Y десять. Если сначала отправить все десять из А в X, оставшиеся десять из Б в Y обойдутся дорого: всего 10 × 1 + 10 × 10 = 110 рублей. Перекрёстный план А–Y и Б–X стоит 10 × 2 + 10 × 2 = 40. При отправке x единиц по А–X согласованные остальные объёмы дают полную стоимость 40 + 7x; минимум достигается при x = 0.
Все четыре направления доступны, тарифы постоянны, фиксированных платежей и потерь нет. Товар одинаков, спрос удовлетворяется полностью. При других ограничениях оптимальный план может измениться; пример показывает недостаток выбора по одной дешёвой строке, а не действующий маршрут или тариф.
Источник: MIT OpenCourseWare: транспортная задача и стоимость потока.
Школа Student Wyckoff приглашает учиться самостоятельному анализу рынка и внимательно проверять правила денежных расчётов: https://studentwyckoff.com/
Равенство общего запаса и общей потребности — только одна проверка плана. Нужно ещё выяснить, может ли товар попасть к каждому получателю по разрешённым направлениям. Ограничение отдельного участка сети способно сделать весь план невыполнимым.
Учебный склад А имеет двенадцать единиц, Б — восемь. Двум магазинам нужны по десять: суммарные двадцать действительно совпадают с запасом. Но за нужный период из А в магазин Y можно перевезти максимум шесть единиц, из Б в Y — максимум три. Других путей к Y нет. Как бы ни распределяли поставки в X, магазин Y получит не больше 6 + 3 = 9 вместо десяти. План полного выполнения потребностей невозможен, несмотря на достаточный общий запас.
Это не доказательство нехватки товара на складах. В модели недостаёт возможности доставить хотя бы одну единицу именно в Y в установленный период. Перенос срока, дополнительный маршрут и снижение потребности — разные изменения задачи; их стоимость нельзя вывести из одного факта невыполнимости. Сначала определяют ограничение, затем отдельно сравнивают доступные изменения.
Источник: Google OR-Tools: запасы, потребности и пропускная способность направлений.
Школа Student Wyckoff приглашает учиться самостоятельному анализу рынка и внимательно проверять правила денежных расчётов: https://studentwyckoff.com/
Дополнительная возможность закупки приносит экономию, если заменяет более дорогой вариант. Когда вся потребность уже покрыта дешёвым источником, дальнейшее увеличение его доступного объёма может ничего не изменить. Поэтому эффект одной добавленной единицы нельзя без проверки переносить на любое расширение.
В учебной модели нужно ровно десять одинаковых единиц. Источник А может поставить не больше шести по два рубля, источник Б — любое нужное количество по пять. Минимальная сумма: 6 × 2 + 4 × 5 = 32 рубля. Если предел А увеличить до семи, сумма станет 7 × 2 + 3 × 5 = 29: экономия три рубля. При пределе десять достаточно двадцати рублей. Увеличение предела с десяти до одиннадцати уже не помогает: потребность остаётся десять.
Три рубля — экономия на одной действительно заменённой единице в этой модели, а не универсальная цена расширения. Здесь нет фиксированных сборов, потерь, минимальных партий и различий качества. Если за новую возможность нужно заплатить отдельно, её плату сравнивают с полной экономией на реально заменяемом объёме.
Школа Student Wyckoff приглашает учиться самостоятельному анализу рынка и внимательно проверять правила денежных расчётов: https://studentwyckoff.com/
Деление общего количества на вместимость даёт полезную нижнюю границу. Но её не всегда можно реализовать, если отдельные заказы нельзя делить между рейсами. Нужно проверить, какие целые заказы помещаются вместе, а не только суммарную вместимость.
Есть три учебных заказа по четыре условные единицы груза. Машина вмещает шесть, каждый заказ должен ехать целиком. Общий груз двенадцать; деление на шесть даёт два рейса. Однако два заказа вместе занимают восемь, что больше вместимости. В каждом рейсе помещается только один заказ: нужны три рейса. При ста рублях за рейс расход составит триста рублей, а не двести.
Если разделение заказов разрешено и ничего дополнительно не стоит, два рейса становятся возможны: первый везёт один заказ и половину второго, второй — оставшуюся половину и третий. Это другая постановка. В реальной задаче отдельно задают массу, объём, совместимость и стоимость разделения; пример использует только одно условное ограничение вместимости.
Источник: Google OR-Tools: размещение неделимых предметов в минимальном числе ёмкостей.
Школа Student Wyckoff приглашает учиться самостоятельному анализу рынка и внимательно проверять правила денежных расчётов: https://studentwyckoff.com/