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

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

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

Однако что можно сказать о точности алг. 4.1а в случае, когда его

решение X не соответствует сопряженным точкам? Анализируя ра­ боту алг. 4.1а, можно отметить, что несопряженное решение возни­ кает потому, что на некотором шаге процесса оставшегося ресурса = ДА недостаточно для того, чтобы k-ю компоненту текущего вектора увеличить на величину A+xh, соответствующую оптимальной величине шага. Невозможность попасть в точку С (рис. 8 ), которой

соответствует сопряженное решение F (Х+) (в дальнейшем будем на­ зывать его сопряженно-максимальным) вынуждает позаботиться хотя бы о наилучшем распределении остатка ресурса ДХ. Алг. 4.1а по­ зволяет это сделать. Привлека­ ются несопряженные элементы совмещенной матрицы \ѵпІАх}і ||,

полученные

по

правилу

с к о л ь з я щ е й

т о ч к и , при

этом совсем

необязательно,

чтобы остаток ресурса был на­ значен для наращивания компо­ ненты x(k \ Полученное решение

F (А) может соответствовать не точке В, а некоторой точке Д. Однако наилучшее распределе­ ние остатка ресурса ДА не всег­ да уберегает от погрешности, порой грубой, если этот остаток относительно велик.

Чтобы получить оценку точности алг. 4.1а, когда полученное решение не является сопряженным, снова обратимся к выпуклой обо­ лочке. Из рис. 8 видно, что’искомое оптимальное решение будет лежать где-то между точками А и В илиАювпадет с одной из них. Оценка

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

F (А0) = F (А") + ѵАХ > 0,

(4.25)

+

где j? — средняя скорость прироста функции Fk (xh) на участке от

xh (Х~) до xh (А+) (V берется непосредственно из таблицы типа 17,

а значение F (А- ) получается в ходе вычислений по алг. 4.1а, п. 7°).

Величина ожидаемой погрешности П (А) запишется в виде:

П (А) =

F (А-) +

vAX F (А),

 

где F (А) — решение, полученное по алг.

4.1а.

 

В этом случае оценка относительной погрешностей выразится фор­

мулой

 

 

 

 

П(Х) t

Р ( Х )

t

F ( X )

(4.26)

 

 

 

 

F ( X 0)

F ( X 0)

 

F ( X - ) + v A X

 

140

Для рассмотренного ранее примера с распределением b = 23 ед. ресурса имеем:

F(X) = 240,7, F(x ~)~ 229,2, ДХ = 3, о = і> ,і,3 = 6 ,8 .

Первые три величины взяты из табл. 19 (строки 3, 5), а элемент он; з — из табл. 17. Оценка погрешности сверху согласно (4.26) равна «4% (на самом деле решение оптимально). Если известен механизм образования погрешности и может быть оценена ее величина, то не составляет особой сложности и доработка алгоритма, гарантирующая величину погрешности не более допустимой —(Зд.

Один из возможных способов состоит в том, чтобы обеспечить ком­

поненте x'k приращение Axt (рис. 8 ) за счет соответствующего умень­

шения некоторых других компонент. Проще всего' эту идею можно реализовать, если применить тот же алг. 4.1а, но в качестве исходного плана взять не нулевой вектор Х<°\ а положить его /г-ю компоненту ,40) равной значению x t . Если снова получится остаток, то следует снова оценить погрешность, используя первую оценку (4.25) макси­ мального значения целевой функции. Если потребуется дальнейшее улучшение решения, то теперь в исходном плане могут появиться уже две компоненты, отличные от нуля, и так далее, пока не будет достиг­ нута требуемая точность решения или не закончится ресурс.

В целом уточняющий решение алгоритм (доработка алгоритма 4.1а) будет заключаться в следующем.

Алгоритм 4.16.

 

погрешности

по формуле (4.26)*

и сравнить

1°.

Вычислить оценку

ß < ßn:

да — отпечатать

результат, прекратить

вычисления;

 

 

 

 

нет — перейти к

п.

2°.

 

 

 

 

 

2°.

Выбрать новый (г-й)

исходный план

X(0r) =

|x(or)j^ для т-го варианта

решения

согласно оператору:

 

 

 

 

 

 

 

( Д°г' ,

 

 

если і ф

Д 0** =

0,

 

 

х<°г> =

 

 

если i = kr_i,

1 = 1 ,

...,

«.

 

I x\°rl -f- А+Хі,

Величина A+Xu — приращение £г_і-й компоненты, обеспечивающее полу-

Г — 1

чение сопряженно-максимального решения (исходного плана для г-го варианта). 3°. Вычислить значение X(°r) = X <0r—і1 + А+д^_ ( и проверить условие

Х ' Ѵ > 6 :

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

нет — перейти к п. 4°.

4°. Согласно алг. 4.1а вычислить решение Хг для нового исходного плана

Х 10ГК Перейти к п. 1°.

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

* В случае сопряженного решения ß = 0, так как F (Х ~ ) = F (Х+) =

= F (X) и АХ = 0.

141

Вместо условия ß < ßR в алгоритме можно проверять относитель­ ную величину остатка е < еД) где

е

А^д ^

Рд F (X) __

Рд чср

(4 27)

 

Ь

1 Рд b v k

1 Рд ѵк

 

Формула (4.27) получена из (4.26).

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

точности. Устранить недостаток можно на основе анализа условий,

при­

водящих к появлению погрешности,

и последующей доработки алго­

ритма.

 

 

 

 

По объему вычислений алгоритм может быть сравним с алг.

1.1,

реализующим метод МЭ.

Для изучения каждой из функций Ft (х;)

и вычисления элементов

каждого

столбца

совмещенной матрицы

I Vji/Axji I] необходимо вычислить b

значений

каждой функции,

по­

этому общий объем счета будет пропорционален величине nb. Основным ограничением размерности задачи, решаемой за одно об­

ращение к ЭВМ является объем памяти для хранения исходной инфор­ мации, особенно если исходные функции Ft (xt) задаются табличным способом. Практически неограниченное увеличение допустимой раз­ мерности решаемой задачи легко достигается путем расчленения ис­ ходной задачи на ряд аналогичных задач, но меньшей размерности. Так, если объем исходной информации b х N в г раз превышает объем ОЗУ, то размерность задачи (N) уменьшается в г раз путем разбивки на г равных интервалов. Решение г частных задач позволяет получить

исходную

информацию (обобщенные функции ср7-

(Х Д

(Х} ^ Ь,

j =-■ 1, ...,

г) — кривые решений частных задач — см.

рис.

7) для ре­

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

Доработка основного алгоритма не приводит к сколь-либо за­ метному увеличению объема вычислений, поскольку п. 1° алг. 4.1а (вычисление элементов совмещенной матрицы), занимающий большую часть времени счета (90—95%), выполняется только один раз для всех просматриваемых в каждой частной задаче вариантов решения.

Задача § 4.1 (1) может решаться и с помощью других методов. При прочих равных исходных условиях объем счета по методу дина­ мического программирования примерно в b раз будет большим, чем при алг. 4.1а [17, 45].

Метод нитей [46] является некоторой модификацией метода ди­

намического программирования в сторону

увеличения наглядности

и сокращения счета, когда функция Ft (хг)

кусочно-линейная и с не­

большим числом изломов.

 

142

Сметодом И. Н. Кузнецова читатель знаком по работам [48] и

[49].По существу там уже были использованы для решения задачи выпуклые кверху оболочки.

Весьма ограничены возможности решения задачи путем непосред­ ственного применения условий Лагранжа или Куна—Таккера [13, 3].

4. Некоторые обобщения. Алг. 4.1а не претерпевает существен­

ных изменений при следующих обобщениях исходных условий.

 

а)

О б р а т н а я

з а д а ч а .

 

Математическая

формулировка

обратной задачи записывается с помощью тех же формульных выра­

жений, что и прямой. Обратная задача состоит в определении мини­

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

целевой функции не менее заданной величины Адоп.

 

 

 

Изменение в алг. 4.1а

будет состоять только в том, что после

каждого шага необходимо будет проверять условие

F {ХЩ ^

Адоп

и при его выполнении прекращать

процесс.

 

 

Ft доп

 

 

Введение дополнительных ограничений Ft (хг) ^

для

не­

которых і

учитывается соответствующим изменением вида функции,

а следовательно, и значений некоторых из элементов совмещенной

матрицы \\ѵн/Ахл ||.

 

 

 

 

 

 

 

 

 

 

б) Д в у х с т о р о н н и е

о г р а н и ч е н и я

н а п е р е ­

м е н н ы е .

Ограничения вида:

 

 

 

 

 

 

 

 

 

 

х'и^Хі^х'и,

 

г = Л .......k,

 

 

 

 

также

учитываются изменением

вида функции

 

FL(xt), которой

на

«запрещенных» участках оси oxt приписывается нулевое или постоян­

ное значение Ft (х'іг). Алг.

4.1а при этом не меняется.

 

 

 

в)

О г р а н и ч е н и е

в и д а

2 аіхі ^

^

является

частным

случаем

более общего:

 

 

 

 

І

 

 

 

 

 

2 £ г(*г)< & ,

 

 

 

 

(4.29)

 

 

 

 

 

 

 

где g t (хі) — функция произвольного вида.

 

 

 

 

 

Его рассмотрению посвящается § 4.3.

 

 

 

 

 

г)

 

Ц е л е в а я ф у н к ц и я м у л ь т и п л и к а т и в н о г о

в и д а .

Метод ПП позволяет максимизировать

целевую функцию

вида:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F ( X ) = U

Ft (xt) > 0

 

 

 

 

 

 

 

 

 

 

i = 1

 

 

 

 

 

 

при прочих равных условиях.

 

 

 

 

 

 

 

 

Известное преобразование

 

 

 

 

 

 

 

 

max F (X) ~ max

{ 1nF (X) =

£ ln ]Аг (хг)|} =

max 2 фг (xt)

 

 

X

X

 

 

 

 

 

X

1

 

 

позволяет свести задачу к исходной постановке (4.1)—(4.3).

 

 

д)

 

В а р и а ц и о н н а я

 

з а д а ч а .

В работе [461

отмечается,

что задача

§ 4 .1 (1 ) может

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

дискретный

аналог

143

непрерывного варианта задачи, состоящей в определений/ максимума

функционала (см. приложение VI).

1

шах [F (t,x(t))dt

у

(4.30)

x ( t ) J

 

 

по классу функций x(t), удовлетворяющих условию

 

1

 

 

^ x (/)cft< b ,

 

(4.31)

о

 

 

где F (і, х) — функция произвольного вида.

Чтобы перейти к разработанной вычислительной схеме, необхо­ димо сделать разбиение поверхности F (t, х)-плоскостями:

 

it = At - ^i -----> i = 1, ...,

п,

=

 

(4.32)

а интегралы заменить конечными суммами:

 

 

 

ZFV^xVi)) At,

2 х (*,)А * .

 

(4.33)

 

i

I

 

 

 

Далее,

вводя обозначения хг = х (**),

Ft (xt)

=

F (tt, x (f;)), сво­

дим задачу к виду (4.1)—(4.3).

 

 

 

 

Точность вычислений будет зависеть только от поведения функ­

ций х° (tt)

в промежутках между разбиениями, т.

е.

от числа разбие­

ний. На рис. 9 показано, что интеграл (4.30) численно равен площади A'B'C’D' — проекции цилиндрической поверхности ABCD, проходящей

144

через искомую кривую x{t), на плоскость F (t, х), 0, t. Функция F (t, х) показана проходящей через начало координат, F (і, 0) = 0. Как отме­ чалось ранее [см. (4.4)1, это не сужает общности задачи.

Помимо отмеченных могут быть введены комбинации из указан­ ных ограничений.

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

Рис. 10.

встречающимся на практике и позволяющим выявить некоторые спе­ цифические особенности метода ПП.

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

а) К у с о ч н о-л и н е й н ы е ф у н к ц и и . Исходные функ ции Fi(xi) заданы на рис. 10 и 11. Совмещенная матрица представлена табл. 20. Элементы матрицы, соответствующие сопряженным точкам и участкам, выделены жирным шрифтом. В табл. 21 помещены резуль­ таты расчетов вариантов задачи для разных значений ресурса Ь.

В строке j = 4 табл. 21 приведен случай, когда к алг. 4.1а не­ обходимо применить доработку (т. е. алг. 4.16). Согласно алг. 4.1а по­ лучается первый вариант решения (Ь = 8 , F = 17,5 — в табл. 20

он выделен жирной линией). Пусть допустимая точность решения рав­ на Рд — 5%. Оценка точности решения по формуле (4.26) дает:

ß =

17,5

0,14.

(4.34)

14,5+1,92-3,0

 

Согласно доработке

(алг. 4.16),

берется новый

исходный план

решения:

 

 

 

 

*40,,=

6 , х]°*> =

0, /= 1 ,2 ,3 .

(4.35)

145

 

 

 

/

Данный план приводит ко второму варианту решения, который и

•является оптимальным (F0 = 2 0 , 0 — пунктир в табл.

2 0 ).

Оценка погрешности показывает,

что

/

 

g ,= 1 _ 2 М О =

0 013<

 

(4.35)

г20,26

Имея оптимальное решение, теперь можно найти истинную по­ грешность, при первом варианте решения:

ßncT20’°2~ о7,5 = ° > 13-

(4 -37)

F i( Xi )

10

8

6

4

 

 

1

2

3

*

5

6

хі

 

 

 

 

 

 

 

Рис. 11.

 

 

 

 

 

 

 

Данный пример взят из работы [46], где приведено и его решение

методом нитей.

 

 

 

 

 

( з а д а ч а о р .а н ц е )

б)

Д в у з н а ч н ы е ф у н к ц и и

Применим метод ПП для решения комбинаторной задачи, которую

принято называть

«задачей о

ранце».

Ее содержание

заключается

в том,

что турист из п предметов должен взять с собой такие,

которые

по весу не превысят Ь кг,

а их суммарная

ценность

будет

наиболь­

шей. Ценность і-й вещи

обозначена через

ct >

0,

а ее

вес — через

йі > 0

= 1 , ...,

п).

 

 

 

 

 

 

 

 

если

Формально задача представляется в виде схемы (4.1) —(4.3),

положить, что

 

 

 

 

 

 

 

 

 

 

 

F,

при Хі ^

аи

Fi{Xi)

СіЛ*і = аі)>

(4.38)

 

при

 

или

 

 

Хі < а г

 

 

0 ,

( Х і =7^= CLj),

 

 

 

I ~

 

п.

 

 

 

 

 

 

 

146

 

 

 

 

 

 

Та б л и ц а

20

 

 

 

 

І

 

 

 

 

/

 

1

 

2

3

 

 

4

 

 

 

 

 

1

 

1,50

 

4 , 0 0

5 ,00

 

1,00

 

1,0

 

1,5

0 , 5

 

1,0

 

 

 

 

2

 

1,50

1

Г ,о о

(Т 37‘ 1

1,00

 

2,0

J

0,5

1,5

1

2,0

 

 

з

 

2,00

 

1,00

0,37

j

1,00

 

 

3,0

 

1,5

2,5

[

3,0

4

 

1,00

 

1,00

0,37

I

1,25

 

1,0

 

2,5

4,0

j

4,0

 

 

 

5

 

1,00

 

1,00

0,76

}

1,60

 

2 , 0

 

3,5

4,5

I

5,0

 

 

 

6

 

1,00

 

0

1,31

і

1,92

 

 

6

0

 

3 ,0

 

5,5

1

 

 

 

 

 

 

7

 

0

 

0

1,52

 

 

0

 

 

6,0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а 21

В а р и а н т

b

 

А

4

*3

-2

 

F (х„)

1

0,5

 

0

0

0,5

0

 

2,5

2

4,0

 

2,0

1,5

0,5

0

 

11,5

3

5,0

 

3,0

1,5

0,5

0

 

14,5

4

8,0

 

3,0

1,5

0,5

3,0

 

17,5

8,0

 

0,0

1,5

0,5

6,0

 

20,0

 

 

 

5

17,0

 

3,0

1,5

6,5

6,0

 

42,0

6

20,5

 

3,0

5,0

6,5

6,0

 

45,5

Такой вид функций интересен тем, что каждая из них будет иметь

только по одной сопряженной точке (xt =

а;) и только они могут войти

в оптимальное решение. Такие функции при прочих равных условиях имеют наименьшее множество сопряженных точек и наибольшую вероятность появления погрешности при алг. 4.1а.

В табл. 22 представлены исходные данные для рассматриваемо­ го примера. Специфика функций (4.38) приводит к тому, что в каждом столбце совмещенной матрицы (4.20) будет только по одному положи-

147

Вари­ ант

1

2

з

4

5

Обозначения

Сі

<4

Щ

АН

Х= {х г)

 

О

]|

X

•*»

 

 

 

 

 

 

 

/

 

 

 

 

 

 

 

T ,â

блица

22

 

 

 

 

і

 

 

 

 

1

2

3

4

5

6

7

8

п = 9

3

4

5

18

61

6

7

25

72

1

2

3

14

48

5

6

23

67

3,00

2,00

1,70

1,30

1,27

1,20

1,17

1,10

1,07

1

2

3

14

48

5

6

23

67

1

2

3

14

48

5

6

23

0

1

2

3

14

48

0

0

0

67

тельному элементу vjj,

поэтому вся матрица вырождается в совмещен­

ный вектор:

 

 

 

 

 

 

 

 

 

\üjlL

АXi

где vr.

•>

 

 

(4.39)

 

I AxW ,bn

 

 

 

 

 

 

 

Указанному вектору соответствует строка 3 в табл. 22.

 

Положив, что общий ресурс равен Ъ=

135, с помощью агл. 4.1а

получим решение:

 

 

 

 

 

 

 

 

F(X)^. F(X- )= 129,

21*! = 102,

Д Х = 33, ( о =

1,07).

(4.40)

 

 

і= 1

 

 

 

 

 

 

Компоненты вектора решения

X,

совпадающего

с

сопряженно-

минимальным решением Х~, записаны в строке 4 табл.

22.

 

Оценка погрешности равна

 

 

 

 

 

 

ß = l ----------- — --------=

0,215,

f'ßHcT = l — — =

0,208V

(4.41)

^

129^ 1, 07.33

 

 

V

163

 

- )

Ѵ

Согласно алг. 4.16 выбирается новый исходный план решения:

 

Х9°г> = 67,

лг/°г> =

0,

г =

1, ..., 8 .

 

 

(4.42)

Последующее применение алг.

4.1а приводит к точному решению,

записанному в строке 5 табл.

22. Значение целевой функции при этом

равно 163

ед.

 

 

 

 

 

 

 

 

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

148

ма ограничена даже при использовании ЭВМ. Это следует из оценки максимального числа насыщенных планов, которое имеет место тогда, когда величины аг = 1 , = 1 , ..., п) и, значит, ограничения на фор­

мирование планов фактически отсутствуют. Количество насыщенных планов в этом случае будет равно S = С„ и будет максимальным при

Ь = [ п ~

П р и м е ч а н и е . " Можно дать более точную оценку S' для общего случая

( а іф const). Она равна S'

.

где k = [6/acr>], аСГ) =

1

п

= С „ ,

2 а*. Для нашего

 

 

у

ѵ

п 1=1

примера S' = 36.

По оценке, данной в работе [47], имеем

= 170. Истин­

ное число насыщенных планов равно 6.

 

 

 

В работе

[47, стр.

26]

приводится

пример,

характеризующий

оценку затрат требуемого времени счета на перспективных ЭВМ (быст­

родействие 1 0 млн.

элементарных операций в секунду) для задачи

с размерностью п =

50 и при затратах на оценку одного плана

100 элементарных операций. Время счета составит 400 лет — для пе­

ребора всех возможных планов, количество которых равно 2",

и 400:

Ѵп Ä/ 56 лет — для перебора только насыщенных

планов.

Однако

самое

неприятное заключается в том, что

число

планов

растет

так быстро, что при увеличении числа п всего с 50 до

62 перебрать все

варианты оказалось бы возможным не ранее,

чем через 1 , 6 млн. лет

и хотя

время перебора насыщенных планов

составит при этом всего

25,6 тыс. лет, тем не менее рассчитывать на пользу от полученного результата было бы неразумно.

Именно поэтому для решений указанной задачи наиболее удобным будет являться «алгоритм дяди Абраши» (см. [47], стр. 26, а также [3]), тем более, что из класса эвристических методов с достаточным основа­ нием он может быть переведен в класс формальных, так как является частным случаем, к которому сводится решение задачи о ранце ме­ тодом ПП.

В рассмотренном примере проверка лишь одного дополнительного варианта обеспечила оптимальное решение. Применительно к задаче о ранце максимальное число дополнительных вариантов может быть

оценено сверху величиной k (целая часть дроби):

 

г Ь - t

где аср _-- 1

(4.43)

-аср.

П

( = 1

 

В табл. 23 приведены исходные данные варианта задачи о ранце b = 552 ед.), в котором пришлось помимо основного варианта про­ верить пять дополнительных. (Согласно оценке (4.43) число дополни­ тельных вариантов не превышает 10: k = 552 : 55 » 10). В табл. 24

приведены все исходные планы (левая часть этой таблицы), соот­

ветствующие им решения Х Т(средняя часть), значения целевой функ­ ции и оценки точности (правая часть). Просмотр пяти дополнительных

149

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