UDC 539.75 Vestnik of St. Petersburg University. Serie 10. 2014. Issue 4
I. Y. Molchanova, L. N. Polyakova, M. A. Popova
CONSTRUCTING THE POLAR CONE
OF A CONVEX POLYHEDRAL CONE IN R3*)
St. Petersburg State University, 7/9, Universitetskaya embankment, St. Petersburg, 199034, Russian Federation
In the paper the problem of constructing the polar cone of an acute convex polyhedral cone is considered in three-dimensional Euclidean space. Using Householder transformation the considered cone is placed entirely in the upper half-space. Next on the plane г = 1 the convex hull spanned by the points of intersection of the given ray of our cone with this plane is constructed. As a result of the sorting algorithm the vertices of the convex hull and the sequence of extreme rays of given cone are determined. After projecting the point (0, 0,1) lying the г-axis onto the corresponding face the extreme rays of the polar cone are found. Using the Householder transformation again the required cone is obtained. Bibliogr. 9.
Keywords: polyhedral cone, polar cone, convex hull, Householder's transformation.
И. Ю. Молчанова, Л. Н. Полякова, М. А. Попова
ПОСТРОЕНИЕ ПОЛЯРНОГО КОНУСА К ВЫПУКЛОМУ МНОГОГРАННОМУ КОНУСУ В R3
Санкт-Петербургский государственный университет, Российская Федерация, 199034, Санкт-Петербург, Университетская наб., 7/9
В статье рассматривается задача построения полярного конуса к острому выпуклому многогранному конусу в трехмерном евклидовом пространстве. При помощи преобразования Хаусхолдера заданный конус полностью помещается в верхнем полупространстве. Далее на плоскости г =1 строится выпуклая оболочка, натянутая на точках пересечения каждого луча исходного конуса с этой плоскостью. В результате алгоритма сортировки находятся вершины выпуклой оболочки и последовательности крайних лучей данного конуса. После проектирования точки (0,0, 1) на соответствующую грань определяются крайние лучи полярного конуса. Снова используя преобразование Хаусхолдера, получаем требуемый конус. Библиогр. 9 назв.
Ключевые слова: многогранный конус, полярный конус, выпуклая оболочка, преобразование Хаусхолдера.
1. Introduction. The problem of constructing the polar cone of a convex polyhedral cone arises in many mathematical problems, e.g., in the determination of the fundamental system of solutions of the homogeneous system of inequalities [1, 2], in problems of the multiobjective optimization [3]. The theory of linear inequalities is one of the well-studied sections of convex analysis. For example, Motzkin-Burger's and Chernikova's algorithms for finding of generating vectors of the dual cone are discussed in [1].
Molchanova Irina Yurievna — post-graduate student; e-mail: [email protected] Polyakova Lyudmila Nickolaevna — doctor of physical and mathematical sciences, professor; e-mail: [email protected]
Popova Marina Andreevna — post-graduate student; e-mail: [email protected] Молчанова Ирина Юрьевна — аспирант; e-mail: [email protected]
Полякова Людмила Николаевна — доктор физико-математических наук, профессор; e-mail: [email protected]
Попова Марина Андреевна — аспирант; e-mail: [email protected]
*) This work is supported by RFFI in project of 12-01-00752. The authors acknowledge St. Petersburg State University for a research (grant N 9.38.205.2014).
In the present paper, algorithms for constructing the extremal rays and faces of polar cone of given convex polyhedral cone are considered. Consider a convex polyhedral cone
Q = conecojQ a*U oj , ai e R3, ||ai|| = 0, m > 3,
where coA is the convex hull of A.
Assume that among the vectors ai, i e I = 1,...,m, there are not proportional ones. Vectors a,i, i e I, are called generating vectors of Q. The cone Q is closed. Let the cone Q be solid (with nonempty interior) and acute. A cone is called acute if it does not contain a straight line entirely [4]. For an acute polyhedral cone there is a unique (up to a positive scalar) generating set of extremal rays. In three-dimensional space each face of a convex polyhedral cone is also a plane convex polyhedral cone. The aim of our paper is to construct the polar cone Q
Qo = { x e R3 I a, x) < 0, a,i e R3, i e I}.
(1)
The set Qo is also a solid convex polyhedral acute cone [5]. In order to determine a set of points that are solutions of homogeneous system of linear inequalities (1), it is necessary to find the skeleton of Qo. Then Qo can be represented as
Qo = cone co < bj
bj e R3
here bi,j e J = 1,...,p, is the set of extremal rays of Qo.
2. Preliminary constructions. Since Q is acute, it can be rotated such that it is completely in the upper half-space, and the intersection of the resulting cone with the coordinate plane Oxy consists only of the zero point. Hence it is necessary to determinate a non-zero vector v e int Q forming an acute angle with each vector ai, i e I. Then
(v,x) > 0 Vx e Q.
By our assumption there exists such vector. Then Householder transformation [6] can be applied to Q so that after rotation v is lying on the axis Oz, i.e., it takes the following form v' = (0,0, z)T, z > 0.
R e m a r k 1. If all vectors ai have the first (second or third) coordinates of the same sign, then we don't need to apply the Householder transformation. In this case the vectors are in one of the half-space.
3. Householder transformation. In order to rotate a vector in the space it is necessary to use an orthogonal operator. Householder transformation (Householder operator) is a linear transformation of the vector space. Let us describe this transformation.
Let v = (vi,v2,v3)T e R3 be a vector to which the Householder operator is applied. The matrix of this operator has the form
H — E3 —
2uuT
where
E3
1 0 0 0 1 0 0 0 1
v + a\\v\\e3 , e3 = (0, 0,1)T, a
— 1, v3 > 0, 1, v3 < 0.
j
uTu
The effect of round-off errors can be reduced by introduction of the constant a. Matrix H is orthogonal. After applying the operator H to the vector v, we obtain the vector v', which lies on the axis Oz, z > 0, and v' = (0,0, z)T. Then the matrix H is applied to vectors ai, i G I, i.e., we rotate them also using the same resulting matrix H. Then
a'i = Hai, i G I.
It is known that under the action of an orthogonal operator to a vector, its length does not change. Therefore the angle between each of these vectors ai, i G I, and v' = (0,0, z)T will remain the same. Consequently all vectors also lie in the upper half-space, i.e. their third coordinate is positive. Thus, Q is rotated in the upper half-space. Denote it by
Q' = cone co | y a'^ , ai G R3.
Let e = (0,0,1)T. Obviously, the direction of the vector e coincides with the direction of the vector v'. Consequently, the vector e belongs to the interior of the cone Q'. Divide all
vectors ai by their third coordinate to get ai = 77-777, i € I. The vectors a.j, i G I, and e,
llaill
lie in the plane z = 1 and have coordinates ai = (a1i, a2i, 1)T. Construct the convex hull of these vectors
M = co j y a^j .
Obviously, the polyhedron M also lies in the plane z = 1. By construction, the vector e is in the relative interior of this polyhedron. Note also that
Q' = cone co <| y a^ .
Set bi = (aii, a,2i)T G R2, i G I.
Remark 2. Using Householder transformations to the considered cone Q' can be positioned in any half-space defined by the Cartesian coordinate plane.
Remark 3. There exists an one-to-one correspondence between the extremal rays of Q' and the extremal points of M.
4. Constructing the convex hull of a set of points on the plane. In order to construct the polar cone of the cone Q' it is necessary to find the vertices of M and to determine the order in which they are located. First of all, it is necessary to eliminate the vectors <ii, i G I, which lie in the interior of Q' and accordingly in the relative interior of M.
Consider an algorithm for constructing the convex hull of a finite set of points in the space R2 in the case where the vectors ai lie in the plane z = 1. There are several algorithms for constructing the convex hull in R2 [7, 8].
As in Graham's algorithm triples of vectors are sequentially considered. The algorithm finds all vertices of the convex hull ordered along its boundary. Let a set of different points be given in the plane:
r
M = (J bk, k = 1,...,r, r > 3.
k=i
Let C(M) be the convex hull of the set M and E be the set of its extreme points, i.e.,
C(M) = co M, E = ext C(M).
Assume that the zero point is contained in the relative interior of C(M) (0 e ri C(M)). Find a point b1 e M with the lowest ordinate in the given set. If there exist more than one point with the lowest ordinate in M, then a point with the lowest abscissa should be chosen from the candidates. This point is obviously a vertex of the convex hull. After that, we introduce a polar coordinate system so that the pole is in the zero point, and the polar ray passes through b1 eM. A positive angular coordinate means that the angle is measured counterclockwise from the polar ray. Find polar coordinates of the points bk eM, k = 1, ...,r, in the polar coordinate system
bk = (Pk,<k) eM,k =1,...,r, Pk e (0, <k e [0;2n].
The set of the point bk, k = 1,...,r, must be sorted in increasing order of the polar angle. If the polar angle of a point coincides with the angle of the other one, the point with the lowest pk is removed from the list. Denote the resulting set by M1:
Mi =U bj, bj = (Qj ,<pj), j e J =1,...,ri, ri < r, ri > 3, bj eM.
jeJ
Then the triples of consecutive points are repeatedly examined in counterclockwise order in order to determine whether they are vertices of the convex hull of M. For this we use the following algorithm.
Consider four points in the plane 0(0,0),A(ax,ay),B(bx,by),C(cx,cy), and assume that the vector OB lies between rays forming by vectors OA, OC. Assume also that the angle between OA and OC is less than n. Form a triangle OAC and calculate the cosines of the angles between the vectors AO and AB and between the vectors AO and AC
/—7^—n AO ■ —B —ax(bx — ax) — ay (by — ay)
«1 = cos ZAO, AB =-—------—-
a2 = cos ZAO, AB
UO\\\\AB\\ y/al + a* - axf + (by - ayY' AO ■ AC _ —ax(cx - ax) - ay(cy - ay)
II^OIIII^II ~ ^al + al^(cx-axf + (cy-ayf
Since the trigonometrical cosine function is monotonically decreasing on [0,n], the point B lies inside of the triangle OAC whenever ai ^ a2 .If ai < a2, then the point B does not lie inside of the triangle OAC. This algorithm will be used for finding the vertices of the convex hull.
Choose the first three points bi,b2,b3 e Mi. Note that, by construction, the point bi is the vertex of the convex hull. If <3 > n, the point b2 is the vertex of the set C(M), i.e. b2 e E. If <3 < n, then construct a triangle with vertices 0,bi, b3 (Ai = co(0,bi,b3)) and determine by the previously formulated algorithm whether the point b2 belongs to this triangle or not. There are two variants:
1) if b2 e Ai, then b2 e E. Proceed to consider the triple points bi, b3, b4 e Mi;
2) if b2 e Ai , then b2 e E. Proceed to consider the triple points b2, b3, b4 e Mi.
This process will return to the point bi at which it was started. As a result of the
algorithm a lot of E consisting of the vertices of the convex hull in the counterclockwise
order will be constructed. If we construct rays from the zero point and each point of E, then these rays are extreme rays of Q'. Let
E =(J'
ieii
/i = 1,.. .p, mi > 3, Q' = cone co (E).
5. Constructing the polar cone. Each face of the cone Q' is a plane spanned by two extreme vectors of the constructed convex hull. Ranking faces are known from its construction. In order to find the extreme rays of the polar cone of the cone Q', it is necessary to find the projection of point t = (0,0,1)T onto each face of the cone.
Describe an algorithm of orthogonal projecting onto the face spanned by the vectors ci, C2:
c'i = (xi,yi, zi), c2 = (x2, У2, z2).
Construct the matrix
A =
xi yi zi x2 y2 z2
The matrix of the projection operator(see [9]) is
/ Pii Pi2 Pi3
PCUC2 = AT (AAT )-iA = 1 P2i P22 P23
\ P3i P32 P33
The projection of the point t = (0,0, — 1)T onto the face spanned by the vectors a\ a'2 can be calculated by the formula
and
/ Pii Pi2 Pi3
ta1:a2 1 P2i P22 P23
\ P3i P32 P33
where
P23
Pi3
yi
xi
aia2 — 32 (a2 — 3) +
(a2 — 3)
x2
y2
ai
aia2 — 32 xi + y2 + 1,
ai a2 — 32
ai a2 — 32 (ai — 3), P33
(ai — 3),
ai — 23 + a2
ai a2 — 32
a2
X2 + y2 + 1, 3 = xiX2 + yiy2 + 1.
Analogously the point t = (0,0,1)T is projected onto each face spanning on the vectors ai, a'i+i, i = 1,...,(p — 1), and onto the face formed by a'mi, ai. The linear segment connecting the point t = (0,0,1)T and its projection onto the face lies on the ray which is orthogonal to the corresponding face of the cone Q'. After finding the projection of a point (0,0,1)T onto all of these faces, find extreme rays of the cone with vertex at (0,0,1)T, which after the parallel transport of its vertex to zero point is the polar cone of the cone Q'. Then apply again Householder transformation to Qio.
Thus, the constructed cone is the polar cone Qo of Q. This cone is a solution to the system of homogeneous linear inequalities (1).
Remark 4. The main computational difficulty is the problem of determining a vector lying in the interior of a given cone and forming an acute angle with each vector. In the most general case, it can be found by solving a specific problem of quadratic programming.
Denote this vector by v. Since v e Q, it can be represented as a convex linear combination of vectors ai:
v = ^2 Xiai, Xi = 1, Xi > 0, i = 1,.... i
Find multipliers Xi in (2). Consider the matrix
/ (ai,ai) (ai,a2) ... (ai,am) \ G = (a2,ai) (a2,a2) ... {a2,am)
\ (am,ai) {am,a2) ... (am,am) J and the vector X = (Xi,..., Xm) e Rm. Form the quadratic function
(2)
F(X) = -(GX,X), Aer.
Solving this problem of quadratic programming
min m F(X),
E Ai = 1,
i=1
Ai ^ 0, i = 1,. ..,m,
we find Xi and construct a vector v with the required properties. Example. Consider a set of points
ai = (—6, —15, 3), a2 = (0, 5, 1), a3 = (3, 1, 0.5),
a4 = (—8, 6, 2), a5 = (8,10, 2), a6 = (10, —8, 2), ai e R3.
All points are in the upper half-space. Divide the coordinates of each vector by the third coordinate
ai = (—2, —5, 1), a2 = (0, 5,1), a'3 = (6, 2, 1), a!A = (—4, 3,1), a'5 = (4, 5, 1), a'6 = (5, —4,1).
Reject the third coordinate and sort the resulting set of vectors. Choose a point with the lowest ordinate and go counterclockwise. Then
(—2, —5) —► (5, —4) —► (6, 2) —► (4, 5) —► (0, 5) —► (4, 3).
Further the point (0,0,1) is projected on the corresponding faces formed by the matrix Ai, i e 1,...,6. Then for each face the projection operator is constructed and the projection is defined as
A1
—2 —5 1 5 4 1
A2 =
A3 =
5 4 1
6 2 1
6 2 1
4 5 1
p1
P2 =
P3 =
/153 119 130 V 419419'419^ '
28 14 5 201'201'201
i 66 44 13 V497'497'497
A4 =
A5
Аб
4 5 1
0 5 1
0 5 1
-4 3 1
-4 3 1
-2 -5 1
P4 =
Р6
5 1 ' 26' 26
2 4 1 P5 ~ 1 _ 21' 21' 21
26 13 17 "93'~l86'l86
This leads to the following extremal rays bi, i = 1,..., 6, of the polar cone Qo
26 13
169
93' 186' 186
, b2
24
20
21 21 21
Ьз
5 26'
Ь4 =
484
66 44
497 497 497
28 14 —194N.
5 ~ 1 201'201'~~20Г 1 ' 6
153 119 289
419 419 419
References
1. Chernikov S. N. Linejniye neravenstva (Linear inequalities). Moscow: Nauka, 1968, 488 p.
2. Chernikova N. B. Algoritm dlya nahozhdeniya obschej formuly neotritsatel'nyh reshenij sistemy linejnyh neravenstv (An algorithm for finding the general formula of non-negative solutions of a system of linear inequalities). Zhurnal vychislitel'noj matematiki i matematicheskoj fiziki, 1965, vol. 5, no. 2, pp. 334-337.
3. Noghin V. D., Baskov O. V. Suzheniye mnozhestva Pareto na osnove ucheta proizvol'nogo konechnogo nabora chislovoj informacii ob otnoshenii predpochteniya (Pareto set reduction based on an arbitrary finite collection of numerical information on the preference relation). Dokl. Akad. nauk, 2011, vol. 83, no. 3, pp. 418-420.
4. Rockafellar R. T. Convex Analysis. Princeton, N. J.: Princeton University Press, 1997, 451 p.
5. Charin V. S. Linejniye preobrazovaniya i vypukliye mnozhestva: uceb. posobiye dlya studentov vuzov (Linear transformations and convex sets: proc. manual for students). Kiev: Vishcha shkola, 1978, 191 p.
6. Lawson S. L., Hanson R. J. Solving Least Squares Problems. Englewood Cliffs, N. J.: Prentice-Hall, Inc., 1995, 337 p.
7. Cormen T. H., Leiserson C. E., Rivest R. L., Stein C. Introduction to algorithms. 3rd. ed. Cambridge, Mass.: MIT Press, 2009, 1292 p.
8. Preparata F. R., Shamos M. I. Computational Geometry: An Introduction. New York: SpringerVerlag, 1985, 407 p.
9. Pshenichny B. N., Danilin Y. M. Chislennye metody v ekstremal'nyh zadacah (Numerical methods in extremal problems). Moscow: Nauka, 1975, 320 p.
Литература
1. Черников С. Н. Линейные неравенства. M.: Наука, 1968. 488 с.
2. Черникова Н. Б. Алгоритм для нахождения общей формулы неотрицательных решений системы линейных неравенств // Журн. вычисл. математики и матем. физики. 1965. Т. 5, № 2. С. 334337.
3. Ногин В. Д., Басков O. В. Сужение множества Парето на основе учета произвольного конечного набора числовой информации об отношении предпочтения // Докл. Акад. наук. 2011. T. 83, № 3. С. 418-420.
4. Rockafellar R. T. Convex Analysis. Princeton, N. J.: Princeton University Press, 1997. 451 p.
5. Чарин В. С. Линейные преобразования и выпуклые множества: учеб. пособие для студентов вузов. Киев: Высшая школа, 1978. 191 с.
6. Lawson S. L., Hanson R. J. Solving Least Squares Problems. Englewood Cliffs, N. J.: Prentice-Hall, Inc., 1995. 337 p.
7. Cormen T. H., Leiserson C. E., Rivest R. L., Stein C. Introduction to algorithms. 3rd. ed. Cambridge, Mass.: MIT Press, 2009. 1292 p.
8. Preparata F. R., Shamos M. I. Computational Geometry: An Introduction. New York: SpringerVerlag, 1985. 407 p.
Ь
0
1
9. Пшеничным В. Н., Данилин Ю. M. Численные методы в экстремальных задачах. M.: Наука, 1975. 320 с.
The article is recommended for publication by prof. L. A. Petrosyan. The article is received by the editorial office on June 26, 2014. Статья рекомендована к печати проф. Л. А. Петросяном. Статья поступила в редакцию 26 июня 2014 г.