Оптимизация многоэтапной обработки данных в параллельных
Аннотация. Рассматривается задача преобразования данных, в которой вычисления проводятся в параллельных потоках. Цель - составление такого плана параллельной назначения данных по исполнителям, при котором будут учтены условия валидности, достоверности, избыточности и адекватности данных, пригодных к дальнейшему анализу. При этом должно учитываться стремление завершить циклы преобразования данных за минимально возможное время. Для решения предложено применение моделей транспортного типа. В отличие от двумерных минимаксных моделей по критерию времени, рассматривается возможность трансформации информации, как в исходных пунктах, так и в пунктах назначения. Предлагаемая модель позволяет учесть время доставки данных между местами обработки. Показано влияние возможных правил перемещения пакетов информации через промежуточные пункты на итоговое значение показателя качества управления.
Ключевые слова: информационные цепи, транспортная задача, критерий минимума времени, затраты на обработку, достоверность данных.
Рассматривается задача преобразования данных, в которой вычисления проводятся в параллельных потоках. Во многих случаях, при организации параллельных вычислений возникают серьёзные трудности в декомпозиции исходных задач [1, 2]. В отличие от [3, 4], в ряде случаев при обработке больших объёмов однородной информации имеется возможность распараллелить процессы обработки по нескольким каналам [5, 6]. Цель -составление такого плана параллельной обработки данных, при котором будут учтены условия валидности, достоверности, избыточности и адекватности обрабатываемых данных, пригодных к дальнейшему анализу [7]. При этом должно учитываться стремление завершить циклы преобразования данных за минимально возможное время [6, 8, 9].
Обработка информационных блоков предполагает многошаговый характер такой обработки [6, 9]. Так, перед планируемой обработкой, необходимо совершить операции по предварительной подготовке информации. Следует также проанализировать источники на достоверность,
2
информационных цепях
1 2 Н.М. Нечитайло , В.Л. Панасов
1 Росссийский университет транспорта Ростовский государственный университет путей сообщения
2
и наборы данных - на избыточность и адекватность. Ещё одна причина -многовариантность итогов выполнения обработки данных на том или ином этапе [6]. Отсюда возникает необходимость разработки алгоритмов решения с учётом указанных факторов. Иными словами, имеется необходимость учёта взаимного влияния решений по обработке на всех этапах на общий результат (время выполнения операции обработки всех пакетов данных). К примеру, при отсутствии синхронизации параллельной обработки, результирующий набор данных не отвечает необходимым условиям и, соответственно, потребуется выполнить дополнительные операции [1, 2] обработки.
Попытка свести решение таких многошаговых задач к решению последовательности двумерных может негативно отражаться на конечном результате и привести к артефактам в наборах данных [1, 4]. Кроме того, использование для выработки решений в таких случаях набора двумерных моделей приводит к решениям, соответствующим наложенным ограничениям, но не оптимальным [6]. Требуется разработка моделей и методов, где рассматривается и взаимозависимость отдельных шагов выполнения общей задачи и возможный характер корректирующих промежуточных операций обработки данных.
Поэтому цель состоит в создании плана распределения пакетов обрабатываемой информации по исполнителям всех этапов обработки, при котором все пакеты информации распределяются по исполнителям в соответствии с их возможностями по переработке информации в приемлемое время, задействованы возможности по переработке информации и обеспечивается обработка всего назначенного объёма информации, а время реализации всей задачи - минимально.
Сегодня многошаговые модели рассматриваемых типов являются слабо изученными в теории моделирования. Так, в [6] рассмотрены модели по критерию минимальных суммарных затрат. Такие алгоритмы не применимы к минимаксным задачам многошагового характера, так как предлагаемые
и
методы рассматривают исходную ситуацию, как множество одностадийных задач, в которых не учитывается взаимная зависимость входящих этапов. Определённое сходство рассматриваемой модели можно видеть у модели с фиксированными доплатами [8, 9], где поиск может вестись с применением линеаризации целевой функции, что даёт лишь приближённое (чаще заниженное) решение. Для получения же точного решения в таких задачах не найдено эффективных алгоритмов, а использование методов сокращённого перебора вариантов обладает большой трудоёмкостью (вычислительная сложность является экспоненциальной).
Исходя из особенностей рассматриваемой модели, имеет смысл рассматривать три основных правила передачи данных через модули обработки данных всех стадий:
• передача всей информации начинается только после выполнения задачи рассматриваемой стадии в последнем модуле обработки;
• передача начинается по транзакции данных в модуль обработки всех компонентов, направленных из одного и того же модуля предшествующей стадии (транзитная обработка);
• передача начинается после выполнения обработки в рассматриваемом модуле всеми назначенными для него компонентами.
Применение второго варианта является оправданным при отмене преобразования информации в любом из пунктов обработки на любом этапе уже после начала решения основной задачи (например, при выявлении ошибок обработки средствами контроля), но до завершения обработки информации на объектах обработки.
Применение третьего варианта является оправданным в случаях, когда выполнение задачи на каждом из модулей обработки информации начинается только после получения этим модулем всех назначенных блоков информации и после завершения процедуры верификации этих блоков.
Исходя из изложенного, рассматривается модель обработки данных, в которой модулям обработки ставится ряд задач с заданной последовательностью выполнения. В итоге нужно рассчитать такой план обработки данных, при котором наборы данных одновременно обрабатываются, вся операция обработки имеют минимальную длительность и удовлетворяются требования пригодности данных для последующего анализа.
Для формального описания задачи введём следующие обозначения. Имеется m источников информации Ai. Пусть эти источники обладают ресурсом ai. Также имеется n аналитических витрин данных Bj. Пусть потребности этих аналитических витрин данных известны и равны bj. Обозначим P11, P12 ... P1k1 как объекты, в которых будет выполняться начальная обработка информационных пакетов. Объекты P21, P22. P2k2 предназначены для обработки пакетов данных на второй стадии. В общем случае, r-й шаг обработки (r=1...l)) должен выполняться на объектах PR1, PR2. PRhr. PRkr. Возможности пунктов переработки ограничены: PR^-й пункт переработки информации может обработать (в приемлемое время) пакеты информации в количестве prhr. (рис. 1). Пусть время выгрузки данных из источников Ai в пункты первого этапа переработки информации P1h1 составляет tиз P1M в P2h2 - t2h1,h2, из PRhr в P(R+1)h(r+1) - thr,h(r+1), из PLhi в Bj - thij, где i=1...m, r=1 ...l, h=1...k, j=1...n. Обозначим также x,h1> ... , hj как количество информационных пакетов, направляемых из пунктов формирования заданий Ai в пункты сбора полностью переработанных данных Bj через пункты PRh1, PRh2, ... , PRhr, ... , PRhl..
Когда передача начинается по транзакции данных в модуль обработки всех компонентов, направленных из одного и того же модуля предшествующей стадии, рассчитывается план распределения информационных пакетов || xi>h1) ... , щ ||, причем минимизируется функция:
и
Ж = тах{, ,
i, к1,...}г1, ]
где и, ... , j - временные затраты на доставку из ¿-го начального пункта в j-й пункт завершающей обработки через Нъ, Н2, ... , Н-е пункты обработки информационных пакетов всех предшествующих задач обработки;
1, если х >0,
х,..., ) = .
0, если х =0.
Рисунок 1. - Граф информационной сети
Условия существования допустимого решения:
и
kj k kj n
Z-Z-ZZx,..л.....; — ^. i=1- m.
h =1 A, =1 h, =1 j=1 m kj k kl
ZZ...Z...Zx.....hr,.,j — bj. j=1..n, i=1 h1 =1 hr =1 h =1 m kr n r = 1 j z = 1 j
» 4 » 4 » 4 / JL • • • I ^ X • • • l m.
ZZZ X..... h .....j — .hz . ,71/
t1 hj r r Ф z. hz = 1... kz.
x . > 0. i = 1... m. r = 1... l. h = 1... k . j = 1... n
i.....hr..... j r r
r- x. Ал.....А7 . j x ...h j
с учетом идентичности обозначении 1 и r .
При организации обработки информационных пакетов, когда передача начинается после выполнения задачи в рассматриваемом модуле всеми назначенными в него компонентами (обработка с накоплением) целевая функция принимает вид:
l-1
W = max {[max ^ +Zmax t^ + ]■ E(x )}.
h.\r+\).j i r=1 hr i....hr.....
Общее число M (ячеек платежной матрицы) и число базисных переменных N (отличных от нуля при рассмотрении невырожденных случаев) при применении любого из рассматриваемых методов:
M = m ■ k ■ k2 ■... ■ k ■... ■ k ■ n.
N = m + k + k2 + ...+ К + ...+ k + n — (l + 1).
где l - число намеченных этапов промежуточной обработки;
kr - число объектов, участвующих в обработке информации на соответствующем этапе.
Авторами предлагается организовать поиск оптимального решения задачи, как расчет конечной последовательности приведенных подзадач либо одной из разновидностей метода последовательного улучшения плана (например, методом потенциалов), или же одной из разновидностей метода
>
последовательного сокращения невязок (потоковым методом, либо алгоритмом профессора Золотухина В.Ф.).
Использование первой группы методов может вызвать необходимость сведения исходной задачи к сбалансированному виду, что приведёт к увеличению размерности, а также может вызвать необходимость принятия мер по недопущению вырожденных решений, что в ряде случаев приводит к необходимости преобразования типов исходных данных, которые изначально могли являться целочисленными. По указанным причинам, авторами предложено использование венгерского метода решения, что позволяет избавиться от этих недостатков, хотя может быть получено решение с избыточным числом базисных переменных. Несмотря на различия указанных методов, в обоих случаях решается задача о максимальном транспортном потоке в сети с ограниченными пропускными способностями коммуникаций.
Необходимо отметить, что распределение ресурсов многоэтапных задач должно проводиться в общем случае с использованием многомерных матриц. В этой связи авторами предложено альтернативное использование набора двумерных вспомогательных матриц (срезов), что существенно облегчает как ручной поиск решения, так и программную реализацию разработанных методов решения.
Так, для дустадийного случая предложено применение двух вспомогательных матриц для представления данных трёхмерной задачи:
• х'нгх^н, d,ihj=d,jiн, (¿=1..щ ]=1..п, Н=1..к) ;
• х"н=хнф d"iнj=dнij, (¿=1..т, j=1..n, Н=1..к).
Изложенный приём сведения многомерных матриц транспортного типа
может быть применён и для задач большей размерности, однако в этом случае возрастёт число вспомогательных матриц учёта ресурсов. Число вспомогательных матриц при этом составит I +1, где I - число этапов обработки [6]. Относительно вычислительной сложности предлагаемых алгоритмов можно обоснованно считать её полиномиальной, как и
вычислительную сложность симплекс-метода, частным случаем которого
является большинство методов решения задач транспортного типа [8 - 10].
Литература
1. Воеводин В.В., Воеводин Вл. В. Параллельные вычисления — СПб: БХВ-Петербург, 2002. - 608 с.
2. Gottlieb, Allan; Almasi, George S. Highly parallel computing. Redwood City, Calif.: Benjamin/Cummings, 1989 - p. 256.
3. Баклагин В.Н., Реализация распараллеливания алгоритмических структур, моделирующих экосистему озерных объектов, на многоядерные процессоры // Инженерный вестник Дона. - 2013. - № 3. URL ivdon.ru/ru/magazine/archive/n3y2013/1750
4. Rabaey, Jan M. Digital integrated circuits: a design perspective. Upper Saddle River, N.J.: Prentice-Hall, 1996 - p. 235.
5. Васильев Ф.П. Численные методы решения экстремальных задач / Ф.П. Васильев. - М.: Наука. ГРФМЛ, 1988. - 552 с.
6. Нечитайло Н.М. Математические модели транспортного типа по критерию времени: монография // Рост. гос. ун-т путей сообщения. Ростов н/Д, 2007. - 146 с.
7. Дроздов А.А., Миронюк В.П., Цыплаков В. Ю. Повышение эффективности системы двухэтапной транспортировки: на примере управления твердыми муниципальными отходами // Инженерный вестник Дона. - 2012. - №4. URL ivdon.ru/ru/magazine/issue/107
8. Корбут А.А., Финкельштейн Ю.Ю. Дискретное программирование //М.: Наука, ГРФМЛ, 1969. - 368 с.
9. Триус, Е.Б. Задачи математического программирования транспортного типа // М., 1967. - 208 с.
10. Коварцев А.Н., Даниленко А.Н. Алгоритмы и анализ сложности. -Самара: Изд-во Самарского университета, 2018. - 128 с.
References
1. Voevodin V.V., Voevodin Vl.V. Parallel'nye vychislenija [Parallel computing] SPb: BXV- Petersburg, 2002. 608 p.
2. Gottlieb, Allan; Almasi, George S. Highly parallel computing. Redwood City, Calif.: Benjamin/Cummings, 1989. 256 p.
3. Baklagin V.N., Inzhenemyj vestnik Dona. 2013. № 3. URL ivdon.ru/ru/magazine/archive/n3y2013/1750
4. Rabaey, Jan M. Digital integrated circuits: a design perspective. Upper Saddle River, N.J.: Prentice-Hall, 1996 235 p.
5. Vasil'ev F.P. Chislennye metody reshenija jekstremal'nyh zadach [Numerical methods for solving extreme problems] M.: Nauka. GRFML, 1988. 552 p.
6. Nechitaylo, N.M. Matematicheskie modeli transportnogo tipa po kriteriju vremeni: monografija [Mathematical models of transport type by the criterion of time: monograph] Rost. gos. un-t putej soobshhenija. Rostov n/D, 2007. 146 p.
7. Drozdov A.A., Mironjuk V.P., Cyplakov V. Ju. Inzhenernyj vestnik Dona. 2012. №4. URL ivdon.ru/ru/magazine/issue/107
8. Korbut A.A., Finkel'shtejn Ju.Ju Diskretnoe programmirovanie [Discrete programming] M.: Nauka, GRFML, 1969. 368 p.
9. Trius E.B. Zadachi matematicheskogo programmirovanija transportnogo tipa [Problems of mathematical programming of transport type] M., 1967. 208 p.
10. Kovartsev A.N., Danilenko A.N. Algoritmy i analiz slozhnosti: uchebnik [Algorithms and Complexity analysis: textbook] Samara: Izd-vo Samarskogo universiteta, 2018. 128 p.