Посібник з Excel Solver з покроковими прикладами

  • Поділитися Цим
Michael Brown

У посібнику пояснюється, як додати і де знайти Пошукач в різних версіях Excel, починаючи з 2016 і закінчуючи 2003. На покрокових прикладах показано, як використовувати Пошукач Excel для пошуку оптимальних рішень задач лінійного програмування та інших типів задач.

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

У цьому уроці ми розглянемо всі основні аспекти роботи надбудови Excel Solver і надамо покрокове керівництво щодо її найбільш ефективного використання.

    Що таке Excel Solver?

    Excel Solver належить до спеціального набору команд, який часто називають інструментами What-if Analysis Tools, і призначений, в першу чергу, для моделювання та оптимізації різноманітних бізнес- та інженерних моделей.

    Надбудова Excel Розв'язувач особливо корисна для вирішення завдань лінійного програмування, так званих завдань лінійної оптимізації, і тому іноді називається вирішувач лінійного програмування Крім того, він може вирішувати гладкі нелінійні та негладкі задачі. Більш детально про алгоритми Excel Solver див. в розділі "Алгоритми Excel Solver".

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

    Як додати Розв'язувач в Excel

    Надбудова Solver входить до складу всіх версій Microsoft Excel, починаючи з 2003 року, але за замовчуванням вона не ввімкнена.

    Щоб додати Solver в Excel, виконайте наступні дії:

    1. В Excel 2010 - Excel 365 натисніть Файл > Опції .

      В Excel 2007 натисніть кнопку Microsoft Office а потім натисніть кнопку Параметри Excel .

    2. В рамках проекту Параметри Excel діалогове вікно, натисніть Надбудови на лівій бічній панелі переконайтеся, що Надбудови для Excel обирається в розділі Керувати у нижній частині вікна та натисніть кнопку Іди. .
    3. В рамках проекту Надбудови встановіть прапорець у діалоговому вікні Розв'язуюча надбудова і натисніть кнопку ГАРАЗД. :

    Щоб увімкнути Solver Excel 2003 перейдіть на сторінку Інструменти і натисніть Надбудови У справі Надбудови доступний список, перевірте Розв'язуюча надбудова і натисніть кнопку ГАРАЗД. .

    Примітка. Якщо Excel видає повідомлення про те, що надбудова Solver не встановлена на вашому комп'ютері, натисніть Так щоб встановити його.

    Де знаходиться Розв'язувач в Excel?

    У сучасних версіях програми Excel Розв'язувач з'являється кнопка Дані у вкладці Аналіз група:

    Де знаходиться Розв'язувач в Excel 2003?

    Після завантаження надбудови Solver в Excel 2003 її команда додається в меню Інструменти меню:

    Тепер, коли ви знаєте, де знайти Розв'язувач в Excel, відкрийте новий аркуш і почнемо!

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

    Як використовувати Пошукач в Excel

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

    Проблема Припустимо, ви власник салону краси і плануєте надавати нову послугу своїм клієнтам. Для цього вам необхідно придбати нове обладнання вартістю 40 000 доларів США, яке необхідно сплатити частинами протягом 12 місяців.

    Мета Розрахуйте мінімальну вартість однієї послуги, яка дозволить окупити нове обладнання в зазначені терміни.

    Для цього завдання я створив наступну модель:

    А тепер давайте подивимося, як Excel Solver може знайти рішення для цієї проблеми.

    1. запустіть Excel Solver

    Про це йдеться на Дані у вкладці Аналіз у групі, натисніть на кнопку Розв'язувач кнопку.

    2. визначити проблему

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

    • Комірка об'єкта
    • Змінні комірки
    • Обмеження

    Що саме робить Excel Solver з вищевказаними параметрами? Він знаходить оптимальне значення (максимальне, мінімальне або задане) для формули в рядку Мета змінюючи значення в комірці Змінна клітин, і з урахуванням обмежень в Обмеження клітини.

    Мета

    На сьогоднішній день, на жаль, це не так. Мета клітина ( Мета у попередніх версіях Excel) - це комірка що містить формулу Це може бути максимізація, мінімізація або досягнення певної цільової величини.

    У даному прикладі цільовою коміркою є комірка В7, яка розраховує строк платежу за формулою =B3/(B4*B5) і результат формули має дорівнювати 12:

    Змінні комірки

    Змінна клітини ( Зміна клітини або Регульований в попередніх версіях) - це комірки, що містять змінні дані, які можуть бути змінені для досягнення поставленої мети. Excel Solver дозволяє вказати до 200 змінних комірок.

    У цьому прикладі ми маємо пару комірок, значення яких можна змінювати:

    • Прогнозована кількість клієнтів на місяць (B4), яка повинна бути меншою або дорівнювати 50; та
    • Вартість за послугу (B5), яку ми хочемо, щоб Excel Solver розрахував.

    Порада. Якщо змінні комірки або діапазони у вашій моделі є несуміжні виділити першу комірку або діапазон, а потім натиснути та утримувати клавішу Ctrl, виділяючи інші комірки та/або діапазони. Або ввести діапазони вручну, розділивши їх комами.

    Обмеження

    Розв'язувач Excel Обмеження це обмеження або межі можливих варіантів вирішення проблеми. Іншими словами, обмеження - це умови, які повинні бути виконані.

    Для додавання обмеження (обмежень) виконайте наступні дії:

    • Натисніть на кнопку Додати праворуч від кнопки " З урахуванням обмежень "Коробка".

    • В рамках проекту Обмеження введіть обмеження.
    • Натисніть на кнопку Додати для додавання обмеження до списку.

    • Продовження введення інших обмежень.
    • Після того, як ви ввели останнє обмеження, натисніть ГАРАЗД. повернутися до основного Розв'язувач Параметри вікно.

    Excel Решатель дозволяє вказати наступні взаємозв'язки між коміркою, на яку посилаються, і обмеженням.

    • Менше або дорівнює , що дорівнює і більше або дорівнює Ви встановлюєте ці зв'язки, виділяючи комірку в Посилання на клітинку у вікні, обравши один з наступних знаків: <= =>.... , =, або а потім введіть число, посилання на комірку / ім'я комірки або формулу в поле Обмеження (див. скріншот вище).
    • Ціле число Якщо комірка, на яку є посилання, повинна бути цілим числом, виберіть інт і слово ціле число з'явиться в Обмеження Ящик.
    • Різні значення Якщо кожна комірка в діапазоні, на який є посилання, повинна містити різні значення, виберіть різниця і слово ВсеРізне з'явиться в Обмеження Ящик.
    • Бінарний Якщо ви хочете обмежити комірку, на яку є посилання, значенням 0 або 1, виберіть сміттєвий бак і слово бінарний з'явиться в Обмеження Ящик.

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

    До редагування або видалити існуюче обмеження, зробіть наступне:

    • В рамках проекту Параметри розв'язувача клацніть по обмеженню.
    • Щоб змінити вибране обмеження, натисніть Зміна і вносити ті зміни, які ви хочете.
    • Щоб видалити обмеження, натисніть кнопку Видалити кнопку.

    У цьому прикладі обмеженнями є:

    • B3=40000 - вартість нового обладнання становить 40 000 доларів США.
    • B4<=50 - прогнозована кількість пацієнтів на місяць у віці до 50 років.

    3. вирішити проблему

    Після того, як ви налаштували всі параметри, натисніть кнопку Розв'язати в нижній частині сторінки Параметри розв'язувача (див. скріншот вище) і дозвольте надбудові Excel Solver знайти оптимальне рішення для вашої задачі.

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

    Коли Solver завершить обробку, він виведе на екран Результати розв'язування діалогове вікно, в якому ви обираєте Зберігайте рішення Solver Solution і натисніть ГАРАЗД. :

    На сьогоднішній день, на жаль, це не так. Результат розв'язку вікно закриється, а розв'язок одразу з'явиться на робочому аркуші.

    У цьому прикладі в комірці В5 з'являється $66,67, що є мінімальною вартістю однієї послуги, яка дозволить окупити нове обладнання за 12 місяців, за умови, що буде не менше 50 клієнтів на місяць:

    Чайові:

    • Якщо Пошукач рішень Excel обробляє певну задачу занадто довго, ви можете перервати процес, натиснувши клавішу Esc. Excel перерахує робочий аркуш з останніми знайденими значеннями для Змінна клітини.
    • Щоб отримати більш детальну інформацію про вирішену проблему, натисніть на тип звіту у вікні Звіти і натисніть кнопку ГАРАЗД. Звіт буде створено на новому аркуші:

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

    Приклади Excel Solver

    Нижче ви знайдете ще два приклади використання надбудови Excel Solver. Спочатку ми знайдемо рішення всім відомої головоломки, а потім вирішимо реальну задачу лінійного програмування.

    Excel Solver приклад 1 (магічний квадрат)

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

    Наприклад, чи знаєте ви розв'язок для квадрата 3х3, що містить числа від 1 до 9, де кожен рядок, стовпець і діагональ дають у сумі 15?

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

    Для початку введіть числа від 1 до 9 в таблицю, що складається з 3 рядків і 3 стовпців. Ці числа насправді не потрібні Excel Solver, але вони допоможуть нам візуалізувати проблему. Що дійсно потрібно надбудові Excel Solver, так це формули SUM, які підсумовують кожен рядок, стовпець і 2 діагоналі:

    Після введення всіх формул запустіть програму Solver і встановіть наступні параметри:

    • Набір Мета У цьому прикладі нам не потрібно ставити жодної мети, тому залиште це поле порожнім.
    • Змінні комірки Ми хочемо заповнити числа в комірках від B2 до D4, тому виділимо діапазон B2:D4.
    • Обмеження При цьому повинні бути дотримані наступні умови:
      • $B$2:$D$4 = AllDifferent - всі комірки змінних повинні містити різні значення.
      • $B$2:$D$4 = integer - всі комірки змінних повинні бути цілими числами.
      • $B$5:$D$5 = 15 - сума значень у кожному стовпчику повинна дорівнювати 15.
      • $E$2:$E$4 = 15 - сума значень у кожному рядку повинна дорівнювати 15.
      • $B$7:$B$8 = 15 - сума обох діагоналей повинна дорівнювати 15.

    Нарешті, натисніть кнопку Розв'язати і рішення є!

    Excel Solver приклад 2 (задача лінійного програмування)

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

    Проблема Питання: Ви хочете мінімізувати витрати на доставку товару з 2 різних складів 4 різним клієнтам. Кожен склад має обмежену пропозицію, а кожен клієнт має певний попит.

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

    Вихідні дані

    Ось як виглядає наша проблема оптимізації перевезень:

    Формулювання моделі

    Щоб визначити нашу задачу лінійного програмування для Excel Solver, давайте відповімо на 3 основні питання:

    1. Які рішення потрібно прийняти? Ми хочемо розрахувати оптимальну кількість товару, яку потрібно доставити кожному клієнту з кожного складу. Змінна клітин (B7:E8).
    2. Не можна перевищувати запаси, наявні на кожному складі (I7:I8), і потрібно доставити кількість, замовлену кожним клієнтом (B10:E10), а саме Обмежений клітини.
    3. Яка мета? Мінімальна сумарна вартість доставки. І це наша Мета осередок (С12).

    Наступне, що вам потрібно зробити, це розрахувати загальну кількість товарів, відвантажених з кожного складу (G7:G8), і загальну кількість товарів, отриманих кожним клієнтом (B9:E9). Ви можете зробити це за допомогою простих формул СУММ, продемонстрованих на скріншоті нижче. Крім того, вставте формулу СУММПРОИЗВОДСТВО в C12, щоб розрахувати загальну вартість доставки:

    Щоб зробити нашу модель оптимізації перевезень більш зрозумілою, створимо наступні іменовані діапазони:

    Назва діапазону Клітини Параметр розв'язувача
    Продукція_відвантажена B7:E8 Змінні комірки
    В наявності I7:I8 Обмеження
    Всього_відвантажено G7:G8 Обмеження
    Замовлено B10:E10 Обмеження
    Всього_отримано B9:E9 Обмеження
    Вартість_доставки C12 Мета

    Останнє, що вам залишилося зробити - це налаштувати параметри Excel Solver:

    • Мета: Вартість_перевезення встановити в Хв
    • Змінні комірки: Товари_відвантажені
    • Обмеження: Total_received = Замовлено та Total_shipped <= Доступно

    Звертаємо Вашу увагу, що ми обрали Simplex LP метод розв'язання в цьому прикладі, оскільки ми маємо справу з задачею лінійного програмування. Якщо ви не впевнені, який тип задачі у вас є, можете залишити значення за замовчуванням GRG Nonlinear Більш детальну інформацію можна знайти в розділі Алгоритми Excel Solver.

    Рішення

    Натисніть на кнопку Розв'язати в нижній частині сторінки Параметри розв'язувача і ви отримаєте відповідь. У цьому прикладі надбудова Excel Розв'язувач розрахувала оптимальну кількість товару, яку потрібно доставити кожному клієнту з кожного складу з мінімальною сумарною вартістю доставки:

    Як зберігати і завантажувати сценарії Excel Solver

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

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

    Заощадження сценарій Excel Solver зводиться до вибору діапазону комірок для збереження даних. Завантаження Модель Solver - це лише питання надання Excel діапазону комірок, де зберігається ваша модель. Детальні кроки наведені нижче.

    Збереження моделі

    Для збереження сценарію Excel Solver виконайте наступні дії:

    1. Відкрийте робочий лист з розрахованою моделлю і запустіть Excel Solver.
    2. В рамках проекту Параметри розв'язувача у вікні, натисніть кнопку Завантажити/Зберегти кнопку.

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

    Завантаження збереженої моделі

    Якщо ви вирішили відновити збережений сценарій, виконайте наступне:

    1. В рамках проекту Параметри розв'язувача у вікні, натисніть кнопку Завантажити/Зберегти кнопку.
    2. На робочому аркуші виділіть діапазон комірок, що містять збережену модель, і натисніть кнопку Навантаження :

  • В рамках проекту Модель навантаження у діалоговому вікні натисніть кнопку Замінити кнопку:
  • Після цього відкриється головне вікно Excel Solver з параметрами раніше збереженої моделі. Все, що вам потрібно зробити, це натиснути кнопку Розв'язати для його перерахунку.
  • Алгоритми Excel Solver

    При визначенні задачі для Пошукувача Excel можна вибрати один з наступних способів у вікні Виберіть спосіб вирішення випадаюче вікно:

    • GRG Nonlinear. Узагальнена скорочена градієнтна нелінійна Алгоритм використовується для задач, які є гладкими нелінійними, тобто в яких хоча б одне з обмежень є гладкою нелінійною функцією змінних рішення. Більш детально з ним можна ознайомитись за посиланням.
    • LP Simplex В основі методу симплексного розв'язування ЛЗ лежить симплексний алгоритм, створений американським математиком Джорджем Данцигом, який використовується для розв'язування так званих симплексних задач (ЗЛП). Лінійне програмування задачі - математичні моделі, вимоги яких характеризуються лінійними залежностями, тобто складаються з однієї мети, представленої лінійним рівнянням, яку необхідно максимізувати або мінімізувати. Для отримання додаткової інформації, будь ласка, перегляньте цю сторінку.
    • Еволюційний Використовується для негладких задач, які є найскладнішим типом оптимізаційних задач, оскільки деякі функції є негладкими або навіть розривними, і тому важко визначити напрямок, в якому функція зростає або спадає. Для отримання додаткової інформації, будь ласка, дивіться на цій сторінці.

    Щоб змінити спосіб пошуку розв'язку розв'язувачем, натисніть кнопку Опції кнопку в розділі Параметри розв'язувача і налаштуйте будь-яку або всі опції в діалоговому вікні GRG Nonlinear , Всі методи і Еволюційний вкладки.

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

    Майкл Браун — відданий ентузіаст технологій із пристрастю до спрощення складних процесів за допомогою програмних засобів. Маючи понад десятирічний досвід роботи в технологічній індустрії, він відточив свої навички роботи з Microsoft Excel і Outlook, а також із Google Таблицями та Документами. Блог Майкла присвячений тому, щоб поділитися своїми знаннями та досвідом з іншими, надаючи прості поради та навчальні посібники для підвищення продуктивності та ефективності. Незалежно від того, чи є ви досвідченим професіоналом чи початківцем, блог Майкла пропонує цінну інформацію та практичні поради щодо отримання максимальної користі від цих основних програмних інструментів.