
- •6 Отношения. Унарные, бинарные, тернарные отношения.
- •13 Способы задания нечетких множеств. Операции над нечеткими множествами.
- •Операции над нечеткими множествами
- •15 Логика высказываний.
- •16 Логические операции. Формулы логики высказываний. Логические операции.
- •Формулы логики высказываний
- •17 Равносильность формул.
- •18 Нормальные формы формул, приведение к днф, кнф.
- •19 Совершенная дизъюнктивная и совершенная конъюнктивная нормальные формы.
- •Алгоритм получения сднф по таблице истинности.
- •Алгоритм получения скнф по таблице истинности.
- •20 Булева алгебра. Логические функции одной или нескольких переменных.
- •21 Суперпозиции функций. Полные системы логических функций.
- •22 Минимизация в классе дизъюнктивных нормальных форм.
- •23 Исчисление высказываний и исчисление предикатов.
- •Исчисление предикатов
- •24 Аксиоматические теории. Выводимость формул в исчислении высказываний.
- •25. Теорема дедукции. Предикаты, кванторы.
- •26. Формулы логики предикатов, их равносильность, выполнимость и общезначимость.
- •27. Аксиомы исчисления предикатов.
- •28. Алгебраические структуры. Группы.
- •29. Циклические группы. Группы подстановок. Кольца и поля
- •30. Элементы теории кодирования. Представление о кодировании.
- •31. Расстояние Хемминга.
- •32. Теорема о корректирующей способности кодов.
- •33. Матричное кодирование. Групповые коды.
- •34. Коды Хемминга.
- •35. Элементы комбинаторики. Размещения и сочетания.
- •36 Перестановки и подстановки.
- •37 Разбиения Формула включений и исключений.
- •38 Теория графов. Основные понятия и определения.
- •39 Понятие графа. Виды графов.
- •40 Способы задания графов.
- •41 Смежность, инцидентность.
- •42.Операции над графами. Части графов.
- •43 Связность, компоненты связности.
- •44 Числа графов: цикломатическое, хроматическое, внешней и внутренней устойчивости.
- •45 Поиск маршрутов в графе. Задача о минимальном соединении.
- •46 Задача о кратчайшем пути.
- •47 Эйлеровы цепи и циклы. Гамильтоновы цепи и циклы.
- •48 Транспортные сети. Понятие транспортной сети.
- •49 Поток в транспортной сети. Разрез, пропускная способность разреза.
- •50 Алгоритмы построения максимального потока.
- •1) Процедура помечивания вершин.
- •2) Процедура изменения потока.
45 Поиск маршрутов в графе. Задача о минимальном соединении.
Задача о минимальном соединении
Имеется несколько городов, никакие два из которых не соединены
дорогой. Для любых двух городов известна стоимость прокладки дороги
между ними (либо известно, что дорогу между ними проложить
невозможно). Требуется построить дороги так, чтобы можно было
проехать из любого города в любой другой (возможно, не напрямую, а
проездом через другие города), и чтобы суммарная стоимость прокладки
всех дорог была минимальной.
Взвешенным графом называется пара (G, φ), где G — граф, а φ —
функция, ставящая в соответствие каждому ребру графа действительное
число. Число φ(e) называется весом ребра e. Весом подграфа называется
сумма весов входящих в него ребер.
Представим задачу о минимальном соединении графом: вершины
соответствуют городам, ребра — дорогам, которые можно проложить, а их
веса — стоимости прокладки этих дорог. Полученный граф должен быть
связным (по построенным дорогам надо иметь возможность проехать из
любого города в любой другой). В этом графе нужно выбрать некоторые
ребра так, чтобы:
(i) любые вершины были связаны цепью, состоящей только из
выбранных ребер;
(ii) суммарный вес выбранных ребер был минимальным.
Все города и построенные дороги образуют суграф исходного графа.
Условие (i) означает, что суграф должен быть связным. А условие (ii)
показывает, что этот суграф не может содержать циклов: в противном
случае после удаления из нашего суграфа любого ребра, входящего
в цикл, вес суграфа уменьшится, а связность останется в силу теоремы о
разрыве цикла (лекция 3). Таким образом, выбранный нами суграф
должен быть деревом, т. е. каркасом исходного графа, что дает нам
следующую формулировку.
Задача о минимальном соединении на языке теории графов
Дан взвешенный связный граф, в котором веса всех ребер положительны.
Требуется найти каркас этого графа с минимально возможным весом.
Приведем следующий алгоритм решения задачи о минимальном
соединении. Заметим, что он работает и в случае, когда некоторые ребра
имеют нулевой вес (т. е. некоторые дороги уже проложены).
Алгоритм Краскала
Вход: связный взвешенный граф (G, φ) с неотрицательными весами.
Выход: список T ребер каркаса минимального веса в G.
1. Положить T = ∅; выписать все ребра из G в список S по возрастанию
веса.
2. Выбрать в S ребро e минимального веса и удалить из S.
3. Если e не образует цикла с ребрами из T, добавить e в T.
4. Если список S не пуст, вернуться на шаг 2.
46 Задача о кратчайшем пути.
Пусть задан граф (I, D, G), каждой дуге которого поставлено в соответствие число cd, называемое длиной. Также пусть выделены две вершины графаs и t, и требуется найти путь наименьшей длины, ведущий из вершины s в вершину t.
Если в графе имеются «кратные» дуги, соединяющие одинаковые начало и конец, то достаточно оставить одну — с наименьшей длиной, а остальные отбросить. Таким образом, достаточно рассматривать задачу о кратчайшем пути для простого графа (I, D), в котором дуги определяются упорядоченными парами вершин d = (i, j). Тогда естественно путь L, идущий из вершины s в вершину t, задавать в виде упорядоченного набора вершин, через которые проходит данный путь:
а длины дуг обозначать как cd = ci,j.
Длина описанного выше произвольного пути L определяется по формуле
Легко заметить, что задача о кратчайшем пути является частным случаем транспортной задачи в сетевой постановке (или, что то же самое, задачи об оптимальном потоке). Для этого достаточно присвоить вершине s единичный запас, вершине t единичную потребность, все остальные вершины положить нейтральными, а дугам присвоить неограниченные пропускные способности. Однако, как правило, более рациональным оказывается использование конкретных свойств данной задачи и решение ее специальными (частными) методами. К их числу относится, например, метод Минти, основные идеи которого мы изложим ниже.
Метод Минти решения задачи о кратчайшем пути в сети представляет собой итеративный процесс, в ходе которого строится путь L=(s=i0, i1, ..., ip-1, ip=t).
На предварительном (нулевом) этапе алгоритма:
Ø
формируется массив значений так
называемых модифицированных
длин i,j, которые
перед началом первой итерации полагаются
равными сi,j ≥0;
Ø осуществляется отметка вершины i0 = s числом mi0 = 0.