В настоящей работе была рассмотрена теория графов как способ решения определенного типа прикладных задач. Полученные знания помогли в разработке проекта (программы) в среде программирования Delphi. Данный проект может быть использован на уроках математики в пропедевтических целях для показа школьникам структуры и свойств графа.
Вложение | Размер |
---|---|
fedotkin_denis_9_klass_nou.docx | 129.47 КБ |
Открытая Уральская межрегиональная конференция-олимпиада юных исследователей «Интеллектуалы XXI века» Решение прикладных задач с помощью графов и их исследование с использованием среды программирования Delphi
Автор: Федоткин Денис, 9 класс, МАОУ лицей №35 Научный руководитель: Шабалина Лариса Александровна, учитель математики, МАОУ лицея № 35 г.Челябинска Челябинск, 2012 |
Содержание
1. Введение | 3 |
1.1 Актуальность | 3 |
1.2 Задачи исследования | 3 |
1.3 Объекты исследования | 3 |
2. Основная часть | 4 |
2.1 Теоретическая часть | 4 |
2.1.1 Введение в теорию графов | 4 |
2.1.2 Описание графа с помощью матрицы смежности | 4 |
2.1.3 Подграфы и деревья | 4 |
2.2 Исследовательская часть | 6 |
2.2.1. Реализация в программе | 6 |
3. Заключение | 7 |
3.1 Выводы | 7 |
3.2 Применение | 7 |
3.3 Перспективы | 7 |
4. Список литературы | 8 |
5. Приложения | 9 |
1. Введение
1.1 Актуальность
При проектировании компьютерных сетей, телефонных линий, трубопроводов и строительстве дорог необходимо минимизировать затраты на прокладку коммуникаций. Прежде всего, целесообразно выбрать минимальный по длине маршрут прокладки коммуникаций.
Например, необходимо соединить телефонными или компьютерным кабелем шесть зданий, расстояния между которыми различны (см. Приложения, рис 1.). Возникает задача определения маршрута прокладки кабеля минимальной длины, но при этом подходящего к каждому зданию. Задача актуальна и для ее реализации можно использовать различные методы решения. В предложенной вашему вниманию работе мы будем использовать теорию графов.
1.2 Задачи исследования
Перед нами были поставлены следующие задачи:
1.3 Объект исследования
Изучение теории графов и применение ее в проекте (программе), созданной в среде объектно-ориентированного программирования Delphi.
2. ОСНОВНАЯ ЧАСТЬ
2.1 Теоретическая часть
2.1.1 Введение в теорию графов.
Граф G задается с помощью пары множеств G = (V,R), где V – множество (совокупность) вершин, R – множество ребер, соединяющих пары вершин. Обычно граф представляют с помощью диаграммы (см. Приложения, рис. 2), на которой некоторые вершины соединены линиями (ребрами).
Вершинами может служить любой объект: населенные пункты, компьютеры сети. Под ребрами могут подразумеваться дороги между двумя соседними городами, линии связи между компьютерами.
Вершины называются смежными, если их соединяет ребро. Например, вершины V1 и V2 смежные, т.к. их соединяет ребро R12. Ребро и любая из двух его вершин называются инцидентными. Под степенью вершины называется количество инцидентных ей ребер.
Маршрут графа – это чередующаяся последовательность вершин и ребер. Эта последовательность начинается и кончается вершиной, в которой каждое ребро инцидентно двум вершинам. В графах можно выделить различные маршруты.
Маршрут является замкнутым (циклом), если его начальная и конечная вершины совпадают.
Например, в графе G можно выделить несколько циклических маршрутов, например, V1R12V2R23V3R34V4R14V1 и V2R23V3R35V5R25V2.Маршрут называется простой цепью, если все его вершины и ребра различны. Длина маршрута равна количеству ребер, входящих в путь. Граф считается связным, если каждая его вершина достижима из любой другой (см. Приложения, рис. 2).
Ориентированные графы. В теории графов вводится понятие орграфа – ориентированного графа, в котором каждое ребро имеет одно направление. Такие ребра называют дугами.
Взвешенные графы. Взвешенная сеть – это такая сеть, ребрам или
дугам которой поставлены в соответствие числовые величины.
Вес сети равен сумме весов ее ребер.
2.1.2 Описание графа с помощью матрицы смежности.
Для наглядного представления графа используются диаграммы, а для математических расчетов удобнее использовать представление графа в форме матрицы смежности (см. Приложения, рис. 3).[2]
Матрицу смежности можно представить в виде таблицы, строки и столбцы которой соответствуют номерам вершин графа (см. Приложения, рис. 4).
2.1.3 Подграфы и деревья.
Подграфом графа G называется граф, у которого все вершины и ребра принадлежат графу G. Остовной связный подграф – это подграф графа G, который содержит все его вершины и каждая его вершина достижимы из любой другой (см. Приложения, рис. 5) .
Дерево – это граф, маршрутом которого является простая цепь. Основным связным деревом называется подграф, включающий все вершины исходного графа G, каждая вершина которого достижима из любой другой, и при этом не содержащий циклов. [1]
Преобразование графа в остовное связное дерево минимального веса.
Пусть в матрице смежности графа G строки нумеруются индексом n, а столбцы – индексом k, тогда элементы матрицы смежности обозначают Rnk, и связный взвешенный неориентированный граф, т.е. ребра Rnk и Rkn считаются одним и тем же ребром, и поэтому в матрице смежности необходимо не учитывать дублирующие друг друга ребра (см. Приложения, рис. 4).
Введем понятие цикломатического числа γ, показывающего, сколько ребер графа нужно удалить, чтобы в нем не осталось ни одного цикла. Цикломатическое число равно разности между количеством ребер и количеством вершин графа, увеличенной на единицу: γ=m – n + 1, Так количество ребер равно 8, а количество вершин равно 5. цикломатическое число равно 4, Это значит, что для получения остовного связного дерева в графе G необходимо убрать четыре ребра, и тогда в нем не останется ни одного цикла (см. Приложения, рис. 2).[1]
2.2 Исследовательская часть.
2.2.1 Реализация в программе.
Для построения остовного связного дерева минимального веса используется алгоритм Крускала:
Пример остовного связного дерева графа G (см. Приложения, рис.6).
3. ЗАКЛЮЧЕНИЕ
3.1 Выводы
В предложенной вашему вниманию работе разработан способ решения определенного типа прикладных задач с использованием теории графов.
Было проведено исследование графа с 6-тью вершинами и с его помощью был разработан проект (программа) в среде объектно-ориентированного программирования Delphi, который явился новым способом решения прикладных задач
Данный проект может использоваться на уроках математики и информатики для решения определенного типа прикладных задач. Программа может быть использована в пропедевтических целях для показа школьникам структуры и свойств графа.
Работа будет иметь свое продолжение в дальнейшем: проект будет работать для различного количества вершин графа.
4. СПИСОК ЛИТЕРАТУРЫ
Рисунок 1
Рисунок 2
Рисунок 3
Рисунок 4
Рисунок 5
Рисунок 6
Как нарисовать китайскую розу
Стрижонок Скрип. В.П. Астафьев
Три коробки с орехами
Как нарисовать черёмуху
Плавает ли канцелярская скрепка?