Научная статья на тему 'Полный класс Ф-функций для кругов и многоугольников с поворотами'

Полный класс Ф-функций для кругов и многоугольников с поворотами Текст научной статьи по специальности «Математика»

CC BY
142
36
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Злотник Михаил Викторович

Рассматривается аналитическое описание взаимодействия неориентированных геометрических 2D объектов с помощью метода Ф-функций. Строятся Ф-функции для неориентированных объектов, имеющих границу круга и многоугольника.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The article considers the complete class of Ф-functions for circular and polygonal ϕ -objects. The Ф-functions may be used when modeling cutting, packing and covering 2D problems for analytical description of interaction of geometric objects with translations and rotations.

Текст научной работы на тему «Полный класс Ф-функций для кругов и многоугольников с поворотами»

УДК 519.859

ПОЛНЫЙ КЛАСС Ф-ФУНКЦИЙ ДЛЯ КРУГОВ И МНОГОУГОЛЬНИКОВ С ПОВОРОТАМИ

ЗЛОТНИК М.В.______________________________

Рассматривается аналитическое описание взаимодействия неориентированных геометрических 2D объектов с помощью метода Ф-функций. Строятся Ф-функции для неориентированных объектов, имеющих границу круга и многоугольника.

Введение

Задачи оптимизационного геометрического проектирования возникают в разнообразных отраслях науки и техники [1-4]. Они связаны с обработкой геометрической информации и заключаются в поиске оптимального размещения конечного множества геометрических объектов, которое определяется вектором параметров размещения объектов в заданных областях размещения.

Наибольшую сложность представляет класс оптимизационных задач размещения, в которых допускаются аффинные преобразования не только трансляции объектов, но и поворота [5]. Для построения математических моделей таких оптимизационных задач необходимо исследование и аналитическое описание взаимодействий геометрических объектов [6]. С этой целью используется метод Ф-функции. В работах [7,8] построены Ф-функции для базовых и составных ориентированных объектов (допускающих аффинные преобразования только трансляции), а Ф-функция для неориентированных многоугольников приведена в статье [8].

Рассмотрим полный класс Ф-функций для Ф -объектов [3], граница которых - окружность или многоугольник (в общем случае невыпуклый). Введем следующие обозначения: C; - круг радиуса г; , K; -выпуклый многоугольник, заданный последовательностью своих вершин (Vij = (Ху,Уу) , j = 1,...,П;, хіп; +1 = xi1, yin; +1 = yil), Si - невыпуклый многоугольник, заданный последовательностью своих вершин (Vij = (xij,yij), j = 1,..., П; , хіп; +1 = xi1 ,

Уіп; +1 = Уі1 ) в собственной системе координат (xioiyi), C* = cl(R2 \C;) , K* = cl(R2 \K;) ,

S* = cl(R2 \ S;), где cl( ) - замыкание множества (•)

[9].

Обозначим параметры размещения объекта T;,

T; e{C, C*, K, K*, S, S*} через u; = (V;,Фі) = (x;,y;,ф;), где х;, у; - координаты центра собственной системы координат объекта T;, а ф; - угол поворота собственной системы координат T; относительно пространства R .

Множество T;, для которого задан вектор движения u; = (v; , ф; ), обозначим через T; (u; ). Очевидно, что C2(u2) совпадает с C2CV2), поэтому ф2 можно опустить.

Как известно [6], Ф-функция Ф^,^) зависит от взаимного расположения объектов T1 и T2 в пространстве R 2 и позволяет моделировать их взаимодействие. При этом Ф(^, u2) > 0 если T1 и T2 не имеют общих точек (рис. 1,а), Ф(ul,u2) = 0, если T1 и T2 касаются (рис. 1,б), и Ф(ul,u2) <0 , если T1 и T2 пересекаются (рис. 1,в).

а б в

Рис. 1. Взаимное расположение объектов

Полный класс Ф-функций для кругов и многоугольников с поворотами состоит из Ф-функций для следующих пар объектов: C1 (V1) и C2CV2), C*(V1) и C2CV2), K1(u1) и C2CV2), S1(u1) и C2CV2), K1(u1) и K2(u2), S1(u1) и K2(u2), S1(u1) и S2(u2), K*(u1) и K2(u2), K*(u1) и S2(u2), S*(u1) и S2(u2), K*(u1) и C2CV2), S*(u1) и C2CV2), K1(u1) и C2 (V2 ) , S1(u1) и C2(V2).

На данный момент построены Ф-функции для: S1(u1) и S2(u2), K1(u1) и K2(u2) [8], C1CV1) и C2CV2), C*(V1) и C2(V2) [6].

Целью данной работы является построение Ф-функ-ции для: K1(u1) и C2CV2), S1(u1) и C2CV2), K*(u1) и K2(u2), K*(u1) и S2(u2), S*(u1) и S2(u2), K*(u1) и C2CV2), S*(u1) и C2CV2) ,K1(u1) и C2 (V2) , S1(u1) и C2(V2).

Постановка задачи. Даны два объекта T1 и T2, T; є {C, C*, R, R*} , i = 1,2 . Необходимо построить Ф-функцию, зависящую от параметров размещения u1 и u2 объектов T1 и T2 , которая позволяет моделировать их взаимодействие (пересечение, касание, принадлежность, непересечение) в пространстве R 2 .

1. Ф-функция для K1(u1) и C2CV2)

Для построения Ф-функции Ф(Vl, V2) объектов K1(V1) и C2CV2) используется метод, описанный в статье [10].

Предполагается, что V1 = (0,0) , т. е. K1 - неподвижен. 0-уровень Ф-функции K1 и C2, описанной уравнени-

29

РИ, 2006, № 3

ем Ф(0,У2) = 0 [6, 11], формируется отрезками прямых 1; И дугами g; , І = 1,...,Пі .

Касание Кі(0) и C2(v2) может быть двух видов:

1) i-я сторона [(хіі,Уіі),(хіі+і,Уіі+і)] многоугольника Кі касается круга C2 ;

2) i-я вершина (х1і,У1і) многоугольника K1 касается круга C2.

Т аким образом, касания первого типа образуют прямые 1;, параллельные прямым, проходящим через стороны [(х1і,У1і),(х1і+1,У1і+1)] на расстоянии Г2, а касания второго типа порождают дуги g; окружностей радиуса Г2, i = 1,...,П1. Следует учесть, что для описания дуги g; необходимо построить окружность W; с центром в вершине (х1і,У1і) и прямую 1І , проходящую через точки сопряжения дуги окружности с прямыми 1; и 1;-1 .

Уравнение 1; имеет вид:

f;(x2,y2) = A;X2 -віУ2 + C; = 0, (1)

где A; = У 1i+1 - У1;, Bi = X1i+1 - x1i,

Ci = AiX1i + Biy1i , Ci = Ci — AiXi + ВіУі ,

Г Га; n

Bi ’ ...............^ B; , •

di =

VAT+BT • Vi = <хі'Уі)=di

Уравнение 1; выглядит следующим образом:

Фі(х2,У2) = aix2 -Ь;У2 + ci = ^ (2)

здесь C; =-a;(X1i + y;-1) + b;(yU + yi-1) ,

ai = уІ - yi-b bi = УІ - УІ-1 .

Уравнение окружности Wi :

rai(x2,y2) = (x2 - x1i)2 + (y 2 - у1;)2 - Г2 . (3) Тогда на основании (1)-(3) Ф - функция ориентированного многоугольника К1 (v1 ) и круга C2CV2) имеет вид:

Ф(у 1, v2) = max max{f;(v2 - v1),

І=1,...,П1

min{y i(v2 - v1), ro;(v2 - v1)}}.

Пусть K1<u1) и C2<v2), т.е. допускается трансляция и вращение К1 .

Так как многоугольник К1 вращается, то координаты X1i , У1І вершин К1 являются функциями от Ф1 , которые при вращении К1 по часовой стрелке определяются следующим образом:

Х1І (Ф1) = X1i cos Ф1 + У1І sin Ф1 ' , ч , І = 1,...,П1,

У1І (Ф1) = -X1i sin Ф1 + У1ІCos Ф1

при этом, A; <Ф1) = A; cos Ф1 - В; Sin Ф1 ,

В; <Ф1) = A; sinФ1 + В; cosФ1 ,

C;(Ф1) = -A;X1i + в;У; = C; ^ УІ(Ф1) == C; <Ф1) - Г^/a2 + В2 = C;:

di =

л/(АІ(Ф1))2 + (ВІ(Ф1))2 Vа2 + В2

УІ (Ф1) = (УІ (Ф1),уі (Ф1)) = di

= d;

Л', ч У АІ(Ф1)

- ВІ(Ф1)

Г

Г

А(Фьх2,У2) = АІ(Ф1)Х2 - ВІ (Ф1)У 2 - CІ(Ф1) ^ fi(ubv2) = А; <(х 2 - X1)cos Ф1 - (у2 - yOsin Ф1) --В;((Х2 -X1)sinФ1 + (у2 -y1)cosФ1) + C; =

= f; (x'(U1,v2),y'(U1,v2)),

x'(U1,v2) = (x2 - X1)cos Ф1 - (y 2 - y1)sin Ф1 , y'(U1,v2) = (X2 - X1)sin Ф1 + (y 2 - y1)cos Ф1 ,

а;(Ф1) = -(A;d; - AMd;-1)sinФ1 -

- (B;d; - В;—1 d;—1) cos Ф1,

b; (Ф1) = (A;d; - Ai-1d;-1)cos Ф1 -

- (B;d; - Bi-1d;-1)sin Фь

ci (Ф1) = -ai(x1i + У;-1) + b; (У 1i + yi-1) = cb фІ(Ф1,х2,У2) = ai(Ф1 )x2 -bi(Ф1)У2 + CІ(Ф1) ^

ф; <U1, v 2 ) = a; (Ф1)(Х2 - X1) - Ь;(Ф1)(У2 - У1) +

+ ci (Ф1) = ф;(x'(U1,v2),y'(U1,v2)),

'2 '22 Ю;(Ф1,Х2,У2) = (X2 - Х1;<Ф1)) + <У2 - У1І (Ф1)) - Г2 ^

' '2 '2 ff>i(UbU2) = (Х2 - Х1 - Х1І (Ф1)) + (у 2 - У1 - у 1І (Ф1)) -

- Г22 =ro;(x'(U1,U2),y'(U1,U2)).

Таким образом, Ф-функция примет вид:

KC

Ф (Ubv2) = max S;(U1,v2) (4)

і=1,...,п1 ’ w

где

S;(U1,U2) = f; (x'<UbU2 ),y'fab^)),

min{y ;(x'(UbU2Xy'(UbU2)X ra;(x'(U1,U2),y'(U1,U2))},

x'(U1,U2) = (x2 -X1)cosФ1 -(y2 -У1)sinФ1 , y'(U1,U2) = (x2 - X1)sinФ1 + (y2 -y1)cosФ1 .

2. Ф-функция для S1<U1) и C2(v2)

Представим S1 в виде объединения выпуклых многоугольников (рис.3):

mi

S1 = UK1j , (5)

j=1

30

РИ, 2006, № 3

где mj - количество выпуклых многоугольников (составляющих Sj), Kjj задан набором своих вершин v1jk = (x1jk’y!jk), k = 1,-,n1j, n1j - количество вершин выпуклого многоугольника Kjj, j = 1,...,mj. Для разбиения невыпуклого многоугольника на выпуклые (рис. 2) можно использовать, например, алгоритм, приведенный в [12].

Используя способ построения Ф-функции для составного объекта [7] и выражение (4), получаем Ф-

функцию для Sj(uj) и C2(u2):

Ф SC(u1,u2) = min Ф KC (u1, u 2 ) j=1,...,m1

KC

где Ф j (u1,u2) - Ф-функция j-го многоугольника K1j и круга C2 .

Обозначим через у = {(u1,u2) є R6 | Ф(u1,u2) = 0} -поверхность нулевого уровня Ф-функции [6], а у' -нулевой уровень для случая, когда Х2 = х2, У2 = у2, Ф1 = ф* и ф2 = ф2 - константы. На рис. 3 изображен нулевой уровень Ф^Оі*,^) и ФKC(u*,u2), а на рис. 4 - Ф^(и*,и2).

Рис. 2. Объект 5^1 = Кц U K12

Рис. 3. Иллюстрация у1 и у 2

3. Ф-функция для K*(u1) и K2(u2)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Выполнив преобразования, аналогичные рассмотренным в п.1, получим Ф-функцию для пары множеств K*(u1) и K2(u2) в следующем виде:

*

Ф (U1,U2) = min Xi(U1,U2), (6)

i=1,...,n1 ’ v '

где X*(U1,U2) = Ai(x2 + ~i) - Bi (y 2 + ~i) + Ci,

Ai = У 1i - У1і+1, Bi = x1i - x1i+1,

Ci =-Aix1i + ВіУ1і, i = 1,2,..., n1, x1n+1 = x11, y1n+1 = y11 ,

(~iJi) = {(x,y) є {(~2j,~2j),j = l,-,n2}| Xi(x,y) =

= min{Xi (~2 j,~2j),J = Iv? n2 }}

X i(x,y) = Aix - ВіУ + Cb

~2j = x2j СОЗ(ф2) + У 2j Яіп(Ф2),

~2j = —x2j 51п(Ф2) + У2j СО$(ф2) , x2 = (x2 - x1)COSф1 - (y2 - yOsinфl,

У2 = (x2 - x1)sinф1 + (y2 - y1)COSф1.

4. Ф-функция для K*(u1) и S2(u2)

Пусть S2 задан объединением выпуклых многоугольников вида (5). Учитывая способ построения Ф-функции для составного объекта [7] и выражение (6), получаем Ф-функцию для K* и S2 в виде:

ФKS(U1,U2) = min ФK K(u1,U2), (7)

j=1,...,m2

*

где ФK K(U1,U2) - Ф-функция j- го многоугольника K2j и объекта K*.

5. Ф-функция для S*(u1) и S2(u2)

Представим S1* в виде:

m1

S* = K*o U (U K1j), (8)

j=1

здесь m1 - количество выпуклых многоугольников; K*0 = cl(R2 \K10), K10 - выпуклая оболочка многоугольника S1 ; K1j задан набором своих вершин v1jk = (x1jk,y1jk); k = 1, -,n1j, n1j - количество вершин выпуклого многоугольника K1j ; S2 - задан объединением выпуклых многоугольников вида (5). Используя способ построения Ф-функции для составного объекта [7] и выражение (7), получаем Ф-

функцию для S*(u1) и S2(u2):

*

Ф(і1,U2) = min{ФK S(U1,U2),

min min Ф ■■ (U1, U2)}, i=1,...,m1 j=1,...,m2 ij

РИ, 2006, № 3

31

где ФK S(U!,U2) - Ф-функция K*0 и S2; Ф ij (uj,U2) - Ф - функция пары выпуклых

многоугольников Kji и K2j. На рис. 5 представлен нулевой уровень у , Ф-функции S* (u* ) и S2 (u2).

* * *

Рис. 5. Иллюстрация у для S^(u^) и S2(U2)

6. Ф-функция для K* (uj) и C2(v2)

Выполнив преобразования, аналогичные рассмотренным в п.1, получим Ф-функцию для пары множеств K*(uj) и C2CV2) в следующем виде:

*

K с ~

Ф (ui,V2) = min Xi(ui,V2), (9)

i=1,...,n1 ’ v '

где Xi(u1,v2) = Ai(x2)-Bi(y2) + Ci, Ci = Ci -r2,

Ai = -(y 1i+1 - y1i)/di, Bi =-(x1i+1 - x1i)/di,

Ci = (x1iy1i+1 - x1i+1y1i)/di,

di =\(x1i+1 -x1i)2 + (y 1i+1 -У1і)2 , i = 1,,n1, (x1n+1,y1n+1) = (x11,y11), x2 = (x2 - x1)cosФ1 - (y2 - y1)sinФ1 ,

У2 = (x2 - x1)sinФ1 + (y2 - y1)cosФ1 .

7. Ф-функция для S*(u1) и C2(v2)

Представим S* в виде (8). Тогда, учитывая выражение (4), (9) и способ построения Ф-функции для составного объекта [7], построим Ф-функцию для S*(u1) и C2(v2) в следующем виде:

K*C KC

Ф(^^2) = min^0 (ubv2), min Ф, (u1,v2)},

i=1,...,m1

* % где фKC(u1,v2) - Ф-функция k10 и C2;

Ф^C(u1,v2) - Ф-функция K1j и C2 . На рис. 6 представлен нулевой уровень Ф-функции S* (u* ) и C2 (v2).

8. Ф-функция для K1(u1) и C2(v2)

Выполним преобразования аналогичные рассмотренным в п.1. При этом Ф-функция для пары множеств

K1(u1) и C2 (v2) примет следующий вид:

*

kc ~

Ф (u1,v2) = min Xi(u1,v2),

i=1,...,n1

~ 2 ' 2 ' 2 где Xi(u1,v2) = r2 - (x2 - x1i) - (У 2 - У1і) ,

X2 = (X1 - X2 ) COS Ф1 - (У1 - y 2 ) sin фl,

У 2 = (X1 - x 2) sin Ф1 + (У1 - y 2 ) cos Ф1.

9. Ф-функция для S1(u1) и C^(v2)

Представим 5*1 в виде (5). Согласно [7] Ф-функция для S1(u1) и C2 (v2) имеет вид:

*

Ф(^^) = min ФjKC (u1,v2). (8)

j=1,..,m1

Так как для нахождения многоугольника в круге достаточно, чтобы каждая вершина многоугольника лежала внутри круга, то Ф-функцию для S1(u1) и C2 (v2) можно представить в следующем виде:

Ф(^^) = min Xi (u 1, v2) i=1,...,n1 ’

где Xi(u1,v2) = r2 - (x2 - x1i) - (У2 - У1і) ,

X2 = (X1 - X2 ) COS Ф1 - (У1 - У 2 ) Sin Фl,

У 2 = (X1 - x 2) sin Ф1 + (У1 - y 2 ) cos Ф1.

На рис. 7 представлен нулевой уровень Ф-функции

S1(u*) и C*2(v*2).

* * *

Рис. 6. Иллюстрация у для S1(u1) и C2(v2)

Рис. 7. Иллюстрация у' для S1 (u* ) и C2(v2)

32

РИ, 2006, № 3

Выводы

Новизна. Впервые построен полный класс Ф-функ-ций с поворотами для объектов, имеющих пространственную форму круга и многоугольника.

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

Литература: 1. Lody A., Martello S., Vigo D. Recent advances on two-dimensional bin packing problems// Discrete applied mathematics. 2002. № 123. C. 379-396. 2. Dyckhoff H., Scheithower G., Terno J. Cutting and Packing// In Annotated Bibliographies in Combinational Optimization. Chichester. 1997. С. 393-412. 3. Стоян Ю. Г.,Яковлев С. В. Математические модели и оптимизационные методы геометрического проектирования. Киев: Наук. думка, 1986. 268 с.

4. Karen D., Rajasekhar I. An Incremental Algorithm for Translational Polygon Covering// Computer Science Technical Report. University of Massachusetts at Lowell.

2001. № 2001-1. 31 с. 5. Milencovich V. Rotational polygon overlap minimization and compaction// Computational Geometry. 1998. № 10. С. 305-318. 6. Stoyan Y., Terno J., Gil N., Romanova T., Ф-function for 2D primary objects// Studia Informatica, Paris, University. 2002. Vol. 2, № 1. P. 1-32. 7. Stoyan Y., GilM., Terno J., Scheithauer G., Romanova Т. Ф-function for complex 2D objects// 4OR Quarterly Journal of the Belgian, French and Italian Operations Research Societies. 2004. Т 2, № 1. Р. 69-84. 8. СтоянЮ. Г. Phi-function of non-convex polygons with rotations//Проблемы машиностроения, 2003. В. 6. No 1. С. 74-86. 9. Александрян Р.А., Мирзаханян Э.А. Общая топология. М.: Высш. шк., 1979. 336 с. 10. Stoyan Yu.G. Analytical description of interaction of point sets. Journal of mechanical engineering. 2001. V 4, N 1-2. P. 77-88. 11. Stoyan, Yu.G. Ф - function and its basic properties. Reports of National Academy of Sciences of Ukraine. 2001. Ser. A. N 8. P.112-117. 12. Пандорин О. К., Панкратов О.В., Новожилова М.В. Аналіз і складність алгоритму зображення однозв’язного не опуклого многокутника у вигляді об’єднання опуклих многокутників// Вісник запорізького державного університету. 1999. № 2. С. 79-83.

Поступила в редколлегию 20.07.2006

Рецензент: д-р техн. наук Романова Т.Е.

Злотник Михаил Викторович, младший научный сотрудник отдела математического моделирования и оптимального проектирования Института проблем машиностроения НАНУ им. А.Н. Подгорного. Адрес: Украина, 61046, Харьков, ул. Дм. Пожарского, 2/10, тел. раб. (0572) 95-95- 36.

УДК618.514.01:517.977.5

ЗАДАЧА ДИНАМИЧЕСКОГО СИНТЕЗА ДЛЯ ГАРМОНИЧЕСКОГО ОСЦИЛЛЯТОРА КАК ОБЪЕКТА УПРАВЛЕНИЯ

РАДИЕВСКИЙ А.Е.___________________________

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

1. Введение

Развитие механики тесно связано с изучением маятника [ 1 ]. Интерес к его изучению объясняется тем, что он был той математической моделью, при посредстве которой удалось проникнуть в различные аспекты теории колебаний, решить многие ее вопросы для объектов различной физической природы [2]. Последнее позволило понять и сформулировать основные законы механики [1]. Одной из разновидностей многообразия маятников является гармонический осциллятор с демпфированием.

Уравнение движения последнего как объекта управления (ОУ) можно записать в виде

d2x dx

-----+ a і-+ &0x = ku

dt2 1 dt 0 ’

где x - состояние; u - управление; a^a0 - параметры, а k - коэффициент усиления ОУ.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Задача динамического синтеза для гармонического осциллятора с демпфированием исследовалась, например, в [3-7], где в [3] исследование базируется на асимптотических методах, в [4] - на условиях минимума гамильтониана, в [5,6] - на графических методах, в [7] - на вариационных методах. В настоящей работе для ОУ (1) исследуется процедура динамического синтеза в классе задач аналитического конструирования оптимальных регуляторов (АКОР).

Целью настоящего исследования является разработка математического обеспечения процедуры структурного и параметрического синтеза для линейной модели гармонического осциллятора с демпфированием как ОУ.

2. Постановка и особенности задачи Выражение (1) можно записать в виде dx .

—=Ax+Вu dt

(2)

где x = (x1, x2) - матрица-столбец вектора фазовых

координат; A

0 1

- a0 - a1

В =

0

k '

РИ, 2006, № 3

33

i Надоели баннеры? Вы всегда можете отключить рекламу.