УДК 519.865
О ПРИКЛАДНОМ ПРИМЕНЕНИИ УПРАВЛЕНИЯ ПАРАЛЛЕЛЬНОЙ ОБРАБОТКОЙ В СЛУЧАЙНОЙ СРЕДЕ
А. О. Олейников
ON PRACTICAL APPLICATION OF CONTROLLING THE PARALLEL PROCESSING IN RANDOM ENVIRONMENT
A.O.Oleinikov
Институт электронных и информационных систем НовГУ, duke.gh@yandex.ru
Предложены направления развития поиска прикладного применения управления параллельной обработкой на основе задачи о двуруком бандите. Приведены результаты численных экспериментов для задачи поиска оптимального количества этапов для параллельной обработки. Показано на примере преимущество обработки с различными размерами групп. Результаты доступны только для количества этапов обработки, меньшего 17. Представленная информация может быть полезна эксперту, определяющему подходящее для конкретной ситуации соотношение между скоростью обработки и минимаксным риском. Ключевые слова: управление в случайной среде, задача о двуруком бандите, параллельная обработка
The ways for developing practical application of controlling the parallel processing (based on two-armed bandit problem) were proposed. Computation results were given for searching an optimal number of steps for such processing. Processing with different step sizes is shown to be useful approach. Results are presented only for processing with less than 17 steps. These results could be useful for an expert who has to find optimum relationship between the processing speed and the minimax risk in specific situations. Keywords: control in random environment, two-armed bandit problem, parallel processing
Введение
Данная статья описывает возможности практического применения подхода к управлению, предложенного в работах [1,2]. Подход основан на задаче о двуруком бандите [3,4] с нормально распределенными доходами на ограниченном количестве шагов N. При этом основная часть [1,2] посвящена ее подзадаче, результаты работы над которой могут быть использованы для управления параллельной обработкой, в том числе с различными размерами групп.
Заметим, что задача является достаточно абстрактной и может быть применена к широкому кругу процессов, однако для удобства повествования будем рассматривать ее в применении к некоторой обработке данных. Опишем такую обработку следующим образом. Есть некоторый ограниченный набор данных, который можно разбить на N атомарных единиц (далее будут называться пакетами), которые могут быть обработаны независимо и в любой последовательности. Обработкой назовем применение к пакету данных одного из двух действий. Каждый пакет обрабатывается обязательно и только один раз. При этом результат такой обработки будем рассматривать как случайную величину с нормальным распределением и единичной дисперсией.
Математические ожидания шь ш2 результатов обработки единицы данных первым и вторым методом соответственно заранее неизвестны, но являются постоянными для всего набора данных. Также отметим, что шг и ш2 считаются близкими. Цель такой обработки можно неформально описать как получение достаточно высокого суммарного результата обработки.
Результаты обработки атомарной единицы данных мы можем узнать сразу же по ее завершению
и использовать эту информацию для определения способа обработки для следующих единиц данных. Максимально эффективно такую информацию можно использовать при последовательной обработке. Тем не менее, иногда необходимо находить подходящий баланс между качеством и скоростью — в таких ситуациях может помочь параллельная обработка.
Большой интерес представляет описанный в [5,6] подход для обработки, результаты которой имеют бинарное распределение. Действительно, если мы предположим, что каждая единица данных представляет собой пакет из большого числа данных, обработка которых имеет только два результата — «положительный» и «отрицательный», то сумма результатов обработки данных в таком пакете будет иметь распределение, близкое к нормальному.
Тем или иным способом мы получаем N шагов, на каждом из которых мы можем получить реализацию случайной величины с математическим ожиданием шг или ш2. Допустим, что нам известно, какой из способов обработки лучший. Тогда будем выбирать на каждом шаге именно этот вариант, и сумма результатов будет иметь математическое ожидание N(»2! V ш2), где {шх V ш2) равняется большему из математических ожиданий.
Обозначим через результат, полученный на текущем шаге, тогда потери можно описать как
N
LN(ст,6) = Ест6(^((ш^ш2)-|п), где Е обозначает ма-
П=1
тематическое ожидание по мере, порожденной стратегией ст и параметром 6 = (шь ш2). Величину
Я^(0) = infsupLN(ст,6) будем называть минимакс-
Е 0
ным риском. Здесь Е — множество всех возможных
стратегий, а © = {6: \тх - т2\ < с}, где с — константа. Далее будем использовать минимаксный риск как показатель результативности обработки.
Параллельную обработку будем осуществлять, разбивая все пакеты на k+2 групп, как указано в [1,2]. Размеры таких групп будем обозначать через Ыь при этом
к
N = 2 • М0 + ^Ы, где М, >0. (*)
г=1
О применениях
Опишем практические задачи, при решении которых мог бы быть полезен предложенный подход к управлению параллельной обработкой. Перечислим наиболее существенные ограничения на применение данного метода.
1. Считается, что среда изменяется незначительно в процессе управления, т. е. на заданном горизонте управления результативность методов обработки не меняется.
2. Обработку можно разделить на несколько этапов, при этом считаем максимальное количество одновременно обрабатываемых задач ограниченным только (*).
3. Обработка проходит в заранее известное число этапов, объем данных для обработки также заранее известен.
4. Имеются только два альтернативных варианта обработки.
5. Результаты обработки можно представить в виде случайной величины с нормальным распределением и единичной дисперсией.
Последнее ограничение поддается обобщениям, одно из которых описано выше (применение к обработке с бинарными результатами). Тем не менее, применение предложенного подхода в случае, если результат обработки — это затраченное на обработку время, кажется недостаточно хорошим примером. В данном случае для получения ощутимого эффекта разница между математическими ожиданиями должна быть близка к их абсолютному значению, что если и возможно, то сильно ограничивает область применения. Действительно, изменение количества этапов обработки уже достаточно сильно меняет необходимое на нее время.
Тем не менее, можно рассмотреть пример, для которого применение подобной обработки будет иметь смысл. Допустим, у нас есть 1020 задач и 100 обработчиков. Минимальное количество этапов, за которое может быть обработано такое количество задач, равняется 11. Однако не на всех этапах можно будет загрузить задачами все обработчики. Таким образом, предложенный метод параллельного управления может быть предложен для того, чтобы определить, каким образом разбить задачи по этапам управления для получения максимального ускорения за счет использования информации о результативности методов обработки.
Другим примером может быть обработка с бинарными результатами. Но при такой обработке мы
также получаем достаточно необычное ограничение — каждая единица данных обрабатывается только один раз. Действительно, представим, что мы обрабатываем какие-то данные, и часть из них обработана неуспешно. В данном случае видится логичным попытаться обработать их повторно (с учетом того, что подход предполагает неполную загрузку обработчиков, повторная обработка выглядит реалистичной).
При поиске возможных приложений не следует также пренебрегать заранее известным горизонтом управления. Системы управления обработкой, похожей на описанную, вполне могли бы работать на бесконечном горизонте, производя постоянное улучшение процесса обработки. Тем не менее, ограниченный горизонт может быть полезен для случая, когда мы можем оценить насколько долго результативность обработки (т1 и т2) можно считать постоянными. Также он подойдёт, когда возможно оценить, как много времени мы можем потратить на тестирование одного нового способа обработки, прежде чем перейдем к тестированию следующего (это существенно, поскольку мы можем одновременно сравнивать только два метода).
Выбор оптимального количества этапов обработки
При решении прикладных задач ограничения вида «обработка будет производиться в к + 1 этапов» выглядят недостаточно реалистично. Действительно, нет никаких рекомендаций, каким образом выбрать оптимальное количество этапов обработки. Проблема в том, что задать точный критерий для его оптимизации достаточно сложно. Например, если мы выбираем в качестве критерия оптимальности значение минимаксного риска, то необходимо выбирать максимально возможное значение к. Если критерий — скорость обработки, то необходимо выбирать минимально возможное его значение.
Ввиду сложности выбора явного критерия оптимизации, определение оптимального числа этапов обработки может быть поручено эксперту. Для того чтобы эксперту было проще определить ожидаемые результаты обработки с теми или иными параметрами, можно составить таблицу зависимости значения минимаксного риска от количества этапов управления. Кроме экспертной оценки, данные в такой таблице могут быть интересны при критериях вида «минимальное количество этапов, при котором минимаксный риск не выше чем какое-то граничное значение Лтгк». Для краткости основные результаты, которые могли бы быть представлены в такой таблице, показаны на рисунке.
Для получения значений минимаксных рисков для различных к и нахождения оптимальных размеров этапов обработки потребуется воспользоваться методикой, описанной в [2]. Будем последовательно применять данную методику для различных значений к и N. На рисунке представлены полученные в результате численных экспериментов результаты. Тонкой линией показаны приведенные минимаксные риски для N = 30, жирной линией для N = 50. Пунктиром отмечено значение приведенного минимаксно-
го риска для обработки с одинаковыми размерами групп и 50 этапами (соответствует значениям N = 50 и k = 48).
Приведенный минимаксный риск определяется как г = N "1/2 ЯВ (0).
Значения приведенного минимаксного риска для различных значений к
На примере представленной информации можно показать, что увеличение N не приводит к значительным изменениям риска. В меньшей степени это относится и к увеличению ^ при k >10.
Для сравнения можно привести значения приведенного минимаксного риска для обработки с группами одинакового размера. Для N = 16 он составляет 0,69; для N = 30 будет равен 0,66; для N = 50 соответственно 0,65. На приведенном примере видно, что обработка с различными размерами групп, как правило, предпочтительнее при равном количестве этапов обработки.
Ограничения для k на рисунке вызваны вычислительными трудностями и могут быть расширены в дальнейшем. Было бы интересно, например, получить стратегию параллельного управления с различными размерами групп и минимаксным риском, близким к 0,65. Тем не менее, уже на приведенных данных можно видеть определенные тенденции, знание которых может быть полезно при планировании применения предложенного метода управления обработкой.
Заключение
Для проверки корректности получаемых стратегий моделируется их применение для абстрактной обработки, результаты которой имеют нормальное распределение. При этом нормальное распределение моделируется при помощи сложения нескольких равномерно распределенных величин.
В [5,6] показано, что такое управление можно применять и в случае обработки с результатами, имеющими бинарное распределение. Там же указано, каким образом нужно нормализовывать сумму результатов обработки. Одним из важных аспектов та-
кой подготовки является необходимость знать приблизительное значение вероятности положительного исхода.
Моделирование с применением бинарного распределения с различными вероятностями положительного исхода и его приблизительными значениями могло бы позволить получить представление о необходимой точности определения приблизительного значения вероятности. Подобные численные эксперименты выглядят хорошим продолжением данной работы в сторону поиска потенциальных применений.
Приведенные результаты определения минимаксного риска для различных значений k могут быть использованы для определения оптимального числа этапов управления для практических применений предложенного метода.
Работа выполнена при финансовой поддержке РФФИ, проект № 13-01-00334.
1. Колногоров А.В., Олейников А.О. Оптимизация параллельной многоэтапной обработки в случайной среде // Вестник НовГУ. 2012. №68. С.67-69.
2. Олейников А.О. Численная оптимизация параллельной обработки в стационарной случайной среде // Труды КарНЦ РАН. 2013. Т.1. С.73-78.
3. Пресман Э.Л., Сонин И.М. Последовательное управление по неполным данным. Байесовский подход. М.: Наука, 1982. 256 с.
4. Berry D.A., Fristed B. Bandit problems. L., N. Y.: Chapman and Hall, 1985. 275 р.
5. Колногоров А.В. Нахождение минимаксных стратегии и риска в случайной среде (задача о двуруком бандите) // Автоматика и телемеханика. 2011. №5. С.127-138.
6. Колногоров А.В. Робастное параллельное управление в случайной среде (задача о двуруком бандите) // Автоматика и телемеханика. 2012. № 4. С.114-130.
References
1. Kolnogorov A.V., Oleinikov A.O. Optimizatsiia parallel'noi mnogoetapnoi obrabotki v sluchainoi srede [Optimization of parallel multistep processing in random environment]. Vest-nik NovGU. Ser. Tekhnicheskie nauki - Vestnik NovSU. Issue: Engineering Sciences, 2012, no. 68, pp. 67-69.
2. Oleinikov A.O. Chislennaia optimizatsiia parallel'noi obrabotki v statsionarnoi sluchainoi srede [Numerical optimization of parallel processing in a stationary environment]. Trudy KarNTS RAN [Proceedings of the Karelian RC of the RAS]. 2013, vol. 1, pp. 73-74.
3. Presman E.L., Sonin I.M. Posledovatel'noe upravlenie po ne-polnym dannym [Sequential control with incomplete information]. Moscow, "Nauka" Publ., 1982. 256 p.
4. Berry D.A., Fristedt B. Bandit Problems. London, New York, Chapman and Hall, 1985. 275 p.
5. Kolnogorov A.V. Nakhozhdenie minimaksnykh strategii i riska v sluchainoi srede (zadacha o dvurukom bandite) [Finding minimax strategy and minimax risk in a random environment (the two-armed bandit problem)]. Avtomatika i te-lemekhanika - Automation and remote control, 2011, no. 5, pp. 127-138.
6. Kolnogorov A.V. Robastnoe parallel'noe upravlenie v sluchainoi srede (zadache o dvurukom bandite) [Parallel design of robust control in the stochastic environment (the two-armed bandit problem)]. Avtomatika i telemekhanika - Automation and remote control, 2012, vol. 73, no. 4, pp. 689-701.