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

книги из ГПНТБ / Берзин Е.А. Оптимальное распределение ресурсов и элементы синтеза систем

.pdf
Скачиваний:
34
Добавлен:
24.10.2023
Размер:
11.19 Mб
Скачать

М а т е м а т и ч е с к и й а п п а р а т , применяемый во Всех рассматриваемых методах, основан на исчислении конечных разностей [31, 32]. Это удобно потому, что распределяемые ресурсы или имеют дискретную структуру, или сводятся к таковой.

Для понимания ряда задач и выводов теоретических оценок погрешностей необходимы знания теории вероятностей в объеме

программы вуза [33,

34]. Начальные знания

по теории игр [35,

36] позволят ясно

представить постановку

задач, записанных в

§ 3.5.

Знание основ линейного программирования и знакомство с други­

ми методами оптимизации [10, 18,

19, 37] также необходимы для сво­

бодного ориентирования во всем материале.

П о р я д о к и з у ч е н и я

м а т е р и а л а рекомендуется сле­

дующий. Для практического применения метода решения задачи, постановка которой (раздел 1) интересует читателя, достаточно озна­ комиться с алгоритмом (раздел 2) и примерами вычислений (раздел 5) соответствующего параграфа.

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

Если читателя интересуют, прежде всего, не отдельные задачи, а проблемы оптимального распределения ресурсов и синтеза систем,

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

После знакомства с методом и алгоритмом (раздел 2) может ока­ заться полезным временно перейти к разделу 5, где на конкретных примерах можно уяснить работу и отдельные детали алгоритма.

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

несмотря

на незаконченность некоторых вопросов (например, раздел

3 §§ 2.3,

3. 1, 5.

1), они предлагаются вниманию читателя.

Автор приносит глубокую благодарность Е. В. Золотову, а также

А. Б. Восканян,

Л. С. Гурину, Б. Б. Кирееву, Г. И. Колокольце­

вой, №• С. Любушкину, А. А. Николаеву, Е. Б. Триусу, Д. Б. Юдину, оказавшим помощь при работе над рукописью.

10

П р и н я т ы е с о к р а щ е н и я

ММЭ, метод МЭ — метод максимального элемента; МДФ, метод ДФ — метод двух функций; МВК. метод ВК — метод весовых коэффициентов;

МПП, метод ПП — метод последовательных приращений; МСО, метод СО — метод свертки ограничений;

ГОФ, гиперплоскость ОФ — гиперплоскость ограничивающей функции; ГЦФ, гиперплоскость ЦФ — гиперплоскость целевой функции; ЦЛП — целочисленное линейное программирование; ЦВП — целочисленное выпуклое программирование; ЛП — линейное программирование; ВП — выпуклое программирование; АП — аддитивное программирование;

ОЗУ — оперативное запоминающее устройство.

О сн о в н ы е о б о з н а ч е н и я

/ = 1........d —текущий номер шага процесса оптимизации (d — номер конечного шага);

Т — 1........D —текущий номер цикла процесса оптимизации (D—номер завершающего цикла);

о#}0 . Р)° —текущие значения вероятностей некоторых событий:

е</>, Q[‘K qU) —соответственно текущие значения вероятностей противо-

1

1

1

положных событий;

 

 

Vji — отношение приращения і'-й функции к /-му приращению

 

 

 

аргумента х*;

Х =

{ х і }п ,

X —обозначения вектор-строки;

X = ||Xji ||mra —обозначения матриц;

 

пг,

п —соответственно число строк и столбцов матрицы;

 

 

/,

і — номера строк и столбцов матрицы X:

 

Х = \\хі ||„ —обозначение вектор-столбца;

 

öji,

Vji—двоичные (двузначные) переменные, принимающие значе­

 

 

б,

ния 0 или 1.

 

 

у —соответствующие матрицы (8= ||б 7-г||);

 

80,

у0 —соответствующие оптимальные матрицы;

б, у —алгоритмы последовательного формирования матриц б, у (последовательного распределения средств);

t: = ( - f 1—знак : =означает присвоение признака;

ß— относительная погрешность.

Г л а в а п е р в а я

МЕТОД МАКСИМАЛЬНОГО ЭЛЕМЕНТА

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

Р. Веллман

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

Подобная динамическая структура процесса оптимизации харак­ терна и для метода МЭ, но, пожалуй, на этом сходство и заканчивается. Метод МЭ относится к градиентным методам. На произвольном шаге процесса «распределяется» только одна единица дискретного ресурса. На формальном языке это означает, что на t-м (t = 1, ..., d) шаге процесса дается единичное приращение (Ахі = 1) только одной,

і = lt-й компоненте искомого оптимального вектора Х 0 = {х®}„, ха­ рактеризующего собой в каждой конкретной задаче вариант распреде­ ления однородного ресурса между п потребителями. После конеч­ ного числа (d) шагов, равного числу единиц ресурса («), весь ресурс оказывается распределенным, а задача решенной.

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

§ 1.1. Простейшая нелинейная задача оптимального

распределения ресурсов и метод МЭ

1.

Постановка задачи.

 

Требуется найти оптимальный

вектор

Х 0 =

{x"}s, доставляющий

 

максимум

функции

 

 

•S

 

 

 

S

 

 

F(X) = 2 М * » ) =

і

U M l - e ' O

(1.1)

 

і=

1

 

= 1

 

12

при линейном

ограничении на его компоненты

 

 

 

 

 

s

 

 

( 1.2)

 

 

 

2

 

 

и при дополнительных условиях:

 

 

 

 

хі 6 {0> 1,

•••,

N},

 

 

 

 

0 < (е * =

1— <*>()< 1,

 

S.

(1.3)

Так как

Аі > О,

 

 

 

 

 

 

s

 

 

 

 

F(Xо)

max F (Х) =

А, — min

 

 

(1.4)

2

~

min

 

V

.* ___ 1

V !

V і

1

 

то можно заметить, что задача максимизации функции (1.1) эквива­

лентна* задаче минимизации функции:

 

р{>0 = 2 Аггх.к

(1.5)

і=і

 

В работе [3, стр. 40] подробно описываются различные физиче­ ские ситуации, сводимые к такой формальной схеме, поэтому нет нужды снова останавливаться на них. Позаимствуем одну из них.

Физическая интерпретация может быть сведена к следующему. Имеется N однородных активных единиц ресурса (равноэффективных

средств). Каждая из них при воздействии по t'-му (г = 1, .... S)

объекту

(цели), имеющему

относительную важность

(вес) А (, поражает его

с вероятностью

= 1 — ег (или наносит

относительный

ущерб

ц>г). Требуется найти оптимальное распределение активных средств, т. е. назначить для воздействия по объектам (целям) такие наряды х° іактивных средств, при которых суммарный эффект (ущерб), выра­ жаемый формулой (1.1), будет наибольшим.

2. Метод максимального элемента и алгоритм решения задач Из анализа цели, преследуемой в задаче, вытекает, что максимизация

ущерба F (X) эквивалентна

максимизации величины ущерба, при­

ходящегося в среднем на каждую

единицу из N средств, за счет кото­

рых достигается этот ущерб, т. е.

 

 

 

max F (X) ~

max {

= v (Х)\ .

(1.6)

X

X

{ N

)

 

Средний ущерб, приходящийся на одно средство v (X), будет макси­ мален, если на каждом шаге процесса закреплять одно из равноэф­ фективных средств для воздействия по тому из объектов і = lt, где

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

Другого рода эквивалентность, с которой встретимся далее, будет состоять в совпадении значений глобальных экстремумов и вида целевых функций, но при различных системах ограничений. Знаком — будем обозначать эквивалент­ ность преобразований, соотношений (см. стр. 287).

13

прирост ущерба на данном шаге процесса (Д/+) наибольший. Можно

полагать, что такой процесс распределения, не учитывающий

пер­

спективу, а исходящий только из интересов каждого

шага,

будет

тем не

менее оптимален,

так как, во-первых, каждая

из функций

F, (х;)

выпукла кверху и

составляет убывающую последовательность

приращений ущерба Дtk от действия каждого очередного средства-

Fi(xi) = A i {\ -E*i ) =

= і4ги г + і4г8г©г-f- ... + .Дге*г 1сог *=

хі

= АИ ~Ь ^2/ "Ь ••• ~f- ^Xji —

Дki,

юг, (1.7)

 

k=\

 

и, следовательно, допускает распределение средств равными и мини­ мальными порциями (единицами), а, во-вторых, в силу равноэффективности средств не потребуется взаимозамена каких-либо двух единиц средств.

Итак, идея метода определена и, чтобы записать алгоритм, необ­ ходимо только определить выражение для вычисления величины при­ ращения ДГ целевой функции, получаемого ею на произвольном (7-м) шаге процесса оптимизации. К моменту назначения t-й единицы средств на t-u шаге процесса уже было распределено (/ — 1) единиц,

так что /-й

объект поражен

с некоторой

вероятностью

(і — 1, ..., S)

и, следовательно,

текущее значение целевой функции

можно записать в виде:

 

 

 

F/+- , =

S

(1.8)

 

( = i

 

После назначения /-й единицы средств для воздействия по /-му объекту (/ = 1, ..., S) текущее значение целевой функции увеличится только за счет увеличения ущерба /-му объекту и станет равным

 

 

F t =

 

2

 

 

 

 

(1.9)

 

 

 

 

І іфI

 

 

 

 

 

где

=

1 —

 

— вероятность

непоражения

/-го

объекта

до «распределения»

t-то средства; ег =

1 — сог — условная

вероят­

ность его непоражения t-u средством.

 

 

 

 

Прибавляя и вычитая из правой части формулы (1.9) член

 

и учитывая

запись

(1.8), получаем:

 

 

 

 

 

 

Ft = F

t

-

гі)—Аі ^{і ~ 1)-

 

(МО)

Искомое

приращение после

элементарных

преобразований за­

пишется

в виде:

 

 

 

 

 

 

 

ä t

= F t - F U i

= Al Q \i-^iol^ A \t- X)iält

/ = 1,

..., 5.

( U l )

* Убывающая геометрическая прогрессия.

14

Если Ai — исходная важность (вес)

объекта, то

А\‘~ г) —

= y4;Q^_1) — его вес после распределения

(t — 1) единиц

средств.

Знак плюс у функции Ft означает только то, что эта функция не убы­ вает по мере увеличения t (приращение Д/+ неотрицательно).

Теперь можно записать алгоритм решения задачи (1.1) — (1-3).

Алгоритм 1.1.

 

 

 

 

1°. Вычислить компоненты вектора {Д^}5 по формуле

 

Д/+ = Лгш/,

1 = 1 ........S.

(1.12)

2°. Назначить единичное средство на

і = If й объект

согласно условию

 

Д,+ =

шах Дф.

(1.13)

Если таких элементов несколько, то из них берется любой.

3°. Вычислить текущие значения компонент вектора

Х ^ :

х{( ~

если

l=j=U,

(xj0)= 0 ,) 1 =

1.......S,

х\‘~ !) + 1>

если

l = h-

 

(1.14)

 

 

4°. Вычислить текущее значение целевой функции:

F + = F + _ l ± A f t ,

F+ = 0,

t: = t + 1.

(1.15)

5°. Проверить условие t < N: да — перейти к п. 6°,

 

нет — перейти

к п. 7°.

 

 

 

 

6°. Пересчитать компоненты текущего вектора ІД /'}^ согласно оператору:

 

AJ*- ,

если

I ф

It,

(1.16)

 

Д+ ' =

если

/ =

/(.

 

Д ^ 8/,

 

Перейти к п. 2°.

 

 

 

 

7°. Отпечатать

результаты (F (Х0) = Ffo, {х“>= {х)^*}),

прекратить вы­

числения.

Метод, реализуемый данным алгоритмом, называют методом мак­ симального элемента, по-видимому, потому, что на каждом шаге про­ цесса назначение соответствует максимальному элементу текущего

вектора {

) s )-

3.

Оценка эффективности алгоритма. В работе [42, стр. 170

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

15

Рассмотрим работу алг. 1.1, начиная с t = 1-го шага процесса. Имеется вектор {A fjs, компоненты которого (приращения) перенуме­ рованы в порядке убывания величин:

Д2+ >

...

> A f >

...

> A s,

 

т. е.

 

 

 

 

 

А1со1^

...

> Л ;

...

^ A s^ s-

(1.17)

Согласно алг. 1.1 при данной нумерации приращений средства будут назначаться вначале на первый объект (/ = 1). Будет назначено та­ кое их количество k, при котором уже очередное (k + 1)-е средство не обеспечивает на объекте I = 1 наибольшее приращение, т. е. усло­ вие (1.17) нарушится:

А\ е* CÜJ.<

Аг оз2 ^

...

Ах(0 ; ^ ...

(1.18)

Тогда очередное

(k + 1)-е

средство будет назначено

по объекту

I = 2 и далее назначения будут чередоваться между первыми двумя объектами до тех пор, пока очередное приращение на третьем объекте не станет большим, чем на каждом из первых двух. Очередное средство

вэтих условиях согласно алг. 1.1 будет назначено по третьему объекту

ит. д. до распределения всех N средств.

Такая процедура, как можно заметить, приводит к максималь­ ному уравниванию текущих приращений Af на некоторой совокуп­ ности г объектов с наименьшими порядковыми номерами, соответст­ вующими последовательности (1.17). Если среднеарифметическое значение А/" для первых г объектов обозначим через %, то можно записать:

Ах ехр ~ 1% fa Аг гх2‘—1со2 а*

...

« АгехГг~ хсог « К^

> Л г+1шг+1>

...

^ A S(äS,

(1.19)

где вектор \хі}г удовлетворяет условию (1.2).

 

Смысл выражения (1.19) таков,

что приращение

A f, получаемое

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

остальных (I > г) объектов,

т. е.

 

 

 

( «

X,

если

хх>

0

(/ ^ г),

1 ^

к,

если

хх=

О

( 1.20)

(I > г ).

-^*_.Но величина Д/+, по сути дела, является разностным аналогом частной^ производной dF (Х)/дхх при единичном приращении пере­ менной (Д Іт = 1). Поэтому вместо (1.20) можно записать:

'

Mite)

для

I 'С г,

dF (X )

Axi

 

( 1.21)

дхі

 

 

Дду

для

1>Г.

 

 

 

 

16

Условия (1.21), можно рассматривать как дискретный вариант необходимых условий Лагранжа для экстремума*.

Действительно, откажемся временно от условий дискретности и неотрицательности переменных xt. Тогда задача (1.1) — (1.2) может быть решена с помощью метода множителей Лагранжа. Функция Лаг­ ранжа будет иметь вид:

Ф (X) = F ( X ) - è ^ 2 x l- N j ,

(1.22)

где б — множитель Лагранжа. Необходимые условия экстремума:

дФ =

dFj (Xj) в= о

1,

(1.23)

дхі

дхі

 

 

Допустим, что в этих условиях переменные, начиная с хг+1, отри­ цательны. Чтобы соблюсти условие неотрицательности (1.3), эти переменные следует принять равными нулю, тогда условия (1.23) примут вид:

- — (- *)

= 8

для

/

(х,фО),

(1-24)

дхі

 

 

 

 

 

dFi {хг)

Q

дЛЯ

j-> r

(^ = 0).

(1-25)

дхі

 

 

 

 

 

Вследствие выпуклости вверх функций Ft (xt) условия (1.24), (1.25) являются также и достаточными условиями максимума.С «точностью до дискретности» они совпадают с условиями (1.21). По мере умень­ шения шага дискретности** вплоть до нуля условия (1.21) и условия (1.24), (1.25) совпадут с точностью до обозначений, что говорит об оп­ тимальности алг. 1.1***.

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

Следует отметить, что условия (1.19), а значит, и (1.21) соблю­ даются в ходе всей оптимизации, поэтому и все промежуточные реше­ ния тоже оптимальны.

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

сложений ftfN, умножений &SN, сравнений «SJV.

*См. [3, стр. 115].

**Под шагом дискретности понимается разность между двумя допустимы­ ми смежными значениями переменной хі. Полагается, что этот шаг одинаков во всем диапазоне изменения переменных.

***В (1.22) знак < заменен на = , что допустимо, если хотя бы одна из функ

ций Fi (хі) неубывающая.

____

 

ГОС. ПУЗЛЙТн а Я

I

17

НАУЧНО-7

ИЧЕСЧАЯ

!

 

гиг ШААТС

к ■■ . Р

 

4.Некоторые обобщения, а) Алг. 1.1 может быть использова

для

решения обратной

задачи — задачи

минимизации

ресурса N

для обеспечения эффекта

на объектах (целях) не менее заданного.

 

Требуется найти

 

 

 

s

 

 

 

 

 

 

 

 

xh

(1.26)

 

 

УѴ(Х0) =

т іп

2

при

условии

 

 

X

i=

l

 

 

s

 

 

 

 

 

 

 

 

 

 

 

 

 

F ( X ) =

2

1

 

 

 

 

(1.27)

 

 

І =

 

 

 

 

 

Хі {0,

1........ Щ,

і =

1,

..., S.

 

 

Алгоритм остается тот же, но процесс прекращается в момент вы­

полнения условия

 

 

 

 

 

 

 

 

П =

2

 

 

 

 

(1-28)

 

 

 

/= і

 

 

 

 

 

что

и определит значение

N (Х 0).

 

 

 

 

 

б) Не вносят новых трудностей и такие дополнительные ограни­

чения, как

 

 

 

 

 

 

 

 

Хі <

а г,

і = 1, ....

S,

(1.29)

 

Аг ( 1 - < 0 < А гз,

і — 1,

..., S.

(1.30)

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

Обобщения не снижают точности решения. Это следует из того, что задача при наличии указанных дополнительных ограничений может быть сведена к исходной, оптимальность решения которой доказана. Такое сведёние осуществляется путем эквивалентных преобразований функций Ft (хг). Так, ограничение (1.29) равносильно следующему изменению вида функций Ft (xt):

( Pi (Хі),

если к, ^ а.,

' - ' W - U c i

если x]> а[.

Аналогично может быть учтено и ограничение (1.30). В обоих случаях функция Ft (хг) остается выпуклой кверху.

в) Ограничение вида

s

(1.31)

і=і

легко сводится к виду (1.2) путем замены переменной xt на yJGt, однако при этом утрачивается целочисленность решения и возникают некоторые дополнительные трудности, от которых, впрочем, можно легко избавиться.

18

Более удобен другой прием, позволяющий свести задачу к исход­ ной без потери целочисленности решения. Алг. 1.1 при этом изменится несущественно:

вместо Аt = A[‘- ' 4 необходимо вычислять величину Af+ = = АГ : Gi-

процесс следует заканчивать при выполнении условия (1.31). Получаемое решение оптимально, так как приводит к удовлетворению условий оптимальности Лагранжа. Покажем это. Составим функцию

Лагранжа:

 

 

s

 

 

 

$>(X) = F(X)— 8

 

 

 

I ] Gt xt~ G

(1.32)

Для оптимальности требуется,

чтобы

выполнялись

условия:

дФ (X)

dFi (хі)

-öGi = О,

г =

1; ..., S.

(1-33)

а

л

. . . .

охі

охі

 

 

 

 

 

Заменяя производную ее разностным аналогом (1.11), имеем (для

конца процесса — t =

N):

 

 

 

 

 

 

— 6G ,= 0,

/ = 1 ,

.... S.

(1.34)

Или окончательно (с учетом неотрицательности xt)

dF(X)

 

I « Ö .

если

xt > 0 ,

дхі ~

Gi

\ < б,

если

(1.35)

Хі = 0.

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

5. Пример расчета. В качестве примера применения алгоритма рассмотрим решение следующей задачи.

Имеется s = 10 районов, в одном из которых находится цель. Априорная

вероятность нахождения цели в t-м районе равна А і (2 А і ~ 100%). Требует-

і

ся так распределить N = 10 равноэффективных поисковых единиц по районам, чтобы полная вероятность обнаружения цели была максимальной. Поисковые возможности средств разведки заданы вектором {со,}.

Математическая формулировка задачи выражается формулами (1.1)—(1.3). В табл. 1 приведены условные вероятности со* обнаружения цели в і-м районе одной поисковой единицей.

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

по­

следовательность текущих векторов {А;+}(А = {А\*~

Из строки t =

1,

где записаны компоненты вектора Mjtüj}, для первого шага процесса оптими­

зации, следует, что одна (первая) поисковая единица согласно п. 2° алг. 1.1 назначается в район і = = 6, следующая — в район /2 = 5 и т. д. в соответст­

вии с максимальными элементами вектора {Д*>^. Согласно п. 6° алг. 1.1 про­

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

= { А ^ — 1' ац},

которая соответствует району, куда была послана поисковая единица (1х = '6). Решение можно записать в виде последовательности номеров районов по­

иска (цепочки назначений), которая выявляется из табл. 1:

(lt)N = (6 - 5 - 1

7 -> 10 -* 8 - 4

6 -* 10 7).

(1.36)

* См. сноску*** ңа стр. 17,

19

Соседние файлы в папке книги из ГПНТБ