Линейное программирование excel скачать

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

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

Рассмотрим линейное программирование в Excel на примере задачи, ранее решенной графическим методом.

Задача. Николай Кузнецов управляет небольшим механическим заводом. В будущем месяце он планирует изготавливать два продукта (А и В), по которым удельная маржинальная прибыль оценивается в 2500 и 3500 руб., соответственно. Изготовление обоих продуктов требует затрат на машинную обработку, сырье и труд. На изготовление каждой единицы продукта А отводится 3 часа машинной обработки, 16 единиц сырья и 6 единиц труда. Соответствующие требования к единице продукта В составляют 10, 4 и 6. Николай прогнозирует, что в следующем месяце он может предоставить 330 часов машинной обработки, 400 единиц сырья и 240 единиц труда. Технология производственного процесса такова, что не менее 12 единиц продукта В необходимо изготавливать в каждый конкретный месяц. Необходимо определить количество единиц продуктов А и В, которые Николай доложен производить в следующем месяце для максимизации маржинальной прибыли.

Скачать заметку в формате Word, пример в формате Excel

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

Максимизировать:    Z = 2500 * х1 + 3500 *х2

При условии, что:       3 * х1 + 10 * х2 ≤ 330

16 * х1 + 4 * х2 ≤ 400

6 * х1 + 6 * х2 ≤ 240

х2 ≥ 12

х1 ≥ 0

2. Создадим экранную форму и введем в нее исходные данные (рис. 1).

Рис. 1. Экранная форма для ввода данных задачи линейного программирования

Обратите внимание на формулу в ячейке С7. Это формула целевой функции. Аналогично, в ячейки С16:С18 введены формулы для расчета левой части ограничений.

3. Проверьте, если у вас установлена надстройка «Поиск решения» (рис. 2), пропустите этот пункт.

Рис. 2. Надстройка Поиск решения установлена; вкладка «Данные», группа «Анализ»

Если надстройки «Поиск решения» вы на ленте Excel не обнаружили, щелкните на кнопку Microsoft Office, а затем Параметры Excel (рис. 3).

Рис. 3. Параметры Excel

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

Рис. 4. Надстройки Excel

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

Рис. 5. Активация надстройки «Поиск решения»

После загрузки надстройки для поиска решения в группе Анализ на вкладке Данные становится доступна команда Поиск решения (рис. 2).

4. Следующим этапом заполняем окно Excel «Поиск решения» (рис. 6)

Рис. 6. Заполнение окна «Поиск решения»

В поле «Установить целевую ячейку» выбираем ячейку со значением целевой функции – $C$7. Выбираем, максимизировать или минимизировать целевую функцию. В поле «Изменяя ячейки» выбираем ячейки со значениями искомых переменных $C$4:$D$4 (пока в них нули или пусто). В области «Ограничения» с помощью кнопки «Добавить» размещаем все ограничения нашей модели. Жмем «Выполнить». В появившемся окне «Результат поиска решения» выбираем все три типа отчета (рис. 7) и жмем Ok. Эти отчеты нужны для анализа полученного решения. Подробнее о данных, представленных в отчетах, можно почитать здесь.

Рис. 7. Выбор типов отчета

На основном листе появились значения максимизированной целевой функции – 130 000 руб. и изменяемых параметров х1 = 10 и х2 = 30. Таким образом, для максимизации маржинального дохода Николаю в следующем месяце следует произвести 10 единиц продукта А и 30 единиц продукта В.

Если вместо окна «Результат поиска решения» появилось что-то иное, Excel`ю найти решение не удалось. Проверьте правильность заполнения окна «Поиск решения». И еще одна маленькая хитрость. Попробуйте уменьшить точность поиска решения. Для этого в окне «Поиск решения» щелкните на Параметры (рис. 8.) и увеличьте погрешность вычисления, например, до 0,001. Иногда из-за высокой точности Excel не успевает за 100 итераций найти решение. Подробнее о параметрах поиска решения можно почитать здесь.

Рис. 8. Увеличение погрешности вычислений

15

Лабораторная
работа № 1

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

1. Теоретическая часть

Для решения задач
линейного программирования в программе
Microsoft
Excel
имеется надстройка Поиск
решения
,
обращение
к которой производится из меню Сервис.

Если команда
Поиск решения
отсутствует в меню Сервис,
то требуется установить надстройку
«Поиск решения». Для этого в меню Сервис
выбирается команда Надстройки,
которая открывает диалоговое окно,
показанное на рис. 1.

Рис. 1

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

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

Постановка задачи

Предприятие
изготавливает и реализует три вида
продукции – P1,
Р2
и Р3.
Для производства продукции используются
три вида ресурсов – комплектующие
изделия, сырье и материалы. Запасы
ресурсов и их расход на изготовление
единицы продукции каждого вида приведены
в табл. 1.

Таблица 1

Виды
ресурсов

Расходы
ресурсов
на 1 ед. продукции

Запасы

ресурсов,
ед.

P1

P2

P3

Комплектующие
изделия

4

6

8

3120

Сырье

2

8

10

3000

Материалы

6

9

4

3150

Прибыль от реализации
единицы продукции каждого вида составляет
240, 210 и 180 денежных единиц для P1,
Р2
и Р3
соответственно.

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

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

Обозначим переменными
x1,
x2
и x3
искомые объемы производства продукции
видов P1,
Р2
и Р2,
а через F
– прибыль предприятия. Тогда математическая
постановка представленной задачи
принимает следующий вид.

Определить значения
переменных x1,
x2
и x3,
для которых достигается максимум целевой
функции

F
=
240 x1
+ 210 х2
+ 180 x3

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

Целевая функция
описывает суммарную прибыль от реализации
произведенной продукции всех трех
видов. Ограничения (1), (2) и (3) учитывают
расход и запасы комплектующих изделий,
сырья и материалов соответственно.
Поскольку объемы производства продукции
не могут быть отрицательными, добавляются
условия

x1
≥ 0; x2
≥ 0; x3
≥ 0.

Порядок оптимального решения задачи

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

Шаг 1.
Исходные данные задачи записываются
на рабочем листе электронной таблицы.
Один из вариантов показан на рис. 2.

Рис. 2

Замечание.
Если известно исходное допустимое
базисное решение, то можно несколько
ускорить процесс поиска оптимального
решения. Для этого начальные значения
некоторых или всех переменных могут
быть заданы вручную. В данном примере
для их хранения используются ячейки
$B$2,
$C$2
и $D$2.
Если допустимое базисное решение не
задано, то программа Excel
автоматически определяет начальные
значения переменных задачи.

Шаг 2.
В ячейку E3
вводится формула

=СУММПРОИЗВ(В3:D3;
$B$2:$D$2)

для вычисления
текущего значения целевой функции,
которая находит сумму попарных
произведений ячеек (В3:D3)
с коэффициентами при переменных в
выражении целевой функции на ячейки
($B$2:$D$2)
с текущими значениями переменных.

Шаг 3.
Чтобы задать ограничения решаемой
задачи, в ячейки E5,
E6
и E7
копируется формула из ячейки E3.
После этого в указанных ячейках должны
быть получены формулы, представленные
в табл. 2.

Таблица
2

Ячейка

Содержание
(формула)

E5

=СУММПРОИЗВ(В5:D5;
$B$2:$D$2)

E6

=СУММПРОИЗВ(В6:D6;
$B$2:$D$2)

E7

=СУММПРОИЗВ(В7:D7;
$B$2:$D$2)

Шаг 4.
После создания таблицы с исходными
данными курсор устанавливается в ячейку
E3,
содержащую формулу для вычисления
целевой функции. Далее в меню Сервис
выбирается
команда Поиск
решения
,
которая открывает диалоговое окно,
приведенное на рис. 3.

Рис. 3

В поле Установить
целевую ячейку

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

Затем в этом окне
(рис. 3) заполняются следующие поля этого
окна:

— в поле Равной
переключатель вида экстремума целевой
функции устанавливается в положение
максимальное
значение

(или минимальное
значение

при
соответствующей постановке задачи);

— в поле Изменяя
ячейки

указывается
диапазон ячеек со значениями переменных
задачи, выделяемый на рабочем листе
электронной таблицы (в примере это
ячейки $B$2:$D$2);

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

Рис. 4

В этом окне в поле
Ссылка на
ячейку

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

Следует заметить,
что заполнение полей Ссылка
на ячейку

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

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

Рис. 5

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

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

Шаг 5.
После заполнения всех полей окна «Поиск
решения» нажимается кнопка Параметры
(рис. 3),
которая открывает диалоговое окно
«Параметры поиска решения», показанное
на рис. 6.

Рис. 6

В этом окне требуется
установить флажки Линейная
модель

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

Здесь (рис. 6) также
можно определить параметры процесса
решения: предельное время поиска решения,
максимальное количество итераций,
точность и т.п. Флажок Показывать
результаты

итераций

позволяет по шагам следить за поиском
решения. Флажок Автоматическое
масштабирование

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

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

Рис. 7

Полученные
результаты отображаются на рабочем
листе электронной таблицы, как это
показано на рис. 8. В частности, значения
переменных — в ячейках $B$2:$D$2,
значение целевой функции – в ячейке
E3.

Рис. 8

Таким образом,
получено оптимальное решение исходной
задачи в виде вектора
,
где,и,
для которого значение целевой функцииF
максимально и составляет F*
= 129825.

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

и Отчет
по пределам
.
Для сохранения
результатов в виде отчетов необходимо
предварительно в поле Тип
отчета

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

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

Рис. 9

В данном отчете
представлены оптимальное решение задачи
линейного программирования и его
расположение в области допустимых
решений. В графах Результат
выводятся
оптимальные значения целевой функции
F*
и переменных задачи
,
а также их значения для исходного
базисного решения, с которого начинался
поиск оптимального решения (графаИсходное
значение
).
Состояние
ограничений (графа Статус)
характеризует расположение точки
в области допустимых решений. ГрафаРазница
показывает разности между значениями
левых и правых частей ограничений
(невязки). Для связанного ограничения
невязка равна нулю, что свидетельствует
о расположение точки
на границе области допустимых решений,
которая задается этим ограничением.
Если ограничение являются не связанным,
то оно не влияет на оптимальное решение.

Замечание.
В экономической интерпретации связанные
ограничения соответствуют дефицитным
ресурсам. Для не связанных ограничений
графа Разница
показывает оставшиеся объемы
неиспользованных не дефицитных ресурсов.
В рассмотренной задаче ограничения (1)
и (3) соответствуют комплектующим изделиям
и материалам, которые являются дефицитными
ресурсами. Ограничение (2) является не
связанным, т.е. не влияет на оптимальный
план производства продукции по критерию
максимальной прибыли. Это означает, что
второй ресурс (сырье) не использован в
объеме 292,5 ед.

В
отчете по устойчивости (
рис.
10) приведены
границы устойчивости переменных задачи
(графы Допустимое
увеличение

и Допустимое
уменьшение

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

Рис. 10

В графе Нормированная
стоимость

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

В
отчете
по пределам

(рис. 11) показаны нижние и верхние пределы
возможного изменения переменных (в
пределах области допустимых решений)
и соответствующие значения целевой
функции (графа Целевой
результат
)
при этих изменениях. В частности, если
x1
= 0, а x2
и x3
остаются без изменений, то F
= 2400
+ 2100
+ 180191,25
= 34425; при x3
= 0 и неизменных x1
и x2
получим F
= 240397,5
+ 2100
+ 1800
= 95400.

Рис. 11

Соседние файлы в папке 3922

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

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

Если что-то непонятно — вы всегда можете написать мне в WhatsApp и я вам помогу!

Линейное программирование

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

Решение задач линейного программирования с использованием microsoft excel

Цель работы

Приобретение навыков решения задач линейного программирования (ЛП) в табличном редакторе Microsoft Excel.

Порядок выполнения работы

Для модели линейного программирования, соответствующей номеру Вашего варианта, найдите оптимальное решение в табличном редакторе Microsoft Excel и продемонстрируйте его преподавателю.

Инструкция по использованию microsoft excel для решения задач линейного программирования

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

Ввести условие задачи:

a) создать экранную форму для ввода условия задачи:

  • переменных,
  • целевой функции (ЦФ),
  • ограничений,
  • граничных условий;

b) ввести исходные данные в экранную форму:

  • коэффициенты ЦФ,
  • коэффициенты при переменных в ограничениях,
  • правые части ограничений;

c) ввести зависимости из математической модели в экранную форму:

  • формулу для расчета ЦФ,
  • формулы для расчета значений левых частей ограничений;

d) задать ЦФ (в окне «Поиск решения»):

  • целевую ячейку,
  • направление оптимизации ЦФ;

e) ввести ограничения и граничные условия (в окне «Поиск решения»):

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

Решить задачу:

a) установить параметры решения задачи (в окне «Поиск решения»);

b) запустить задачу на решение (в окне «Поиск решения»);

с) выбрать формат вывода решения (в окне «Результаты поиска решения»).

Возможно эта страница вам будет полезна:

Одноиндексные задачи линейного программирования

Рассмотрим пример нахождения решения для следующей одноиндексной задачи ЛП:

Линейное программирование в Excel задачи с решением

Ввод исходных данных

Создание экранной формы и ввод в нее условия задачи

Экранная форма для ввода условий задачи (1.1) вместе с введенными в нее исходными данными представлена на рис. 1.1.

Линейное программирование в Excel задачи с решением

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

Линейное программирование в Excel задачи с решением
Линейное программирование в Excel задачи с решением

правым частям ограничений соответствуют ячейки

Линейное программирование в Excel задачи с решением

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

Зависимость для ЦФ

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

Линейное программирование в Excel задачи с решением

Используя обозначения соответствующих ячеек в Excel (см. рис. 1.1), формулу для расчета ЦФ (1.2) можно записать как сумму произведений каждой из ячеек, отведенных для значений переменных задачи (ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов ЦФ (В6, С6, D6, Е6), то есть

Линейное программирование в Excel задачи с решением

Чтобы задать формулу (1.3) необходимо в ячейку F6 ввести следующее выражение и нажать клавишу «Enter»

Линейное программирование в Excel задачи с решением

где символ $ перед номером строки 3 означает, что при копировании этой формулы в другие места листа Excel номер строки 3 не изменится;

символ : означает, что в формуле будут использованы все ячейки, расположенные между ячейками, указанными слева и справа от двоеточия (например, запись В6:Е6 указывает на ячейки В6, С6, D6 и Е6). После этого в целевой ячейке появится 0 (нулевое значение) (рис. 1.2).

Линейное программирование в Excel задачи с решением

Примечание 1.1. Существует другой способ задания функций в Excel с помощью режима «Вставка функций», который можно вызвать из меню «Вставка» или при нажатии кнопки «Линейное программирование в Excel задачи с решением» на стандартной панели инструментов. Так, например, формулу (1.4) можно задать следующим образом:

• курсор в поле F6;

• нажав кнопку «Линейное программирование в Excel задачи с решением«, вызовите окно «Мастер функций — шаг 1 из 2»;

• выберите в окне «Категория» категорию «Математические»;

• в окне «Функция» выберите функцию СУММПРОИЗВ;

• в появившемся окне «СУММПРОИЗВ» в строку «Массив 1» введите выражение В$3:Е$3, а в строку «Массив 2» — выражение В6:Е6 (рис. 1.3);

• после ввода ячеек в строки «Массив 1» и «Массив 2» в окне «СУММПРОИЗВ» появятся числовые значения введенных массивов (см. рис. 1.3), а в экранной форме в ячейке F6 появится текущее значение, вычисленное по введенной формуле, то есть 0 (так как в момент ввода формулы значения переменных задачи нулевые).

Линейное программирование в Excel задачи с решением

Зависимости для левых частей ограничений

Левые части ограничений задачи (1.1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи (ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (В 10, СЮ, D10, ЕЮ — 1-е ограничение; В11, С11, D11, El 1 — 2-е ограничение и В12, С12, D12, Е12 — 3-е ограничение). Формулы, соответствующие левым частям ограничений, представлены в табл. 1.1.

Линейное программирование в Excel задачи с решением

Как видно из табл. 1.1, формулы, задающие левые части ограничений задачи (1.1), отличаются друг от друга и от формулы (1.4) в целевой ячейке F6 только номером строки во втором массиве. Этот номер определяется той строкой, в которой ограничение записано в экранной форме. Поэтому для задания зависимостей для левых частей ограничений достаточно скопировать формулу из целевой ячейки в ячейки левых частей ограничений. Для этого необходимо:

• поместить курсор в поле целевой ячейки F6 и скопировать в буфер содержимое ячейки F6 (клавишами «Ctrl-Insert»);

• помещать курсор поочередно в поля левой части каждого из ограничений, то есть в F10, F11 и F12, и вставлять в эти поля содержимое буфера (клавишами «Shift-Insert») (при этом номер ячеек во втором массиве формулы будет меняться на номер той строки, в которую была произведена вставка из буфера);

• на экране в полях F10, F11 и F12 появится 0 (нулевое значение) (см. рис. 1.2).

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

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

Линейное программирование в Excel задачи с решением

Задание ЦФ

Дальнейшие действия производятся в окне «Поиск решения», которое вызывается из меню «Сервис» (рис. 1.6):

• поставьте курсор в поле «Установить целевую ячейку»;

• введите адрес целевой ячейки $F$6 или сделайте одно нажатие левой клавиши мыши на целевую ячейку в экранной форме — это будет равносильно вводу адреса с клавиатуры;

• введите направление оптимизации ЦФ, щелкнув один раз левой клавишей мыши по селекторной кнопке «максимальному значению».

Линейное программирование в Excel задачи с решением

Ввод ограничений и граничных условий

Задание ячеек переменных

В окно «Поиск решения» в поле «Изменяя ячейки» впишите адреса $BS3:$E$3. Необходимые адреса можно вносить в поле «Изменяя ячейки» и автоматически путем выделения мышью соответствующих ячеек переменных непосредственно в экранной форме.

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

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

• Нажмите кнопку «Добавить», после чего появится окно «Добавление ограничения» (рис. 1.7).

• В поле «Ссылка на ячейку» введите адреса ячеек переменных $BS3:$E$3. Это можно сделать как с клавиатуры, так и путем выделения мышью всех ячеек переменных непосредственно в экранной форме.

• В поле знака откройте список предлагаемых знаков и выберите >.

• В поле «Ограничение» введите адреса ячеек нижней границы значений переменных, то есть $В$4:$Е$4. Их также можно ввести путем выделения мышью непосредственно в экранной форме.

Линейное программирование в Excel задачи с решением

Задание знаков ограничений <. >, =

• Нажмите кнопку «Добавить» в окне «Добавление ограничения».

• В поле «Ссылка на ячейку» введите адрес ячейки левой части конкретного ограничения, например $F$10. Это можно сделать как с клавиатуры, так и путем выделения мышью нужной ячейки непосредственно в экранной форме.

• В соответствии с условием задачи (1.1) выбрать в поле знака необходимый знак, например =.

• В поле «Ограничение» введите адрес ячейки правой части рассматриваемого ограничения, например $Н$10.

• Аналогично введите ограничения: $F$11>=$Н$11, $F$12<=$H$12.

• Подтвердите ввод всех перечисленных выше условий нажатием кнопки ОК.

Окно «Поиск решения» после ввода всех необходимых данных задачи (1.1) представлено на рис. 1.6.

Если при вводе условия задачи возникает необходимость в изменении или удалении внесенных ограничений или граничных условий, то это делают, нажав кнопки «Изменить» или «Удалить» (см. рис. 1.6).

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

Установка параметров решения задачи

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

Линейное программирование в Excel задачи с решением

Параметр «Максимальное время» служит для назначения времени (в секундах), выделяемого на решение задачи. В поле можно ввести время, не превышающее 32 767 секунд (более 9 часов).

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

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

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

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

Установка флажка «Линейная модель» обеспечивает ускорение поиска решения линейной задачи за счет применение симплекс-метода.

Подтвердите установленные параметры нажатием кнопки «ОК».

Запуск задачи на решение

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

После запуска на решение задачи линейного программирования на экране появляется окно «Результаты поиска решения» с одним из сообщений, представленных на рис. 1.9, 1.10 и 1.11.

Линейное программирование в Excel задачи с решением

Иногда сообщения, представленные на рис. 1.10 и 1.11, свидетельствуют не о характере оптимального решения задачи, а о том, что при вводе условий задачи в Excel были допущены ошибки, не позволяющие Excel найти оптимальное решение, которое в действительности существует (см. ниже подразд.1.3.5).

Если при заполнении полей окна «Поиск решения» были допущены ошибки, не позволяющие Excel применить симплекс-метод для решения задачи или довести ее решение до конца, то после запуска задачи на решение на экран будет выдано соответствующее сообщение с указанием причины, по которой решение не найдено. Иногда слишком малое значение параметра «Относительная погрешность» не позволяет найти оптимальное решение. Для исправления этой ситуации увеличивайте погрешность поразрядно, например от 0,000001 до 0,00001 и т.д.

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

Линейное программирование в Excel задачи с решением

Целочисленное программирование

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

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

• В окне «Поиск решения» (меню «Сервис»—>»Поиск решения»), нажмите кнопку «Добавить» и в появившемся окне «Добавление ограничений» введите ограничения следующим образом (рис.1.14):

  • в поле «Ссылка на ячейку» введите адреса ячеек переменных задачи, то есть $В$3:$Е$3;
  • в поле ввода знака ограничения установите «целое»;
  • подтвердите ввод ограничения нажатием кнопки «ОК».
Линейное программирование в Excel задачи с решением

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

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

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

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

Линейное программирование в Excel задачи с решением

Целевая функция и ограничения данной задачи имеют вид

Линейное программирование в Excel задачи с решением

Экранные формы, задание переменных, целевой функции, ограничений и граничных условий двухиндексной задачи (1.5) и ее решение представлены на рис. 1.15, 1.16, 1.17 и в табл. 1.3.

Линейное программирование в Excel задачи с решением

Линейное программирование в Excel задачи с решением

Линейное программирование в Excel задачи с решением

Задачи с булевыми переменными

Частным случаем задач с целочисленными переменными являются задачи, в результате решения которых искомые переменные Линейное программирование в Excel задачи с решением могут принимать только одно из двух значений: 0 или 1. Такие переменные в честь предложившего их английского математика Джорджа Буля называют булевыми. На рис. 1.18 представлена экранная форма с решением некоторой двухиндексной задачи с булевыми переменными.

Линейное программирование в Excel задачи с решением

Рис. 1.18. Решение двухиндексной задачи с булевыми переменными

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

• для наглядности восприятия ввести в экранную форму слово «булевы» в качестве характеристики переменных (см. рис. 1.18);

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

Линейное программирование в Excel задачи с решением

Вид окна «Поиск решения» для задачи с булевыми переменными, представленной на рис. 1.18, приведен на рис. 1.20.

Линейное программирование в Excel задачи с решением

Возможные ошибки при вводе условий задач линейного программирования

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

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

Цель работы

Приобретение навыков решения задач линейного программирования (ЗЛП) в табличном редакторе Microsoft Excel. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

Для модели линейного программирования, соответствующей номеру Вашего варианта, найдите оптимальное решение в табличном редакторе Microsoft Excel и продемонстрируйте его преподавателю.

Инструкция по использованию microsoft excel для решения задач линейного программирования

Для того чтобы решить ЗЛП в табличном редакторе Microsoft Excel, необходимо выполнить следующие действия. 1. Ввести условие задачи:

a) создать экранную форму для ввода условия задачи:

  • • переменных,
  • • целевой функции (ЦФ),
  • • ограничений,
  • • граничных условий;

b) ввести исходные данные в экранную форму:

  • • коэффициенты ЦФ,
  • • коэффициенты при переменных в ограничениях,
  • • правые части ограничений;

c) ввести зависимости из математической модели в экранную форму:

  • • формулу для расчета ЦФ,
  • • формулы для расчета значений левых частей ограничений; с!) задать ЦФ (в окне «Поиск решения»):
  • • целевую ячейку,
  • • направление оптимизации ЦФ;

е) ввести ограничения и граничные условия (в окне «Поиск решения»):

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

a)установить параметры решения задачи (в окне «Поиск решения»,);

b) запустить задачу на решение (в окне «Поиск решения»,);

c) выбрать формат вывода решения (в окне «Результаты поиска решения»).

Одноиндексные ЗЛП

Рассмотрим пример нахождения решения для следующей одноиндексной ЗЛП:

Линейное программирование в Excel задачи с решением
  • Ввод исходных данных

Создание экранной формы и ввод в нее условия задачи

Экранная форма для ввода условий задачи (1) вместе с введенными в нее исходными данными представлена на рис.1.

Линейное программирование в Excel задачи с решением

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

Линейное программирование в Excel задачи с решением

коэффициентам ЦФ соответствуют ячейки

Линейное программирование в Excel задачи с решением
Линейное программирование в Excel задачи с решением

правым частям ограничений соответствуют ячейки

Линейное программирование в Excel задачи с решением

Линейное программирование в Excel задачи с решением
  • Ввод зависимостей из математической модели в экранную форму

Зависимость для ЦФ.

В ячейку F6, в которой будет отображаться значение ЦФ, необходимо ввести формулу, по которой это значение будет рассчитано. Согласно (1 (значение ЦФ определяется выражением

Линейное программирование в Excel задачи с решением

Используя обозначения соответствующих ячеек в Excel (см. рис. 1), формулу для расчета ЦФ (2) можно записать как сумму произведений каждой из ячеек, отведенных для значений переменных задачи (ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов ЦФ (В6, С6, D6,E6):

Линейное программирование в Excel задачи с решением

После этого в целевой ячейке появится 0 (нулевое значение) (рис. 2).

Линейное программирование в Excel задачи с решением

Зависимости для левых частей ограничений

Левые части ограничений задачи (1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи(ВЗ, СЗ, D3, ЕЗ), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (B10, С10, D10, Е10 — 1-е ограничение; В11, C11,D11, Е11 — 2-е ограничение и В12, С12, D12, Е12 — 3-е ограничение). Формулы, соответствующие левым частям ограничений, записать самостоятельно. Проверка правильности введения формул

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

Установка параметров решения задачи

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

Параметр «Максимальное время» служит для назначения времени (в секундах), выделяемого на решение задачи. В поле можно ввести время, не превышающее 32 767 секунд (более 9 часов).

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

Параметр «Допустимое отклонение» служит для задания допуска на отклонение от оптимального решения в целочисленных задачах. При указании большего допуска поиск решения заканчивается быстрее. Параметр «Сходимость» применяется только при решении нелинейных задач. Установка флажка «Линейная модель» обеспечивает ускорение поиска решения линейной задачи за счет применение симплекс-метода. Подтвердите установленные параметры нажатием кнопки «ОК». Запуск задачи на решение

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

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

• Сообщение об успешном решении задачи

• Сообщение при несовместной системе ограничений задачи

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

Если при заполнении полей окна «Поиск решения» были допущены ошибки, не позволяющие Excel применить симплекс-метод для решения задачи или довести ее решение до конца, то после запуска задачи на решение на экран будет выдано соответствующее сообщение с указанием причины, по которой решение не найдено. Иногда слишком малое значение параметра»Относительная погрешность» не позволяет найти оптимальное решение. Для исправления этой ситуации увеличивайте погрешность поразрядно, например от 0,000001 до 0,00001 и т.д.

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

Линейное программирование в Excel задачи с решением

Целочисленное программирование

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

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

Линейное программирование в Excel задачи с решением

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

Получите у преподавателя индивидуальные задания.

Примеры решения экономических задач Задача 1.

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

  • • очищающие свойства;
  • • дезинфицирующие свойства;
  • • раздражающее воздействие на кожу.

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

Линейное программирование в Excel задачи с решением

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

Целевая функция: Линейное программирование в Excel задачи с решением (т.е. минимизируем раздражающее воздействие на кожу конечного продукта).

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

Линейное программирование в Excel задачи с решением

Решение задачи с помощью MS Excel.

Линейное программирование в Excel задачи с решением

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

«Поиск решения».

Линейное программирование в Excel задачи с решением

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

Линейное программирование в Excel задачи с решением

(т.е. очистители Линейное программирование в Excel задачи с решением нужно брать в долях 30%, 10% и 60% соответственно).

Линейное программирование в Excel задачи с решением

Задача 2.

Фирме требуется уголь с содержанием фосфора не более 0,03% и с примесью пепла не более 3,25%. Доступны 3 сорта угля Линейное программирование в Excel задачи с решением по следующим ценам (за тонну):

Линейное программирование в Excel задачи с решением

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

Решение задач математического программирования с помощью надстройки «Поиск решения» ЭТ Excel

Задачи линейного программирования, целочисленного программирования и ряд задач нелинейного программирования могут быть решены с помощью стандартного прикладного программного обеспечения. Например, в ЭТ MS Excel для этого имеется модуль «Поиск решения», вызываемый командой меню «Сервис/Поиск решения». Для активизации данного модуля необходимо выполнить команду «Сервис/Надстройки» и установить флажок напротив строки меню «Поиск решения».

Рассмотрим пример применения «Поиска решения» на основе решения задачи оптимизации портфеля ценных бумаг — одной из классических задач управления финансовыми средствами.

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

  1. Суммарный объем капитала составляет 100 000 $;
  2. доля средств, вложенная в один из объектов, не может превышать 25%;
  3. более 40% всех средств должны быть вложены в долгосрочные активы;
  4. доля высокорисковых активов не может превышать трети от суммарного объема.

Таблица 1 — Информация об объектах инвестирования

Линейное программирование в Excel задачи с решением

Построим экономико-математическую модель задачи.

Искомые переменные — объемы средств, вложенные в активы: Линейное программирование в Excel задачи с решениемЛинейное программирование в Excel задачи с решением.

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

Линейное программирование в Excel задачи с решением

Сформируем ограничения:

Ограничения на суммарный объем активов —

Линейное программирование в Excel задачи с решением

Ограничение на размер доли каждого актива

Линейное программирование в Excel задачи с решением

Необходимость долгосрочного инвестирования (например, более 3 лет)

Линейное программирование в Excel задачи с решением

Учет необходимости снижения риска —

Линейное программирование в Excel задачи с решением

Естественное экономическое ограничение — неотрицательность искомых переменных —

Линейное программирование в Excel задачи с решением

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

  • На рабочем листе представим необходимую для решения информацию, согласно рисунку 1.

Ячейки В13, Н9-Н11 должны содержать формулы, отражающие зависимость между искомыми переменными и условиями задачи. В данном случае целесообразно использовать функцию Суммпроизв(…), аргументами которой являются диапазоны B4-G4 и диапазоны соответствующих параметров.

Линейное программирование в Excel задачи с решением

Рисунок 1 — Исходные данные для решения ЗЛП

  • Выполнить команду Сервис/Поиск решения и заполнить все поля диалогового окна:

Указать адрес ячейки (В 13), содержащей целевую функцию, указать тип целевой функции,

В поле «изменяя ячейки» указать адреса всех искомых переменных (от В4 до G4).

Затем последовательно заполнить все ограничения (Пример на рисунке 2.)

Линейное программирование в Excel задачи с решением

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

Линейное программирование в Excel задачи с решением

Далее, если это необходимо, устанавливаются особые значения параметров (кнопка «Параметры»).

Линейное программирование в Excel задачи с решением

Результаты отражаются на рабочем листе. Результаты решения представлены на рисунке 5.

Линейное программирование в Excel задачи с решением

Рисунок 5 — Результаты решения задачи

На рисунке 6 представлена структура инвестиционного портфеля.

Линейное программирование в Excel задачи с решением

На основе решения проводится анализ, и принимаются соответствующие управленческие решения.

Технология решения транспортной задачи

1. На рабочем листе представим необходимую для решения информацию, согласно рисунку 7.

Ячейки В15 содержит формулу Суммпроизв(…), аргументами которой являются диапазоны В4-Е6 и В9-Е11. Ячейки F9-F11 должны содержать формулы, отражающие зависимость между искомыми переменными и условиями задачи. В данном случае целесообразно использовать функцию Сумм(…), аргументами которой являются диапазоны В9-Е9, В10-Е 10 и В11 -Е11. Аналогично определяются формулы в В12-Е 12.

Линейное программирование в Excel задачи с решением

Рисунок 7 — Исходные данные для решения ЗЛП

  • Выполнить команду Сервис/Поиск решения и заполнить все поля диалогового окна:

Указать адрес ячейки (В 15), содержащей целевую функцию, указать тип целевой функции (минимум),

В поле «изменяя ячейки» указать адреса всех искомых переменных (от В9 до Е11).

Затем последовательно заполнить все ограничения (Пример на рисунке 8.)

Линейное программирование в Excel задачи с решением

Если возникли ошибки ввода, то изменить или добавить ограничение можно с помощью командных кнопок «Добавить, изменить, удалить». Результаты отражаются на рабочем листе. Результаты решения представлены на рисунке 9.

Линейное программирование в Excel задачи с решением

Технология решения задачи нелинейного программирования

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

Линейное программирование в Excel задачи с решением

доходе I. Найти максимальное значение функции полезности.

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

Линейное программирование в Excel задачи с решением

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

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

  • На рабочем листе представим необходимую для решения информацию, согласно рисунку 10.

Ячейки В5, В6 должны содержать формулы, отражающие зависимость между искомыми переменными и условиями задачи. В данном случае ячейка В5 содержит формулу «=D2B2+E2C2», а ячейка В6 содержит формулу «=2В2Л(3/4)(С2-4)А(1/4)».

Линейное программирование в Excel задачи с решением

Рисунок 10 — Исходные данные для решения ЗНП

  • Выполнить команду Сервис/Поиск решения и заполнить все поля диалогового окна:

Линейное программирование в Excel задачи с решением

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

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

Для решения классической задачи нелинейного программирования применим метод множителей Лагранжа, для этого составим функцию Лагранжа:

Линейное программирование в Excel задачи с решением

Найдем точки экстремума функции Лагранжа.

Линейное программирование в Excel задачи с решением

Приравняем каждое уравнение к 0:

Линейное программирование в Excel задачи с решением

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

Линейное программирование в Excel задачи с решением

Подставим второе уравнение в первое и построим аналитические функции спроса:

Линейное программирование в Excel задачи с решением

Максимальное значение функции полезности-

Линейное программирование в Excel задачи с решением

Решением задачи потребительского выбора будет набор Линейное программирование в Excel задачи с решениемЛинейное программирование в Excel задачи с решением

Возможно эти страницы вам будут полезны:

  1. Решение задач по математическому программированиюПримеры решения задач по математическому программированиюЗаказать работу по математическому программированиюПомощь по математическому программированиюЗадачи математического программированияЗадача линейного программированияРешение задач по линейному программированиюМетоды решения задач линейного программированияГрафическое решение задач линейного программированияГрафический метод решения задач линейного программированияЗаказать работу по линейному программированиюПомощь по линейному программированиюКонтрольная работа по линейному программированиюКурсовая работа по линейному программированию

Моделирование решения задач линейного программирования в Excel   Выполнила: студентка группы МДИ-117 Федюшкина В. А. Проверила: Кормилицына Т. В.

Моделирование решения задач линейного программирования в Excel

Выполнила: студентка группы МДИ-117

Федюшкина В. А.

Проверила: Кормилицына Т. В.

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

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

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

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

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

  • Составить математическую модель задачи;
  • Внести исходные данные задачи и ограничения;
  • Выделить место под ячейки решения и целевую функцию, ввести ее формулу;
  • Запустить надстройку Поиск решения;
  • Установить нужные параметры решения и запустить выполнение.

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

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

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

Реализация решения задачи на определение оптимального ассортимента продукции Задача. Предприятие изготавливает два вида продукции – П1 и П2, которая поступает в оптовую продажу. Для производства продукции используются два вида сырья – А и В. Максимально возможные запасы сырья в сутки составляют 9 и 13 ед. соответственно. Расход сырья на единицу продукции вида П1 и П2.

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

Задача. Предприятие изготавливает два вида продукции – П1 и П2, которая поступает в оптовую продажу. Для производства продукции используются два вида сырья – А и В. Максимально возможные запасы сырья в сутки составляют 9 и 13 ед. соответственно. Расход сырья на единицу продукции вида П1 и П2.

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

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

Решение  Должны выполняться следующие неравенства: Доход составит:

Решение

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

Доход составит:

Форма для ввода исходных данных

Форма для ввода исходных данных

В ячейку E5 введем формулу для целевой функции:

В ячейку E5 введем формулу для целевой функции:

Аналогично в ячейки D10:D11 введены формулы для расчета левой части ограничений.

Аналогично в ячейки D10:D11 введены формулы для расчета левой части ограничений.

Поиск решения задачи

Поиск решения задачи

Добавляем ограничения для нашей задачи.

Добавляем ограничения для нашей задачи.

Отчет по устойчивости

Отчет по устойчивости

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

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

Отчет по пределам

Отчет по пределам

Добавление требования целочисленности значений всех переменных

Добавление требования целочисленности значений всех переменных

Решение задачи при условии целочисленности ее переменных

Решение задачи при условии целочисленности ее переменных

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

Вывод

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

Список использованной литературы

Список использованной литературы

  • Акулич, И. Л. Математическое программирование в примерах и задачах : учеб. пособие для студентов экон. спец. сузов / И. Л. Акулич. – М. : Высш. шк., 1986. – 319 с.
  • Банди Б. «Основы линейного программирования»: Пер. с англ. — М.: Радио и связь, 1989.
  • Васильев, А. Н. Финансовое моделирование и оптимизация средствами Excel2007 / А. Н. Васильев. – СПб. : Питер, 2009. – 320 с.
  • Додж М. и др. «Эффективная работа с Microsoft Excel», 2000.СПб.:Питер, 2001.
  • Иванов, И. Microsoft Excel 2010 для квалифицированного пользователя / И. Иванов. – М. : Академия АЙТИ, 2011. – 244 с.
  • Леоненков, А. В. Решение задач оптимизации в среде MS Excel / А. В. Леоненков. – СПб. : БХВ-Петербург, 2005. – 704 с.
  • Справка и инструкции по Excel // Поддержка по Microsoft Office [Электронный ресурс]. – Режим доступа: http://office.microsoft.com/ru-ru/excel-help (дата обращения: 14.08.2014).
  • Решение задач оптимизации управления с помощью MS Excel 2010 // НОУ «ИНТУИТ» [Электронный ресурс]. – Режим доступа: http://www.intuit.ru/studies/courses/4751/1020/info (дата обращения: 09.03.2015).
  • Рудикова Л. В., Microsoft Excel для студента / Л. В. Рудикова – Санкт – Петербург, БХВ-Петербург, 2005;
  • Уокенбах, Дж. Microsoft Excel 2010. Библия пользователя : пер. с англ. / Дж. Уокенбах. – М. : И. Д. Вильямс, 2011. – 912 с.
  • Уокенбах, Дж. Формулы в Microsoft Excel 2010 : пер. с англ. / Дж. Уокенбах. – М. : И. Д. Вильямс, 2011. – 704 с.

Инфоурок


Другое

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



Скачать материал

Решение задач линейного программирования в MS Excel



Скачать материал

  • Сейчас обучается 395 человек из 62 регионов

Описание презентации по отдельным слайдам:

  • Решение задач линейного программирования в MS Excel

    1 слайд

    Решение задач линейного программирования
    в MS Excel

  • Общая задача линейного программирования решается симплексным методом

Симплек...

    2 слайд

    Общая задача линейного программирования решается симплексным методом

    Симплекс (лат. simplex — простой) – простейший выпуклый многогранник
    в n-мерном пространстве с n+1 вершиной (например, тетраэдр в 3-мерном пространстве)

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

    3 слайд

    Если задача линейного программирования имеет оптимальное решение, то оно соответствует хотя бы одной угловой точке многогранника решений (и совпадает с одним из допустимых базисных решений системы ограничений)
    На рисунке: оптимальное решение находится в одной из вершин многоугольника решений А, В, С, D

  • Геометрический смысл симплексного метода состоит в последовательном переходе...

    4 слайд

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

  • Впервые симплексный метод был предложен американским ученым Дж. Данцигом в 19...

    5 слайд

    Впервые симплексный метод был предложен американским ученым Дж. Данцигом в 1949 г.
    Джордж Бернард Данциг (1914-2005) – американский математик, разработал симплексный алгоритм, считается основоположником методов линейного программирования
    Леонид Витальевич Канторович (1912-1986) – советский математик и экономист, лауреат Нобелевской премии по экономике 1975 года «за вклад в теорию оптимального распределения ресурсов». Один из создателей линейного программирования
    Идеи симплексного метода были разработаны в 1939 г. российским ученым Л.В.Канторовичем

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

    6 слайд

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

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

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

    7 слайд

    В MS Excel для решения задачи линейного программирования используется надстройка ПОИСК РЕШЕНИЯ

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

    8 слайд

    Сначала надстройку Поиск решения необходимо подключить (до первого использования)

    В MS Excel 2003:
    Сервис /
    Надстройки /
    Поиск решения /
    OK

    После этого команда Поиск решения включена в меню Сервис

  • В MS Excel 2007: 1) Кнопка Office (левый верхний угол окна программы)2) Кно...

    9 слайд

    В MS Excel 2007:
    1) Кнопка Office (левый верхний угол окна программы)
    2) Кнопка Параметры Excel (внизу окна меню)
    3) Надстройки
    1
    2
    3

  • В MS Excel 2007: 4) Кнопка Перейти (внизу окна Параметры Excel) 43

    10 слайд

    В MS Excel 2007:
    4) Кнопка Перейти (внизу окна Параметры Excel)
    4
    3

  • В окне Надстройки установить флажок и нажать ОК

В MS Excel 2007 кнопка Поиск...

    11 слайд

    В окне Надстройки установить флажок и нажать ОК

    В MS Excel 2007 кнопка Поиск решения появится во вкладке Данные

  • В MS Excel 2007 кнопка Поиск решения появится во вкладке Данные

    12 слайд

    В MS Excel 2007 кнопка Поиск решения появится во вкладке Данные

  • Решим в MS Excel задачу линейного программирования12

    13 слайд

    Решим в MS Excel задачу линейного программирования
    1
    2

  • Решим в MS Excel задачу линейного программирования34СРССРС

    14 слайд

    Решим в MS Excel задачу линейного программирования
    3
    4
    СРС
    СРС

  • Ответы:1234

  • Решим в MS Excel задачу линейного программирования1. Создадим область перемен...

    16 слайд

    Решим в MS Excel задачу линейного программирования
    1. Создадим область переменных
    Ячейки В2:В6 будут играть роль переменных
    (пока они пусты)

  • Решим в MS Excel задачу линейного программирования2. Введем формулу вычислени...

    17 слайд

    Решим в MS Excel задачу линейного программирования
    2. Введем формулу вычисления значений целевой функции

    Например, в ячейку А8

  • Решим в MS Excel задачу линейного программирования3. Создадим область огранич...

    18 слайд

    Решим в MS Excel задачу линейного программирования
    3. Создадим область ограничений
    В ячейках А11:А13 будем вычислять левые части ограничений в системе

    В ячейках В11:В13 введем правые части ограничений системы

  • Решим в MS Excel задачу линейного программирования3. Создадим область огранич...

    19 слайд

    Решим в MS Excel задачу линейного программирования
    3. Создадим область ограничений
    В ячейках А11:А13 будем вычислять левые части ограничений в системе
    Первое ограничение

  • Решим в MS Excel задачу линейного программирования3. Создадим область огранич...

    20 слайд

    Решим в MS Excel задачу линейного программирования
    3. Создадим область ограничений
    В ячейках А11:А13 будем вычислять левые части ограничений в системе
    Второе ограничение

  • Решим в MS Excel задачу линейного программирования3. Создадим область огранич...

    21 слайд

    Решим в MS Excel задачу линейного программирования
    3. Создадим область ограничений
    В ячейках А11:А13 будем вычислять левые части ограничений в системе
    Третье ограничение

  • Решим в MS Excel задачу линейного программирования4. Вызовем окно диалога Пои...

    22 слайд

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

  • Решим в MS Excel задачу линейного программированияУстанавливаем целевую ячейк...

    23 слайд

    Решим в MS Excel задачу линейного программирования
    Устанавливаем целевую ячейку А8 (там где вычисляется значение целевой функции)
    Указываем направление оптимизации – минимизация (по условию)
    В поле Изменяя ячейки указываем ячейки переменных В2:В6

  • Решим в MS Excel задачу линейного программированияУкажем ограничения
4) Нажим...

    24 слайд

    Решим в MS Excel задачу линейного программирования
    Укажем ограничения
    4) Нажимаем кнопку Добавить

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

  • Решим в MS Excel задачу линейного программированияУкажем ограничения
5) Неотр...

    25 слайд

    Решим в MS Excel задачу линейного программирования
    Укажем ограничения
    5) Неотрицательность переменных:

    Нажать кнопку Добавить
    6) Остальные ограничения:

    Нажать OK

  • Решим в MS Excel задачу линейного программированияОсталось нажать кнопку Выпо...

    26 слайд

    Решим в MS Excel задачу линейного программирования
    Осталось нажать кнопку Выполнить

  • Решим в MS Excel задачу линейного программированияРезультаты

Ответ:

    27 слайд

    Решим в MS Excel задачу линейного программирования
    Результаты

    Ответ:

  • ЛитератураКремер Н.Ш., Путко Б.А. Исследование операций в экономике. - М.: ЮН...

    28 слайд

    Литература
    Кремер Н.Ш., Путко Б.А. Исследование операций в экономике. — М.: ЮНИТИ, 2003. — 407 с.
    Красс М.С., Чупрынов Б.П. Математика для экономистов. — СПб.: Питер, 2005. — 464 с.

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 211 186 материалов в базе

  • Выберите категорию:

  • Выберите учебник и тему

  • Выберите класс:

  • Тип материала:

    • Все материалы

    • Статьи

    • Научные работы

    • Видеоуроки

    • Презентации

    • Конспекты

    • Тесты

    • Рабочие программы

    • Другие методич. материалы

Найти материалы

Другие материалы

  • 27.12.2020
  • 3372
  • 1
  • 27.12.2020
  • 4749
  • 2
  • 27.12.2020
  • 4951
  • 11
  • 27.12.2020
  • 5787
  • 13
  • 27.12.2020
  • 5022
  • 9
  • 27.12.2020
  • 4058
  • 1
  • 27.12.2020
  • 3883
  • 0
  • 27.12.2020
  • 3906
  • 1

Вам будут интересны эти курсы:

  • Курс повышения квалификации «Подростковый возраст — важнейшая фаза становления личности»

  • Курс профессиональной переподготовки «Организация и предоставление туристских услуг»

  • Курс профессиональной переподготовки «Клиническая психология: организация реабилитационной работы в социальной сфере»

  • Курс профессиональной переподготовки «Логистика: теория и методика преподавания в образовательной организации»

  • Курс повышения квалификации «Правовое регулирование рекламной и PR-деятельности»

  • Курс повышения квалификации «Финансы предприятия: актуальные аспекты в оценке стоимости бизнеса»

  • Курс профессиональной переподготовки «Управление ресурсами информационных технологий»

  • Курс повышения квалификации «Мировая экономика и международные экономические отношения»

  • Курс профессиональной переподготовки «Корпоративная культура как фактор эффективности современной организации»

  • Курс профессиональной переподготовки «Осуществление и координация продаж»

  • Курс профессиональной переподготовки «Технический контроль и техническая подготовка сварочного процесса»

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

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с
    сайта, Вы можете оставить жалобу на материал.

    Удалить материал

  • Стринадко Ольга Эдуардовна

    • На сайте: 2 года и 3 месяца
    • Подписчики: 0
    • Всего просмотров: 54186
    • Всего материалов:

      217

Like this post? Please share to your friends:
  • Линейное программирование excel solver
  • Линия даты в excel
  • Линейное приближение excel это
  • Линия во всю строку word
  • Линейное моделирование в excel