Методические указания к выполнению лабораторной работы




Лабораторная работа № 5.

Метод динамического программирования для задачи оптимального распределения трудовых ресурсов»

Цель работы: С помощью модели динамического программирования составить оптимальный план регулирования численности рабочих.

Исходные данные: Предпринимателю необходимо составить план регулирования численности рабочих на последующие 7 недель. Минимальные потребности в рабочей силе bi на каждую из 7 недель известны.

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

Пусть yj – количество рабочих, имеющихся в наличии на j –й неделе, превышает заданное значение bj. Определим C1(yj – bj) как величину убытков, связанных с тем, что yj превышает заданное значение bj, а C2(yj – yj-1) – как величину накладных расходов по найму новых рабочих(yj > yj-1). Предприниматель располагает следующими данными:

C1(yj – bj) = 2*(yj – bj), j = 1, 2, 3, 4, 5, 6, 7.

Необходимо составить оптимальный план регулирования численности рабочих для 7-недельного периода планирования при условии, что исходное количество рабочих, имеющихся в наличие к началу первой недели, составляет b0 человек.

Методические указания к выполнению лабораторной работы

Предпринимателю необходимо составить план регулирования численности рабочих на последующие пять недель. Он оценивает минимальные потребности в рабочей силе bi на каждую из пяти недель следующим образом: 5, 7, 8, 4 и 6 рабочих для i = 1, 2, 3, 4 и 5 соответственно.

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

Пусть yj – количество рабочих, имеющихся в наличии на j –й неделе. Определим C1(yj – bj) как величину убытков, связанных с тем, что yj превышает заданное значение bj, а C2(yj – yj-1) – как величину накладных расходов по найму новых рабочих(yj > yj-1). Предприниматель располагает следующими данными:

C1(yj – bj) = 3*(yj – bj), j = 1, 2, 3, 4, 5,

Из определения C2 следует, что увольнение(yj £ yj-1) не требует накладных расходов.

Необходимо составить оптимальный план регулирования численности рабочих для 5-недельного периода планирования при условии, что исходное количество y0 рабочих, имеющихся в наличие к началу первой недели, составляет пять человек.

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

1) Этап j ставится в соответствие j –й неделе.

2) Состояние yj-1 на этапе j выражает количество рабочих, имеющихся к концу этапа j - 1.

3) Варианты решения yj описываются количеством рабочих, имеющихся на этапе j.

Обозначим через fj(yj-1) минимальную величину расходов, осуществленных в течение периодов времени j, j + 1, …, 5, при заданном yj-1. Рекуррентное соотношение записывается в следующем виде

.

Перед тем как приступить к вычислениям с использованием таблиц, необходимо определить границы для значения переменных y1, y2, y3, y4 и y5. Так как j = 5 соответствует последнему периоду времени, а увольнение не требует накладных расходов, то значение y5 должно равняться минимальной потребности в рабочей силе, т. е. y5 = b5 = 6. С другой стороны, поскольку b4 < b5, предприниматель может рассматривать ситуации y4 = 4, 5 или 6 в поисках варианта с минимальными расходами. Аналогичные рассуждения приводят к заключению, что y3 = 8, y2 = 7 или 8 и y1 = 5, 6, 7 или 8. Из условий задачи следует, что исходное количество рабочих y0 равно 5.

Этап 5. b5 = 6.

y4 C1(y5 – 6 )+C2(y5 – y4) Оптимальное решение
y5 = 6 f5(y4) y*5
  3*(6-6)+4+2*2=8    
  3*(6-6)+4+2*1=6    
  3*(6-6)+0=0    

Этап 4. b4 = 4.

  y3 C1(y4 – 4 )+C2(y4 – y3)+f5(y4) Оптимальное решение
y4 = 4 y4 = 5 y4 = 6 f4(y3) y*4
  0+0+8=8 3*1+0+6=9 3*2+0+0=6    

Этап 3. b3 = 8.

  y2 C1(y3 – 8) +C2(y3– y2)+f4(y3) Оптимальное решение
y3 = 8 f3(y2) y*3
  0+4+2*1+6=12    
  0+0+6    

Этап 2. b2 = 7.

  y1 C1(y2 – 7) +C2(y2– y1)+f3(y2) Оптимальное решение
y2 = 7 y2 = 8 f2(y1) y*2
  0+4+2*2+12=20 3*1+4+2*3+6=19    
  0+4+2*1+12=18 3*1+4+2*2+6=17    
  0+0+12=12 3*1+4+2*1+6=15    
  0+0+12=12 3*1+0+6=9    

Этап 1. b1 = 5.

  y0 C1(y1 – 5) +C2(y1– y0)+f2(y1) Оптимальное решение
y1 = 5 y1 = 6 y1 = 7 y1 = 8 f1(y0) y*1
  0+0+19=19 3*1+4+2*1+17=26 3*2+4+2*2+12=26 3*3+4+2*3+9=28    

Оптимальное решение задачи находится последовательно:

.

Полученному решению соответствует следующий план:

Неделя, j bj yj Решение
      Никого не нанимать и не увольнять
      Нанять трех рабочих
      Никого не нанимать и не увольнять
      Уволить двух рабочих
      Никого не нанимать и не увольнять

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: