Формулы, описывающие ограничения модели (1.1)

Практическая работа №1

“Решение задач линейного программирования с использованием Microsoft Excel”

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

Литература.

1. Акоф Р., Сасиени М. Основы исследования операций. М.: Мир, 1971.

2. Акулич И.Л. Математическое программирование в примерах и задачах. М.: Высшая школа, 1986.

3. Зайченко Ю.П. Исследование операций. Киев: Вища школа, 1979.

4. Кузнецов А.В., Сакович В.А., Холод Н.И. и др. Сборник задач и упражнений по высшей математике. Математическое программирование. Минск: Вышэйшая школа, 1995.

5. Б.Курицкий. Решение оптимизационных задач средствами Excel. М.: BHV, 1997.

6. Таха Х. Введение в исследование операций. М.: Мир, 1985.

7. Эддоус М., Стенсфилд Р. Методы принятия решений. М.: Аудит, ЮНИТИ, 1997.

3. Подготовка к работе. Повторить конспект лекции по теме «Решение задач линейного программирования.»

Перечень оборудования. Компьютер

Задание

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

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

· переменных,

· целевой функции (ЦФ),

· ограничений,

· граничных условий;

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

· коэффициенты ЦФ,

· коэффициенты при переменных в ограничениях,

· правые части ограничений;

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

· формулу для расчета ЦФ,

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

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

· целевую ячейку,

· направление оптимизации ЦФ;

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

· ячейки со значениями переменных,

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

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

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

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

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

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

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

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

Одноиндексные задачи ЛП

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

Формулы, описывающие ограничения модели (1.1) - student2.ru (1.1)

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

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

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

Формулы, описывающие ограничения модели (1.1) - student2.ru

Рис.1.1. Экранная форма задачи (1.1) (курсор в ячейке F6)

В экранной форме на рис.1.1 каждой переменной и каждому коэффициенту задачи поставлена в соответствие конкретная ячейка в Excel. Имя ячейки состоит из буквы, обозначающей столбец, и цифры, обозначающей строку, на пересечении которых находится объект задачи ЛП. Так, например, переменным задачи (1.1) соответствуют ячейки B3 ( Формулы, описывающие ограничения модели (1.1) - student2.ru ), C3 ( Формулы, описывающие ограничения модели (1.1) - student2.ru ), D3 ( Формулы, описывающие ограничения модели (1.1) - student2.ru ), E3 ( Формулы, описывающие ограничения модели (1.1) - student2.ru ), коэффициентам ЦФ соответствуют ячейки B6 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 130,5), C6 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 20), D6 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 56), E6 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 87,8), правым частям ограничений соответствуют ячейки H10 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 756), H11 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 450), H12 ( Формулы, описывающие ограничения модели (1.1) - student2.ru 89) и т.д.

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

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

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

Формулы, описывающие ограничения модели (1.1) - student2.ru . (1.2)

Используя обозначения соответствующих ячеек в Excel (см. рис.1.1), формулу для расчета ЦФ (1.2) можно записать как сумму произведений каждой из ячеек, отведенных для значений переменных задачи (B3, C3, D3, E3), на соответствующую ячейку, отведенную для коэффициентов ЦФ (B6, C6, D6, E6), то есть

Формулы, описывающие ограничения модели (1.1) - student2.ru . (1.3)

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

=СУММПРОИЗВ(B$3:E$3;B6:E6), (1.4)

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

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

Формулы, описывающие ограничения модели (1.1) - student2.ru

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

(курсор в ячейке F6)

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

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

· нажав кнопку " Формулы, описывающие ограничения модели (1.1) - student2.ru ",вызовите окно"Мастер функций – шаг 1 из 2";

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

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

· в появившемся окне "СУММПРОИЗВ" в строку "Массив 1" введите выражение B$3:E$3, а в строку "Массив 2" – выражение B6:E6(рис.1.3);

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

Формулы, описывающие ограничения модели (1.1) - student2.ru

Рис.1.3. Ввод формулы для расчета ЦФ в окно "Мастер функций"

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

Левые части ограничений задачи (1.1) представляют собой сумму произведений каждой из ячеек, отведенных для значений переменных задачи (B3, C3, D3, E3), на соответствующую ячейку, отведенную для коэффициентов конкретного ограничения (B10, C10, D10, E10 –1-е ограничение; B11, C11, D11, E11– 2-е ограничение и B12, C12, D12, E12 –3-е ограничение). Формулы, соответствующие левым частям ограничений, представлены в табл.1.1.

Таблица 1.1

Формулы, описывающие ограничения модели (1.1)

Левая часть ограничения Формула Excel
Формулы, описывающие ограничения модели (1.1) - student2.ru или Формулы, описывающие ограничения модели (1.1) - student2.ru =СУММПРОИЗВ(B$3:E$3;B10:E10)
Формулы, описывающие ограничения модели (1.1) - student2.ru или Формулы, описывающие ограничения модели (1.1) - student2.ru =СУММПРОИЗВ(B$3:E$3;B11:E11)
Формулы, описывающие ограничения модели (1.1) - student2.ru или Формулы, описывающие ограничения модели (1.1) - student2.ru =СУММПРОИЗВ(B$3:E$3;B12:E12)

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

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

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

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

Наши рекомендации