Результаты исследований: Научные публикации в периодических изданиях › статья › Рецензирование
Представлен итерационный алгоритм перебора разбиений конечного множества, состоящего из различимых элементов, на подмножества заданной мощности. Мощности некоторых подмножеств могут совпадать. Весь алгоритм состоит из двух независимых алгоритмов. Первый алгоритм определяет, в подмножество какой мощности при разбиении попадет каждый элемент исходного множества. Для этого подмножества одинаковой мощности объединяются в составные подмножества. Производится распределение элементов исходного множества по составным подмножествам. Разбиения описываются индексным массивом, указывающим, в какое составное подмножество распределяется каждый элемент исходного множества. Перебор разбиений исходного множества по составным подмножествам сводится к перебору всех перестановок индексов в массиве. Второй алгоритм распределяет элементы внутри каждого составного подмножества по равномощным подмножествам. При этом для каждого составного подмножества создается свой индексный массив, описывающий, в какое подмножество попадает каждый элемент составного подмножества. Перебор всех разбиений составного подмножества по равномощным подмножествам сводится к частичному перебору перестановок индексов. Перестановки всех индексных массивов перебираются в лексикографическом порядке. Такое построение алгоритма позволяет разбить весь перебор на независимые части и использовать параллельные вычисления. Рассмотрен пример, показывающий состоятельность алгоритма и ускорение получения результата при применении параллельных вычислений.
Переведенное название | A parallel algorithm for iterating partitions of a finite set into subsets of a given cardinality |
---|---|
Язык оригинала | русский |
Страницы (с-по) | 50-61 |
Число страниц | 12 |
Журнал | ВЕСТНИК САНКТ-ПЕТЕРБУРГСКОГО УНИВЕРСИТЕТА. ПРИКЛАДНАЯ МАТЕМАТИКА. ИНФОРМАТИКА. ПРОЦЕССЫ УПРАВЛЕНИЯ |
Том | 16 |
Номер выпуска | 1 |
DOI | |
Состояние | Опубликовано - мар 2020 |
ID: 53724390