Контрольная работа: Оптимізація економічних показників

Название: Оптимізація економічних показників
Раздел: Рефераты по экономико-математическому моделированию
Тип: контрольная работа

Завдання 1

Побудувати математичну модель задачі.

Фірма, що спеціалізується на виробництві електроприладів, отримала замовлення на виготовлення 100 електроплит. Конструкторами запропоновано до випуску три моделі плит А, В і С за ціною відповідно 100, 60 та 50 грн.од. Норми витрат сировини для виготовлення однієї електроплити різних моделей та запас сировини на фірмі наведено в таблиці.

Сировина Норми витрат сировини, грн.од. Запас сировини, грн.од.
А В С
І 10 4 5 700
ІІ 3 2 1 400
Ціна, грн.од. 100 60 50

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

Розв’язок

Складаємо математичну модель задачі. Позначимо через х1 кількість електроплит 1-ї моделі, що виготовляє фірма за деяким планом, а через х2 кількість електроплит 2-ї моделі та через та через х3 кількість виробів 3-ї моделі Тоді прибуток, отриманий фірмою від реалізації цих електроплит, складає

∫ = 100х1 + 60х2+ 50х3.

Витрати сировини на виготовлення такої кількості виробів складають відповідно:

А =10х1 + 4х2 + 5х3,

В =3х1 + 2х2 + 1х3,

Оскільки запаси сировини обмежені, то повинні виконуватись нерівності:

10х1 + 4х2 + 5х3 ≤ 700

3х1 + 2х2 + 1х3 ≤ 400

Оскільки, кількість виробів є величина невід'ємна, то додатково повинні виконуватись ще нерівності: х1> 0, х2> 0, х3> 0.

Таким чином, приходимо до математичної моделі (задачі лінійного програмування):

Знайти х1 , х2, х3 такі, що функція ∫ = 100х1 + 60х2 + 50х3 досягає максимуму при системі обмежень:

Розв'язуємо задачу лінійного програмування симплексним методом. Введемо балансні змінні х4 ≥ 0, х5 ≥ 0. Їх величина поки що невідома, але така, що перетворює відповідну нерівність у точну рівність. Після цього, задача лінійного програмування набуде вигляду: ∫ = 100х1 + 60х2 + 50х3 → max при обмеженнях

де х1,...,х5>0

Оскільки завдання вирішується на максимум, то ведучий стовпець вибирають по максимальному негативному кількістю та індексного рядку. Всі перетворення проводять до тих пір, поки не вийдуть в індексному рядку позитивні елементи.

Складаємо симплекс-таблицю:


Базис x1 х2 x3 x4 x5 b
I II III IV V VI VII
а 0 10 4 5 1 0 700
б 0 3 2 1 0 1 400
d Індексний рядок, ∆i 100 60 50 0 0 0

Складаємо перший план. Оскільки змінних х4,х5в цільовій функції немає, то їм відповідають коефіцієнти 0;

План Базис В x1 x2 x3 x4 x5 min
1 x4 700 10 4 5 1 0 70
x5 400 3 2 1 0 1 133.33
Індексний рядок F(X1) 0 -100 -60 -50 0 0 0

Оскільки, в індексному рядку знаходяться негативні коефіцієнти, поточний опорний план неоптимальний, тому будуємо новий план. У якості ведучого виберемо елемент у стовбці х1, оскільки значення коефіцієнта за модулем найбільше.

План Базис В x1 x2 x3 x4 x5 min
2 x1 70 1 0.4 0.5 0.1 0 175
x5 190 0 0.8 -0.5 -0.3 1 237.5
Індексний рядок F(X2) 7000 0 -20 0 10 0 0

Даний план, також не оптимальний, тому будуємо знову нову симплексну таблицю. У якості ведучого виберемо елемент у стовбці х2.

План Базис В x1 x2 x3 x4 x5 min
3 x2 175 2.5 1 1.25 0.25 0 175
x5 50 -2 0 -1.5 -0.5 1 237.5
Індексний рядок F(X3) 10500 50 0 25 15 0 0

Оскільки всі оцінки >0, то знайдено оптимальний план, що забезпечує максимальний прибуток: х1=0, х2=175, х3=0, х4=0, х5=50. Прибуток, при випуску продукції за цим планом, становить 10500 грн.

Дамо економічну трактову розв'язку: щоби досягнути максимально можливого, за умов задачі, прибутку (10500 грн.), необхідно виробів другої моделі випустити 175 од.


Завдання 2

Записати двоїсту задачу до поставленої задачі лінійного програмування. Розв’язати одну із задач симплексним методом і визначити оптимальний план іншої задачі. Оптимальні результати перевірити графічно.

Розв’язок

Пряма задача лінійного програмування має вигляд:

При обмеженнях:

Оскільки, у прямій задачі лінійного програмування необхідно знайти мінімум функції, то приведемо першопочаткову умову до вигляду:

Для досягнення відповідного вигляду помножимо 1-у нерівність на -1


-8х1-6ч2≥-48

В результаті отримаємо наступні матриці:

Для складання двоїстої задачі лінійного програмування знайдемо матриці А, В, СТ.

Відповідно, двоїста задача лінійного програмування матиме вигляд:

F(Y)=-48Y1-5Y2+12Y3 (max)

Обмеження:

-8Y1+1Y2+4Y3≤-1

-6Y1-2Y2+1Y3≤2

Y1≥0

Y2≥0

Y3≥0

Розв’яжемо задачу лінійного програмування симплексним методом.

Визначимо мінімальне значення цільової функції F(X)=-x1+2x2 при наступних умовах-обмежень.

8x1+6x2≤48

x1-2x2≥-5

4x1+x2≤12

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

Оскільки маємо змішані умови-обмеження, то введемо штучні змінні x.

8x1 + 6x2 + 1x3 + 0x4 + 0x5 + 0x6 = 48

1x1-2x2 + 0x3-1x4 + 0x5 + 1x6 = -5

4x1 + 1x2 + 0x3 + 0x4 + 1x5 + 0x6 = 12

Для постановки задачі на мінімум цільову функцію запишемо так:

F(X) = -1 x1 +2 x2 +M x6 =>min

План Базис В x1 x2 x3 x4 x5 x6 min
0 x3 33 11 0 1 -3 0 3 0
x2 2.5 -0.5 1 0 0.5 0 -0.5 0
x5 9.5 4.5 0 0 -0.5 1 0.5 0
Індексний рядок F(X) 5 0 0 0 1 0 -100001 0

У базисному стовпчику всі елементи позитивні.

Переходимо до основного алгоритму симплекс-методу.

План Базис В x1 x2 x3 x4 x5 x6 min
1 x3 33 11 0 1 -3 0 3 0
x2 2.5 -0.5 1 0 0.5 0 -0.5 5
x5 9.5 4.5 0 0 -0.5 1 0.5 0
Індекснийрядок F(X1) 5 0 0 0 1 0 -100001 0

Поточний опорний план неоптимальний, тому що в індексному рядку знаходяться позитивні коефіцієнти. Враховуючи вказане будуємо новий план здійснивши відповідні розрахунки. У якості ведучого виберемо стовпець, відповідної змінної x4, так як найбільший коефіцієнт за модулем.

План Базис В x1 x2 x3 x4 x5 x6 min
2 x3 48 8 6 1 0 0 0 6
x4 5 -1 2 0 1 0 -1 0
x5 12 4 1 0 0 1 0 3
Індекснийрядок F(X2) 0 1 -2 0 0 0 -100000 0

Поточний опорний план неоптимальний, тому що в індексному рядку знаходяться позитивні коефіцієнти. Враховуючи вказане будуємо новий план здійснивши відповідні розрахунки. У якості ведучого виберемо стовпець, відповідної змінної x1, так як найбільший коефіцієнт за модулем.

План Базис В x1 x2 x3 x4 x5 x6 min
3 x3 24 0 4 1 0 -2 0 6
x4 8 0 2.25 0 1 0.25 -1 0
x1 3 1 0.25 0 0 0.25 0 3
Індекснийрядок F(X3) -3 0 -2.25 0 0 -0.25 -100000 0

Остаточний варіант симплекс-таблиці оптимальний, тому що в індексному рядку знаходяться негативні коефіцієнти.

Оптимальний план можна записати так:

x3 = 24

x4 = 8

x1 = 3

F(X) = -1*3 = -3

Визначаємо оптимальний план двоїстої задачі до поставленої задачі лінійного програмування.

F(Y) = -48Y1-5Y2+12Y3 (max)

Обмеження:

-8Y1+1Y2+4Y3≤-1

-6Y1-2Y2+1Y3≤2

Y1≥0

Y2≥0

Y3≥0

лінійний програмування транспортна задача

Оскільки, у правій частині присутні від’ємні значення, перемножимо відповідні строки на (-1).

Визначимо максимальне значення цільової функції

F(X) = -48x1-5x2+12x3 при наступних обмеженнях:

8x1-x2-4x3≥1

-6x1-2x2+x3≤2

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

8x1-1x2-4x3-1x4 + 0x5 = 1

-6x1-2x2 + 1x3 + 0x4 + 1x5 = 2

Введемо штучні змінні х.

8x1-1x2-4x3-1x4 + 0x5 + 1x6 = 1

-6x1-2x2 + 1x3 + 0x4 + 1x5 + 0x6 = 2

Задачу на максимум цільову функцію запишемо так:

F(X) = -48x1-5x2+12x3 - Mx6 =>max

Вважаючи, що вільні змінні рівні 0, отримаємо перший опорний план:

X1 = (0,0,0,0,2,1)


План Базис В x1 x2 x3 x4 x5 x6
0 x6 1 8 -1 -4 -1 0 1
x5 2 -6 -2 1 0 1 0
Індекснийрядок F(X0) 0 0 0 0 0 0 0

Перейдемо до основного алгоритму симплекс-метода.

План Базис В x1 x2 x3 x4 x5 x6 min
1 x6 1 8 -1 -4 -1 0 1 0.125
x5 2 -6 -2 1 0 1 0 0
Індекснийрядок F(X1) 0 0 0 0 0 0 0 0
План Базис В x1 x2 x3 x4 x5 x6
2 x1 0.125 1 -0.125 -0.5 -0.125 0 0.125
x5 2.75 0 -2.75 -2 -0.75 1 0.75
Індекснийрядок F(X2) 0 0 0 0 0 0 0

Оптимальний план можливо записати так:

x1 = 0.125

x5 = 2.75

F(X) = -48*0.13 = -6


Завдання 3

Розв’язати транспортну задачу.

1 4 7 8 1 200
2 3 1 4 1 150
5 1 3 2 3 350
120 130 200 180 110

Розв’язок

Побудова математичної моделі. Нехай xij — кількість продукції, що перевозиться з і-го пункту виробництва до j-го споживача . Оскільки , то задачу треба закрити, тобто збалансувати (зрівняти) поставки й потреби:

У нашому випадку робиться це введенням фіктивного постачальника, оскільки .З уведенням фіктивного постачальника в транспортній таблиці додатково заявляється n робочих клітинок (додатковий рядок).

Виникає проблема, які ціни присвоїти цим клітинкам, щоб фіктивний рядок був нейтральним щодо оптимального вибору планових перевезень. Нейтральність забезпечується тим, що всі ціни у фіктивних клітинках вибираються однаковими, а оскільки ці ціни при поставках не повинні впливати на значення цільової функції f, то їх беруть усі рівними нулю.

Занесемо вихідні дані у таблицю.


В1 В2 В3 В4 В5 Запаси
А1 1 4 7 8 1 200
А2 2 3 1 4 1 150
А3 5 1 3 2 3 350
А4 0 0 0 0 0 40
Потреби 120 130 200 180 110

Забезпечивши закритість розв'язуваної задачі, розпочинаємо будувати математичну модель даної задачі:

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

Аналогічні обмеження можна записати відносно замовників: вантаж, що може надходити до споживача від чотирьох баз, має повністю задовольняти його попит. Математично це записується так:

Загальні витрати, пов’язані з транспортуванням продукції, визначаються як сума добутків обсягів перевезеної продукції на вартості транспортування од. продукції до відповідного замовника і за умовою задачі мають бути мінімальними. Тому формально це можна записати так:

minZ = 1x11 + 4x12 + 7x13 + 8x14 +1x15 + 2x21 + 3x22 + 1x23 + 4x24 +1x25 +5x31 + 1x32 + 3x33 + 2x34 +3x35 + 0x41+ 0x42 + 0x43 + 0x44+0x45.

Загалом математична модель сформульованої задачі має вигляд:

minZ = 1x11 + 4x12 + 7x13 + 8x14 +1x15 + 2x21 + 3x22 + 1x23 + 4x24 +1x25 +5x31 + 1x32 + 3x33 + 2x34 +3x35 + 0x41+ 0x42 + 0x43 + 0x44+0x45.

за умов:

Запишемо умови задачі у вигляді транспортної таблиці та складемо її перший опорний план у цій таблиці методом «північно-західного кута».

Ai Bj ui
b1 = 120 b2 = 130 b3 = 200 b4=180 b5=110
а1 = 200

1

120

4

80

7

8

1

u1 = 0
а2 = 150 2

3

50

1

100

4

1

u2 = -1
а3 = 350 5 1

3

100

2

180

3

70

u3 = 1
а4 = 40 0 0 0 0

0

40

u4 = -2
vj v1 =1 v2 =4 v3 =2 v4 =1 V5 =2

В результаті отримано перший опорний план, який є допустимим, оскільки всі вантажі з баз вивезені, потреба магазинів задоволена, а план відповідає системі обмежень транспортної задачі:

Z1 = 1 × 120 + 4 × 80 + 3 × 50 + 1× 100 + 3× 100+ 2 × 180 + 3 × 70 + 0 × 40 = 1560

Підрахуємо число зайнятих клітин таблиці, їх 8, а має бути m+n-1=8. Отже, опорний план є невироджених.

Перевіримо оптимальність опорного плану, складемо систему рівнянь (для заповнених клітин таблиці) для визначення потенціалів першого опорного плану:

Записана система рівнянь є невизначеною, і один з її розв’язків дістанемо, узявши, наприклад, u1 = 0. Тоді всі інші потенціали однозначно визначаються з цієї системи рівнянь: u1 =0, u2 = -1, u3 = 1, u4=-2, v1 =1, v2 =4, v3 =2 v4=1, v5=2. Ці значення потенціалів першого опорного плану записуємо у транспортну таблицю.

Потім згідно з алгоритмом методу потенціалів перевіряємо виконання другої умови оптимальності ui + vj ≤ cij(для порожніх клітинок таблиці):

А1B3 : u1 + v3 = 0 + 2 = 2 < 7;

А1B4 : u1 + v4 = 0 + 1 = 1 < 8;

А1B5 : u1 + v5 = 0 + 2 = 2 > 1;

А2B1 : u2 + v1 = -1 + 1 = 0 < 2;

А2B4 : u2 + v4 = -1 + 1 = 0 < 4;

А2B5 : u2 + v5 = -1 + 2 = 1 =1;

А3B1 : u3 + v1 = 1 + 1 = 2 < 5;

А3B2 : u3 + v2 = 1 + 4 = 5 > 1;

А4B1 : u4 + v1 = -2 + 1 = -1 < 0;

А4B2 : u4 + v2 = -2 + 4 = 2 > 0;

А4B3 : u4 + v3 = -2 + 2 = 0 = 0;

А4B4 : u4 + v4 = -2 + 1 = -1 < 0.

Опорний план не є оптимальним, тому що існують оцінки вільних клітин для яких ui + vi>cij

А1B5 : u1 + v5 = 0 + 2 = 2 > 1

А3B2 : u3 + v2 = 1 + 4 = 5 > 1;

А4B2 : u4 + v2 = -2 + 4 = 2 > 0.

Тому від нього необхідно перейти до другого плану, змінивши співвідношення заповнених і порожніх клітинок таблиці.Вибираємо максимальну оцінку вільної клітини (А3B2): 1

Ставимо в ній знак «+». Для визначення клітинки, що звільняється, будуємо цикл, починаючи з клітинки А3B2, та позначаємо вершини циклу почергово знаками «–» і «+». Тепер необхідно перемістити продукцію в межах побудованого циклу. Для цього у порожню клітинку А3B2 переносимо менше з чисел хij, які розміщені в клітинках зі знаком «–». Одночасно це саме число хij додаємо до відповідних чисел, що розміщені в клітинках зі знаком «+», та віднімаємо від чисел, що розміщені в клітинках, позначених знаком «–».

У даному разі , тобто . Виконавши перерозподіл перевезень продукції згідно із записаними правилами, дістанемо такі нові значення: для клітинки А3B3 — 50 од. продукції, а для А2B2 – звільняється і в новій таблиці буде порожньою, а для А3B2 – (0 + 50) = 50 од. Клітинка А2B3 – 100 + 50 = 150. Усі інші заповнені клітинки першої таблиці, які не входили до циклу, переписуємо у другу таблицю без змін. Кількість заповнених клітинок у новій таблиці також має відповідати умові невиродженості плану, тобто дорівнювати (n + m – 1).

Отже, другий опорний план транспортної задачі матиме такий вигляд:

Ai Bj ui
b1 = 120 b2 = 130 b3 = 200 b4=180 b5=110
а1 = 200

1

120

4

80

7

8

1

u1 = 0
а2 = 150

2

3

1

150

4

1

u2 = -5
а3 = 350

5

1

50

3

50

2

180

3

70

u3 = -3
а4 = 40

0

0

0

0

0

40

u4 = -6
vj v1 =1 v2 =4 v3 =6 v4 =5 V5 =6

Перевіримо оптимальність опорного плану. Знайдемо потенціали ui, vi. по зайнятих клітинам таблиці, в яких ui + vi = cij, вважаючи, що u1 = 0.

Опорний план не є оптимальним, тому що існують оцінки вільних клітин для яких ui + vi>cij

А1B5 : u1 + v5 = 0 + 6 = 6 > 1

Вибираємо максимальну оцінку вільної клітини (1;5): 1

Для цього в перспективну клітку (А1B5) поставимо знак «+», а в інших вершинах багатокутника чергуються знаки «-», «+», «-». Цикл наведено в таблиці.

З вантажів хij що стоять в мінусових клітинах, вибираємо найменше, тобто у = min (А3B5) = 70. Додаємо 70 до обсягів вантажів, що стоять в плюсових клітинах і віднімаємо 70 з Хij, що стоять в мінусових клітинах. В результаті отримаємо новий опорний план.


Ai Bj ui
b1 = 120 b2 = 130 b3 = 200 b4=180 b5=110
а1 = 200

1

120

4

[-] 10

7

8

1

[+] 70

u1 = 0
а2 = 150

2

3

1

150

4

1

u2 = -5
а3 = 350

5

1

[+] 120

3

[-] 50

2

180

3

u3 = -3
а4 = 40

0

0

0

[+]

0

0

[-] 40

u4 = -1
vj v1 =1 v2 =4 v3 =6 v4 =5 V5 =1

Перевіримо оптимальність опорного плану. Знайдемо потенціали ui, vi. по зайнятих клітинам таблиці, в яких ui + vi = cij, вважаючи, що u1 = 0.

Опорний план не є оптимальним, тому що існують оцінки вільних клітин для яких ui + vi>cij

(А4B2): -1 + 4 > 0

(А4B3): -1 + 6 > 0

(А4B4): -1 + 5 > 0

Вибираємо максимальну оцінку вільної клітини (А4B3): 0

Для цього в перспективну клітку (А4B3) поставимо знак «+», а в інших вершинах багатокутника чергуються знаки «-», «+», «-». Цикл наведено в таблиці.

З вантажів хij що стоять в мінусових клітинах, вибираємо найменше, тобто у = min (А1B2) = 10. Додаємо 10 до обсягів вантажів, що стоять в плюсових клітинах і віднімаємо 10 з Хij, що стоять в мінусових клітинах.

В результаті отримаємо новий опорний план.

Ai Bj ui
b1 = 120 b2 = 130 b3 = 200 b4=180 b5=110
а1 = 200

1

120

4

7

8

1

80

u1 = 0
а2 = 150

2

3

1

150

4

1

u2 = 0
а3 = 350

5

1

130

3

40

2

180

3

u3 = 2
а4 = 40

0

0

0

10

0

0

30

u4 = -1
vj v1 =1 v2 =-1 v3 =1 v4 =0 V5 =1

Перевіримо оптимальність опорного плану, тобто повторюємо описані раніше дії.

Знайдемо потенціали ui, vi. по зайнятих клітинам таблиці, в яких ui + vi = cij, вважаючи, що u1 = 0.

Перевірка останнього плану на оптимальність за допомогою методу потенціалів показує, що він оптимальний.

Розрахуємо значення цільової функції відповідно до другого опорного плану задачі:

Z(x) = 1*120 + 1*80 + 1*150 + 1*130 + 3*40 + 2*180 + 0*10 + 0*30 = 960

За оптимальним планом перевезень загальна вартість перевезень всієї продукції є найменшою і становить 960 грн.


Завдання 4

Знайти графічним методом екстремуми функції в області, визначеній нерівностями (в усіх варіантах вважати )

, , ,

Розв’язок

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

Межі області


Позначимо границі області багатокутника рішень.

Цільова функція F(x) => min

Розглянемо цільову функцію завдання F = 10X1+12X2 => min.

Побудуємо пряму, що відповідає значенню функції F = 0: F = 10X1+12X2 = 0. Будемо рухати цю пряму паралельним чином. Оскільки нас цікавить мінімальне рішення, тому рухався прямо до першого торкання позначеної області. На графіку ця пряма позначена пунктирною лінією.


Рівний масштаб

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

Пряма F(x) = const перетинає область у точці A. Оскільки точка A отримана в результаті перетину прямих 1 i 5, то її координати задовольняють рівнянням цих прямих:

x1+2x2≥2

x1=0

Вирішивши систему рівнянь, одержимо: x1 = 0, x2 = 1

Звідки знайдемо мінімальне значення цільової функції:

F(X) = 10*0 + 12*1 = 12