Научная статья на тему 'Агрегация уравнений в целочисленном программировании'

Агрегация уравнений в целочисленном программировании Текст научной статьи по специальности «Математика»

CC BY
235
50
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АГРЕГАЦИЯ СИСТЕМ ЛИНЕЙНЫХ УРАВНЕНИЙ / ЗАДАЧА О РЮКЗАКЕ / AGGREGATION OF LINEAR EQUATIONS / KNAPSACK PROBLEM

Аннотация научной статьи по математике, автор научной работы — Веселов Сергей Иванович, Чирков Александр Юрьевич, Грибанов Дмитрий Владимирович

Актуальность и цели. Исследуется следующее обобщение агрегации систем линейных диофантовых уравнений: для заданной системы уравнений с целыми коэффициентами найти целые множители такие, что вершины выпуклой оболочки множества целых неотрицательных решений этой системы являются вершинами выпуклой оболочки множества целых неотрицательных решений уравнения . Материалы и методы. В работе используются методы линейного программирования и геометрии чисел. Результаты. Доказано, что обобщенное агрегирующее уравнение существует для любой системы линейных уравнений. Для систем уравнений с неотрицательными коэффициентами указан простой способ вычисления чисел . Получена достижимая нижняя оценка свободного члена обобщенного агрегирующего уравнения. Описан класс задач целочисленного линейного программирования, сводящихся к задаче о рюкзаке с правой частью меньшей, чем при любом способе обычной агрегации. Выводы. Новый подход к агрегации расширяет область ее применения и уменьшает коэффициенты агрегирующего уравнения.

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

Похожие темы научных работ по математике , автор научной работы — Веселов Сергей Иванович, Чирков Александр Юрьевич, Грибанов Дмитрий Владимирович

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

AGGREGATION OF EQUATIONS IN INTEGER PROGRAMMING

Background. The authors investigate the following generalization of the Diophantine equations aggregation: given with integer coefficients, we need to find integer multipliers such that all the vertices of the convex hull of integer non-negative solutions of the system are vertices of the convex hull of integer non-negative solutions of the equation . Materials and methods. The study included well-known methods of linear programming and geometry of numbers. Results. The existence of the generalized aggregating equation has been proved for any system of integer linear equations. A simple method to calculate the multipliers has been developed for systems with non-negative coefficients. The obtainable lower bound has been received for the right-hand side of the generalized aggregating equation. The multidimensional knapsack problem has been reduced to the classical knapsack problem such that the right-hand side coefficient is less than at any of the existing aggregation methods. Conclusions. The new approach to aggregation broadens the area of its application and reduces coefficients of the aggregating equation.

Текст научной работы на тему «Агрегация уравнений в целочисленном программировании»

МАТЕМАТИКА

УДК 519.854

DOI 10.21685/2072-3040-2016-2-1

С. И. Веселов, А. Ю. Чирков, Д. В. Грибанов

АГРЕГАЦИЯ УРАВНЕНИЙ В ЦЕЛОЧИСЛЕННОМ ПРОГРАММИРОВАНИИ1

Аннотация.

Актуальность и цели. Исследуется следующее обобщение агрегации систем линейных диофантовых уравнений: для заданной системы уравнений

V , 1 ayXj = a, i = 1,...,m, с целыми коэффициентами найти целые множители Л,f2,...,fm такие, что вершины выпуклой оболочки множества целых неотрицательных решений этой системы являются вершинами выпуклой оболочки множества целых неотрицательных решений уравнения

Zm ^n s-^m

i=1 fi V j=1 jj = V=1 fiai.

Материалы и методы. В работе используются методы линейного программирования и геометрии чисел.

Результаты. Доказано, что обобщенное агрегирующее уравнение существует для любой системы линейных уравнений. Для систем уравнений с неотрицательными коэффициентами указан простой способ вычисления чисел Л,f2,., fm. Получена достижимая нижняя оценка свободного члена обобщенного агрегирующего уравнения. Описан класс задач целочисленного линейного программирования, сводящихся к задаче о рюкзаке с правой частью

V. 1 fiai меньшей, чем при любом способе обычной агрегации.

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

Ключевые слова: агрегация систем линейных уравнений, задача о рюкзаке.

S. I. Veselov, A. Ju. Chirkov, D. V. Gribanov

AGGREGATION OF EQUATIONS IN INTEGER PROGRAMMING

Abstract.

Background. The authors investigate the following generalization of the Dio-

phantine equations aggregation: given "V n aiJxJ- = ai, i = 1,..., m with integer co-

¿—¡j=1

efficients, we need to find integer multipliers f1, f2,..., fm such that all the vertices of the convex hull of integer non-negative solutions of the system are vertices of the

1 Работа выполнена при частичной финансовой поддержке РФФИ (код проекта № 15-01-06249А).

convex hull of integer non-negative solutions of the equation

i=1 / 1 j=1 J = 1 i=1•

Materials and methods. The study included well-known methods of linear programming and geometry of numbers.

Results. The existence of the generalized aggregating equation has been proved for any system of integer linear equations. A simple method to calculate the multipliers /1,/2,...,fm has been developed for systems with non-negative coefficients. The obtainable lower bound has been received for the right-hand side of the generalized aggregating equation. The multidimensional knapsack problem has been reduced to the classical knapsack problem such that the right-hand side coefficient is less than at any of the existing aggregation methods.

Conclusions. The new approach to aggregation broadens the area of its application and reduces coefficients of the aggregating equation.

Key words: aggregation of linear equations, knapsack problem.

Введение

Пусть Z обозначает множество всех целых чисел, N - множество всех

неотрицательных целых чисел, A е Zm^n, rank A > 2, a e Zm ,

n

M(A, a) = {x | Ax = a, x e N } и V(A, a) - множество вершин выпуклой оболочки множества M(A,a). Вектор-строка / с целыми элементами называется агрегирующим вектором для M ( A, a), если M( A, a) = M (/A, fa), а уравнение /Ax = fa называется агрегирующим уравнением для системы Ax = a .

Известно, что агрегирующее уравнение существует тогда и только, когда среди семейства эквивалентных систем линейных уравнений, задающих M ( A, a ), есть система уравнений с неотрицательной матрицей коэффициентов (см., например, [1]). Если A > 0, a > 0 и координаты ai,a2,...,am вектора a упорядочены по возрастанию, то координаты агрегирующего вектора можно вычислить, например, по формулам [2] :

/1 = П m=2 (ai +1), /2 = П m=2 (ai +1) + П m= 3(ai +1),

fk = {ak + 2) /k-1 - /k-2 при k > 3. ak +1

Разнообразие методов агрегации [2-9] объясняется тем, что свободный член агрегирующего уравнения экспоненциально зависит от m . В работе [10] получены нижние оценки, доказывающие закономерность этого явления. Достижимость этих оценок установлена в [2], где доказано, что уравнение

¡nm xi —ai +1 п

Щ .=1 aj jl-=j --= U является агрегирующим для системы

\ J = / 1 = ai

xi = ai — 1, i = 1,..., m, с попарно взаимно простыми ai, i = 1,..., m, и каждый из коэффициентов этого уравнения не превышает соответствующего коэффициента любого другого агрегирующего уравнения. Привлекательность агрегации с практической точки состоит в том, что она позволяет сводить об-

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

Здесь описывается другая идея преобразования многомерной задачи о рюкзаке в одномерную задачу о рюкзаке.

1. Основной результат

Целочисленный вектор-строка f называется g-агрегирующим вектором для M (A, a), если V (A, а) с V (fA, fa). Уравнение fAx = fa называется g-агрегирующим уравнением. Обозначим n -мерную строку из единиц через en .

Теорема 1. g-агрегирующее уравнение существует для любой системы линейных уравнений.

Доказательство. Достаточно доказать, что при m > 2 существует система Bx = b из (m -1) уравнений такая, что V(A, а) с V(B, b) .

В теории линейного программирования известно, что p eV (A, а) тогда и только тогда, когда существует такой вектор-строка с с неотрицательными рациональными координатами, что для всякого x e M(A, a) справедливо неравенство

cp < cx . (1)

Покажем, что существует вектор сp > 0 такой, что неравенство

сpP < сpx выполняется для всех x e M(A,a) n Zn . Заметим, что неравенство

(1) сохранится после умножения вектора c на наименьшее общее кратное знаменателей его координат. Далее считаем, что c уже имеет целые координаты. Таким образом, для вектора x e M (A, a) n Zn справедливо неравенство cp +1 < cx . Пусть min{enx | x e M(A,a)} достигается в точке q e M(A,a).

Пусть £ = 1/ [2(enp -enq)J, если enp - enq Ф 0 и e = 1 в противном случае. Положим сp = c + £en . Проверяем:

cpp = cP + £enp = cP + 6nP-т = cP +1 + 6nq-т =

2(enp - enq) 2 2^p - enq)

= cp +1/2 + £enq < cpx .

Пусть ^1,^2,...,hn -m - базис решетки, состоящей из целочисленных решений уравнения Ax = 0. Дополним его до базиса h^hq,,---,hn -m,

hn -m +1,...hn целочисленной решетки Zn. Так как m > 2, то hn - m +1 Ф hn, следовательно, для каждого целого 5 векторы h^

h2,—, hn - m, hn - m +1 + shn,. hn также образуют базис Zn, поэтому векто-Physical and mathematical sciences. Mathematics 7

ры hi,^2,...,hn_m,hn_m+ shn являются базисом решетки целочисленных решений некоторой системы Bsx = 0 ранга (m _ 1). Покажем, что V(A, a) с V(Bs, Bsp) при достаточно большом s . Для произвольного вектора y е M(Bs, Bsp) существует t такой, что Ay = a + qst, где qs = A(hn_m+i + shn). Если s достаточно велико, то при t Ф 0 вектор y имеет хотя бы одну компоненту, превышающую CpP / X, где X - минимальная компонента вектора Cp . Следовательно, CpP < Cpy, поэтому p е V(Bs,Bsp). Так как число точек в V(A, a) конечно, то можно выбрать s так, чтобы неравенство Cpp < Cpy выполнялось при любых p е V(A, a), y е M(Bs, Bsp).

Осталось заметить, что строки матрицы Bs принадлежат линейной оболочке строк матрицы A . □

Далее предполагается, что матрица A и вектор a имеют неотрицательные элементы. Пусть 5е {-1,1} , тогда

/8=(l, ai +1,..., П m=^2( ai +1), 6П m=^1( ai +1)).

Следующее утверждение доказано в [6] при 5 = 1. Лемма 1. a е V(/5, /5a).

Доказательство. Достаточно доказать, что на множестве M(/5,/5a) минимум функции h(x) = emx достигается в единственной точке x = a . Для любого x е M(/5, /5b) из равенства

(x1 _ a1) + (a1 +1)(x2 _ a2) + ... + (a1 +1)—(am_1 +1)(xm _ am) = 0 последовательно выводятся формулы

x1 _ a1 = (a1 + 1)t1, x2 _ a 2 = a + 1)t2 _ t1, .,

xm_1 _ am_1 = (am_1 + 1)tm_1 , xm _ am = _5tm_1,

где t1,t2,.,tm_1 е N .

Суммируя, находим

x1 + x2 + . + xm = a1(t1 +1) + a2(t2 +1) + . + am _1(m _1 +1) + am + (1 _5)tm_1.

Минимум правой части достигается лишь при t1 = t2 = . = tm _1 = 0, следовательно, minh(x) = ema и достигается лишь при x = a .□ Теорема 2. V (A, a) с V (/5A, /5a).

Доказательство. Утверждение тривиально, если M(A,a) - пустое множество. Предположим, что M(A,a) непусто. Рассмотрим x0 е M(A,a) и предположим, что x0 g V(/5A, /5a) . Тогда найдутся число r и отличные от x0 точки x1,x2,...,xr е M(/5A,/5a) такие, что

x0 = Zr=1Xixi,Xi > 0, i = 1,.,r. (2)

Отсюда получаем

a — Ax0 = Yii-x^iAX> h - 0' i = r- (3)

Так как Ax1 e M (/g, /ga), i - 1,..., r, и согласно лемме a eV (/g, /§a), равенство (2) влечет соотношения Ax' - a, i — 1,..,r, т.е. хг e M(A,a), i — 1,...,r поэтому из (2) вытекает x0 й V(A,a) . □

2. Сведение многомерной задачи о рюкзаке к одномерной

Далее рассматриваем только матрицы A с неотрицательными элементами без нулевых столбцов. Поскольку emA > 0, то для всякого вектора-строки c существует число k такое, что c — с + kemA — 0. Пусть l - такое целое число, что множество {хe M(A,a) | cx — l} пусто.

Теорема 3.

1. Если M(/gA, /ga) - пустое множество, то M(A, a) также пустое множество.

2. Если минимум функции (с' + lemA)х на множестве M(/gA,/ga) достигается в точке y, то возможны два случая:

- если y e M(A,a), то cy — min{cx | x e M(A,a)};

- если y й M(A,a), то M(A,a) - пустое множество.

Доказательство. Утверждение первого пункта очевидно. Предположим, что (с' + lemA) y — min {(с' + lemA) х | x e M (/g A, /ga)} и Ay Ф a . Из леммы 1 следует, что emAy — ema +1, следовательно,

(с + kemA + lemA)y — (с + kemA)y + lemAy — lema +1.

С другой стороны, если M (A, a) не пусто, то существует z e M(A,a) с M(/gA, /ga) такой, что (c + kemA)z < l, следовательно, (с + kemA + lemA)z < l + lema , но это неравенство противоречит тому, что y -точка минимума. □

Теорема 4. Если уравнение ax — ß является g-агрегирующим для

M(A,a) и y — (y1,y2,...,yn)e V(A,a), то ß —ПП— 1(yf+1)-1. Оценка достижима, если A содержит единичную подматрицу ранга m.

Доказательство. Предположим, что найдутся u, v e Nn, удовлетворяющие условиям u Ф v, u < y, v < y, au — av, тогда y — y - u + v e M(a,ß), y" — y + u - ve M(a,ß) и y — (y + y')/2. Это противоречит условию теоремы, следовательно, функция ax на множестве {u e Nn : u < y} принимает

П^1( y i+1) — 1 различных ненулевых целых значений, не превышающих ß.

Предположим для определенности, что в первых m столбцах матрицы A содержится единичная подматрица ранга m, тогда

(a j, a 2,..., am ,0,...,0) eV(A, a), поэтому Р^П m-i(a'+1) - 1. С другой стороны, свободный член g-агрегирующего уравнения fAx = fa равен

П m=1(al-+1) - !.□

Преимущество g-агрегации перед обычной агрегацией проиллюстрируем на задаче об упаковке множества. Рассмотрим матрицу S е NmXn из нулей и единиц и содержащую единичную подматрицу ранга m. Вектор

f = (1,2,.,2m j) является g-агрегирующим для M(S,e~m), а наилучшим из

известных агрегирующих векторов является вектор 2mem — f (см., например, [4]). Свободные члены g-агрегирующего и агрегирующего уравнений равны соответственно 2m — 1 и (m — 1)2m — 1. Любопытно, что столбцы матрицы A - это коэффициенты g-агрегирующего уравнения, записанные в двоичной системе счисления.

Список литературы

1. Шевченко, В. Н. Качественные вопросы целочисленного программирования /

B. Н. Шевченко - М. : Наука, 1995. - 192 с.

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

2. Веселов, С. И. Об агрегации линейных целочисленных уравнений / С. И. Ве-селов // Кибернетика. - 1985. - № 4. - С. 58-60.

3. Plateau, G. Aggregation of equalities in integer programming / G. Plateau and M. T. Guerch // Lecture Notes in Control and Information Sciences. - 1984. - Vol. 59. -P. 183-192.

4. Бабаев, Д. А. Агрегация одного класса систем целочисленных уравнений / Д. А. Бабаев, К. Ш. Мамедов // Журнал вычислительной математики и математической физики. - 1978. - Т. 18, № 3. - С. 614-619.

5. Kannan, R. Polynomial-Time Aggregation of Integer Programming Problems / R. Kannan // Journal of the Association for Computing Machinery. - 1983. - Vol. 30, № 1. - P. 133-145.

6. Babayev, D. A. Aggregation of nonnegative integer-valued equations / D. A. Baba-yev, F. Glover // Discrete Applied Mathematics. - 1984. - Vol. 8, № 2. - P. 125-130.

7. Elimam, A. A. On the reduction method for integer linear programs, II* / A. A. Elimam, S. E. Elmaghraby // Discrete Applied Mathematics. - 1985. - Vol. 12, № 3. - P. 241-260.

8. Babayev, D. A. A New Knapsack Solution Approach by Integer Equivalent Aggregation and Consistency Determination / D. A. Babayev, F. Glover, J. Ryan // Informs Journal on Computing. - 1997. - Vol. 9, № 1. - P. 43-50.

9. Babayev, D. A. Sequential and simultaneous aggregation of Diophantine equations / D. A. Babayev, S. S. Mardanov // Discrete Applied Mathematics. - 1994. - Vol. 50, № 3. - P. 209-220.

10. Веселов, С. И. Об экспоненциальном росте коэффициентов агрегирующего уравнения / С. И. Веселов, В. Н. Шевченко // Кибернетика. - 1978. - № 4. -

C. 78-79.

References

1. Shevchenko V. N. Kachestvennye voprosy tselochlslennogo programmlrovanlya [Qualitative problems of integer programming]. Moscow: Nauka, 1995, 192 p.

2. Veselov S. I. Klbernetlka [Cybernetics]. 1985, no. 4, pp. 58-60.

3. Plateau G. and Guerch M. T. Lecture Notes in Control and Information Sciences. 1984, vol. 59, pp. 183-192.

4. Babaev D. A., Mamedov K. Sh. Zhurnal vychislitel'noy matematiki i matematicheskoy fiziki [Journal of computing mathematics and mathematical physics]. 1978, vol. 18, no. 3, pp. 614-619.

5. Kannan R. Journal of the Association for Computing Machinery. 1983, vol. 30, no. 1, pp. 133-145.

6. Babayev D. A., Glover F. Discrete Applied Mathematics. 1984, vol. 8, no. 2, pp. 125130.

7. Elimam A. A., Elmaghraby S. E. Discrete Applied Mathematics. 1985, vol. 12, no. 3, pp. 241-260.

8. Babayev D. A., Glover F., Ryan J. Informs Journal on Computing. 1997, vol. 9, no. 1, pp. 43-50.

9. Babayev D. A., Mardanov S. S. Discrete Applied Mathematics. 1994, vol. 50, no. 3, pp. 209-220.

10. Veselov S. I., Shevchenko V. N. Kibernetika [Cybernetics]. 1978, no. 4, pp. 78-79.

Веселов Сергей Иванович кандидат физико-математических наук, доцент, кафедра алгебры, геометрии и дискретной математики, Институт информационных технологий, математики и механики, Нижегородский государственный университет имени Н. И. Лобачевского (Россия, г. Нижний Новгород, пр. Гагарина, 23)

E-mail: veselov@vmk.unn.ru

Чирков Александр Юрьевич кандидат физико-математических наук, доцент, кафедра алгебры, геометрии и дискретной математики, Институт информационных технологий, математики и механики, Нижегородский государственный университет имени Н. И. Лобачевского (Россия, г. Нижний Новгород, пр. Гагарина, 23)

E-mail: chir7@yandex.ru

Грибанов Дмитрий Владимирович

ассистент, кафедра алгебры, геометрии и дискретной математики, Институт информационных технологий, математики и механики, Нижегородский государственный университет имени Н. И. Лобачевского (Россия, г. Нижний Новгород, пр. Гагарина, 23)

E-mail: dimitry.gribanov@gmail.com

Veselov Sergey Ivanovich Candidate of physical and mathematical sciences, associate professor, sub-department of algebra, geometry and discrete mathematics, Institute of information technology, mathematics and mechanics, Lobachevsky State University of Nizhni Novgorod (23 Gagarina avenue, Nizhny Novgorod, Russia)

Chirkov Aleksandr Yur'evich Candidate of physical and mathematical sciences, associate professor, sub-department of algebra, geometry and discrete mathematics, Institute of information technology, mathematics and mechanics, Lobachevsky State University of Nizhni Novgorod (23 Gagarina avenue, Nizhny Novgorod, Russia)

Gribanov Dmitriy Vladimirovich Assistent, sub-department of algebra, geometry and discrete mathematics, Institute of information technology, mathematics and mechanics, Lobachevsky State University of Nizhni Novgorod (23 Gagarina avenue, Nizhny Novgorod, Russia)

УДК 519.854 Веселов, С. И.

Агрегация уравнений в целочисленном программировании /

С. И. Веселов, А. Ю. Чирков, Д. В. Грибанов // Известия высших учебных заведений. Поволжский регион. Физико-математические науки. - 2016. -№ 2 (38). - С. 5-12. БОТ 10.21685/2072-3040-2016-2-1

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