русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Операции над графами.


Дата добавления: 2013-12-24; просмотров: 3091; Нарушение авторских прав


Так как граф описывает бинарное отношение, то все операции над бинарными отношениями можно трактовать как операции над графами, в том числе и теоретико-множественные операции: дополнение, пересечение, объединение. Дополнение проводится до полного графа и включает в результат все дуги, которых нет в исходном графе.

 
Рассматриваются специальные «графовые» операции.

Рёберный граф графа G. В нём каждому ребру G сопоставляется вершина, вершины связываются ребром, если в G сопоставленные им ребра инцидентны.

Граф достижимости графа G. В нём множество вершин то же, что в G, и вершины связаны дугой, если в графе G между ними существует путь. В табл. 3.8 и 3.9 приведены матрицы смежности графа дополнения и реберного графа для графа, приведённого на рис.3.15.

Группа операций связана с операциями над матрицами смежности, описывающими граф. Обозначим операцию, сопоставленную матричному умножению для графов G и H, как G×H.

 

Табл.ица 3.8
 
   
   
   
 
 

Рассмотрим частный случай, когда G=H, т.е. операцию G×G. Обозначим её как G2.

 
 

В этом случае получается матрица, (I,j)- я компонента которой вычисляется по формуле,
где nА½.

 

Таблица. 3.9
  1,2 1,4 2,5 2,4 3,1 3,5 4,3 5,3
1,2        
1,4        
2,5      
2,4      
3,1    
3,5      
4,3      
5,3      

Результирующая матрица может содержать значения большие, чем 1, т.е. результатом будет мультиграф. В этом графе дуга (i,j) имеет кратность, равную числу путей длины 2 между вершинами аi и aaj в графе G. На рис.3.16 приведён граф G, для которого G2 представлен на рис.3.17. В нём дуга (2,5) имеет кратность 2, так как между вершинами 2 и 5 два пути длины 2– через вершины 1 и 3.



Можно показать, что для графа G3 результатом будет мультиграф, в котором между aai и aaj будет столько дуг, сколько путей длины 3 между этими вершинами в исходном графе.

Значит, если объединить все степени графа G (считая, что G1=G) от 1 до бесконечности, то результатом будет граф достижимости, описанный выше.

 
 

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

Пусть G=<A,R> и H=<B,S>. P=GxH, где P=<C,T>, C=AxB, T={((a,b),(R(a),S(b)))}.

Такую операцию называют произведением графов. Рассмотрим эту операцию подробнее на примере. Пусть G и Н имеют вид рис. 3.18 и 3.19. Произведение этих графов приведено на рис.3.20, его матрица записана в табл.3.10.

Матрица произведения может быть получена по такому правилу. Запишем матрицу одного. из сомножителей, затем в ней каждую клетку заменим на матрицу, размер которой совпадает с размером матрицы второго графа, а содержание равно пустой матрице, если соответствующий элемент матрицы первого графа равен 0, или совпадает с содержимым матрицы второго графа, если элемент равен 1. Такие матрицы получили название правильные клеточные матрицы.

Табл. ица 3.10
  1aa 1b 2aa 2b 3aa 3b
1aa          
1b        
2aa          
2b        
3aa          
3b        



Семантика операции. Пусть имеется два блока, составляющие систему, функционирующую в общем дискретном времени. Каждый блок описан графом, вершины которого сопоставлены с состояниями блока, дуга (i,j) определяет возможный переход блока из состояния i в следующий момент времени. Блоки функционируют независимо и параллельно.

В этом случае возможные состояния системы определяются состояниями блоков (декартовым произведением), а произведению соответствует граф перехода системы во времени. Так, если в примере первый блок находится в состоянии 1, второй в это время находится в состоянии bb, то система находится в состоянии (1,bb) и в следующий момент возможны переходы в состояние (3,aa) или (3,bb).

Задание. Система состоит из двух блоков, функционирующих в общем времени, и в каждый момент времени меняет состояние только один блок (последовательная работа блоков). Определите операцию над графами, описывающими переходы блоков системы, результатом которой является граф переходов системы.

 



<== предыдущая лекция | следующая лекция ==>
Планарные графы | Декомпозиция графов.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.511 сек.