
- •Дискретная математика
- •Глава 1. Элементы теории множеств.
- •1.1. Множества.
- •1.2. Отношения.
- •1.3. Отображение. Функция.
- •Глава 2. Математическая логика
- •2.1. Булевы функции.
- •2.2. Нормальные формы.
- •2.3. Минимизация нормальных форм.
- •2.4. Контактные схемы.
- •2.5. Логика предикатов.
- •2.6. Решение логических задач с помощью булевых функций.
- •Глава 3. Комбинаторика.
- •3.1.Основные правила комбинаторики.
- •3.2.Перестановки.
- •3.3.Размещения.
- •3.4. Сочетания.
- •Глава 4. Теория графов.
- •4.1. Основные понятия теории графов.
- •4.2 . Задача определения кратчайшего пути.
- •4.3. Задача о кратчайшем пути между двумя пунктами.
- •4.4.Построение коммуникационной сети минимальной длины.
- •Задача определения максимального потока.
- •Литература
4.3. Задача о кратчайшем пути между двумя пунктами.
Известна схема дорог. Требуется перевезти груз из одного пункта в другой по маршруту минимальной длины.
Пример: Найдем маршрут минимальной длины от пункта 1 к пункту 11.
Припишем вершинам числа вместо номеров. Для 11-й вершины это 0.
11-я вершина соединена с 8-й, 9-й и 10-й вершинами, которым припишем числа 0+5=5, 0+5=5, 0+4=4 соответственно. Все эти ребра покажем двумя чертами со стрелками.
По числам 8-й и 9-й вершин найдем число 5-й вершины: min(5+7, 5+8)=12. Ребро (5,8) изобразим двумя чертами со стрелкой.
По числам 9-й и 10-й вершин найдем число 6-й вершины: min(5+7, 4+3)=7. Ребро (6,10) изобразим двумя чертами со стрелкой.
По числам 9-й и 10-й вершин найдем число 7-й вершины: min(5+4, 4+6)=9. Ребро (7,9) изобразим двумя чертами со стрелкой.
По числу 5-й вершины определим число 2-й вершины: 12+7=19. Ребро (2,5) изобразим двумя чертами со стрелкой.
По числам 5-й, 6-й и 7-й вершин определим число 3-й вершины: min(12+2, 9+2, 7+6)=11. Ребро (3,7) изобразим двумя чертами со стрелкой.
По числам 6-й и 7-й вершин найдем число 4-й вершины: min(7+3, 9+8)=10. Ребро (4,6) изобразим двумя чертами со стрелкой.
По числам 2-й, 3-й и 7-й вершин определим число 1-й вершины: min(19+1, 11+5, 10+4)=14. Ребро (1,4) изобразим двумя чертами со стрелкой. Длина кратчайшего пути равна 14.
Двигаемся из начальной вершины 1 в конечную вершину 11 по ребрам со стрелкой. Получаем кратчайший путь 1-4-6-10-11. Его длина равна 14.
Задача.
Найти маршрут минимальной длины от пункта 1 к пункту 10.
4.4.Построение коммуникационной сети минимальной длины.
Коммуникационная сеть минимальной длины – это совокупность дуг сети, имеющая минимальную суммарную длину и обеспечивающая связь между всеми узлами сети.
Алгоритм построения:
Начать с любого узла и соединить его с ближайшим узлом. Считаем, что это связанные узлы, а все другие – несвязанные.
Определить несвязанный узел, ближайший к одному из связанных узлов. Если их несколько, выбрать любой. Добавить этот узел к связанным. И так до тех пор, пока есть несвязанные узлы.
Пример. Университет устанавливает компьютерную систему электронной почты между деканатами.
Протяженность коммуникаций в километрах отмечена на дугах. Необходимо установить связь, позволяющую восьми деканатам обеспечить доступ к системе при минимальной длине коммуникаций.
Начинаем с узла 1. Ближайший к нему узел – это узел 2 на расстоянии 2. Считаем, что узлы 1,2 – свзанные, и отметим это двойной чертой.
Ближайшие несвязанные узлы к одному из связанных узлов 1 и 2 – это узлы 3 и 6. Выбираем любой из них, например узел 3. Ребро 1-3 отметим двойной чертой и считаем узлы 1,2,3 связанными.
Далее ищем ближайший несвязанный узел к узлам 1,2,3,. И т.д.. В результате получим минимальное дерево.
Его длина равна сумме расстояний на дугах: 2+3+1+1+0,5+1+2=10,5 (км).
Задача.
Необходимо проложить сеть в районе для кабельного телевидения. Узлы сети показывают точки, к которым должна быть проложена кабельная сеть. Дуги отображают расстояние. Нужно предложить решение, которое позволит обеспечить доступ кабельной сети ко всем точкам, но при этом общая протяженность линий будет минимальной.