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

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

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

о которой сказано в § 5.2(3). В таблице представлено два цикла расчетов. Нуме­ рация циклов (Т) ведется в первой вертикальной графе. В первом цикле ста­ вится задача выполнить норму по каждому виду ресурса по крайней мере

на 80% (ух = 0,8). Для этого вместо вектора {с‘-0)}т берется вектор {с^0)}т :

7<.°> =0,8с|°>, і = 1, ... , я. (5.165)

Для первого и последующих шагов текущие значения компонент этого век­ тора пишутся в графе 5 (в числителях дробей). В той же графе (в знаменателях

дробей) пишутся величины приращений

Ауі — /;-й переменной, необхо­

димые для удовлетворения і-го ограничения.

Номер lt-й переменной определяется

согласно (5.139) и записывается в графе 4.

Соответствующая I f й переменной

компонента вектора {^/^}т выделена жирным шрифтом (графа 3). Величина при­

ращения АУ{

соответствует минимальному элементу строки графы 5

(жирный

шрифт). В графе 6 записаны номера ограничений, удовлетворяемых

(в виде

равенств) при данном приращении Ifй переменной и т. д.

графе 5

Второй

цикл начинается с

вычисления невязок и записи их в

(t = 5), после чего действует алг.

5.2а, начиная с п. 6°.

 

На всех циклах, кроме последнего, нет необходимости вести вычисления с точностью более двух-трех знаков, так как в силу произвола в выборе уг ф 1 это не повлияет существенно на конечный результат. Для величины ут можно рекомендовать диапазон 0,6 ~ 1, однако, по-видимому, величины ут, количество циклов и размерность задачи взаимосвязаны и зависят от требуемой точности решения.

Табл. 43 не содержит в себе исходных условий задачи, поэтому работать

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

сцелыми числами, то можно обойтись и одной рубрикой 2, при этом в правом столбце вместо с}°> = с* следует записать приведенный ресурс с (с — 200). В це­

лом

порядок работы с двумя таблицами следующий. Из

табл.

42 (рубрика

t =

1) путем суммирования по столбцам находим вектор {

j-1 ’}m

и записываем

его в графе 3 табл. 43 (t = 1).

Максимальная компонента укажет номер нара­

щиваемой переменной (графа

4).

Для этой переменной из табл. 42 (рубрика

t = 0) выбираются элементы ajV, которые совместно с величинами с^0)

поз­

воляют найти и величины Дің t

[см. (5.144)]. Минимальная из них (Ау1Л=

5,3

для t = 1) определяет номер (kt — 4) удовлетворяемого ограничения и величину шага (графы 6 и 7 табл. 43 для <= 1). Далее элементы строки і = kx= 4 табл. 42 (рубрика t = 1) вычитаются из соответствующих элементов строки t = 1 гра­ фы 3 табл. 43, а результаты записываются в очередной строке той же графы. Затем все повторяется снова, пока не удовлетворятся все ограничения до уровня не менее заданного — ут, что учитывается согласно (5.165). Потом цикл повторяется и т. д.

П р и м е ч а н и е . Укажем на некоторые аналогии, которые могут пред­ ставлять интерес.

 

Алг. 5.2а имеет общие моменты с алг. 5.1а (метод СО). По сути дела, век­

тор

не что иное, как Асвертка, образованная из множества R 'f г-норми-

рованных ограничений, взятых в равном соотношении. Оба алгоритма имеют циклическую структуру и в каждом цикле число шагов не более числа ограниче­ ний. Алг. 5.2а также можно считать бесконечношаговым (d -> оо), если потребо­ вать от него максимальной точности решения. Однако, если алг. 5.2а обеспечивает приближение к оптимальному решению сверху, то алг. 5.1а (точнее, его моди­ фикация для решения задачи § 5.2(1)) дает оценку снизу.

Заканчивая рассмотрение предлагаемых методов ЛП, приведем еще один пример, как обобщение предыдущего. В табл. 44 записаны исходные условия за­ дачи ЦЛП и вычислительная схема, соответствующая алг. 5.2 с учетом двух доработок (стр. 234).

243

t I L t

*4. II .£ o

1/18

 

 

 

 

 

 

/

 

 

 

 

 

min

 

 

 

 

 

/

 

 

 

 

1

1

2

1

3

1

4

1

5

1

6

 

1

 

 

3

 

 

 

 

 

 

1

2

1

4

1

5

І

 

 

 

 

 

ö 7

 

 

 

 

t / L t

І

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

c i

 

 

 

 

 

bi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,0

 

3,0

 

2, 5

1

5,0

 

3,0

 

4 ,0

 

2,0

 

3 ,0

2,5

 

5,0

 

3,0

 

 

 

 

 

 

 

 

 

 

1

—5

 

1

 

2

 

0

 

—3

 

2>

50

 

 

 

 

 

 

 

 

 

2

4

 

0

 

1 —4

 

1

 

—6

40

 

 

 

 

Ц и к л

 

 

3

2

 

6

 

7

 

2

 

0

 

1

30

 

 

 

 

A(/2= 1 0 ,

Д т/ з == 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

—3

 

2

 

—3

 

7

 

5

 

3

5 /9 8

 

 

 

 

A t/5 = 3

 

 

 

 

 

 

 

20

 

 

 

 

 

 

 

 

 

5

1

 

4

 

0

 

6

 

—2

 

4>

15

 

 

 

 

 

 

 

 

 

 

3,0

 

3,0

 

3,0

 

3,0

 

3,0

 

3,0

cU -i>

 

 

 

 

 

 

 

 

 

1

—30,0

 

4,0

 

9,6

 

0

12,0

 

6,0

50

1

— 19,2

 

2 ,6

6,1

 

0

— 7 ,9

2

30,0

 

0

 

6,0

12,0

 

5,0

—22,5

40

2

19,5

 

0

3 ,9

 

— 7 ,8

 

3 ,9

3

20,0

 

40,0

 

56,0

 

8,0

 

0

 

5,0

•30

3

 

 

 

4

—45,0

 

20,0

—36,0

 

42,0

50,0

 

22,5

6/123

 

 

 

 

 

 

 

 

 

 

 

 

20

4

 

 

*---

 

5

20,0

 

53,5

 

0

 

48,0

—27,0

 

40,0

15

5

 

 

 

4 ‘>

70,0

117,5

 

63,0

98,0

55,0

 

73,5

Дт/2 = 6

4 6)

0 ,3

 

2 ,6

1 0 , 0

 

< 0

 

< 0

Т а б л и ц а 44

6

4,0

Ll

 

 

 

 

41

 

 

33

 

 

— 58

 

 

— 3

 

 

— 19

 

3 ,8

32

 

— 14,5

26

 

— 146

 

— 26

 

— 53

 

< 0

> CO II

3

---- •—ч,-.

-JC

чЛ»>

245

1

—26,4

3,5

8,5

0

—10,6

5,3

44

1

—7,2

1,0

2,3

0

—2,9

1,4

12

2

30,0

0

6,0

—12,0

5,0

—22,5

40

2

12,0

0

2,4

—4,9

2,0

—8,9

16

3

—6

3

— — — — — — —216

2/30

 

 

—14,4

16,8

 

9,0

8

7/144,5

 

 

 

 

 

4,5

4

4

—18,0

8,0

20,0

4

—9,0

4,0

—7,2

\ Щ

1Щ

5

—9

5

—53

Д<.2> <0

11,5

0,1

4,8

4,4

<0

II

4

7> <0

5,0

<0

<0

7,1

<0

Аг/в = 3

<N <

Лг/з= 5

1

—24,0

3,2

7,7

0

—9,6

4,8

40

1

—6,6

0,9

2,1

0

—2,7

1,3

11

2

30,0

0

6,0

—12,0

5,0

—22,5

40

2

6,0

0

1,2

—2,4 j

1,0

—4,5

8

3

— — — — — — —30

3

— —

— —251

3/40

 

 

 

 

_

j _

 

8/147,5

 

 

 

 

 

 

 

4

0

4

—9,0

4,0

—7,2

4,8

8,0

4,5

4

 

 

5

— — — — — —25

5

—47

A f

6,0

3,2

13,7

< 0

< 0

<0

> co II

4

8> < 0

4,9

<0

2,4

6,3

1,3

Ді/5=1

1

—19,2

2,6

6,1

0

- 7 ,9

3,8

32

1

—8,6

1,1

2,7

0

—3,4

1,7

14

2

27,0

0

5,4

—10,8

4,5

—20,0

36

2

5,3

0

1,0

2,1

0,9

—3,9

7

3

•--

■--

—58

3

—■

—251

4/49

 

 

 

 

 

 

 

9/150

11-3,011 —

 

 

 

 

 

4

—27,0

12,0

—21,6

25,2

30,0

13,5

12

4

ІІ-2.4Ц

—1

5

--•

—23

5

-

1 -

—45

Л<4)

< 0

14,6

<0

14,6

26.6

<0

Ai/5= 3

Л<9> <0

1,1

1,3

<0

<0

<0

Дг/з= 1

Kl

O'

 

 

 

 

 

 

 

/

 

 

 

 

min

 

 

1

1

2

1

3

4

1

5

1

6

t/L{

І

 

 

 

 

 

 

ьі

 

 

 

 

с</-і)

 

 

 

 

 

 

 

 

 

 

 

 

 

2,0

 

3,0

 

2,5

5,0

 

3,0

 

4,0

1

 

1

—7,2

 

0,9

 

2,3

0

—2,9

 

14

12

10/153

2

4,6

 

0

 

0,9

- 1 ,8

 

0,8

—3,3

6

3

 

 

 

 

—258

 

 

 

 

 

 

4

—4,5

 

2,0

—3,6

м

 

lâTÖj

 

2,7

2

 

5

 

 

 

 

 

—45

 

Л(Ю>

<0

 

м

 

< 0

<0

 

<0

 

0,8

Лг/2=1

 

 

 

 

 

 

 

1

—6,6

 

0,9

 

2,1

0

—2,7

 

1,3

11

 

2

4,6

 

0

*0,9

—1,8

 

0,8

—3,3

6

11/156

3

 

 

■—

 

—264

4

—6,8(1

 

1 -5 ,4||

 

 

0

-

 

 

 

 

 

 

 

 

 

 

 

 

 

5 — — — —

 

 

—49

 

4<п)

<0

 

0,9

 

<0

< 0

 

<0

 

<0

Лг/2= 1

 

 

 

 

 

 

П р о д о л ж е н и е т а б л . 44

/

 

 

1 1 2 1 3 1 4 1 5 1 6

m i n

t / L t

i

 

 

 

2,0

j 3,0

2,5

bi

3,0

4,0

са~і)

 

1

1 5,0

ci

 

—3,0

0,4

1,0

0

— 1,2

0,6

5

ю

2

IM

0

0,3

o t О 1

f 0,2

— 1,1

2

3

j

 

 

 

to

—303

t"-

4

0,3

 

 

 

 

О

—0,2

—2

 

5 — — — —

—59

 

Л(.15)

<0

0 , 4

<0

<0

<0

<0

Ay2= 1

 

 

 

 

 

 

 

 

 

 

 

1

—24

0,3

0,8

0

—0,9

0,5

4

 

2

IM

0

0,3

—0,6

0,2

—1,1

2

со

3

—.

—309

t o

4

— — —

—4

 

 

5

 

—63

 

дОб)

<0

0 , 3

1,1

< 0

< 0

< 0

> CO II

 

 

■Щ* -»м, • • -у.*» • -s*»

 

1 - 6 ,0

0,8

1,9

0

- 2 ,4

1,2

10

2

4,6

0

0,9

- 1 ,8

1

СО СО 1

6

со о.

12/158,5

3

—270

4

—0 ,3||

— І-0.2Ц

—2

 

 

5

— — — — — —53

Д<12>

<0

0,8

1,0

<0

<0

<0

ДУз=1

 

1

 

 

Цикл

 

 

8

 

2

 

 

 

 

5

13/169,5

 

Ау3 = 2,

Ау2= 2

 

4

 

 

1

 

3

 

 

 

 

 

 

—277

 

5

 

 

 

 

 

 

—53

Д<13>

 

1

 

 

 

 

 

I

1

—1,2

0,2

0,4

0

- 0 ,6

0,3

2

 

 

2

ш

0

0,4

—0,9

0,4

—1,7

3

 

 

 

1

 

 

 

 

14/172,5

3

—303

 

 

 

 

4

—6,8

3,0

- 5 ,4

 

 

3,4/

3

 

5

— — — — — —61

4

14

<0

3,2

<0

1,8

4,3

2,0

Дг/5=і

 

1

1 ,2

0 , 2

0 ,4

 

0

0 ,6

0 , 3

2

 

2

I M

0

0 ,1 0 ,2

0 ,1 0 ,4

1

17/118

3

 

— 316

4

F 3TÖII

fl2,411

 

— 1

 

5

 

— 63

 

л < 1 7 >

< 0

0 , 2

< 0

 

< 0

< 0

< 0

Д( / 2 = 1

 

1

0 , 6

0 ,1

Ш

 

0

0 , 3

0 ,1

1

 

 

 

 

 

 

 

 

 

,5

2

jö ä j

0

0 ,1 0 , 2

0 ,1 0 ,4

1

 

 

 

 

 

 

 

 

 

183

3

 

— 322

 

 

18/

4

•------

_

]

_

— 3

 

 

 

 

5

 

— 67

 

л < 1 8 >

< 0

0 ,1 1 0 ,2

 

< 0

< 0

< 0

A y 3 = 1

 

J

 

 

 

 

 

 

 

 

 

О

0

26

29

 

0

11

0

183,5

 

У/

 

 

 

 

 

 

 

 

 

 

У/

др

0

2 5 ,5 5

2 8 ,8 8

 

0

11,1

0

182,2

П р и м е ч а н и е .

На шаге t = 7

ошибочно дано прира­

щение переменной у3 (вместо у2). В силу марковского свойст­ ва алгоритма это не повлияло на конечный результат.

С первой доработкой мы уже познакомились. Элементы а $ , подвергав­ шиеся этой доработке в табл. 44, обведены прямоугольником. В двойные прямо­

угольники заключены элементы, подвергнут доработке б).

Впервые

необ­

ходимость ее применения возникла на 9-м шаге для элементов а ^ , аі,|*.

Если

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

первой или третьей переменной, то в силу отрица­

тельности величин a\*J, affl

ограничение і = 4 будет нарушено в обоих случаях

на 2 ед.:

 

 

 

 

 

 

 

 

4 9) =

4 8) -

ßi4 =

—1 —(— 3) = 2.

(5.166)

В соответствии с (5.153) получим поправки к вектору (5.152):

 

 

Да<84>=

—45,0 — —;1- ^ - ^ - =

3,0,

Д4 84>-

—36

= 2 ,4 . (5.167)

14

20 (—3)

 

 

34

20 ( —3)

4

«Отрицательный стимул» не обязательно улучшает решение. Иногда он только приводит к изменению порядка наращивания переменных или просто повышает «запас точности». Например, отказ от него на 9-м шаге процесса при­ вел бы только к изменению порядка назначений.

Полученное целочисленное решение (предпоследняя строка табл. 44) совпало с точным и мало отличается от дробного. Общее число шагов согласно алг. 5.2 равно:

m

 

d = 2 2/7 = 26-^ 29441=66.

(5.168)

/= I

 

Однако при ручном счете удалось обойтись всего 18-ю шагами. Здесь можно учи­

тывать циклическую структуру процесса оптимизации.

отрицательны. Сравни­

Цикличность может возникать,

если некоторые а у

вая вектор-столбцы {c|8,j (і — 9) и jcj11)}(<=

12), замечаем, что

(4 8) = 7)ж

ж (с'11» = 6), (с'8> =

—1) «

(4 1X)

= —2),

а «отстающее» ограничение (і = 2)

заметно «подтянулось»

(было

4 8> =

14, стало 4 12) =

10), при этом получили

приращения по две единицы переменные j =

2;

3:

 

 

{Д2ц} = { і//12> — ^/9)}б = {°;

2;

2;

°}-

(5Л69)

Следовательно, можно сделать укрупненный шаг (цикл), при этом состояние

каждого из ограничений, по крайней мере, не ухудшится.

13-й и 5-й шаги процесса являются именно такими. На ш' е t = 5 прираще­ ния Дyj большие, чем при 2 = 13, так как там было меньше риска сделать недо­ пустимо большое приращение (далек конец процесса).

Удаленность от конца процесса позволяет вести наращивание компонент вектора решения с переменным (убывающим) шагом*.

II. Це л о ч и с л е н н о е в ы п у к л о е п р о г р а м м и р о в а н и е

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

* Можно брать квантованый шаг:

л ( О

(

a

m

)

 

= m ax|

~(fy

2

Aj ! lj I a = 0 ,2 -j-0,3 уточняется экспериментально.

248

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

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

Простейшей из нелинейных задач математического программиро­ вания является задача выпуклого программирования, общая поста­ новка которой дана, например, в [18] на стр. 310.

Типичным является выпуклый (вогнутый) характер целевой и огра­ ничивающих функций. Однако мы дополнительно наложим на них ус­ ловие аддитивности, необходимое для работы с методом НФ. Будем также иметь в виду требование целочисленности переменных.

§ 5.3. Задача максимизации в выпуклом

программировании

1. Постановка задачи. Рассмотрим задачу максимизации функции

П

 

F(X)=

s Ы * ; ) ^ т а *

(5.170)

 

 

І = 1

 

х

 

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

 

 

 

 

 

2 8л (хі) <

ь,

(bj > о), / е Jm,

(5.171)

 

і= 1

 

 

 

 

 

Xi 6{0, 1, ...},

i =

l,...,n ,

(5.172)

где

все /у (лу) выпуклы кверху

(не

обязательно

строго), а все

gji

(хі) — книзу. Такое условие важно потому, что обеспечивает совпа­

дение локального и глобального (условного и безусловного) максимума (см. [20] стр. 136) и позволяет не задумываться о выборе оптимальной величины приращения Алу на каждом шаге процесса. Будем полагать, что для всех і, \

Ы 0 )= 0 , /,(0 )= о . (5.173)

Следуя § 4.1 (1), нетрудно показать, что это условие не сужает общно­ сти, особенно, если все функции gy* (лу) и / г (лу) неотрицательны, что мы и допускаем. Для применения метода НФ условие g}i (0) = 0 обязательно, так как ставит при г-нормировке все ограничивающие функции в равные исходные условия, чем обеспечивает однозначность решения. Ниже мы рассмотрим некоторые задачи, укладывающиеся в приведенную схему.

249

2. Метод и алгоритм решения. Метод решения остается тем же — это метод НФ (см. §5.1(2)). Алгоритм решения сохраняет основные черты алг. 5.1 и состоит в следующем.

Алгоритм 5.3:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1°. Вычислить компоненты вектора {до|-Ч|

(і =

1...........п) согласно

фор­

мулам

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ДС)Ч =

max

Д

 

, где A

=

 

 

 

 

 

 

 

 

 

1</ <m

1

 

 

 

'

 

 

 

 

 

=&gji И'>)^Ь) = Ы * Г ° + ') ~ e j t W

' " ) )

- 7 ~

Г ’

(5-174)

 

 

 

 

 

 

 

 

 

 

 

 

 

6

f - ‘)

 

И Л И

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(хі°) = bg)?= ёЖх?]) — «IP (x(t

u)>

 

 

где

 

 

 

 

 

 

 

 

 

*

« - ч

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для первого шага (^=1)

имеем:

х(0) = 0,

і £ / п;

ft(°l =

6. ,

jfJm. Вели-

 

\_

ГУ!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

^

bj или выбирается по усмотрению оператора.

 

чина Ь равна —

 

 

т

і = 1

 

 

 

 

 

 

 

 

 

 

 

 

 

2°. Уточнить подмножество /14 переменных, по которым возможна опти­

мизация на t-м шаге процесса:

 

 

 

 

 

 

 

 

 

 

 

 

І{() =

{£ I ÄG^

< Ъ,

 

 

 

 

/ (І)= /„ .

 

 

(5.175)

3°. Проверить, не пусто ли это подмножество (/14 ф 0):

 

 

 

да — перейти

к

п. 4°,

 

 

 

 

 

 

 

 

 

 

 

нет — перейти

к

п.

7°.

 

 

 

 

 

 

 

 

 

 

4°. Вычислить

компоненты вектора

 

{o(4J^ по

формуле

 

 

 

A/iW °)

 

 

1

ft W <-1) +

l ) - / l (* !'~ I)) b

^

7 <0-

(5-176)

ѵ}‘>=

 

 

АGjt}

 

AOjt}

 

 

 

 

 

 

 

 

 

 

 

 

5°.

Определить номер I =

lt наращиваемой

переменной согласно условию

 

 

 

 

 

а = max t>!4,

 

i f

 

 

 

 

 

 

(5.177)

 

 

 

 

 

ч

 

 

 

 

 

 

 

 

 

 

 

6°.

Пересчитать

текущие значения

величин:

 

 

 

 

 

 

 

 

*<4 =

 

 

 

если і ф Ч ,

 

 

 

(5.178)

 

 

 

Ч -J- 1,

 

если і

=

It,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b f =

 

 

Agf‘>- ^ L —

=

bU~ i) _

gjh {xu ~ ч +

1} +

 

 

 

 

 

 

+ ^ w ; - 1))*

 

 

 

 

 

 

 

 

(5л79>

 

=

Л - i +

Afct Ц°)= Ft- i + f it ( x jt y - f i, Ң

-

4 ) , Fo= 0 .

(5.180)

Перейти к п. 1°,

/: = / + 1.

 

 

 

 

 

 

 

 

 

 

7°.

Отпечатать результат

 

 

 

 

прекратить вычисления.

250

Величины Ag<*> (х.(і)), по сути дела, являются аналогами коэф­

фициентов ау.К Это сразу видно,

если положить

gji{xi)= ап хі-

От

шага к шагу приращения АgW изменяются теперь не только

за

счет г-нормировки, но

и за счет

увеличения

угла наклона

функции

gjiix^),

для которой

величина

Ag^(x<7>)

(как и

а(9

для

а<9 хР( )

является угловым коэффициентом в данной точке.

 

 

В алг. 5.3 отсутствует вертикальная нормировка. Это и понятно. Для задачи ЛП в-нормировка равносильна замене переменных. В дан­

ном случае это не даст эффекта.

k раз

 

 

Объем вычислений примерно в

превышает

объем счета

по алг. 5.1

(при одинаковых размерах задач).

Величина k равна сред­

нему числу

элементарных операций,

необходимому для

вычисления

значения функции gn (хг).

Поскольку алг. 5.3, по сути дела, является обобщением алг. 5.1 и оба они реализуют метод НФ, то все соображения о точности, о проверке решения, в основном, будут справедливы и здесь.

Перейдем к рассмотрению типовых примеров, иллюстрирующих

вычислительную

схему и

некоторые случаи применения алг. 5.3.

3.

Некоторые

задачи.

о ранце. Формальная постановка этой за­

а)

Обобщенная задача

дачи соответствует задаче ЛП §5.1 (1), если область определения каж­ дой переменной xt, заданную в § 5.1 (1) множеством (5.3), ограничить двумя значениями:

Хі 6 {0; 1}; і = 1,..., п.

(5.181)

Достаточно общая физическая трактовка задачи состоит в сле­ дующем. Имеется п неделимых вещей. Ценность і-й вещи равна с* еди­ ницам (і = 1, ..., п). Каждая (і-я)вещь характеризуется параметрами ал (весом вещи аіи ее объемом ап,- ..., стоимостью погрузки аті).

Необходимо отобрать некоторое количество вещей так, чтобы суммарная ценность была наибольшей, но в то же время не было бы нарушено ни одно из т ограничений: по суммарному весу отобран­ ных вещей (не более bt ед.), по их общему объему (s^ b2 ед.), по сум­ марным затратам на погрузку ( ^ Ьт ед.) Прежде чем рассмотреть кон­ кретный числовой пример, напомним, что условие (2.181) можно учесть путем соответствующей деформации целевой функции (см. (5.121) и

рис. 19). Алг. 5.3 при этом практически вырождается в алг. 5.1, если после каждого шага исключать переменные, получившие единич­ ные приращения*.

Вводя ограничения (2.181), рассмотрим пример, исходные усло­ вия которого записаны в табл. 40. Для получения решения вычислим

вектор [см. (5.176) или для данного случая — (5.10). Такой вектор записан в строке II табл. 45. В строке III указаны но-

* Алг. 5.1 в случае решения задачи о ранце более общ, чем алг. 5.3, так как допускает отрицательность части коэффициентов я7ц. При линейных ограничениях это обобщение можно распространить и на алг. 5.3.

251

Т а б л и ц а 45

 

1

 

1

ю

со

о

см

 

о

см

со

оо

 

см

о

см

-

см

о

—н

г-

-

см

о

 

00

о-

см о

а

Г-н

о

,™1

со

 

 

о

г-

о

 

СО

05

 

г-н

о

ю

Гр

г—

 

Гр

Оі

 

’"Н

о

со

см

 

--Н

 

.

а

СМ

Гр

 

г-н

СП

 

 

о

о

о

4-Н

 

СП

СП

о

 

 

СО

00

-

 

<— 1

г-

-

СО

00

— н

 

ю

о

-

 

со

Гр

-

со

оо

 

см

00

-

г-4

о

-

 

т-‘

о

 

■+ѴІ

II

ЙГ

1

!

Гр

со

 

со

1

1

1

1

1

!

асм

1

 

со

СП

 

СО

со

см

сD

г-

 

г-

ГР

— «

 

со

 

 

ю

юсо т-

со

о

^-н

см

 

см

со

 

Гр

ІЛ

Гр

’■—1

CM

гР

о

 

00

о>

со

 

СО

с о

см

 

оо

— ’

CD

— (

гр

 

г-

СП

 

CD

см

LO

 

оо

»“И

оо

 

00

о4

ю

осо

СП

СП

гр

 

 

 

 

 

 

о

h-

ю

 

ю

 

со

,

 

 

 

гр

со

 

со

 

см

 

 

 

 

о

 

 

 

 

 

 

о

 

 

 

 

 

 

 

 

 

о

 

 

 

о

 

 

 

ю

о

 

со

 

о

,

 

 

 

см

 

 

 

 

 

 

 

 

 

 

 

 

о

оо

ю

 

сп

 

CD

 

гр

со

 

со

 

см

 

со

со

 

LO

ю

 

|

 

 

 

 

 

 

 

ю

 

LO

 

со

 

О0

 

 

ОО

 

СО

 

г-

,

 

СО

 

оо

 

 

 

 

 

со

 

 

см

 

 

1

00

со

 

см

 

Р-.

со

со

 

CD

 

ю

|

(

СП

 

г-

 

оо

оо

С-н

СО

 

CD

 

г-

СП

 

гр

 

ь-

Г-н

со

^-Ц

см

 

 

 

СТ>

со

 

со

 

05

 

гр

со

 

гр

 

см

 

гр

оо

 

см

 

о

 

см

 

со

 

см

 

ю

СП

 

 

 

со

«-Н

00

 

 

со

 

Г"-

 

1

оо

 

оо

 

см

«-Н

со

ю

 

х о

 

ю

 

ю

со

 

а >

 

оо

т-Ч

оо

00

 

со

 

 

ю

гр

 

г-

 

гр

 

ѵо

гр

 

гр

 

со

 

со

о

 

00

 

о

 

V-

V-

 

CD

 

CD

 

CD

 

 

1—4

 

со

 

00

00

 

on

 

00

 

оо

см

 

со

 

00

 

00

СП

 

05

 

со

 

CD

со

 

СП

 

со

—н

ю

ю

 

гр

 

гр

 

со

со

со

 

со

 

СП

СП

 

сП

 

СП

 

о

ю

со |

см

оо

гр «—4

оо

гр Г-Н

СО

о о

со

г-

о о

см

Гр

о

СО

— н

 

т-Ч

СО

1 -1

ѵм

1—4

CM

 

 

»-Н

1— 1

 

—н

о Т-Н

см

со

гр

ю

й

й~

*

VII

252

мера переменных в порядке убывания величин

Любой эле­

мент вектора {ѵ^} вычисляется согласно (5.10), например:

(5.182)

max а,л-,

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

вует

некоторое

подмножество /„

индексов і £

/ н а

Іп.

 

 

В табл. 45 мы ограничимся

иллюстрацией

только

первой

по­

ловины множества /„ (см. табл.

40), так как после решения стало

ясно,

что все

подмножество / н

охватывается

ею.

В

рубрике

IV

(табл. 45) приведены текущие значения каждого вида ресурса, соот­ ветствующие указанному в строке III порядку определения значащих

компонент

 

вектора решения

{х[ }.

 

 

 

 

Табл. 45 составляется с помощью рубрик II и III табл. 40 следую­

щим образом. Вычисляются компоненты щ (і =

I, ..., «),

и в строке

III табл. 45

производится нумерация этих компонент в порядкеубы­

вания. В той же

последовательности (Ni) вычисляются текущие зна­

чения

ресурсов

и записываются в рубрике IV.

Например,

номеру

N2 =

1 соответствует переменная і = 2 (табл. 45), которая

получает

единичное

приращение*. В этой таблице на пересечении

строки V

и столбца

і

2

ставится единица. Из соответствующих

компонент

Ь)0) — Ь= 93

(табл. 45, і = 0) вычитаются элементы йу-2, которые берутся

в

табл. 40

 

из столбца і = 2.

Результаты записываются

в

столбце

і

2

табл.

45 (N2= 1 =t).

 

 

 

 

 

Процесс повторяется до тех пор, пока дальнейшая оптимизация

станет невозможной. В рассматриваемом примере это случилось при N 19 = 19, что и определило количество значащих компонент х\ и под­ множество / н. Вектор решения {х{ }„ представлен строкой V. Соответст­ вующее ему значение целевой функции равно

L' = 2 сі х' і149.

І6/jj

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

достигнуто сокращение объема вычислений

в d раз

(d = 2 х[,

і 6 / н)- Задача становится доступной для

решения

с помощью

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

сравнений та шп, делений та п,

вычитаний та m 2 х[ ^ шп.

І

Для г-нормировки исходной задачи требуется не более — 1 )п операций деления.I*

* v2 = max Ѵі = 1,8.

I

253

Чтобы повысить точность, необходимо увеличить число итераций. В строке VI приведено решение, полученное путем увеличения числа итераций до четырех. Индекс при единице (строка VI) указывает номер итерации, на которой данная переменная получила приращение. Так, на первой итерации было дано приращение переменным: і = 2, 3, 6, 8, 12 и 15.

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

видов ресурса

и степень неравномерности компонент ѵ,. Чем боль­

ше очередная (/г-я)

компонента ѵк превышает оставшиеся, тем меньше

вероятность того, что перенормировка задачи повлияет на очередное назначение.

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

bf \ необходимо после перенормировки задачи отсчет разброса ре­ сурсов вести от его нового приведенного значения.

По мере увеличения дискретности задачи более мелкими должны быть и шаги. Если дискретность исходной задачи велика, то возмож­ на существенная погрешность за счет «комбинаторного эффекта». Меры борьбы подобны рассмотренным нами в §4.1(3).

Задача может быть обобщена на случай, когда некоторые с, от­ рицательны. Здесь успешно применяется идея выбора нового, нену­ левого исходного плана решения [см. (5.154)], причем задача облегчает­ ся тем, что известны предельные значения компонент вектора реше­ ния {х°і }„ (Хі пр = 1). По сути дела, о таком же подходе говорится

в[22] на стр. 232.

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

щего ресурса, заданного вектор-столбцом || bj ||m. Последовательное распределение ресурсов с помощью алг. 5.3 позволяет наиболее целе­ сообразно осуществлять текущее планирование, не допуская, однако, таких шагов, которые бы потом вошли в конфликт с перспективными целями. Сказанное можно иллюстрировать рассмотренным примером, если ему придать иную интерпретацию.

Пусть

имеется п различных

проектов. К

заданному

сроку

(Т = 5 лет — рис.

20) необходимо отобрать и реализовать некоторую

совокупность / н

проектов ( / н с:

/„) так, чтобы

получить

от их

внедрения

максимальный эффект.

Эффект от внедрения проекта Пг

(і — 1, ...,

п) равен Сі и не зависит от момента (срока) его внедрения

тг. Потребность в ресурсах для реализации г-го проекта определяется вектор-столбцом || ап || т, а общий запас ресурсов к моменту Т- вектором И6,-Ит .

Для приведенной постановки решение уже было получено и пред­ ставлено в табл. 45. Говорить об оптимальной очередности реализации отобранных проектов Пг £ / н) имеет смысл в том случае, если, во-первых, поступление хотя бы одного вида ресурса в течение проме­ жутка времени Т задано как функция времениBj (т) или время реализации проектов включено в систему ограничений; во-вторых,

254

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