slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Вычислительная сложность Классы сложности P и NP . PowerPoint Presentation
Download Presentation
Вычислительная сложность Классы сложности P и NP .

Loading in 2 Seconds...

play fullscreen
1 / 20

Вычислительная сложность Классы сложности P и NP . - PowerPoint PPT Presentation


  • 214 Views
  • Uploaded on

Вычислительная сложность Классы сложности P и NP. Сергей Казаков, аспирант каф. КТ, НИУ ИТМО. Как все начиналось…. Начало 1960-х годов Alan Cobham , 1964 Jack Edmonds, 1965 Они ввели сложностные классы. Разрешимые и неразрешимые задачи. Проблема останова – неразрешимая задача

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Вычислительная сложность Классы сложности P и NP .' - cooper-jarvis


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide1

Вычислительная сложностьКлассы сложности P и NP.

Сергей Казаков,

аспирант каф. КТ, НИУ ИТМО

slide2
Как все начиналось…
  • Начало 1960-х годов
  • Alan Cobham, 1964
  • Jack Edmonds, 1965
  • Они ввели сложностные классы
slide3
Разрешимые и неразрешимые задачи
  • Проблема останова – неразрешимая задача
  • Доказательство – от противного.
slide4
Сложностный класс P
  • Класс P— класс задач, разрешимых на детерминированной машине Тьюринга за полиномиальное время
slide5
Класс P. Примеры-1
  • Посчитать сумму чисел
  • Посчитать произведение чисел
  • Проверка простоты числа
  • Сортировка массива
  • Определение связности графа
  • Эйлеров путь/цикл
slide6
Эйлеров путь/цикл in P
  • Путь, проходящий по всем ребрам графа, и при этом только по одному разу
  • Граф Кёнигсбергских мостов:
  • Эйлер (1735 год):

цикл существует  граф связный и все вершины четной степени

slide8
Эйлеров цикл

procedurefind_all_cycles (v):

  • пока есть цикл, проходящий через v
    • находим его
    • добавляем все вершины цикла к ответу
    • удаляем цикл из графа
  • идем по вершинам из ответа и для каждой рекурсивно вызываем себя find_all_cycles(nv)
  • Working Time – O(M), M – число ребер
slide9
Сложностный класс NP
  • Класс NP— класс задач, у которых есть сертификат решения, который можно быстро (за полином) проверить на машине Тьюринга.
  • Класс NP — класс задач, которые можно быстро решить (за полином) на недетерминированной машине Тьюринга.
n p 1
Класс NP. Примеры-1
  • Задача выполнимости булевых форму (SAT)
  • Определение наличия в графе гамильтонова цикла
  • Задача о коммивояжёре
  • Задача поиска вершинного покрытия графа
slide11
Гамильтонов путь/цикл
  • Гамильтонов путь— путь в графе, содержащий каждую вершину графа ровно один раз
  • Гамильтонов цикл – гамильтонов путь, начальная и конечная вершина которого совпадают
slide13
Задача коммивояжёра

Задача коммивояжёра (англ. Travellingsalesmanproblem, TSP)

np np
NP-трудные и NP-полные задачи
  • Сведение по Карпу:

P1 сводится к P2  f: (pP1  f(p)P2)

  • NP-трудность:

P1 – NP-трудная задача, если

P2NP, P2 сводится к P1

  • NP-полная задача: из NP и NP-трудная
np np1
NP-трудные и NP-полные задачи
  • Стивен Кук (1971 год):
    • термин «NP-полная задача»
    • задача SAT была первой задачей, для которой доказывалось это свойство.
  • Определение наличия в графе гамильтонова цикла – NP-полная
  • Задача о коммивояжёре –
    • с оптимизацией – NP-трудная
    • не длиннее k – NP-полная
slide17
Приближенные решения
  • Многие задачи, представляющие практический интерес – NP-полные
  • Для них маловероятно найти точный алгоритм с полиномиальным временем работы
  • При небольшом объеме входных данных может подойти алгоритм, время работы которого выражается показательной функцией
  • Иногда удается выделить важные частные случаи, разрешимые в течение полиномиального времени
slide18
Приближенные решения
  • Можно найти в течение полиномиального времени решение, близкое к оптимальному.
  • Алгоритм, возвращающий решения, близкие к оптимальным, называется приближенным алгоритмом.
slide19
Методы решения NP-полных задач
  • Приближенные и эвристические методы – применение эвристик для выбора элементов решения.
  • Псевдо полиномиальные алгоритмы – подкласс динамического программирования.
  • Метод локальных улучшений – поиск более оптимального решения в окрестности некоторого текущего решения.
  • Метод ветвей и границ - отбрасывание заведомо неоптимальных решений целыми классами в соответствии с некоторой оценкой.
  • Метод случайного поиска – представление выбора последовательностью случайных выборов.