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

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

CC BY
223
52
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЛОБАЛЬНАЯ ОПТИМИЗАЦИЯ / МЕТОД ПОЛОВИННЫХ ДЕЛЕНИЙ / ЛОКАЛЬНАЯ ТЕХНИКА / ГРАФОСИМВОЛИЧЕСКОЕ ПРОГРАММИРОВАНИЕ / ПАРАЛЛЕЛЬНЫЕ ВЫЧИСЛЕНИЯ

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

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

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

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

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

EFFICIENCY OF PARALLEL GLOBAL OPTIMIZATION OF MULTIVARIABLE FUNCTIONS

A parallel algorithm for global optimization of multivariable functions is considered which is based on the modified bisection method and a local search algorithm. The main attention is paid to a proper balance of computing resources between the phases of local and global optimizations. The PGraph, a visual programming tool for parallel computations, is used to develop and study our algorithm. Numerical test results of the proposed algorithm are presented.

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

Информационные технологии Вестник Нижегородского университета им. Н.И. Лобачевского, 2013, № 3 (1), с. 252-261

УДК 519.626

ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ГЛОБАЛЬНОЙ ПАРАЛЛЕЛЬНОЙ ОПТИМИЗАЦИИ ФУНКЦИЙ МНОГИХ ПЕРЕМЕННЫХ*

© 2013 г.

А.Н. Коварцев, Д.А. Попова-Коварцева, П.В. Аболмасов

Самарский государственный аэрокосмический университет им. акад. С.П. Королёва

kovr_ssau@mail .т

Поступила в редакцию 22.02.2013

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

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

Введение

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

Современные точные методы глобальной оптимизации совершенствуются, главным образом, для класса липшицевых функций в двух направлениях: первое связано с разработкой новых критериев отсева неперспективных областей оптимизируемой функции [1], второе - с повышением эффективности методов редукции задачи многомерной оптимизации [2]. В работе [3] на примере метода неравномерных покрытий и его модификаций была предпринята попытка качественного анализа эффективности методов решения задачи глобальной оптимизации. В частности, получена следующая оценка средней сложности задачи глобальной оптимизации:

N (п) =Р'

1_

^ , 0 (« + 1)2п - 2

-1, где В =--------------------, а

а2п -1

(а> 1 / 2п) - доля неотбракованных параллелепипедов ((1 -а) параллелепипедов отбраковываются с помощью критериев отсева), ц =

а, є - заданная точность решения зада-

= | 1°§2

чи глобальной оптимизации. При а = 1, когда критерии отсева параллелепипедов не работают, алгоритмы глобальной оптимизации имеют самую низкую производительность и практически «не работают» начиная с п > 5 . Для предельно возможной эффективности правил отсева (а» 1/ 2п-1, ц» п -1) практическое применение прямых методов глобальной оптимизации ограничено (п < 20). Не лучше складывается ситуация для методов редукции задачи оптимизации. В [3] показано, что в этом случае справедлива следующая оценка средней сложности задачи глобальной оптимизации: N (п) =

1-ц V

^ -1

1

т.е. сохраняется экспоненци-

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

В последнее время решение проблемы высокой вычислительной сложности задач глобальной оптимизации связывают с использованием методов параллельных и распределенных вычислений [4, 5]. Однако использование этой относительно «новой» техники вычислений на практике позволяет получить как существенное ускорение алгоритма глобальной оптимизации, так и замедление его характеристик. Как для любого «нового дела», процесс распараллеливания алгоритмов глобальной оптимизации

*Статья рекомендована к публикации программным комитетом конференции «Высокопроизводительные параллельные вычисления на кластерных системах».

имеет свои «подводные камни», особенности и специфические трудности [6]. В данной работе на примере модифицированного метода половинных делений [7] рассматриваются некоторые особенности организации параллельных алгоритмов глобальной оптимизации.

1. Постановка задачи и основные определения

Рассмотрим задачу безусловной глобальной оптимизации непрерывной функции /: Ип ^ И,

заданной на допустимом множестве X е Ип, в следующей постановке:

/. = globmin/(х) = / (х.). (1)

хеХ

Положим, что глобальный минимум х принадлежит множеству Х„, причем X„ с X, а

п

X = ®[0,1] является многомерным единичным

,=1

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

Определим множество в -решений задачи (1)

как

XГ = { х е X: /(х) < /,+в}. (2)

Нахождение приближенного решения задачи (1) заключается в поиске хотя бы одной точки

из множества X„8.

В методе неравномерных покрытий строится последовательность {X, }= Xl5...Xt } подмножеств множества X и точек х1 ,...,хк (х е X ) (для метода половинных делений в качестве X1 обычно рассматриваются параллелепипеды). В каждой точке х вычисляется значение функции / ( х) и определяется её рекордное значение / :

/г = min/(х,) = /(хг), 1 < г < к . (3)

1<,<к

На каждом из подмножеств Xi вводятся миноранты, т.е. такие функции 01 (х), что Ух е Xi /(х) > 01 (х). Тогда последовательности подмножеств {X.} можно поставить в соответствие совокупность покрывающих подмножеств { 21,..., 2к, определяемых из условий

={ хе Xi: (х) > /г — в } г <,. (4)

Множество 2 строится таким образом, что Ух е 2 выполняется неравенство /(х) > / — в, из чего следует, что глобальный минимум функции /(х) на множестве 2 не может быть

меньше рекорда /. более чем на в . Таким образом, в процессе поиска глобального минимума подмножество 2 можно исключить из рассмотрения и продолжить оптимизацию на множестве X \ 2 . Алгоритм останавливается, когда допустимое множество оказывается покрытым подмножествами 2 , т.е.

Xс2 и22 и...и2к . (5)

Алгоритм неравномерных покрытий гарантирует нахождение в -оптимального решения, что подтверждается соответствующей теоремой.

Предлагаемая модификация метода половинных делений связана с введением понятия области притяжения локального минимума и использованием локальной техники. Пусть х*,, = 1,..,т, -локальные минимумы функции /(х) . Тогда об*

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

торых алгоритм сходится к х1 :

= {х е X: arg min/(х) = х*}. (6)

Поскольку построение области притяжений в смысле (6) достаточно сложная задача, далее будем использовать следующее упрощенное определение области притяжения локального минимума:

^ ={хеX: IIх—хГ11<р,-, р, >°}, (7)

где р - радиус области притяжения локального минимума.

1.1. Использование локальной техники Для модифицированного алгоритма половинных делений сохраняется экспоненциальный рост сложности задачи оптимизации в зависимости от числа переменных. Одной из эффективных стратегий совершенствования алгоритмов глобальной оптимизации (ГО) является использование локальной техники, когда стратегия глобального поиска удачно сочетается с методами локальной оптимизации (ЛО).

При ограниченном количестве минимумов функции /(х) области притяжения ^ имеют значительные размеры. Предположим, что относительно оптимизируемой функции известно количество локальных минимумов - г , включая глобальный, и размеры областей притяжения: р1 ,...,рг. Введем понятие «гарантированного радиуса» области притяжения минимумов функции, под которым будем понимать р = min р , 1 <, < г.

~ т ~ , 5

В этом случае, как показано в работе [3], среднюю сложность алгоритма глобальной оптимизации можно оценить величиной

Рис. 1. Двухфазный алгоритм метода половинных делений

~(п) = 2(1 / 4р т ) п — 1 + г^2(р,т/в) . (8)

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

1.2. Двухфазный алгоритм метода половинных делений (ДАМПД)

Дополнительная информация о размерах областей притяжения локальных минимумов функции позволяет построить двухфазную схему алгоритма глобальной оптимизации, в которой выделим фазы глобальной и локальной оптимизации (см. рис. 1).

В ДАМПД фаза глобальной оптимизации реализуется с помощью модифицированного алгоритма, с той лишь разницей, что двоичное деление параллелепипедов реализуется до достижения заданных размеров их радиусов К . Величина К определяется размером «гарантированного радиуса» рга областей притяжения минимумов функции. На рис. 1 пунктирными линиями отмечены гарантированные области притяжения минимумов функции. Заштрихованные прямоугольники являются прямоугольниками, «отбракованными» с использованием константы Липшица. В итоге, исходя из условия К < рт, фаза глобальной оптимизации завершилась, породив, для приведенного на рис. 1 примера, 24 прямоугольника заданного радиуса.

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

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

В работе [7] исследована сходимость двухфазного алгоритма метода половинных делений, где показано, что для дважды дифференцируемой липшицевой функции, вторая производная которой также удовлетворяет условию Липшица, ДАМПД обеспечивает нахождение в -оптимального решения.

2. Алгоритм формирования множества точек начальных приближений для ДАМПД

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

Будем считать, что область притяжения ^ определена, если она содержит, по крайней мере, одну точку из множества С = {с,...,ск} , где ск - центры параллелепипедов.

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

Сформируем список областей притяжения локальных минимумов V = {V,V,...Ут}, элементами которого являются структуры V = (~, /), где ~ - координаты «представителя» г-й области притяжения, имеющего наилучшую, достигнутую для этой области, оценку

/ . Вектор ~ условно считается центром г-й области притяжения.

Первоначально список V пуст. По мере вычислений функции он наполняется элементами, но в конце этапа глобального поиска не может содержать больше т элементов (т - заданный размер списка, т > г). Размер списка т зависит от свойств оптимизируемой функции и выбирается из соображений попадания в него представителя области притяжения глобального минимума функции. Элементы списка V упорядочены таким образом, что / < / <... < /т.

Пусть в процессе работы алгоритма глобальной оптимизации произведено очередное испытание / = /(ск). Эволюция содержимого списка V происходит по следующим простым правилам:

1. Проверяется принадлежность центра очередного параллелепипеда ск окрестностям одной из имеющихся областей притяжения V, / = 1,...,/ (I - текущий размер списка).

1.1. Если выполняется условие

с, є{хєX: ||(х-~)\\<рт }.

(9)

1.1.1. То при / < / содержимое элемента У обновляется:

~ 1

с =-

-Е с- , ~ :=л,

где с. - центры параллелепипедов, «попавших» в область V . Далее выполняется действие 1.1.3.

1.1.2. Иначе уточняется только значение сі. Выполняется действие 1.1.3.

1.1.3. Список V упорядочивается в порядке

возрастания / .

1.2. Если условие (9) не выполняется, то проверяем правило 2.

2. Определяется возможность включения нового элемента в список V.

2.1. Если (/ < /), то элемент Ук записывается в голову списка V.

2.2. Если (/ < / < / то элемент Ук записывается между У и у+1 элементами списка.

2.3. Если (/ > /), то элемент Ук записывается в конец списка V.

3. При превышении предельного числа элементов списка из списка исключается последний элемент.

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

Предложенный алгоритм является эвристическим, однако вычислительные эксперименты с тестовыми функциями показали его состоятельность. Более того, как правило, в первой сотне элементов списка содержится начальное приближение глобального минимума функции. На рисунке 2 представлены элементы списка областей притяжения. Нумерация соответствует весу

Рис. 3. Параллельная версия алгоритма ДАМПД

элемента. Из рисунка видно, что каждый элемент списка сформировался, агрегируя большое количество точек вычисления функции. Например, элемент V агрегировал 9 точек, V - 8, и т.д.

3. Визуальное средство реализации параллельных алгоритмов РОИАРИ

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

3.1. Средство визуального программирования РОЯЛРИ

При разработке и реализации двухфазного алгоритма метода половинных делений использовалось средство моделирования параллель-

ных вычислений PGRAPH [8]. Система РОЯАРЫ предоставляет пользователю возможность визуального формирования графических образов разрабатываемых алгоритмов, средства автоматизированного анализа проектируемых программ, а также средства автоматического синтеза исходных кодов программ. С помощью внешнего компилятора система позволяет компилировать и запускать на выполнение созданные в ней параллельные модели алгоритмов. При этом пользователь фактически «не видит» и не использует директивы МР1, которые автоматически «встраиваются» в текст программы при её компиляции.

Модель описания параллельных алгоритмов в системе PGRAPH представляется четверкой < Л, ^, Р, О > где Л - множество данных некоторой предметной области, Е - множество операторов, определенных над данными предметной области, Р - множество предикатов, действующих над структурами данных предметной области, О = (А, ^) - ориентированный помеченный

граф, называемый агрегатом, А = {А , . ,АИ} -множество вершин графа. Каждая вершина А помечена локальным оператором ф( (Л) е Е. На графе задано множество дуг управления

т={ч',...,чт,}.

Дуга управления, соединяющая любые две вершины А{ и А , имеет три метки: приоритет; предикат - р (Л) е Р, управляющий ходом вычислительного процесса, и тип дуги.

Граф О - инициальный. Работа алгоритма всегда начинается из начальной вершины. Дальнейшее развитие вычислений ассоциируется с переходами на графе из вершины в вершину по дугам управления. Для «последовательных» вершин переход по дуге управления возможен лишь в случае истинности предиката, которым она помечена. Рассматриваются четыре типа дуг: последовательная дуга (описывает передачу управления на последовательных участках алгоритма и обозначается на схеме прямоугольником); параллельная дуга (обозначает начало нового параллельного фрагмента алгоритма и помечается «кружочком»); терминирующая дуга (завершает параллельный фрагмент алгоритма, на схеме перечеркивается); дуга синхронизации. Пример описания параллельного алгоритма представлен на рис. 3.

3.2. Параллельный алгоритм глобальной оптимизации

Реализация алгоритма ДАМПД представлена на рис. 3. Для удобства описания модели все вершины пронумерованы.

Рис. 4. Загрузка процессоров на этапе ГО в базовой версии

Рис. 5. Загрузка процессоров на этапе ЛО в базовой версии

В вершине 1 устанавливаются значения параметров теста GKLS и производится его инициализация [9]. Алгоритм состоит из двух фаз. Первая фаза глобальной оптимизации состоит из вершин 2-5. В вершине 2 формируется начальный список параллелепипедов, которые впоследствии «раздаются» по процессорам кластера (см. вершину 3).

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

Во второй фазе алгоритм осуществляет поиск локального минимума из точек, вычисленных на первом этапе. Данная фаза состоит из вершин 6-8. В вершине 6 происходит «раздача»

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

4. Вычислительные эксперименты

4.1. Условия тестирования

Для вычислительных экспериментов был выбран класс липшицевых функций, моделируемых известным генератором GKLS [9]. Генератор тестовых заданий GKLS порождает три класса тестовых функций: недифференцируемых, непрерывно дифференцируемых и дважды непрерывно дифференцируемых. Для каждого класса можно использовать 100 тестовых функций. В GKLS очень просто задать сложность генерируемых функций, определить количество локальных минимумов, размеры областей притяжения и многое другое.

Тестирование алгоритма ДАМПД проводилось на наиболее сложном для глобальной оптимизации классе недифференцируемых функций. Для всех классов задач: число экстремумов равно десяти; радиус притяжения глобального оптимума - 0.33. Эксперименты проводились на суперком-пьютерном кластере СГАУ «Сергей Королев». Кластер построен на базе линейки оборудования 1ВМ ВЫеСеПег с использованием блейд-серверов Ж22 и обеспечивает пиковую производительность более десяти триллионов операций с плавающей точкой в секунду. Общее число процессоров/вычислительных ядер: 272/1184. Глобальный минимум вычислялся с точностью е = 1.0 • 1СГ8 (по аргументам функции).

4.2. Тестирование алгоритма ДАМПД

Результаты вычислительного эксперимента

для алгоритма ДАМПД (при п=8) приведены в таблице 1. Общее ускорение алгоритма составило 91, хотя для фазы ЛО ускорение равно 139. На рис. 4 и 5 показана загрузка процессоров (количество обращений к оптимизируемой функции на каждом из них).

Как видно из рисунков, наблюдается невысокая эффективность алгоритма ДАМПД как для этапа ГО, так и для этапа локальной оптимизации, поскольку процессоры кластера имеют неравномерную вычислительную нагрузку. Для фазы глобальной оптимизации количество делений параллелепипедов, реализуемое на каждом из процессоров, зависит от сложности участка оптимизируемой функции, доставшегося ему. В итоге наблюдается нерациональное использование ресурсов кластера (используется только 35% потенциальной вычислительной мощности).

4.3. Тестирование алгоритма ДАМПД, реализованного по схеме «менеджер — исполнитель»

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

Для этого в системе PGRAPH используются механизмы синхронизации параллельных процессов. Один из процессоров выделяется как управляющий (менеджер), в его функции входит «раздача» заданий на оптимизацию для процессоров-исполнителей. Пример такой вычислительной схемы для этапа ЛО представлен на рис. 6.

Положим, что в фазе ГО подготовлен список точек начальных приближений. Первоначально все процессоры, включая «менеджера», одновременно запускаются на поиск локального минимума. После завершения решения оптимизационной задачи ветвь «менеджера» переходит в режим диспетчера и ждет сообщения о завершении ЛО от остальных ветвей. На схеме передача сообщения изображается пунктирной стрелкой. После приёма сообщения от любой параллельной ветви ветвь-менеджер передаёт соответствующему процессору новую точку начального приближения (фактически новое задание), запуская при этом очередной поиск локального минимума. Как только список точек начальных приближений заканчивается, ветвь-менеджер выходит из цикла приёма сообщений, и все ветви завершают свою работу.

Для фазы ГО асинхронное управление процессорами реализуется по аналогичной схеме. Необходимо лишь на этапе формирования начального списка параллелепипедов подготовить параллелепипедов больше, чем число процессоров, обеспечивая запас заданий для «быстрых» процессоров.

Результаты вычислительного эксперимента для данной версии алгоритма приведены в таблице 2.

Увеличение ускорения для второго варианта ДАМПД объясняется тем, что для схемы «менеджер - исполнитель» в фазе глобальной оптимизации в несколько раз увеличивается начальный список параллелепипедов. При этом, естественно, уменьшаются их размеры (диаметры параллелепипедов) и, как следствие, уменьшается трудоемкость глобальной оптимизации на каждом из процессоров кластера, поскольку

Таблица 1

Результаты эксперимента с базовой версией алгоритма ГО ДАМПД______________________

Время работы алгоритма, сек 463.7

Число обращений к функции на этапе ГО (суммарно на всех процессорах) 262122 (23643168)

Число обращений к функции на этапе ЛО (суммарно на всех процессорах) 4922 (683665)

Таблица 2

Результаты эксперимента для схемы «менеджер-исполнитель»___________________

Время работы алгоритма, сек 268.2

Число обращений к функции на этапе ГО (суммарно на всех процессорах) 132662 (23715292)

Число обращений к функции на этапе ЛО (суммарно на всех процессорах) 12565 (2519983)

Таблица 3 Сложность последовательного алгоритма ДАМПД для функции СКЬ5

Радиус Число обращений к функции N1

притяжения на этапе

рш ГО ЛО

0.31 1130068 115830

0.22 10361462 149928

0.16 60819698 291252

Таблица 4

Сложность последовательного алгоритма ДАМПД для «хорошей» функции [3]____________

Радиус Число обращений к функции N1

притяжения на этапе

рш ГО ЛО

0.31 45472 413199

0.22 725310 316044

0.16 4376072 283662

Рис. 6. Этап ЛО в режиме «менеджер - исполнитель»

оптимизация производится до достижения размеров параллелепипедов, сравнимых с «гарантированным радиусом» области притяжения. В этом случае получается, что максимальное время ГО на одном из процессоров во второй схеме ДАМПД меньше, чем в первой (Т(р2> < Г®). Пусть трудоемкость последовательного алгоритма ГО составляет T1. Если предположить, что обработка «избыточных» начальных параллелепипедов во второй схеме перераспределяется «менеджером» между освобождающимися процессорами и суммарная загрузка процессо-

т->(2)

ров не превышает Т , то очевидно, что ускорение для второй схемы ДАМПД 5(2) = Т/ Т(2) будет больше, чем у первой схемы ( S(I2') > ^(1)).

Общее ускорение составило 181. Загрузка процессоров для фаз ГО и ЛО показана на рисунке 7. В данном случае наблюдается более равномерное распределение нагрузки между процессорами. В частности, эффективность этапа глобального поиска возросла до 70%, а фазы ЛО - до 78%.

4.4 Зависимость сложности алгоритма ДАМПД от «гарантированного радиуса» притяжения

Несомненно, что трудоёмкость задачи глобальной оптимизации существенно зависит от величины «гарантированного радиуса» области притяжения. Последнее следует из формулы (8), поскольку с уменьшением радиуса р значительно увеличивается сложность фазы ГО и немного уменьшается сложность фазы ЛО. На самом деле, сложность задачи оптимизации во многом определяется свойствами оптимизируемой функции. Например, «легче» отыскивается глобальный оптимум для функций, у которых области притяжения локальных экстремумов не пересекаются. Как показали вычислительные эксперименты, задача оптимизации становится более трудоёмкой, если области локальных притяжений её экстремумов вложены друг в друга.

Влияние радиуса притяжения на производительность алгоритма ДАМПД рассматривалось на примере задачи оптимизации функции семи переменных для тестовой функции № 4 GKLS (со стандартным набором установочных па-

1 16 31 46 61 76 91 106 121 136 151 166 181 196 211 226 241 1 16 31 ад 61 75 91 юб 121 136 151 166 181 196 211 226 241

Номер процессора Номера процессоров

Рис. 7. Загрузка процессоров для этапов ГО и ЛО схемы «менеджер - исполнитель»

раметров) и для «хорошей» тестовой функции, описанной в работе [3]. В первом случае наблюдается вложенность областей локальных притяжений друг в друга, во втором - области локальных притяжений экстремумов функции не пересекаются. Для того чтобы исключить влияние схемы реализации параллельных вычислений на оценку сложности задачи глобальной оптимизации, рассматривался последовательный алгоритм ДАМПД, а в качестве критерия оценки сложности использовалось число обращений к функции (N )•

В таблицах 3 и 4 приведены результаты расчетов сложности последовательного алгоритма ДАМПД в зависимости от «гарантированного радиуса» области притяжения для тестовой функции GKLS и «хорошей» функции. Как видно из таблиц, в фазе ГО сложность задачи оптимизации стремительно увеличивается при уменьшении радиуса рт. Однако значительно большее влияние на производительность алгоритма ДАМПД оказывают «топологические» свойства областей притяжения локальных экстремумов. Что же касается фазы ЛО, то сложность локальной оптимизации практически не зависит от радиуса притяжения.

Заключение

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

Очевидно, что общая эффективность параллельного алгоритма глобальной оптимизации зависит как от используемой схемы решения задачи ГО, так и от применяемой стратегии её реализации на высокопроизводительной ЭВМ.

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

Что же касается реализации выбранной стратегии на высокопроизводительной ЭВМ, то здесь возможны самые разнообразные решения. В работе рассматривались 2 варианта реализации алгоритма ДАМПД. На самом деле, с учетом методов организации обмена данными между процессорами, их значительно больше. Причем невозможно заранее установить, какой из вариантов параллельного алгоритма окажется самым эффективным. В таких условиях большое значение приобретают средства автоматизации моделирования параллельных алгоритмов, к числу которых относится и PGRAPH. Следует иметь в виду, что на рисунках 3 и 6 показаны не схемы параллельных алгоритмов, а готовые программы, представленные в визуальной нотации, которые автоматически компилируются в тексты программ на языке С++, включая директивы МРІ, синхронизацию и прочее.

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

1. Евтушенко Ю.Г., Посыпкин М.А. Параллельные методы решения задач глобальной оптимизации // РАСО’2008: Труды Четвертой Международной конференции «Параллельные вычисления и задачи управления». М., 2008. С. 5-15.

2. Квасов Д.Е., Сергеев Я.Д. Многомерный алгоритм глобальной оптимизации на основе адаптивных диагональных кривых // ЖВМ и МФ. 2003. Т. 43. № 1. С. 42-59.

3. Коварцев А.Н., Попова-Коварцева Д.А. К вопросу об эффективности параллельных алгоритмов гло-

4848539123533223211391202330014823902323892330094727100509040230142323902323202330094709045311352330532323902300822310050610030211040130532301912321

бальной оптимизации функций многих переменных // Компьютерная оптика. 2011. Т. 35. № 2. С. 256-262.

4. Посыпкин М.А. Методы решения задач конечномерной оптимизации в распределенной вычислительной среде // САИТ-2009: Труды конференции. М., 2009. С. 729-740.

5. Gergel V.P., Strongin R.G. Parallel computing for globally optimal decision making on cluster systems // Future Generation Computer Systems. 2005. V. 21. № 5. Р. 673-678.

6. Стронгин Р.Г., Гергель В.П., Баркалов К. А. Параллельные методы решения задач глобальной оптимизации // Известия высших учебных заведений. Приборостроение. 2009. Т. 52. № 10. С. 25-33.

7. Коварцев А.Н., Попова-Коварцева Д.А. Многомерный параллельный алгоритм глобальной оптимизации модифицированным методом половинных делений // В мире научных открытий. 2012. № 8.1(32). С. 80-108.

8. Коварцев А.Н., Жидченко В.В. Моделирование синхронных параллельных вычислений при построении математических моделей сложных систем // Труды Первой Международной конференции: Системный анализ и информационные технологии. Т. 2. М.: КомКнига, 2005. С.154-160.

9. Gaviano M., Kvasov D.E., Lera D., Sergeyev Ya.D. Software for generation of classes of test of functions with known local and global minima for global optimization // ASM Transactions on Mathematical Software. 2003. 29(4). P. 469-480.

EFFICIENCY OF PARALLEL GLOBAL OPTIMIZATION OF MULTIVARIABLE FUNCTIONS A.N. Kovartsev, D.A. Popova-Kovartseva, P. V. Abolmasov

A parallel algorithm for global optimization of multivariable functions is considered which is based on the modified bisection method and a local search algorithm. The main attention is paid to a proper balance of computing resources between the phases of local and global optimizations. The PGraph, a visual programming tool for parallel computations, is used to develop and study our algorithm. Numerical test results of the proposed algorithm are presented.

Keywords: global optimization, bisection method, local search, symbolic graph programming, parallel computing.

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