Теория оптимизации в excel

во втором поле выбрать оператор ограничения (>, Поиск решения).

Найденные решения (значения изменяемых ячеек) можно сохранить в качестве сценария. Для этого нужно:

  1. В диалоговом окне Результаты поиска решения выбрать Сохранить сценарий.
  2. В поле Название сценария ввести имя сценария. Просмотреть сценарии можно с помощью команды Данные > Работа с данными > Анализ что-если > Диспетчер сценариев > Сценарии.

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

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

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

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

Рассмотрим применение процессора Excel для решения ЗЛП на примерах.

Задача 1. Планирование производства

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

МП выпускает товары х1234, получая от реализации каждого прибыль в 60,70,120,130 руб. соответственно. Затраты на производство приведены в таблице.

Затраты х1 х2 x3 х4 Всего
Трудовые 1 1 1 1 16
Сырьевые 6 5 4 1 110
Финансы 4 6 10 13 100
  1. Максимум прибыли в зависимости от оптимального распределения затрат.
  2. Минимум ресурсов, необходимых для получения максимальной прибыли.

Решение задачи средствами Excel состоит из 4 этапов:

  1. Создание математической модели задачи ЛП.
  2. Создание формы для ввода условий задачи, ввод в неё исходных данных и зависимостей из математической модели.
  3. Ввод данных из формы в окно Excel Поиск решения из меню Данные.
  4. Задание параметров поиска и решение задачи.

Создание математической модели задачи

Составим математическую модель процесса по описанию задачи:

— целевая функция прибыли.

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

Для решения данной задачи 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

Таким образом оптимальный план Х(Х1234)=(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 создадим новую книгу с именем Линейное программирование и изменим имя ее второго рабочего листа на Задача о диете.

Таблица 1. Содержание питательных веществ в продуктах питания

Продукты/питательные вещества Хлеб ржаной Мясо баранина Сыр «Российский» Банан Огурцы Помидоры Виноград
Белки 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 .
  2. В ячейки ВЗ:НЗ введем значения коэффициентов целевой функции: с1 = 2060, с2 = 2430, с3 = 3600, с4 = 890, с5 = 140, с6 = 230, с7 = 650.
  3. В ячейку I2 введем формулу: =СУММПРОИЗВ( b 2:Н2;B3:H3), которая представляет целевую функцию (4).
  4. В ячейки В5:Н7 введем значения коэффициентов ограничений, взятых из таблицы.

  1. В ячейки J5 :J7 введем значения правых частей ограничений, соответствующих минимальной суточной потребности в питательных веществах: в белках b 1=100 , жирах b 2= 70 и углеводах b3 = 400.
  2. В ячейку I5 введем формулу: =СУММПРОИЗВ($B$2:$H$2;В5:Н5), которая представляет левую часть первого ограничения (5).
  3. Скопируем формулу, введенную в ячейку I5 , в ячейки I6 и I7 .
  4. Внешний вид рабочего листа MS Office Excel с исходными данными для решения задачи об оптимальном рационе питания имеет следующий вид (pиc. 12.4).

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

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

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

После появления диалогового окна Поиск решения следует выполнить следующие действия:

  1. В поле с именем Установить целевую ячейку: ввести абсолютный адрес ячейки $I$2 .
  2. Для группы Равной: выбрать вариант поиска решения – минимальному значению.
  3. В поле с именем Изменяя ячейки: ввести абсолютный адрес ячеек $B$2:$H$2 .
  4. Добавить 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 ккал.

ЗАДАНИЕ

  1. Составить математическую модель задачи линейного программирования.
  2. Решить задачу линейного программирования в Excel с помощью Поиска решения.
  3. Сохранить в виде модели установочные параметры.

Предприятие легкой промышленности выпускает две модели машин, причем каждая модель производится на отдельной технологической линии. Суточный объем производства первой линии – 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. Содержание питательных веществ в каждом из продуктов может быть задано в форме следующей таблицы (см. табл.).

Таблица 1. Содержание питательных веществ в продуктах питания

Продукты/питательные вещества Хлеб ржаной Мясо баранина Сыр «Российский» Банан Огурцы Помидоры Виноград
Белки 66 225 235 20 13 16 11
Жиры 17 177 295 1 1 7 7
Углеводы 425 0 0 217 31 43 200

Минимальная суточная потребность в питательных веществах следующая: в белках 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. Расход химических веществ на изготовления клея, их запас на складе

Вид клея /Химические вещества Клей № 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 = 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 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.

Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:

На основании этих данных составим рабочую таблицу:

  1. Количество изделий нам пока неизвестно. Это переменные.
  2. В столбец «Прибыль» внесены формулы: =200*B11, =250*В12, =300*В13.
  3. Расход сырья ограничен (это ограничения). В ячейки внесены формулы: =16*B11+13*B12+10*B13 («молоко»); =3*B11+3*B12+3*B13 («закваска»); =0*B11+5*B12+3*B13 («амортизатор») и =0*B11+8*B12+6*B13 («сахар»). То есть мы норму расхода умножили на количество.
  4. Цель – найти максимально возможную прибыль. Это ячейка С14.

Активизируем команду «Поиск решения» и вносим параметры.

После нажатия кнопки «Выполнить» программа выдает свое решение.

Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.

Решение финансовых задач в Excel

Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.

Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.

Оформим исходные данные в виде таблицы:

Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).

  1. Ставка – 20%/4, т.к. проценты начисляются ежеквартально.
  2. Кпер – 4*4 (общий срок вклада * число периодов начисления в год).
  3. Плт – 0. Ничего не пишем, т.к. депозит пополняться не будет.
  4. Тип – 0.
  5. БС – сумма, которую мы хотим получить в конце срока вклада.

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

Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка) кпер . Подставим значения: ПС = 400 000 / (1 + 0,05) 16 = 183245.

Решение эконометрики в Excel

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

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

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

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

Решение логических задач в Excel

В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, =, Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.

  1. Ставим курсор в ячейку С1. Нажимаем значок функций. Выбираем «ЕСЛИ».
  2. Заполняем аргументы. Логическое выражение – B1>=4. Это условие, при котором логическое значение – ИСТИНА.
  3. Если ИСТИНА – «Зачет сдал». ЛОЖЬ – «Зачет не сдал».

Решение математических задач в Excel

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

Условие учебной задачи. Найти обратную матрицу В для матрицы А.

  1. Делаем таблицу со значениями матрицы А.
  2. Выделяем на этом же листе область для обратной матрицы.
  3. Нажимаем кнопку «Вставить функцию». Категория – «Математические». Тип – «МОБР».
  4. В поле аргумента «Массив» вписываем диапазон матрицы А.
  5. Нажимаем одновременно Shift+Ctrl+Enter — это обязательное условие для ввода массивов.

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

источники:

http://intuit.ru/studies/courses/3659/901/lecture/32717

http://exceltable.com/vozmojnosti-excel/poisk-resheniya-v-excel

На этой странице вы найдете примеры решений различных оптимизационных задач с использованием пакета электронных таблиц MS Excel (используется как надстройка Поиск решения, так и ручные вычисления).

Задачи оптимизации и Excel

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

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

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

Алгоритм решения с помощью надстройки «Поиск решения» следующий:

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

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

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

Полезная страница? Сохрани или расскажи друзьям

Задачи оптимизации: примеры в Excel

Задача 1. Намечается крупномасштабное производство легковых автомобилей. Имеются четыре варианта проекта автомобиля $R_j$. Определена экономическая эффективность $К$ — каждого проекта в зависимости от рентабельности производства. По истечении трех сроков $S_i$ рассматриваются как некоторые состояния среды (природы). Значения экономической эффективности для различных проектов и состояний природы приведены в следующей таблице (д. е.):

таблица эффективности проектов
Выберите оптимальное решение в соответствии с критериями Лапласа, Вальда, Сэвиджа и Гурвица (при $а = 0,5$).

Задача 2. Для производства двух видов изделий А и В предприятие использует три вида сырья. Нормы расхода каждого вида сырья на изготовление единицы продукции данного вида в таблице 6. В ней же указаны прибыль от реализации единицы изделия каждого вида и общее количество сырья данного, которое может быть использовано предприятием.
Требуется такой составить такой план производства изделий А и В, при котором прибыль от реализации будет максимальной?

Задача 3. Фирма N, имеющая филиалы (k), производит продукцию. Каждый филиал фирмы выпускает четыре вида продукции из пяти (i=1-5). Данные, характеризующие производство филиалов $b_{ki}$, приведены в табл.1.
Филиалы фирмы закупают сырье, из которого производят продукцию, у семи АО (j =1-7). Выход готового продукта из 1 тонны сырья $a_{ij}$ показан в табл.2.
Прибыль филиалов фирмы при закупке 1тн сырья у разных АО, $С_{kj}$ , показана в табл.3.
В разделе 1 работы требуется:
1.1.Определить количество закупаемого заданным филиалом фирмы сырья у каждого АО, ($x_j$), максимизируя прибыль филиала. Далее, студент формулирует экономико-математическую модель общей задачи линейного программирования (ОЗЛП).
1.2.С помощью полученных в результате реализации модели отчетов сделать рекомендации филиалу фирмы по расширению программы выпуска ассортимента продукции.

Задача 4. Для изготовления одного пирожка требуется 0,8 ед. начинки и 4 ед. теста, одного пирожного 4 ед. начинки и 0,5 ед. теста, одного рулета 2 ед. начинки и 2,5 ед. теста. Сколько пирожков, пирожных и рулетов нужно сделать кондитерской, если в наличии имеется 120 ед. теста и 300 ед. начинки?
Определите доход от реализации кондитерских изделий, если доход от продажи одного пирожка составляет 3 рубля, одного пирожного 2 рубля, одного рулета 1,5.
Для решения задачи используется ППП Excel.

Задача 5. Менеджер проекта по строительству нового торгового гипермаркета компании Наше дело надеется завершить проект за пару недель до Рождества.
После обзора оценок времени выполнения отдельных стадий выяснилось, что потребуются дополнительные инвестиции, чтобы сократить длительность проекта так, чтобы он действительно завершился вовремя. В таблице приведены оценки длительностей стадий и стоимость их сокращения на 1 и на 2 недели.
a. Нарисуйте сетевую диаграмму проекта и найдите критический путь.
b. Определите минимальную стоимость сокращения проекта на 5 недель.

Решаем задачи вручную и в Excel с отчетом

Полезные ссылки

  • Решение транспортной задачи в Excel
  • Решение ЗЛП в Excel
  • Другие виды задач, решаемые в Эксель
  • Готовые контрольные по ЛП

Методички

  • Решение оптимизационных задач в среде MS Excel 2013 Методические указания небольшого объема. Разобраны стандартные задачи: ЛП, транспортная, нелинейная, приведены скриншоты решения и пояснения.
  • Решение задач оптимизации в Microsoft Excel 2010 Учебное пособие ТОГУ, 101 страница, более увесистый и подробный документ. Разбирается надстройка Поиск решения, решение задач линейного и нелинейного программирования и СЛАУ.

Рассмотрим пример решения задачи линейной оптимизации в 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 создаём таблицу с формулами, пример показан ниже

Таблица в 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

Затем переходим на вкладку Данные -> Поиск решения

анализ данных и поиск решения Excel

Выбираем ячейку, в которой надо оптимизировать целевую функцию, в нашем случае B5. Ставим галочку на максимум, затем выбираем ячейки с изменяемыми переменными это x1 и x2A4 и B4 и прописываем ограничения, нажимаем на кнопку добавить.

Параметры поиска решения Добавление ограничения

Из условия задачи значения выражений левой части меньше или равно значений правой части. Указываем сразу диапазон значений. Жмём на кнопку добавить ограничения.

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

И выбираем из списка метод решения – решения линейной задачи симплекс методом.

Параметры поиска решения симплекс метод решения линейной задачи в excel

Вылетает информационное окно — результаты поиска решения, жмём Ок.

Результаты поиска решения

решение задачи линейной оптимизации в excel

Переменные
x1 x2
75 100
Функция целевая 1775
200 200
150 150
800 800

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

4708


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

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

Решение задач оптимизации в Excel

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

В Excel для решения задач оптимизации используются следующие команды:

Для решения простейших задач применяется команда «Подбор параметра». Самых сложных – «Диспетчер сценариев». Рассмотрим пример решения оптимизационной задачи с помощью надстройки «Поиск решения».

Условие. Фирма производит несколько сортов йогурта. Условно – «1», «2» и «3». Реализовав 100 баночек йогурта «1», предприятие получает 200 рублей. «2» — 250 рублей. «3» — 300 рублей. Сбыт, налажен, но количество имеющегося сырья ограничено. Нужно найти, какой йогурт и в каком объеме необходимо делать, чтобы получить максимальный доход от продаж.

Известные данные (в т.ч. нормы расхода сырья) занесем в таблицу:

Известные данные.

На основании этих данных составим рабочую таблицу:

Рабочая таблица.

  1. Количество изделий нам пока неизвестно. Это переменные.
  2. В столбец «Прибыль» внесены формулы: =200*B11, =250*В12, =300*В13.
  3. Расход сырья ограничен (это ограничения). В ячейки внесены формулы: =16*B11+13*B12+10*B13 («молоко»); =3*B11+3*B12+3*B13 («закваска»); =0*B11+5*B12+3*B13 («амортизатор») и =0*B11+8*B12+6*B13 («сахар»). То есть мы норму расхода умножили на количество.
  4. Цель – найти максимально возможную прибыль. Это ячейка С14.

Активизируем команду «Поиск решения» и вносим параметры.

Параметры настройки.

После нажатия кнопки «Выполнить» программа выдает свое решение.

Результат решения.

Оптимальный вариант – сконцентрироваться на выпуске йогурта «3» и «1». Йогурт «2» производить не стоит.



Решение финансовых задач в Excel

Чаще всего для этой цели применяются финансовые функции. Рассмотрим пример.

Условие. Рассчитать, какую сумму положить на вклад, чтобы через четыре года образовалось 400 000 рублей. Процентная ставка – 20% годовых. Проценты начисляются ежеквартально.

Оформим исходные данные в виде таблицы:

Исходные данные.

Так как процентная ставка не меняется в течение всего периода, используем функцию ПС (СТАВКА, КПЕР, ПЛТ, БС, ТИП).

Заполнение аргументов:

  1. Ставка – 20%/4, т.к. проценты начисляются ежеквартально.
  2. Кпер – 4*4 (общий срок вклада * число периодов начисления в год).
  3. Плт – 0. Ничего не пишем, т.к. депозит пополняться не будет.
  4. Тип – 0.
  5. БС – сумма, которую мы хотим получить в конце срока вклада.

Параметры функции БС.

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

Результат функции БС.

Для проверки правильности решения воспользуемся формулой: ПС = БС / (1 + ставка)кпер. Подставим значения: ПС = 400 000 / (1 + 0,05)16 = 183245.

Решение эконометрики в Excel

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

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

Диапазон значений.

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

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

Функция КОРРЕЛ.

Решение логических задач в Excel

В табличном процессоре есть встроенные логические функции. Любая из них должна содержать хотя бы один оператор сравнения, который определит отношение между элементами (=, >, <, >=, <=). Результат логического выражения – логическое значение ИСТИНА или логическое значение ЛОЖЬ.

Пример задачи. Ученики сдавали зачет. Каждый из них получил отметку. Если больше 4 баллов – зачет сдан. Менее – не сдан.

Пример задачи.

  1. Ставим курсор в ячейку С1. Нажимаем значок функций. Выбираем «ЕСЛИ».
  2. Заполняем аргументы. Логическое выражение – B1>=4. Это условие, при котором логическое значение – ИСТИНА.
  3. Если ИСТИНА – «Зачет сдал». ЛОЖЬ – «Зачет не сдал».

Решение задачи.

Решение математических задач в Excel

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

Условие учебной задачи. Найти обратную матрицу В для матрицы А.

  1. Делаем таблицу со значениями матрицы А.
  2. Выделяем на этом же листе область для обратной матрицы.
  3. Нажимаем кнопку «Вставить функцию». Категория – «Математические». Тип – «МОБР».
  4. В поле аргумента «Массив» вписываем диапазон матрицы А.
  5. Нажимаем одновременно Shift+Ctrl+Enter — это обязательное условие для ввода массивов.

Результат выполнения массива.

Скачать примеры

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

Лазаренко Виктория Сергеевна студент, Ставропольский государственный педагогический институт, РФ, г. Ставрополь Кузина Наталья николаевна научный руководитель, Старший преподаватель кафедры математики и информатики, Ставропольский государственный педагогический институт, РФ, г. Ставрополь

« РЕАЛИЗАЦИЯ МНОГОМЕРНЫХ ЗАДАЧ ОПТИМИЗАЦИИ В excel» Аннотация: В статье рассмотрены основные методы многомерной оптимизации, ПРИВЕДЁН ПРИМЕР РЕАЛИЗАЦИИ ЗАДАЧИ БЕЗУСЛОВНОЙ ОПТИМИЗАЦИИ (МЕТОДА ПОКООРДИНАТНОГО СПУСКА) В среде Excel. КЛЮЧЕВЫЕ СЛОВА: многомерная оптимизация, условная оптимизация, БЕЗУСЛОВНАЯ ОПТИМИЗАЦИЯ.

Введение

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

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

Численные методы многомерной оптимизации

Численные методы оптимизации различаются по характеру изменения целевой функции: если нет никаких ограничений ни на изменение независимых переменных, ни на значения целевой функции, то это методы безусловной оптимизации. Сущность методов безусловной оптимизации состоит в поиске минимуму функции Y = Dх) путем многократных вычислений, при различных значениях параметров х = {xk}, k = 0, 1, 2, …, причем на каждом k-м шаге вычислений контролируют выполнение условий. При наличии каких-либо ограничений используются методы условной оптимизации. Задача условной оптимизации заключается в поиске минимального или максимального значения скалярной функции f(x) n-мерного векторного аргументах. Решение задачи основывается на линейной или квадратичной аппроксимации целевой функции для определения приращений x1, …,xn на каждой итерации.

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

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

Безусловная оптимизация: Метод покоординатного спуска;

Безусловная оптимизация: метод наискорейшего спуска;

Безусловная оптимизация: подпрограмма EXCEL “Поиск решения”;

Условная оптимизация: метод штрафных функций;

Условная оптимизация: подпрограмма EXCEL “Поиск решения”;

Условная оптимизация: линейное программирование.

Рассмотрим наиболее подробно безусловную оптимизацию, её методы и реализацию примера в Excel.

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

а) формулу целевой функции f(X1,X2, … , Xn),

б) Е — точность нахождения значений независимых переменных, при которых функция достигает минимума,

в) начальные приближения X10,X20 … , Xn0.

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

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

Условие задачи: число независимых переменных равняется двум. Ограничения отсутствуют. Требуется найти минимум функции

u = (X2-X12)2+ (1-X1)2

из начальной точки (0,5;0,5) c точностью 0,0001. Проанализировав функцию, заметим, что она будет иметь минимум, равный нулю. Для чего и первое, и второе слагаемое тоже должны быть равны нулю. Откуда координаты точки минимума (1;1).

Решим эту задачу на EXCEL. Откроем новый рабочий лист, где столбец А -значения X1, столбец В — значения X2, а столбец С — значения целевой функции и, наконец, столбец D — значения погрешности D.

Занесем в ячейки А3 и В3 значения начальных приближений, равных 0,5 и в ячейку С3 формулу =(В3-А3^2)^2+(1-A3)^2. Скопируем эту формулу в блок ячеек С4:С17. На этом заканчивается подготовительный этап.

Опишем первую итерацию пошагово:

1 шаг. Скопируем содержимое ячейки В3 в ячейку В4. Сделаем текущей ячейку С4. Процесс одномерной оптимизации для нахождения X1выполним с помощью подпрограммы EXCEL Поиск решения. Вызовем эту подпрограмму командой меню Сервис- Поиск решения.

2 шаг. Скопируем содержимое ячейки А4 в ячейку А5. Сделаем текущей ячейку С5. Дадим команду меню Сервис- Поиск решения. В открывшемся диалоге в поле Установить целевую ячейку занесем адрес С5, а в поле Изменяя ячейки — адрес В5. В результате в ячейке В5 получим числовое значение, при котором целевая функция достигает минимального значения в ячейке С5 по координате X2.

3 шаг. Занесем в ячейку D5 формулу =ABS(A3-A5)+ABS(B3-B5) для вычисления погрешности решения на первом шаге. На этом заканчивается первая итерация.

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

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

Реализация метода покоординатного спуска представлена в Excel на рисунке 1.

Рисунок 1. Метод покоординатного спуска

Заключение

Сегодня оптимизационные задачи и задачи принятия решений моделируются и решаются в самых различных областях техники [1]. К навыкам математического обоснования принятия решений относятся навыки математического моделирования оптимизационных задач, выбора адекватного математического обеспечения (метода, алгоритма, программной системы) с необходимым обоснованием.

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

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

Список литературы

1. Корнеенко В. П. Методы оптимизации: Учебник / В. П. Корнеенко. — М.: Высш. шк., 2007.

2. Пантелеев А. В. Методы оптимизации в примерах и задачах: Учеб. пособие / А. В. Пантелеев, Т. А. Летова. — М.: Высш. шк., 2005.

3. Батищев Д. И. Оптимизация в САПР: Учебник / Д. И. Батищев, Я. Е. Львович, В. Н. Фролов. — Воронеж: Изд-во ВГУ, 1997.

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

Для активизации процедуры “Поиска решения” в
Excel необходимо выполнить команду: главное меню
“Сервис” —> “Надстройки” —> “Поиск
решения” —> “ОК”. В случае если “Поиск
решения” не устанавливается, то необходимо
обратиться к системному администратору для
установки надстройки.

Введение

С древних времен человека интересовали задачи
связанные с отысканием наименьших и наибольших
величин. Бурный рост промышленности в XVII-XVIII
веках привел к необходимости исследования более
сложных задач на экстремум. Однако лишь в XX веке
при огромном размахе производства и осознании
ограниченности ресурсов Земли стала актуальной
задача оптимального использования энергии,
материалов, рабочего времени. Большую
актуальность приобрели вопросы наилучшего
управления различными процессами физики,
техники, экономики, управления и др. Сюда
относятся:

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

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

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

1. Задача об оптимальных перевозках (на
скорейшее достижение точки назначения)

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

  • по кратчайшему пути от точки Б (бригада) до точки
    Г (город), при этом скорость эвакуатора будет
    равна скорости движения по полю, Vполя = 25
    км/ч;
  • сначала по кратчайшему пути на дорогу от точки Б
    до точки Д (дорога), со скоростью Vполя = 25
    км/ч, потом по дороге от точки Д до точки Г со
    скоростью Vдор = 80 км/ч;
  • сначала в некоторую точку Е на дороге, со
    скоростью Vполя, а потом по дороге до точки
    Г со скоростью Vдор.

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

Математической модель.

1) Оптимизируемая величина – время движения,
т.к. в задаче требуется выяснить, когда время
будет наименьшим. Обозначим время буквой t, а
маршрут движения – буквами БЕГ.

2) Время зависит от расстояния, поэтому
обозначим расстояние ДЕ=х.

Тогда ЕГ=ДГ-ЕГ=25-х (км), т.к. по т. Пифагора БД
=
(км).
Т.о., реальные границы изменения независимой
переменной 0< х< 25.

3) Для вычисления tдвижения также
найдем по теореме Пифагора расстояние БЕ=(км),
тогда (ч), хI [ а;в] .

Работа с составленной моделью.

На этом этапе для функции (ч), хI [ а;в] нужно
найти tнаим. Для этого найдем
производную . Для нахождения критической точки
решим уравнение t’=0, т.е.

т.к.

Найдя t(0) 0,97582, t(10) 0,942), t(25)1,2 и
сравнив их, получим tнаим= t(5,455447).

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

  A B C D
1 ДГ= 2500 м Заполняем ячейки А1:С4 исходя из
условия задачи
2 БГ= 3000 м
3 Vполя= 25,0 км/ч
4 Vдороги= 130 км/ч
5 ДЕ=Х 1000 м Вводим изначально любое число, <= 2500 м
6 БГ2-ДГ2= 2750000 м2 По т. Пифагора квадрат В6=(В2)2–(В1)2
7 БД= 1658,312 м БД= корень(В6)
8 БЕ2= 3750000 м2 Вводим формулу: = (В7)2+(В5)2
9 БЕ= 1936,492 м В9=корень(В8)
10 t= 77,46 мин Время = Расстояние/Скорость,
поэтому

вводим формулы: В10=В9/В3 и В11=(В1–В5)/В4

11 tег= 11,53846 мин
12 tобщ= 89,00 мин В12=В11+В10 и В12 в итоге должна быть
минимальной

Заполнив таблицу, выделяем ячейку В12 и
выполняем команду: “Сервис” —> “Поиск
решения”.

В появившемся диалоговом окне “Поиск решения”
устанавливаем целевую ячейку $B$12 равную
минимальному значению. Изменяя ячейку $B$5,
добавляем ограничения: $B$5<=$B$1 и $B$5>=0.

После указания всех ограничений, задаем
Параметры поиска решения: Линейная модель,
Неотрицательные значения, ОК. После этого
нажимаем команду “Выполнить”, предоставляя
компьютеру ПК самостоятельно найти решение.

В результате решение задачи выглядит следующим
образом: Для транспортировки неисправной
техники в город эвакуатор должен попасть сначала
в некоторую точку Е на дороге, удаленную от точки
Д на 545,5447 метров, со скоростью 25
км/ч, а потом по дороге со скоростью 80 км/ч. При
этом бригада рабочих проделает путь: БЕ+ЕГ = =37 км, а время, затраченное на
доставку неисправной техники, будет наименьшим tобщее=0,94 мин.

  А В С
1 ДГ= 25 км
2 БГ= 30 км
3 Vполя= 25 км/ч
4 Vдороги= 80 км/ч
5 ДЕ=Х 5,455447 км
6 БГ2-ДГ2= 275 км2
7 БД= 16,58312 км
8 БЕ2= 304,7619 км2
9 БЕ= 17,45743 км
10 tполя= 0,70 ч
11 tдороги= 0,244307 ч
12 tобщ= 0,94 ч
13 БЕГ 37,00 км

2. Производственная задача теории
оптимизации

В автосервисе “Восток” в бригаде №1 работают
трое рабочих: Федор (токарь), Петр (электрик),
Ришат (сборщик). За месяц Федор способен
отработать 400 ч, Петр — 200 ч, Ришат — 500 ч. Фирма на
имеющемся у нее оборудовании способна оказывать
четыре вида услуг: “А”, “Б”, “В”, “Г”.
Известно, что услуга “А” принесет прибыль в
размере 4 $, услуга “Б” — 2$, услуга “В” — 5$, услуга
“Г” — 8$. Решить задачу – это значит выяснить
какие услуги нужно оказать, чтобы общая прибыль
фирмы была максимальной. Заполняем таблицу в
соответствии с условием задачи: на первом этапе
объем услуг берем произвольным: В13=5, С13=6, D13=7, E13=8.

В15: = В13*В7

С15: = С13*С7

D15: = D13*D7

E15: = Е13*Е7

F15: = СУММ(В13:Е13)

G15: = F15 / В22

В18: = B$13*B4

копируем формулу до Е20

F18: = СУММ(B18:E18)

копируем формулу до F20

G18: = F4-F18

копируем формулу до G20

Выделяем ячейку F15, выполняем команду:
“Сервис” —> “Поиск решения…” Устанавливаем
целевую ячейку $F$15 равной максимальному
значению, изменяя ячейки: $B$13: $E$13. После указания
всех ограничений, задаем Параметры поиска
решения: Линейная модель, Неотрицательные
значения. Возвращаемся в окно “Поиск решения” и
при помощи кнопки Применить, находим оптимальное
решение транспортной задачи методом линейного
программирования.

Решением задачи является нахождение объема
производства и суммарной прибыли, равной 964800 руб.

Эта прибыль будет наибольшей, если предприятие
будет оказывать услуги вида “А” и “Г”.

3. Транспортная задача

Дано семь наименований различного
оборудования: станки, трубы, буровое
оборудование, отделочный камень, промышленные
электромоторы, кабель. Из таблицы известны
количество и вес груза. Оборудование развозится
на трёх грузовиках марки Краз-256,
грузоподъёмностью 28 тонн.

  A B C D E F G
1 Наименование оборудования Количество (по плану) Вес единицы груза, кг Первый грузовик Второй грузовик Третий грузовик Количество (по факту)
2 Станки (штуки) 11 850 0 0 0 0
3 Трубы (упаковка) 4 1930 0 0 0 0
4 Буровое оборудование (ящики) 2 1700 0 0 0 0
5 Отделочный камень (ящики) 4 12500 0 0 0 0
6 Промышленные электромоторы (штуки) 7 730 0 0 0 0
7 Кабель (бухты) 5 1100 0 0 0 0
8     Итого: 0 0 0  
9              
10       ЦФ 27026,66667    

В столбцах D, E и F должны находиться числа,
определяющие, сколько единиц данного груза берёт
соответствующей грузовик – это и будет решением
транспортной задачи по распределению грузов.

Ячейки интервала D2:F7 заполняем нулями.

В ячейке G2 должна стоять формула: =D2+E2+F2, в ячейке
G3: =D3+E3+F3, в ячейке G4: =D4+E4+F4, в ячейке G5: =D5+E5+F5, в
ячейке G6: =D6+E6+F6, в ячейке G7: =D7+E7+F7, так как важно,
чтобы количество по плану совпадало с
количеством по факту. Перед тем как начинать
распределение груза, необходимо заполнить
формулами ячейки D8, E8, F8.

D8: =$C$2*D2+$C$3*D3+$C$4*D4+$C$5*D5+$C$6*D6+$C$7*D7

E8: =$C$2*E2+$C$3*E3+$C$4*E4+$C$5*E5+$C$6*E6+$C$7*E7

F8: =$C$2*F2+$C$3*F3+$C$4*F4+$C$5*F5+$C$6*F6+$C$7*F7

E10: =(B2*C2+B3*C3+B4*C4+B5*C5+B6*C6+B7*C7)/3, которая контролирует
грузоподъёмность (Е10 — целевая функция)

Главное в задаче — таким образом распределить
товары, чтобы загрузка каждой автомашины не
превышала 27 тонн более чем на 100 кг.

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

Выделяем ячейку Е10, и выполним команду: Сервис,
Поиск решения…

Устанавливаем целевую ячейку: $E$10, равной
максимальному значению, Изменяя ячейки: $D$2:$F$7,
добавляем ограничения:

$D$2:$F$7=целое, $D$2:$F$7>=0, $D$8<=27100, $F$8<=27100, $D$8<=27100,
$F$8<=27100, $G$2=11, $G$3=4, $G$4=2, $G$5=4, $G$6=7, $G$7=5.

После указания всех ограничений, задаем
Параметры поиска решения: Линейная модель,
Неотрицательные значения. Возвращаемся в окно
“Поиск решения” и при помощи кнопки Применить,
находим оптимальное решение транспортной задачи
методом линейного программирования. Решением
задачи является распределение оборудования по
трем грузовикам

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

  A B C D E F G
1 Наименование оборудования Количество (по плану) Вес единицы груза, кг Первый грузовик Второй грузовик Третий грузовик Количество (по факту)
2 Станки (штуки) 11 850 4 1 6 11
3 Трубы (упаковка) 4 1930 1 0 3 4
4 Буровое оборудование (ящики) 2 1700 2 0 0 2
5 Отделочный камень (ящики) 4 12500 1 2 1 4
6 Промышленные электромоторы (штуки) 7 730 2 0 5 7
7 Кабель (бухты) 5 1100 4 1 0 5
8     Итого: 27090 26950 27040  
9              
10       ЦФ 27026,66667    

Заключение

Представленные в данной статье
параметрические задачи успешно решены
средствами компьютерной программы Ms Excel.

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

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

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

В данной статье рассматривается расчет инструмента 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
для решение оптимизационных задач.

5.1.
Основные этапы решения оптимизационных
задач в
Excel

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

  1. Разработка
    математической модели.

2. Перенос модель
в электронную таблицу.

  1. Решение
    оптимизационной задач с помощь программы
    надстройки ПОИСК
    РЕШЕНИЯ

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

Этап 1.
Разработка математической модели.

Пример
1
(задача
о смесях). Стандартом предусмотрено,
что октановое число автомобильного
бензина А-76 должно быть не ниже 76, а
содержание серы в нем – не более 0,3%. Для
изготовления такого бензина на заводе
используется смесь из четырех компонентов.
Данные о ресурсах смешиваемых компонентов,
их себестоимости и их октановом числе,
а также о содержании серы приведены в
таблице

Характеристика

Компонент
автомобильного

бензина

№ 1

№2

№ 3

№4

Октановое
число

68

72

80

90

Содержание серы,
%

0,35

0,35

0,3

0,2

Ресурсы, т

700

600

500

300

Себестоимость,
ден.ед./т

40

45

60

90

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

Решение.
Для решения этой задачи сформулируем
ее экономико-математическую модель,
т.е. сформулируем задачу математически.
Введем необходимые обозначения: пусть
xj
(
j
=
1,2,3,4) – количество в смеси компонента
с номером j.
С
учетом этих обозначений имеем задачу
(критерий оптимальности – «минимум
себестоимости»):

min
f()
= 40x1
+ 45x2
+ 60x3
+ 90x4,

x1
+ х
2
+ х
3
+ x
4
= 1000, (1)

68x1
+ 72x2
+ 80x3
+ 90x4

76 • 1000, (2)

0,35x1
+ 0,35x2
+ 0,3x3
+ 0,2x4
≤ 0,3 • 1000, (3)

x1

700,

x2

600,

x3

500,

x4

300,

xj

0,
j
=
1,2,3,4.

Функциональное
ограничение (1) отражает необходимость
получения заданного количества смеси
(1 000 т), (2) и (3) – ограничения по октановому
числу и содержанию серы в смеси, остальные
– ограничения на имеющиеся объемы
соответствующих ресурсов (компонентов).
Прямые ограничения очевидны, но
принципиально важны для выбора метода
решения.

Полученная
математическая задача – задача линейного
программирования.

Этап
2.

Перенос модель в электронную таблицу.

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

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

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

Для рассматриваемой
задачи предлагается следующий вид
таблицы данных:

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

  1. В одной из ячеек
    создайте формулу, соответствующую
    целевой функции алгебраической модели.

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

Этап
3.

Решение оптимизационной задач с помощь
программы надстройки ПОИСК
РЕШЕНИЯ

Программа
ПОИСК
РЕШЕНИЯ

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

Прежде
всего следует заметить, что программа
ПОИСК
РЕШЕНИЯ

оперирует с тремя основными компонентами
построенной в ЭТ оптимизируемой модели:

  • ячейкой,
    содержащей целевую функцию задачи
    (ячейка G5);

  • изменяемыми
    ячейками, содержащими независимые
    переменные (С4:F4);

  • ячейками,
    содержащими левые части ограничений
    на имеющиеся ресурсы, простые ограничения
    на независимые переменные и знаки
    ограничений (в Табл. 7.12 это — ячейки
    G10:I23).

Постановка
задачи осуществляется в диалоговом
окне Поиск
решения,
где
пользователю предлагается указать ряд
параметров (см. Рис. 7.1).


Рис. 7.1. Диалоговое
окно «Поиск решения»

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

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

Рис. 7. 2. Диалоговое
окно «Добавить ограничение»

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

В нашем примере
необходимо задать таким образом 11
ограничений.

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

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

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

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

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

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

Рис. 7. 3. Диалоговое
окно «Параметры поиска решения»

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

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

Рис. 7.4. Диалоговое окно «Результаты
поиска решения»

Если
установлена опция Восстановить
исходные значения
и
не задано составление отчета, то найденные
значения будут удалены.

Найденные значения
могут быть также сохранены как сценарий.

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

Отчет
по результатам

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Like this post? Please share to your friends:
  • Теория игр с помощью excel
  • Теория игр решение excel
  • Теория игр информатика егэ excel
  • Теория для формул excel
  • Теория вероятностей в word