Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Вагнер Г. Основы исследования операций [PDF] / Вагнер_Основы исследования операций_т1

.pdf
Скачиваний:
40
Добавлен:
02.05.2014
Размер:
6.68 Mб
Скачать

210

ГЛАВА 5

б) максимизировать 9ал -f- ixz — 15х3 — 5ж4 при ограничениях

—Зал + 2z2 + 9ж3 + 1ж4 < 7,

бал + 16z2 — 12з;3 — 2а;4 <10, О < х, < 1 (/' = 1, 2, 3, 4).

ДОПОЛНИТЕЛЬНЫЕ

УПРАЖНЕНИЯ

29. Двойственность

и дополнительная «нежесткостъ».

а) Докажите, что

из

теоремы двойственности вытекает теорема

о дополнительной нежесткости.

б) Докажите, что^из теоремы о дополнительной нежесткости вытекает теорема двойственности.

30. Покажите, каким образом теорема двойственности, доказанная в разд. 5.4 для случая, когда исходная и двойственная задачи имеют соответственно формулировки (1) — (3) и (4) — (6), может быть обобщена на тот случай, когда исходная и двойственная задачи имеют соответственно формулировки (I) — (V) и (Г) — (V), приве-

денные в конце разд.

5.4.

 

31. Рассмотрите следующую

задачу:

 

 

п

максимизировать 2 (ci + $с*) %]

 

 

3=1

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

 

 

п

 

 

2 atjXj

= bi + Sbf

(i = 1, 2, ..., т),

Xj > 0.

а) Пусть удалось найти оптимальное базисное решение для неко-

торого фиксированного значения б (скажем, для б = б). Требуется определить нижний и верхний пределы, в которых может меняться б,

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

смотренной в разд. 4.4, где б = 0, с* = —1, с* = 0, с* = 0, с* = 2,

ь* = i, ь; = -20, ь* =о.

32. Анализ модели на чувствительность. Рассмотрим следующую задачу линейного программирования:

п

максимизировать 2 cixi

3=1

при следующих ограничениях:

п

2 ацх} < bi (i = 1, 2, ..., т),

^х, > 0.

.АНАЛИЗ МОДЕЛЕЙ НА ЧУВСТВИТЕЛЬНОСТЬ И ДВОЙСТВЕННАЯ ЗАДАЧА 211

Пусть F — оптимальное значение целевой функции.

Допустим, что значения Cj, ац, bt точно не заданы, но известно,

что они лежат внутри

следующих

интервалов:

cJ < С} ^с],

alj < aij

< atj, bi < bt < bt.

Требуется найти значения F, соответствующие указанным выше граничным точкам.

33. Двойственный симплекс-алгоритм.

а) Пусть каждое из ограничений имеет вид неравенства. Требуется построить метод нахождения допустимого решения соответствующей двойственной задачи.

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

34. Переменные, значения которых ограничены сверху.

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

б) Примените этот метод

для

решения задачи, представленной

соотношениями (5) и (6) разд.

5.10.

в) Примените этот метод для

решения задач, сформулированных

в п. а) и б) упражнения 28.

 

 

ГЛАВА 6

Оптимизация на сетях

6.1. ЗНАЧЕНИЕ СЕТЕВЫХ МОДЕЛЕЙ

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

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

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

В гл. 7 излагаются в основном алгоритмы отыскания оптимальных решений на сетевых моделях.

 

ОПТИМИЗАЦИЯ НА

СЕТЯХ

213

6.2. КЛАССИЧЕСКАЯ ТРАНСПОРТНАЯ

ЗАДАЧА

 

Транспортная

задача

(или задача

прикрепления

поставщиков

к потребителям)

явилась

одним из первых примеров

оптимизации

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

Математическая постановка классической транспортной задачи

имеет вид

 

 

 

 

 

максимизировать

 

caxij

(1)

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

 

 

 

 

п

 

 

 

 

 

; = 1, 2, ..., т

(наличные ресурсы),

(2)

2j хч

), 7 = 1, 2, ...,

га

(спрос),

(3)

г=1

 

 

 

 

 

£«; ^ О Для ВС6Х

' И 7-

(4)

Наличные

Спрос

ресурсы

потре&ителвй

 

-0л

Р и с. 6.1. Сеть транспортной задачи.

Предприятие

2

3

т

Спрос

|1

•|§

§

Склад

1 Z

13

х„

С23\

Z2 23

mt

DI

DI

D3

 

а

 

Овьем перевозок

 

 

XZn

1 1

/

 

Поставки

,

S2

тг

<-D

Ниними

т3

PTHC. 6.2.

а—матрица условий транспортной задачи;

б— матричная форма записи постановки транспортной задачи.

ОПТИМИЗАЦИЯ НА СЕТЯХ

215

Сеть иматрицыэтойзадачиприведенынарис.6.1и6.2. (Возможно, полезно вновь обратиться к разд. 2.7, где впервые введена эта модель.)

В обычной интерпретации этой модели принято считать, что имеется т различных поставщиков (предприятий или пунктов отправления), располагающих некоторыми изделиями, которые они могут отправить п потребителям (в п пунктов назначения). В частности, предполагается, что предприятие i может отгрузить не более «S, изделий, а потребителю j требуется не менее Dj изделий. Величины St и D j на рассматриваемом интервале времени или плановом периоде принимаются постоянными. Затраты на перевозку единицы груза из пункта отправления i в пункт назначения ; равны ctj. Целевой функцией является выбор плана перевозок для заданного интервала времени, минимизирующего общие транспортные затраты.

Один из важнейших результатов, полученных в теории транспортных сетей, состоит в том, что среди всех оптимальных решений задачи (1) — (4) существует по крайней мере одно решение, в кото-

ром все значения xti являются целочисленными, если все величины St

и Dj — положительные целые числа, что будет всегда

предпола-

гаться в дальнейшем. Поэтому введение вместо условия

(4) более

сильного условия

 

xl} = О, 1, 2, ...

(5)

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

Если затраты, связанные с производством одного изделия, не одинаковы для различных предприятий, то они включаются в величины c f j . Если в силу каких-либо физических причин или экономических соображений некоторое предприятие недоступно для определенного потребителя, то соответствующая величина xtj исключается из задачи или, когда это более удобно, соответствующая величина сц принимается сколь угодно большой. Для упрощения рассуждений примем c t j ^> 0. Тогда неравенства (3) можно переписать в виде равенств.

Чтобы задача имела допустимое решение, естественно, требуется, чтобы общие ресурсы (общая мощность) поставщиков были по крайней мере не меньше общего спроса потребителей, т. е. чтобы выпол-

тп

нялось условие S ^г ^ S D)- Существует ряд ситуаций, когда

i=l 3=1

можно ожидать, что общая мощность поставщиков превышает общий спрос потребителей. Так, например, величины St иногда соответствуют производственным мощностям предприятий i для определенного планового периода, а не количеству фактически выпущенной к началу этого периода продукции, предназначенной для распределения между потребителями. Однако при анализе обычной транспортной задачи и построении алгоритма ее решения удобно принять,

216 ГЛАВА 6

что общая мощность поставщиков равна общему спросу

потреби-

телей,

т. е.

 

 

 

 

т

п

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(6)

 

 

 

 

 

 

S Si

= SDJ.

 

 

 

 

 

 

 

 

 

 

г=1

J=l

 

 

 

 

 

 

Применив простой формальный прием, можно без потери общно-

сти показать, что условие (6)

всегда

выполняется. С этой

целью

достаточно

ввести

фиктивного

потребителя

со

спросом,

равным

У] Si — Jj DJ. Присвоим этому потребителю номер п и примем cin =

г

i

 

 

 

 

 

 

 

 

 

 

 

 

 

= 0.

Тогда

величину

xin

можно

рассматривать

как «фиктивную

мощность поставщика i». Теперь суммарная мощность поставщиков

равна

суммарному

 

спросу

потребителей.

Следовательно,

пользуясь

этим приемом, условия

(2) также можно

записать

в виде

равенств.

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

вие (6), а ограничения

(2) и (3) являются равенствами (если

только

специально не оговаривается

что-либо иное). Отсюда модель транспорт-

ной задачи

принимает вид

 

m

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

минимизировать

У] Sсихи

 

 

(7)

 

 

 

 

 

 

 

 

i=i 3=1

 

 

 

 

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

п

 

 

 

 

 

 

 

 

 

 

 

 

 

 

^Xij = St,

i = i,2,...,m

 

(предложение),

 

(8)

 

 

3=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

m

 

 

 

 

 

 

 

 

 

 

 

 

 

 

^xtj

— Dj, /=1,2, ..., п

 

(спрос),

 

 

(9)

 

 

i=l

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x t

j

== О, 1, 2,

...

для

всех

i и

/,

 

(10)

где St и D j — положительные целые числа, удовлетворяющие усло-

вию (6).

Применение модели. В математическом выражении модели (7) — (10) в неявном виде предполагается, что в качестве транспортируемого груза рассматривается только один вид продукции (так называемая однопродуктовая модель). Чем это объясняется? Дело в том, что при удовлетворении требований потребителей в модели не различаются источники поставок. Весь груз, поступающий в пункт назначения /, считается однородным в смысле удовлетворения ограничения по спросу.

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

ОПТИМИЗАЦИЯ НА СЕТЯХ

217

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

Пусть спрос на различные виды продукции в каждом пункте потребления / в течение планируемого периода известен. Примем в качестве единицы измерения общего количества требуемой продукции всех видов Dj какую-либо удобную общепринятую меру, например тонну. Точно так же будем измерять поставки St в тех же единицах. При вычислении величин с^ предположим, что если предприятие i отправляет тонну продукции потребителю ;', то эта тонна включает все виды продуктов, необходимых в пункте / в заданных пропорциях.

Возникает вопрос, насколько практически реализуемым и точным будет полученное числовое решение задачи. Чтобы разумно ответить на этот вопрос, нужно иметь в виду два обстоятельства. Прежде всего решение в сущности представляет собой некоторый план, распределения продуктов в течение заданного интервала времени. Иными словами, модель обеспечивает прикрепление предприятий к пунктам назначения или поставщиков к потребителям. Числовыезначения хц по самой своей природе являются приближенными, поскольку в большинстве реальных случаев значения DJ представляют собой лишь прогнозы потребностей на планируемый период. В связи с этим значения xi}, полученные в решении, не являются фактическими значениями количества перевозимых продуктов, а служат только оценками величины будущих поставок. Далее, относительные достоинства полученного плана необходимо сравнить с любыми практически реализуемыми вариантами, которые может использовать фирма, в том числе, разумеется, с принятым планом перевозок. Учитывая эти соображения, многие фирмы существенно повысили свои доходы, приняв план перевозок, основанный на решении типовой транспортной задачи.

Остановимся вкратце на классификации сетевых моделей. Сетевые модели, рассматриваемые в этой' и последующих главах, являются примерами задач линейного программирования. За исключением двух моделей, приведенных в конце этой главы, все они имеют струк-

ТУРУ (?) — (10)- Следовательно, с формальной точки зрения эторазновидности классической транспортной задачи, хотя содержа-

218 ГЛАВА 6

тельно любой из примеров может не иметь ничего общего с реальной •транспортировкой грузов. Класс транспортных задач можно разбить на подклассы, содержащие определенные важные модели, относительно которых принимаются некоторые дополнительные допущения. В качестве примера можно привести задачу о назначениях (название разъясняется в разд. 6.4), в которой принимается п = т, S^ = DJ = = 1 для всех i и ;'. В свою очередь модели о назначениях охватывают

.задачи о кратчайшем (наиболее длинном) пути. Эти задачи рассматриваются в разд. 6.5 и 6.6. Чтобы избежать путаницы по мере проработки книги, следует постоянно учитывать дополнительные •структурные допущения, принимаемые в каждой транспортной модели.

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

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

.ностями создания запасов для удовлетворения ожидаемого спроса. Оптимальные сезонные запасы можно ввести в транспортную модель, непосредственно переопределив фигурирующие в ней величины.

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

теперь через St, где

г = 1,

2, . . ., 12, запас продукции

первого

предприятия на год. Аналогично величины S{, где i = 13, 14, . . ., 24,

•обозначают запас продукции второго предприятия. Точно так же

будем считать, что DJ, где

у = 1, 2, . . ., 12, есть

спрос

первого

потребителя; DJ, где/

= 13, 14, . . ., 24, — спрос второго потреби-

теля; DJ, где j

= 15, 26,

. . ., 36,— спрос третьего

потребителя.

 

 

24

36

 

 

 

Введем

условие

У] St

= 5) D,-. (Это ограничение в случае

необхо-

 

 

1=1

3=1

 

 

 

.димости

можно

ослабить.)

 

 

 

ОПТИМИЗАЦИЯ НА СЕТЯХ

219

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

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

хи < ui}.

(I)

Если ограничения вида (I) добавляют к условиям (7) — (10), то модель часто называют моделью транспортной задачи с ограничения-

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

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

Другое важное обобщение классической транспортной модели связано с учетом возможности доставки изделия (продукта) поставщика i потребителю ] по маршруту, проходящему через промежуточный пункт. Эта модификация подробно рассматривается в следующем разделе.

6.3. МОДЕЛЬ С ПРОМЕЖУТОЧНЫМИ ПУНКТАМИ

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