Планирование производства продукции при переменном спросе

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

Будем считать, что известны прогнозируемые значения спроса на производимую продукцию и ожидаемые изменения спроса происходят в заданные дискретные моменты времени ti. Заданный период планирования разбивается на этапы от одного такого момента до следующего. Этапы могут иметь различную длительность. В начальный момент времени ti объём производства известен и равен А. Изменение объёма происходит в конце каждого этапа (кроме последнего). В течение этапа с номером t (t=l,2,...,T) объём производства it не изменяется, а в конце его изменение равно xt. Таким образом

Будем считать известными величины ц -постоянный спрос на производимую продукцию в течении этапа t. Очевидно условие й>ц. Производство сверх прогнозируемого спроса it - rt (или наличие избыточных производственных мощностей) обусловлено прогнозированием резкого роста спроса в последующие периоды и невозможностью (или чрезмерными затратами) на увеличение производства в короткий период времени.

Пусть заданы следующие функции, выражающие соответствующие затраты:

Ct(xt) - затраты на увеличение производства;

mt(it) - затраты на производство;

St(rt-it) - затраты на хранение излишней продукции или вообще суммарные потери от отсутствия её реализации.

Задача состоит в поиске величин xt, которые дают минимум суммарных затрат за весь период планирования.

В такой постановке задача несущественно отличается от рассмотренной в предыдущем разделе. Появление дополнительных функций St(rt-it) не является осложняющим обстоятельством. Более того, если спрос может только возрастать (xt>0), задача решается аналогично рассмотренной. Так, если функции Ct(xt), mt(it), St(rt-it) линейны, то по аналогии с рассмотренной задачей планирования поставок можно получить формулы пересчёта констант А* и щи обратным разворотом восстановить оптимальную траекторию без вычисления затрат для всех промежуточных состояний на всех этапах (рис. 3.12). Действительно, пусть Ct(xt)=ktxt; mt(it)=vtit; St(rt-it)=wt(rt- it). Тогда суммарные затраты за первый этап zi=kixi+viA+wi(A-ri). Соответственно за второй этап Z2= k2X2+V2i2+W2(i2-r2). Суммарные затраты за первые два этапа Zi=z+Z2. По смыслу обозначений i2=A+xi; i3=i2+X2. Избавляясь от xi и хг, получаем

Для каждого состояния i3 нужно найти такое i2, то есть приводящий в это состояние путь, при котором Z2 достигает минимума. Z2, как линейная функция от i2 при заданном i3, достигает минимума на одном из концов интервала допустимых значений i2.

При следует взять минимальное значение i2*=r2, а при

максимальное значение. Поскольку i3=i2+X2, то при хг>0 имеем i2*=i3. Представляя минимальные затраты за два этапа как функцию i3, получаем ; р.2=к2 при условии

ki-k2+V2+W2>0 и А(v 1 -к 1 + w 1 )-w 1 гi-v2r2; J12- ki+V2+W2 при

в качестве i2* можно взять любую из полученных пар Аг, рг. Имея Z*t-i=At-i+ щ-iit, аналогично получаем

При щ-1- kt+vt -wt>0 имеем

а при щ-1— kt+vt -wt<0 it*=in-i, x*t=0. Для констант At и щ зависимости

в первом случае получаем а во втором

При можно использовать любую

из полученных пар At, щ.

Полученные правила пересчёта констант h, pt позволяют решить эту задачу по тому же алгоритму, что и задачу планирования поставок из предыдущего раздела.

Для более сложных функций приходится в начале каждого этапа (кроме первого) рассматривать множество возможных значений it на отрезке rt< it < гг, разбивая этот отрезок на части с равным шагом, и организовать поиск оптимальной траектории в полном соответствии с классической схемой динамического программирования. При этом не имеет значение направление поиска (от начальной точки к конечной или наоборот).

Некоторые осложнения возникают, если спрос может не только расти, но и падать, то есть допускается xt<0. В этом случае даже при линейных функциях Ct(xt), mt(it), St(rt-it) при pt-i- kt+vt -wt<0, выбирая максимальное значение it при фиксированном it+i, мы не можем взять it*= it+i, так как it+i= it+ xt, и возможно xt<0. Получается, что it* может быть сколь угодно велико, a xt= it+i- it*. Требуется задание не только минимальных значений rt для it, но и максимальных значений. Эти дополнительные данные позволяют получить формулы пересчёта констант и при движении слева направо определить, что имеет место на последнем шаге: подъём (xt>0) или спуск (xt<0), а затем обратным разворотом построить оптимальную траекторию, которая в отличие от траектории в предыдущей задаче состоит из участков перехода из нижней допустимой точки предыдущего этапа или из его верхней точки.

Для более сложных функций Ct(xt), mt(it), St(rt-it) приходится рассматривать все промежуточные состояния и искать оптимальную траекторию, используя классическую схему динамического программирования.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >