
MLTA_dlya_vsekh (1) / Электронные лекции 2013 / лекция 5
.pdf21
5.4. Трудноразрешимые задачи
NP-полная задача П называется универсальной,
если к ней полиномиально сводится любая NP-полная задача. Выше была доказана принадлежность задачи выполнимости к.н.ф. к классу NP-полных задач.
22
Примеры NP-полных задач
Задача о полном подграфе. Граф называется
полным, если любые две его вершины соединены ребром. По заданному неориентированному графу G и
числу k требуется определить, имеется ли в G полный подграф с k вершинами.
23
Задача о вершинном покрытии. Некоторое подмножество V, содержащее k= V вершин,
образует вершинное покрытие мощности k графа G,
если для любого ребра найдется инцидентная ему вершина в подмножестве V.
По заданному графу G и числу k требуется определить, имеет ли G вершинное покрытие мощности k.
24
Задача о сложности ДНФ частичной булевой
функции. По частичной булевой функции f и числу k
необходимо установить, можно ли построить д.н.ф.
для f, содержащую не более k букв.
Трехмерное сочетание. Дано множество
M W X Y, где W,X,Y – непересекающиеся дискретные множества мощности q. Необходимо установить, что M
содержит трехмерное сочетание, т.е. подмножество
M M такое, что M =q и никакие два разных элемента M не имеют ни одной равной координаты.
25
Например, W={a,b,c}, X={d,e,f}, Y={j,h,i} и M = {(a,d,i), (a,e,i), (a,f,j), (b,e,i), (b,f,j), (c,e,h), (c,d,i)}. Данный пример имеет положительное решение: M ={(a,d,i), (b,f,j), (c,e,h)} M.
Доказано, что задача выполнимости к.н.ф сводится к задаче о полном подграфе, которая сводится к задаче о вершинном покрытии, а последняя - к задаче о сложности д.н.ф. частичной булевой функции.
26
5.5. NP-трудные задачи
Задача называется NP-трудной, если -
произвольная задача (т.е. не обязательно, что NP)
распознавания свойств, к которой сводится некоторая
NP-полная задача.
Точное решение NP-трудной (так же как и NP-
полной) задачи в общем случае может быть получено только за экспоненциальное время.
27
Поэтому решать ее переборным алгоритмом неэффективно при большом количестве вариантов перебора. Одним из подходов к решению NP-трудных задач является сокращение перебора по схеме ветвей и границ. Эта схема перебора позволяет опознать бесперспективные частичные решения, в
результате чего от дерева поиска на одном шаге отсекается целая ветвь.
28
Задача коммивояжера - одна из самых важных в теории графов. На ней испытывают все новые методы оптимизации дискретных задач.
Постановка задачи. Необходимо выйти из пункта 1,
посетить по одному разу все остальные n-1 пункта и вернуться обратно. Расстояния между всеми пунктами известны. В каком порядке следует обходить пункты,
чтобы замкнутый путь был кратчайшим?
В терминах теории графов: на взвешенном графе найти гамильтонов цикл минимальной длины.
29
Задача построения сингулярной СНФ.
Скобочной нормальной формой (СНФ) булевой функции f называется такое представление f в базисе
{&,\/, }, при котором операция инверсии применяется только к отдельным переменным.
СНФ называется сингулярной (или особенной) если никакие две подформулы, входящие в одну конъюнкцию, не содержат одинаковых переменных.
Доказано, что задача выполнимости КНФ сводится к построению для нее сингулярной СНФ.