Сдам Сам

Распределение Q средств между N предприятиями.



Пусть хn – средства, выделенные n-му предприятию; они приносят в конце года прибыль сn(хn).

Будем считать, что хn принимает только целые значения, прибыль сn(хn) не зависит от вложения средств в другие предприятия и суммарная прибыль равна сумме прибылей, полученных от каждого предприятия. Тогда модель имеет вид:

Найти целочисленные неотрицательные переменные хn (n=1,2,…,N), удовлетворяющие ограничению:

nхn = Q, (2.8.2)

и обращающие в максимум функцию

С=∑n сn(хn). (2.8.3)

Здесь процесс распределения средств можно рассматривать как многошаговый, номер шага совпадает с номером предприятия; состояние будет определяться величиной sn – количество средств, подлежащих распределению на n-м шаге (с конца).

Обозначим fn(sn) – условную оптимальную прибыль, полученную от последних n предприятий при распределении между ними sn средств и вычисляемую в соответствие с динамическим рекуррентным соотношением:

fn(sn)=mах"хn(хn) + fn-1(sn-1)), n=1,2,…,N. (2.8.4)

Пример 2.8.2. Пусть N = 4, Q =5, значения сn(хn) заданы в табл. 2.8.1.

Таблица 2.8.1.

х с4(х) с3(х) с2(х) с1(х)

Как и в предыдущем примере начинаем анализ с последнего предприятия. Индекс «1» соответствует последнему предприятию, а индекс «4» –первому. Для n=1 прибыль проставлена в последней колонке.

Для n=2

f2(0)=mах[с2(0)+f1(0)]=0 при x2(0)=0,

f2(1)=mах[с2(1)+f1(0),с2(0)+f1(1)]=mах[3+0,0+4]=4 при x2(1)=0,

f2(2)=mах[с2(2)+f1(0),c2(1)+f1(1),с2(0)+f1(2)]=

=mах[4+0,3+4,0+6]=7 при x2(2)=1,

f2(3)=mах[с2(3)+f1(0),с2(2)+f1(1),с2(1)+f1(2),с2(0)+f1(3)]=

=mах[7+0,4+4,3+6,0+8]=9 при x2(3)=1,

f2(4)=mах[с2(4)+f1(0),с2(3)+f1(1),с2(2)+f1(2),с2(1)+f1(3),с2(0)+f1(4)]=

=mах[11+0,7+4,4+6,3+8,0+13]=13 при х2(4)=0,

f2(5)=mах[с2(5)+f1(0),с2(4)+f1(1),с2(3)+f1(2),с2(2)+f1(3),с2(1)+f1(4),с2(0)+f1(5)]

=mах[18+0,11+4,7+6,4+8,3+13,0+16]=18 при x2(5)=5.

Для n=3

f3(0)=mах[с3(0)+f2(0)]=0 при x3(0)=0,

f3(1)=mах[с3(1)+f2(0),с3(0)+f2(1)]=mах[6+0,0+4,]=6 при x3(1)=1,

f3(2)=mах[с3(2)+f2(0),c3(1)+f2(1),с3(0)+f2(2)]=

=mах[9+0,6+4,0+7]=10 при x3(2)=1,

f3(3)=mах[с3(3)+f2(0),с3(2)+f2(1),с3(1)+f2(2),с3(0)+f2(3)]=

=mах[11+0,9+4,6+7,0+9]=13 при x3(3)=1 или 2,

f3(4)=mах[с3(4)+f2(0),с3(3)+f2(1),с3(2)+f2(2),с3(1)+f2(3),с3(0)+f2(4)]=

=mах[13+0,11+4,9+7,6+9,0+13]=16 при х3(4)=2,

f3(5)=mах[с3(5)+f2(0),с3(4)+f2(1),с3(3)+f2(2),с3(2)+f2(3),с3(1)+f2(4),с3(0)+f2(5)]

=mах[15+0,13+4,11+7,9+9,6+13,0+18]=19 при x3(5)=1.

И, наконец, для n=4

f4(0)=mах[с4(0)+f3(0)]=0 при x4(0)=0,

f4(1)=mах[с4(1)+f3(0),с4(0)+f3(1)]=mах[8+0,0+6,]=8 при x4(1)=1,

f4(2)=mах[с4(2)+f3(0),c4(1)+f3(1),с4(0)+f3(2)]=

=mах10+0,8+6,0+10]=14 при x4(2)=1,

f4(3)=mах[с4(3)+f3(0),с4(2)+f3(1),с4(1)+f3(2),с4(0)+f3(3)]=

=mах[11+0,10+6,8+10,0+13]=18 при x4(3)=1,

f4(4)=mах[с4(4)+f3(0),с4(3)+f3(1),с4(2)+f3(2),с4(1)+f3(3),с4(0)+f3(4)]=

=mах[12+0,11+6,10+10,8+13,0+16]=21 при х4(4)=1,

f4(5)=mах[с4(5)+f3(0),с4(4)+f3(1),с4(3)+f3(2),с4(2)+f3(3),с4(1)+f3(4),с4(0)+f3(5)]

=mах[18+0,12+6,11+10,10+13,8+16,0+19]=24 при x4(5)=1.

Теперь соберем оптимальное решение (при последовательном рассмотрении всех состояний оптимальные переходы подчеркивались):

Для первого предприятия, когда s4=5, видим, что x4(5)=1, значит, первое предприятие получает 1 и остается s3=s4x4(5)=5–1=4. Находим лучшее размещение средств для второго предприятия (на третьем с конца шаге) при s3=4. Это х3(4)=2, остается s2=s3x3(4)=4–2=2. На втором (с конца) шаге x2(2)=1 и на последнее предприятие (первый с конца шаг) остается s1= s2x2(2)=2–1=1 и x1(1)=1.



Максимум суммарной прибыли равен 24 у.е.

Динамическая задача управления запасами.

Применим изложенный выше подход к решению простейшей задачи управления запасами.

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

dn – спрос на отрезке n от конца;

cn(x,s) – затраты на отрезке n, связанные с выпуском х единиц изделия и с содержанием запасов, объем которых на конец отрезка равен s единиц. В этой системе обозначений подстрочный индекс «1» соответствует конечному, а «Т» – начальному состоянию.

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

Пусть fn(s) – стоимость, отвечающая стратегии минимальных затрат на n оставшихся отрезках при уровне запасов s на начало n-го от конца отрезка;

xn(s) – объем выпуска, обеспечивающий достижение fn(s).

Пусть уровень запасов на конец планового периода равен нулю, тогда при уровне запасов s на начало последнего (1-го от конца) отрезка выпуск x1(s)=d1–s и

f1(s)= c1(x,0)= c1(d1 – s,0), s=0,1,…,d1.

Заметим, что если начальный уровень запасов отрезка n равен s, а объем выпуска – х, то величина (s+х–dn) – есть уровень запасов на конец данного отрезка, отсюда получаем общее рекуррентное соотношение в виде:

fn(s) = minx[cn(x, s+х–dn)+ fn-1(s+х–dn)], n=1,…,Т, s=0,1,…,d1+…+ dn.

Для упрощения вычислений предположим, что производственные мощности и складские площади ограничены, пусть х=0,1,…,5 и s=0,1,…,4. Допустим также, что спрос и затраты постоянны во времени, и пусть dn=3, а cn(x, s)= c(x)+hs, где первое слагаемое относится к производству, а второе определяется стоимостью содержания запасов (арендная плата за складские помещения, проценты за кредит для создания запасов, страховые взносы и собственно расходы по содержанию запасов). Пусть с(0)=0, с(1)=15, с(2)=17, с(3)=19,с(4)=21, с(5)=23; h=1.

Для n=1 f1(0)=с(3)=19 при x1(0)=3,

f1(1)=с(2)=17 при x1(1)=2,

f1(2)=с(1)=15 при x1(2)=1,

f1(3)=с(0)=0 при x1(3)=0.

Для n=2 f2(0)=min[с(3)+0+f1(0),c(4)+1+f1(1),c(5)+2+f1(2)]=

=min[19+19,21+1+17,23+2+15]=38 при x2(0)=3,

f2(1)=min[с(2)+0+f1(0),c(3)+1+f1(1),c(4)+2+f1(2),c(5)+3+f1(3)]=

=min[17+19,19+1+17,21+2+15,23+3+0]=26 при x2(1)=5,

f2(2)=min[с(1)+0+f1(0),c(2)+1+f1(1),c(3)+2+f1(2),c(4)+3+f1(3)]=

=min[15+19,17+1+17,19+2+15,21+3+0]=24 при x2(2)=4,

f2(3)=min[с(0)+0+f1(0),c(1)+1+f1(1),c(2)+2+f1(2),c(3)+3+f1(3)]=

=min[0+19,15+1+17,17+2+15,19+3+0]=19 при x2(3)=0,

f2(4)=min[с(0)+1+f1(1),c(1)+2+f1(2),c(2)+3+f1(3)]=

=min[0+1+17,15+2+15,17+3+0]=18 при x2(4)=0.

Для n=3 f3(0)=min[с(3)+0+f2(0),c(4)+1+f2(1),c(5)+2+f2(2)]=

=min[19+38,21+1+26,23+2+24]=48 при x3(0)=4,

f3(1)=min[с(2)+0+f2(0),c(3)+1+f2(1),c(4)+2+f2(2),c(5)+3+f2(3)]=

=min[17+38,19+1+26,21+2+24,23+3+19]=45 при x3(1)=5,

f3(2)=min[с(1)+f2(0),c(2)+1+f2(1),c(3)+2+f2(2),c(4)+3+f2(3),c(5)+4+f2(4)]=

=min[15+38,18+26,21+24,24+19,23+4+18]=43 при x3(2)=4,

f3(3)=min[с(0)+0+f2(0),c(1)+1+f2(1),c(2)+2+f2(2),c(3)+3+f2(3),c(4)+4+f2(4)]=

=min[0+38,16+26,19+24,22+19,25+18]=38 при x3(3)=0,

f3(4)=min[с(0)+1+f2(1),c(1)+2+f2(2),c(2)+3+f2(3),c(3)+4+ f2(4)]=

=min[1+26,17+24,20+19,23+18]=27 при x3(4)=0.

И, наконец, для n=4

f4(0)=min[с(3)+0+f3(0),c(4)+1+f3(1),c(5)+2+f3(2)]=

=min[19+48,21+1+45,23+2+43]=67 при x4(0)=3 или 4,

f4(1)=min[с(2)+0+f3(0),c(3)+1+f3(1),c(4)+2+f3(2),c(5)+3+f3(3)]=

=min[17+48,19+1+46,21+2+43,23+3+38]=64 при x4(1)=5,

f4(2)=min[с(1)+f3(0),c(2)+1+f3(1),c(3)+2+f3(2),c(4)+3+f3(3),c(5)+4+f3(4)]=

=min[15+48,18+45,21+43,24+38,23+4+27]=54 при x4(2)=5,

f4(3)=min[с(0)+0+f3(0),c(1)+1+f3(1),c(2)+2+f3(2),c(3)+3+f3(3),c(4)+4+f3(4)]=

=min[0+48,16+45,19+43,22+38,25+27]=48 при x4(3)=0,

f4(4)=min[с(0)+1+f3(1),c(1)+2+f3(2),c(2)+3+f3(3),c(3)+4+ f3(4)]=

=min[1+45,17+43,20+38,23+27]=46 при x4(4)=0.

Сведем результаты вычислений в таблицу 2.8.2.

Таблица 2.8.2.

  s n=1 n=2 n=3 n=4 n=5 n=6 n=7 n=8
х1 f1 x2 f2 x3 f3 x4 f4 x5 f5 x6 f6 x7 f7 x8 f8
3,4 3,4
 

Читателю предоставляем возможность проверить результаты вычислений для n = 5 ¸ 8. Теперь, задаваясь различным уровнем запасов на начало планового периода, можно определить оптимальные стратегии для любого Т от 1 до 8. Так, например, если исходный уровень запасов на начало планового периода равен нулю, то оптимальный календарный план при Т=4 будет:

x4(0)=3, x3(0)=4, x2(1)=5, x1(3)=0 или

x4(0)=4, x3(1)=5, x2(3)=0, x1(0)=3

и минимальная общая сумма затрат составит 67.

Пусть Т=8, тогда минимальная общая сумма затрат составит 127 и x8(0)=5, останется на следующий отрезок 5-3=2, имеем x7(2)=5, значит на следующий отрезок останется 2+5-3=4 и x6(4)=0, останется 4-3=1 и x5(1)=5, останется 1+5-3=3, x4(3)=0, останется 3-3=0, x3(0)=4, останется 4-3=1, x2(1)=5, останется 1+5-3=3 и x1(3)=0.

В таблицу 2.8.3 сведем оптимальные стратегии (планы выпуска) для плановых периодов длительностью Т и начальным уровнем запасов равным нулю.

Обратим внимание на Т=4. Здесь два оптимальных решения, дающих минимальные затраты 67. При Т=7 имеем три решения с одинаковым значением целевой функции 115.

Таблица. 2.8.3

Плановый период Т n=8 янв n=7 фев n=6 мар n=5 апр n=4 май n=3 июн n=2 июл n=1 авг Общая сумма затрат Средне- месячные затраты
 
 
 
  16.75
  15.8
 
      16.43
15.9

Анализ оптимальных вариантов производственной программы, приведенных в табл. 2.8.3, свидетельствует о том, что январский выпуск поначалу возрастает с ростом Т, а затем колеблется около 5, аналогично, среднемесячные затраты испытывают колебания (при минимальном их значении 15.8). Проводя подобный анализ для следующих месяцев (при достаточно большом Т), получим оптимальное решение для бесконечного периода планирования. В условиях настоящего примера таким решением будет повторение производственного цикла (5,5,0,5,0,…) при среднемесячных затратах 15.8. (вычисления опускаем).

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

1) Управляемые переменные и соответствующие ограничения группируются по шагам, и многошаговый процесс принятия решений исследуется в определенной последовательности.

2) Для выбора оптимальных значений переменных на рассматриваемом шаге используется значение состояния только на данном шаге.

3) Решение, принимаемое при заданном текущем состоянии системы, оказывает прогнозируемое влияние на состояние системы на последующем шаге.

4) Оптимальность текущего решения оценивается в терминах прогнозируемого экономического эффекта для рассматриваемого шага и всех последующих шагов.









Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2017 zdamsam.ru Размещенные материалы защищены законодательством РФ.