Контрольная работа: Завдання лінійного програмування

Послідовність рішення симплексом-методом наступна:

1.За певним правилом знаходимо будь яку вершину, що належить множині припустимих рішень. Перевіряємо, чи не відповідає дана вершина оптимальному значенню цільової функції. Якщо так, то завдання вирішене.

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

3. Якщо завдання має рішення, то за певним правилом знаходимо нову вершину, у якій цільова функція має більш оптимальне значення. Далі рішення здійснюємо відповідно до пункту 1, приймаючи в якості вихідної знову обрану вершину.

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

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

A1 x 1 +.+An xn +e1 xn +e1 xn +1 +.+em xn +m =A0 =[ai 0 ], (1.3)

Перетворення Гауса називають симплексним перетворенням, коли напрямний (базисний) елемент визначають за наступними правилами:

a) напрямний стовпець j вибирають із умови, що в ньому є хоча б один позитивний елемент;

б) напрямний рядок і вибирають так, щоб відношення було мінімально за умови що aij >0

При такому перетворенні в базис вводиться вектор Aj і виводиться вектор Аi . Тепер треба визначити, як вибрати вектор, що вводить у базис, щоб при цьому значення цільової функції збільшилося.

Для цього використають так називані оцінки векторів :

(1.4)

де Iб – множина індексів базисних векторів;

xij - визначають із умови

(1.5)

Величини {∆j } рівні симплекс-різницям для змінних {xj } із протилежним знаком. Отже, для того щоб значення цільової функції збільшилося, необхідно вибрати напрямний стовпець Аj з найбільшою по модулі негативною оцінкою, тобто

(1.6)

Для рішення завдання симплексом-методом на кожній ітерації заповнюють симплекс-таблицю.

5. Приклад 2

Вирішимо отримане двовимірне завдання лінійного програмування за допомогою симплекс-таблиць:Цільова функція F(x)=5x1 +6x2 → min

Обмеженняx1 +3x2 ≥15, 3x1 +x2 ≥25

Складемо першу симплекс-таблицю.

У верхніх частинах осередків запишемо коефіцієнт цільової функції й обмежень:

Таблиця 1

Змінна Вільний член Вільна змінна
X1 X2
Y1 15 1 3
Y2 25 3 1
F 0 -5 -6

1. Вибираємо стоку в таблиці один з негативним вільнимчленом, потім стовпець при вільній змінній з негативним членом. Якщо їх декілька то з них потрібно вибрати той елемент який дає мінімальне відношення до вільного члена. Цей елемент називається дозволеним. Він позначає дозволений рядок і стовпець у таблиці в якій перебувати замінні змінні;

Таблиця 1’

Змінна Вільний член Вільна змінна
X1 X2
Y1

15

5

К-во Просмотров: 267
Бесплатно скачать Контрольная работа: Завдання лінійного програмування