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

2426

.pdf
Скачиваний:
7
Добавлен:
07.01.2021
Размер:
8.54 Mб
Скачать

 

 

 

 

 

 

 

 

Пуск

 

1

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ввод исходных данных:

 

 

 

 

 

 

 

 

 

 

 

 

YПР;lзап_г;lзап_в;(Rg)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ig

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

Определение lg_г, lg_в

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Rг =lg_г+lзап_г; Rв =lg_в+lзап_в

 

5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

YЭ(i,k)=YПР(i,k), где i [1; imax]; k [1; kmax]

 

 

 

 

 

 

 

 

 

i=1:imax

 

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k=1: kmax

 

 

 

7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

∆i=ëRг

 

lû:+ ëRг

lû

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

∆k=ëRг

 

lû:+ ëRг

 

lû

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i1=i+∆i

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

k1=k+∆k

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(i1>imax) ˅

 

 

 

 

 

12

 

Да

 

 

Нет

(i1<1) ˅

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(k1>kmax) ˅

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(k1<1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

13

 

 

 

 

 

 

 

 

rp =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(Di ×Dl)2 + (Dk ×Dl)2

 

 

 

 

 

 

 

 

 

 

 

 

Нет

 

 

14 Да

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

rp>Rг

 

 

 

 

 

 

 

15

 

 

 

 

 

 

 

 

æ

 

2

 

ö

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Dy = ç1

-

 

rp

 

÷ ×

(R )2

 

 

 

 

 

 

 

 

 

 

 

 

 

(Rг )

 

 

 

 

 

 

 

 

 

 

 

è

 

 

ø

 

 

в

 

 

 

 

 

 

 

 

 

 

 

ç

 

2

 

÷

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

y~=YЭ(i,k)+∆y

 

 

 

 

 

 

 

 

 

 

 

Да

 

 

 

 

 

17 Нет

 

 

 

 

 

 

 

 

 

 

y~>YЭ(i1,k1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

18

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

YЭ(i1,k1)=y~

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

Вывод результатов:

19

Останов

 

 

 

 

 

YЭ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.11. Блок-схема алгоритма построения полидистантной поверхности вокруг поверхности препятствий

90

Горизонтальная полуось эллипса по (3.33) будет равна Rг =1,53 УЛЕ. Вертикальная полуось эллипса по (3.33) будет равна Rв =0,5 УЛЕ. Построенная в качестве примера для указанных значений полидистантная поверхность и кратчайшая траектория движения точки для нее приведены на рис. 3.9, б.

Полидистантная поверхность Эквидистантная поверхность

2

1

1

 

Положения груза

2

 

 

Y0 X0 Z0

X0

Рис. 3.12. Кратчайшие траектории, найденные для одной и той же конфигурации препятствий: 1 – в среде с эквидистантной поверхностью; 2 – в среде с полидистантной поверхностью (вид сверху и вид сбоку)

На рис. 3.12 приведены для сравнения эквидистантная поверхность с эквидистантным радиусом 1,5 м и полидистантная поверхность с приведенными выше значениями Rг и Rв, а также кратчайшие траектории, найденные для одной и той же конфигурации препятствий в среде с эквидистантной поверхностью (кривая 1) и в среде с полидистантной поверхностью (кривая 2). Траектория 1 имеет большую длину, чем траектория 2 (14,15 и 13,2 УЛЕ соответственно), что позволяет сделать вывод о целесообразности использования предлагаемой модифицированной методики.

Разработанная методика позволяет сформировать полидистантную поверхность в виде матрицы высот [YЭ] вокруг любой реальной поверхности препятствий [YПР], заданной на двухмерной равномерной дискретной сетке с произвольным шагом. Методика предназначена для использования в составе методик поиска оптимального пути перемещения груза в системах автоматического управления мобильных ГПК.

91

3.4. Методика построения гиперповерхности минимальных значений вертикальных координат условного центра груза с учетом его угловых координат

Гиперповерхность минимальных вертикальных координат условного центра груза с учетом его угловых координат представляет собой функцию минимально возможных (при выполнении условия непересечения с препятствиями) значений вертикальной координаты y точки начала локальной системы координат груза OgХgYgZg, принятой за условный центр груза, в неподвижной системе координат O0Х0Y0Z0. Аргументами данной функции выступают оставшиеся 4 из пяти рассматриваемых координат груза в пространстве с препятствиями: Ymin=f(x, z, γ, ω). Эта функция в общем случае разрывная, легко может быть описана дискретно в виде 4-мерного массива Ymin(i,k,l,m), где индексы i, k, l, m соответствуют координатам x, z, γ, ω, заданным на равномерной решетке.

 

 

 

 

 

 

а)

 

 

 

 

 

 

 

 

в)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

X0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x1

 

 

 

 

 

 

 

 

x2

 

X0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Z0

 

 

 

 

 

 

 

Z0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Y0

z1

Y0

 

z2

 

 

 

γ1=0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

γ2>0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(Ymin)1

 

 

 

 

 

 

(Ymin)2

 

 

 

 

 

 

 

б)

 

 

 

г)

 

 

 

x1

X0

x2

X0

Рис. 3.13. Определение значений элементов массива гиперповерхности [Ymin]

92

Массив гиперповерхности [Ymin] использован в описанных ниже методиках дискретной оптимизации траектории перемещения груза в среде с препятствиями и позволяет значительно упростить предлагаемые алгоритмы [77].

Рис. 3.13 иллюстрирует, каким образом определяются значения элементов данного массива. Показаны два положения груза (а, б и в, г), которые отличаются друг от друга только значением угловой координаты γ. Высота гиперповерхности Ymin с учетом формы препятствий и формы груза при этом будет различной:

(x1= x2; z1= z2; γ1γ2) → (Ymin)1 ≠ (Ymin)2.

(3.39)

Методика построения гиперповерхности [Ymin] заключается в следующей последовательности шагов [77].

1. Задание численных значений исходных данных: { Rig }; imax;

jmax; kmax; lmax; mmax; [YПР]; u; lзап_г; lзап_в.

2.Определение шага дискретности линейных координат l по

(3.5).

3.Определение максимальных и минимальных предельных значений угловых координат γmax, γmin, ωmax, ωmin:

γmaxн0+(0,5∙lmax∙Δu); γminн0–(0,5∙lmax∙Δu);

ωmaxн0+(0,5∙mmax∙Δu); ωminн0–(0,5∙mmax∙Δu). (3.40)

4.Построение полидистантной поверхности вокруг реальной поверхности препятствий по методике, изложенной в разделе 3.3 [94, 102]. В результате построения формируется дискретная матрица вы-

сот [YЭ] того же размера, что и исходная матрица препятствий [YПР]. Исходными параметрами при построении [YЭ] кроме исходной поверхности [YПР] будет пара значений параметров: lзап_г; lзап_в. Матрица [YЭ] задает собственно физические препятствия и определенную свободную область запрещенного для движения объекта пространства, примыкающую к физическим препятствиям.

5.Используя метод однородных координат [127], формируется 4- мерный массив [Ms] линейных смещений габаритных точек поверхности объемного тела груза в зависимости от всевозможных сочетаний угловых координат на дискретной равномерной сетке относительно нулевых значений угловых координат.

Данный массив размером (4∙cгlmaxmmax) может быть представлен

как 3-мерный массив векторов (Rs)j смещения точек вида

93

v

= [x j

y j z j 1]T ,

j [1; (cгlmaxmmax) ],

 

(Rs)j

(3.41)

определяемых как

 

(Rs)j = (Aτ )k × (Rg)ig ,

(3.42)

 

 

где ()k – матрица вращения; ig [1; cг];

k [1; (lmaxmmax)].

 

Матрица ()k определяется в результате определенной последовательности перемножения матриц поворота системы координат груза вокруг соответствующих осей собственной системы координат:

()k = ()k∙()k,

(3.43)

где ()k, ()k – матрицы поворота вокруг осей Хg и Yg соответственно, имеющие следующий вид:

 

é1

0

0

0ù

 

écosωk

0

− sinωk

0ù

()

ê

cosγk

sinγk

ú

 

ê

 

 

 

 

ú

= ê0

0ú; ()

 

= ê

0

1

0

0ú. (3.44)

k

ê

- sinγk

cosγk

ú

k

ê

sinωk

0

cosωk

0

ú

 

0

0

 

ê

ú

 

ê

0

0

ú

 

0

0

0

 

 

ë0

1û

 

ë

1û

Отсюда

 

 

 

 

 

 

 

 

 

 

 

 

é

cosωk

 

0

 

- sinωk

 

0ù

 

 

 

 

 

(Aτ )

 

ê

sinωk ×sinγ k

 

cosγ k

 

cosωk ×sinγ k

 

0

ú

k

= ê

 

 

 

ú . (3.45)

 

 

 

 

 

 

 

 

êsinωk ×cosγ k

 

- sinγ k

 

cosωk ×cosγ k

 

0ú

 

 

 

 

 

 

 

ê

 

 

 

 

 

 

 

ú

 

 

ë

0

 

0

 

0

 

1

û

Массив [Ms] будет иметь индексы (ik, ig, l, m), определяющие соответственно: ik =1, 2, 3 – смещения габаритной точки вдоль осей Х0, Y0, Z0 неподвижной системы координат; ig [1; cг] – номер габаритной

точки; l [1; lmax] – координату γ; m [1; mmax] – координату ω.

6. Исходя из условия непересечения груза с препятствиями и запрещенной зоной строится гиперповерхность минимальных возможных значений вертикальных координат [Ymin] точки начала локальной системы координат груза OgХgYgZg в неподвижной системе координат O0Х0Y0Z0 с учетом значений линейных координат x и z, а также его угловых координат γ и ω в 5-мерном пространстве.

Для этого, используя вложенные циклы по i, k, l, m, определяющие x, z, γ, ω соответственно, рассматриваются всевозможные сочета-

94

ния координат груза x, z, γ и ω на дискретной равномерной сетке, а для каждого сочетания указанных координат – последовательно все габаритные точки (Rg)ig , ig [1; cг].

Пуск

1

2

 

 

Ввод исходных данных: (xн0, yн0, zн0, сн0, ωн0); (xк0, yк0, zк0, γк0, ωк0); imax; jmax;

kmax; lmax; mmax; { R }; [YПР]; u; lзап_г; lзап_в

 

ig

l= (xк0 xн0)/imax;

γmaxн0+(0,5∙lmax∙Δu); γminн0–(0,5∙lmax∙Δu);

ωmaxн0+(0,5∙mmax∙Δu); ωminн0–(0,5∙mmax∙Δu).

Построение полидистантной поверхности [YЭ] вокруг реальной поверхности

препятствий [YПР] по методике раздела 3.3 [94, 102]

3

4

 

 

 

 

 

6

 

 

 

j=0; k=1

5

 

16

 

 

 

 

 

l=1:lmax

 

 

7

 

i=1:imax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

17

 

 

 

 

 

 

 

 

 

 

 

 

γk =(l–0,5∙lmax)∙Δu

 

 

 

 

 

k=1:kmax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

18

 

 

 

 

 

m=1:mmax

 

 

8

 

 

 

 

 

 

 

 

 

9

 

 

l=1:lmax

 

 

 

 

 

 

 

 

 

 

 

19

 

 

ωk =(m–0,5∙mmax)∙Δu

 

 

10

 

 

m=1:mmax

 

 

 

 

 

 

 

 

 

 

 

 

 

20

 

 

 

Задание матрицы ()k

 

 

 

ig=1:cг

21

 

 

со значениями углов

 

 

 

 

 

 

 

 

 

γk, ωk

 

 

 

 

 

 

ix= (i

l+Ms(1, ig, l, m))/

l ;

 

 

 

 

 

 

11

 

 

iz= (k

l+Ms(3, ig, l, m))/

l

 

 

 

 

 

ig=1:cг

 

 

 

 

22

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12

 

 

Коррекция ix, iz по (3.47)

23

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j=j+1

 

 

 

 

 

 

 

 

 

 

 

13

 

Yc(ig)=YЭ(ix,iz)–Ms(2,ig,l,m)

 

 

 

 

 

 

 

 

 

 

 

(Rs)

j

= (Aτ ) × (Rg)

,

 

 

 

 

24

 

 

 

k

 

ig

 

 

 

 

Ymin(i,k,l,m)=min(Yc(ig))

 

 

j [1; (cгlmaxmmax)]

 

 

 

 

 

 

 

 

14

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ms(ik, ig, l, m)=(Rs)ik

;

 

 

Вывод результатов

25

 

 

 

 

 

ik [1; 3]

 

 

 

 

 

 

 

[Ymin]

 

 

 

 

 

 

 

 

15

 

 

 

Останов 26

 

 

 

 

 

 

k=k+1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 3.14. Блок-схема алгоритма построения гиперповерхности минимальных значений вертикальных координат условного центра груза для пяти учитываемых обобщенных координат

Используя массив Ms(ik, ig, l, m) линейных смещений габаритных точек в зависимости от значений угловых координат, определяют значения индексов ix и iz линейных координат x и z текущей габаритной точки на равномерной сетке с учетом смещений:

95

ix= (il+Ms(1, ig, l, m))/ l ; iz= (kl+Ms(3, ig, l, m))/ l .

(3.46)

Значения индексов ix и iz, вычисленные по (3.46), проверяются на выполнение условия невыхода за границы диапазонов заданной сетки ix [1; imax]; iz [1; kmax] соответственно и при необходимости корректируются. Условия коррекции выглядят следующим образом:

ìix

при

1

ix imax ;

ìiz

при

1

iz ≤ kmax ;

 

ï

при

ix

<1;

ï

при

iz

<1;

(3.47)

ix = í1

iz = í1

ï

 

 

ix > imax .

ï

 

 

iz > kmax .

 

îimax при

îkmax при

 

По индексам ix и iz, полученным по (3.46), (3.47), для различных габаритных точек груза при одних и тех же значениях координат формируется одномерный вектор Yc высот точки начала координат груза, элементы которого определяются по зависимости

Yc(ig)=YЭ(ix,iz) – Ms(2, ig, l, m).

(3.48)

Отдельный элемент массива гиперповерхности [Ymin] определяется как минимальный элемент вектора Yc:

Ymin(i,k,l,m)=min(Yc(ig)), ig [1; cг].

(3.49)

Блок-схема алгоритма построения гиперповерхности минимальных значений вертикальных координат условного центра груза приведена на рис. 3.14.

3.5. Методика дискретной локальной оптимизации заданной траектории в неоднородном организованном трехмерном пространстве

Локальная оптимизация отдельной заданной траектории S может быть выполнена при соблюдении условия непересечения груза с эквидистантной (полидистантной) поверхностью вокруг препятствий [80, 94, 102]. В случае, если имеется некоторая траектория, в общем случае не являющаяся оптимальной, локальная оптимизация позволяет сравнительно быстро достичь положения ближайшего локального оптимума по целевой функции L путем последовательного изменения положения точек траектории sp, p [1; imax]. Поскольку траектории и полидистантная поверхность [YЭ] заданы дискретно на равномерной

96

сетке, предлагается следующий алгоритм дискретной локальной оптимизации отдельной траектории [80].

Последовательно для каждой из точек sp траектории с координатами

sp=(xp, yp, zp, γp, ωp),

(3.50)

где p [1; imax]; xp=p∙Δl,

осуществляется дискретная оптимизация точек из интервала p [2; (imax–1)], т.е. точка sp перемещается в новое положение, минимизирующее целевую функцию L. Поскольку значение целевой функции L (3.19) определяется дискретно в виде суммы, при изменении положения одной точки будут меняться значения только двух слагаемых этой суммы, поэтому вместо значения L при оптимизации может быть использовано значение Lp, вычисление которого занимает в (imax/2) меньше времени по сравнению с L:

çæ

 

 

 

 

 

+÷ö

 

(xp - xp−1 )2 + (y p - y p−1 )2 + (z p - z p−1 )2

 

Lp = ç

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

÷ +

 

 

 

 

 

×

(γ

 

-γ

 

)2

+ (ω

 

 

-ω

 

 

)2

 

 

 

ç+ c

 

p

p−1

p

p−1

 

 

÷

 

è

 

 

γω

 

 

 

 

 

 

 

 

 

 

 

 

ø

 

çæ

 

 

 

+÷ö

 

(xp - xp+1 )2 + (yp - y p+1 )2 + (z p - z p+1 )2

 

+ ç

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

÷.

(3.51)

ç

+ c

γω

×

 

(γ

p

-γ

p+1

)2

+ (ω

p

-ω

p+1

)2

 

 

÷

 

è

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ø

 

При использовании в качестве целевой функции СВД линейных и угловых перемещений появляется возможность дополнительного сокращения времени расчетов. Вместо значения Lp при оптимизации может быть использовано значение Lp1 – СВД от точки искомого оптимума sp с учетом препятствий до предварительно определенной точки sp1, находящейся в пространстве обобщенных координат груза на прямой линии между точками sp–1 и sp+1 без учета препятствий.

При отсутствии препятствий между sp–1 и sp+1 точка sp1 с координатами (xp1, yp1, zp1, γp1, ωp1), находящаяся посредине между точками sp–1 и sp+1, будет являться оптимумом при любом значении весового коэффициента cγω в выражении (3.51). Следовательно, точка sp, определенная с учетом препятствий как ближайшая к sp1, будет являться оптимумом при наличии препятствий. При оптимизации положения отдельной точки sp в качестве оптимизируемой функции может быть использовано значение Lp1, вычисление которого занимает еще в 2 раза меньше времени по сравнению с Lp:

97

 

çæ

 

 

+÷ö

 

Lp1

(xp - xp1 )2 + (yp - yp1 )2 + (z p - z p1 )2

 

= ç

 

 

 

 

 

 

 

 

 

 

 

 

÷.

(3.52)

+ c ×

(γ

 

-γ

 

)2 + (ω

 

-ω

 

)2

 

 

ç

p

p1

p

p1

 

÷

 

 

è

 

γω

 

 

 

 

 

 

ø

 

Это позволяет использовать для оптимизации положения отдельной точки траектории метод полного перебора на ограниченной об- ласти-гиперкубе с центром в исходном положении точки sp.

Описание методики локальной оптимизации для отдельной точки траектории приведено в пп. 1–9 [80].

1. Для текущего значения p определяются оптимальные значения координат (xp1, yp1, zp1, γp1, ωp1) точки sp без учета препятствий, т.е. на прямой между точками sp–1 и sp+1:

xp1=(xp–1+xp+1)/2; yp1=(yp–1+yp+1)/2; zp1=(zp–1+zp+1)/2;

 

γp1=(γp–1p+1)/2; ωp1=(ωp–1p+1)/2.

(3.53)

Соответствующие индексы координат на равномерной дискретной сетке определяются следующим образом:

p= xp1/ l ; jp= yp1/ l ; kp= zp1/ l ;

 

lp= (γp1–γmin)/ u ; mp= (ωp1– ωmin)/ u .

(3.54)

2. В случае, если для индексов, полученных по (3.54), выполняется условие нахождения точки sp над гиперповерхностью [Ymin]

yp≥Ymin(p,kp,lp,mp),

(3.55)

оптимизация по текущей точке sp завершается, и начинается оптимизация по следующей точке sp+1. В противном случае выполняется следующий п. 3.

3. Используя вложенные циклы по k, l, m, определяющие z, γ, ω соответственно, для оптимизируемой точки sp с фиксированным p рассматриваются всевозможные сочетания координат груза z, γ и ω на дискретной равномерной сетке для ограниченной области-гиперкуба с центром в исходном положении точки sp. Для этого варьируются индексы k, l, m в следующих диапазонах (области-гиперкубе):

k [(kp–dkp); (kp+dkp)]; l [(lp–dlp); (lp+dlp)]; m [(mp–dmp); (mp+dmp)], (3.56)

где kp, lp, mp – индексы, соответствующие координатам zp, γp, ωp точки sp до оптимизации; dkp, dlp, dmp положительные целочисленные зна-

98

чения приращений индексов k, l, m соответственно, определяющие область гиперкуба и удовлетворяющие условиям

dkp<<kmax; dlp<<lmax; dmp<<mmax.

(3.57)

4. Значения индексов k, l, m, варьируемые по (3.56), проверяются на выполнение условия невыхода за границы диапазонов исходной

сетки k [1; kmax]; l [1; lmax]; m [1; mmax] соответственно и при необходимости корректируются. Условия коррекции выглядят следующим

образом:

ìk

при

1 ≤ k kmax ;

ìl

при

1≤ l lmax ;

ï

при

k <1;

ï

при

l <1;

k = í1

l = í1

ï

 

 

ï

 

 

îkmax при k > kmax .

îlmax при l > lmax .

ìm при 1≤ m mmax ;

 

ï

при

m <1;

(3.58)

m = í1

ïm

max

при m > m .

 

î

max

 

5. Для каждого сочетания значений индексов k, l, m в области гиперкуба определяются текущие значения координат yu, zu, γu, ωu оптимизируемой точки sp с учетом препятствий:

ìy

p

при

y

p

³ Y

(p,k,l,m);

(3.59)

yu = í

 

 

min

y

 

< Y (p,k,l,m);

Y

 

(p,k,l,m)

при

p

 

î min

 

 

 

 

 

min

 

zu=k∙Δl;

γu=l∙Δu;

ωu=m∙Δu,

 

где u [1; (dkp2+dlp2+dmp2)] – индекс, соответствующий уникальному сочетанию значений индексов k, l, m и координат yu, zu, γu, ωu. Для каждого значения u из приведенного диапазона в массиве [tgu] запоминаются соответствующие значения координат yu, zu, γu, ωu.

6. Для каждого сочетания значений координат yu, zu, γu, ωu в области гиперкуба определяется расстояние (Lp1)u:

 

çæ

 

 

+÷ö

 

(Lp1 )

(xp - xp1 )2 + (yu - yp1 )2 + (zu - z p1 )2

 

= ç

 

 

 

 

 

 

 

 

 

 

 

 

÷.

(3.60)

+ c ×

(γ

 

- γ

 

)2 + (ω

 

- ω

 

)2

 

u

ç

u

p1

u

p1

 

÷

 

 

è

 

γω

 

 

 

 

 

 

ø

 

7. По выходе из циклов по k, l, m определяется значение индекса um, соответствующее минимальному значению (Lp1)u:

99

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]