Научная статья на тему 'Распараллеливание экстраградиентных методов'

Распараллеливание экстраградиентных методов Текст научной статьи по специальности «Математика»

CC BY
144
27
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ЭКСТРАГРАДИЕНТНЫЙ МЕТОД / ОПТИМИЗАЦИЯ / ПАРАЛЛЕЛЬНОЕ ПРОГРАММИРОВАНИЕ / EXTRAGRADIENT METHOD / OPTIMIZATION / PARALLEL PROGRAMMING

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

В работе предлагаются приемы распараллеливания экстраградиентных методов решения вариационных неравенств и оптимизационных задач с матричным оператором. При заданном количестве процессоров получены оценки размерности задач, для которых распараллеливание алгоритмов эффективно.

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

Parallelizing of extragradient methods

The article shows how to parallelize extragradient methods for solving variational inequalities and problems with matrix operator. The minimum dimension of the problem and the optimal number of processors is estimated to achieve maximum acceleration.

Текст научной работы на тему «Распараллеливание экстраградиентных методов»

ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011

3. Katz, M.J. Improved algorithms for placing undesirable facilities / M.J. Katz, K. Kedem, M. Segal // Computer & Operations Research. — 2002. — Vol. 29 — P. 1859-1872.

4. Brimberg, J. Multi-facility location using a maximin criterion and rectangular distances / J. Brimberg, A. Mehrez // Location Science. - 1994 -Vol. 2 - №1 - P. 11-19

5. Забудский, Г. Г. Размещение объектов на плоскости с максиминным критерием и минимально допустимыми расстояниями / Г. Г. Забудский, А. А. Коваль // Математическое программирование и приложения : XIV Всероссийская конф. Екатеринбург, 28 февраля - 4 марта 2011 / ИММ УрО РАН. -Екатеринбург, 2011. - С. 88.

6. Забудский, Г. Г. Решение максиминной задачи размещения на плоскости с минимально допустимыми расстояниями / Г. Г. Забудский, Н. В. Мархоцкая // Методы оптимизации и их приложения : XIV Байкальская международная школа-семинар. Иркутск, 2 - 8 июля 2008 / ИСЭ СО РАН. - Иркутск, 2008. - Т. 1. - С. 380-387.

7. Drezner, Z. Finding the circle or rectangle containing the minimum weight of points / Z. Drezner, G.O. Wesolowsky // Location Science. — 1994 — Vol. 2 — № 2 — P. 83 — 90.

ЗАБУДСКИЙ Геннадий Григорьевич, доктор физикоматематических наук, профессор (Россия), ведущий научный сотрудник Омского филиала Института математики им. С. Л. Соболева СО РАН.

БУРЛАКОВ Юрий Андреевич, аспирант кафедры прикладной и вычислительной математики Омского государственного университета им. Ф.М. Достоевского.

Адрес для переписки: e-mail: burlakov_yura@mail.ru

Статья поступила в редакцию 04.06.2011 г.

© Г. Г. Забудский, Ю. А. Бурлаков

удк 519 95 Д. Н. ЗАПОРОЖЕЦ

В. С. ЗЫКИН А. В. ЗЫКИНА Д. И. КУЯНОВ

Омский государственный технический университет

РАСПАРАЛЛЕЛИВАНИЕ ЭКСТРАГРАДИЕНТНЫХ МЕТОДОВ

В работе предлагаются приемы распараллеливания экстраградиентных методов решения вариационных неравенств и оптимизационных задач с матричным оператором. При заданном количестве процессоров получены оценки размерности задач, для которых распараллеливание алгоритмов эффективно. Ключевые слова: экстраградиентный метод, оптимизация, параллельное программирование.

Введение

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

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

В работе исследуются одношаговый экстраградиентный метод [1, 2] и двухшаговый экстраградиентный метод [3, 4] для решения нелинейного вариационного неравенства и оптимизационных задач с матричным оператором (система линейных уравнений, линейная задача дополнительности) [5].

Для проверки полученных теоретических выводов были написаны программы на объектно-ориен-

тированном языке программирования C++ с использованием технологии OpenMP [6]. Данная технология существует специально для разработки параллельных программ, использующих несколько процессоров с общей памятью (в отличие от технологии MPI, которая рассчитана на распределенные системы, то есть ЭВМ с несколькими процессорами и распределенной памятью). В качестве среды разработки была выбрана Microsoft Visual Studio 2010. Численные эксперименты проводились на двухпроцессорной машине. Для каждой размерности задачи проводилась серия из 10 экспериментов. Достигнутое практическое ускорение вычислялось путем усреднения значения ускорения в полученной выборке.

Экстраградиентные методы для решения вариационных неравенств

Рассмотрим вариационное неравенство

< H(x), y - x > > 0, x, y е W,

на множестве W е R1 с оператором H: R1 ® R1. Решением вариационного неравенства является вектор х* е W, удовлетворяющий условию

( Н(х*), у — х* ) > 0, для любого у е О.

Одношаговый экстраградиентный метод для отыскания решения вариационного неравенства задаётся следующими рекуррентными соотношениями [1—2]:

хк = Ро(хк -aH(xk)),

независимо, поэтому их можно выполнить параллельно. Таким образом, для выполнения одной итерации на р процессорах потребуется соответственно

Т1 (п, р) = + — + 4000(р - 1)

Р Р

6п

хк+1 = Ра(хк - аН(хк)),

где Р о — проекция на множество О, а >0 величина шага.

Двухшаговый экстраградиентный метод для отыскания решения СЛАУ задается следующим образом [3-4]:

Т2(п,р)

---+ — + 6000(р - 1)

рр

итераций.

Время, необходимое на создание и слияние потоков, условно принимается равным 2000 операциям. Таким образом, ускорение, получаемое от распараллеливания, задается формулами

хк = Ро(хк -аН(хк)) Хк = Ро(хк - аН(хк))

81(п,р) = кТ1 (п,1) = Т1(1,р) = Р(4п2 + 6п)

кТ1 (п, р) Т1 (п, р) 4п2 + 6п + 4000р(р - 1)

хк+1 = Ро(хк -аН(хк)).

Анализ ускорения для решения систем линейных алгебраических уравнений

Система линейных алгебраических уравнений (СЛАУ)

Ах = Ь,

_2, , кТ2 (п,1)

Б (п,р) -

Т2(1,р)

р(6п2 + 9п)

кТ2 (п, р) Т2(п, р) 6п2 + 9п + 6000р(р - 1)

соответственно.

Решая неравенства Б1(п,р)>1 и Б2(п,р)>1 относительно п , получим для заданного количества процессоров оценку минимальной размерности задачи, при которой наблюдается ускорение. Решением неравенств является значение

где А — матрица пхп, Ь — вектор размерности п сводится к вариационному неравенству, если в качестве множества О взять Яп, а в качестве оператора Н(х) вектор Ах — Ь.

Рассмотрим систему линейных уравнений, где вектор Ь = (0,0,..,0), а матрица А квадратная, кососимметричная, которая задается условием [5]

д/9 + 16000р - 3

4

Таким образом, при распараллеливании на двухпроцессорном компьютере ускорение будет наблюдаться при п > 44. Численные эксперименты представлены в табл. 1.

аЧ =

- у = п + 1 - і > і и = п +1 - і < і 0, иначе

Экстраградиентные методы для решения СЛАУ будут выглядеть следующим образом.

Одношаговый экстраградиентный метод для отыскания решения СЛАУ:

хк = хк - а(Ахк - Ь), хк+1 = хк - а(Ахк - Ь);

Двухшаговый экстраградиентный метод для отыскания решения СЛАУ:

хк = хк - а(Ахк - Ь), хк = хк - а(Ахк - Ь),

Анализ ускорения для решения линейных задач дополнительности

Линейная задача дополнительности (ЛЗД) формулируется следующим образом. Необходимо найти вектор х* такой, что

( х*, Аи* — Ь ) = 0,

где х‘, Ах* — ЬеРп+. Задачу линейной дополнительности можно свести к вариационному неравенству, если в качестве множества О взять Яп+, а в качестве оператора Н(х) = Ах — Ь. Возьмем вектор Ь = ( — 1, — 1, .. , —1), а элементы матрицы А зададим следующим выражением

Шу =

2, і < І и = І 0, і > І

хк+1 = хк - а(Ахк - Ь).

Рассмотрим зависимость времени выполнения алгоритмов от размерности задачи п и числа процессоров р. Будем считать, что операции сложения, перемножения, присваивания чисел и умножение числа на константу требуют одинакового количества времени. Тогда выполнение одной итерации одношагового экстраградиентного метода требует Т1(п) = 4п2 + 6п операций, а двухшагового — Т2(п) = 6п2 + 9п операций. Вычисление координат вектора происходит

Тогда задача дополнительности имеет единственное решение х*= (0,0,...,0,1). Вычислительная схема экстраградиентных методов напоминает схему при решении СЛАУ, появляются операции проецирования на положительный ортант ( [ . ]+ ).

Одношаговый экстраградиентный метод для отыскания решения ЛЗД:

хк = [хк - а(Ахк - Ь)]+,

хк+1 = [хК -а(АхК - Ь)Г

и

2

и

п >

ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011 ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ

23

ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011

Ускорение при распараллеливании СЛАУ

Размерность задачи Практическое/Ожидаемое ускорение одношагового метода Практическое/Ожидаемое ускорение двухшагового метода

50 0,91/1,12 0,89/1,12

100 1,21/1,67 1,17/1,67

200 1,54/1,9 1,48/1,9

500 1,79/1,98 1,73/1,98

1000 1,89/1,99 1,78/1,99

Таблица 2

Ускорение при распараллеливании ЛЗД

Размерность задачи Практическое/Ожидаемое ускорение одношагового метода Практическое/Ожидаемое ускорение двухшагового метода

50 0,9/1,13 0,89/1,13

100 1,22/1,67 1,17/1,67

200 1,56/1,9 1,46/1,9

500 1,81/1,98 1,73/1,98

1000 1,92/1,99 1,78/1,99

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

Таблица 3

Ускорение при распараллеливании НВН

Размерность задачи Практическое/Ожидаемое ускорение одношагового метода Практическое/Ожидаемое ускорение двухшагового метода

1000 0,88/1,05 0,84/1,05

5000 0,96/1,12 0,9/1,12

50000 1,06/1,13 1,01/1,13

Двухшаговый экстраградиентный метод для отыскания решения ЛЗД:

хк = [хк - а(Ахк - Ь)]+,

хк = [хк - а(Ахк - Ь)]+,

хк+1 = [хк -а(Ахк - Ь)]+.

Операции проецирования добавляют 4п и 6п операций на каждой итерации одношагового и двухшагового экстраградиентного методов соответственно. Таким образом, получаемое ускорение для решения ЛЗД выражается формулами

Б>,р)

р(4п2 + 10п)

4п2 + 10п + 4000р(р - 1)

Б2(п,р) =■

р(6п2 + 15п)

6п2 + 15п + 6000р(р - 1)

^/25 + 16000р - 5

соответственно.

Аналогично, как и в случае СЛАУ, выведем нижнюю оценку размерности задачи, при которой получаемое ускорение строго больше 1. Решением неравенств Б1(п,р) > 1 и Б2(п,р) > 1 относительно п является

4

а значит, на двухпроцессорной машине ускорение при распараллеливании будет наблюдаться при п > >44. Численные эксперименты для задачи линейной дополнительности представлены в табл. 2.

Анализ ускорения для решения нелинейных вариационных неравенств

Рассмотрим нелинейное вариационное неравенство (НВН) с оператором

с(и) = ([1 + КРн; [1 + К^РК; ...; [1 + КР^

и областью О ={ шах(Ь1(и),Ь2(и))<0|, где Ц(и) = (и1 - 3)2 +Х“= 2 и2,

Ь2(и) = (и1 + 1)2 +Х?= 2 и2.

Решением является точка и* = (0, 0, ... , 0).

Тогда вычисление выражения С(и) требует 5п операций, а реализованный алгоритм проецирования требует 22п — 4 операций. Поскольку операция проецирования выполняется последовательно, то формула ускорения имеет вид

п>

и

SA(n,p)

S2(n,p):

14n + 44n - 8

14n

21n

+ 44n - 8 + 4000(p - 1)

21n + 66n - 12

+ 66n - 12 + 6000(p - 1)

Откуда получаем, что при n >

2000p

7

ускоре-

ние строго больше 1. Следовательно, если р = 2, то п > 572. Численные эксперименты для нелинейного вариационного неравенства представлены в табл. 3.

Заключение

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

Библиографический список

1. Антипин, А. С. О методе выпуклого программирования, использующем симметрическую модификацию функции Лагранжа [Текст] / А. С. Антипин // Экономика и математические методы. — 1976. — Т. 12. — № 6. — С. 1164—1173.

2. Корпелевич, Г. М. Экстраградиентный метод для отыскания седловых точек и других задач [Текст] / Г. М. Корпелевич // Экономика и математические методы. — 1976. — Т. 12. — № 4. - С. 747-756.

3. Меленьчук, Н. В. Двухшаговый экстраградиентный метод для решения седловых задач [Текст] / Н. В. Меленьчук // Омский научный вестник. — 2009. — № 3(83). — С. 33-36.

4. Зыкина, А В. Двухшаговый экстраградиентный метод для вариационных неравенств [Текст] / А В. Зыкина, Н. В. Меленьчук // Известия вузов. Математика. — Казань : КГУ, 2010. — № 9. — С. 82 — 85.

5. Konnov, I. V. Combined relaxation methods for variational inequalities [Тех^ / Berlin etc. : Springer, 2001. — 181 p.

6. Параллельное программирование с использованием OpenMP [Электронный ресурс] : конспект курса лекций / М. П. Левин. — Интернет-университет информационных технологий — ИНТУИТ.ру, 2008. — Электронный гипертекст. — Режим доступа: http://www.intuit.ru/department/se/openmp/ (дата обращения : 01.06.2011).

ЗАПОРОЖЕЦ Дмитрий Николаевич, аспирант кафедры «Прикладная математика и фундаментальная информатика».

ЗЫКИН Владимир Сергеевич, студент группы ИТ-319. ЗЫКИНА Анна Владимировна, доктор физикоматематических наук, профессор (Россия), заведующая кафедрой «Прикладная математика и фундаментальная информатика».

КУЯНОВ Дмитрий Иванович, студент группы ИТ-319. Адрес для переписки: e-mail: demlcf@mail.ru.

Статья поступила в редакцию 16.06.2011 г.

© Д. Н. Запорожец, С. В. Зыкин, А. В. Зыкина, Д. И. Куянов

p

и

p

Книжная полка

51/Н62

Никифоров, А. Ф. Лекции по уравнениям и методам математической физики [Текст] : учеб. пособие / А. Ф. Никифоров. - Долгопрудный : Интеллект, 2009. - 133 с. - 1БВЫ 978-5-91559-031-0.

В небольшом объеме сконцентрированы знания и навыки, необходимые для решения основных задач математической физики.

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

51/К91

Кундышева, Е. С. Экономико-математическое моделирование [Текст] : учеб. для вузов по специальности «Математические методы в экономике» и др. экон. специальностям / Е. С. Кундышева ; под ред. Б. А. Сус-лакова. - 3-е изд. - М. : Дашков и К°, 2010. - 422 с. - 1БВЫ 978-5-394-00678-4.

Учебник подготовлен в соответствии с Государственным образовательным стандартом. В нем описывается построение экономико-математических моделей, а также приводятся готовые модели рыночной экономики. Учебник включает упражнения, контрольные вопросы и тесты для самостоятельной работы.

51/Л33

Лебедев, Н. Н. Специальные функции и их приложения : учеб. пособие / Н. Н. Лебедев. - 3-е изд., стер. -СПб. [и др.] : Лань, 2010. - 358 с. - 1БВЫ 978-5-8114-1023-1.

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

ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011 ФИЗИКО-МАТЕМАТИЧЕСКИЕ НАУКИ

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