Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » (см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010)

(см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010) ((см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010).pdf), страница 3

PDF-файл (см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010) ((см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010).pdf), страница 3 Теория игр и исследование операций (64278): Книга - 11 семестр (3 семестр магистратуры)(см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010) ((см. сложность) Элементы теории сложности алгоритмов и вычислений. Х2020-08-25СтудИзба

Описание файла

PDF-файл из архива "(см. сложность) Элементы теории сложности алгоритмов и вычислений. Хахаян (2010).pdf", который расположен в категории "". Всё это находится в предмете "теория игр и исследование операций" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 3 страницы из PDF

е. объем входных данных,требуемых для описания задачи. Такой подход удобен, т.к. вдальнейшемсравнительнаясложностьзадачбудетоцениваться через их размеры. Часто размер задачиизмеряется неформально. В задаче о коммивояжере для этойцели обычно используется число городов. Однако в задаче с тгородами кроме номеров этих городов на объем входнойинформации влияют также т(т—1)/2 величин, определяющихрасстояния между городами.

Если нам предстоит иметь дело свременными характеристиками в точной математическойпостановке, то мы должны так определить размер задачи,чтобы все эти факторы были учтены.Для этого обратим внимание на то, что описаниеиндивидуальной задачи, которое мы даем в терминах входа,можно рассматривать как конечную цепочку (слово)символов, выбранных из конечного входного алфавита.Существуютразличныепутиописанияданнойиндивидуальной задачи.

Предположим, что заранее выбраннекоторый определенный способ и что с каждой массовойзадачей связана некоторая фиксированная схема кодирования,котораяотображаетиндивидуальныезадачивсоответствующие цепочки символов. Входная длинаиндивидуальной задачи I из П определяется как числосимволов в цепочке, полученной применением к задаче Iсхемы кодирования для массовой задачи П. Именно это число,т. е. входная длина, и используется в качестве формальнойхарактеристики размера индивидуальной задачи.Например,различныеконкретныезадачиокоммивояжере можно описать с помощью алфавита {с, [, ], /,О, 1, 2, 3, 4, 5, 6, 7, 8, 9}, при этом предыдущий пример будетзакодированввидетакойцепочкисимволов:с [1] с [2] е [3] с [4]//10/5/9//6/9//3_ Кодирование индивидуальныхзадач аналогично.

Данная кодирующая схема для задачи окоммивояжере дает входную длину 32.Временная сложность алгоритма отражает требующиесядля его работы затраты времени. Это функция, котораякаждой входной длине п ставит в соответствие максимальное(по всем индивидуальным задачам данной длины) время,затрачиваемое алгоритмом на решение индивидуальных задачэтой длины.Эта функция не будет полностью определена до тех пор,пока не зафиксирована схема кодирования, определяющаявходную длину индивидуальной задачи и не выбрановычислительное устройство (или его модель), определяющеевремя работы. Однако, как будет видно из дальнейшего,подобные детали окажут незначительное влияние на различиямежду классами, возникающими в теории NP-полных задач.Поэтомувдальнейшемчитателюрекомендуетсязафиксировать мысленно какую-либо конкретную схемукодирования для каждой задачи, выбрать некотороеконкретное вычислительное устройство или его модель ирассматривать затем временную сложность алгоритмов всоответствии с получающимися входнымисоответствующими затратами времени.длинамииПОЛИНОМИАЛЬНЫЕ АЛГОРИТМЫ ИТРУДНОРЕШАЕМЫЕ ЗАДАЧИРазные алгоритмы имеют различную временнуюсложность и выяснение того, какие алгоритмы достаточноэффективны, а какие совершенно неэффективны, всегда будетзависеть от конкретной ситуации.

Однако теоретики,занимающиеся разработкой и анализомалгоритмов,предлагают для сравнения эффективности алгоритмов одинпростой подход, позволяющий существенно прояснитьситуацию. Речь идет о различии между полиномиальными иэкспоненциальными алгоритмами.Будем говорить, что функция f{n) есть 0(g(n)), еслисуществует константа с, такая, что \f[n)\ < c|g(n)| для всехзначений п>0.

Полиномиальным алгоритмом (или алгоритмомполиномиальной временной сложности) называется алгоритм,у которого временная сложность равна 0(р(п)), где р(п) полином, а п - входная длина. Те алгоритмы, временнаясложность которых не поддается подобной оценке,называются экспоненциальными (это определение включает итакие функции, как nlogn, которые хотя и не являютсяполиномиальными, но и не считаются экспоненциальными).Различие между двумя указанными типами алгоритмовстановится особенно заметным при решении задач большогоразмера. Таблица на рис. 1.2 позволяет сравнить скоростиростанесколькихтипичныхполиномиальныхиэкспоненциальныхфункций(обратитевниманиеначрезвычайно быстрый рост двух приведённых экспонент).Р язм ерпФ унт ря1рслнпШелт т ет ип„1я5п*г*3*100,00001сек20304050600,000020,0000.50,000040,00005ССКШсек0,00006т*0,00160,0025Ц0036№(ЩcmССК0,00040,000!е&сшОДОМотсск0,1сек0,00!ш'0,00090,02?0,064с екахт3,224,3сексекаш0,216с сксек1,75,213,0м инлш нм ин1.017,912,735,7366CSKМЧИднейлетст олет ий38552x10*«годен»?апат ий0,05953CSXли т6,5летат т т ий1,3x101»Рис.

1,2. Сравнение нескольких полиномиальных к акспонеициалышх функ­ций временной сложности.Различиемеждуполиномиальными иэкспоненциальными алгоритмами проявляется еще болееубедительно, если проанализировать влияние увеличениябыстродействия ЭВМ на время работы алгоритмов. Рис. 1.3показывает, насколько увеличатся размеры задач, решаемыхза один час машинного времени, если, благодарясовершенствованию технологии, быстродействие ЭВМвозрастет в 100 или 1000 раз по сравнению с современными(на 1980 год) машинами. Заметим, что для функции fin) = 2"увеличение скорости вычислений в 1000 раз приводит лишь ктому, что размер наибольшей задачи, разрешимой за один час,возрастет только на 10, в то время как для функции fin) = п~этот размер возрастет почти в 4 раза.Ромеры наибольшей задачи,разрешимой за един vetoФутция(ременнойметжсяшИисе$ремен/шх Ha sen, t m разЗВНболе» быстрыхНа т п, б \ т разSexes йитрыхЯ:Н<гсо мГОООя*Hi10 №31,6 №«3№4,64 Н,Ю Нзп*Mi« А2яHiМу+ 6,64iV j+9,973яHi№ * * ,1 9№ * 6,393.9S №Рис.

1.3. Влияние технического совершепствопаипп ЭВМ ns полиномам»*ные и «кспонеациальные алгоритмы.Этитаблицыдемонстрируюттотфакт,чтополиномиальные алгоритмы обычно считаются болеепредпочтительными по сравнению с экспоненциальными.Такая точка зрения, различающая, с одной стороны,полиномиальные алгоритмы,а с другой стороны,экспоненциальные, и будет являться отправным пунктом внашем определении труднорешаемых задач и теории NPполных задач.Большинство экспоненциальных алгоритмов есть простоварианты полного перебора, в то время как полиномиальныеалгоритмы обычно можно построить Лишь тогда, когдаудается более глубоко проникнуть в суть решаемой задачи(см.

пример 3 выше). Имеется широко распространенноесоглашение, согласно которому задача не считается хорошорешаемой до тех пор, пока для нее не полученполиномиальный алгоритм. Поэтому мы будем называтьзадачу труднорешаемой, если для ее решения не существуетполиномиального алгоритма.Конечно,этоформальноеопределениеследуетрассматривать только как одну из возможных трактовокпонятиятруднорешаемаязадача.

Различиемеждуэффективными(полиномиальными) алгоритмамиинеэффективными (экспоненциальными) алгоритмами можетпринять иной характер, когда размеры решаемых задачневелики. Функция J[n)=2n ведет себя лучше, чем /(«) = п прип < 20 по отношению к размерам наибольшей задачи,разрешимой за 1 час. Известны некоторые экспоненциальныеалгоритмы, хорошо зарекомендовавшие себя на практике.Дело в том, что временная сложность определена нами какмера поведения алгоритма в наихудшем случае, и тот факт,что какой-то алгоритм имеет временную сложность порядка2", означает только, что решение по крайней мере однойиндивидуальной задачи размера п требует времени порядка 2".Может оказаться, что большинство индивидуальных задачтребует для своего решения значительно меньших затратвремени, и такого рода ситуация имеет место для несколькиххорошо известных алгоритмов.

Было установлено, чтосимплекс-методдлярешениязадачлинейногопрограммирования имеет экспоненциальную временнуюсложность, но в то же время многочисленные свидетельстваподтверждают, что этот метод хорошо работает на практике.Другой пример: алгоритмы ветвей и границ столь успешнорешают задачу о рюкзаке, что многие исследователи считаютэту задачу хорошо решаемой, хотя эти алгоритмы имеютэкспоненциальную временную сложность.Ноподобныепримерыоченьредки.Хотяэкспоненциальные алгоритмы известны для многих задач,немногие из них считаются приемлемыми для практическихцелей.

Однако исследователи не отказались от попыток найтидля соответствующих задач полиномиальные алгоритмы. Самфакт успешного применения экспоненциальных алгоритмовдавал основание предположить, что более глубокое ихисследование может привести к дальнейшему улучшениюметодов. В настоящее время не получено удовлетворительныхобъяснений, почему эти алгоритмы работают успешно, и неизвестны методы, позволяющие заранее прогнозироватьхорошую работу того или иного экспоненциальногоалгоритма в практической ситуации (возможно, что даннаяситуация уже исследована более подробно).С другой стороны, полиномиальные алгоритмы частопозволяют делать такого рода прогнозы, посколькуполиномиальные функции значительно более адекватнооценивают время работы алгоритмов. Хотя алгоритмы,имеющие временную сложность типа п,0° или 1099п , не могутсчитаться эффективными с практической точки зрения,естественно возникающие полиномиальные задачи обычнотребуют для своего решения времени порядка п2 или п ,причем коэффициенты при старших членах полиномов неслишком велики.

Такие алгоритмы можно считатьэффективными, и именно это свойство заставляет отдаватьпредпочтение полиномиальным алгоритмам как средствурешения задач.Определение трудно решаемой задачи создает базу длятеории, обладающей значительной общностью и большимивозможностями.Понятиетруднорешаемойзадачиоказывается по существу независимым от конкретной схемыкодирования и модели ЭВМ, используемых при определениивременной сложности.Схема'квдиройШ1Цента еом(ш (риф)ДлинаШтт(ершикupettyV{l)V[2]VMV{4KV{llVf2])(Vi2lVB3)36Стаж'<же№M2}){VWV(3})M2})()24СтремтюкщиищФшИ 0100/1010/0010/0000Рис.

1.4, Описания графа G■==(К, Я), где У «■»ц*Hs. гз}}, яри трех разам/. схемах кодирования.19в,},Рассмотрим сначала схемы кодирования. Предположим,что решаемая задача определена на графе G = (V, Е), где Vмножество вершин, Е - множество ребер и каждое ребропонимается как неупорядоченная пара вершин. Условия этойзадачи могут быть описаны (см. рис. 1.4) либо простосписками всех вершин и ребер, либо с помощью матрицыинциденций графа, либо составлением для каждого узласписка всех узлов, имеющих с данным общее ребро (списки«соседей»).

Эти схемы кодирования для одного и того жеграфа могут дать входы разной длины. Однако легкопроверить (см. рис. 1.5), что получаемые входы отличаютсядруг от друга не более чем полиномиальным образомСхема хсИщхймийШ ш кт ниЛСписок ст ЬИМя/п&щв щ ш кнцниН инт щ т+ Ше2v + 8с+с - 18 щ /т щенка4с + 10с + {c+leHlotovi+ 8е + 2e>[logi„v]и1+ 1»- 1Put. 1.5. Общие оценки длины входа для трех схем кодирования графа0**{Vt Е), представленных иа рис. 1,4, где fУj*=*о, ]£(>=(?. Поскольку£ < о-, эти оценки тошыазют, что длины входа отличаются друг от другане более чем паэдкомнзяышм образом (|л) обозначает наименьшее целоечисло, не меньшее, чем л).(проверьте!), т.е.

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