Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ДОСЛІДЖЕННЯ ОПЕРАЦІЙ.doc
Скачиваний:
2
Добавлен:
07.07.2019
Размер:
798.72 Кб
Скачать

1. Алгоритм симплекс-методу.

  1. Симплекс-метод застосовується до канонічної задачі лінійного програмування, яка має вигляд:

,

де .

  1. Знаходиться початковий базисний розв’язок (опорний план) . Обчислюються відносні оцінки змінних:

(для базисних змінних відносні оцінки рівні нулю). Отже, побудована початкова ітерація. Припустимо, що побудована s-та ітерація.

  1. Проводиться аналіз відносних оцінок небазисних змінних:

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

  • якщо і , то цільова функція (лінійна форма) необмежена знизу. Вихід з алгоритму;

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

Новий базисний розв’язок буде: при цьому значення лінійної форми: , зменшується на . Переходимо на початок п.3.

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

Відомо, що симплекс-метод може бути використаний тільки для невироджених задач. Тобто, для задач в яких базисні розв’язки невироджені.

Зауваження. Розв’язок вироджений, якщо і метод зациклюється. Тобто, знаходимось в одній вершині, але міняємо базисні координати.

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

ітерації

базисні змінні

...

...

Примітки

...

...

0

1

0

...

0

...

0

1

...

0

...

...

...

...

...

...

...

...

...

...

0

0

...

1

...

0

0

...

0

...

Приклад. Нехай задано деяку стандартну задачу лінійного програмування:

Зведемо цю задачу до канонічного виду:

Цю задачу тепер можна розв’язати за допомогою симплекс-методу. Побудуємо симплекс-таблицю.

ітерації

базисні змінні

-2

-1

-7

0

0

Примітки

0

0

1

2

3

1

0

4

4/3

– ввести

– вивести

0

-1

-4

10

0

1

7

7/10

0

-2

-1

-7

0

0

1

0

13/10

32/10

0

1

-3/10

19/10

19/32

– ввести

– вивести

-7

-1/10

-4/10

1

0

1/10

7/10

-

-49/10

-27/10

-38/10

0

0

7/10

2

-1

13/32

1

0

10/32

-3/32

19/32

19/13

– ввести

– вивести

-7

2/32

0

1

4/32

2/32

30/32

30/13

-229/32

-37/32

0

0

38/32

11/32

3

-2

1

32/13

0

10/13

-3/13

19/13

-7

0

-2/13

1

1/13

1/13

11/13

-115/13

0

37/13

0

27/13

1/13

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