Применение гиперграфов

A гиперграфа - обобщение графа, в котором ребро может соединять много вершин. Недавно я видел много публикаций о гиперграфах (сегментация, кластеризация и так далее). Поэтому мои вопросы:

  • существуют ли какие-либо реальные приложения гиперграфов (и, вероятно, реализации) или это просто академические исследования, которые не предназначены для использования инженерами?
  • есть ли аналоги общих алгоритмов графа, таких как max-flow или Dijkstra что можно использовать с гиперграфами?

У меня есть интуиция о нормальной графики. Например, график может использоваться для представления правил транспортной сети или бизнес-правил байесовской сети. Но у меня нет такой интуиции в отношении гиперграфов, они абсолютно противоречат интуиции для меня.

3 ответов


Гиперграфы представляются как двудольные графы, и двудольные графы могут использоваться для построения гиперграфа. Это просто говорит о том, что вы можете представлять взаимодействия между некоторой формой акторов либо как вершины, либо как (гипер-)ребра.

Как только мы признаем эту эквивалентность, мы можем заключить, что гиперграфы могут использоваться, когда вы в противном случае можете использовать двудольный граф, и что аналоги алгоритмов графов более непосредственно относятся к алгоритмам на двудольных графах.


математические модели сборки изделий из деталей основаны на гиперграфах. Это используется в автоматизированных производственных (кулачковых) системах для определения возможных и оптимальных (в некотором смысле) порядков сборки.


есть хороший для кластеризации изображений с помощью гиперграфа: http://vision.ucsd.edu/bpc/

слайды здесь: http://vision.ucsd.edu / ~sagarwal / bpc_cvpr05_slides.pdf

хотя алгоритм не стал мейнстримом, это элегантная иллюстрация идеи ссылок в гипергафах и их значения. Я думаю, что гиперграфы могут быть очень полезны в интеллектуальном анализе данных.