Застосування теорії графів в інформатиці


11

Я студент CS. Ми займалися теорією графів за один курс. Мені це було цікаво.

Які реальні програми теорії графів у галузі інформатики?

Наприклад, я виявив, що деякі концепції в теорії графів можуть бути використані для проектування мереж. Які ще подібні програми?


1
це може бути жахливо довгий список. Я думаю, CW?
Суреш Венкат

4
Це здається трохи надто загальним навіть для CW. Теорія графіків є всюдисущою в TCS.
Гек Беннетт

30
Запитання щодо тем у CS, які не використовують графіки, можливо, дозволить скоротити список.
Рафаель

1
@peedarpk: Якщо ви слідуєте за класом з теорії графів в курсі CS, чому б ви не запитали професора?
Ентоні Лабарре

3
Дійсно, чи можемо ми закрити це зараз? Відповідь на це питання є у wikipedia ( en.wikipedia.org/wiki/Graph_theory#Applications ) або у будь-якому вступному підручнику для студентів.
RJK

Відповіді:


12

Це аж ніяк не остаточна відповідь, і я не маю намір це як таке.

Багато проблем, що цікавлять комп'ютерних вчених, можна охарактеризувати як проблеми з графами, і в результаті теорія графіків виявляється досить багато в теорії складності. Наприклад, обчислювальні зусилля, необхідні для визначення того, де два графіки є ізоморфними, наприклад, в даний час є предметом великої цікавості в теорії складності (вона, як відомо, не є повною NP, ні міститься в P, BPP або BQP, але явно є в NP) . Графічний неізоморфізм, з іншого боку, має дуже хороший нульовий доказ (інша область вивчення теорії складності). У багатьох класах складності є проблеми із графіком, які є повними для цього класу (за деяким скороченням).

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

Квантове обчислення на основі вимірювань - це модель обчислення, яка не має аналогів у класичному світі. У цій моделі обчислення ведеться шляхом вимірювання на спеціальному класі квантових станів. Ці стани відомі як стану графів, тому що кожен стан може бути однозначно ідентифікований з непрямим графіком з кількістю вершин, рівним кількості кубітів у стані графа. Однак цей зв'язок з теорією графів більш ніж випадковий. Ми знаємо, що важливий клас вимірювань (вимірювання на основі Паулі на випадок, коли вам це цікаво) відображає базовий стан графа на новий стан графа на одному меншому кубіті, і правила, за допомогою яких це відбувається, добре розуміються. Крім того, властивості базового сімейства графіків (це потік та g-потік) повністю визначають, чи підтримує він універсальні обчислення. Нарешті, для будь-якого графа G ', до якого можна дістатись з іншого графіка G довільною послідовністю доповнення країв околиці вершини, можна дістатись одноосібними операціями, і тому вони однаково потужні, як ресурс для обчислення. Це цікаво тим, що кількість ребер, максимум ступенів вершин тощо може різко змінитися.


Чудова відповідь на те, про що навряд чи питали ОП! Але місцево, чому ми не забудемо оригінальну (погану) версію питання і не зробимо вигляд, що ми граємо в небезпеку: "Яка інтуїція за всюдисущістю графіків майже в усіх піддисциплінах теоретичної інформатики?"
RJK

@RJK: Можливо, я мав би прочитати питання уважніше, але я подумав, що це може бути принаймні цікавим людині, яка задає це питання.
Joe Fitzsimons

Ні ні, це була чудова відповідь.
Монтагіст

5

Застосування теорії графів є в достатку в галузі інформатики та в повсякденному житті:

  • Пошук найкоротших маршрутів у автомобільних навігаційних системах
  • Пошукові системи використовують алгоритми ранжування, засновані на теорії графіків
  • Оптимізація графіків роботи шкіл чи університетів
  • Аналіз соціальних мереж
  • Оптимізація використання залізничних систем
  • Компілятори використовують алгоритми забарвлення, щоб призначити регістри змінним
  • Планування шляху в робототехніці

3

Графічна теорія має різноманітне застосування. Мої улюблені програми - це:

  • Мережі великих масштабів
  • Соціальні обчислення
  • Біоінформатика

2

Моделювання мереж здійснюється за допомогою графіків. Наприклад, якщо вам потрібно вивчити мовлення або багатоадресову передачу в певних типах мережевих топологій, ви б використовували графіки для моделювання мереж. Наприклад:

  • гіперграфи
  • повні графіки
  • зіркові графіки
  • сітки

При моделюванні мереж за допомогою графіків ви можете використовувати всю силу теорії графів для аналізу мережі.

Це лише одне із багатьох застосувань теорії графів в інформатиці.


-2

Структура каталогів - це структура дерева (з кореневими вузлами та дочірніми вузлами. У мережах використовується для пошуку найкоротшого маршруту, використовуючи дерево мінімального розміщення, алгоритм Дікстри.


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