Дані для тестування графічних алгоритмів


36

Я шукаю джерело величезних наборів даних для перевірки виконання деяких алгоритмів графіків. Будь ласка, надайте трохи інформації про тип / розподіл (наприклад, спрямований / непрямий, простий / не простий, зважений / не зважений) графіків у джерелі, якщо вони відомі.


пов’язана публікація: cstheory.stackexchange.com/questions/16751/…
Ніл Янг

Як це теоретично? :-)
Нілс

Відповіді:



17

Я спробую дати відповідь більш високого рівня, ніж інші.

Наступні класи вхідних даних часто корисні для перевірки продуктивності запропонованого алгоритму або обгрунтованості гіпотези в теорії графів:

  1. HpH

  2. nKn/2,n/2

  3. "Не випадкові" графіки : це проміжні між тим, що є абсолютно загальними, як у випадкових графах, і повністю специфічними для проблеми, як у структурованих графіках. Наприклад, таке сімейство може бути випадковими підграфами структурованих графіків. Такі приклади часто зустрічаються при створенні сильніших варіантів леми регулярності Семереді . Один із способів створення цих прикладів - придумати визначення "псевдовипадковості", яке моделює випадкові входи, так що для псевдовипадкових входів можна показати, що працює ваш алгоритм або ваша думка. Потім ви ідентифікуєте перешкоди псевдовипадковості, і графіки, які мають ці перешкоди, можуть потім створити велику колекцію невипадкових графіків, які є контрпримерами. Більш активну дискусію щодо цього принципу можна знайти наІВМ розмова Террі Тао в 2006 році . Ці невипадкові графіки приблизно відповідають "негативним наслідкам" у деяких його роботах з Бен Гріном та іншими.


14

Для створення графіків я зазвичай використовую gengпрограму, яка постачається разом із nauty:

http://cs.anu.edu.au/~bdm/nauty/

Це створює непрямі графіки (також відомі як "графіки"). Для отримання спрямованих графіків ви можете directgподати висновок, через який також йде повсякденність.

Використання geng підходить для сценаріїв, коли ви хочете протестувати всі графіки (скажімо) до nвершин, або всі пов'язані графіки з mребрами чи щось подібне. Якщо у вас є більш конкретні вимоги, то, будь ласка, вкажіть їх у своєму питанні.


11

Стенфордський GraphBase може вам допомогти: http://www-cs-staff.stanford.edu/~knuth/sgb.html

Однак, швидше за все, ви, ймовірно, захочете генерувати графіки самостійно, і ви, ймовірно, хочете, щоб згенеровані графіки мали всі (або не мають) певні властивості. Випадкові графіки часто є поганим наближенням графіків, до яких насправді звикає алгоритм.


9

Не величезна, але, можливо, все-таки корисна, 3054 "стандартні графічні іменовані графіки" з колекції Graphhematica Mathematica

Формат - це один графік на рядок із назвою та списком сусідніх вузлів, подібних до цього

{<назва графіка>, {{1, 4}, {1, 5}, {1, 6}, {2, 5}, {2, 6}, {3, 6}}

<назва графіка> може форми "AGraph" або {"Andrasfai", 6}


Це графіки чи графіки?
Еміль



3

Дев'ятим DIMACS Реалізація Challenge - Найкоротші шляхи провів в 2005-2006 роках з метою виробництва «стандартний набір примірників тестів і генераторів, а також реалізації тестів добре відомих алгоритмів найкоротших шляхів.»

Сторінка завантаження містить графіки доріжної мережі США, що мають діапазон від 2 МБ до 335 МБ, як з вагою відстані, так і за часом.

http://www.dis.uniroma1.it/challenge9/download.shtml

Я вважаю це корисним для порівняння моїх власних іграшкових реалізацій графічних функцій.


0

Ви можете використовувати мушкетер, див

https://people.cs.clemson.edu/~isafro/musketeer/index.html

Це генератор багатомасштабних графіків, який приймає деякий вхідний графік і генерує інший графік, який може бути довільно подібний до оригіналу. Параметри є досить гнучкими для створення нової структури при різних крупнозернистих дозволах. Дивіться приклади в галереї. Цей пакет ідеально підходить для створення експериментальних примірників для алгоритмів перевірки та бенчмаркінгу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.