Участник:Midmedian/Алгоритм Федуччи-Маттеуса: различия между версиями
Midmedian (обсуждение | вклад) Новая страница: «Автор описания: И.А.Бабкин == Свойства и структура алгоритмов == === Общее…» |
Midmedian (обсуждение | вклад) Добавлено общее описание алгоритма и кусочек математического описания. |
||
| Строка 5: | Строка 5: | ||
=== Общее описание алгоритма === | === Общее описание алгоритма === | ||
'''Алгоритм Федуччи-Маттеуса (FM-алгоритм)'''<ref>Fiduccia C. M., Mattheyses R. M. A linear-time heuristic for improving network partitions //19th Design Automation Conference. – IEEE, 1982. – С. 175-181.</ref> является эвристикой для оптимального разделения гиперграфа на два непересекающихся блока (подграфа) за линейной время. | |||
=== Математическое описание алгоритма === | |||
Пусть дан гиперграф <math>P=(C,N)</math>, где <math>C</math> - это пронумерованный набор ячеек (вершин), соединённых пронумерованным набором сетей (гиперрёбер) <math>N</math>. Гарантируется, что гиперграф состоит как минимум из двух ячеек и что каждая из ячеек содержится хотя бы в одной из сетей. | |||
''Количество ячеек'' в <math>i</math>-ой сети обозначим как <math>n(i)</math>, а ''размер'' <math>j</math>-ой ячейки (количество сетей, в которые входит ячейка) за <math>s(j)</math>. | |||
''Размер блока'' <math>B</math> определим, как | |||
:<math>|B|=\sum\limits_{i=1}^{|N|} n(i)=\sum\limits_{i=1}^{|C|} s(i)</math>. | |||
Задача заключается в разделении <math>P</math> на непересекающиеся блоки <math>A</math> и <math>B</math> размерами <math>|A|</math> и <math>|B|</math> соответственно так, чтобы выполнялось условие | |||
:<math>\frac{|A|}{|A|+|B|} \cong r</math>, | |||
где <math>r</math> - ''коэффициент разделения'' (<math>0 < r < 1</math>). | |||
=== Вычислительное ядро алгоритма === | === Вычислительное ядро алгоритма === | ||
Версия от 15:46, 22 октября 2019
Автор описания: И.А.Бабкин
Свойства и структура алгоритмов
Общее описание алгоритма
Алгоритм Федуччи-Маттеуса (FM-алгоритм)[1] является эвристикой для оптимального разделения гиперграфа на два непересекающихся блока (подграфа) за линейной время.
Математическое описание алгоритма
Пусть дан гиперграф [math]\displaystyle{ P=(C,N) }[/math], где [math]\displaystyle{ C }[/math] - это пронумерованный набор ячеек (вершин), соединённых пронумерованным набором сетей (гиперрёбер) [math]\displaystyle{ N }[/math]. Гарантируется, что гиперграф состоит как минимум из двух ячеек и что каждая из ячеек содержится хотя бы в одной из сетей.
Количество ячеек в [math]\displaystyle{ i }[/math]-ой сети обозначим как [math]\displaystyle{ n(i) }[/math], а размер [math]\displaystyle{ j }[/math]-ой ячейки (количество сетей, в которые входит ячейка) за [math]\displaystyle{ s(j) }[/math].
Размер блока [math]\displaystyle{ B }[/math] определим, как
- [math]\displaystyle{ |B|=\sum\limits_{i=1}^{|N|} n(i)=\sum\limits_{i=1}^{|C|} s(i) }[/math].
Задача заключается в разделении [math]\displaystyle{ P }[/math] на непересекающиеся блоки [math]\displaystyle{ A }[/math] и [math]\displaystyle{ B }[/math] размерами [math]\displaystyle{ |A| }[/math] и [math]\displaystyle{ |B| }[/math] соответственно так, чтобы выполнялось условие
- [math]\displaystyle{ \frac{|A|}{|A|+|B|} \cong r }[/math],
где [math]\displaystyle{ r }[/math] - коэффициент разделения ([math]\displaystyle{ 0 \lt r \lt 1 }[/math]).
Вычислительное ядро алгоритма
Макроструктура алгоритма
Схема реализации последовательного алгоритма
Последовательная сложность алгоритма
Информационный граф
Ресурс параллелизма алгоритма
Входные и выходные данные алгоритма
Свойства алгоритма
Программная реализация алгоритма
Особенности реализации последовательного алгоритма
Локальность данных и вычислений
Возможные способы и особенности параллельной реализации алгоритма
Масштабируемость алгоритма и его реализации
Динамические характеристики и эффективность реализации алгоритма
Выводы для классов архитектур
Существующие реализации алгоритма
Литература
- ↑ Fiduccia C. M., Mattheyses R. M. A linear-time heuristic for improving network partitions //19th Design Automation Conference. – IEEE, 1982. – С. 175-181.