Опубликован: 17.07.2009 | Уровень: специалист | Доступ: платный
Лекция 4:

Методы принятия решений

< Лекция 3 || Лекция 4: 123456 || Лекция 5 >

Рассмотрим пример транспортной задачи, исходные данные к которой представлены в табл. 4.6.

Таблица 4.6. Исходные данные к транспортной задаче
Потреби-тель 1 Потреби-тель 2 Потреби-тель 3 Потреби-тель 4 Запасы на складах
Склад 1 2 5 5 5 60
Склад 2 1 2 1 4 80
Склад 3 3 1 5 2 60
Потреб-ности 50 40 70 40 200

В табл.4.6, кроме объемов потребностей и величин запасов, приведены стоимости доставки единицы товара со склада i, i=1,2,3, потребителю j, j=1,2,3,4.. Например, самая дешевая доставка - со склада 2 потребителям 1 и 3, а также со склада 3 потребителю 2. Однако на складе 2 имеется 80 единиц товара, а потребителям 1 и 3 требуется 50+70 =120 единиц, поэтому к ним придется вести товар и с других складов. Обратите внимание, что в табл.5 запасы на складах равны суммарным потребностям. Для примера с доставкой песка кирпичным заводам это вполне естественное ограничение - при невыполнении такого ограничения либо порты будут засыпаны горами песка, либо кирпичные заводы не выполнят заказы.

Надо спланировать перевозки, т.е. выбрать объемы Х_{ij} поставок товара со склада i потребителю j , где i = 1,2,3; j = 1,2,3,4. Таким образом, всего в задаче имеется 12 переменных. Они удовлетворяют двум группам ограничений. Во-первых, заданы запасы на складах:

X_{11} + Х_{12} + Х_{13} + Х_{14} = 60 \\
X_{21} + Х_{22} + Х_{23} + Х_{24} = 80 \\
X_{31} + Х_{32} + Х_{33} + Х_{34} = 60.

Во-вторых, известны потребности клиентов:

X_{11} + Х_{21} + Х_{31} = 50 \\
X_{12} + Х_{22} + Х_{32} = 40 \\
X_{13} + Х_{23} + Х_{33} = 70 \\
X_{14} + Х_{24} + Х_{34} = 40.

Итак, всего 7 ограничений типа равенств. Кроме того, все переменные неотрицательны - еще 12 ограничений.

Целевая функция - издержки по перевозке, которые необходимо минимизировать:

F = 2X_{11} + 5Х_{12} + 4Х_{13} + 5Х_{14} + X_{21} + 2Х_{22} + Х_{23} + 4Х_{24} +3X_{31} + Х_{32} + 5Х_{33} + 2Х_{34} \to min.

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

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

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

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

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

Задача о выборе оборудования. На приобретение оборудования для нового участка цеха выделено 20000 долларов США. При этом можно занять площадь не более 38 м2. Имеется возможность приобрести станки типа А и станки типа Б. При этом станки типа А стоят 5000 долларов США, занимают площадь 8 м2 (включая необходимые технологические проходы) и имеют производительность 7 тыс. единиц продукции за смену. Станки типа Б стоят 2000 долларов США, занимают площадь 4 м2 и имеют производительность 3 тыс. единиц продукции за смену. Необходимо рассчитать оптимальный вариант приобретения оборудования, обеспечивающий при заданных ограничениях максимум общей производительности участка.

Пусть Х - количество станков типа А, а У - количество станков типа Б, входящих в комплект оборудования. Требуется выбрать комплект оборудования так, чтобы максимизировать производительность С участка (в тыс. единиц за смену):

С = 7 Х + 3 У \to max.

При этом должны быть выполнены следующие ограничения:

по стоимости (в тыс. долларов США)

5 Х + 2 У \le 20,

по занимаемой площади (в м2 )

8 Х + 4 У \le 38,

а также вновь появляющиеся специфические ограничения по целочисленности, а именно,

Х \ge 0 , У \ge 0, Х и У - целые числа.

Сформулированная математическая задача отличается от задачи линейного программирования только последним условием целочисленности. Однако наличие этого условия позволяет (в данном конкретном случае) легко решить задачу перебором. Действительно, как ограничение по стоимости, так и ограничение по площади дают, что Х \le 4. Значит, Х может принимать лишь одно из 5 значений: 0, 1, 2, 3, 4.

Если Х = 4, то из ограничения по стоимости следует, что У = 0, а потому С = 7 Х = 28.

Если Х= 3, то из первого ограничения вытекает, что У \le 2, из второго У \le 3. Значит, максимальное С при условии выполнения ограничений достигается при У =2, а именно С = 21 + 6 = 27.

Если Х= 2, то из первого ограничения следует, что У \le 5, из второго также У \le 5. Значит, максимальное С при условии выполнения ограничений достигается при У =5, а именно С = 14 + 15 = 29.

Если Х= 1, то из первого ограничения имеем У \le 7, из второго также У \le 7. Значит, максимальное С при условии выполнения ограничений достигается при У = 7, а именно С = 7 + 21 = 28.

Если Х= 0, то из первого ограничения вытекает У \le 10, из второго У \le 9. Значит, максимальное С при условии выполнения органичений достигается при У = 9, а именно С = 27.

Все возможные случаи рассмотрены. Максимальная производительность С = 29 (тысяч единиц продукции за смену) достигается при Х = 2, У = 5. Следовательно, надо покупать 2 станка типа А и 5 станков типа Б.

Задача о ранце. Общий вес ранца заранее ограничен. Какие предметы положить в ранец, чтобы общая полезность отобранных предметов была максимальна? Вес каждого предмета известен.

Есть много эквивалентных формулировок. Например, можно вместо ранца рассматривать космический аппарат - спутник Земли, а в качестве предметов - научные приборы. Тогда задача интерпретируется как отбор приборов для запуска на орбиту. Правда, при этом предполагается решенной предварительная задача - оценка сравнительной ценности исследований, для которых нужны те или иные приборы.

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

Перейдем к математической постановке. Предполагается, что имеется n предметов, и для каждого из них необходимо решить, класть его в ранец или не класть. Для описания решения вводятся булевы переменные Х_k , k = 1,2,\dots ,n (т.е. переменные, принимающие два значения, а именно, 0 и 1). При этом Хk = 1, если предмет размещают в ранце, и Х_k = 0, если нет, k = 1,2,\dots ,n. Для каждого предмета известны две константы: А_k - вес k-го предмета и С_k - полезность k-го предмета, k = 1,2,\dots,n. Максимально возможную вместимость ранца обозначим В. Оптимизационная задача имеет вид

C_1 Х_1 + С_2 Х_2 + С_3 Х_3 +\dots + С_nХ_n \to max \\
А_1 Х_1 + А_2 Х_2 + А_3 Х_3 + \dots + А_nХ_n \le В.

В отличие от предыдущих задач, управляющие параметры Х_k , k = 1,2,\dots ,n, принимают значения из множества, содержащего два элемента - 0 и 1. К целочисленному программированию относятся задачи размещения (производственных объектов), теории расписаний, календарного и оперативного планирования, назначения персонала и т.д..

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

Метод приближения непрерывными задачами. В соответствии с ним сначала решается задача линейного программирования без учета целочисленности, а затем в окрестности оптимального решения ищутся целочисленные точки.

Методы направленного перебора. Из них наиболее известен метод ветвей и границ. Суть метода такова. Каждому подмножеству Х множества возможных решений Х_0 ставится в соответствие число - "граница" А(Х) . При решении задачи минимизации необходимо, чтобы А(Х_1) \ge А(Х_2) , если Х_1 входит в Х_2 или совпадает с Х_2.

Каждый шаг метода ветвей и границ состоит в делении выбранного на предыдущем шаге множества Х_С на два - Х_{1С} и Х_{2С}. При этом пересечение Х_{1С} и Х_{2С} пусто, а их объединение совпадает с Х_С. Затем вычисляют границы А(Х_{1С}) и А(Х_{2С}) и выделяют "ветвь" Х|_{С +1} - то из множеств Х_{1С} и Х_{2С}, для которого граница меньше. Алгоритм прекращает работу, когда диаметр вновь выделенной ветви оказывается меньше заранее заданного малого числа.

Для каждой конкретной задачи целочисленного программирования (другими словами, дискретной оптимизации) метод ветвей и границ реализуется по-своему. Есть много модификаций этого метода.

< Лекция 3 || Лекция 4: 123456 || Лекция 5 >
Михаил Агапитов
Михаил Агапитов

Не могу найти  требования по оформлению выпускной контрольной работы по курсу профессиональной переподготовки "Менеджмент предприятия"

Подобед Александр
Подобед Александр

Я нажал кнопку "начать курс" и почти его уже закончил, но для получения диплома на бумаге, нужно его же оплатить? Как оплатить? 

Вячеслав Гримальский
Вячеслав Гримальский
Россия
Михаил Байков
Михаил Байков
Россия, Москва, Московский Авиационный Институт, 2009