Алгоритм нахождения раскраски.
1. Выделить все пустые подграфы графа.
2. Построить таблицу покрытий вершин графа пустыми подграфами.
3. Найти минимальное покрытие вершин графа пустыми подграфами (мощность минимального покрытия – это h(G), а само покрытие определяет раскраску).
Оценки значения хроматического числа:
· Граф бихроматичен ( ), если в нем отсутствуют циклы нечетной длины.
· Любой планарный граф может быть раскрашен не более, чем в 4 цвета.
· , где –плотность графа – число максимального полного подграфа.
· , где – степень графа – максимальная степень его вершин.
· , где –число внешней устойчивости – минимальная мощность множества таких вершин, что каждая вершина графа или принадлежит кXили смежна с одной из вершин из .
Оценки хроматических чисел результатов операций:
· ;
· ;
· ;
·
Приближенная раскраска по Ершову:
Алгоритм строится на стягивании несмежных вершин в одну, при этом в результате стягивания ребра стянутых вершин объединяются. Процесс стягивания производится до тех пор пока не будет достигнут полный граф. Вершины результирующего графа, состоящие из нескольких вершин исходного графа, раскрашиваются в один цвет.
Алгоритм Ершова дает лишь оценочную раскраску графа, а полученное число красок является оценкой хроматического числа сверху.
Пример.
15. Машина Тьюринга, ее структура и свойства. Проблема остановки МТ.
Алгоритм– точное предписание о выполнении в некотором порядке системы операций, определяющихпроцесс перехода от исходных данных к искомому результату для решения всех задач некоторого типа.
Свойства:
1. Определенность–точность, не оставляющая место произволу;
2. Массовость – применимость для любых допустимых исходных данных;
3. Результативность– гарантия результата для любых допустимых данных;
4. Элементарностьшагов.
Формальное описание алгоритмов былонеобходимо, т.к.:
1. было необходимо обоснование существания проблем, для которых не существует алгоритма;
2. было необходимо выявить конечность алгоритма, элементарные шаги;
3. были попытки создать универсальный алгоритм;
4. возникла необходимость рассматривать алгоритм как математический объект.
Машина Тьюринга - абстрактная (воображаемая) "вычислительная машина" некоторого точно охарактеризованного типа, дающая пригодное для целей математического рассмотрения уточнение общего интуитивного представления об алгоритме.
Тезис Тьюринга - любой алгоритм можно преобразовать в машину Тьюринга.
Структура машины Тьюринга.
1. Бесконечная лента, разделенная на ячейки, в которых записаны символы внешнего алфавита Выделяют два специальных символа - пустой символ и символ начала строки.
2. Механическое устройство, способное перемещаться относительно ленты (вправо, влево, стоять на месте).
3. Управляющая головка - некоторое устройство, способное считывать значение ячейки и записывать новое.
4. Выделенная ячейка памяти, содержащая сведения о внутреннем состоянии машины – символа из внутреннего алфавита . Выделяют для специальных символа - начальное и заключительное состояния.
5. Функциональная схема – область памяти с программой, содержащие инструкции вида: –если машина находится в состоянии , а на ленте находится символ , то записать на ленту , сделать шаг влево и перейти в состояние .
Проблема называется алгоритмически неразрешимой, если для нее невозможно построить алгоритм.
Теорема. Задача об остановке машины Тьюринга на произвольном входном слове алгоритмически неразрешима.
Будем вести доказательство от противного.
Пусть – машина Тьюринга, – ее код, t- начальное слово.
Предположим, что существует машина , решающая проблемы остановки машины . На ленте машины перед запуском записано кодмашины и начальное слово t.Машина работает и печатает «+» если машины останавливается, и «-» в противном случае.
Если предположение верно в общем смысле, то и в частном тоже. Пусть .Машину получим следующим образом: сначала копирует на ленту в прямом порядке, а потом работает как машина .
Теперь преобразуем машину в машину , которая работает так же как и машина вплоть до остановки машины , но если при слове машина печатает «+» и останавливается, то машина не останавливается, а двигается по ленте неограниченно вправо. А если машина печатает «-», то Fостанавливается.Итак, машина не останавливается, если останавливается и машина останавливается, если машина не останавливается.
Пусть теперь . Тогда F – самоанализируюая машина, в качестве входного слова ее же код. Тогда машина остановится, если машина не остановится, и машина не остановится, если машина остановится. Противоречие задача алгоритмически неразрешима.