Написание контрольных, курсовых, дипломных работ, выполнение задач, тестов, бизнес-планов

Лінійне програмування (частина 2)

Тема 2. Лінійне програмування (частина 2)

Мета: Навчитися розв’язувати задачі ЛП засобами MS Excel

План

1. Ознайомлення із особливостями використання надбудови MS Excel “Поиск решения”

2. Побудова в MS Excel моделі задачі лінійного програмування.

3. Використання надбудови MS Excel “Поиск решения” для знаходження оптимального плану задачі лінійного програмування.

 

Номер та зміст завдання

1. Ознайомлення із особливостями використання надбудови MS Excel “Поиск решения”

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

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

Задачі, що розв’язуються з використанням процедури пошуку рішення, повинні задовольняти наступним вимогам:

  • Значення в цільовій комірці залежить від других комірок та формул. Треба визначити всі вихідні параметри, при яких значення в цільовій комірці буде:
    • максимальним,
    • мінімальним,
    • заздалегідь визначеним.
  • Цільова комірка залежить від групи комірок, які називаються комірками, які змінюються. Їх значення треба підібрати так, щоб отримати бажаний результат у цільовій комірці.
  • Рішення (значення комірок, які змінюються) повинно знаходитись в певних межах або задовольняти певним обмеженням.

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

 

2. Побудова в MS Excel моделі задачі лінійного програмування.

Засобами табличного процесору Excel розв’язати задачу 4 лабораторної роботи 1

Пригадаємо економіко-математичну модель цієї задачі:

.

Алгоритм розв’язання задач лінійного програмування засобами табличного процесору Excel:

  1. Вводять умову задачі:
    1. Створюють форму для введення умов задачі (рис.1).

Примітка: під заголовком таблиці і перед колонкою «Тип обмеження» залишають відповідно порожній рядок і порожній стовпчик.

Рис. 1. Форма для введення умов задачі

 

  1. Вводять вхідні дані (рис. 2):

Рис. 2. Введення вхідних даних

 

  1. Вводять залежності математичної моделі: у рядки обмежень заносять числові коефіцієнти при змінних, що відповідають назвам стовпчиків. Якщо деяка змінна в обмеженні відсутня, її стовпчик залишають пустим.
  2. Вводять коефіцієнти цільової функції (аналогічно у рядок F). Максимізація чи мінімізація функції позначається у цьому рядку у стовпчику «Тип обмеження».
  3. Вводять типи обмежень у стовпчик «Тип обмеження». Введення типу обмеження «=» повинно закінчуватись натисканням клавіші Enter.
  4. Вводять граничні умови, тобто праві частини обмежень у стовпчик «Розмір обмеження».
  1. Оформлюють умову задачі  у вигляді моделі.
    1. На перетині рядка, що відповідає і-му обмеженню, і пустого стовпчика вписують функцію =СУММПРОИЗВ (массив1; массив2), де массив1 – діапазон пустих клітинок під змінними ; массив2 – діапазон коефіцієнтів і-го обмеження.

Так, у нашому прикладі у клітинці Е4 запишеться функція

=СУММПРОИЗВ($C$3:$D$3;C4:D4).

Функція СУММПРОИЗВ використовується для обчислення суми добутків відповідних елементів числових масивів однакової розмірності. Синтаксис функції:

=СУММПРОИЗВ (массив1; массив2; масив3; ...)

де массив1, массив2, массив3,... - від 2 до 30 числових масивів.

Результат виконання даної функції – число, яке є сумою добутків відповідних елементів числових масивів.

Примітки:

  • масиви повинні мати однакові розмірності;
  • нечислові елементи масивів сприймаються як нульові.
  • Аналогічну функцію записують у рядок цільової функції. У режимі перегляду формул модель задачі набуде вигляду, наведеному на рис. 3.

Рис. 3. Модель задачі в режимі перегляду формул

 

3. Використання надбудови MS Excel “Поиск решения” для знаходження оптимального плану задачі лінійного програмування.

Застосовують елемент надбудови табличного процесора Excel “Поиск решения”.

1. Викликають пункти меню Сервис→Поиск решения. На екран виводиться діалогове вікно, зовнішній вигляд якого подано на рис. 4.

Рис. 4. Загальний вигляд вікна “Поиск решения”

 

2.У полі “Установить целевую ячейку” вводять адресу клітинки, що містить формулу для обчислення значення цільової функції. Це можна зробити вручну (з клавіатури) або за допомогою кнопки , яка дозволяє перейти в робочу таблицю, зображену на рис. 3, і виділити потрібну клітинку. Повернення до вікна “Поиск решения” здійснюється за допомогою кнопки .

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

 

У нашому прикладі адреса цільової клітинки Е7 встановлена автоматично.

3. Встановлюють перемикач “Равной” у положення, що відповідає спрямованості цільової функції (максимум, мінімум, деяке конкретне значення).

У нашому прикладі перемикач встановлено на “максимальному значению”.

4.У полі “Изменяя ячейки” вводять адреси клітинок пустого рядка, що повинні містити значення змінних У нашому прикладі це клітинки $C$3:$D$3.

5.Натискають кнопку “Добавить”. На екрані з’являється діалогове вікно “Добавление ограничения”, зовнішній вигляд якого подано на рис. 5.

Рис. 5. Загальний вигляд вікна “Добавление ограничения”

 

6. Для кожного обмеження в поле “Ссылка на ячейку” вводять адресу клітинки, що містить значення функції СУММПРОИЗВ. У нашому прикладі для першого обмеження у полі “Ссылка на ячейку” введена адреса $E$4.

7.Із списку, що розкривається, обирають тип обмеження.

8.У полі “Ограничение” вводять адресу клітинки, що містить числове значення з колонки “Розмір обмеження” (рис. 6).

 

Рис. 6. Введення одного обмеження

 

Примітка. Для введення наступного обмеження натискають кнопку “Добавить”. Після введення останнього обмеження натискають кнопку “ОК”. Обмеження, що мають однаковий знак, можна вводити групами (рис. 7).

Рис. 7. Введення групи обмежень

 

9.У вікні “Поиск решения” натискають кнопку “Параметры” (рис. 8).

Рис. 8. Вікно “Параметры поиска решения”

 

10.У вікні “Параметры поиска решения” встановлюють опції “Линейная модель”  і “Неотрицательные значения” і натискають кнопку “ОК”.

11.У вікні “Поиск решения” (рис. 8.4) натискають кнопку “Выполнить”.

На екран виведеться вікно “Результаты поиска решения”, яке може містити такі повідомлення:

  • “Решение найдено. Все ограничения и условия оптимальности выполнены”. Це означає, що знайдено оптимальний розв’язок моделі. Після натискання кнопки “ОК” на робочому листі у клітинці, що містила формулу для обчислення цільової функції, та під змінними  будуть виведені їхні значення.
  • “Значение целевой ячейки не сходятся”. Це означає, що значення цільової функції прямує до нескінченості.
  • “Поиск не может найти подходящего решения”. В даному випадку система обмежень несумісна і задача не має розв’язку.

Результат розв’язання моделі прикладу наведено на рис. 9.

 

Рис. 9. Результат розв’язання

 

Методичне забезпечення

  1. Сергієнко В.А. Математичне програмування. Конспект лекцій для студентів напряму підготовки 6.030601 „Менеджмент” денної та заочної форм навчання / В.А. Сергієнко, Л.П. Перхун, 2010. – 140 С.
  2. Лавров Є.А. Математичне програмування: навчальний посібник / Є.А. Лавров, Л.П. Перхун, В.А. Сергієнко / За ред. Є.А. Лаврова. – Суми, 2010. – 224 С.

 

Рекомендована література

Базова

  1. Бех О.Б. Збірник задач з математичного програмування. Навч. пос. / О.Б. Бех, Т.А. Огородня, А.Ф. Щебрак – К.: Видавництво Ліра-К, 2013. – 212 С.
  2. Бех О.Б. Математичне програмування. Пос. / О.Б. Бех, Т.А. Огородня, А.Ф. Щебрак – К.: Видавництво Ліра-К, 2013. – 200 С.
  3. Вдовин М. Л. Математичне програмування теорія та практикум. Пос. / М.Л. Вдовин, С.Г. Данилюк – К.: Видавництво Ліра-К, 2014. – 160 С.
  4. Глушик М. М. Математичне програмування. Підручник / М. М. Глушик, І.М. Копич, В.М. Сороківський – К.: Видавництво Ліра-К, 2014. – 280 С.
  5. Глушик М. Математичне програмування. Підручник / М. Глушик, І.Копич, О.Пенцак, В. Сорківський – К.: Видавництво Ліра-К, 2013. – 216 С.
  6. Копич І.М. Математичні моделі в менеджменті та маркетингу. Навч. пос. / І.М. Копич, В.М. Сороківський ,В.І.Стефаняк – К.: Видавництво Ліра-К, 2014. – 376 С.
  7. Кучма М.І. Математичне програмування: приклади та задачі. пос. / М.І. Кучма – К.: Видавництво Ліра-К, 2013. – 344 С.
  8. Мартиненко М.А. Математичне програмування: підручник / М.А. Мартиненко, О.М. Нещадим, В.М. Сафонов – К.: Видавництво Ліра-К, 2010. – 311 С.

 

Інформаційні ресурси

(в т.ч. електронна бібліотека СНАУ)

  1. http://web.archive.org/web/20070205063920/http://dims.karelia.ru/~alexmou/tpr/tpr_02_linear_programming.ppt – слайди по лінійному програмуванню
  2. Український інститут ІТ в освіті Економіко-математичне моделювання (Демо-версія)  [Електронний ресурс]. – Режим доступу: http://moodle.ipo.kpi.ua/moodle/mod/resource/index.php?id=125
  3. Іващук О.Т. Економіко-математичне моделювання [Електронний ресурс] / О.Т. Іващук. – Т.: ТНЕУ «Економічна думка», 2008. – 704 с.
  4. Курило А.О. Математичне програмування. Конспект лекцій. - Суми, 2015 рік 136 ст., табл. 51, рис. 36.
  5. Курило А.О. Математичне програмування. Частина 1: методичні вказівки щодо виконання практичних та самостійних робіт. – Суми, 2015, ст.76, табл. 20, рис. 11.
  6. Курило А.О. Математичне програмування. Частина 2: методичні вказівки щодо виконання практичних та самостійних робіт. – Суми, 2015, ст.84, табл. 16, рис. 13.
  7. Сергієнко В.А.  Математичне програмування. Конспект лекцій для студентів напряму підготовки 6.030601 „Менеджмент” денної та заочної форм навчання./ В.А.Сергієнко, Л.П. Перхун. 2009 – 149 с.
  8. Сергієнко В.А., Перхун Л.П. Електронний засіб навчального призначення: «Математичне програмування» для студентів денної та заочної форм навчання за напрямом підготовки 6.030601 «Менеджмент», 2010.