АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

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

Читайте также:
  1. I. Постановка вопроса
  2. I. Прокурор: понятие, положение, функции и профессиональные задачи.
  3. I. СУЩНОСТЬ, ЦЕЛЬ И ЗАДАЧИ КУРСОВОЙ РАБОТЫ
  4. I. ЦЕЛИ И ЗАДАЧИ ОСВОЕНИЯ ДИСЦИПЛИНЫ
  5. II. Задачи территориального фонда
  6. II. ОСНОВНЫЕ ЦЕЛИ И ЗАДАЧИ КОНЦЕПЦИИ
  7. II. Основные цели и задачи Программы, срок и этапы ее реализации, целевые индикаторы и показатели
  8. II. Цели и задачи Конкурса
  9. II. ЦЕЛИ И ЗАДАЧИ КУРСА
  10. III. Задачи Фестиваля
  11. IV. Решите задачи.
  12. IV. Решите задачи.

 

Для решения задач линейного программирования в MS Excel используют надстройку Поиск решения, которая вызывается из пункта главного меню «Сервис» (рис. 2.208). Для версии MS Excel 2007 и выше, Поиск решения находится на вкладке Данные в группе Анализ.

Если в версии Excel, установленной на Вашем компьютере, отсутствует данный подпункт меню, необходимо вызвать пункт меню «Надстройки» и в предложенном списке дополнительных модулей выбрать «Поиск решения» (рис. 2.209). Для версии MS Excel 2007 и выше Надстройки вызываются через кнопку Microsoft Office , Параметры Excel.

 

Рис. 2.208.   Рис. 2.209

 

Рассмотрим использование данной надстройки на примере:

Фабрика выпускает пряжу двух видов: П1 и П2. Продукция поступает в оптовую продажу. Для производства используется три вида сырья – шерсть, капрон и акрил. Максимально возможные суточные запасы этих материалов составляют 6, 8 и 5 тонн соответственно. Расходы сырья на партию пряжи и оптовые цены приведены в таблице:

 

Таблица

Сырьё Расход сырья на 1 партию пряжи Запас, тонн
П1 П2
шерсть      
капрон      
акрил   0,8  
оптовая цена партии, тыс.у.е.      

 

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

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

 

Математическая модель задачи имеет вид:

при ограничениях

 

Решим эту задачу с помощью надстройки Поиск решения в MS Excel.

Составим шаблон в редакторе Excel, как показано на рис. 2.210

 

Рис.2.210. Шаблон оформления задачи

 

Теперь занесём числовую информацию, данную в задаче (рис.2.211).

 

Рис.2.211. Исходные данные задачи

 

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

Ячейки B4 – С4 называются в Excel изменяемыми (в нашей модели это неизвестные переменные), т.е., изменяя их, Поиск решения будет находить оптимальное значение целевой функции. Значения, которые первоначально вводят в эти ячейки, обычно нули (незаполненные клетки трактуются по умолчанию как содержащие нулевые значения).

Теперь необходимо ввести формулы. В нашей математической модели, целевая функция представляет собой произведение вектора коэффициентов на вектор неизвестных. Действительно, выражение можно рассматривать как произведение вектора (3,2) на вектор (Х12).

В Excel существует функция СУММПРОИЗВ, которая позволяет найти скалярное произведение векторов. В ячейку Е4 необходимо вызвать данную функцию, а в качестве перемножаемых векторов задать адреса ячеек, содержащих коэффициенты уравнений (в данном случае, это В5:С5) и ячеек, в которые в результате решения будут помещены значения Х1 и Х2 (ячейки В4:С4) (рис. 2.212).

 

Рис.2.212. Вызов функции СУММПРОИЗВ

 

Каждая левая часть ограничения тоже представляет собой произведение двух векторов: соответствующей строки матрицы затрат и вектора неизвестных. То есть, выражение Х1+2Х2 (для первого ограничения Х1 + 2Х2 6) будем рассматривать как произведение вектора коэффициентов (1,2) и вектора переменных (Х12).

В ячейке, отведенной для формулы левой части первого ограничения (D9), вызовем функцию СУММПРОИЗВ. В качестве адресов перемножаемых векторов занесем адрес строки коэффициентов В9:С9 и адрес значений переменных В4:С4 (рис. 2.213).

 

Рис.2.213.

 

В четыре оставшиеся ячейки графы «Левая часть» вводим аналогичные формулы, используя соответствующую строку матрицы затрат. Фрагмент экрана с введёнными формулами показан на рис.2.214.

 

Рис.2.214.

 

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

В меню Сервис выбираем Поиск решения. В появившемся окне задаём следующую информацию:

а) в качестве целевой ячейки устанавливаем адрес ячейки для значения целевой функции Е4;

б) «флажок» устанавливаем на вариант «максимальному значению», т.к. в данном случае, целевая функция дохода подлежит максимизации;

в) в качестве изменяемых ячеек заносится адрес строки значений переменных В4:С4;

г) справа от окна, предназначенного для занесения ограничений, нажимаем кнопку «Добавить», появится форма для занесения ограничения (рис. 2.215)

 

Рис.2.215. Форма для занесения одного ограничения ЗЛП   Рис.2.216. Занесение первого ограничения задачи  

д) в левой части формы «Ссылка на ячейку» заносится адрес формулы для левой части первого ограничения D9, выбирается требуемый знак неравенства (в нашем случае, <=), в поле «Ограничение» заносится ссылка на правую часть ограничения F9 (рис. 2.216).

е) аналогично заносятся все ограничения задачи, после чего нажимается кнопка «ОК».

Таким образом, окно «Поиск решения» с занесенной информацией выглядит следующим образом (рис.2.217):

 

Рис.2.217.

Далее необходимо нажать кнопку Параметры, установить «флажки» «Линейная модель» и «Неотрицательные значения», поскольку в данном случае задача является ЗЛП, а ограничение 6) требует неотрицательности значений (рис.2.218).

 

Рис.2.218. Установка параметров

 

Затем следует нажать «ОК», «Выполнить», после чего появляется окно результата решения (рис.2.219).

 

Рис.2.219. Окно результата решения

 

Если в результате всех действий получено окно с сообщением «Решение найдено», то Вам предоставляется возможность получения трех типов отчета, которые полезны при анализе модели на чувствительность. В данном примере достаточно сохранить найденное решение, нажав «ОК». В результате получено решение задачи. (рис.2.220).

 

Рис.2.220. Результат применения «Поиска решения»

 

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

 

Рис.2.221. Сообщение об ошибке

 

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

 

Рассмотрим задачу: График занятости персонала Парка отдыха.
Для работников с пятидневной рабочей неделей и двумя выходными подряд требуется подобрать график работы, обеспечивающий требуемый уровень обслуживания при наименьших затратах на оплату труда.
График Выходные дни Работники Вс Пн Вт Ср Чт Пт Сб  
A Воскрес., понедельник                  
Б Понедельник, вторник                  
В Вторник, среда                  
Г Среда, четверг                  
Д Четверг, пятница                  
Е Пятница, суббота                  
Ж Суббота, воскресенье                  
                       
    Всего:                  
                       
    Всего требуется работников:                  
                       
Дневная оплата работника: 40р.                
  Задачей данной модели является составление графика занятости, обеспечивающего удовлетворение потребности в персонале при минимальных затратах на оплату труда. В этом примере ставки одинаковы, поэтому снижение числа ежедневно занятых сотрудников приводит к уменьшению затрат на персонал. Каждый сотрудник работает пять дней подряд с двумя выходными.

 

Организовываем расчеты на листе MS Excel. (рис. 2.222)

 

Рис. 2.222

 

Заводим функцию цели в ячейке D20, как произведение дневной оплаты работников (ячейка D19) на сумму всех работников, вычисленную в ячейке D15, как СУММ(F15:L15).

В ячейках F15:L15 заводим функции СУММПРОИЗВ ($D$7:$D$13; F7:F13) и т.д. (копируем формулу направо), зафиксировав диапазон изменяемых ячеек (кнопка F4). В итоге в ячейках F15:L15 вычислим количество работников, работающих в данный день недели.

 

В строках 7-13 1 означает, что данная группа в этот день работает.

 

Вызываем надстройку Поиск решений на вкладке Данные и устанавливаем целевую ячейку, изменяемые ячейки и ограничения. (рис. 2.223)

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

 

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

 

Оптимизировать целевую функцию D20 Цель - минимизация расходов на оплату труда.
Изменяемые ячейки переменных D7:D13 Число работников, работающих по графику.
Ограничения D7:D13>=0 Число работников не может быть отрицательным.
D7:D13=Целое Число работников должно быть целым.
F15:L15>=F17:L17 Число ежедневно занятых работников не должно быть меньше ежедневной потребности.

Нажав кнопку Найти решение, получим следующий график работы:

 

 

по графику А работают 3 сотрудника, по графику Б - 5 сотрудников, по графику В - 7 сотрудников, по графику Г - 4 сотрудника, по графику Д - 6 сотрудников, по графику Е - 1 сотрудник и по графику Ж не работает никто. Общие расходы на зарплату за неделю - 987 руб при нанятых 25 сотрудниках.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.019 сек.)