При розв’язуванні широкого кола задач (зокрема, в галузі економіки) потрібно знайти оптимальний (найкращий) розв’язок конкретного завдання при виконанні деяких заданих умов. Як визначити оптимальні витрати на рекламу продукції? Як доставити продукцію до споживачів з мінімальними витратами на перевезення?
Задачі пошуку оптимального розв’язку називаються задачами оптимізації.
Критерієм оптимальності в задачах є різні параметри: максимальна кількість продукції, максимальний прибуток підприємства, мінімальні витрати виробництва тощо. Важливо визначити основні принципи завдання цільових функцій.
Цільова функція — це аналітична залежність між критерієм оптимальності і параметрами, що підлягають оптимізації, з вказівкою напряму екстремуму. Для цільової функції завжди і обов’язково вказується вид екстремуму: f(x) → max (f(x) → min).
Цільова функція — це числове значення, яке показує, наскільки оптимальним є знайдене рішення.
Пошук оптимального рішення завжди проводиться з урахуванням певних обмежень: підприємство має обмежений набір ресурсів, транспортні засоби мають обмежену вантажопідйомність і швидкість, інвестор планує вкласти в розвиток підприємства кошти в межах певної суми.
Обмеження — це умови, що накладаються на параметри, від яких залежить значення цільової функції.
Оптимізаційне моделювання — це пошук таких значень параметрів, при яких цільова функція досягає максимального або мінімального значення при заданих обмеженнях. Для пошуку оптимального рішення зручно використовувати надбудову Пошук розв'язування.
Алгоритм розв’язування задачі оптимізації:
побудова математичної моделі задачі, яка включає перелік невідомих величин, значення яких потрібно знайти;
завдання цільової функції;
визначення критерію оптимізації цільової функції;
завдання системи обмежень у формі лінійних рівнянь і нерівностей.
Процедура пошуку розв’язування дає можливість знайти оптимальне значення формули, що міститься в цільовій клітинці. Цільовою є клітинка, для якої потрібно отримати задане значення. Щоб отримати заданий результат за формулою в цільовій клітинці, процедура змінює значення у клітинках, на які посилається формула. Щоб звузити множину значень, які використовуються для пошуку, застосовуються обмеження.
У математичній моделі розв’язування оптимізаційних задач необхідно знайти значення параметрів, від яких залежить результат обчислення певної математичної функції (у MS Excel ця функція подається формулою). Шуканий результат може бути максимальним (наприклад, прибуток організації), мінімальним (витрати на сировину) або дорівнювати певному значенню (потужність електричної мережі).
У таких випадках говорять про оптимізацію результату, задача належить до оптимізаційних задач, функція називається цільовою, а параметри — оптимізаційними.
Щоб розв’язок і значення параметрів були реальними, модель обов’язково містить обмеження або на значення параметрів, або на допоміжні величини, які залежать від оптимізаційних параметрів. Обмеження на дані завжди задаються в умові задачі.
Для оптимізаційних задач зручно використовувати надбудову Пошук розв’язування - Розв’язувач.
Засіб Розв’язувач дає змогу:
• вказувати кілька клітинок для оптимізаційних параметрів,
• вказувати обмеження на їх значення,
• знаходити розв’язок: цільова функція описується в клітинці формулою, у якій обов’язково є посилання на клітинки з оптимізаційними параметрами,
• визначати відповідно до умови один із варіантів роботи з цільовою функцією: знаходити її максимальне, мінімальне, конкретне значення,
• отримувати кілька розв’язків.
Щоб реалізувати модель у MS Excel із використанням надбудови Розв’язувач, необхідно дотримуватися певних правил:
• у MS Excel обов’язково має бути заданий діапазон клітинок для значень оптимізаційних параметрів;
• у таблиці має бути клітинка з формулою обчислення цільової функції;
• таблиця обов’язково містить клітинки зі значеннями параметрів, щоб мати можливість посилатися на них.
У стандартному наборі команд MS Excel команда запуску надбудова Розв’язувач відсутня, її необхідно встановити на стрічку ДАНІ. Для цього необхідно виконатитакі дії.
1. Перейти в меню ФАЙЛ → Параметри. Вибрати Надбудови.
2. У вікні, що відкрилося, обрати Пакет аналізу й активувати кнопку Перейти — відкриється вікно Надбудови.
3. Поставити галочку біля Розв’язувач. Підтвердити дії кнопкою ОК. На стрічці ДАНІ з’явилася команда Розв’язувач.
Практичне завдання:
Увага! Під час роботи з комп'ютером дотримуйтеся вимог безпеки життєдіяльності та санітарно-гігієнічних норм.
Задача 1: Планування випуску продукції
Підприємство виготовляє вироби трьох видів — А, В і С. Денний дохід із кожного виду одиниці виробу — 13, 18 і 22 у.о. Необхідно визначити, за якої кількості виробів підприємство отримає максимальний дохід з урахуванням того, що:
1) загальний обсяг виробництва — усього 300 одиниць виробів на день;
2) підприємству необхідно здійснити виробництво 50 одиниць виробу А для виконання замовлення; 40 одиниць виробу В для виконання планового замовлення; а оскільки збут виробів С доволі невеликий, то слід виготовляти не більше 40 одиниць цього виробу.
Задача 2: Оптимізація асортименту продукції
У кафе готують фірмові салати трьох видів (салат A, салат B, салат С), використовуючи інгредієнти чотирьох видів (інгредієнт 1, інгредієнт 2, інгредієнт 3, інгредієнт 4). Норма використання інгредієнтів (у грамах) для однієї порції кожного виду салату подано у таблиці. Вартість однієї порції салату А становить 120 грн, салату В – 100 грн, а салату С – 80 грн. Щодня кафе замовляє 5 кг інгредієнта 1, 4 кг інгредієнта 2 та по 3 кг інгредієнтів 3 і 4. Потрібно визначити, яку кількість порцій кожного з фірмових салатів слід приготувати, щоб загальна вартість страв була максимальною.
Побудова математичної моделі.
1.Введемо змінні: х1 – кількість порцій страви А, х2 – кількість порцій страви В, х3 – кількість порцій страви С.
2.Загальну вартість страв можна визначити за формулою: 120х1 +100х2 + 80х3 – це і буде цільова функція. Її потрібно максимізувати.
3.Наприклад, для приготування салату А потрібно 10 г інгредієнта 1. Отже для приготування х1 порцій страви А потрібно використати 10х1 грам цього інгредієнту. Аналогічно, для виготовлення х2 порцій страви В потрібно 50х2 грам інгредієнта 1, а для х3 порцій страви С – 10х3 грам цього продукту. Оскільки його загальна маса становить 5 кг (5000 г), то обмеження для інгредієнта 1 матиме вигляд 10х1 + 50х2 + 10х3 ≤ 5000.
4.Врахувавши, що кількість порцій – це цілі невід’ємні числа, отримаємо таку модель задачі:
120х1 + 100х2 + 80х3 → max
10x1 + 50x2 +10x3 ≤5000
20x1 + 0x2 +40x3 ≤4000
20x1 + 10x2 +30x3 ≤4000
30x1 + 15x2 +0x3 ≤3000
x1 ≥ 0, x2 ≥ 0, x3 ≥ 0;
x1, x2, x3 – цілі числа.
Розв’яжемо дану задачу за допомогою інструмента Розв'язувач табличного процесора Excel.
Для цього необхідно створити нову електронну книгу. Заповнити таблицю даними, ввести значення цільової функції:
B15 =B14*B13+C14*C13+D14*D13
та обмеження для відповідних змінних:
F9 =B9*$B$14+C9*$C$14+D9*$D$14,
F10 =B10*$B$14+C10*$C$14+D10*$D$14
F11 =B11*$B$14+C11*$C$14+D11*$D$14
F12 =B12*$B$14+C12*$C$14+D12*$D$14
Одержимо: