Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛАБ_РАБ ПО ЭММ.doc
Скачиваний:
151
Добавлен:
04.03.2016
Размер:
1.05 Mб
Скачать

Задача целочисленного линейного программирования

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

min (max) f(x1 ,x2 ,…,xn);

gj (x1 ,x2 ,…,xn) {≤¸=¸≥} xj ≥0, j= 1, m

xjцелые неотрицательные < п'> .

Если множество индексов <п'> = <п > – {1, 2, ... , п} , то задачу называют полностью целочисленной, если <n'> <n>,то частично целочисленной.

Существуют различные методы решения задач дискретного программирования (дискретной оптимизации). Наиболее часто используемым методом является метод ветвей и границ. Именно этот метод реализован в программе Поиск решения пакета Ехсеl.

Дискретная оптимизация средствами Ехсеl проводится аналогично решению соответствующих непрерывных задач. Основное отличие заключается во вводе при оформлении диалогового окна Поиск решения требования целочисленности соответствующих переменных (при этом в режиме Параметры устанавливается тип задачи - линейная или нелинейная).

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

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

Пример задачи целочисленного линейного программирования

Задача. Организация арендует баржу грузоподъёмностью 200 т. На этой барже предполагается перевозить груз 4 типов. Вес и стоимость единицы груза соответственно равны 20, 15, 20, 14 и 100, 80, 40, 30. Необходимо погрузить на баржу груз максимальной стоимости.

Экономико-математическая модель:

Введём необходимые обозначения: пусть xj (j=1,2,3,4) – число предметов j-го типа, которое следует погрузить на баржу. Тогда ЭММ задачи о подборе для баржи допустимого груза максимальной стоимости запишется следующим образом:

max f(x1, x2, x3, x4) =100x1+80x2+40x3+30x4, 20x1+15x2+20x3+14x4 ≤ 200, xj (j=1, 2, 3, 4) – целые неотрицательные.

Решение.

Необходимо последовательно выполнить следующие операции:

  1. Создать текстовую форму-таблицу для ввода условий задачи и ввести исходные данные:

  1. Ввести зависимость для целевой функции:

  • курсор в ячейку F4;

  • кнопка Мастер функции;

  • на экране появится диалоговое окно Мастер функций – шаг 1 из 2.

  • выбрать на категорию Математические;

  • выбрать функцию СУММПРОИЗВ;

  • в строку Массив 1 ввести B$3:E$3;

  • в строку Массив 2 ввести B4:E4;

  • кнопка ОК.

  1. Ввести зависимость для ограничений:

  • скопировать полученную формулу в ячейку F8.

В строке Меню указатель мыши на Сервис. В развёрнутом меню команда Поиск решения. Появляется диалоговое окно Поиск решения.

4. Назначим целевую функцию (установим целевую ячейку):

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

  • введем адрес ячейки $F$4;

  • введем направление целевой функции в зависимости от условия задачи – Максимальному значению;

  • курсор в строку Изменяя ячейки;

  • введем адреса искомых переменных $B$3:$E$3.

5. Введите ограничения:

  • кнопка Добавить. Появляется диалоговое окно Добавление ограничения;

  • в строке Ссылка на ячейку введем (или укажем на листе) адрес $F$8;

  • выберем знак ограничения <=;

  • в строке Ограничение введем адрес $H$8;

  • кнопка Добавить

  • в строке Ссылка на ячейку введем (или укажем на листе) адрес $B$3:$E$3;

  • выберем значение цел

  • кнопка ОК.

На экране появится диалоговое окно Поиск решения с введёнными условиями.

6. Введем параметры для решения задачи:

  • кнопка Параметры.

  • на экране диалоговое окно Параметры поиска решения;

  • установим флажки:

    • Линейная модель (это обеспечит применение симплекс-метода)

    • Неотрицательные значения;

  • кнопка ОК.

  • на экране появится диалоговое окно Поиск решения;

  • кнопка Выполнить.

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

  • выберем Сохранить найденное решение

  • кнопка ОК.

Таким образом, рекомендуемое управленческое решение с позиций принятого критерия оптимизации – следует погрузить 1 предмет первого типа и 12 предметов второго типа. В этом случае стоимость груза составит 1060 у. е., и грузоподъёмность будет использована полностью.