Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
#СППР_Лб4.doc
Скачиваний:
4
Добавлен:
19.11.2019
Размер:
383.49 Кб
Скачать

Результаты оптимизации:

z1*(a1)=3,875a1; x1* = 0;

z2*(a2)=3,75a2; x2* = 0;

z3*(a3)=3,5a3; x3* = 0;

z4*(a4)=3a4; x4* = a4.

Определим количественное распределение средств по годам.

Т.к. а1=а=1000, х1*=0, получаем а2=0,5а1-0,4х1=500.

х2*= 0, а3= 0,5а2 - 0,4х2 = 250

х3*= 0, а4 = 0,5а3-0,4х3=125

х4*= 0, а4 = 125

Представим распределение средств в виде табл. 4

Таблица 4

1 год

2 год

3 год

4 год

Предприятие 1

0

0

0

125

Предприятие 2

1000

500

250

0

При таком распределении средств за 4 года будет получен доход, равный

zmax* = z1*(a1) = 3,875*1000 = 3875

Задача 2.

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

В начале i-го сезона часть продукта Yi можно продать по цене Pi и в конце сезона закупить Xi этого продукта по цене Ci . Образовавшийся на складе запас хранится до следующего сезона. Найти политику продажи-покупки, максимизирующую суммарный доход за N сезонов.

Если пренебречь затратами на хранение, то задачу можно свести к максимизации линейной функции

при условиях 

0<=Y1<=V, X1>=0, V1=V-Y1+X1<=B;

0<=Y2<=V1, X2>=0, V2=V1-Y2+X2<=B;

0<=Y3<=V2, X3>=0, V3=V2-Y3+X3<=B.

Таким образом, получена задача линейного программирования с 2N неизвестными и 4N ограничениями, которую можно решить при фиксированном значении V.

Рассмотрим задачу с других позиций, для чего введем обозначения:

- k - номер сезона, отстоящего на k шагов до конца N-шагового процесса (k=1 соответствует последнему сезону, k=2 - предпоследнему, k=N - первому);

- Y, X - объемы продажи-покупки в соответствующем сезоне (в первом из k оставшихся сезонов);

- Pk , Ck - цены продажи-покупки в соответствующем сезоне;

- Fk(V) - максимальный доход в k-шаговом процессе при начальном запасе V;

-Yk(V), Xk(V) - оптимальные объемы продажи-покупки на первом шаге k-шагового процесса с начальным запасом V.

В случае одношагового процесса (с таковым мы столкнемся, когда доберемся до последнего шага, и к тому же будем знать уровень запаса V перед этим шагом)

F1(V) = max{ P1*Y - C1*X } ,

где область максимизации определяется условиями 0<=Y<=V ; X>=0 .

Очевидно, что максимум достигается при Y = V и X=0 (естественно при завершении деятельности по купле-продаже продать весь запас и ничего не покупать), т.е. F1(V) = P1V ; Y1(V) =V ; X1(V) = 0 .

Обратимся к случаю k-шагового процесса при k > 1, повторив традиционные рассуждения с позиций известного принципа оптимальности Р.Беллмана. Очевидно, что доход в k - шаговом процессе складывается из дохода на первом шаге {Pk*Y - Ck*X} и дохода на оставшихся k-1 шагах. Если мы желаем действовать оптимально, то обязаны руководствоваться принципом оптимальности: независимо от начального состояния (запаса V) и начального поведения (объемов Y, X продажи-покупки на первом шаге) дальнейшая политика должна быть оптимальной, исходя из возникающего состояния (запаса V-Y+X). Тогда доход на оставшихся k-1 шагах будет равен

Fk-1(V-Y+X}

и

Fk(V) = max{ Pk*Y - Ck*X + Fk-1(V-Y+X) } , k<=2,…,N ,

где область максимизации определяется условиями:

0<=Y<=V ; X>=0 ; V -Y + X<=B .

Очевидно, что множество планов - выборов для начального поведения (область максимизации) при любом k – это многоугольник с координатами вершин, линейно з ависящими от V.

Учитывая линейность по V функции F1(V) = P1V, при поиске F2(V) сталкиваемся с максимизацией функции, линейной по X и Y , над указанным множеством планов, т.е. с задачей линейного программирования c экстремумами в вершинах множества.

Аналогичное явление наблюдается при любом k>1. Cоответственно, рекуррентные соотношения упрощается к виду:

Так исходная задача линейного программирования с 2N неизвестными сведена к N элементарным линейным программам с двумя неизвестными. Более того, здесь мы имеем решение при произвольных V и B.

Решение задачи

Пусть N = 5 и цены определены согласно табл. 5.

Таблица 5

Сезон

1

2

3

4

5

Продажная цена (Р)

7

6

4

4

8

Закупочная цена (С)

6

7

5

3

5

Решение задачи дает:

отсюда искомый максимум дохода в 5-шаговом процессе при начальном запасе V равен F5(V)=7V+5B и оптимальная политика по шагам определяется следующей последовательностью действий .

1-й этап.

Объем продажи = Y5(V)=V - весь запас.

Объем закупок = X5(V) = 0 или B - ничего или полный склад.

2-й этап.

Объем продажи = Y4(0 или B)=0 или B - весь запас, если он есть.

Объем закупок = X4(V)=0 - ничего не покупать .

3-й этап..

Объем продажи = Y3(0)=0 - можно все продать, но нечего.

Объем закупок = X3(0)=0 - ничего не покупать.

4-й этап..

Объем продажи = Y2(0)=0 - продать запас, но его нет.

Объем закупок = X2(0)=B - закупить полный склад.

5-й этап..

Объем продажи = Y1(B) =B - продать весь запас.

Объем закупок = X1(V)=0 - ничего не покупать.

Оптимальные решения сведены в табл. 6.

Таблица 6

Сезон

1

2

3

4

5

Объем продажи

Y5(V)=V

продать весь запас

Y4(0 или B)=0 ничего или B

весь запас, если он есть

Y3(0)=0

можно все продать, но нечего

Y2(0)=0

продать запас, но его нет

Y1(B) =B

продать весь запас

Объем закупок

X5(V) = 0 или B

ничего или полный склад

X4(V)=0

ничего не покупать

X3(0)=0

ничего не покупать

X2(0)=B

закупить полный склад

X1(V)=0

ничего не покупать

Таким образом, для построения оптимальной политики использован подход, типичный для решения всех подобных задач.