Пользователи Excel давно и успешно применяют программу для решения различных типов задач в разных областях.
Excel – это самая популярная программа в каждом офисе во всем мире. Ее возможности позволяют быстро находить эффективные решения в самых разных сферах деятельности. Программа способна решать различного рода задачи: финансовые, экономические, математические, логические, оптимизационные и многие другие. Для наглядности мы каждое из выше описанных решение задач в Excel и примеры его выполнения.
Решение задач оптимизации в Excel
Оптимизационные модели применяются в экономической и технической сфере. Их цель – подобрать сбалансированное решение, оптимальное в конкретных условиях (количество продаж для получения определенной выручки, лучшее меню, число рейсов и т.п.).
В Excel для решения задач оптимизации используются следующие команды:
Для решения простейших задач применяется команда «Подбор параметра». Самых сложных – «Диспетчер сценариев». Рассмотрим пример решения оптимизационной задачи с помощью надстройки «Поиск решения».
Условие. Фирма производит несколько сортов йогурта. Условно – «1», «2» и «3». Реализовав 100 баночек йогурта «1», предприятие получает 200 рублей. «2» — 250 рублей. «3» — 300 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.
Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:
На основании этих данных составим рабочую таблицу:
- Количество изделий нам пока неизвестно. Это переменные.
- В столбец «Прибыль» внесены формулы: =200*B11, =250*В12, =300*В13.
- Расход сырья ограничен (это ограничения). В ячейки внесены формулы: =16*B11+13*B12+10*B13 («молоко»); =3*B11+3*B12+3*B13 («закваска»); =0*B11+5*B12+3*B13 («амортизатор») и =0*B11+8*B12+6*B13 («сахар»). То есть мы норму расхода умножили на количество.
- Цель – найти максимально возможную прибыль. Это ячейка С14.
Активизируем команду «Поиск решения» и вносим параметры.
После нажатия кнопки «Выполнить» программа выдает свое решение.
Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.
Решение финансовых задач в Excel
Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.
Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.
Оформим исходные данные в виде таблицы:
Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).
Заполнение аргументов:
- Ставка – 20%/4, т.к. проценты начисляются ежеквартально.
- Кпер – 4*4 (общий срок вклада * число периодов начисления в год).
- Плт – 0. Ничего не пишем, т.к. депозит пополняться не будет.
- Тип – 0.
- БС – сумма, которую мы хотим получить в конце срока вклада.
Вкладчику необходимо вложить эти деньги, поэтому результат отрицательный.
Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка)кпер. Подставим значения: ПС = 400 000 / (1 + 0,05)16 = 183245.
Решение эконометрики в Excel
Для установления количественных и качественных взаимосвязей применяются математические и статистические методы и модели.
Дано 2 диапазона значений:
Значения Х будут играть роль факторного признака, Y – результативного. Задача – найти коэффициент корреляции.
Для решения этой задачи предусмотрена функция КОРРЕЛ (массив 1; массив 2).
Решение логических задач в Excel
В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, <, >=, <=). Результат логического выражения – логическое значение ИСТИНА или логическое значение ЛОЖЬ.
Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.
- Ставим курсор в ячейку С1. Нажимаем значок функций. Выбираем «ЕСЛИ».
- Заполняем аргументы. Логическое выражение – B1>=4. Это условие, при котором логическое значение – ИСТИНА.
- Если ИСТИНА – «Зачет сдал». ЛОЖЬ – «Зачет не сдал».
Решение математических задач в Excel
Средствами программы можно решать как простейшие математические задачки, так и более сложные (операции с функциями, матрицами, линейными уравнениями и т.п.).
Условие учебной задачи. Найти обратную матрицу В для матрицы А.
- Делаем таблицу со значениями матрицы А.
- Выделяем на этом же листе область для обратной матрицы.
- Нажимаем кнопку «Вставить функцию». Категория – «Математические». Тип – «МОБР».
- В поле аргумента «Массив» вписываем диапазон матрицы А.
- Нажимаем одновременно Shift+Ctrl+Enter — это обязательное условие для ввода массивов.
Скачать примеры
Возможности Excel не безграничны. Но множество задач программе «под силу». Тем более здесь не описаны возможности которые можно расширить с помощью макросов и пользовательских настроек.
Найденные решения (значения изменяемых ячеек) можно сохранить в качестве сценария. Для этого нужно:
- В диалоговом окне Результаты поиска решения выбрать Сохранить сценарий.
- В поле Название сценария ввести имя сценария. Просмотреть сценарии можно с помощью команды Данные > Работа с данными > Анализ что-если > Диспетчер сценариев > Сценарии.
С помощью программы Поиск решения можно создать три типа отчетов по результатам, полученным при успешном завершении процедуры решения.
Каждый отчет создается на отдельном листе текущей рабочей книги.
Для создания отчета надо в диалоговом окне Результаты поиска решения выбрать нужный тип отчета в поле Тип отчета. Можно выбрать сразу несколько типов (при выделении нескольких строк используется клавиша ).
- Результаты – отчет содержит целевую ячейку, список изменяемых ячеек, их исходные и конечные значения, ограничения и сведения о них.
- Устойчивость – отчет содержит сведения о степени зависимости модели от изменений величин, входящих в формулы, применяемые в задаче (формулы модели и формулы ограничений).
- Пределы – выводится целевая ячейка и ее значение, а также список изменяемых ячеек, их значений, нижних и верхних пределов и целевых результатов.
Рассмотрим применение процессора Excel для решения ЗЛП на примерах.
Задача 1. Планирование производства
Модель линейного программирования дает возможность определить наиболее выгодную производственную программу выпуска нескольких видов продукции при заданных ограничениях на ресурсы.
МП выпускает товары х1,х2,х3,х4, получая от реализации каждого прибыль в 60,70,120,130 руб. соответственно. Затраты на производство приведены в таблице.
Затраты | х1 | х2 | x3 | х4 | Всего |
---|---|---|---|---|---|
Трудовые | 1 | 1 | 1 | 1 | 16 |
Сырьевые | 6 | 5 | 4 | 1 | 110 |
Финансы | 4 | 6 | 10 | 13 | 100 |
- Максимум прибыли в зависимости от оптимального распределения затрат.
- Минимум ресурсов, необходимых для получения максимальной прибыли.
Решение задачи средствами Excel состоит из 4 этапов:
- Создание математической модели задачи ЛП.
- Создание формы для ввода условий задачи, ввод в неё исходных данных и зависимостей из математической модели.
- Ввод данных из формы в окно Excel Поиск решения из меню Данные.
- Задание параметров поиска и решение задачи.
Создание математической модели задачи
Составим математическую модель процесса по описанию задачи:
— целевая функция прибыли.
— граничные условия модели, так как количество производимых товаров не может быть отрицательной величиной.
Для решения данной задачи c помощью программы MS Excel создадим новую книгу с именем Линейное программирование и изменим имя ее первого рабочего листа на Задача о производстве.
Создание формы
- Составление формы в виде:
A | B | C | D | E | F | G | H | |
---|---|---|---|---|---|---|---|---|
1 | Переменная | х7 | х2 | x3 | х4 | Формула | Знак | Св.член |
2 | Значение | |||||||
3 | Коэф. ЦФ | 60 | 70 | 120 | 130 | =СУММПРОИЗВ(В$2:Е$2;В3:Е3) | Max | |
4 | Трудовые | 1 | 1 | 1 | 1 | =СУММПРОИЗВ(В$2:Е$2;В4:Е4) | 16 | |
5 | Сырьевые | 6 | 5 | 4 | 1 | =СУММПРОИЗВ(В$2:Е$2;В5:Е5) | 110 | |
6 | Финансы | 4 | 6 | 10 | 13 | =СУММПРОИЗВ(В$2:Е$2;В6:Е6) | 100 |
- Запись в ячейки В3:Е3 коэффициентов целевой функции F (1), в В4:Е6 коэффициентов из системы ограничений (2) и в ячейки Н4:Н6 – свободных членов из системы (2).
- Ввод формул с помощью fx – Мастера функций.
Для ввода формулы в целевую ячейку (целевой функции): щелкнуть левой клавишей мыши по ячейке F3 , затем по значку Мастера функций fx на панели инструментов, в появившемся окне «Мастер функций, Шаг 1» выбрать категорию «Математические», далее выбрать функцию СУММПРОИЗВ, нажать клавишу ОК, в окне «Мастер функций Шаг 2» в поле Массив 1 ввести с клавиатуры В2:Е2 (ячейки, в которых будут варьироваться х1..х4), в поле Массив 2 ввести В3:Е3 (коэффициенты целевой функции ЦФ).
Примечание. Можно вводить В2:Е2 не с клавиатуры, а поставить курсор в окно Массив 1, а затем протащить курсор при нажатой левой клавише мыши по ячейкам В2:Е2, имена ячеек сами запишутся в окно. Аналогично поступить с полем Массив 2.
Нажать клавишу ОК, в ячейку F3 запишется формула 60х1+70х2+120х3+ 130х4 в виде СУММПРОИЗВ(В2:Е2;В3:Е3).
Чтобы не вводить формулы в другие ячейки, необходимо изменить тип адресации для ячеек В2:Е2 с относительной на абсолютную $B$2:$E$2 , установив курсор перед нужным адресом B2 и нажав функциональную клавишу F4 , затем повторить эти действия для адреса E2 . Формула примет следующий вид:
После внесенных изменений необходимо скопировать формулу в ячейки F4:F6 c помощью маркера заполнения. Для этого необходимо выделить ячейку F3 , содержащую нужную формулу, установить указатель мыши на черный квадратик в правом нижнем углу ячейки (он примет форму черного крестика) и протащить с помощью левой кнопки мыши на весь требуемый диапазон.
В результате копирования мы увидим следующие формулы:
- в ячейке F4 – СУММПРОИЗВ($В$2:$Е$2;В4:Е4),
- в ячейке F5 – СУММПРОИЗВ($В$2:$Е$2;В5:Е5),
- в ячейке F6 – СУММПРОИЗВ($В$2:$Е$2;В6:Е6).
Заполнение окна Поиск решения
Выбрать в пункте меню Данные команду Поиск решения, поставить курсор в поле целевой функции, выделить ячейку F3 в форме (или ввести F3 с клавиатуры), поставить переключатель в положение «Максимальному значению» (см. рис. 12.1 рис. 12.1). В поле «Изменяя ячейки» ввести $В$2:$Е$2(с клавиатуры или протащив мышью).
Нажать клавишу «Добавить», в окне «Добавление ограничения» в поле «Ссылка на ячейку» ввести F4 , выбрать через «стрелка вниз» знак ««, в поле справа ввести Н4 (рис. 12. рис. 12.2).
Аналогично через «Добавить» ввести , для системы ограничений (2), а также , , и .
Также необходимо добавить ограничения для получения целочисленных величин по количеству товаров: B2=цел, C2=цел, D2=цел и Е2=цел.
После ввода последнего граничного условия вместо «Добавить» нажать клавишу ОК, появится окно «Поиск решения».
Для изменения или удаления ограничений и граничных условий используются клавиши Изменить, Удалить.
Параметры поиска
В окне «Поиск решения» нажать клавишу «Параметры», выбрать по умолчанию Максимальное время – 100 с, число итераций – 100 (для большинства задач это количество просчётов подходит с большим запасом), установить флажок в строке «Линейная модель», нажать ОК, в появившемся окне Поиск Решения нажать Выполнить (рис. 12. рис. 12.3).
Результаты поиска решения с таблицей результатов:
A | B | C | D | E | F | G | H | |
---|---|---|---|---|---|---|---|---|
1 | Переменная | X1 | X2 | X3 | X4 | Формула | Знак | Св.член |
2 | Значение | 10 | 0 | 6 | 0 | |||
3 | Коэф. ЦФ | 60 | 70 | 120 | 130 | 1320 | Max | |
4 | Трудовые | 1 | 1 | 1 | 1 | 16 | 16 | |
5 | Сырьевые | 6 | 5 | 4 | 1 | 84 | 110 | |
6 | Финансы | 4 | 6 | 10 | 13 | 100 | 100 |
Таким образом оптимальный план Х(Х1,Х2,Х3,Х4)=(10,0,6,0) при минимальном использовании ресурсов
- Трудовые – 16 (У1)
- Сырьевые – 84 (У2)
- Финансы – 100 (У3)
даёт максимум прибыли F в 1320 руб.
Вывод: Максимальная прибыль F в 1320 руб. получается при выпуске только товаров Х1 и Х3 в количестве 10 и 6 штук соответственно, товары Х3 и Х4 выпускать не нужно (это приведёт к снижению прибыли). Трудовые (У1) и финансовые (У3) ресурсы используются полностью, по сырьевым ресурсам (У2) есть запас в 110-84=26 ед.
Кроме того, это означает, что изменение трудовых ( y1 ) и финансовых ( y3 ) ресурсов приведёт к изменению прибыли F , а изменение сырьевых ресурсов ( y2 ) – нет.
Разности между плановыми ресурсами и использованными являются двойственными переменными y1, y2 и y3 сопряжённой задачи линейного программирования. В данном случае y1=y3=0 , а y2=26 ед. Таким образом, ресурс y2 можно уменьшить на 26 ед., тогда план по сырью тоже будет оптимальным.
Задача 2. Задача об оптимальной диете
Имеется n видов продуктов питания, в которых содержится m типов питательных веществ (белки, жиры, углеводы). В одной весовой единице продукта i-го типа содержится аi единиц питательного вещества j-го вида . Известна минимальная суточная потребность b j (j in <1,2. т>) человека в каждом из видов питательных веществ. Задана калорийность сi одной весовой единицы i-го продукта ( i принадлежит <1, 2, . n>).
Требуется определить оптимальный состав рациона продуктов, такой, чтобы каждое питательное вещество содержалось в нем в необходимом количестве, обеспечивающем суточную потребность человека, и при этом суммарная калорийность рациона была минимальной.
Ведем в рассмотрение следующие переменные: х – весовое количество продукта питания i-го типа в суточном рационе.
Тогда в общем случае математическая постановка задачи об оптимальной диете может быть сформулирована следующим образом:
где множество допустимых альтернатив формируется следующей системой ограничений типа неравенств:
Для решения задачи об оптимальной диете с помощью программы MS Excel необходимо задать конкретные значения параметрам исходной задачи.
Для определенности предположим, что в качестве исходных типов продуктов рассматриваются: хлеб, мясо, сыр, бананы, огурцы, помидоры, виноград ( n = 7), а в качестве питательных веществ рассматриваются белки, жиры, углеводы ( m = 3).
Калорийность одной весовой единицы каждого из продуктов следующая:с1 = 2060,с2= 2430,с3= 3600,с4= 890,с5= 140,с6= 230, с7 = 650. Содержание питательных веществ в каждом из продуктов может быть задано в форме нижеприведенной таблицы.
Минимальная суточная потребность в питательных веществах следующая: в белках b 1 = 100, в жирах b 2= 70, в углеводах b3 = 400.
Для решения данной задачи c помощью программы MS Excel создадим новую книгу с именем Линейное программирование и изменим имя ее второго рабочего листа на Задача о диете.
Продукты/питательные вещества | Хлеб ржаной | Мясо баранина | Сыр «Российский» | Банан | Огурцы | Помидоры | Виноград |
---|---|---|---|---|---|---|---|
Белки | 61 | 220 | 230 | 15 | 8 | 11 | 6 |
Жиры | 12 | 172 | 290 | 1 | 1 | 2 | 2 |
Углеводы | 420 | 0 | 0 | 212 | 26 | 38 | 155 |
Таблица 1. Содержание питательных веществ в продуктах питания
Создание математической модели задачи
Составим математическую модель процесса по описанию задачи:
– целевая функция (суммарная калорийность продуктов).
– граничные условия
Создание формы
Для решения поставленной задачи выполним следующие подготовительные действия:
- Внесем необходимые надписи в ячейки A1:I1, A2:A7, B4, I4, J4 .
- В ячейки ВЗ:НЗ введем значения коэффициентов целевой функции: с1 = 2060, с2 = 2430, с3 = 3600, с4 = 890, с5 = 140, с6 = 230, с7 = 650.
- В ячейку I2 введем формулу: =СУММПРОИЗВ( b 2:Н2;B3:H3), которая представляет целевую функцию (4).
- В ячейки В5:Н7 введем значения коэффициентов ограничений, взятых из таблицы.
- В ячейки J5 :J7 введем значения правых частей ограничений, соответствующих минимальной суточной потребности в питательных веществах: в белках b 1=100 , жирах b 2= 70 и углеводах b3 = 400.
- В ячейку I5 введем формулу: =СУММПРОИЗВ($B$2:$H$2;В5:Н5), которая представляет левую часть первого ограничения (5).
- Скопируем формулу, введенную в ячейку I5 , в ячейки I6 и I7 .
- Внешний вид рабочего листа MS Office Excel с исходными данными для решения задачи об оптимальном рационе питания имеет следующий вид (pиc. 12.4).
Для отображения формул в ячейках рабочего листа необходимо выполнить команду меню: Формулы и на панели инструментов в группе Зависимости формул выбрать Показать формулы.
Заполнение окна Поиск решения
Для дальнейшего решения задачи следует вызвать мастер поиска решения, для чего необходимо выполнить операцию: Данные > Поиск решения.
После появления диалогового окна Поиск решения следует выполнить следующие действия:
- В поле с именем Установить целевую ячейку: ввести абсолютный адрес ячейки $I$2 .
- Для группы Равной: выбрать вариант поиска решения – минимальному значению.
- В поле с именем Изменяя ячейки: ввести абсолютный адрес ячеек $B$2:$H$2 .
- Добавить 3 ограничения, представляющие минимальные суточные потребности в питательных веществах. С этой целью выполнить следующие действия:
- для задания первого ограничения в исходном диалоговом окне Поиск решения нажать кнопку с надписью Добавить (рис. 12.5 рис. 12.5, а);
- в появившемся дополнительном окне выбрать ячейку $I$5 , которая должна отобразиться в поле с именем Ссылка на ячейку;
- в качестве знака ограничения из выпадающего списка выбрать нестрогое неравенство » «;
- в качестве значения правой части ограничения выбрать ячейку $J$5 ;
- для добавления первого ограничения в дополнительном окне нажать кнопку с надписью Добавить;
- аналогичным образом задать оставшиеся два ограничения (рис. 12.5 рис. 12.5, б).
Параметры
В окне «Поиск решения» нажать клавишу «Параметры», выбрать «Поиск решения Линейных задач симплекс-методом», нажать ОК, затем нажать Найти Решение (рис. 12.6 рис. 12.6, б).
После задания ограничений и целевой функции можно приступить к поиску численного решения, для чего следует нажать кнопку Выполнить. После выполнения расчетов программой MS Excel будет получено количественное решение, которое имеет вид, представленный на рис. 12. рис. 12.7.
Результатом решения задачи об оптимальной диете являются найденные оптимальные значения переменных: х1 = 0, х2 = 0,211, 3 = 0,109, х4= 1,887, х5 = 0, х6 = 0, х7 = 0, которым соответствует значение целевой функции: fопт= 2587,140. При выполнении расчетов для ячеек В2:I2 был выбран числовой формат с 3 знаками после запятой.
Анализ найденного решения показывает, что для удовлетворения суточной потребности в питательных веществах (белки, жиры, углеводы) следует использовать 211 г мяса баранины, 109 г сыра и 1887 г бананов, совсем отказавшись от хлеба, огурцов, помидоров и винограда. При этом общая калорийность найденной оптимальной диеты будет приближенно равна 2590 ккал, что вполне соответствует малоактивному образу жизни без серьезных физических нагрузок. Напомним, что согласно медицинским данным, энергетические затраты работников интеллектуального труда (юристы, бухгалтера, врачи, педагоги) лежат в пределах 3000 ккал.
ЗАДАНИЕ
- Составить математическую модель задачи линейного программирования.
- Решить задачу линейного программирования в Excel с помощью Поиска решения.
- Сохранить в виде модели установочные параметры.
Предприятие легкой промышленности выпускает две модели машин, причем каждая модель производится на отдельной технологической линии. Суточный объем производства первой линии – 80 изделий, второй линии – 85 изделий. На машину первой модели расходуются 12 однотипных элементов электронных схем, на машину второй модели – 6 таких же элементов. Максимальный суточный запас используемых элементов равен 800 единицам. Прибыль от реализации одной машины первой и второй моделей равна $30 и $40 соответственно. Определить оптимальный суточный объем производства первой и второй моделей.
Процесс изготовления двух видов промышленных изделий состоит в последовательной обработке каждого из них на трех приборах. Время использования этих приборов для производства данных изделий ограничено 10 ч. в сутки. Найти оптимальный объем производства изделий каждого вида.
Фирма имеет возможность рекламировать свою продукции, используя местные радио- и телевизионную сеть. Затраты на рекламу в бюджете фирмы ограничены $1000 в месяц. Каждая минута радиорекламы обходится в $5, а минута телерекламы – в $100. Фирма хотела бы использовать радиосеть, по крайней мере, в два раза чаще, чем сеть телевидения. Опыт прошлых лет показал, что объем сбыта, который обеспечивает каждая минута телерекламы, в 25 раз больше сбыта, обеспечиваемого одной минутой радиорекламы. Определить оптимальное распределение ежемесячно отпускаемых средств между радио- и телерекламой.
Фирма производит два вида продукции – А и B . Объем сбыта продукции вида A составляет не менее 70% общего объема реализации продукции обоих видов. Для изготовления продукции А и В используется одно и то же сырье, суточный запас которого ограничен величиной 120 кг. Расход сырья на единицу продукции A составляет 3 кг, а на единицу продукции В – 5 кг. Цены продукции А и В равны $20 и $60 соответственно. Определить оптимальное распределение сырья для изготовления продукции А и В.
Фирма выпускает женские шляпы двух фасонов. Трудоемкость изготовления шляпы фасона 1 вдвое выше трудоемкости изготовления шляпы фасона 2. Если бы фирма выпускала только шляпы фасона 1, суточный объем производства мог бы составить 60 шляп. Суточный объем сбыта шляп обоих фасонов ограничен диапазоном от 50 до 100 штук. Прибыль от продажи шляпы фасона 1 равна $6, а фасона 2 – $7. Определить какое количество шляп каждого фасона следует изготавливать, чтобы максимизировать прибыль.
Изделия четырех типов проходят последовательную обработку на двух станках. Время обработки одного изделия каждого типа на каждом из станков:
Затраты на производство одного изделия каждого типа определяются как величины, прямо пропорциональные времени использования станков (в машино-часах). Стоимость машино-часа составляет $10 и $15 для станка 1 и 2 соответственно. Допустимое время для использования станков для обработки изделий всех типов ограничено следующими значениями: 500 машино-часов – для станка 1 и 380 машино-часов для станка 2. Цены изделий типов 1,2,3 и 4 равны $65, $70, $55 и $45 соответственно. Составить план производства, максимизирующий чистую прибыль.
Завод выпускает изделия трех моделей ( I, II III ) Для их изготовления используется два вида ресурсов (А и В), запасы которых составляют – 5000 и 6000 единиц. Расходы ресурсов на одно изделие каждой модели:
Трудоемкость изготовления модели I вдвое больше, чем изделия модели II , и втрое больше, чем изделие модели III . Численность рабочих завода позволяет выпускать 1500 изделий I . Анализ условий сбыта показывает, что минимальный спрос на продукцию завода составляет 200, 200 и 150 изделий моделей I,II и III соответственно. Однако соотношение выпуска изделий моделей I,II и III должно быть равно 3:2:5. Удельная прибыль от реализации изделий моделей I,II и III составляет $30, $20 и $50 соответственно. Определить выпуск изделий, максимизирующий прибыль.
Требуется распределить имеющиеся денежные средства по четырем альтернативным вариантам. Игра имеет три исхода. Ниже приведены размеры выигрыша (или проигрыша) на каждый доллар, вложенный в соответствующий альтернативный вариант, для любого из трех исходов. У игрока имеется $500, причем, использовать в игре их можно только один раз. Точный исход игры заранее неизвестен, и, учитывая эту неопределенность, игрок решил распределить деньги так, чтобы максимизировать максимальную отдачу от этой суммы.
Бройлерное хозяйство птицеводческой фермы насчитывает 80000 цыплят, которые выращиваются до 8-недельного возраста и после соответствующей обработки поступают в продажу. Хотя недельный рацион цыплят зависит от их возраста, в дальнейшем будем считать, что в среднем (за 8 недель) он составляет 1 фунт.
Для того чтобы цыплята достигли к восьмой неделе необходимых весовых кондиций, кормовой рацион должен удовлетворять определенным требованиям по питательности. Этим требованиям могут соответствовать смеси различных видов кормов или ингредиентов. Ограничим наше рассмотрение только тремя ингредиентами: известняком, зерном и соевыми бобами. Ниже приведены данные, характеризующие содержание (по весу) питательных веществ в каждом из ингредиентов и удельную стоимость каждого ингредиента.
Смесь должна содержать:
- не менее 0.8%, но не более 1.2% кальция;
- не менее 22% белка;
- не более 5% клетчатки.
Необходимо определить количество каждого из трех ингредиентов, образующих смесь минимальной стоимости при соблюдении требований к общему расходу кормовой смеси и ее питательности.
Имеется n видов продуктов питания, в которых содержится m типов питательных веществ (белки, жиры, углеводы). В одной весовой единице продукта i-го типа содержится аi единиц питательного вещества j-го вида . Известна минимальная суточная потребность b j человека в каждом из видов питательных веществ. Задана калорийность сi одной весовой единицы i-го продукта ( i принадлежит <1, 2, . n >). Требуется определить оптимальный состав рациона продуктов, такой, чтобы каждое питательное вещество содержалось в нем в необходимом количестве, обеспечивающем суточную потребность человека, и при этом суммарная калорийность рациона была минимальной.
Для решения задачи об оптимальной диете с помощью программы MS Excel необходимо задать конкретные значения параметрам исходной задачи. Для определенности предположим, что в качестве исходных типов продуктов рассматриваются: хлеб, мясо, сыр, бананы, огурцы, помидоры, виноград ( n = 7), а в качестве питательных веществ рассматриваются белки, жиры, углеводы ( m = 3). Калорийность одной весовой единицы каждого из продуктов следующая:с1 = 2060,с2= 2430,с3= 3600,с4= 890,с5= 140,с6= 230, с7 = 650. Содержание питательных веществ в каждом из продуктов может быть задано в форме следующей таблицы (см. табл.).
Продукты/питательные вещества | Хлеб ржаной | Мясо баранина | Сыр «Российский» | Банан | Огурцы | Помидоры | Виноград |
---|---|---|---|---|---|---|---|
Белки | 66 | 225 | 235 | 20 | 13 | 16 | 11 |
Жиры | 17 | 177 | 295 | 1 | 1 | 7 | 7 |
Углеводы | 425 | 0 | 0 | 217 | 31 | 43 | 200 |
Таблица 1. Содержание питательных веществ в продуктах питания
Минимальная суточная потребность в питательных веществах следующая: в белках b 1 = 105, в жирах b 2 = 75, в углеводах b 3 = 405.
Определить суточную потребности в питательных веществах (белки, жиры, углеводы) и общую калорийность оптимальной диеты.
Предприятие электронной промышленности выпускает две модели радиоприемников, причем каждая модель производится на отдельной технологической линии. Суточный объем производства первой линии – 60 изделий, второй линии – 75 изделий. На радиоприемник первой модели расходуются 10 однотипных элементов электронных схем, на радиоприемник второй модели – 8 таких же элементов. Максимальный суточный запас используемых элементов равен 800 единицам. Прибыль от реализации одного радиоприемника первой и второй моделей равна $30 и $20 соответственно. Определить оптимальный суточный объем производства первой и второй моделей.
Процесс изготовления двух видов промышленных изделий состоит в последовательной обработке каждого из них на трех станках. Время использования этих станков для производства данных изделий ограничено 10 ч. в сутки. Найти оптимальный объем производства изделий каждого вида.
Фирма имеет возможность рекламировать свою продукции, используя местные радио- и телевизионную сеть. Затраты на рекламу в бюджете фирмы ограничены $1000 в месяц. Каждая минута радиорекламы обходится в $5, а минута телерекламы – в $100. Фирма хотела бы использовать радиосеть, по крайней мере, в два раза чаще, чем сеть телевидения. Опыт прошлых лет показал, что объем сбыта, который обеспечивает каждая минута телерекламы, в 25 раз больше сбыта, обеспечиваемого одной минутой радиорекламы. Определить оптимальное распределение ежемесячно отпускаемых средств между радио- и телерекламой.
Фирма производит два вида продукции – A и B . Объем сбыта продукции вида A составляет не менее 60% общего объема реализации продукции обоих видов. Для изготовления продукции А и В используется одно и то же сырье, суточный запас которого ограничен величиной 100 кг. Расход сырья на единицу продукции A составляет 2 кг, а на единицу продукции В – 4 кг. Цены продукции А и В равны $20 и $40 соответственно. Определить оптимальное распределение сырья для изготовления продукции А и В.
Фирма выпускает ковбойские шляпы двух фасонов. Трудоемкость изготовления шляпы фасона 1 вдвое выше трудоемкости изготовления шляпы фасона 2. Если бы фирма выпускала только шляпы фасона 1, суточный объем производства мог бы составить 60 шляп. Суточный объем сбыта шляп обоих фасонов ограничен диапазоном от 50 до 100 штук. Прибыль от продажи шляпы фасона 1 равна $8, а фасона 2 – $5. Определить какое количество шляп каждого фасона следует изготавливать, чтобы максимизировать прибыль.
Изделия четырех типов проходят последовательную обработку на двух станках. Время обработки одного изделия каждого типа на каждом из станков:
Затраты на производство одного изделия каждого типа определяются как величины, прямо пропорциональные времени использования станков (в машино-часах). Стоимость машино-часа составляет $10 и $15 для станка 1 и 2 соответственно. Допустимое время для использования станков для обработки изделий всех типов ограничено следующими значениями: 500 машино-часов – для станка 1 и 380 машино-часов для станка 2. Цены изделий типов 1,2,3 и 4 равны $65, $70, $55 и $45 соответственно. Составить план производства максимизирующий чистую прибыль.
Завод выпускает изделия трех моделей ( I, II III ). Для их изготовления используется два вида ресурсов (А и В), запасы которых составляют – 4000 и 6000 единиц. Расходы ресурсов на одно изделие каждой модели:
Трудоемкость изготовления модели I вдвое больше, чем изделия модели II , и втрое больше, чем изделие модели III . Численность рабочих завода позволяет выпускать 1500 изделий I . Анализ условий сбыта показывает, что минимальный спрос на продукцию завода составляет 200, 200 и 150 изделий моделей I,II и III соответственно. Однако соотношение выпуска изделий моделей I,II и III должно быть равно 3:2:5. Удельная прибыль от реализации изделий моделей I,II и III составляет $30, $20 и $50 соответственно. Определить выпуск изделий, максимизирующий прибыль.
Некоторое производственное предприятие выпускает три вида клея. Для производства клея используется 4 типа химических веществ: крахмал, желатин, квасцы и мел. Расход этих веществ в кг для получения 1 кг каждого вида клея и их запас на складе предприятия представлены в таблице.
Вид клея /Химические вещества | Клей № 1 | Клей № 2 | Клей № 3 | Запас на складе |
---|---|---|---|---|
Крахмал | 0,4 | 0,3 | 0,2 | 20 |
Желатин | 0,2 | 0,3 | 0,4 | 35 |
Квасцы | 0,05 | 0,07 | 0,1 | 7 |
Мел | 0,01 | 0,05 | 0,15 | 10 |
Таблица 1. Расход химических веществ на изготовления клея, их запас на складе
Стоимость каждого вида клея для оптовых покупателей следующая:с1 = 380 руб/кг,с2 =430 руб/кг,с3 = 460 руб/кг. Требуется определить оптимальный объем выпуска клея каждого вида, обеспечивающий максимум общей стоимости готовой продукции.
Бройлерное хозяйство птицеводческой фермы насчитывает 20000 цыплят, которые выращиваются до 8-недельного возраста и после соответствующей обработки поступают в продажу. Хотя недельный рацион цыплят зависит от их возраста, в дальнейшем будем считать, что в среднем (за 8 недель) он составляет 1 фунт.
Для того чтобы цыплята достигли к восьмой неделе необходимых весовых кондиций, кормовой рацион должен удовлетворять определенным требованиям по питательности. Этим требованиям могут соответствовать смеси различных видов кормов или ингредиентов. Ограничим наше рассмотрение только тремя ингредиентами: известняком, зерном и соевыми бобами. Ниже приведены данные, характеризующие содержание (по весу) питательных веществ в каждом из ингредиентов и удельную стоимость каждого ингредиента.
Смесь должна содержать:
- не менее 0.8%, но не более 1.2% кальция;
- не менее 22% белка;
- не более 5% клетчатки.
Необходимо определить количество каждого из трех ингредиентов, образующих смесь минимальной стоимости при соблюдении требований к общему расходу кормовой смеси и ее питательности.
Имеется конечное число видов продуктов питания: ананас, арбуз, грейпфрут, язык говяжий, сардельки говяжьи, хлеб «Бородинский», картофель ( n = 7), а в качестве питательных веществ рассматриваются белки, жиры, углеводы ( m = 3). Калорийность 1 кг каждого из продуктов следующая:с1 = 470,с2= 380,с3 = 350,с4 = 1460,с5 = 2150,с6 = 2070, с7 = 800. Минимальная суточная потребность в питательных веществах следующая: в белках b 1 = 100, в жирах b 2 = 70, в углеводах b3 = 400. Содержание питательных веществ в каждом из продуктов может быть задано в форме нижеприведенной таблицы (табл.).
Требуется определить такой рацион питания, чтобы каждое питательное вещество содержалось в нем в необходимом количестве, обеспечивающем суточную потребность человека, и при этом суммарная калорийность рациона была минимальной.
Поиск решения задач в Excel с примерами
Пользователи Excel давно и успешно применяют программу для решения различных типов задач в разных областях.
Excel – это самая популярная программа в каждом офисе во всем мире. Ее возможности позволяют быстро находить эффективные решения в самых разных сферах деятельности. Программа способна решать различного рода задачи: финансовые, экономические, математические, логические, оптимизационные и многие другие. Для наглядности мы каждое из выше описанных решение задач в Excel и примеры его выполнения.
Решение задач оптимизации в Excel
Оптимизационные модели применяются в экономической и технической сфере. Их цель – подобрать сбалансированное решение, оптимальное в конкретных условиях (количество продаж для получения определенной выручки, лучшее меню, число рейсов и т.п.).
В Excel для решения задач оптимизации используются следующие команды:
Для решения простейших задач применяется команда «Подбор параметра». Самых сложных – «Диспетчер сценариев». Рассмотрим пример решения оптимизационной задачи с помощью надстройки «Поиск решения».
Условие. Фирма производит несколько сортов йогурта. Условно – «1», «2» и «3». Реализовав 100 баночек йогурта «1», предприятие получает 200 рублей. «2» — 250 рублей. «3» — 300 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.
Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:
На основании этих данных составим рабочую таблицу:
- Количество изделий нам пока неизвестно. Это переменные.
- В столбец «Прибыль» внесены формулы: =200*B11, =250*В12, =300*В13.
- Расход сырья ограничен (это ограничения). В ячейки внесены формулы: =16*B11+13*B12+10*B13 («молоко»); =3*B11+3*B12+3*B13 («закваска»); =0*B11+5*B12+3*B13 («амортизатор») и =0*B11+8*B12+6*B13 («сахар»). То есть мы норму расхода умножили на количество.
- Цель – найти максимально возможную прибыль. Это ячейка С14.
Активизируем команду «Поиск решения» и вносим параметры.
После нажатия кнопки «Выполнить» программа выдает свое решение.
Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.
Решение финансовых задач в Excel
Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.
Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.
Оформим исходные данные в виде таблицы:
Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).
- Ставка – 20%/4, т.к. проценты начисляются ежеквартально.
- Кпер – 4*4 (общий срок вклада * число периодов начисления в год).
- Плт – 0. Ничего не пишем, т.к. депозит пополняться не будет.
- Тип – 0.
- БС – сумма, которую мы хотим получить в конце срока вклада.
Вкладчику необходимо вложить эти деньги, поэтому результат отрицательный.
Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка) кпер . Подставим значения: ПС = 400 000 / (1 + 0,05) 16 = 183245.
Решение эконометрики в Excel
Для установления количественных и качественных взаимосвязей применяются математические и статистические методы и модели.
Дано 2 диапазона значений:
Значения Х будут играть роль факторного признака, Y – результативного. Задача – найти коэффициент корреляции.
Для решения этой задачи предусмотрена функция КОРРЕЛ (массив 1; массив 2).
Решение логических задач в Excel
В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, =, Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.
- Ставим курсор в ячейку С1. Нажимаем значок функций. Выбираем «ЕСЛИ».
- Заполняем аргументы. Логическое выражение – B1>=4. Это условие, при котором логическое значение – ИСТИНА.
- Если ИСТИНА – «Зачет сдал». ЛОЖЬ – «Зачет не сдал».
Решение математических задач в Excel
Средствами программы можно решать как простейшие математические задачки, так и более сложные (операции с функциями, матрицами, линейными уравнениями и т.п.).
Условие учебной задачи. Найти обратную матрицу В для матрицы А.
- Делаем таблицу со значениями матрицы А.
- Выделяем на этом же листе область для обратной матрицы.
- Нажимаем кнопку «Вставить функцию». Категория – «Математические». Тип – «МОБР».
- В поле аргумента «Массив» вписываем диапазон матрицы А.
- Нажимаем одновременно Shift+Ctrl+Enter — это обязательное условие для ввода массивов.
Возможности Excel не безграничны. Но множество задач программе «под силу». Тем более здесь не описаны возможности которые можно расширить с помощью макросов и пользовательских настроек.
источники:
http://intuit.ru/studies/courses/3659/901/lecture/32717
http://exceltable.com/vozmojnosti-excel/poisk-resheniya-v-excel
Для
решения задач оптимизации в Microsoft
Excel
предназначена надстройка Поиск
решения.
Постановка задачи
В общем виде задача оптимизации ставится
следующим образом: найти оптимальное
(максимальное или минимальное) значение
функции
при ограничениях
.
Если функции
и
являются линейными, т. е.
,
то такая
задача называется задачей линейного
программирования.
Подготовка
блока данных
-
На рабочем
листе отвести блок данных под изменяемые
ячейки, т. е. ячейки для хранения
переменных.
В результате решения задачи в этих
ячейках появятся искомые значения. -
В отдельную
ячейку ввести формулу для целевой
функции
.
Эта ячейка называетсяцелевой. -
отдельные
ячейки ввести формулы для левой части
ограничений
.
Запуск программы «Поиск решения»
-
На вкладке
Данныев группеАнализвыбрать
командуПоиск решения. -
В поле
Установить целевую ячейкуввести
ссылку нацелевую ячейку. -
В поле
Изменяя ячейкиввести ссылку на
диапазонизменяемых ячеек. -
Для
задания ограниченийв группеОграничения щелкнуть по кнопкеДобавить.
В открывшемся диалоговом окне выполнить
следующие действия:
-
в поле
Ссылка на ячейкуввести ссылку на
ячейку с формулой, определяющей первоеограничение(); -
во втором
поле выбрать оператор ограничения (>,
<, = и т.д); -
в поле
Ограничениеввести значение
ограничения
-
Для
задания следующего ограничения щелкнуть
по кнопке Добавитьи повторить
операции пункта 4. -
Когда
все ограничения будут заданы, щелкнуть
по кнопке ОК, чтобы вернуться в
диалоговое окноПоиск решения. -
Изменять
и удалять ограничения можно с помощью
кнопок ИзменитьиУдалить. -
При
необходимости можно задать максимальное
время решения, предельное число
итераций, относительную погрешность,
допустимое отклонение, сходимость,
метод поиска. Для этого с помощью кнопки
Параметрыоткрыть диалоговое окноПараметры поиска решения.
Если известно, что решаемая задача
линейная, то следует включить режим
Линейная модель: процесс решения
значительно ускорится.
Для возврата в диалоговое окно Поиск
решениящелкнуть по кнопкеОК.
-
Для
инициализации процедуры поиска решения
щелкнуть по кнопке Выполнить.
Полученные результаты будут выведены
на рабочий лист.
После завершения процедуры решения в
диалоговом окне Результаты поиска
решенияможно выполнить один из
следующих вариантов:
-
сохранить
найденное решение или восстановить
исходные значения на рабочем листе; -
сохранить
параметры поиска решения в виде модели; -
сохранить
решение в виде сценария; -
просмотреть
любой из встроенных отчетов.
Сохранение модели
Текущие установочные параметры для
поиска решения можно сохранить в виде
модели.
Для этого надо в диалоговом окне
Параметры поиска решениящелкнуть
по кнопкеСохранить модельи указать
на рабочем листе область для сохранения
модели (можно указать только верхнюю
ячейку области).
При сохранении модели запоминаются
целевая ячейка, изменяемые ячейки,
ограничения и параметры поиска решения.
Чтобы впоследствии загрузить модель,
надо щелкнуть по кнопке Загрузить
модельв диалоговом окнеПараметры
поиска решения.
Сохранение сценария
Найденные решения (значения изменяемых
ячеек) можно сохранить в качестве
сценария. Для этого нужно:
-
В диалоговом
окне Результаты поиска решениявыбратьСохранить сценарий. -
В поле
Название сценарияввести имя.
Просмотреть сценарии можно с помощью
команды Диспетчера сценариев(на
вкладкеДанныев группеРабота с
даннымив спискеАнализ «что-если»выбрать командуДиспетчер сценариев).
Создания отчета по результатам поиска
решения
С помощью программы Поиск решенияможно создать три типа отчетов по
результатам, полученным при успешном
завершении процедуры решения. Каждый
отчет создается на отдельном листе
текущей рабочей книги.
Для создания отчета надо в диалоговом
окне Результаты поиска решениявыбрать нужный тип в полеТип отчета.
Можно выбрать сразу несколько типов
(при выделении нескольких строк
используется клавишаCtrl).
Типы отчетов:
-
результаты– отчет содержит целевую ячейку, список
изменяемых ячеек, их исходные и конечные
значения, ограничения и сведения о
них; -
устойчивость– отчет содержит сведения о степени
зависимости модели от изменений
величин, входящих в формулы, применяемые
в задаче (формулы модели и формулы
ограничений); -
пределы– выводится целевая ячейка и ее
значение, а также список изменяемых
ячеек, их значений, нижних и верхних
пределов и целевых результатов.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
- #
В данной статье рассматривается расчет инструмента Excel «Поиск решений». Освоение работы с надстройкой «Поиск решений» даст преимущество в решении многих экономических задач: минимизация расходов при формировании состава сырья и штатного расписания, оптимизация расходов на изготовление при выборе ассортимента продукции, максимизация прибыли при формировании инвестиционной программы.
Зачастую экономисты в своей практике встречаются с вопросами оптимизации расходов.
Рассмотрим пример оптимизации транспортных расходов с помощью инструмента Excel «Поиск решений».
Пример 1
На предприятии X осуществляются транспортные перевозки с помощью четырех компаний до пяти населенных пунктов. Руководство компании решило распределить все количество перевозок между поставщиками транспортных услуг (транспортными компаниями) в определенной пропорции, выраженной в процентном соотношении — удельный вес в общем количестве перевозок. Известны также тарифы транспортных компаний за одну ездку и количество плановых перевозок до каждого населенного пункта в планируемом периоде .
Необходимо оптимально распределить ездки в населенные пункты между транспортными компаниями таким образом, чтобы транспортные расходы были минимальными.
Для успешного решения этой задачи необходимо выбрать минимизируемую ячейку, определить ограничения, а также правильно сформировать таблицы с исходными и расчетными данными (рис. 1).
Рис. 1. Расчет оптимальных перевозок
На рис. 1 расположены две таблицы: с исходными данными и расчетными данными. В ячейках D8:H11 расположены тарифы за 1 ездку в разрезе транспортных компаний до пунктов назначения, в ячейках D12:H12 — плановое количество ездок за период до пунктов назначения, в ячейках I8:I11 — удельный вес перевозок каждой транспортной компании в общем количестве планируемых перевозок за период. Эти ячейки для удобства не раскрашены. В ячейках J8:J12 и Н13 рассчитано число ездок по каждой транспортной компании и в целом за период. Формулы в этих ячейках выглядят следующим образом:
Ячейка Н13: =СУММ(D12:H12),
Ячейка J8: =I8*$H$13.
Данную формулу из ячейки J8 протаскиваем (копируем) в ячейки J9, J10, J11.
Ячейка J12: =СУММ(J8:J11).
Следующая таблица на листе посвящена расчету и называется «Расчет». Ячейки D19:Н22 предназначены для распределения количества ездок до пунктов назначения между транспортными компаниями. На рис. 1 в ячейках дано такое распределение, заполненное вручную. В ячейках D23:I27 рассчитаны суммы расходов на транспортные перевозки в разрезе транспортных компаний, оказывающих транспортные услуги, и пунктов назначений, а также итоги.
Приведем формулы, представленные в этих ячейках.
Значения в ячейках D24:Н27 получены перемножением количества ездок (ячейки D19:Н22) на тарифы (ячейки D8:Н12). В ячейку D24 запишем формулу:
=D19*D8.
Протащим (скопируем) формулу в ячейки D25:D27 и E24:Н27.
В ячейках D23:I23 формируются итоговые суммы транспортных услуг в разрезе пунктов назначения. Запишем в ячейку D23 формулу:
=СУММ(D24:D27).
Протащим (скопируем) эту формулу в ячейки Е23:I23.
В ячейках I24:I27 формируются итоговые суммы транспортных услуг в разрезе компаний, оказывающих эти услуги. Запишем в ячейку I24 формулу:
=СУММ(D24:H24).
Протащим (скопируем) ее в ячейки I25:I27.
Таким образом, стоимость транспортных расходов по компании в целом формируется в ячейке I23. В первоначальном расчете, представленном на рис. 1, данная сумма равна 35 790 руб.
Скопируем данный лист в эту же книгу. Далее необходимо приступить непосредственно к оптимизации. Задача — подобрать в ячейках D19:Н22 такие значения, чтобы в ячейке I23 была рассчитана минимальная сумма расходов на транспорт. Для этого воспользуемся инструментом «Поиск решений».
Для начала надо выбрать оптимизируемую ячейку (I23). Затем вызовем диалоговое окно «Поиск решений», представленное на рис. 2.
Это важно. Надстройку «Поиск решений» не всегда можно обнаружить в меню рабочего стола компьютера, так как она может быть не подключена. Для ее подключения необходимо выполнить ряд действий, которые аналогичны во всех версиях MS Office: «Сервис — Надстройки — Поиск решений (установить флажок)». Теперь данный инструмент можно будет найти на панели инструментов рабочего стола.
Рис. 2. Использование надстройки «Поиск решений»
В строке «Оптимизировать целевую функцию» будет стоять адрес оптимизируемой ячейки, в данном случае — $I$23. Выберем цель, поставив флажок «Минимум». В строке «Изменяя ячейки переменных» помещаются адреса ячеек, которые необходимо будет подобрать для достижения желаемого результата ($D$19:$Н$22).
В поле запишем ограничения в соответствии с ограничениями. Для этого воспользуемся кнопкой «Добавить», которая откроет окно «Добавить ограничения». Введем одно из ограничений:
$D$19:$H$22 = целое,
$D$12:$H$12 = $D$18:$H$18,
$J$8:$J$11 = $I$19:$I22.
Чтобы добавить следующее ограничение, в этом же окне нажмите на кнопку «Добавить». Результатом этого действия будет добавление текущего ограничения в список ограничений, а поля окна «Добавить ограничения» будут очищены для ввода следующего ограничения. После того как введено последнее из ограничений, необходимо нажать на кнопку «ОК».
Порядок ввода ограничений не имеет значения. Главное — не забыть ни одно из ограничений.
В данном примере все ограничения представлены в виде равенств. Но существуют задачи, в которых требуются ввести ограничения в виде неравенств. Например, в транспортных компаниях объем перевозимого груза не может превышать грузоподъемности автомобиля (или время работы автотранспортного средства не может превышать количества часов в сутки за вычетом нормативных простоев).
Очень важно правильно сформулировать ограничения. Для того чтобы не забыть ни одно из ограничений, необходимо правильно поставить задачу и определить ее цели. Не бывает мелочей в постановке задачи. В задаче о поставке деталей необходимо учесть, что количество деталей на складе на начало периода плюс количество поступивших за планируемый период деталей должно равняться сумме их остатка на складе на конец периода плюс количество отгруженных деталей за планируемый период. Или, например, количество деталей на начало планируемого периода должно равняться количеству деталей на конец периода, предшествующему планируемому.
Необходимо также помнить о том, что некоторые показатели могут быть только положительными значениями (например, сумма поступления от покупателя на расчетный счет поставщик). В данном случае в ограничениях целесообразно указать, что эта величина не может быть отрицательной, иначе надстройка «Поиск решений», вполне возможно, предложит в качестве решения отрицательное число.
Далее следует выбрать метод решения. Для этого необходимо определить, является модель линейной или нелинейной. Напомним, что линейной моделью является такая модель, связи в которой между данными для расчета и результирующим показателем можно описать линейными функциями. Линейная функция имеет следующий вид:
F(x) = a1 × x1 + а2 × x2 + … + аn × xn,
где a1, а2, …, аn — константы;
x1, x2, …, xn — переменные.
Данная модель является линейной.
Примером нелинейной модели является оптимизация перевозок с целью минимизации расходов, когда тарифы на перевозки распределены по интервалам:
- от 0 до 10 км — стоимость перевозки 200 руб.;
- от 11 до 20 км — стоимость перевозки 250 руб.;
- от 21 до 50 км — стоимость перевозки 500 руб. и т. д.
Вернемся к диалоговому окну «Параметры поиска решений». Далее нажимаем кнопку «Найти решение», в результате чего появится окно с результатом поиска решения. Так как нам необходимо сохранить найденный результат, то ставим флажок «Сохранить найденное решение», в результате чего на нашем листе сохранится найденное решение. Нажмем кнопку «ОК».
В ячейках $D$19:$Н$22 появляются подобранные системой значения, при которых в ячейке I23 формируется минимальное значение стоимости транспортных услуг — 35 000 руб.
В данном случае отклонения от подобранного нами вручную результата составляют лишь 2,2 %, или 790 руб., но это означает лишь то, что мы вручную удачно подобрали решение.
На рис. 3 представлены полученные при оптимизации данные.
Рис. 3. Результаты оптимизации
Для того чтобы использовать ссылки на ячейки в составе сценария, необходимо сохранить этот сценарий, нажав на кнопку «Сохранить сценарий» в окне «Результат поиска решения», введя имя сценария и нажав кнопку «ОК». При этом исходные данные сохраняются.
Таким образом, предоставлена возможность сохранить все варианты решений при изменении исходных данных. Затем можно создавать отчеты, по которым можно сравнивать влияние изменений исходных данных и ограничений на результат решения.
Существует одна важная деталь: при расчетах количества ездок лучше всего в ячейках J8:J11 использовать функцию округления, чтобы значения были целыми числами.
По этому случаю рассмотрим пример с другими исходными данными.
Пример 2
В ячейках J8:J11 запишем формулу, позволяющую округлить вычисляемые значения до целого числа, которая имеет вид:
Ячейка J8: =ОКРУГЛ(I8*$H$13;0).
Протащим (скопируем) эту формулу в ячейки J9:J11.
Как видим (рис. 4) плановое количество ездок в ячейке Н13 отличается от суммы в ячейках J8:J11, записанной в ячейке J12: значение в ячейке J12, полученное в результате суммирования округленных результатов расчетов числа ездок в ячейках J8:J11, не равно значению в ячейке Н13, полученному суммированием планового числа ездок до пунктов назначения. Это издержки примененной функции округления. Для того чтобы избежать данной ошибки, проделаем следующую процедуру. Для контроля и удобства вычислений введем проверочную ячейку J13. Формула в этой ячейке будет представлять собой разницу полученных значений в ячейках J12 и H13. Ячейка понадобится нам для коррекции вычислений.
Рис. 4. Пример с функцией округления расчетного числа ездок до целого числа
Используем для коррекции инструмент «Подбор параметра». Процедура подбора иллюстрируется на рис. 5.
Рис. 5. Использование инструмента «Подбор параметра»
Здесь необходимо применить следующую схему: подобрать в ячейке J13 значение равное 0, изменяя значение в ячейке I9 (доля в перевозках). Предварительно в ячейку I11 целесообразно ввести следующую формулу:
=100 % – I8 – I9 – I10.
Тогда при изменении значения в ячейке I9 в результате применения инструмента «Подбор параметра» автоматически изменится и значение в ячейке I11.
Так как в ячейках I8:I11 применено округление до целого значения, изменения в ячейках I9 и I11 на 0,25 % не обнаруживаются. Эти изменения будут видны, если мы добавим знаки после запятой.
Результат применения инструмента «Подбор параметра» приведен на рис. 6 (на с. …).
Необходимо проделать процедуры, что и в предыдущем примере (см. рис. 1, 2, 3). В ячейках D19:H22 распределим количество ездок для каждой транспортной компании до каждого пункта назначения, используя следующие ограничения:
D19:H22 = целое,
D12:H12 = D18:H18,
J8:J11 = I19:I22.
Сумма транспортных расходов в ячейке I23 на рис. 6 рассчиталась равной 49 540 руб., а наша задача — минимизировать ее.
Рис. 6. Скорректированный вариант
На рис. 7 представлена демонстрация использования инструмента «Поиск решений» для оптимизации результата.
Рис. 7. Минимизация значения в ячейке I23 с помощью надстройки «Поиск решения»
На рис. 8 в ячейках D19:Н22 представлены данные, полученные в ходе оптимизации с помощью инструмента «Поиск решений». В результате минимизации в ячейке I23 получено значение 44 990 руб. Отклонения от достигнутого при первоначальном распределении результата составило 9 %, или 4550 руб.
Возможно, имеет право на существование такой вопрос: «Для чего нужна табличная часть со стоимостями перевозок в разрезе транспортных компаний и пунктов назначений?». Ведь можно было бы просто в итоговую ячейку I23 ввести формулу:
=СУММПРОИЗВ(D8:D11;D19:D22)+СУММПРОИЗВ(E8:E11;E19:E22)+СУММПРОИЗВ(F8:F11;F19:F22)+СУММПРОИЗВ(G8:G11;G19:G22)+СУММПРОИЗВ(H8:H11;H19:H22).
Следует помнить следующее:
- строк и столбцов может быть достаточно большое количество. Это значит, что написание самой формулы в ячейках будет слишком трудоемкой задачей;
- потеряется возможность анализа данных по компаниям и пунктам назначения. Значит, целесообразнее использовать вспомогательную таблицу (в нашем примере это ячейки B23:I27), которая содержала бы множество простых формул. Эти формулы записываются всего в два мгновения: запись в одной из ячеек и копирование или протаскивание в остальные ячейки. Такая таблица несет в себе полезную для анализа информацию о стоимости транспортных услуг в разрезе перевозчиков и пунктов назначения.
Рис. 8. Результат оптимизации примера с округлением
Заключение
В данной статье рассмотрена простейшая задача, цель статьи — побудить экономистов использовать в расчетах инструмент Excel «Поиск решений», который удобен и прост в применении. Освоив и поняв данный инструмент, можно будет переходить к более сложным задачам.
Освоение работы с надстройкой «Поиск решений» даст преимущество в решении многих экономических задач: минимизация расходов при формировании состава сырья (например, на текстильных предприятиях), оптимизация раскроя (например, на швейных производствах), минимизация расходов при формировании штатного расписания, оптимизация расходов на изготовление при выборе ассортимента продукции, максимизация прибыли при формировании инвестиционной программы и др.
Статья опубликована в журнале «Планово-экономический отдел» № 11, 2012.
Рассмотрим пример решения задачи линейной оптимизации в Excel
Дана оптимизационная задача в виде таблицы
Ресурсы | Нормы затрат на изготовление 1 ед. кровати | Нормы затрат на изготовление 1 ед. шкафа | Общее количество ресурсов |
Сосна | 0,8 | 1,4 | 200 |
Дуб | 1,2 | 0,6 | 150 |
Трудоемкость (человеко-часов) | 4 | 5 | 800 |
Прибыль от продажи одной единицы | 9 | 11 |
По условию задачи составим целевая функция, которая будет иметь вид
Z=9x1+11x2
Ограничения
0,8x1+1,4x2≤200
1,2x1+0,6x2≤150
4x1+5x2≤800
x1,x2≥0
В Excel создаём таблицу с формулами, пример показан ниже
Формулы можно скопировать из этой таблицы
Переменные | |
x1 | x2 |
0 | 0 |
Функция целевая | =9*A4+11*B4 |
=0.8*A4+1.4*B4 | 200 |
=1.2*A4+0.6*B4 | 150 |
=4*A4+5*B4 | 800 |
Затем переходим на вкладку Данные -> Поиск решения
Выбираем ячейку, в которой надо оптимизировать целевую функцию, в нашем случае B5. Ставим галочку на максимум, затем выбираем ячейки с изменяемыми переменными это x1 и x2 – A4 и B4 и прописываем ограничения, нажимаем на кнопку добавить.
Из условия задачи значения выражений левой части меньше или равно значений правой части. Указываем сразу диапазон значений. Жмём на кнопку добавить ограничения.
И выбираем из списка метод решения – решения линейной задачи симплекс методом.
Вылетает информационное окно — результаты поиска решения, жмём Ок.
Переменные | |
x1 | x2 |
75 | 100 |
Функция целевая | 1775 |
200 | 200 |
150 | 150 |
800 | 800 |
В результате, в исходной таблице появятся значения неизвестных переменных и значение целевой функции. В итоги мы получили оптимизированные значения переменных, на этом задачи оптимизации линейного программирования решена.
4654