Этот шаблон класса реализует генератор для графов R-MAT[CZF04]., подходит для инициализации списка смежности или другой графовой структуры с инициализацией на основе итератора. График R-MAT имеет степень безмасштабного распределения w.r.t. и реализуется с использованием разбиения Recursive-MATrix. Список краев, создаваемый этим итератором, гарантированно не содержит параллельных краев.
Where Defined
boost/graph/rmat_graph_generator.hpp>
Constructors
unique_rmat_iterator();
Создает итератор прошлого-конца.
unique_rmat_iterator(RandomGenerator& gen, vertices_size_type n,
edges_size_type m, double a, double b, double c,
double d, bool permute_vertices = true,
EdgePredicate ep = keep_all_edges());
Конструирует итератор генератора R-MAT, который создает граф сnвершинами имкраями.a,b,cиdпредставляют вероятность того, что сгенерированный край расположен на каждом из 4 квадрантов разделённой матрицы смежности. Вероятности взяты из генератора случайных чиселгена. Индексы Vertex изменяются для устранения локальности, когдаpermute_verticesЭто правда.epпозволяет пользователю указать, какие края сохраняются, это полезно в том случае, когда пользователь желает воздерживаться от хранения удаленных краев локально во время генерации для снижения потребления памяти.
D Chakrabarti, Y Zhan и C Faloutsos. R-MAT: Рекурсивная модель для графического майнинга. Proceedings of 4th International Conference on Data Mining, pages 442--446, 2004.
Copyright (C) 2009 Попечители Университета Индианы.
Авторы: Ник Эдмондс и Эндрю Ламсдейн
Статья Parallel BGL Unique R-MAT generator раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.