Линейное производственное планирование

Содержание.

1. Оптимальное производственное планирование.

1.1 Линейная задача  производственного  планирования.

 
 

                                          48    30    29    10    -      удельные прибыли

       

       нормы расхода     -    3     2     4     3          198

                                           2     3     1     2            96   -   запасы ресурсов

                                           6     5     1     0          228 

       Обозначим x1,x2,x3,x4 - число единиц 1-й,2-й,3-й,4-й  продукции, которые планируем произвести. При этом можно использовать только имеющиеся запасы ресурсов. Целью является получение максимальной прибыли. Получаем следующую математическую модель оптимального планирования: 

       P(x1,x2,x3,x4) =48*x1+30*x2+29*x3+10*x4  -->  max

                        3*x1+ 2*x2+ 4*x3+ 3*x4<=198

                        2*x1+ 3*x2+ 1*x3+ 2*x4<= 96

                        6*x1+ 5*x2+ 1*x3+ 0*x4<=228

                            x1,x2,x3,x4>=0 

         Для решения полученной задачи  в каждое неравенство добавим  неотрицательную переменную. После  этого неравенства превратятся  в равенства, в силу этого добавляемые переменные называются балансовыми. Получается задача ЛП на максимум, все переменные неотрицательны, все ограничения есть равенства, и есть базисный набор переменных: x5 - в 1-м равенстве, x6 - во 2-м и x7 - в 3-м. 

       P(x1,x2,x3,x4)=48*x1+30*x2+29*x3+10*x4+ 0*x5+ 0*x6+ 0*x7 -->max

                       3*x1+ 2*x2+ 4*x3+ 3*x4+   x5            =198

                       2*x1+ 3*x2+ 1*x3+ 2*x4      +   x6      = 96

                       6*x1+ 5*x2+ 1*x3+ 0*x4            +   x7=228

                           x1,x2,x3,x4,x5,x6,x7>=0 

      48 30 29 10 0 0 0 Hi /qis
    С Б Н Х1 Х2 Х3 Х4 Х5 Х6 Х7
    0 Х5 198 3 2 4 3 1 0 0 66
    0 Х6 96 2 3 1 2 0 1 0 48
    0 Х7 228 6 5 1 0 0 0 1 38
    Р 0 -48 -30 -29 -10 0 0 0  
    0 Х5 84 0 -0.5 3.5 3 1 0 -0.5 24
    0 Х6 20 0 1.33 0.67 2 0 1 -0.33 30
    48 Х1 38 1 0.83 0.17 0 0 0 0.17 228
    Р 1824 0 10 -21 -10 0 0 8  
    29 Х3 24 0 -0.14 1 0.86 0.29 0 -0.14  
    0 Х6 20 0 1.43 0 1.43 -0.19 1 -0.24  
    48 Х1 34 1 0.86 0 -0.14 -0.05 0 0.19  
    Р 2328 0 7 0 8 6 0 5  
 

       Так как все оценочные коэффициенты неотрицательны, то получено оптимальное решение. Оптимальное решение: x1=34, x2=0, x3=24, x4=0, x5=0, x6=20, x7=0. Максимум целевой функции Pmax= 2328.

       Ресурсы 1 и 3 являются «узким местом» производства, так как при выполнении оптимального плана они используются полностью (без остатка).

1.2 Двойственная задача  линейного программирования.

         исходная задача                                       двойственная задача

        CX-->max                                                 YB-->min

        AX<=B, X>=0                                          YA>=C, Y>=0 

P= 48*x1+30*x2+29*x3+10*x4 -->max          S= 198*y1+96*y2+228*y3 -->min

    3*x1+2*x2+4*x3+3*x4<=198                           3*y1+2*y2+6*y3>=48

    2*x1+3*x2+1*x3+2*x4<=96                             2*y1+3*y2+5*y3>=30

    6*x1+5*x2+1*x3+0*x4<=228                           4*y1+1*y2+1*y3>=29

    x1,x2,x3,x4>=0                                                   3*y1+2*y2+0*y3>=10

                                                                                 y1,y2,y3>=0 

       Первый  способ:

       По  первой теореме двойственности, оптимальные  решения двойственной задачи (y1,y2,y3) равны оценочным коэффициентам  при балансовых переменных последней  симплекс-таблицы: у1=6, у2=0, у3=5. А экстремум  двойственной задачи Smin=2328.

       Второй  способ:

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

       Так как балансовая переменная второго  ограничения (х6) отлична от нуля, следовательно оно выполняется на оптимальном решении как строгое неравенство, а поэтому у2=0. Так как х1 и х3 отличны от нуля, то получаем следующую систему уравнений:                                               3*у1 +6*у3 = 48

                                                           4*у1 +    у3 = 29

       Решая их, получаем оптимальные решения  двойственной задачи: у1=6, у2=0, у3=5. 

1.3 Задача о комплектном  плане.

 

       Имеем соотношения:    x3:x1= 1;  x4:x2=3   или  х3=х1;   х4=3*х2. Подставив  эти выражения, получим задачу ЛП с двумя переменными.

       77*х1 +60*х2 à max

         7*х1 +11*х2 ≤  198

         3*х1 + 9*х2 ≤  96

         7*х1 +  5*х2 ≤ 228

        Наносим эти ограничения на плоскость  х1х2 и ищем на допустимом множестве максимум функции. Для этого строим градиент grad(77,60). Искомая точка с координатами х1=0; х2»28.29 и максимум прибыли max»2178. 

 

1.4 Оптимальное распределение  инвестиций.

 

       Имеем: 4 фирмы, инвестиции в размере 700 тыс. рублей. По этим 4 фирмам их нужно распределить. Размер инвестиций кратен 100 тыс. рублей. Эффект от направления i-й фирме инвестиций в размере m (сотен тыс. рублей) выражается функцией fi(m). Приходим к задаче: 

          f1(x1)+f2(x2)+f3(x3)+f4(x4)-->max

          x1+x2+x3+x4<=7

          x1,x2,x3,x4>=0 

       где xi - неизвестный размер инвестиций i-й  фирме. Эта задача решается методом динамического программирования: последовательно ищется оптимальное распределение для k=2,3 и 4 фирм. Пусть первым двум фирмам выделено  m  инвестиций, обозначим z2(m) величину инвестиций 2-й фирме, при которой сумма f2(z2(j))+f1(m-z2(j)), 0<=j<=m   максимальна, саму эту максимальную величину обозначим F2(m). Далее действуем также: находим функции z3 и F3 и т.д. На k-ом шаге для нахождения  Fk(m) используем основное рекуррентное соотношение: 

Fk(m)=max{fk(j)+F{k-1}(m-j): 0<=j<=7} 

       Исходные  данные:

       Таблица №1.

x 0 100 200 300 400 500 600 700
f1(x1) 0 28 45 65 78 90 102 113
f2(x2) 0 25 41 55 65 75 80 85
f3(x3) 0 15 25 40 50 62 73 82
f4(x4) 0 33 33 42 48 53 56 58
 

       Заполняем следующую таблицу. Значения f2(x2) складываем со значениями  F1(m-x2) = f2(m-x2) и на каждой северо-восточной диагонали находим наибольшее число, которое отмечаем и указываем соответствующее значение z2.

       Таблица №2.

  m-x2 0 100 200 300 400 500 600 700
x2 f2(x2)/ F1(m-x2) 0 28 45 65 78 90 102 113
0 0 0 28 45 65 78 90 102 113
100 25 25 53 70 90 103 115 127  
200 41 41 69 86 106 119 131    
300 55 55 83 100 120 133      
400 65 65 93 110 130        
500 75 75 103 120          
600 80 80 108            
700 85 85              
 

       Голубым цветом обозначен максимальный суммарный  эффект от выделения соответствующего размера инвестиций 2-м предприятиям.

       Таблица №3.

m 0 100 200 300 400 500 600 700
F2(m) 0 28 53 70 90 106 120 133
z2(m) 0 0 100 100 100 200 300 300
 

       Продолжая процесс, табулируем функции F3(m) и z3(m).

       Таблица №4.

  m-x3 0 100 200 300 400 500 600 700
x3 f3(x3)/ F2(m-x3) 0 28 53 70 90 106 120 133
0 0 0 28 53 70 90 106 120 133
100 15 15 43 68 85 105 121 135  
200 25 25 53 78 95 115 131    
300 40 40 68 93 110 130      
400 50 50 78 103 120        
500 62 62 90 115          
600 73 73 101            
700 82 82              
 

       Голубым цветом обозначен максимальный суммарный  эффект от выделения соответствующего размера инвестиций 3-м предприятиям.

       Таблица №5.

m 0 100 200 300 400 500 600 700
F3(m) 0 28 53 70 90 106 121 135
z3(m) 0 0 0 0 0 0 100 100
 

       В следующей таблице заполняем только одну диагональ для значения m = 700.

       Таблица №6.

  m-x4 0 100 200 300 400 500 600 700
x4 f4(x4)/ F3(m-x4) 0 28 53 70 90 106 121 135
0 0 0 28 53 70 90 106 121 135
100 20 20 48 73 90 110 126 141  
200 33 33 61 86 103 123 139    
300 42 42 70 95 112 132      
400 48 48 76 101 118        
500 53 53 81 106          
600 56 56 84            
700 58 58              
 
m 0 100 200 300 400 500 600 700
F4(m) 0 28 53 73 90 110 126 141
z4(m) 0 0 0 0 0 100 100 100
 

       Сведем  результаты в таблицу №7. 

m 0 100 200 300 400 500 600 700
F1(m)=f1(x1) 0 28 45 65 78 90 102 113
z1=x1 0 100 200 300 400 500 600 700
                 
F2(m) 0 28 53 70 90 106 120 133
z2(m) 0 0 100 100 100 200 300 300
                 
F3(m) 0 28 53 70 90 106 121 135
z3(m) 0 0 0 0 0 0 100 100
                 
F4(m) 0 28 53 73 90 110 126 141
z4(m) 0 0 0 0 0 100 100 100
 

       Теперь F4(700)=141 показывает максимальный суммарный эффект по всем 4-м фирмам, а z4(700)=100 - размер инвестиций в 4-ю фирму для достижения этого максимального эффекта. После этого на долю первых 3-х фирм осталось (700-100) и для достижения максимального суммарного эффекта по первым 3-м фирмам в 3-ю надо вложить 100  и т.д. Голубым цветом отмечены оптимальные значения инвестиций по фирмам и значения эффектов от них.

       Таким образом, наилучшим является следующее  распределение капитальных вложений по предприятиям: х1*=300; х2*=200; х3*=100; х4*=100. Оно обеспечивает производственному объединению наибольший возможный прирост прибыли 141 тыс.руб. 

2. Анализ финансовых операций и  инструментов.

2.1 Принятие решений  в условиях неопределенности.

 

       Предположим, что ЛПР (Лицо, Принимающее Решения) обдумывает четыре возможных решения. Но ситуация на рынке неопределенна, она может быть одной из четырех. С помощью экспертов ЛПР составляет матрицу доходов  Q. Элемент этой матрицы  q[i,j]  показывает доход, полученный ЛПР, если им принято  i-е решение, а ситуация оказалась  j-я. В этой ситуации полной неопределенности могут быть высказаны лишь некоторые соображения о том, какое решение принять. Сначала построим матрицу рисков. Строится эта матрица так: в каждом столбце матрицы доходов находим максимальный элемент d[j] , после чего элементы   r[i,j]=d[j]-q[i,j]  и образуют матрицу рисков.

       Смысл рисков таков: если бы ЛПР знал что  в реальности имеет место  j-я  ситуация, то он выбрал бы решение  с  наибольшим доходом, но он не знает, поэтому, принимая  i-е решение он рискует недобрать  d[j]-q[i,j] -  что и есть риск.  

       матрица доходов 

        Варианты (ситуации)  max  min  Вальд  Гурвиц: l*max+  +(1-l)*min; l=1/3
     Решения  0  1  2  8  8  0     2,67
     2  3  4  10  10  2  2  4,67
     0  4  6  10  10  0     3,32
     2  6  8  12  12  2  2  5,32
 

       матрица рисков 

          Варианты (ситуации) max Сэвидж
        Решения 2 5 6 4 6  
        0 3 4 2 4  
        2 2 2 2 2  
        0 0 0 0 0 0
 

       Правило Вальда называют правилом крайнего пессимизма: ЛПР уверен, что какое-бы решение он ни принял, ситуация сложится для него самая плохая, так что, принимая  i-е решение, он получит минимальный доход  q[i]=min{q[i,j]:j=1..4}. Но теперь уже из чисел  q[i]  ЛПР выбирает максимальное и принимает соответствующее решение.

       По  правилу Сэвиджа находят в  каждой строке матрицы рисков максимальный элемент  r[i] и затем из чисел  r[i]  находят минимальное и принимают соответствующее решение.

         По правилу Гурвица для каждой  строки матрицы доходов находят  величину  z[i]=l*max{q[i,j]:j=1..4}+(1-l)*min{q[i,j]:j=1..4}, потом находят из чисел  z[i] наибольшее и принимают соответствующее решение. Число  l  каждый ЛПР выбирает индивидуально - оно отражает его отношение к доходу и риску, при приближении l  к 0 правило Гурвица приближается к правилу Вальда, при приближении   l   к 1  - к правилу розового оптимизма, в нашем случае   l  равно 1/3.

       Итак, по правилу Вальда нам следует  принять либо 2-ое, либо 4-ое решение. Сэвидж и Гурвиц нам советуют принять 4-ое решение. 

       Пусть теперь нам известны вероятности  ситуаций - p[j]. Имея матрицу доходов Q  теперь можно сказать, что доход от i-го решения есть с.в. Q[i] с доходами  q[i,j]  и вероятностями этих доходов p[j]. Кроме того, риск i-го решения также есть с.в. R[i] с рисками  r[i,j]   и вероятностями этих рисков p[j].

       Тогда М(Q[i]), М(R[i]) - средний ожидаемый доход и средний ожидаемый риск    i-го решения. Принимать решение (проводить операцию) нужно такое, у которого наибольший средний ожидаемый доход, или наименьший средний ожидаемый риск.  

            Варианты (ситуации)  М(Q[i]), М(R[i])
         Доходы  0  1  2  8  2
         2  3  4  10  4
         0  4  6  10  4
         2  6  8  12  6
        Риски 2 5 6 4 4
        0 3 4 2 2
        2 2 2 2 2
        0 0 0 0 0
        p[j] 1/3 1/3 1/6 1/6  
 

М(Q[i])= S (q[i,j]* p[j])         М(R[i])= S (r[i,j]* p[j])

       Голубым цветом выделен наибольший средний  ожидаемый доход (4-ое решение), а красным цветом – наибольший средний ожидаемый риск (4-ое решение). Как видим, они соответствуют одному и тому же решения. Его и следует принять.

Линейное производственное планирование