Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
UP_2.doc
Скачиваний:
10
Добавлен:
01.04.2025
Размер:
4.78 Mб
Скачать

8.2. Решение задач линейного программирования с помощью приложения Excel

В Excel есть надстройка "Поиск решения", которая позволяет решать задачи на поиск оптимального значения целевой функции. Вызов надстройки осуществляется с помощью пункта Поиск решения в меню Сервис. Если в меню Сервис нет такого пункта, то установите его, выполнив команду Сервис | Надстройки. В окне диалога "Надстройки" установите флажок на строке Поиск решения и нажмите OK.

Пример. Для удобства дальнейшей работы в окне приложения Excel переобозначим переменные: xj пусть будут Сj – это имена ячеек Excel. Запишем модель в виде:

X= (C1; C2; C3),

F(C1; C2; C3) = 4С1+5С2+3С3 —› max,

Система ограничений:

0,5С1+2С2≤100,

0,5С1+2,5С2+3С3≤500,

0,5С1+0,5С2+3С3≤400,

0,5С2+С3≤100,

С1≥0, С2≥0, С3≥0.

Для решения задачи откройте Excel и выполните следующие действия:

  1. Введите в ячейку А1 (на английском) формулу для целевой функции, т. е. наберите:

= 4*С1+ 5*С2 + 3*С3

нажмите ENTER или просто перейдите в ячейку А2 и введите в нее слово "ограничения:" (это пояснение).

  1. Введите в ячейку А3 формулу для вычисления левой части первого ограничения:

= 0,5*С1 + 2*С2 .

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

= 0,5*С1 + 2,5*С2 + 3*С3.

  1. Введите в ячейку А5 формулу для вычисления третьего ограничения:

= 0,5*С1 + 0,5*С2 + 3*С3.

  1. Введите в ячейку А6 формулу для вычисления четвертого ограничения: = 0,5*С2 + С3.

6. Неотрицательность переменных укажите в отдельных ячейках, т. е. в А7 введите: = С1; в А8 введите: = С2; в А9 введите: = С3.

  1. В ячейки С1, С2, С3 введите первоначальные значения этих переменных, например, 0. После этого значения всех ячеек (А1, А3,…,:А9, С1, С2, С3) должно быть равно 0 (рис. 8.4).

Рис. 8.4. Результаты ввода первоначальных значений на листе Excel

  1. Выполните команду меню Сервис | Поиск решения. Появится окно диалога "Поиск решения", в котором необходимо внимательно читать поясняющие надписи и вводить необходимую информацию.

Рис. 8.5. Окно диалога "Поиск решения"

  1. В поле ввода "Установить целевую ячейку" укажите имя ячейки (на английском), в которой находится формула подсчета целевой функции, т.е. А1 (можно просто щелкнуть левой кнопкой мыши на ячейке А1).

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

  3. В поле ввода Изменяя ячейки введите С1:С3 (так в Excel указывают диапазон ячеек от С1 до С3).

  4. Для ввода ограничений нажмите кнопку Добавить. Появится новое окно диалога "Добавление ограничений" (рис. 8.6), в котором три поля ввода данных. В поле Ссылка на ячейку введите имя ячейки, где находится левая часть первого ограничения, т. е. А3. В поле Ограничение введите знак ≤; в последнее поле введите значение правой части ограничения, т. е. число 100.

Рис. 8.6. Окно диалога "Добавление ограничений"

  1. Щелкните на кнопку Добавить и так же введите все ограничения (включая неотрицательность). После ввода последнего ограничения (А9≥0) нажмите кнопку OK. После этого диалоговое окно будет иметь вид, показанный на рис. 8.5. Проверьте, все ли вы ввели верно. Если какое-то ограничение введено неверно, установите на него курсор и нажмите кнопку Изменить.

Рис. 8.7. Окно диалога "Результаты поиска решений"

  1. Нажмите кнопку Выполнить. Откроется окно диалога "Результаты поиска решения" (рис. 8.7).

  2. Выберите тип отчета Результаты, нажмите OK. В ячейках на основном листе появятся вычисленные значения (рис. 8.8), а на дополнительном листе можно посмотреть подробный отчет по результатам решения (рис. 8.9).

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

Рис. 8.9. Отчет по результатам

Примечания

  1. При решении задачи целочисленного программирования на этапе добавления ограничений (см. п. 12) в поле Ссылка на ячейку введите С1:С3, в поле Ограничение щелкните на кнопке , из появившегося списка выберите целое.

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

  3. Транспортная задача решается также с помощью пункта Поиск решения. При этом элементы матрицы перевозок X = (xij) могут располагаться в одном столбце С или D, или в любом другом (как удобно пользователю), или в нескольких.

Например,

x11 x12 x13

X = x21 x22 x23

Можно расположить в ячейках таблицы Excel C1, D1, E1 – элементы первой строки матрицы Х, соответственно, в C2, D2, E2 – второй строки. Далее необходимо внимательно записать целевую функцию и ограничения через имена этих ячеек и ввести данные в соответствующие ячейки листа Excel.

На рис. 8.10 показан результат решения транспортной задачи, условие которой задано в табл. 8.1.

Рис. 8.10. Решение транспортной задачи

Для закрепления навыка решения задач на компьютере необходимо решить задачи из разделов 1–4 данного пособия и сравнить ответы.

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