Несколько практических примеров с использованием Excel Solver

  • Поделись Этим
Hugh West

Решатель Excel это одна из самых полезных функций, с которой можно столкнуться при анализе данных в Excel. Это функция анализа "что-если" в виде надстройки Excel. Эта статья будет посвящена различным примерам использования функции решатель функция в Excel, включающая множество различных областей.

Скачать Рабочую тетрадь для практических занятий

Загрузите рабочую тетрадь, используемую для демонстрации, по ссылке ниже.

Excel Solver.xlsx

Что такое решатель в Excel?

Solver - это дополнительная программа Microsoft Excel. Solver является частью инструментов What-If Analysis, которые мы можем использовать в Excel для тестирования различных сценариев. Мы можем решать вопросы принятия решений с помощью инструмента Excel Solver, находя наиболее идеальные решения. Они также анализируют, как каждая возможность влияет на вывод рабочего листа.

Как включить функцию решателя в Excel

Вы можете получить доступ к Solver, выбрав Data Анализируйте Solver. Иногда бывает, что эта команда недоступна, тогда необходимо установить дополнение Solver, выполнив следующие действия:

  • Прежде всего, выберите Файл
  • Во-вторых, выберите Опции из меню.

  • Таким образом, в Параметры Excel появится диалоговое окно.
  • Здесь перейдите к Дополнения
  • В нижней части Параметры Excel в диалоговом окне выберите Надстройки Excel из Управляйте раскрывающийся список, а затем нажмите Перейти .

  • Сразу же Дополнения появится диалоговое окно.
  • Затем поставьте галочку напротив Solver Add-In , а затем нажмите OK .

Как только вы активируете надстройки в рабочей книге Excel, они будут видны на ленте. Просто переместитесь в раздел Данные и вы сможете найти вкладку Решатель дополнение на Анализируйте группа.

Как использовать решатель в Excel

Прежде чем перейти к более подробной информации, вот основная процедура для использование решателя :

  • Прежде всего, настройте рабочий лист со значениями и формулами. Убедитесь, что вы правильно отформатировали ячейки; например, максимальное время вы не можете производить неполные единицы вашей продукции, поэтому отформатируйте эти ячейки так, чтобы они содержали числа без десятичных значений.
  • Затем выберите Данные ➪ Анализ ➪ Решатель Появится диалоговое окно Параметры решателя.
  • После этого укажите целевую ячейку. Целевая ячейка также известна как цель.
  • Затем укажите диапазон, который содержит изменяемые ячейки.
  • Укажите ограничения.
  • При необходимости измените параметры решателя.
  • Позвольте Solver решить проблему.

2 Подходящие примеры эффективного использования Excel Solver

Вначале мы рассмотрим две простые задачи с использованием решателя Excel. Первая задача - максимизация прибыли от серии продуктов, а вторая - минимизация себестоимости. Это всего лишь два примера, демонстрирующие работу решателя Excel в двух различных сценариях. Другие задачи, касающиеся той же функции, будут рассмотрены в следующей части статьи.

1. максимизация прибыли от продукции

Сначала рассмотрим следующий набор данных.

Наибольшую прибыль приносит продукт С. Поэтому, чтобы максимизировать общую прибыль от производства, мы можем производить только продукт С. Но если бы все было так просто, вам бы не понадобились такие инструменты, как Solver. У этой компании есть некоторые ограничения, которые необходимо соблюдать для производства продукции:

  • Совокупная производственная мощность составляет 300 единиц продукции в день.
  • Компании необходимо 50 единиц продукта А для выполнения существующего заказа.
  • Компании необходимо 40 единиц продукта B для выполнения ожидаемого заказа.
  • Рынок для продукта С относительно ограничен, поэтому компания не заинтересована в производстве более 40 единиц этого продукта в день.

Теперь давайте посмотрим, как мы можем использовать решатель для работы с проблемой.

Шаги:

  • Во-первых, перейдите к Данные на вкладке ленты.
  • Затем выберите Решатель из Анализ группа.

  • Теперь выберите ячейку E8 в качестве объективной ячейки Параметр решателя коробка.
  • Помимо На выбор опций Макс так как мы пытаемся максимизировать значение ячейки.
  • В Изменяя переменные ячейки выберите значения ячеек, которые мы хотим изменить. Здесь они принадлежат диапазону C5:C7 .
  • Теперь добавьте ограничения, нажав на кнопку Добавить кнопку справа от поля.
  • Наконец, выберите Simplex LP в Выберите метод решения

  • После того, как вы выполните все вышеперечисленные действия, нажмите на кнопку Решить в нижней части ящика.
  • После этого Результаты работы решателя появится окно.
  • Теперь выберите опции и отчеты, которые вы хотите предпочесть в этом поле. Для демонстрации мы выбираем включение опции Сохранить решение только опция.

  • Далее нажмите на OK .
  • Теперь набор данных изменится следующим образом.

Это показывает оптимальное количество единиц продукции, необходимое для получения максимальной прибыли при введенных ограничениях. Это лишь один из примеров, демонстрирующих, насколько мощной может быть функция решателя в Excel.

Читать далее: Как рассчитать оптимальный ассортимент продукции в Excel (с помощью простых шагов)

2. минимизация стоимости доставки

После рассмотренной выше задачи максимизации, давайте рассмотрим пример, ориентированный на минимизацию значений. Мы будем использовать SUM и SUMPRODUCT функции для вычисления различных параметров. Для этого возьмем следующий набор данных.

Таблица расходов на доставку : Эта таблица содержит диапазон ячеек B4:E10 Это матрица, содержащая стоимость доставки единицы товара с каждого склада до каждой розничной точки. Например, стоимость доставки единицы товара из Бостона в Детройт составляет $38 .

Потребности в продукции каждого розничного магазина : Эта информация появляется в диапазоне ячеек C14:C19 Например, розничной точке в Хьюстоне требуется 225 единиц, Денверу - 150 единиц, Атланте - 100 единиц и так далее. C18 это ячейка с формулой, которая вычисляет общее количество единиц, необходимых из торговых точек.

Нет. для отправки из... : Диапазон клеток D14:F19 содержит регулируемые ячейки. Значения этих ячеек будут изменяться решателем. Мы инициализировали эти ячейки значением 25, чтобы дать решателю начальное значение. Column G содержит формулы. Этот столбец содержит сумму единиц продукции, которую компания должна отгрузить в каждую розничную точку со складов. Например, G14 показывает значение 75. Компания должна отправить 75 единиц продукции в торговую точку в Денвере с трех складов.

Складские запасы : Строка 21 содержит количество запасов на каждом складе. Например, склад в Лос-Анджелесе имеет 400 единиц запасов. Строка 22 содержит формулы, показывающие остаток запасов после отгрузки. Например, Лос-Анджелес отгрузил 150 (см. строку 18) единиц продукции, поэтому у него осталось 250 (400-150) единиц запасов.

Рассчитанные расходы на доставку : Строка 24 содержит формулы для расчета стоимости доставки.

Решатель заполнит значения в диапазоне ячеек D14:F19 таким образом, чтобы минимизировать затраты на доставку со складов в торговые точки. Другими словами, решение будет минимизировать значение в ячейке G24 путем корректировки значений диапазона ячеек D14:F19 с соблюдением следующих ограничений:

  • Количество единиц товара, требуемое каждой торговой точкой, должно быть равно количеству отгруженных. Другими словами, все заказы должны быть выполнены. Следующие спецификации могут выразить эти ограничения: C14=G14, C16=G16, C18=G18, C15=G15, C17=G17, и C19=G19
  • Количество единиц, оставшихся в запасах каждого склада, не должно быть отрицательным. Другими словами, склад не может отгрузить больше, чем его запасы. Следующее ограничение показывает это: D24>=0, E24>=0, F24>=0 .
  • Регулируемые ячейки не могут быть отрицательными, поскольку доставка отрицательного числа единиц не имеет смысла. В диалоговом окне Solve Parameters есть удобная опция: Make Unconstrained Variables Non-Negative. Убедитесь, что эта настройка включена.

Давайте выполним следующие шаги для выполнения этой задачи.

Шаги:

  • Прежде всего, мы установим некоторые необходимые формулы. Для расчета для отправки введите следующую формулу.

=SUM(D14:F14)

  • Затем нажмите Войти .

  • Затем перетащите значок Fill Handle (Ручка заливки) в ячейку G19 чтобы заполнить формулой остальные ячейки.
  • Поэтому вывод будет выглядеть следующим образом.

  • Затем, чтобы подсчитать общую сумму, введите следующую формулу.

=SUM(C14:C19)

  • Затем нажмите Enter.

  • Затем перетащите значок Fill Handle вправо до ячейки G20 чтобы заполнить формулой остальные ячейки.
  • Поэтому вывод будет выглядеть следующим образом.

  • Затем, чтобы рассчитать стоимость доставки, введите следующую формулу.

=SUMPRODUCT(C5:C10,D14:D19)

  • Затем нажмите Войти .

  • Затем перетащите значок Fill Handle вправо до ячейки F26 чтобы заполнить формулой остальные ячейки.
  • Теперь введите следующую формулу в ячейку G26 .

=SUM(D26:F26)

  • Чтобы открыть Надстройка решателя , перейдите на Данные вкладку и нажмите на Решатель .

  • Затем заполните Установить поле "Цель с этим значением: $G$26 .
  • Затем выберите радиокнопку Мин опция в разделе Управление.
  • Выберите ячейку $D$14 на $F$19 заполнить поле Изменяя переменные ячейки В этом поле будет показано $D$14:$F$19 .
  • Сейчас, Добавить ограничения по одному. Ограничения следующие: C14=G14, C16=G16, C18=G18, C15=G15, C17=G17, C19=G19, D24>=0, E24>=0 и F24>=0 Эти ограничения будут показаны в поле Subject to the Constraints.
  • После этого выберите Сделать переменные без ограничений неотрицательными флажок.
  • Наконец, выберите Simplex LP из раскрывающегося списка Select a Solving Method (Выбрать метод решения).

  • Теперь нажмите на Решить На следующем рисунке показан Результаты работы решателя диалоговое окно. После нажатия кнопки OK на экране появится ваш результат.

  • Решатель отображает решение, показанное на следующем рисунке.

Читать далее: Пример с использованием решателя Excel для минимизации затрат

Подробнее о Excel Solver

В этом разделе мы обсудим диалоговое окно Solver Options. Используя это диалоговое окно, вы можете управлять многими аспектами процесса решения. Вы также можете загружать и сохранять спецификации модели в диапазоне рабочих листов с помощью этого диалогового окна.

Обычно вы захотите сохранить модель только тогда, когда будете использовать более одного набора параметров Solver с вашим рабочим листом. Excel автоматически сохраняет первую модель Solver с вашим рабочим листом, используя скрытые имена. Если вы сохраняете дополнительные модели, Excel сохраняет информацию в виде формул, которые соответствуют спецификациям. (Последняя ячейка в сохраненном диапазоне - это формула массива, в которой хранитсянастройки опций).

Может случиться так, что Solver сообщит, что не может найти решение, даже если вы знаете, что решение должно существовать. Вы можете изменить один или несколько параметров Solver и попробовать снова. Когда вы нажмете кнопку Options в диалоговом окне Solver Parameters, появится диалоговое окно Solver Options, показанное на следующем рисунке.

Пример простого решателя в Excel

Мы можем контролировать многие аспекты того, как Solver будет решать проблему.

Ниже приведено краткое описание возможностей Solver:

Точность ограничения : Укажите, насколько близко должны располагаться формулы Ссылка на ячейку и Ограничение, чтобы удовлетворить ограничению. Указывая меньшую точность, Excel быстрее решит проблему.

Используйте автоматическое масштабирование : Используется, когда проблема касается больших различий в величине - когда вы пытаетесь максимизировать процент, например, варьируя ячейки, которые очень велики.

Показать результаты итераций : Установив этот флажок, Solver получает указание приостанавливать и отображать результаты после каждой итерации.

Игнорировать целочисленные ограничения : Если вы установите этот флажок, Solver будет игнорировать ограничения, в которых говорится, что конкретная ячейка должна быть целым числом. Использование этой опции может позволить Solver найти решение, которое не может быть найдено другим способом.

Максимальное время : Укажите максимальное количество времени (в секундах), которое вы хотите, чтобы Solver потратил на решение одной задачи. Если Solver сообщает, что он превысил лимит времени, вы можете увеличить количество времени, которое он потратит на поиск решения.

Итерации : Введите максимальное количество пробных решений, которое вы хотите, чтобы Solver попытался решить проблему.

Максимальные подпроблемы : Используется для решения сложных задач. Укажите максимальное количество подпроблем, которые могут быть решены эволюционным алгоритмом.

Максимально выполнимые решения : Используется для сложных задач. Укажите максимальное количество выполнимых решений, которые могут быть решены эволюционным алгоритмом.

Читать далее: Как использовать эволюционный решатель Excel (с простыми шагами)

Пример оптимизации инвестиционного портфеля с помощью Excel Solver

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

Рассмотрим следующий инвестиционный портфель.

Постановка проблемы описана ниже.

  • Сумма, которую кредитный союз инвестирует в кредиты на новые автомобили, должна быть как минимум в три раза больше суммы, которую кредитный союз инвестирует в кредиты на подержанные автомобили. Причина в том, что кредиты на подержанные автомобили являются более рискованными инвестициями. Это ограничение представлено как C5>=C6*3
  • Автокредиты должны составлять не менее 15% портфеля. Это ограничение представлено в виде D14>=.15
  • Необеспеченные кредиты должны составлять не более 25% портфеля. Это ограничение представлено в виде E8<=.25
  • Не менее 10% портфеля должно находиться в банковских компакт-дисках. Это ограничение представлено как E9>=.10
  • Общая сумма инвестиций составляет $5,000,000.
  • Все инвестиции должны быть положительными или нулевыми.

Выполните следующие шаги, чтобы увидеть, как можно использовать решатель в Excel для примеров, подобных этому.

Шаги:

  • Сначала выберите Данные
  • Затем выберите Решатель из Анализ

  • Теперь заполните поле Set Objective этим значением: $E$13 .
  • Затем выберите радиокнопку для Макс опция в На
  • После этого выберите ячейку $D$6 на $D$10 заполнить поле Изменяя переменные ячейки В этом поле будет показано $D$6:$D$10 .
  • Добавьте ограничения одно за другим. Ограничения следующие: $D$11= $C$4 $D$6>= $D$7*3, $E$15>= 0,15, $F$9= 0,1 Эти ограничения будут показаны в разделе С учетом ограничений
  • Выберите Сделать переменные без ограничений неотрицательными флажок.
  • Выберите GRG Нелинейный из Выберите метод решения выпадающий список.

  • Теперь нажмите кнопку Решить Нажмите OK .
  • Появится еще одно диалоговое окно, в котором нужно выбрать типы результатов.
  • Это означает, что вам нужно выбрать Сохранить решение В противном случае значения вернутся к исходным.
  • Затем в правой части диалогового окна выберите все опции в разделе Отчеты .
  • Затем нажмите OK после этого.

  • Мы ввели 1,000,000 в изменяющиеся ячейки в качестве начальных значений. Когда вы запускаете Solver с этими параметрами, он выдает решение, показанное на следующем рисунке, которое имеет общий выход 25% .
  • Сайт Автокредиты значения также изменились на 15%.
  • И таким образом мы получили наивысшее значение оптимизации Общая доходность с учетом всех ограничений.

Вот так мы завершаем оптимизацию инвестиционного портфеля с помощью решателя Excel.

Читать далее: Как создать калькулятор финансового планирования в Excel

Пример линейного целочисленного программирования с использованием решателя Excel

Давайте рассмотрим пример использования решателя Excel в целочисленном линейном программировании. Сначала рассмотрим подходящий набор данных для решения задачи.

Теперь пришло время рассмотреть особенности решателя Excel для этого примера целочисленного линейного программирования:

Переменные решения:

X1: количество производства продукта 1.

X2: количество производства продукта 2.

Y: 1, если выбрана первая настройка, или 0, если выбрана вторая настройка.

Объективная функция:

Z=10X1+12X2

Ограничения:

X1+X2<=35

X1-8Y<=12

X2+15Y<=25

Y={0,1}

X1,X2>=0

Теперь выполните следующие шаги, чтобы увидеть, как мы можем решить этот конкретный пример целочисленного линейного программирования в Excel с помощью решателя.

Шаги:

  • Сначала зайдите в Данные вкладку и выберите Решатель из Анализ

  • Теперь вставьте значения и ограничения в поле Параметр решателя как показано на рисунке.

  • Затем нажмите на Решить .
  • Далее нажмите OK на Результаты работы решателя .

Конечный результат использования решателя Excel для примера целочисленного линейного программирования будет выглядеть следующим образом.

Пример составления расписания с помощью Excel Solver

Предположим, что в банке работает 22 сотрудника. Как составить расписание, чтобы у работников было максимальное количество выходных дней? В этом примере составления расписания в решателе Excel мы максимизируем количество выходных дней при фиксированном количестве сотрудников.

Давайте посмотрим на набор данных.

Ограничения показаны на рис. Чтобы решить задачу планирования и использовать решатель в подобных примерах, вы можете выполнить следующие шаги.

Шаги:

  • Во-первых, перейдите к Данные на вкладке ленты и выберите Решатель из Анализ

  • Затем введите значения ограничений и параметров, как показано на рисунке ниже.

  • После этого нажмите на Решить .
  • Наконец, нажмите на OK на Решатель Результаты.

Решатель автоматически покажет результат решения задачи планирования в электронной таблице Excel благодаря выбору, который мы сделали на шагах.

В подобных примерах можно использовать решатель в Excel.

Пример Excel-решателя для распределения маркетингового бюджета

Наконец, давайте рассмотрим сценарий, в котором нам нужно использовать решатель в Excel для распределения маркетингового бюджета. Для этого возьмем такой набор данных.

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

Выполните следующие шаги, чтобы узнать, как мы можем решить эту маркетинговую проблему с помощью Excel solver.

Шаги:

  • Во-первых, перейдите к Данные на вкладке ленты и выберите Решатель из Анализ группа.

  • Затем запишите следующие ограничения и параметры, как показано на рисунке.

  • После этого нажмите на Решить .
  • Далее нажмите на OK на Результаты работы решателя

Значения будут меняться из-за ограничений и параметров, которые мы выбрали.

В подобных примерах можно использовать решатель в Excel.

Читать далее: Распределение ресурсов в Excel (создание с помощью быстрых шагов)

Заключение

На этом мы завершаем статью о примерах решателя Excel. Надеюсь, вы поняли идею использования решателя Excel для различных сценариев из этих примеров. Надеюсь, вы нашли это руководство полезным и информативным. Если у вас есть вопросы или предложения, дайте нам знать в комментариях ниже.

Для получения других руководств, подобных этому, посетите ExcelWIKI.com .

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.