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

книги / Решение некоторых многоэкстремальных задач методом сужающихся окрестностей

..pdf
Скачиваний:
3
Добавлен:
12.11.2023
Размер:
12.71 Mб
Скачать

б)

условие

PJpi П

P,fPi =

Ф((,

i — 1.

2, .... п; i <

/), т.

е.

 

(*i -

x ,f

+

(у, - уif + (г, -

z ,f -

r ? , «

9[?) >

0,

(4.23)

где

 

 

 

 

 

___________ Ч — Ч____________.

 

 

 

0

$ =

arcsin

 

 

 

 

 

 

 

 

V(XI -

х(р +

(у, -

<//)2 + (г, -

г/)2

 

 

 

 

 

0$ =

arcsin

 

У! —

У!

 

 

 

 

 

 

 

 

 

 

 

 

V (Xt — * /)2 + (Ш — у /)

 

 

 

 

в)

условие

Р(/р,

П

К А / =

0 (/ = 1,

2,

п;

/•=

1,

2,

т ) ,

т. е.

(х{ — X/)3+

(yt — у*f

+ (*t — г*)2 — г« (0«, 0$?) >

О,

 

 

 

где гы (01V.

0

$) — функция

плотного

размещения тел

Рк

и Pt

[54]; Xt, у{, гi — координаты полюса тела Р{ в неподвижной системе координат OXYZ-, р{, kt — границы тел Р{ и Kt.

Вследствие выбранного положения параллелепипеда Q относи­ тельно неподвижной системы координат переменные xlt yt, z( могут

принимать

лишь неотрицательные значения: xt, yt, Z{ >• 0, i =

= 1, 2,

п, т. е. G целиком находится в первом октанте Зп-мерной

ортогональной системы координат.

Приближение к локальному экстремуму функции х (Z) будем находить, пользуясь принципом последовательно-одиночного раз­ мещения [54], который реализуется в виде следующей итерацион­ ной формулы:

1

ykijL.ii Zkijt<) ~

min

Xj (xt,, ykt,

• • •

 

^ k t+ l'yk l+ Г2*Ц.1,€0

 

 

• • • i

Ukti ^ko *kt+j* Ukt^.i>

(_()» * —

11» 2, • • . ,

N],

 

* « 1 ,2 , . . . . n — 1.

 

(4.24)

Существует несколько различных реализаций этой формулы, отли­ чающихся друг от друга способом нахождения min х (**,,..., ZktXti+It

Для решения задачи в данной работе предлагается матричный подход, основанный на использовании годографа вектор-функции плотного размещения [54]. Свойства годографа дали возможность уменьшить область поиска локального экстремума и предложить та­ кую организацию вычислительной работы с матричной моделью си­ стемы размещаемых тел, которая позволила существенно снизить затраты машинного времени на поиск одного локального экстремума.

Опишем подробнее, как реализуется поиск приближения к ло­ кальному экстремуму функции х (Z)"согласно итерационной формуле (4.24) на базе матричной модели размещения обьектов и их годогра­ фов вектор-функции плотного размещения.

При размещении тела Р{ в й геометрическим местом возможных положений его полюса является область

 

Ri = # io \ (и RH U, Я «)»

(4-25)

где

— множество точек, принадлежащих области,

ограниченной

годографом Г/о вектор-функции плотного размещения тела Р,- и об­ ласти Й; Rij, Rit — открытые внутренние области годографов функ­ ций плотного размещения пары тел Р,- и Р,- и тела Р, и области запре­ та Kt.

Очевидно, что область (4.25) для всех значений i 1, 2, ..., п не пуста, в противном случае задача не имеет решений. Кроме того, эта область может оказаться единственной точкой, но не для всех i, так как в противном случае задача имеет единственное решение, поиск которого тривиален.

В общем случае область (4.25) трехмерна, многосвязна. Разместить тело Р, в Q — значит найти точку Т( (xt, у(, г,) £ Ri, удовлетворя­ ющую требованиям принципа последовательно-одиночного размеще­ ния (4.24).

Заметим, что принцип последовательно-одиночного размещения объектов позволяет поиск приближения к локальному экстремуму функции цели х (Z) в области G размерности 3п заменить п-кратным поиском наилучших точек Tt £ R t (i = 1, 2, ..., п).

Справедливы следующие утверждения, значительно сокращаю­

щие объем вычислений, необходимых для

поиска точки Т{ £ R, при

размещении в й

тела

Р г.

 

условие

 

Утверждение

1. Выполняется

 

Тi (Xi>

zd

г— 1

пг

Г,о, i = 1, 2, . . . ,

п.

£ U Г*/

U

 

 

/«1

* - i

 

 

тел Р{ (г = I,

Это следует из того,

что рациональное

размещение

2.......п) в й определяется среди плотных

размещений.

 

Если учесть, что Гг/ представляет собой параллелепипед разме­

ром (а( +

aj) X (bi +

bj)

X (hi

+

ht), полюс которого имеет коор­

динаты х

= X/ at, у

= у, bi, Zj = Zj hn то справедливо следу­

ющее утверждение.

 

 

 

 

 

Утверждение 2. Условие

 

 

 

 

(xt, yt, zt) £ t(l (Xj,, -f

ah, у/, +

&/2, Zj, + Л/,)},

 

i = 1 , 2 ,

. . . ,

tv,

p = 1, 2,

. . . . |

выполняется для всех £ троек годографовr iit, Гцг, Гц3, удовлетворя­ ющих условию

U Г,7 Ф 0 .

V=1

Действительно, множество {Т, } включает в себя все точки воз­ можного положения полюса тела Ph локально удовлетворяющие

162

требованиям принципа последовательно-одиночного размещения (4.24).

Итак, поиск точки Tt заключается в переборе таких точек Т{ из

{7^}, для которых выполняется

условие

 

ъ л

I—1

m

(4.26)

П

Л /и /?«.

**

/= 1

t= 1

 

Одна из этих точек полностью удовлетворяет требованию (4.24). Специальным образом организованная последовательность перебо­ ра точек из {7\-ц}(связанная с определенной сортировкой строк матри­

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

Пусть задана некоторая последовательность чисел от 1 до п (пе­ рестановка). Если каждому числу в этой последовательности поста­ вить в соответствии размещаемое тело, то такой последовательности будет соответствовать вполне определенный вариант плотного разме­ щения объектов (гл. 1, §4), т. е. приближения к локальному экс­ тремуму. _

Определение приближения к локальному экстремуму функции

цели и (Z), т. е. реализация очередного варианта размещения

тел

Р{ ( i = 1, 2.......п) в й,

производится по следующему

алгоритму.

Алгоритм 4.1.

 

 

 

Ш а г

1. Построить

матрицу С системы областей

запрета

Kt

( t= 1, 2,

..., m).

 

 

 

Ша г 2. Произвести выборку информации об очередном размеща­ емом теле Р{.

Ша г 3. На основе матрицы С и информации о Р( образовать мат­

рицу 5

 

годографов Г,0,

Г,/, Г« (/' =

1, 2, .... i — 1; < = 1 , 2 , ...

.... m ).

 

4. Произвести сортировку строк матрицы S.

Ш а г

Ш а г

5. Построить очередную точку из множества {7^}.

Ш а г

6. Проверить условия (4.26).

 

 

Ш а г

7.

Если Ttu удовлетворяет

условию (4.26), то перейти к

шагу 8,

иначе — к шагу 5.

 

 

 

Ш а г

8. Координаты полюса тела Р{ положить равными коор­

динатам

точки

Т( .

 

 

 

 

Ш а г 9. Матрицу С дополнить строкой,

описывающей тело Pt

и его расположение в й.

 

 

i +

1 и перейти к шагу 2.

Ш а г 10. Если г < п, то положить/ =

Ш а г

11.

Остановиться.

 

 

моделью системы об­

Матрица

С,

которая

служит цифровой

ластей

запрета

и уже

размещенных тел,

имеет размерность 7 X

X (< +

тп -f- 4)

при размещении тела

Р,-

и содержит следующие

11*

163

элементы:

 

 

 

 

 

 

 

 

 

 

Л/а,

Х<х,

Уа,

Za,

Ха, -f- Я0|

Уа, Ч" Ьа,

2а, +

ha,

 

Nа,

Ха,

Уа,

2аг Яа, -f- Яа,

уа, +

&а,

2аг +

Ла,

 

* 4

Ха^

Уа^

гац

Ха^ +

«а,,

Уа^+

Ьац

Za^ +

На^

где

— номер тела Р7.ц (т] = t +

от +

4). Пять дополнительных

строк матрицы С описывают фиктивные области запрета, которыми заменены грани параллелепипеда Q.

Матрица S образуется путем вычитания из элементов второго, третьего и четвертого столбцов матрицы С величин а(, Ь(, Н(:

Л/а,

, А'а,

&Ша,

h,Zat

h[Xat -(- Яа1

l/a, -|-

/^at2a,

ha,

Л/a,

j Xa.t

&\Уа,

^|2(X2

hjXat Ч~ Я<х,

Уа2“f"

^а2^аг ~b

/la,

Ma,,

\^a^

Hfl/ar,

 

^tXar\ Ч- aa^ ! //a,, +

/’a^fa^ +

h

 

j

 

 

 

1

:

 

Сортировка матрицы S производится таким образом, чтобы

выполнялось

условие

 

 

 

 

 

 

 

га

+

haj >• 2аj_t “Ь h(Xf_1»

(4.27)

причем при

равенстве

в

(4.27)

 

 

 

 

 

Xaj “Ь Яaj

Xa,j_| “f“ &a,i_ji

(4.28)

а при равенстве в (4.28)

 

 

 

 

 

 

 

Уаj Ч~ haj

Уа/_] +

&“/- r

 

Проверка условия (4.26) для точки ^1(1» (**. У(ji* 2«д) (М1~

1,2,...

.... Е) осуществляется по такому алгоритму.

 

Алгоритм 4.2.

 

 

 

 

 

Ш а г

1. Построить матрицу S(1), состоящую из строк матрицы

S, кроме

строк, удовлетворяющих условию Zat ht > ztfl. Если

матрица S(" тривиальна, то перейти к шагу 8.

Ш а г 2. Построить матрицу S<2), состоящую из строк матрицы S(I), кроме строк, удовлетворяющих условию zaj + haj > zt . Если S<2) тривиальна, перейти к шагу 8.

Ш а г 3. Построить матрицу S®, состоящую из строк матрицы S(2), кроме строк, удовлетворяющих условию ха>at < х(и. Если S® тривиальна, перейти к шагу 8.

Ш а г 4. Построить матрицу S<4), состоящую из строк матрицы 5®, кроме строк, удовлетворяющих условию xaj + яа/ < xt . Если S(4) тривиальна, перейти к шагу 8.

Ш а г 5. Построить матрицу S<5), состоящую из строк матрицы

164

 

 

 

 

 

 

 

 

 

Та бл иц а

4.15

Н ом ер

а

ь

h

Н ом ер

а

ь

h

Н ом ер

а

ь

к

о б ъ ­

объ­

о б ъ ­

екта

 

 

 

екта

 

 

 

екта

 

 

 

1

2

12

16

33

2

2

6

65

2

2

40

2

18

12

3

34

16

4

2

66

4

2

28

3

14

14

7

35

14

14

3

67

4

4

9

4

4

4

24

36

18

14

5

68

4

2

21

5

6

4

30

37

2

4

3

69

4

2

6

6

6

14

15

38

2

4

6

70

. 18

10

21

7

4

14

22

39

2

2

1

71

14

2

24

8

8

2

8

40

2

8

2

72

4

6

18

9

16

10

12

41

6

12

8

73

6

4

18

10

18

8

2

42

8

12

3

74

2

14

2

И

6

4

18

43

10

4

9

75

2

14

1

12

2

14

1

44

4

12

7

76

12

2

28

13

4

14

2

45

6

4

26

77

4

14

7

14

14

6

30

46

16

8

5

78

10

8

28

15

8

12

16

47

12

4

3

79

18

14

5

16

8

8

2

48

10

14

9

80

14

2

41

17

2

12

9

49

4

2

26

81

8

2

30

18

18

14

3

50

6

10

2

82

12

6

7

19

6

10

17

51

10

6

16

83

10

14

6

20

4

6

28

52

4

12

5

84

4

14

2

21

16

14

4

53

4

14

9

85

2

14

1

22

6

12

4

54

12

14

1

86

4

2

41

23

14

2

32

55

14

6

7

87

2

8

12

24

6

4

15

56

8

14

1

88

14

6

32

25

10

12

3

57

6

4

30

89

16

2

40

26

4

12

1

58

10

2

35

90

18

2

31

27

14

2

22

59

4

12

И

91

18

12

12

28

12

14

1

60

2

2

36

92

6

2

11

29

2

12

5

61

6

12

12

93

8

4

8

30

18

2

10

62

8

2

10

94

6

4

16

31

6

8

31

63

10

2

21

95

4

6

25

32

10

2

10

64

4

2

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

$

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

4.16

Н ом ер

 

X

 

У

г

 

а

 

ь

 

h

объекта

 

 

 

 

 

184

 

0

 

0

0

 

4

 

14

 

2

185

 

14

 

3

0

 

2

 

14

 

4

186

 

8

 

4

10

 

2

 

2

 

41

187

 

14

 

4

14

 

2

 

8

 

12

188

 

4

 

14

18

 

14

 

6

 

32

189

 

0

 

0

70

 

16

 

2

 

40

190

 

0

 

10

90

 

18

 

2

 

Ч

191

 

0

 

8

100

 

18

 

12

 

 

 

 

 

 

11

192

 

8

 

6

130

 

6

 

2

 

193

 

10

 

4

141

 

8

 

4

 

§

194

 

6

 

8

180

 

6

 

4

 

16

 

 

 

 

 

 

 

 

 

 

 

165

S<4), кроме строк, удовлетворяющих условию уа, bt >• у1и. Если

5<5’ тривиальна, перейти к шагу 8.

 

 

 

 

 

Ш а г 6. Построить матрицу S<6), состоящую из строк

матрицы

S<5),

кроме строк, удовлетворяющих условию уа/ +

ba/ <

yifi. Если

S<6)

тривиальна,

перейти к

шагу

8.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Т а б л и ц а

4.17

Н ом ер

X

 

г

Н ом ер

X

 

 

Н ом ер

X

 

г

о б ъ ­

У

о б ъ ­

У

2

о б ъ ­

У

екта

 

 

 

ек та

 

 

 

екта

 

 

 

1

6

0

2 0 3

3 3

0 0

0 2

1 6 5

6 5

0 2

14

2 4 9

2

 

0

0

3 3 5

3 4

0

6

1 3 9

6 6

0

0

1 6 5

3

4

6

2 8 0

3 5

0

0

2 4 0

6 7

10

0

2 8 7

4

6

16

7 2

3 6

0

2

6 7

6 8

0

2

139

5

10

14

121

3 7

0

4

1 65

6 9

0

16

139

6

 

0

4

148

3 8

4

0

3 0 1

7 0

0

0

2 1 9

7

0

4

18

3 9

0

0

1 9 8

71

0

12

2 0 5

8

 

0

2

1 2 5

4 0

6

2

1 4 8

7 2

0

14

0

9

 

0

0

3 1 0

41

0

0

2 8 7

7 3

0

4

1 25

10

0

4

1 9 8

4 2

10

4

2 0 0

7 4

12

0

3 0 1

11

 

0

16

7 2

4 3

0

12

1 3 9

7 5

10

0

3 01

12

14

0

3 0 1

4 4

0

0

3 0 1

7 6

4

18

148

13

6

0

2 9 4

4 5

0

8

1 6 5

7 7

14

0

2 4 0

14

0

12

1 6 5

4 6

0

0

2 9 6

7 8

8

2

1 4 9

15

0

0

2 0 3

4 7

6

14

1 9 6

7 9

0

2

7 2

16

0

8

1 37

4 8

6

0

3 2 6

8 0

0

18

2 8 7

17

14

0

2 4 9

4 9

0

2

2

81

0

12

2 4 9

18

0

0

3 2 2

5 0

10

4

2 0 3

8 2

0

2

1 7 7

19

12

0

3 8

51

0

14

121

8 3

0

0

2 4 3

2 0

 

4

6

2 4 9

5 2

4

2

2 6

8 4

14

0

3 0 2

21

 

0

0

121

5 3

6

0

3 0 1

8 5

16

0

2 4 9

2 2

 

0

0

3 2 5

5 4

0

0

19 7

8 6

6

14

2 0 6

2 3

 

0

16

2 4 0

5 5

4

12

2 8 7

8 7

10

0

2 0 6

2 4

 

12

0

1 9 6

5 6

6

0

3 2 5

8 8

0

0

2 4 9

2 5

0

0

2 0 0

5 7

0

14

1 9 6

8 9

0

0

1 2 5

2 6

6

0

2 8 7

5 8

0

18

2 4 3

9 0

0

0

2

2 7

 

0

18

2 0 6

5 9

4

2

2

91

0

0

5 5

2 8

0

0

1 9 6

6 0

0

14

2 4 3

9 2

0

12

2 9 4

2 9

 

16

8

121

61

12

2

2 6

9 3

10

14

3 0 1

3 0

 

0

18

1 9 6

6 2

0

16

3 0 1

9 4

6

10

149

31

 

8

6

2 4 9

6 3

4

0

1 6 5

9 5

0

6

2 4 9

3 2

 

0

14

2 9 4

6 4

0

18

1 4 8

 

 

 

 

Ш а г

7. Условие (4.26) для точки Titl(xtll, у1)Х, г^) не выполняется.

Выйти

из

подпрограммы.

 

 

условию (4.26), поэтому по­

Ш а г 8. Точка Ti

удовлетворяет

лагаем Т{ = Т[ . Выйти из подпрограммы.

Отметим, что алгоритмы 4.1, 4.2 и другие, разработанные для построения очередного варианта размещения Рс (» = 1, 2, ... п) в й с учетом области запрета Kt (t = 1, 2, ... m), позволяют все вычислительные процедуры в основном свести к многократным про-

166

веркам логических условий «меньше или равно», «(больше или равно», что приводит к дополнительной экономии машинного времени.

Формирование

последовательностей, определяющих приближения

к локальным экстремумам функции цели х (Z) на области G, осу­

ществляется методом сужающихся

окрестностей.

 

 

 

реше­

 

Как

пример рассмотрим

ние задачи плотнейшего размеще­

ния 95 параллелепипедов,

размеры

которых

заданы

в табл.

4.15

с

учетом 11 областей запрета,

разме­

ры

которых заданы в табл. 4.16, в

параллелепипеде с основанием раз­

мером 18 X 20.

При этом плотней­

шим считается

такое размещение,

которое характеризуется

наимень­

шим значением высоты / занятой

части основного

параллелепипеда.

 

При

решении

данной

 

задачи

сравнивалась эффективность

мето­

да

сужающихся

окрестностей

и

метода

Монте — Карло.

Вторым

способом было

испытано 504 вари­

анта размещения, при этом наилуч­

шее полученное значение / состави­

ло

391 единицу.

Поскольку фор­

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

ожидания составила т = 466,4, а стандартного отклонения а = = 33,5. По способу сужающихся окрестностей было принято пред­ положение о нормальном характере распределения величины /, радиус окрестности изменялся по закону (3,63), длина серии состави­

ла 53 наблюдения. В процессе решения испытано

509 вариантов.

Наилучшему

варианту соответствовало значение f

= 336 единиц.

В табл. 4.17

приведены значения координат параллелепипедов,

соответствующие наилучшему решению. Фрагмент одного вариан­ та размещения параллелепипедов показан на рис. 40.

§8. Упаковка прямоугольников

вполосе

Пусть задана полубесконечная полоса 5 шириной а и набор пря­ моугольников S ( размером а{ X bc (i — 1, 2,..., п). Необходимо прямоугольники разместить в полосе так, чтобы стороны а( были

167

Рис. 41.

Рис. 42.

Рис. 43.

\

параллельны стороне а, а длина г занятой части полосы была наи­ меньшей.

Такая задача является частным случаем трех рассмотренных вы­ ше. Мы получим ее, если в задаче, поставленной в § 7 данной главы, считать высоты всех параллелепипедов равными нулю. К этой же

Рис. 44.

задаче сводится и рассмотренная в §6 компоновка схем генеральных планов в случае резких упрощений в форме объектов в виде целевой функции и в системах ограничений. Наконец, задачу раскроя из § б также можно свести к упаковке прямоугольников в полосе.

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

мических задач.

алгоритмов § 5—7 данной

Кроме того, использованию общих

главы для решения задачи упаковки

прямоугольников в

поло­

се привело бы к непроизводительным

затратам машинного

вре­

мени.

 

 

169

Пусть в полосе шириной 20 размещается 45 прямоугольников, изображенных на рис. 41. Видно, что эти прямоугольники запол­ няют полосу без пропусков. Таким образом, в данном случае речь идет о задаче с известным глобальным минимумом, равным 50.

Результат решения этой задачи методом сужающихся окрест­ ностей показан на рис. 42. Этот результат на 6% хуже глобального минимума.

Рассматривались также размещения указанных прямоугольни­ ков в полосах шириной 18 и 32. Полученные размещения показаны на рис. 43 и 44 соответственно. При этом нижняя оценка глобаль­ ного минимума г) вычислялась следующим образом. Например, для полосы шириной 18 в качестве величины т] выбиралось число 56. Дело в том, что общая площадь размещаемых прямоугольни­ ков равна 1000, поэтому длина полосы не может быть меньше, чем 1000/18 » 56.

Соседние файлы в папке книги