Главная » Просмотр файлов » dzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008

dzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008 (852747), страница 95

Файл №852747 dzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008 (Введение в теорию автоматов) 95 страницаdzhon_khopkroft_radzhiv_motvani_dzheffri _ulman_vvedenie_v_teoriyu_avtomatov_yazy kov_i_vychisleniy_2008 (852747) страница 952021-10-05СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 95)

Вначале рассматривается конкретныйвопрос выполнимости булевой формулы, т.е. является ли она истинной для некоторогонабора значений ИСТИНА и ЛОЖЬ ее переменных. Эта проблема играет в теориисложности такую же роль, как Lu и ПСП для неразрешимых проблем. Вначале мы докажем “теорему Кука”, которая означает, что проблему выполнимости булевых формулнельзя разрешить за полиномиальное время. Затем покажем, как свести эту проблему комногим другим, доказывая тем самым их труднорешаемость.При изучении полиномиальной разрешимости проблем изменяется понятие сведения.Теперь уже недостаточно просто наличия алгоритма, который переводит экземпляры одной проблемы в экземпляры другой.

Алгоритм перевода сам по себе должен занимать небольше времени, чем полиномиальное, иначе сведение не позволит сделать вывод, чтодоказываемая проблема труднорешаема, даже если исходная проблема была таковой.Таким образом, в первом разделе вводится понятие “полиномиальной сводимости”(сводимости за полиномиальное время).Между выводами, которые дают теории неразрешимости и труднорешаемости,существует еще одно принципиальное различие. Доказательства неразрешимости,приведенные в главе 9, неопровержимы. Они основаны только на определении машины Тьюринга и общих математических принципах.

В отличие от них, все приво-Стр. 423димые здесь результаты о труднорешаемости проблем основаны на недоказанном,но безоговорочно принимаемом на веру предположении, которое обычно называетсяпредположением P ≠ NP.Итак, предполагается, что класс проблем, разрешимых недетерминированными МТ заполиномиальное время, содержит, по крайней мере, несколько проблем, которые нельзярешить за полиномиальное время детерминированными МТ (даже если для последних допускается более высокая степень полинома). Существуют буквально тысячи проблем, принадлежность которых данной категории практически не вызывает сомнений, посколькуони легко разрешимы с помощью НМТ с полиномиальным временем, но для их решенияне известно ни одной ДМТ (или, что то же самое, компьютерной программы) с полиномиальным временем.

Более того, важным следствием теории труднорешаемости является то,что либо все эти проблемы имеют детерминированные решения с полиномиальным временем — решения, ускользавшие от нас в течение целых столетий, либо таких решений неимеет ни одна из них, и они действительно требуют экспоненциального времени.10.1. Êëàññû P è NPВ этом разделе вводятся основные понятия теории сложности: классы P и NP проблем, разрешимых за полиномиальное время, соответственно, детерминированными инедетерминированными МТ, а также метод полиномиального сведения. Кроме того, определяется понятие “NP-полноты” — свойства, которым обладают некоторые проблемыиз NP.

Они, как минимум, так же трудны (в пределах полиномиальной зависимости времени), как любая проблема из класса NP.10.1.1. Ïðîáëåìû, ðàçðåøèìûå çà ïîëèíîìèàëüíîå âðåìÿГоворят, что машина Тьюринга M имеет временную сложность T(n) (или “время работы T(n)”), если, обрабатывая вход w длины n, M делает не более T(n) переходов и останавливается независимо от того, допущен вход или нет. Это определение применимо клюбой функции T(n), например, T(n) = 50n2 или T(n) = 3n + 5n4. Нас будет интересовать,главным образом, случай, когда T(n) является полиномом относительно n. Мы говорим,что язык L принадлежит классу P, если существует полином T(n), при котором L = L(M)для некоторой детерминированной МТ M с временной сложностью T(n).10.1.2. Ïðèìåð: àëãîðèòì ÊðóñêàëàЧитатель, вероятно, уже хорошо знаком со многими проблемами, имеющими эффективные решения.

Некоторые из них, возможно, изучались в курсе по структурам данныхи алгоритмам. Как правило, эти проблемы принадлежат классу P. Рассмотрим одну такую проблему: поиск в графе остовного дерева минимального веса (ОДМВ).424Стр. 424ÃËÀÂÀ 10. ÒÐÓÄÍÎÐÅØÀÅÌÛÅ ÏÐÎÁËÅÌÛÅñòü ëè ÷òî-òî ìåæäó ïîëèíîìàìè è ýêñïîíåíòàìè?В дальнейшем, как и во вступлении, мы часто будем действовать так, как если бывремя работы любой программы было либо полиномиальным (O(nk) для некоторогоцелого числа k), либо экспоненциальным (O(2cn) для некоторой константы c > 0)или более того.Известные из практики алгоритмы решения наиболее распространенных проблем, какправило, относятся к одной из этих категорий. Когда мы говорим об экспоненциальном времени, то всегда имеем в виду “время работы, которое больше любого полинома”. Однако существуют времена работы программ, лежащие между полиномиальным и экспоненциальным временем.Примером функции, находящейся между полиномами и экспонентами, являетсяфункция nlog n .

Эта функция с ростом n увеличивается быстрее любого полинома, поскольку log n в конце концов (при больших n) превосходит любую константу k. С дру22гой стороны, nlog 2 n = 2(log 2 n ) (если это неочевидно, возьмите логарифм обеих частей).Эта функция растет медленнее, чем 2cn при любой константе c > 0, поскольку cn вконце концов превышает (log2 n)2, какой бы малой ни была c.Неформально графы представляются как диаграммы, наподобие изображенной нарис. 10.1. У них есть узлы, которые в данном примере графа пронумерованы 1–4, и ребра, соединяющие некоторые пары узлов. Каждое ребро имеет целочисленный вес. Остовное дерево — это подмножество ребер, с помощью которых соединены все узлы, ноциклы отсутствуют. Пример остовного дерева показан на рис. 10.1 — это три ребра, выделенные жирными линиями.

Остовное дерево минимального веса — это дерево наименьшего общего веса среди всех остовных деревьев.12115210320184Рис. 10.1. Граф, в котором остовное дерево минимальноговеса выделено жирными линиями10.1. ÊËÀÑÑÛ P È NPСтр. 425425Для нахождения ОДМВ существует хорошо известный “жадный” алгоритм, которыйназывается алгоритмом Крускала1. Опишем вкратце его основные идеи.1.Для каждого узла определяется компонент связности, который содержит этот узел иобразован с использованием ребер, выбранных до сих пор. Вначале не выбрано ниодно ребро, так что каждый узел образует отдельный компонент связности.2.Среди еще не выбранных ребер рассмотрим ребро минимального веса.

Если оно соединяет два узла, которые в данный момент принадлежат различным компонентамсвязности, то выполняется следующее:а) ребро добавляется в остовное дерево;б) связные компоненты сливаются (объединяются) путем замены номера компонента у всех узлов одного из них номером другого.Если же выбранное ребро соединяет узлы из одного и того же компонента, то это реброне принадлежит остовному дереву; его добавление привело бы к образованию цикла.Выбор ребер продолжается до тех пор, пока мы не выберем все ребра, или число ребер, выбранных в остовное дерево, не станет на единицу меньше общего числа узлов. Заметим, что в последнем случае все узлы должны принадлежать одному компоненту связности, и процесс выбора ребер можно прекратить.3.Пример 10.1.

В графе на рис. 10.1 сначала рассматривается ребро (1, 3), посколькуоно имеет минимальный вес — 10. Так как вначале 1 и 3 принадлежат разным компонентам, это ребро принимается, а узлам 1 и 3 приписывается один и тот же номер компонента, скажем, “компонент 1”. Следующее по порядку возрастания веса ребро — (2, 3) с весом 12. Поскольку 2 и 3 принадлежат разным компонентам, то это ребро принимается, и2 добавляется в “компонент 1”.

Третье ребро — (1, 2) с весом 15. Но узлы 1 и 2 уже находятся в одном компоненте, поэтому данное ребро отбрасывается, и мы переходим кчетвертому ребру — (3, 4). Поскольку 4 не содержится в “компоненте 1”, данное ребропринимается. Теперь у нас есть остовное дерево из трех ребер, и можно остановиться. †Этот алгоритм обработки графа с m узлами и e ребрами можно реализовать (с помощью компьютера, а не машины Тьюринга) за время O(m + e log e). Более простая реализация имеет e этапов. Номер компонента каждого узла хранится в некоторой таблице.Выбор ребра наименьшего веса среди оставшихся занимает время O(e), а поиск компонентов, в которых находятся узлы, связанные этим ребром, — O(m). Если эти узлы принадлежат различным компонентам, то на просмотр таблицы для объединения всех узловс соответствующими номерами нужно время O(m).

Таким образом, общее время работыэтого алгоритма — O(e(e + m)). Это время полиномиально зависит от “размера” входныхданных, в качестве которого можно неформально выбрать сумму e и m.1J. B. Kruskal Jr., “On the shortest spanning subtree of a graph and the traveling salesman problem”,Proc. AMS 7:1 (1956), pp.48–50.426Стр.

426ÃËÀÂÀ 10. ÒÐÓÄÍÎÐÅØÀÅÌÛÅ ÏÐÎÁËÅÌÛПри перенесении изложенных идей на машины Тьюринга возникают следующие вопросы.• Выход алгоритмов разрешения различных проблем может иметь много разныхформ, например, список ребер ОДМВ. Проблемы же, решаемые машинами Тьюринга, можно интерпретировать только как языки, а их выходом может бытьтолько ДА или НЕТ (допустить или отвергнуть). Например, проблему поискаОДМВ можно перефразировать так: “Для данного графа G и предельного числаW выяснить, имеет ли G остовное дерево с весом не более W?”. Может показаться, что эту проблему решить легче, чем проблему ОДМВ в знакомой нам формулировке, поскольку не нужно даже искать остовное дерево.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6367
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее