Как найти целевую функцию в excel

«Поиск решений» — функция Excel, которую используют для оптимизации параметров: прибыли, плана продаж, схемы доставки грузов, маркетингового бюджета или рентабельности. Она помогает составить расписание сотрудников, распределить расходы в бизнес-плане или инвестиционные вложения. Знание этой функции экономит много времени и сил. Рассказываем, как освоить функцию поиска решений.


Основные параметры поиска решений

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

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

Константы — исходная информация. К ней относится удельная маржинальная прибыль, стоимость каждой перевозки, нормы расхода товарно-материальных ценностей. В нашем случае — производительность работников, их оплата и норма в 1000 изделий. Также константа отражает ограничения и условия математической модели: например, только неотрицательные или целые значения. Мы вносим константы в таблицу цифрами или с помощью элементарных формул (СУММ, СРЗНАЧ).

Изменяемые ячейки — переменные, которые в итоге нужно найти. В задаче это распределение 1000 изделий между работниками с минимальными затратами. В разных случаях бывает одна изменяемая ячейка или диапазон. При заполнении функции «Поиск решений» важно оставить ячейки пустыми — программа сама найдет значения.

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

Ограничения — условия, которые необходимо учесть при оптимизации функции, называющейся целевой. К ним относятся размеры инвестирования, срок реализации проекта или объем покупательского спроса. В нашем случае — количество дней и число работников. 

Пример использования поиска решений

Теперь перейдем к самой функции. 

1) Чтобы включить «Поиск решений», выполните следующие шаги:

  • нажмите «Параметры Excel», а затем выберите категорию «Надстройки»;
  • в поле «Управление» выберите значение «Надстройки Excel» и нажмите кнопку «Перейти»;
  • в поле «Доступные надстройки» установите флажок рядом с пунктом «Поиск решения» и нажмите кнопку ОК.

2019-08-06 18.58.30.jpg

2019-08-06 18.58.37.jpg

2) Теперь упорядочим данные в виде таблицы, отражающей связи между ячейками. Советуем использовать цветовые обозначения: на примере красным выделена целевая функция, бежевым — ограничения, а желтым — изменяемые ячейки.

tg_image_2790408830.jpeg

Не забудьте ввести формулы. Стоимость заказа рассчитывается как «Оплата труда за 1 изделие» умножить на «Число заготовок, передаваемых в работу». Для того, чтобы узнать «Время на выполнение заказа», нужно «Число заготовок, передаваемых в работу» разделить на «Производительность».

tg_image_954796317.jpeg
tg_image_2790408830.jpeg

tg_image_4145344377.jpeg

3) Выделите целевую ячейку, которая должна показать максимум, минимум или определенное значение при заданных условиях. Для этого на панели нажмите  «Данные» и выберете функцию «Поиск решений» (обычно она в верхнем правом углу).

tg_image_2089575366.jpeg

4) Заполните параметры «Поиска решений» и нажмите «Найти решение». 

Совокупная стоимость 1000 изделий рассчитывается как сумма стоимостей количества изделий от каждого работника. Данная ячейка (Е13) — это целевая функция. D9:D12 — изменяемые ячейки. «Поиск решений» определяет их оптимальные значения, чтобы целевая функция достигла минимума при заданных ограничениях.

В нашем примере следующие ограничения: 

  • общее количество изделий 1000 штук ($D$13 = $D$3); 
  • число заготовок, передаваемых в работу — целое и больше нуля либо равно нулю ($D$9:$D$12 = целое, $D$9:$D$12 > = 0); 
  • количество дней меньше либо равно 30 ($F$9:$F$12 < = $D$6, либо как в примере в ячейке F13 задать функцию МАКС(F9:F12) и поставить ограничение $F$13 < = $D$6).

tg_image_1670540083.jpeg
tg_image_1428577646.jpeg

tg_image_2951437605.jpeg

5) В конце проверьте полученные данные на соответствие заданному целевому значению. Если что-то не сходится — нужно пересмотреть исходные данные, введенные формулы и ограничения.

tg_image_1895334008.jpeg

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

Наряду со множеством других возможностей, в Microsoft Excel есть одна малоизвестная, но очень полезная функция под названием “Поиск решения”. Несмотря на то, что найти и освоить ее, может быть, непросто, ее изучение и применение может помочь в решении огромного количества задач. Функция берет данные, перебирает их и выдает самое оптимальное решение из возможных. Итак, давайте разберемся, как именно работает поиск решения и попробуем применить данную функцию на практике

Содержание

  • Как включить функцию “Поиск решения”
  • Подготовительный этап
  • Применение функции и ее настройка
  • Заключение

Как включить функцию “Поиск решения”

Несмотря на свою эффективность, функция “Поиск решения” не находится в первых рядах панели инструментов или контекстного меню. Многие пользователи, работающие в Excel годами, даже не подозревают о ее существовании. Дело в том, что по умолчанию она вообще отключена и для ее добавления на ленту нужно проделать следующие шаги:

  1. Открываем меню “Файл”, кликнув по соответствующему названию.Как включить функцию
  2. Кликаем по разделу “Параметры”, который находится внизу вертикального перечня с левой стороны.Как включить функцию
  3. Далее щелкаем по подразделу “Надстройки”. Здесь отображаются все надстройки программы, а внизу будет надпись “Управление”. Справа от нее представлено выпадающее меню, в котором должны быть выбраны “Надстройки Excel”, обычно уже установленные по умолчанию. Нажимаем кнопку “Перейти”.Как включить функцию
  4. На экране появится новое вспомогательное окно “Надстройки”. Устанавливаем флажок напротив опции “Поиск решения” и нажимаем ОК.Как включить функцию
  5. Все готово. Требуемая функция появится на ленте в правой части вкладки “Данные”.Как включить функцию

Подготовительный этап

Добавить функцию на ленту программы – половина дела. Нужно еще понять принцип ее работы.

Итак, у нас есть данные про продаже товаров, представленные в табличном виде.

Подготовительный этап перед использованием фукнции

И перед нами стоит задача – назначить каждому товару скидку таким образом, чтобы сумма по всем скидкам составила 4,5 млн. рублей. Она должна отобразиться в отдельной ячейке, которая называется целевой. Ориентируясь на нее мы должны рассчитать остальные значения.

Подготовительный этап перед использованием фукнции

Наша задача – вычислить скидку, на которую будут умножены все суммы по продажам всех наименований. Она и будет найдена с помощью функции “Поиск решения”, а ячейка с этой скидкой будет называется искомой.

Данные ячейки (искомая и целевая) связываем вместе формулой, которую пишем в целевой ячейке следующим образом: =D13*$G$2, где ячейка D13 содержит итоговую сумму по продажам всех товаров, а ячейка $G$2 – абсолютные (неизменные) координаты искомой ячейки.

Подготовительный этап перед использованием фукнции

Применение функции и ее настройка

Формула готова. Теперь нужно применить саму функцию.

  1. Переключаемся во вкладку “Данные” и нажимаем кнопку “Поиск решения”.Применение функции
  2. Откроются “Параметры”, где необходимо задать нужные настройки. В поле “Оптимизировать целевую функцию:” указываем адрес целевой ячейки, где планируется вывести сумму по всем скидкам. Можно прописать координаты вручную, либо выбрать из таблицы, для чего сначала кликаем по области ввода, затем – по нужной ячейке.Применение функции
  3. Переходим к настройке других параметров. В пункте “До:” можно задать максимальную границу, минимальную границу или же точное число. Исходя из поставленной задачи ставим отметку рядом с опцией “Значение” и набираем “4500000” – сумма скидок по всем наименованиям.Применение функции
  4. Следующее для заполнения поле – “Изменяя значения переменных:”. В него нужно внести координаты искомой ячейки, содержащей определенное значение. Это значение и есть та самая скидка, которую мы пытаемся вычислить. Также, как и с выбором целевой ячейки, координаты можно написать вручную, либо кликнуть по нужной ячейке в самой таблице.Применение функции
  5. Теперь нужно отредактировать раздел “В соответствии с ограничениями:”, в котором задаем ограничения используемых данных. Например, можно исключить десятичные дроби или, скажем, отрицательные числа. Это делается через кнопку “Добавить”. Применение функции
  6. Откроется вспомогательно окно, позволяющее добавить ограничения во время вычислений. В первом поле указываем координаты определенной ячейки или области ячеек, для которых это условие должно действовать. Согласно нашей задаче, указываем координаты искомой ячейки, в которой будет выводиться значение скидки. Следующий шаг – определить знак сравнения. Устанавливаем “больше или равно”, чтобы итоговое число не могло быть отрицательным. “Ограничение”, которое устанавливается в третьем поле, в этом случае будет равно цифре 0, поскольку именно относительно этого значения задается условие.Применение функции Можно установить еще одно ограничение с помощью кнопки “Добавить”. Дальнейшие действия по его настройке будут аналогичными. По готовности щелкаем OK.
  7. После выполнения описанных выше действий в самом большом поле окна появится установленное только что ограничение. Список может быть довольно большим и зависит от сложности предполагаемых расчетов, но в данном случае будет достаточно и одного условия.Применение функции Под этим полем также есть опция, позволяющая делать все остальные переменные, не затрагиваемые ограничениями, неотрицательными. Однако, будьте внимательны и проследите за тем, чтобы между этим параметром и поставленными ограничениями не было противоречия, иначе при расчете в программе может возникнуть конфликт.
  8. Также можно задать немалое количество дополнительных настроек. Чуть ниже справа есть кнопка “Параметры”, позволяющая это сделать. Нажимаем на нее и открываем новое окно.Применение функции
  9. В этих настройках у нас есть возможность установить “Точность ограничения” и “Пределы решения”. В нашем случае задавать данные параметры нет необходимости, поэтому после ознакомления с представленным окном, его можно закрыть, нажав OK.Применение функции
  10. Итак, все настройки выполнены и параметры установлены. Пора запускать функцию – для этого нажимаем кнопку “Найти решение”.Применение функции
  11. После этого программа сделает все необходимые расчеты и выдаст результаты в нужных ячейках. При этом сразу же откроется окно “Результаты поиска решения”, где можно сохранить/отменить результаты или настроить параметры поиска заново. Если результаты нас устраивают, оставляем отметку напротив опции “Сохранить найденное решение” и нажимаем ОК. При этом, если мы предварительно установим галочку слева от надписи “Вернуться в диалоговое окно параметров поиска решения”, после того, как мы щелкнем OK, мы обратно переключимся к настройке функции поиска решения.Применение функции
  12. Вполне вероятно, что расчеты могут показаться неправильными, либо возникнет желание немного изменить исходные данные и получить другой результат. В этом случае нужно снова открыть окно с параметрами поиска решения и внимательно посмотреть поля с введенными данными.
  13. Если с данными все нормально, можно попробовать задействовать другой метод решения. Для этого щелкаем по текущему варианту и из раскрывшегося перечня выбираем способ, который нам кажется наиболее подходящим:
    • Первый – ищет решение методом обобщенного приведенного градиента (ОПГ) для нелинейных задач. Стандартно выбран именно этот вариант, но можно попробовать и другие.
    • Второй – пытается отыскать решение для линейных задач, используя симплекс-метод.
    • Третий – для выполнения поставленной задачи использует эволюционный поиск.
    • В том случае, если ни один из методов не принес удовлетворительных результатов, стоит проверить данные в таблице и параметрах еще раз, поскольку именно это является самой частой ошибкой в подобного рода задачах.Применение функции
  14. Теперь, когда мы получили требуемую скидку, осталось ее применить, чтобы рассчитать суммы скидок по всем наименованиям. Для этого отмечаем первую ячейку столбца “Сумма скидки”, пишем в ней формулу “=D2*$G$2” и нажимаем Enter. Знаки доллара ставятся для того, чтобы при растягивании/копировании формулы на другие строки, ячейка G2 со скидкой оставалась неизменной в расчетах.Применение функции
  15. Мы получили сумму скидки для первого наименования. Теперь наводим курсор на нижний правый угол ячейки с результатом, как только он поменяет форму на крестик, зажав левую кнопку мыши растягиваем формулу на все строки, по которым хотим посчитать аналогичную сумму.Применение функции
  16. Теперь наша таблица полностью готова в соответствии с поставленной задачей.Применение функции

Заключение

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

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

Как определить ежемесячный набор продуктов, который позволяет повысить прибыльность?

Компаниям часто требуется определять количество каждого продукта, который будет создаваться ежемесячно. В простейшей форме проблема в наборе продуктов состоит в том, как определить объем каждого продукта, который должен быть произведен в течение месяца, чтобы максимально увеличить прибыль. Сочетание продуктов обычно должно соответствовать следующим ограничениям:

  • Сочетание продуктов не может использовать больше ресурсов, чем доступно.

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

Теперь рассмотрим пример проблемы со сочетанием продуктов. Решение этой проблемы можно найти в файле Prodmix.xlsx, как показано на рисунке 27-1.

Изображение книги

Предположим, что мы работаем в компании, которая производит шесть различных продуктов на своем заводе. Для производства каждого продукта требуются трудовые и необработанные материалы. В строке 4 на рисунке 27-1 показано количество часов труда, необходимое для получения фунта каждого товара, а в строке 5 — фунт необработанных материалов, необходимых для получения фунта каждого товара. Например, для получения фунта продукта 1 требуется 6 часов труда и 3,2 фунта неотработанных материалов. Цена за фунт для каждого фунта задается в строке 6, цена за единицу за фунт — в строке 7, а доход за фунт — в строке 9. Например, товар 2 продается по 11,00 долларов США за фунт, за единицу стоит 5,70 долларов США за фунт и вклад в сумму 5,30 долларов США за фунт. Запрос за месяц для каждого подмайки выдается в строке 8. Например, потребность в продукте 3 составляет 1041 фунт. В этом месяце доступно 4500 часов труда и 1600 фунтов необработанных материалов. Как эта компания может максимально увеличить ежемесячную прибыль?

Если бы нам не было известно ничего о надстройке Excel «Решение», мы могли бы решить эту проблему, построив на этом листах данные о прибылях и использовании ресурсов, связанных с этим сочетанием продуктов. Затем мы использовали пробные и ошибки, чтобы оптимизировать прибыль, не используя при этом больше ресурсов и необработанных материалов, чем доступно, и не изменяя при этом лишние продукты. Над решением этой процедуры мы используем только пробную стадию с ошибкой. По сути, «Поиск решения» — это механизм оптимизации, который безукоризненно выполняет поиск по пробным версиям и ошибкам.

Ключ к решению этой проблемы — эффективное вычисление использования ресурсов и прибыли, связанных с любым сочетанием продуктов. Для этого важно использовать функцию СУММПРОИDUCT. Функция СУММПРОИCT перемножает соответствующие значения в диапазонах ячеев и возвращает сумму этих значений. Каждый диапазон ячеок, используемый в оценке СУММПРОИДУCT, должен иметь одинаковые размеры, что подразумевает, что можно использовать суммпроидуц с двумя строками или двумя столбцами, но не с одной строкой и столбцом.

В качестве примера использования функции СУММПРОИПР в нашем примере мы постараемся вычислить использование ресурсов. Трудоемкие труды вычисляются по

(Количество трудовых единиц, использованных для одного фунта воды в секунду)*(1 фунт 1, произведено)+

(Трудоемка, используемая для одного фунта валюты 2)*(2 фунта, произведенного) + …

(Трудоемка, используемая для одного фунта валюты 6)*(6 фунтов в секунду)

Мы могли бы более утомительным образом вычислять использование труда, как D2*D4+E2*E4+F2*F4+G2*G4+H2*H4+I2*I4. Кроме того, использование необработанных материалов можно вычислять как D2*D5+E2*E5+F2*F5+G2*G5+H2*H5+I2*I5. Однако ввод этих формул на таблицу для шести продуктов отнимает много времени. Представьте, сколько времени займет работа с компанией, которая производит, например, 50 продуктов на своем заводе. Гораздо проще вычислять трудоемкие и необработанные данные, скопируя из D14 в D15 формулу СУММПРОИДУCT($D$2:$I$2;D4:I4). Эта формула вычисляет D2*D4+E2*E4+F2*F4+G2*G4+H2*H4+I2*I4 (это наш рабочий процесс), но гораздо проще ввести! Обратите внимание, что я использую знак $ с диапазоном D2:I2, чтобы при копировании формулы все равно записать сочетание продуктов из строки 2. Формула в ячейке D15 вычисляет использование необработанных материалов.

Аналогичным образом прибыль определяется с помощью

(Доход от 1 дохода на фунт)*(1 фунт произведен) +

(Доход от 2 дохода на фунт)*(2 фунта произведено) + …

(6 доход на фунт)*(произведено 6 фунтов)

Доход легко вычисляется в ячейке D12 с помощью формулы СУММПРОИКТ(D9:I9;$D$2:$I$2).

Теперь мы можем определить три компонента модели решения для всех продуктов.

  • Целевая ячейка. Наша цель — максимально увеличить прибыль (вычисленную в ячейке D12).

  • Изменяя ячейки. Количество фунта, произведенного каждым продуктом (в диапазоне ячеок D2:I2)

  • Ограничения. В этом примере есть следующие ограничения:

    • Не используйте больше трудовых или необработанных материалов, чем доступно. То есть значения в ячейках D14:D15 (используемые ресурсы) должны быть меньше или равны значениям в ячейках F14:F15 (доступные ресурсы).

    • Не выполыв при этом больше средств, чем нужно. Это значит, что значения в ячейках D2:I2 (фунта, произведенного для каждого пациента) должны быть меньше или равны требованию для каждого пациента (в ячейках D8:I8).

    • Мы не можем привести к отрицательным последствиям любых проблем с наркотиками.

Я покажу вам, как ввести целевую ячейку, изменить ячейки и ограничения в «Найти решение». Все, что вам нужно сделать, — это нажать кнопку «Найти решение», чтобы найти набор товаров, который максимально увеличить прибыль!

Для начала на вкладке «Данные» в группе «Анализ» нажмите кнопку «Найти решение».

Примечание:  Как объяснялось в главе 26 «Введение в оптимизацию с помощью надстройки Excel «Решение», надстройка «Решение» устанавливается с помощью кнопки Microsoft Office, а затем параметров Excel и надстройки. В списке «Управление» щелкните «Надстройки Excel», выберите поле «Найти решение» и нажмите кнопку «ОК».

Появится диалоговое окно «Параметры решения», как показано на рисунке 27–2.

Изображение книги

Щелкните поле «Установить целевую ячейку» и выберите ячейку прибыли (ячейка D12). Щелкните поле «Изменяя ячейки», а затем найдите диапазон D2:I2, содержащий количество отсюдоха каждого пациента. Диалоговое окно будет выглядеть как «Рисунок 27-3».

Изображение книги

Теперь можно добавить ограничения в модель. Нажмите кнопку «Добавить». На рисунке 27–4 показано диалоговое окно «Добавить ограничение».

Изображение книги

Чтобы добавить ограничения использования ресурсов, щелкните поле «Ссылка на ячейку» и выберите диапазон D14:D15. Выберите <= из среднего списка. Щелкните поле ограничения, а затем выберите диапазон ячеев F14:F15. Диалоговое окно «Добавить ограничение» должно выглядеть так: «Рисунок 27-5».

Изображение книги

Теперь, когда «Найти решение» пытается использовать другие значения для изменяющихся ячеек, будут учитываться только сочетания, которые удовлетворяют как D14<=F14 (трудоемка меньше или равна доступной работе), так и D15<=F15 (используемый необработаный материал меньше или равен доступному неоцененному). Нажмите кнопку «Добавить», чтобы ввести ограничения по запросу. Заполните поле в диалоговом окне «Добавить ограничение», как показано на рисунке 27–6.

Изображение книги

Добавление этих ограничений гарантирует, что при попытках «Найти решение» для изменяемого значения ячейки будут учитываться только сочетания, которые удовлетворяют следующим параметрам:

  • D2<=D8 (количество произведенного средства 1 не превышает потребность в этом средстве)

  • E2<=E8 (количество произведенного средства 2 не превышает или равно запросу на доступ к более 2).

  • F2<=F8 (количество произведенного средства 3 не превышает потребность в этом средстве)

  • G2<=G8 (количество произведенного средства 4 не превышает или равно запросу на доступ к наркотиками 4)

  • H2<=H8 (количество произведенного средства 5 не превышает или равно запросу на доступ к более 5).

  • I2<=I8 (количество произведенного средства 6 не превышает потребность в этом средстве)

В диалоговом окне «Добавить ограничение» нажмите кнопку «ОК». Окно «Решение» должно выглядеть так: «Рисунок 27-7».

Изображение книги

В диалоговом окне «Параметры решения» введите ограничение на то, что изменяющиеся ячейки не должны быть отрицательными. Нажмите кнопку «Параметры» в диалоговом окне «Параметры решения». Проверьте окне «Предполагаемая линейная модель» и «Нео отрицательная», как показано на рисунке 27–8 на следующей странице. Нажмите кнопку «ОК».

Изображение книги

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

  • Целевая ячейка вычисляется путем с совокупности терминов формы (изменяемой ячейки)*(константа).

  • Каждое ограничение соответствует «требованиям к линейной модели». Это означает, что каждое ограничение вычисляется путем с совокупности терминов формы (изменяемой ячейки)*(константа) и сравнения сумм с константой.

Почему эта проблема «Поиск решения» линейный? Целевая ячейка (прибыль) вычисляется как

(Доход от 1 дохода на фунт)*(1 фунт произведен) +

(Доход от 2 дохода на фунт)*(2 фунта произведено) + …

(6 доход на фунт)*(произведено 6 фунтов)

Эта вычисление вычисляется по шаблону, в котором вычисляется значение конечной ячейки путем с суммирования терминов формы (изменяемой ячейки)*(константа).

Наше ограничение на работу вычисляется путем сравнения значения, полученного из (Количество, используемого в фунте по 1)*(1 фунта влияния) + (Количество, используемого для одного фунта в фунте до 2)*(Фунт 2, полученный в качестве 2 фунта)+ (Трудоемкие мыed per pound of Drug 6)*(Pound 6 pound produced) to the labor available.

Следовательно, ограничение трудоемких ресурсов вычисляется путем с совокупности терминов формы (изменяемой ячейки)*(константа) и сравнения сумм с константой. Ограничение трудоемких ресурсов и ограничение в необработанных материалах отвечают требованиям к линейной модели.

Наши ограничения запроса принимают форму

(От 1 досье 1)<=(Потребность в наркотиками 1)

(От 2 досье 2)<=(Потребность в наркотиками 2)

§
(от 6 досье 6)<=(Потребность в наркотиками 6)

Каждое ограничение запроса также соответствует требованию к линейной модели, поскольку каждое из них вычисляется путем свести вместе условия формы (изменяемая ячейка)*(константа) и сравнить суммы с константой.

Если вы показываете, что модель нашего продукта является линейной, почему это важно?

  • Если модель «Поиск решения» является линейной и выбран вариант «Предположим, линейный режим», «Поиск решения» гарантирован, что будет найдено оптимальное решение для модели «Поиск решения». Если модель «Поиск решения» не линейный, «Поиск решения» может не найти оптимальное решение.

  • Если модель «Поиск решения» является линейной и выбран вариант «Предполагаемая линейная модель», то для поиска оптимального решения модели используется очень эффективный алгоритм (метод простого решения). Если модель «Поиск решения» является линейной и не выбран вариант «Предполагаемая линейная модель», «Поиск решения» использует очень неэффективный алгоритм (метод ОГР2), что может затруднить поиск оптимального решения модели.

После нажатия кнопки «ОК» в диалоговом окне «Параметры решения» вернимся в главное диалоговое окно «Решение», показанное ранее на рисунке 27–7. При нажатии кнопки «Поиск решения» «Поиск решения» вычисляет оптимальное решение (если оно существует) для модели микса продуктов. Как было сказано в главе 26, оптимальным решением для модели набора продуктов является набор изменяемых значений ячеок (фунта, произведенного каждым продуктом), который позволяет максимально увеличить прибыль в наборе всех возможных решений. В этом же, целесообразное решение — это набор изменяющихся значений ячеок, удовлетворяющий всем ограничениям. Изменяющиеся значения ячеок, показанные на рисунке 27–9, являются допустимым решением, поскольку все производственные уровни неоценимы, производственные уровни не превышают потребность, а использование ресурсов не превышает доступных ресурсов.

Изображение книги

Изменяемые значения ячеек, показанные на рисунке 27–10 на следующей странице, являются неизменяемым решением по следующим причинам:

  • Мы выпускаем больше 5, чем за него требуются.

  • Мы используем больше трудоемких ресурсов, чем доступно.

  • Мы используем больше необработанных материалов, чем доступно.

Изображение книги

Нажав кнопку «Поиск решения», «Поиск решения» быстро найдет оптимальное решение, показанное на рисунке 27–11. Вам нужно выбрать «Сохранить решение для решения проблемы», чтобы сохранить оптимальные значения решения на работе.

Изображение книги

Наша организация, которая занимается наркотиками, может увеличить ежемесячную прибыль в размере 6 625,20 долларов США, выполив 596,67 фунта 4, 1084 фунта для подавлили 5 рублей и ни одного другого фунта! Мы не можем определить, можно ли достичь максимальной прибыли в 6 625,20 долларов США другими способами. Все, что мы можем быть уверены, что из-за ограниченных ресурсов и требований в этом месяце нельзя внести больше 6 627,20 долларов США.

Предположим, что потребность в каждом продукте должна быть выполнены. (См. таблицу «Нет реального решения» в Prodmix.xlsx.) Затем нам нужно изменить ограничения по запросу с D2:I2<=D8:I8 на D2:I2>=D8:I8. Для этого откройте «Решение», выберите ограничение D2:I2<=D8:I8 и нажмите кнопку «Изменить». Появится диалоговое окно «Изменение ограничения», показанное на рисунке 27–12.

Изображение книги

Выберите >=, а затем нажмите кнопку «ОК». Теперь над решением можно изменить только значения ячеок, которые соответствуют всем запросам. При нажатии кнопки «Найти решение» отобразилось сообщение «Поиск решения не удалось найти целесообразное решение». Это сообщение не означает, что мы допустили ошибку в модели, а о том, что из-за ограниченных ресурсов мы не сможем выполнить потребность во всех товарах. Надстройка «Решение» просто сообщает нам, что если мы хотим удовлетворить потребность в каждом продукте, нам нужно добавить больше труда, дополнительных необработанных материалов или и тех, и других.

Давайте посмотрим, что произойдет, если разрешить неограниченную потребность в каждом продукте и разрешить отрицательные количества каждого товара. (Эта проблема возникает в области «Набор значений не сходится» на Prodmix.xlsx.) Чтобы найти оптимальное решение в этой ситуации, откройте «Поиск решения», нажмите кнопку «Параметры» и откроем поле «Неохритимые». В диалоговом окне «Параметры решения» выберите ограничение запроса D2:I2<=D8:I8, а затем нажмите кнопку «Удалить», чтобы удалить это ограничение. При нажатии кнопки «Найти решение» возвращается сообщение «Установить значение ячейки не сходится». Это сообщение означает, что если нужно развернуть целевую ячейку (как в нашем примере), существуют допустимые решения, в том числе и для суммарных значений целевых ячеок. (Если целевая ячейка должна быть свернута, сообщение «Установить значения ячейки не сходятся» означает, что существуют возможные решения с небольших целевых значений, заверяемого в третейском деле.) В нашем случае, разрешив негативное производство в случае злоупотреблений, мы фактически создадим ресурсы, которые можно использовать для вывода в произвольное количество других средств. С учетом нашего неограниченного запроса это позволяет нам получать неограниченную прибыль. В реальной ситуации мы не можем заработать бесконечно. Если вы видите сообщение «Установить значения не сходятся», это означает, что в модели есть ошибка.

  1. Предположим, в нашей компании в течение часа можно приобретать до 500 часов работы на 100 рублей больше, чем за текущие трудоемкие расходы. Как максимально увеличить прибыль?

  2. На изготовителе микросхем четыре технических специалиста (A, B, C и D) выпускают три продукта («Товары 1», «2» и «3»). В этом месяце изготовитель микросхемы может продать 80 единиц продукта 1, 50 единиц продукта 2 и не более 50 единиц продукта 3. Специалист А может делать только продукты 1 и 3. Специалист Б может делать только продукты 1 и 2. Специалист C может сделать только продукт 3. Специалист D может сделать только продукт 2. Для каждого произведенного товара внести следующую прибыль: Товар 1; 600 рублей; Товар 2; 7000 рублей; и товар 3, 1000 рублей. Время (в часах) каждого технических специалиста, необходимое для производства продукта, должно быть следующим:

    Продукт

    Специалист А

    Специалист Б

    Специалист C

    Специалист Д

    1

    2

    2,5

    Не удается сделать

    Не удается сделать

    2

    Не удается сделать

    3

    Не удается сделать

    3,5

    3

    3

    Не удается сделать

    4

    Не удается сделать

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

  4. Компьютерный завод производит мыши, клавиатуры и игровые joysticks. Доход за единицу, за единицу трудоемких ресурсов, ежемесячная потребность и за единицу машинного времени даются в следующей таблице:

    Мыши

    Клавиатуры

    Joysticks

    Прибыль/единица

    8 $

    11 $

    9 $

    Использование трудов и единицы

    0,2 часа

    0,3 часа

    0,24 часа

    Машинное время/единица

    0,04 ч

    0,055 ч.

    0,04 ч

    Ежемесячный запрос

    15 000

    27,000

    11,000

  5. Каждый месяц доступно 13 000 часов труда и 3000 часов машинного времени. Как изготовитель может максимально увеличить ежемесячный взнос в прибыль от растения?

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

  7. Он делает ромбовидные ромбои, окаймлы и затейные. Он хочет работать не более 160 часов в месяц. У него 800 ромбов. Ниже дается прибыль, время труда и количество ромбов, необходимых для получения каждого товара. Если потребность в каждом продукте не ограничена, как Максим может увеличить прибыль?

    Продукт

    Прибыль за единицу

    Трудоемкие часы на единицу

    Ромбы на единицу

    Лексема

    300р.

    .35

    1,2

    Кулигов

    200 ₽

    .15

    .75

    Кулигов

    100р.

    0,05

    .5


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

Поиск решения будем рассматривать в

MS EXCEL 2010

(эта надстройка претерпела некоторые изменения по сравнению с предыдущей версией в

MS EXCEL 2007)

. В этой статье рассмотрим:

  • создание оптимизационной модели на листе MS EXCEL
  • настройку

    Поиска решения;
  • простой пример (линейная модель).

Установка Поиска решения

Команда

Поиск решения

находится в группе

Анализ

на вкладке

Данные

.

Если команда

Поиск решения

в группе

Анализ

недоступна, то необходимо включить одноименную надстройку. Для этого:

  • На вкладке

    Файл

    выберите команду

    Параметры

    , а затем — категорию

    Надстройки

    ;
  • В поле

    Управление

    выберите значение

    Надстройки Excel

    и нажмите кнопку

    Перейти;
  • В поле

    Доступные надстройки

    установите флажок рядом с пунктом

    Поиск решения

    и нажмите кнопку ОК.


Примечание

. Окно

Надстройки

также доступно на вкладке

Разработчик

. Как включить эту вкладку

читайте здесь

.

После нажатия кнопки

Поиск решения

в группе

Анализ,

откроется его диалоговое окно

.

При частом использовании

Поиска решения

его удобнее запускать с Панели быстрого доступа, а не из вкладки Данные. Чтобы поместить кнопку на Панель, кликните на ней правой клавишей мыши и выберите пункт

Добавить на панель быстрого доступа

.

О моделях

Этот раздел для тех, кто только знакомится с понятием Оптимизационная модель.


Совет

. Перед использованием

Поиска решения

настоятельно рекомендуем изучить литературу по решению оптимизационных задач и построению моделей.

Ниже приведен небольшой ликбез по этой теме.

Надстройка

Поиск решения

помогает определить

лучший способ

сделать

что-то

:

  • «Что-то» может включать в себя выделение денег на инвестиции, загрузку склада, доставку товара или любую другую предметную деятельность, где требуется найти оптимальное решение.
  • «Лучший способ» или оптимальное решение в этом случае означает: максимизацию прибыли, минимизацию затрат, достижение наилучшего качества и пр.

Вот некоторые типичные примеры оптимизационных задач:

  • Определить

    план производства

    , при котором доход от реализации произведенной продукции максимальный;

  • Определить

    схему перевозок

    , при которой общие затраты на перевозку были бы минимальными;

  • Найти

    распределение нескольких станков по разным видам работ

    , чтобы общие затраты на производство продукции были бы минимальными;

  • Определить минимальный срок исполнения всех работ проекта (критический путь).

Для формализации поставленной задачи требуется создать модель, которая бы отражала существенные характеристики предметной области (и не включала бы незначительные детали). Следует учесть, что модель оптимизируется

Поиском решения

только по одному показателю

(этот оптимизируемый показатель называется

целевой функцией

). В MS EXCEL модель представляет собой совокупность связанных между собой формул, которые в качестве аргументов используют переменные. Как правило, эти переменные могут принимать только допустимые значения с учетом заданных пользователем ограничений.

Поиск решения

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


Примечание

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

Подбор параметра

. Перед первым знакомством с

Поиском решения

имеет смысл сначала детально разобраться с родственным ему инструментом

Подбор параметра

. Основные отличия

Подбора параметра

от

Поиска решения

:


  • Подбор параметра

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

Подготовка оптимизационной модели в MS EXCEL


Поиск решения

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

Поиска решения

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


Совет

. Организуйте данные модели так, чтобы на одном листе MS EXCEL располагалась только одна модель. В противном случае, для выполнения расчетов придется постоянно сохранять и загружать настройки

Поиска решения

(см. ниже).

Приведем алгоритм работы с

Поиском решения

, который советуют сами разработчики (

]]>
www.solver.com

]]> ):

  • Определите ячейки с переменными модели (decision variables);
  • Создайте формулу в ячейке, которая будет рассчитывать целевую функцию вашей модели (objective function);
  • Создайте формулы в ячейках, которые будут вычислять значения, сравниваемые с ограничениями (левая сторона выражения);
  • С помощью диалогового окна

    Поиск решения

    введите ссылки на ячейки содержащие переменные, на целевую функцию, на формулы для ограничений и сами значения ограничений;
  • Запустите

    Поиск решения

    для нахождения оптимального решения.

Проделаем все эти шаги на простом примере.

Простой пример использования

Поиска решения

Необходимо загрузить контейнер товарами, чтобы вес контейнера был максимальным. Контейнер имеет объем 32 куб.м. Товары содержатся в коробках и ящиках. Каждая коробка с товаром весит 20кг, ее объем составляет 0,15м3. Ящик — 80кг и 0,5м3 соответственно. Необходимо, чтобы общее количество тары было не меньше 110 штук.

Данные модели организуем следующим образом (см.

файл примера

).

Переменные модели (количество каждого вида тары) выделены зеленым. Целевая функция (общий вес всех коробок и ящиков) – красным. Ограничения модели: по минимальному количеству тары (>=110) и по общему объему (<=32) – синим. Целевая функция рассчитывается по формуле

=СУММПРОИЗВ(B8:C8;B6:C6)

– это общий вес всех коробок и ящиков, загруженных в контейнер. Аналогично рассчитываем общий объем —

=СУММПРОИЗВ(B7:C7;B8:C8)

. Эта формула нужна, чтобы задать ограничение на общий объем коробок и ящиков (<=32). Также для задания ограничения модели рассчитаем общее количество тары

=СУММ(B8:C8)

. Теперь с помощью диалогового окна

Поиск решения

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

После нажатия кнопки

Найти решение

будут найдены такие количества коробок и ящиков, при котором общий их вес (целевая функция) максимален, и при этом выполнены все заданные ограничения.


Совет

: в статье »

Поиск решения MS EXCEL. Экстремум функции с несколькими переменными. Граничные условия заданы уравнениями

» показано решение задачи, в которой функция и граничные условия заданы в явном виде, т.е. математическими выражениями типа F(x1, x2, x3)=x1+2*x2+6*x3, что существенно облегчает построение модели, т.к. не требуется особо осмыслять задачу: можно просто подставить переменные x в поле переменные, а ограничения ввести в соответствующее поле окна Поиска решения.

Резюме

На самом деле, основной проблемой при решении оптимизационных задач с помощью

Поиска решения

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

Поиска решения

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

Поиска решения

рассмотрено

в этом разделе

.

Поиску решения не удалось найти решения (Solver could not find a feasible solution)

Это сообщение появляется, когда

Поиск решения

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

Симплекс метод решения линейных задач

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

Поиск решения

с другими начальными значениями переменных, то, возможно, решение будет найдено. Представим, что при решении задачи нелинейным методом, ячейки с переменными были оставлены не заполненными (т.е. начальные значения равны 0), и

Поиск решения

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

Поиск решения

может найти решение (если оно действительно существует).


Примечание

. О влиянии нелинейности модели на результаты расчетов можно прочитать в последнем разделе статьи

Поиск решения MS EXCEL (4.3). Выбор места открытия нового представительства

.

В любом случае (линейном или нелинейном), Вы должны сначала проанализировать модель на непротиворечивость ограничений, то есть условий, которые не могут быть удовлетворены одновременно. Чаще всего это связано с неправильным выбором соотношения (например, <= вместо >=) или граничного значения. Если, например, в рассмотренном выше примере, значение максимального объема установить 16 м3 вместо 32 м3, то это ограничение станет противоречить ограничению по минимальному количеству мест (110), т.к. минимальному количеству мест соответствует объем равный 16,5 м3 (110*0,15, где 0,15 – объем коробки, т.е. самой маленькой тары). Установив в качестве ограничения максимального объема 16 м3,

Поиск решения

не найдет решения.

При ограничении 17 м3

Поиск решения

найдет решение.

Некоторые настройки

Поиска решения


Метод решения

Рассмотренная выше модель является линейной, т.е. целевая функция (M – общий вес, который может быть максимален) выражена следующим уравнением M=a1*x1+a2*x2, где x1 и x2 – это переменные модели (количество коробок и ящиков), а1 и а2 – их веса. В линейной модели ограничения также должны быть линейными функциями от переменных. В нашем случае ограничение по объему V=b1*x1+b2*x2 также выражается линейной зависимостью. Очевидно, что другое ограничение — Максимальное количество тары (n) – также линейно x1+x2
Поиска решения

можно также проверить на линейность саму модель. В случае нелинейной модели Вы получите следующее сообщение:

В этом случае необходимо выбрать метод для решения нелинейной задачи. Примеры нелинейных зависимостей: V=b1*x1*x1; V=b1*x1^0,9; V=b1*x1*x2, где x – переменная, а V – целевая функция.


Кнопки Добавить, Изменить, Удалить

Эти кнопки позволяют добавлять, изменять и удалять ограничения модели.


Кнопка Сбросить

Чтобы удалить все настройки

Поиска решения

нажмите кнопку

Сбросить

– диалоговое окно очистится.


Сохранение и загрузка модели

Эта опция удобна при использовании разных вариантов ограничений. При сохранении параметров модели (кнопка

Загрузить/ Сохранить,

далее нажмите кнопку

Сохранить

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

Параметры

). Перед сохранением убедитесь в том, что этот диапазон не содержит данных модели. Для загрузки сохраненных параметров нажмите сначала кнопку

Загрузить/ Сохранить

, затем, в появившемся диалоговом окне кнопку

Загрузить

, после чего задайте диапазон ячеек, содержащих сохраненные ранее настройки (нельзя указывать только одну верхнюю ячейку). Нажмите кнопку OK. Подтвердите сброс текущих значений параметров задачи и их замену на новые.


Точность

При создании модели исследователь изначально имеет некую оценку диапазонов варьирования целевой функции и переменных. Принимая во внимание

ограниченную точность

вычислений в MS EXCEL, рекомендуется, чтобы эти диапазоны варьирования были значительно выше точности вычисления (она обычно устанавливается от 0,001 до 0,000001). Как правило, данные в модели нормируют так, чтобы диапазоны варьирования целевой функции и переменных были в пределах 0,1 – 100 000. Конечно, все зависит от конкретной модели, но если ваши переменные изменяются более чем на 5-6 порядков, то возможно следует «загрубить» модель, например, с помощью операции логарифмирования.

Поиск решения в Microsoft Excel

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

Включение функции

Можно долго искать на ленте, где находится Поиск решения, но так и не найти данный инструмент. Просто, для активации данной функции, нужно её включить в настройках программы.

Для того, чтобы произвести активацию Поиска решений в программе Microsoft Excel 2010 года, и более поздних версий, переходим во вкладку «Файл». Для версии 2007 года, следует нажать на кнопку Microsoft Office в левом верхнем углу окна. В открывшемся окне, переходим в раздел «Параметры».

Переход в раздел Параметры в Microsoft Excel

В окне параметров кликаем по пункту «Надстройки». После перехода, в нижней части окна, напротив параметра «Управление» выбираем значение «Надстройки Excel», и кликаем по кнопке «Перейти».

Переход в надстройки в Microsoft Excel

Открывается окно с надстройками. Ставим галочку напротив наименования нужной нам надстройки – «Поиск решения». Жмем на кнопку «OK».

Активация функции Поиск решения в Microsoft Excel

После этого, кнопка для запуска функции Поиска решений появится на ленте Excel во вкладке «Данные».

Функция поиск решения активирована в Microsoft Excel

Подготовка таблицы

Теперь, после того, как мы активировали функцию, давайте разберемся, как она работает. Легче всего это представить на конкретном примере. Итак, у нас есть таблица заработной платы работников предприятия. Нам следует рассчитать премию каждого работника, которая является произведением заработной платы, указанной в отдельном столбце, на определенный коэффициент. При этом, общая сумма денежных средств, выделяемых на премию, равна 30000 рублей. Ячейка, в которой находится данная сумма, имеет название целевой, так как наша цель подобрать данные именно под это число.

Целевая ячейка в Microsoft Excel

Коэффициент, который применяется для расчета суммы премии, нам предстоит вычислить с помощью функции Поиска решений. Ячейка, в которой он располагается, называется искомой.

Искомая ячейка в Microsoft Excel

Lumpics.ru

Целевая и искомая ячейка должны быть связанны друг с другом с помощью формулы. В нашем конкретном случае, формула располагается в целевой ячейке, и имеет следующий вид: «=C10*$G$3», где $G$3 – абсолютный адрес искомой ячейки, а «C10» — общая сумма заработной платы, от которой производится расчет премии работникам предприятия.

Связующая формула в Microsoft Excel

Запуск инструмента Поиск решения

После того, как таблица подготовлена, находясь во вкладке «Данные», жмем на кнопку «Поиск решения», которая расположена на ленте в блоке инструментов «Анализ».

Запуск поиска решений в Microsoft Excel

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

Переход к вводу целевой ячейки в Microsoft Excel

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

Выбор целевой ячейки в Microsoft Excel

Под окном с адресом целевой ячейки, нужно установить параметры значений, которые будут находиться в ней. Это может быть максимум, минимум, или конкретное значение. В нашем случае, это будет последний вариант. Поэтому, ставим переключатель в позицию «Значения», и в поле слева от него прописываем число 30000. Как мы помним, именно это число по условиям составляет общую сумму премии для всех работников предприятия.

Установка значения целевой ячейки в Microsoft Excel

Ниже расположено поле «Изменяя ячейки переменных». Тут нужно указать адрес искомой ячейки, где, как мы помним, находится коэффициент, умножением на который основной заработной платы будет рассчитана величина премии. Адрес можно прописать теми же способами, как мы это делали для целевой ячейки.

Установка искомой ячейки в Microsoft Excel

В поле «В соответствии с ограничениями» можно выставить определенные ограничения для данных, например, сделать значения целыми или неотрицательными. Для этого, жмем на кнопку «Добавить».

Добавление ограничения в Microsoft Excel

После этого, открывается окно добавления ограничения. В поле «Ссылка на ячейки» прописываем адрес ячеек, относительно которых вводится ограничение. В нашем случае, это искомая ячейка с коэффициентом. Далее проставляем нужный знак: «меньше или равно», «больше или равно», «равно», «целое число», «бинарное», и т.д. В нашем случае, мы выберем знак «больше или равно», чтобы сделать коэффициент положительным числом. Соответственно, в поле «Ограничение» указываем число 0. Если мы хотим настроить ещё одно ограничение, то жмем на кнопку «Добавить». В обратном случае, жмем на кнопку «OK», чтобы сохранить введенные ограничения.

Параметры ограничения в Microsoft Excel

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

Установка неотрицательных значений в Microsoft Excel

Дополнительные настройки можно задать, кликнув по кнопке «Параметры».

Переход к параметрам поиска решений в Microsoft Excel

Здесь можно установить точность ограничения и пределы решения. Когда нужные данные введены, жмите на кнопку «OK». Но, для нашего случая, изменять эти параметры не нужно.

Параметры Поиска решения в Microsoft Excel

После того, как все настройки установлены, жмем на кнопку «Найти решение».

Переход к поиску решения в Microsoft Excel

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

Результаты поиска решений в Microsoft Excel

Если по какой-либо причине результаты поиска решений вас не удовлетворяют, или при их подсчете программа выдаёт ошибку, то, в таком случае, возвращаемся, описанным выше способом, в диалоговое окно параметров. Пересматриваем все введенные данные, так как возможно где-то была допущена ошибка. В случае, если ошибка найдена не была, то переходим к параметру «Выберите метод решения». Тут предоставляется возможность выбора одного из трех способов расчета: «Поиск решения нелинейных задач методом ОПГ», «Поиск решения линейных задач симплекс-методом», и «Эволюционный поиск решения». По умолчанию, используется первый метод. Пробуем решить поставленную задачу, выбрав любой другой метод. В случае неудачи, повторяем попытку, с использованием последнего метода. Алгоритм действий всё тот же, который мы описывали выше.

Выбор метода решения в Microsoft Excel

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

Самое понятное объяснение, как это работает + коллекция новых задач

25.07.2017, Елена Позднякова

  • Оглавление

  • Как это работает

  • Какой ассортимент выпускать

  • Трансфертные цены

  • Задача инвестора

  • Настройка надстройки

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

Программа Excel умеет находить наилучшее решение там, где, казалось бы, лучше уже нельзя.

Чтобы это сработало, нужно уметь правильно сформулировать условия, это мы и будем учиться делать в настоящей статье.

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

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

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

Изменяемые ячейки — это переменные, которые мы в итоге ищем: количество продукта, которое нужно производить, чтобы прибыль была максимальной или объемы перевозок от каждого поставщика к конкретному покупателю, чтобы затраты были минимальными и т.д.
Изменяемая ячейка может быть одна или диапазон из нескольких ячеек.
Эти ячейки мы будем указывать, но оставлять пустыми, надстройка «Поиск решения» сама заполнит их наилучшими данными.

Целевая функция— для того, чтобы программа понимала, какие данные считать наилучшими, мы зададим целевую функцию. Это всегда только одна ячейка, в которую внесена формула. Формула связана с теми данными, которые мы ищем. Например, если мы ищем ассортимент, максимизирующий прибыль, формула целевой функции будет задана как сумма произведений количества каждого продукта (изменяемые данные) и маржинальной прибыли по каждому продукту (константы, внесенные в модель).
При запуске надстройки мы будем указывать, какие данные будут наилучшими для целевой ячейки: максимальное значение, минимальное значение или конкретное число.
Подбор данных в изменяемых ячейках будет осуществляться таким образом, чтобы в ячейке с целевой функцией появилось наилучшее значение.

Ограничения — являются главным элементом в Поиске решения. Все ресурсы, которые участвуют в модели и имеют максимально допустимые значения — это ограничения: объем инвестирования, объем покупательского спроса, срок реализации проекта.
Например, на складе всего 5 000 кг материала, который входит в состав всех продуктов, а мы ищем ассортимент, который даст максимальную прибыль. Чтобы правильно учесть ограничение, потребуется внести формулу, которая рассчитает объем материала, который потребуется для производства ассортимента Х — наших переменных. Далее уже непосредственно в самой надстройке будет задано ограничение:

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

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

Как это работает: пошаговая инструкция

на примере задачи по распределению заказов

Попробуйте простыми расчетами решить такую задачу:

Компания занимается производством шкатулок ручной работы. В штате есть 4 мастера-надомника. Производительность мастеров в день представлена в таблице:

Мастер 1 — 3 шкатулки в день
Мастер 2 — 1,5 шкатулки в день
Мастер 3 — 2 шкатулки в день
Мастер 4 — 2,5 шкатулки в день

Поступил срочный заказ на 100 шкатулок и нужно раздать 100 заготовок, чтобы мастера успели справиться в самый короткий срок.
Сколько и кому раздать заготовок?

Эту задачу можно решить простыми расчетами, без использования поиска решений. Для начала так и поступим:

Рассчитаем, сколько шкатулок в день могут произвести все мастера:

3+1,5+2+2,5 = 9 шкатулок.

Теперь 100 шкатулок разделим на 9 шкатулок в день и получим 11,11 дней. Соответственно, сообщаем заказчику, что заказ будет готов за 12 дней

Распределим заготовки между мастерами с использованием округления:

Мастер 1: 3 х 11,11 = 33,33 Выдаем 34 заготовки
Мастер 2: 1,5 х 11,11 = 16,66 Выдаем 17 заготовок
Мастер 3: 2 х 11,11 = 22,22 Выдаем 21 заготовку
Мастер 4: 2,5 х 11,11 = 27,77 Выдаем 28 заготовок

А теперь дополним условие и введем индивидуальные тарифные ставки для мастеров за изготовление каждой шкатулки:

Мастер 1 — 1 500 руб
Мастер 2 — 950 руб
Мастер 3 — 1 100 руб
Мастер 4 — 1 150 руб

Рассчитаем для клиента, сколько стоит изготовить 100 шкатулок

34 х 1 500 = 51 000
17 х 950 = 16 150
21 х 1 100 = 23 100
28 х 1 150 = 32 200
Итого: 122 450

А теперь клиент задает нам вопрос, а если бы заказ был не срочный, во сколько минимально он мог бы обойтись? Как Вы думаете?

Посмотрим еще раз на таблицу с исходными данными:

Мы видим, что мастер 2, который работает медленнее всех — получает меньше всех. Значит, если мы не ограничены во времени и отдадим весь заказ ему, то вся работа будет стоить всего 95 000 (950 руб х 100 шкатулок). Но сколько это займет времени? 100/1,5 = 66,66 дней.

Таким образом, путем простых расчетов и логических рассуждений мы вывели основные отправные точки для диалога с клиентом:

Минимальный срок изготовления: 11,11 дней,
стоимость 122 450

Максимальный срок
изготовления: 66,66 дней,
стоимость 95 000

Разница в сроке составляет 55,55 дней, а в сумме 27 450.

Вполне логично предположить, что клиент может задать вопрос:
А если я дам Вам срок 20 дней или месяц, как изменится стоимость?

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

Давайте вместе решим эту задачу с использованием надстройки «Поиск решения»

Создайте новый файл в программе Excel.
Проверьте, есть ли кнопка «Поиск решения» в закладке «Данные», если нет, то здесь инструкция, как ее установить.

Наша цель: как распределить заготовки, чтобы заказ был выполнен за 20 дней и стоимость была минимальной? Сколько будет стоить в этом случае выполнение заказа?Попытайтесь сами ответить на вопросы и записать ответы:
1. Какие у нас есть константы?
2. Что будет переменными?
3. Целевая функция
4. Ограничения

Константы: время выполнения заказа и ставка за одну шкатулку по каждому мастеру
Переменные: число заготовок, передаваемое каждому мастеру
Целевая функция: общая стоимость заказа (здесь формула: сумма произведений переменных на ставку за заказ), цель — минимум
Ограничения:
1. Число шкатулок в заказе = фиксированное значение 100 шт
2. Максимальное время для выполнения заказа <= фиксированное значение 20 дней
3. Переменные должны быть выражены неотрицательным и целым числом

А теперь найдите где какие данные расположены в этой таблице:

Заполните самостоятельно свою исходную таблицу в Excel в любой удобной для Вас форме.

Так выглядит окно Поиск решения
до того, как мы начали его заполнять,

После того, как Вы внесли все исходные данные, запускаем «Поиск решения» (вкладка «Данные»). Я покажу на примере Excel 2007 (Excel 2010 немножко отличается, но сам подход аналогичен).

1. Устанавливаем целевую ячейку E13. Это целевая функция, которая равна общей стоимости заказа. Переключаем цель, чтобы она была равной минимальному значению.

2. Вносим диапазон переменных D9:D12 в поле «Изменяя ячейки».

3. Вносим ограничения:
D13 (общее число заготовок) = 100 (внесем не значение 100, а ячейку D3, чтобы в дальнейшем можно было изменить количество шкатулок в задаче)
Диапазон переменных D9:D12 = целые
Диапазон переменных D9:D12 >= 0 (неотрицательные)
F13 (срок выполнения заказа: в эту ячейку внесена формула, которая выбирает максимальное значение из сроков по каждому мастеру, она выглядит так =МАКС(F9:F12)) <= 20 дней (внесем не значение 20, а ячейку D6, чтобы можно было изменять)

Осталось нажать кнопку «Выполнить»: переменные будут заполнены и появится окно с результатами. Обратите внимание на комментарий, что все ограничения и условия выполнены и решение найдено, если нет, возможно, исходные данные сформулированы неверно. Если все хорошо, нажимайте ОК, и ячейки с переменными останутся заполненными, если нажмете ОТМЕНА, заполненные данные не сохранятся.

Будьте внимательны! Всегда проверяйте, что написано в окне результаты, потому что результат бывает отрицательным: «Поиск не может найти подходящего решения».

В этом случае данные могут быть заполнены наилучшими по мнению надстройки, но эти данные могут быть неверными и не удовлетворять условию задачи!

Итоговый результат будет выглядеть так:

У Вас получилось? Если что-то непонятно или есть вопросы, скачайте мой файл с решением и проверьте в нем:

Теперь попробуйте самостоятельно рассчитать, сколько будет стоить заказ, если на него можно затратить 30 дней.

Молодцы, кто решил! :) С принципом работы надстройки Поиск решения мы разобрались, а теперь идем дальше — там еще интереснее!

Какой ассортимент выпускать, чтобы получить максимальную прибыль

классика жанра

Я решила не брать в качестве классического примера транспортную задачу, потому что она уже всем надоела, ее традиционно проходят в высших учебных заведениях и по ней написано множество инструкций в интернете.
В качестве классики приведу задачу из курса по управлению эффективностью бизнеса CIMA. Что интересно, сам поиск решения в рамках курса не проходят, а только учат формулировать целевую функцию и ограничения, а затем интерпретировать результаты. Что нужно сделать, чтобы этот результат получить, не знают даже выпускники CIMA!!!, но мы восполним этот пробел и раскроем тайну, как это делается. :)

Приведенную здесь задачу я взяла из курса подготовки к CIMA Кузьмина Михаила Юрьевича, который проходила в 2016 году. Было очень интересно, рекомендую и вам!

THS производит два продукта из различных комбинаций одних и тех же ресурсов. Ниже приведена информация о продуктах:

THS готовит план производства на следующий месяц. Максимально доступные (за месяц) объемы ресурсов приведены в таблице:
Материал А — 5 000 кг
Материал В — 5 400 кг
Работа оборудования — 3 000 часов
Квалифицированный труд — 4 500 часов

Задание:

Определить оптимальный план производства, максимизирующий прибыль.

Подготовим расчеты для компьютерной обработки данных

Для решения задачи требуется рассчитать маржинальную прибыль по каждому продукту:

Переменные:
х — количество продукта Е
у — количество продукта R

Маржинальная прибыль от всего объема выпуска будет рассчитана по формуле:
35x + 66y
Наша цель: найти такой объем выпуска, который даст максимальное значение

Ограничения:
Материал А: 3х+2у<=5000
Материал В: 4x+3у<=5400
Работа оборудования: 2х+3у<=3000
Квалифицированный труд: 2х+5у<=4500
Объем спроса: y<=1500
Неотрицательность: х>=0, y>=0

Подготовим в Excel таблицу для ввода данных

Колонка «Значение»
По строкам 1 и 2 в будет внесено оптимальное количество продуктов. Сейчас их оставляем пустыми, функция сама их заполнит. На эти ячейки ссылаются все последующие формулы.
По строке 3 «Целевая функция» — вносим формулу со ссылкой на ячейки Х и У выше. Пока она равна нулю, ПОИСК РЕШЕНИЯ будет ее максимизировать и заполнит значение.
Далее по строкам 4-10 вносим ограничения в виде формул. Например, 3х+2у, также со ссылками на ячейки Х и У.

Колонка «Ограничение»
Ограничения можно внести как в ячейки на листе, так и непосредственно в окне «Поиск решения». В данном случае они внесены в таблицу, чтобы можно было заполнить формулу в следующей колонке (которая называется «Излишек»), т.к. она участвует в финальной матрице.

Колонка «Излишек»
Здесь вносим формулу: Ограничение — Значение. После того, как функция рассчитает все значения, мы сразу сможем видеть ограниченные ресурсы и излишки.

Итак, таблица готова и выглядит, как приведено выше.

Переходим к функции «Поиск решения»

Нажимаем кнопку «Поиск решения» в закладке «Данные» (если нет кнопки, настройка здесь)

Ограничения вносятся так:

Ограничения НЕ ОТРИЦАТЕЛЬНОСТИ можно вносить, выделяя целый диапазон ячеек:

В окне «Результаты поиска решения» проверьте, что решение найдено. И еще выберите тип дополнительного отчета: «Устойчивость», он появится на дополнительном листе, там будет полезная информация о теневой цене (что это, поясню далее).

Интерпретация полученных результатов

В итоге таблица выглядит так:

Максимальное значение прибыли 62 625 долл, достигается при выпуске оптимального ассортимента: Продукт Е — 375 ед, Продукт R — 750 ед. Смотрим колонку «Избыток»
Имеется избыток Материала А и материала В в размере 2 375 ед и 1 650 ед, соответственно.
На продукт У имеется нереализованный спрос 750 ед.

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

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

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

Теневую цену смотрим из отчета по устойчивости:

Теперь объясню, что это значит на цифрах.

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

Продукты E и R входят в оптимальный план в пропорции 375:750 или 1:2. Давайте рассмотрим минимальный набор оптимального плана, который включает 3 единицы: 1 единицу продукта Е и 2 единицы продукта R.

Вернемся к таблице с расчетом маржинальной прибыли:

Если мы приобретем все ресурсы, которые входят в состав по тем же ценам, что и прежде, то получим маржинальную прибыль 1 х 35 + 2 х 66 = 167$

Однако ресурс работы оборудования и рабочее время рабочих исчерпаны, а все остальные ресурсы есть. Значит, если мы можем арендовать дополнительную единицу оборудования и нанять еще рабочих, можно было бы доплатить. Сейчас оборудование стоит 7$ в час, труд – 10$ в час и мы и имеем маржинальную прибыль. Теневая цена показывает, что можно доплатить за 1 час работы оборудования — 10,75 (тогда он будет стоить 17,75), а за 1 час труда — 6,75 (будет стоить 16,75) — это максимальные суммы, при которых маржинальная прибыль будет равна нулю:

Итак, мы можем вести переговоры о приобретении дополнительных ресурсов с надбавкой к текущей стоимости в пределах теневой цены и нам это будет выгодно.

Если остались вопросы, скачайте мой файл с решением:

Трансфертные цены

Как установить цену продажи внутри группы, чтобы минимизировать налоги

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

А у Вас есть идея,
как применить Поиск решения на практике?

Пишите мне на почту или в комментариях.
Если идея будет рабочая, я составлю задачу и опубликую ее здесь!

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

Есть группа из 3 компаний. ООО «Крона» закупает телефоны в Китае, ООО «Стрим» продает телефоны мелкооптовыми партиями по России, ООО «Маркет» торгует телефонами через розничные точки.

Стрим и Маркет закупают телефоны у Кроны. Учитывая, что все 3 юридических лица входят в группу и имеют одного собственника, их можно рассматривать как подразделения одной компании. Перед финансовым директором стоит задача запланировать оптимальные трансфертные цены.

Трансфертная цена – это цена, по которой товары или услуги передаются между подразделениями одной и той же компании.

Имеется следующая информация о показателях деятельности на квартал:

Маркет несет дополнительные расходы в виде 30% процентов от маржинальной прибыли по сделкам, это премия управляющему директору. Сумма премии при выполнении плана реализации в 1000 штук в квартал, не может быть меньше 150 000 руб.

Ограничения:
В целях минимизации налоговых рисков в задаче установлены следующие ограничения:

Цена
Минимальная трансфертная цена не может быть ниже себестоимости, увеличенной на 5%.
Максимальная трансфертная цена для компании не может быть больше чем средняя продажная цена покупателям уменьшенная на 5%.
Цены не должны отличаться между собой не более, чем на 20%.

Прибыль
Прибыль после уплаты налогов по каждой компании должна составить не менее 1% от выручки.

Задание. Найти оптимальные трансфертные цены для реализации с Крона на Стрим и Маркет, при которых прибыль после уплаты налогов будет максимальной.

Оптимальные трансфертные цены должны удовлетворять следующим условиям:

1) распределять налоговую нагрузку внутри компании с целью минимизации налога на прибыль

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

3) обеспечить справедливую оценку деятельности подразделений

Для решения перенесем данные в Excel.

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

Теперь подготовим поля для переменных. Это 2 ячейки: цена с Кроны на Стрим и цена с Кроны на Маркет. Пока они остаются пустыми, Поиск решений сам их заполнит.

Заполним таблицу с финансовыми результатами

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

Выручка по Кроне рассчитывается по формуле:
количество единиц, проданных со Стрима, умноженное на трансфертную цену + количество единиц проданных с Маркета, умноженное на трансфертную цену
Выручка по Стриму и Маркету нам известна: умножаем продажи на цену

Себестоимость по Кроне нам известна: умножаем общую сумму продаж со Стрима и Маркета на покупную цену.
По Стриму и Маркету в расчете себестоимости участвуют трансфертные цены, поэтому заполним формулы, но значения пока равны нулю.

Маржинальная прибыль рассчитывается по формуле: выручка минус себестоимость

Налог. Для Кроны и Стрима используется формула маржинальная прибыль на ставку налога, у Маркета другая формула: выручка на 6%.

Премия управляющему: вносим только для Маркета: маржинальная прибыль, умноженная на 30%

Прибыль после уплаты налога по формуле: маржинальная прибыль минус премия минус налог

Целевая функция. Сумма прибыли после уплаты налога по всем компаниям

Рядом с премией управляющему сразу установим ограничение >= 150 000

Минимальное ограничение цены: 4 400 х 1,05 = 4 620
Максимальная возможная цена на Стрим: 15 200 х 0,95 = 14 440
Максимальная возможная цена на Маркет: 17 860 х 0,95 = 17 860

Для того, чтобы задать ограничение по диапазону удобно использовать формулу отношение одной цены к другой. Предварительно требуется прикинуть, какая из цен будет стремиться в большую сторону. В данном случае я сделала оценку, что цена на Маркет чем больше, тем лучше, потому что ставка премии управляющему директору выше, чем ставка налога в Кроне, а цена на Стрим, наоборот, чем меньше, чем лучше, потому что ставка налога в Стриме ниже. Можно не делать предварительную оценку, а запустить поиск решения без учета этого ограничения: выяснить максимальную цену, а затем задать ограничение. Ограничение диапазона в пределах 20% будет выглядеть так:
Значение цена на Маркет/цена на Стрим <= 1,2

И последнее ограничение: минимальная сумма прибыли после уплаты налогов. Здесь значение будем задавать через формулу: выручка, умноженная на 1%, потому что на Кроне в зависимости от изменения трансфертных цен выручка будет изменяться.

Прибыль будет максимальной — 23 246 500 руб, если мы установим цену с Кроны на Стрим — 14 100 руб и цену на Маркет — 16 920.

Задача инвестора.
Что построить на участке?

Сможете сами решить?

Инвестор приобрел 400 соток земли под застройку. На участке можно построить 3 типа объектов: коттеджи, дуплексы и пятиэтажные дома на 30 квартир.

Имеется следующая информация об объектах:

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

Размер инвестиций ограничен суммой 330 млн.

Вопрос: что построить на участке, чтобы в течение 5 лет с начала проекта получить максимальную прибыль и сколько это будет?

Когда я составляла эту задачу, я подгоняла условия, чтобы получить наилучший ответ, который уже был мне известен. Каково же было мое удивление, когда я запустила Поиск решения – и получила совершенно другой результат! Специально пока его не публикую, чтобы было интереснее решать.

А Вы сможете решить эту задачу? Напишите свой ответ в комментариях, и нравятся ли Вам такие задачи? И идеи, идеи!

Как настроить функцию «Поиск решения»

если у вас нет кнопки «Поиск решения» во вкладке «Данные»

Поиск решения в Excel расположен на вкладке «Данные»

Если вы у себя в Excel не видите такой кнопки, значит нужно ее настроить. Делается это так. Шаг 1: Открыть «Параметры Excel»

Шаг 2: В открывшемся окне переключиться в закладку «Надстройки», выделить приложение «Поиск решения» и нажать на кнопку «Перейти».

Шаг 3: Появится окно «Надстройки», здесь отметить галочкой надстройку «Поиск решения», нажать «ОК» и все готово.

Понравилась статья?
Поделитесь в соцсетях:

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

Оптимизация значений таблицы Excel, удовлетворяющих определенным критериям, может быть сложным процессом. К счастью, Microsoft предлагает надстройку Решение проблем для численной оптимизации. Хотя данный сервис не может решить всех проблем, он может быть полезным в качестве инструмента что-если. Данный пост посвящен надстройке Решение проблем в Excel.

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

Что такое Поиск решений

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

Где в Excel поиск решений

Надстройка Поиск решений поставляется вместе с Excel, но по умолчанию отключена. Чтобы включить его, перейдите по вкладке Файл в группу Параметры. В появившемся диалоговом окне Параметры, выберите Надстройки -> Управление: Надстройки Excel -> Перейти. В окне Надстройки устанавливаем галочку напротив поля Поиск решения, жмем ОК.

запуск надстройки поиск решения

Теперь во вкладке Данные появилась новая группа Анализ с кнопкой Поиск решения.

поиск решения на ленте

Пример использования Поиска решения

Данный пост основан на примере использования Надстройки Поиск решения. Файл совместим со всеми версиями Excel.

Определение проблемы

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

определение проблемы

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

Для начала требуется определить каждый пункт к какой-нибудь группе.

объединение в группы

Чтобы указать привязанность пункта к группе, будем помечать их единицей (1), в противном случае нулем (0).

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

итоговое значение

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

значения каждого набора

Наконец, нам необходимо свести сумму групп и работать с разницей между ними.

разница наборов

Наша задача минимизировать разницу между суммами групп.

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

Для большей наглядности я добавил условное форматирование для ячеек, имеющих значение >0.

ручная таблица с условным форматированием

Проблема в том, что количество возможных комбинаций 28, т.е. 256 вероятных ответов на вопрос. Если на каждый из них тратить по 5 секунд, это займет у нас 21,3 минуты, предполагая, что мы сможем выдержать темп и запомнить лучшую комбинацию.

Вот где Поиск решения находит применение.

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

Чтобы применить сервис Поиск решения, нам необходимо определить ряд требований, правил и ограничений, которые позволят надстройке найти правильный ответ.

Наши правила

Наше основное требование – это минимизировать разницу между двумя группами. В нашем примере она находится в ячейке G11 – Группа B минус Группа A. Нам нужно, чтобы значение в ячейке G11 было настолько малым насколько это возможно, но больше или равно 0.

Мы также знаем, что пункт может находиться либо в Группе A, либо в Группе B, к тому он не может быть дробным. Таким образом у нас два ограничения для каждого элемента:

Во-первых: Значение элемента в колонке Итог должна равняться единице.

Во-вторых: Значения элементов в группах должны быть целыми.

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

Диалоговое окно Поиска решения

В этом разделе описано окно надстройки Поиск решения и его использования для определения проблемы.

Пустое окно Поиска решения

окно надстройки поиск решения

Заполненное окно Поиска решения

заполненное окно надстройки поиск решения

Оптимизировать целевую функцию

Это целевая ячейка, в которой мы пытаемся решить проблему. Наша целевая ячейка G11 – разница в группах.

До

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

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

Другой способ наложения ограничения – изменить G11 на =ABS(G10-F10). При этом мы сможем установить маркер на Минимум, как результат достижения целевой функции.

Но пока мы остановимся на формуле =G10-F10 и установим маркер в значение равным 0.

Изменяя ячейки переменных

Изменяемые ячейки – ячейки, которые надстройка попытается изменить, чтобы решить задачу. В нашем случае это привязка элемента к конкретной группе: $C$2:$D$9.

В соответствии с ограничениями

Ограничения – это правила, которые лимитируют возможные решения проблемы.

Нам необходимо добавить несколько ограничений в наш список:

  1. В колонке Итого каждый элемент должен равняться 1
  2. Элементы групп должны быть целым числом
  3. Сумма значений столбца Итого должна равняться 8

Чтобы наложить ограничения, жмем кнопку Добавить

  1. Для каждой ячейки диапазона E2:E9 устанавливаем ограничение значения равным 1добавить ограничение
  2. Для каждой ячейки диапазона C2:D9 устанавливаем ограничение значение целое число.ограниечение целое число
  3. Необходимо добавить ограничение на сумму обоих групп, ячейка E10 = 8.ограничение на сумму групп

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

изменить удалить ограничения

Загрузить/сохранить параметры поиска решений

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

сохранение параметров поиска решений

Запуск поиска оптимального решения в Excel

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

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

параметры поиска решения

Два параметра, которые необходимо будет менять время от времени:

Точность ограничения: значение от 0 до 1, где, чем больше цифра, тем больше ограничение

Целочисленная оптимальность: показывает насколько далеко от целого числа ограничение имеет право быть.

Запуск модели

Чтобы запустить надстройку нажмите кнопку Найти решение в основном окне.

В строке состояния вы увидите ряд статических данных, которые будут отображать внутреннюю работу надстройки. Как правило, они быстро меняются, и читать их сложно. Если модель сложная, то работа может остановится на некоторое время, надстройка обычно восстанавливается от этих проблем сама.

решение найдено

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

Теперь у вас есть 4 варианта на выбор:

— Запустить отчет

— Сохранить сценарий

— Восстановить исходные значения

— Сохранить найденное решение

Запустить отчет

Вы можете создать отчет, выбрав доступные из списка отчетов. Будет создан новый лист Отчет о результатах1.

Создание отчета

Обратите внимание, что в зависимости от установленных вами ограничений, будут доступны различные отчеты.

Сохранить сценарий

Если вы нажмете кнопку Сохранить сценарий, Excel откроет следующее диалоговое окно:

Сохранение сценария

Где необходимо ввести название вашего сценария модели и нажать кнопку ОК.

Все сценарии доступны в Диспетчере сценариев, который находится во вкладке Данные в группе Работа с данными –> Анализ что-если -> Диспетчер сценариев.

диспетчер сценариев

Вернуться к модели

К тому же, вы можете вернуться к модели и:

— Восстановить исходные значения

— Сохранить найденное решение

Проверка результатов

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

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

— Являются ли результаты примерно похожими на ваши ожидания?

— Не нарушены ли максимумы и минимумы?

Решим с помощью Excel следующую задачу:

Для изготовления различных изделий А и В используются три вида сырья. На производство единицы изделия А требуется затратить сырья первого вида — А1(кг), сырья второго вида — А2(кг), сырья третьего вида — А3(кг). На производство единицы изделия В требуется затратить сырья первого вида — В1(кг), сырья второго вида — В2(кг), сырья третьего вида — В3(кг).

Производство обеспечено сырьем первого вида в количестве Р1(кг), сырьем второго вида в количестве Р2(кг), сырьем третьего вида в количестве Р3(кг).

Прибыль от реализации единицы готового изделия А составляет С1(руб.), а изделия В составляет С2(руб.).

Составить план производства изделий А и В, обеспечивающий максимальную прибыль от их реализации.

Пусть (для примера):
$$
А_1 = 15, A_2 = 4, A_3 = 4 (Затраты на производство изделия A); \
B_1 = 2, B_2 = 3, B_3 = 14 (Затраты на производство изделия B); \
P_1 = 285, P_2 = 113, P_3 = 322 (Количество сырья); \
C_1 = 15, C_2 = 9 (Прибыль от реализации продукции)
$$

Решение:

Сформируем в Excel таблицу исходных значений по варианту:

Виды сырья Нормы расхода сырья на изготовление одного изделия, кг/ед. Запас сырья, кг.
А В
Сырье 1-го вида 15 2 285
Сырье 2-го вида 4 3 113
Сырье 3-го вида 4 14 322
Прибыль от реализации единицы изделия, руб./ед. 15 9  

Принимаем за х1 объем производства изделий А, а х2 – объем производства изделий В.

Целевая функция отражает суммарную прибыль от реализации изделий: f(x) = 15х1+9х2 → mах, где 15*х1 отражает прибыль от реализации изделий А, а 9*х2 — прибыль от реализации изделий В.

Ограничения имеют вид:
1) 15*х1+2*х2 ≤285 – по запасам сырья первого вида, (кг).
2) 4*х1+3*х2≤113 – по запасам сырья второго вида, (кг).
3) 4*х1+14*х2≤322 – по запасам сырья третьего вида, (кг).

Условие неотрицательности:

х1≥0, х2≥0, параметры управления принимают значения больше либо равны нулю.
Таким образом, формальная постановка данной задачи имеет вид:
$$
15cdot x_1 + 9 cdot x_2 rightarrow max \
begin{equation*}
begin{cases}
15 cdot x_1 + 2cdot x_2 leq 285, \
4 cdot x_1 + 3 cdot x_2 leq 113, \
4 cdot x_1 + 14 cdot x_2 leq 322, \
x_1 geq 0, \
x_2 geq 0
end{cases}
end{equation*}
$$

Создание экранной формы и ввод исходных данных

В этой форме каждой переменной и каждому коэффициенту задачи поставлена в соответствие конкретная ячейка на листе Excel. Так, например, переменным задачи соответствуют ячейки B3 (х1), C3 (х2), коэффициентам ЦФ соответствуют ячейки B5 (с1 = 15), C5 (с2 = 9), правым частям ограничений соответствуют ячейки D15 (р1 = 285), D16 (р2 = 113), D17 (р3 =322) и т.д.

Ввод зависимостей из формальной постановки задачи в экранную форму

Выбрав функцию «СУММПРОИЗВ» вводим в ячейку D4 выражение: «Массив 1» B3:C3, а в строку «Массив 2» — выражение B5:C5.

Левые части ограничений задачи (1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи (B3, C3), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (B10, C10 — 1-е ограничение; B11, С11 — 2-е ограничение и B12, С12 — 3-е ограничение). Формулы, соответствующие левым частям ограничений, представлены в таблице:

Левая часть ограничения Формула Excel
15х1+2х2 =СУММПРОИЗВ(B3:C3;B10:C10)
1+3х2 =СУММПРОИЗВ(B3:C3;B11:C11)
1+14х2 =СУММПРОИЗВ(B3:C3;B12:C12)

Настройка Поиска решения Excel

Дальнейшие действия производятся в окне «Поиск решения», которое находится во кладке «Данные» — «Анализ»:

  1. ставим курсор в поле «Оптимизировать целевую функцию»;
  2. вводим адрес целевой ячейки $D$4;
  3. выбираем направление оптимизации ЦФ, щелкнув один раз левой клавишей мыши по селекторной кнопке «Максимум».

Задание ячеек переменных и ограничений (граничных условий)

В окно «Поиск решения» в поле «Изменяя ячейки переменных» вписываем адреса $B$3:$С$3.

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

  1. Нажимаем кнопку «Добавить», после чего появится окно «Добавление ограничения».
  2. В поле «Ссылка на ячейку» вводим адреса ячеек переменных $B$3:$С$3.
  3. В поле знака выбираем «≥».
  4. В поле «Ограничение» вводим 0.
  5. Нажимаем кнопку «Добавить» в окне «Добавление ограничения».
  6. В поле «Ссылка на ячейку» вводим адрес ячейки левой части конкретного ограничения, например $B$15.
  7. В соответствии с условием задачи (1) выбираем в поле знака необходимый знак, «≤».
  8. В поле «Ограничение» вводим адрес ячейки правой части рассматриваемого ограничения, например $D$15.
  9. Аналогично вводим ограничения: $B$16<=$D$16, $B$17<=$D$17.

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

Запуск поиска решения

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

Запуск задачи на решение производится из окна «Поиск решения» путем нажатия кнопки «Найти решение».

После запуска на решение задачи ЛП на экране появляется окно «Результаты поиска решения» с сообщением об успешном решении задачи, представленном на рисунке:

Для получения ответа (значений переменных, ЦФ и левых частей ограничений) прямо в экранной форме нажимаем кнопку «OK». После этого в экранной форме появляется оптимальное решение задачи:

Для получения максимальной прибыли от реализации изделий А и В при заданном количестве сырья трех видов, следует производить 17 изделий А и 15 изделий В. При таком плане производства прибыль от реализации составит 390 руб. Сырье первого и второго видов будет использовано полностью, а сырье третьего вида останется недоиспользованным.

Содержание материала

  1. Включение функции
  2. Видео
  3. Поиску решения не удалось найти решения (Solver could not find a feasible solution)
  4. Конкретные примеры использования
  5. Изготовление йогурта
  6. Затраты на рекламу
  7. Применение функции и ее настройка
  8. Подготовка оптимизационной модели в MS EXCEL
  9. Обзор и возможности функции
  10. Решение эконометрики в Excel
  11. Пример использования поиска решений
  12. Подготовка таблицы

Включение функции

Можно долго искать на ленте, где находится Поиск решения, но так и не найти данный инструмент. Просто, для активации данной функции, нужно её включить в настройках программы.

Для того, чтобы произвести активацию Поиска решений в программе Microsoft Excel 2010 года, и более поздних версий, переходим во вкладку «Файл». Для версии 2007 года, следует нажать на кнопку Microsoft Office в левом верхнем углу окна. В открывшемся окне, переходим в раздел «Параметры».

В окне параметров кликаем по пункту «Надстройки».

В окне параметров кликаем по пункту «Надстройки». После перехода, в нижней части окна, напротив параметра «Управление» выбираем значение «Надстройки Excel», и кликаем по кнопке «Перейти».

Открывается окно с надстройками. Ставим галочку напротив наименования нужной нам надстройки – «Поиск решения». Жмем на кнопку «OK».

После этого, кнопка для запуска функции Поиска реш

После этого, кнопка для запуска функции Поиска решений появится на ленте Excel во вкладке «Данные».

Поиску решения не удалось найти решения (Solver could not find a feasible solution)

Это сообщение появляется, когда Поиск решения не смог найти сочетаний значений переменных, которые одновременно удовлетворяют всем ограничениям. Если вы используете Симплекс метод решения линейных задач , то можно быть уверенным, что решения действительно не существует. Если вы используете метод решения нелинейных задач, который всегда начинается с начальных значений переменных, то это может также означать, что допустимое решение далеко от этих начальных значений. Если вы запустите Поиск решения с другими начальными значениями переменных, то, возможно, решение будет найдено. Представим, что при решении задачи нелинейным методом, ячейки с переменными были оставлены не заполненными (т.е. начальные значения равны 0), и Поиск решения не нашел решения. Это не означает, что решения действительно не существует (хотя это может быть и так). Теперь, основываясь на результатах некой экспертной оценки, в ячейки с переменными введем другой набор значений, который, по Вашему мнению, близок к оптимальному (искомому). В этом случае, Поиск решения может найти решение (если оно действительно существует).

Примечание . О влиянии нелинейности модели на результаты расчетов можно прочитать в последнем разделе статьи Поиск решения MS EXCEL (4.3). Выбор места открытия нового представительства .

В любом случае (линейном или нелинейном), Вы должны сначала проанализировать модель на непротиворечивость ограничений, то есть условий, которые не могут быть удовлетворены одновременно. Чаще всего это связано с неправильным выбором соотношения (например, <= вместо >=) или граничного значения. Если, например, в рассмотренном выше примере, значение максимального объема установить 16 м3 вместо 32 м3, то это ограничение станет противоречить ограничению по минимальному количеству мест (110), т.к. минимальному количеству мест соответствует объем равный 16,5 м3 (110*0,15, где 0,15 – объем коробки, т.е. самой маленькой тары). Установив в качестве ограничения максимального объема 16 м3, Поиск решения не найдет решения.

   При ограничении 17 м3       Поиск решения

При ограничении 17 м3 Поиск решения найдет решение.

Видео

Конкретные примеры использования

Закончив с виртуальным примером, который помог разобраться с особенностями построения таблицы и задачи условий перейдём к более приземлённым и конкретным примерам. С их помощью в задаче будет разобраться немного проще.

Формулы в Excel – создание простых формул

Изготовление йогурта

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

В раздел «Расход сырья» внесены формулы, которые опираются на «количество» и нормы расхода. Прибыль является произведением стоимости и количества. Количество и будет переменной, которая будет изменяться в пределах «запасы». Для этого формируется следующий набор условий:

В результате вычислений (с учётом дробного остатка, поскольку условие работы только с целыми числами добавлено не было), получилось, что эффективнее всего производить 1 и 3 йогурты, а второй полностью игнорировать.

Затраты на рекламу

Другим вопросом, с которым поможет эта функция будет «оптимизация расходов на рекламу». В этом случае перед пользователем стоит задача: повысить возможную прибыль посредством изменения рекламных вложений в определённые месяцы.

Итак, прибыль является целевой ячейкой (выделена изумрудным цветом). Зелёным выделены расходы на рекламу, а красным максимальные затраты. При поиске решения ограничиваем подстановку переменных в значениях рекламы максимумом, а в качестве цели ставим максимизацию прибыли.

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

Отсюда и вытекает главный недостаток «поиска решений». Он оперирует лишь конечной (одной) ячейкой. Чтобы максимизировать прибыль требуется работать с последней ячейкой (прибыль – всего), что сопряжено с вероятностью появления ошибки в программе, если формулы настроены неверно.

Применение функции и ее настройка

Смотрите также: “Как построить график в Excel”

Формула готова. Теперь нужно применить саму функцию.

  1. Переключаемся во вкладку “Данные” и нажимаем кнопку “Поиск решения”.Откроются “Параметры”, где необходимо задать нужны
  2. Откроются “Параметры”, где необходимо задать нужные настройки. В поле “Оптимизировать целевую функцию:” указываем адрес целевой ячейки, где планируется вывести сумму по всем скидкам. Можно прописать координаты вручную, либо выбрать из таблицы, для чего сначала кликаем по области ввода, затем – по нужной ячейке.Переходим к настройке других параметров. В пункте
  3. Переходим к настройке других параметров. В пункте “До:” можно задать максимальную границу, минимальную границу или же точное число. Исходя из поставленной задачи ставим отметку рядом с опцией “Значение” и набираем “4500000” – сумма скидок по всем наименованиям.Следующее для заполнения поле – “Изменяя значения
  4. Следующее для заполнения поле – “Изменяя значения переменных:”. В него нужно внести координаты искомой ячейки, содержащей определенное значение. Это значение и есть та самая скидка, которую мы пытаемся вычислить. Также, как и с выбором целевой ячейки, координаты можно написать вручную, либо кликнуть по нужной ячейке в самой таблице.Теперь нужно отредактировать раздел “В соответстви
  5. Теперь нужно отредактировать раздел “В соответствии с ограничениями:”, в котором задаем ограничения используемых данных. Например, можно исключить десятичные дроби или, скажем, отрицательные числа. Это делается через кнопку “Добавить”. Откроется вспомогательно окно, позволяющее добавит
  6. Откроется вспомогательно окно, позволяющее добавить ограничения во время вычислений. В первом поле указываем координаты определенной ячейки или области ячеек, для которых это условие должно действовать. Согласно нашей задаче, указываем координаты искомой ячейки, в которой будет выводиться значение скидки. Следующий шаг – определить знак сравнения. Устанавливаем “больше или равно”, чтобы итоговое число не могло быть отрицательным. “Ограничение”, которое устанавливается в третьем поле, в этом случае будет равно цифре 0, поскольку именно относительно этого значения задается условие.После выполнения описанных выше действий в самом бМожно установить еще одно ограничение с помощью кнопки “Добавить”. Дальнейшие действия по его настройке будут аналогичными. По готовности щелкаем OK.
  7. После выполнения описанных выше действий в самом большом поле окна появится установленное только что ограничение. Список может быть довольно большим и зависит от сложности предполагаемых расчетов, но в данном случае будет достаточно и одного условия.Также можно задать немалое количество дополнительнПод этим полем также есть опция, позволяющая делать все остальные переменные, не затрагиваемые ограничениями, неотрицательными. Однако, будьте внимательны и проследите за тем, чтобы между этим параметром и поставленными ограничениями не было противоречия, иначе при расчете в программе может возникнуть конфликт.
  8. Также можно задать немалое количество дополнительных настроек. Чуть ниже справа есть кнопка “Параметры”, позволяющая это сделать. Нажимаем на нее и открываем новое окно.В этих настройках у нас есть возможность установит
  9. В этих настройках у нас есть возможность установить “Точность ограничения” и “Пределы решения”. В нашем случае задавать данные параметры нет необходимости, поэтому после ознакомления с представленным окном, его можно закрыть, нажав OK.Итак, все настройки выполнены и параметры установл
  10. Итак, все настройки выполнены и параметры установлены. Пора запускать функцию – для этого нажимаем кнопку “Найти решение”.После этого программа сделает все необходимые расч
  11. После этого программа сделает все необходимые расчеты и выдаст результаты в нужных ячейках. При этом сразу же откроется окно “Результаты поиска решения”, где можно сохранить/отменить результаты или настроить параметры поиска заново. Если результаты нас устраивают, оставляем отметку напротив опции “Сохранить найденное решение” и нажимаем ОК. При этом, если мы предварительно установим галочку слева от надписи “Вернуться в диалоговое окно параметров поиска решения”, после того, как мы щелкнем OK, мы обратно переключимся к настройке функции поиска решения.Вполне вероятно, что расчеты могут показаться непр
  12. Вполне вероятно, что расчеты могут показаться неправильными, либо возникнет желание немного изменить исходные данные и получить другой результат. В этом случае нужно снова открыть окно с параметрами поиска решения и внимательно посмотреть поля с введенными данными.
  13. Если с данными все нормально, можно попробовать задействовать другой метод решения. Для этого щелкаем по текущему варианту и из раскрывшегося перечня выбираем способ, который нам кажется наиболее подходящим:
    • Первый – ищет решение методом обобщенного приведенного градиента (ОПГ) для нелинейных задач. Стандартно выбран именно этот вариант, но можно попробовать и другие.
    • Второй – пытается отыскать решение для линейных задач, используя симплекс-метод.
    • Третий – для выполнения поставленной задачи использует эволюционный поиск.
    • В том случае, если ни один из методов не принес удовлетворительных результатов, стоит проверить данные в таблице и параметрах еще раз, поскольку именно это является самой частой ошибкой в подобного рода задачах.
  14. Теперь, когда мы получили требуемую скидку, осталось ее применить, чтобы рассчитать суммы скидок по всем наименованиям. Для этого отмечаем первую ячейку столбца “Сумма скидки”, пишем в ней формулу “=D2*$G$2” и нажимаем Enter. Знаки доллара ставятся для того, чтобы при растягивании/копировании формулы на другие строки, ячейка G2 со скидкой оставалась неизменной в расчетах.Мы получили сумму скидки для первого наименования.
  15. Мы получили сумму скидки для первого наименования. Теперь наводим курсор на нижний правый угол ячейки с результатом, как только он поменяет форму на крестик, зажав левую кнопку мыши растягиваем формулу на все строки, по которым хотим посчитать аналогичную сумму.Теперь наша таблица полностью готова в соответстви
  16. Теперь наша таблица полностью готова в соответствии с поставленной задачей.

Подготовка оптимизационной модели в MS EXCEL

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

Совет . Организуйте данные модели так, чтобы на одном листе MS EXCEL располагалась только одна модель. В противном случае, для выполнения расчетов придется постоянно сохранять и загружать настройки Поиска решения (см. ниже).

Приведем алгоритм работы с Поиском решения , который советуют сами разработчики ( ]]> www.solver.com ]]> ):

  • Определите ячейки с переменными модели (decision variables);
  • Создайте формулу в ячейке, которая будет рассчитывать целевую функцию вашей модели (objective function);
  • Создайте формулы в ячейках, которые будут вычислять значения, сравниваемые с ограничениями (левая сторона выражения);
  • С помощью диалогового окна Поиск решения введите ссылки на ячейки содержащие переменные, на целевую функцию, на формулы для ограничений и сами значения ограничений;
  • Запустите Поиск решения для нахождения оптимального решения.

Проделаем все эти шаги на простом примере.

Обзор и возможности функции

Надстройка «Поиск решений» — специфическая возможность Excel 2007, 2010, 2013, 2016, которая предназначена для работы с формулой при наличии определённых условий. Описать её логику можно следуя принципу «что если?». То есть, просчитать изменение конечной ячейки при условии изменения других. Хотя и звучит это сложно, но описать данный принцип удобнее на конкретном примере: как будет изменяться остаток средств в конце месяца, если изменить разные статьи расходов.

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

Для установления количественных и качественных взаимосвязей применяются математические и статистические методы и модели.

Дано 2 диапазона значений:

Значения Х будут играть роль факторного признака,

Значения Х будут играть роль факторного признака, Y – результативного. Задача – найти коэффициент корреляции.

Для решения этой задачи предусмотрена функция КОРРЕЛ (массив 1; массив 2).

Пример использования поиска решений

Теперь перейдем к самой функции. 

1) Чтобы включить «Поиск решений», выполните следующие шаги:

  • нажмите «Параметры Excel», а затем выберите категорию «Надстройки»;
  • в поле «Управление» выберите значение «Надстройки Excel» и нажмите кнопку «Перейти»;
  • в поле «Доступные надстройки» установите флажок рядом с пунктом «Поиск решения» и нажмите кнопку ОК.

  	 2) Теперь упорядочим данные в виде таблицы, от

2) Теперь упорядочим данные в виде таблицы, отражающей связи между ячейками. Советуем использовать цветовые обозначения: на примере красным выделена целевая функция, бежевым — ограничения, а желтым — изменяемые ячейки.

Не забудьте ввести формулы. Стоимость заказа рассчитывается как «Оплата труда за 1 изделие» умножить на «Число заготовок, передаваемых в работу». Для того, чтобы узнать «Время на выполнение заказа», нужно «Число заготовок, передаваемых в работу» разделить на «Производительность».

  	 3) Выделите целевую ячейку, которая должна пок

3) Выделите целевую ячейку, которая должна показать максимум, минимум или определенное значение при заданных условиях. Для этого на панели нажмите  «Данные» и выберете функцию «Поиск решений» (обычно она в верхнем правом углу).

4) Заполните параметры «Поиска решений» и нажмите «Найти решение». 

Совокупная стоимость 1000 изделий рассчитывается как сумма стоимостей количества изделий от каждого работника. Данная ячейка (Е13) — это целевая функция. D9:D12 — изменяемые ячейки. «Поиск решений» определяет их оптимальные значения, чтобы целевая функция достигла минимума при заданных ограничениях.

В нашем примере следующие ограничения: 

  • общее количество изделий 1000 штук ($D$13 = $D$3); 
  • число заготовок, передаваемых в работу — целое и больше нуля либо равно нулю ($D$9:$D$12 = целое, $D$9:$D$12 > = 0); 
  • количество дней меньше либо равно 30 ($F$9:$F$12 < = $D$6, либо как в примере в ячейке F13 задать функцию МАКС(F9:F12) и поставить ограничение $F$13 < = $D$6).

  	 5) В конце проверьте полученные данные на соот

5) В конце проверьте полученные данные на соответствие заданному целевому значению. Если что-то не сходится — нужно пересмотреть исходные данные, введенные формулы и ограничения.

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

Подготовка таблицы

Теперь, после того, как мы активировали функцию, давайте разберемся, как она работает. Легче всего это представить на конкретном примере. Итак, у нас есть таблица заработной платы работников предприятия. Нам следует рассчитать премию каждого работника, которая является произведением заработной платы, указанной в отдельном столбце, на определенный коэффициент. При этом, общая сумма денежных средств, выделяемых на премию, равна 30000 рублей. Ячейка, в которой находится данная сумма, имеет название целевой, так как наша цель подобрать данные именно под это число.

Коэффициент, который применяется для расчета суммы

Коэффициент, который применяется для расчета суммы премии, нам предстоит вычислить с помощью функции Поиска решений. Ячейка, в которой он располагается, называется искомой.

Целевая и искомая ячейка должны быть связанны друг

Целевая и искомая ячейка должны быть связанны друг с другом с помощью формулы. В нашем конкретном случае, формула располагается в целевой ячейке, и имеет следующий вид: «=C10*$G$3», где $G$3 – абсолютный адрес искомой ячейки, а «C10» — общая сумма заработной платы, от которой производится расчет премии работникам предприятия.

Теги

Теги

Понравилась статья? Поделить с друзьями:
  • Как найти функцию счетесли в excel
  • Как найти функцию разндат в excel
  • Как найти функцию поиск решения в excel
  • Как найти функцию по таблице в excel
  • Как найти функцию от столбца в excel