Главная » Просмотр файлов » Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1)

Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1) (1119452), страница 57

Файл №1119452 Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1) (Д. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1)) 57 страницаД. Кнут - Искусство программирования том 2 (3-е издание) - 2001 (Часть 1) (1119452) страница 572019-05-09СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

[НМУЗ] (Д, В, Лавленд (П. ЪЧ. Ьате!апд).) Покажите, что если двоичная последовательность (Х„) Ы-случайна н если (е ) — любая исчисляемая последовательность соответственно с определением В4, то Рг(Х,„= 1) > -' и ~г(Х,„= 1) < а. 36. [Над] Пусть (Х ) — двоичная последовательность, "случайная" согласно определению Вб. Покажяте, что [О .. 1)-последовательность (Ьт„), определенная в двоичной системе счисления по схеме Пе = (О Хо)а, Ьта = (О.ХаХа)м Уг = (О ХаХаХа)а, Па = (О.ХеХтХаХэ)а, случайна и смысле определения Вб, ЗТ. [МЮ7] (Д, Копперсмит (1). Соррегзш11Ь).) Постройте последовательность„удовлетворяющую определению В4, но не определению Вб.

[Указание. Рассмотрите преобразование Ь'о, Ьта, Ьт», Ьтэ, ... псгинно случайной последовательности.» 33. [М49] (А. Н. Колмогоров.) Пусть заданы К, и и с Чему равно иаименыпее число алгоритмов в множестве А, таках, чтобы не существовали (п,е)-случайные двоичные последовательности длины Ю по отношению к Ау (Если нельзя задать точные формулы, можно ли найти асимптотические формулы'? Суть этой проблемы — обнаружить, как точная грань (37) становится "наилучшей возможной".) 38. [ИЩо] (В. М.

Шмидт (%, М, бсЬшЫС),) Пусть ӄ— [0..1)-последовательность и пусть и„(о) — число таких неотрицательных целых чисел 1 < и, что О < Ц < и. Докажите, что существует такая положительная постоянная с, что для любого йг и любой [О .. 1)-последовательности (У„) мы получим ]ьь(и) — яи[ > с1п р1 для некоторых и и и при 0 < и < Ф, 0 < в < 1. (Другимн словами, никакая [О, . 1)-последовательность не может бмть слишком равнораспределена.) 40.

[М38] Завершите доказательство леммы Р1. 41. [М31] В лемме Р2 показано существование критерия прогноза, но при доказательстве предполагается существование подходящего Ь без объяснения, как конструктивно находить Ь из А. Покажите, что любой алгоритм А можно обратить в алгоритм А' с У(А') < Т(А) + О(д'), который предсказывает Вл по В~... Вл 1 с вероятностью, по крайней мере равной -' + (Р(А, Я) — Р(А, 3л))/Ф на любом сямметричном сдвиге Ф-источника Я. ь 42.

[М38] (Пепариал истееисимосшь,) а) Пусть Хм ..., Х вЂ” случайные величины со средним, равным д = ЕХ1, и дисперсией о~ = ЕХ1 — (ЕХ1) при 1 < у < и. Докажите неравенство Чебышева Рг((Х1 + + Մ— пд) > спи~) < 1/1 прн дополнительных предположениях, что Е(Х,Х ) ж (Е Х,)(ЕХ1) всякий раз, когда 1 11,7.

Ь) Пусть  — случайная двоичная матрица размера Ь х В. Докажите, что если с и с— фиксированные не равные нулю двоичные векторы размерности Ь, та сВ и с'В— независимые случайные двоичные векторы размерности Я (по молулю 2). с) Примените (а) и (Ь) к анализу алгоритма Ь, 43. [30] Кажется, точно так же тяжело найти множители любого фиксирееаииоге целого числа Влюма Ы, состоящего из В двоичных разрядов. Как найти множители серчейиоее целого числа, состоящего из В двоичных разрядов? Почему тогда теорема Р сформулирована для случайного, а не фяксированного Му ь 44.

[16] (И, Дж, Гуд (1, Л, Свод).) Может ли правильная таблица случайных чисел содержать точно «дну ошибкуу 3.6. ВЫВОДЫ В этой главк было рассмотрено довольно много тем: генерирование случайных чисел, их проверка, их видоизменение при использовании и методы получения теоретических фактов. Возможно, главным для многих читателей был вопрос "Что получено в результате всей этой теории и что такое простой добротный генератор, который можно использовать в программах в качестве надежного источника случайных чисел?". Подробные исследования в этой главе наводят на мысль, что следующая процедура позволяет получить простейший генератор случайных чисел для машинного языка болыпинства компьютеров.

В начале программы присвойте целой переменной Х некоторое значение Хе. Эта величина Х используется только для генерирования случайного числа. Как только в программе потребуется новое случайное число, положите Х < — (аЛ +е) шоот (1) и используйте новое значение Х в качестве случайной величины.

Необходимо тщательно выбрать Хе, и, с и т и разумно использовать случайные числа согласно следующим принципам. !) "Начальное" число Хо может быть выбрано произвольно. Если программа используется несколько раз и каждый раз требуются различные источники случайных чисел, то нужно присвоить Хо последнее полученное значение Х на предыдущем прогоне или, если это более удобно, присвоить Ле текущие дату и время. Чтобы снова запустить программу с такими же случайными числами (например, при отладке программы), нужно напечатать Хо, если иначе его невозможно получить. й) Число т должно быть болыпим, скажем, по крайней мере 2зе.

Возможно, удобно взять его равным размеру компьютерного слова, так как зто делает вычисление (аХ + с) шоб т вполне эффективным. В разделе 3.2,1.1 выбор т обсуждается более детально. Вычисление (аХ+ с) пюс1 т должно быть точимы без округления ошибки. й) Если т — степень 2 (т. е. если используется двоичный компьютер), выбираем а таким, чтобы а шод 8 = 5. Если т — - степень 10 (т. е. используется десятичный компьютер), выбираем а таким, чтобы а шоб 200 = 21. Одновременный выбор а и с даст гарантию, что генератор случайных чисел будет вырабатывать все т различных возможных значений Х прежде, чем они начнут повторяться (см, раздел 3.2.1.2), и гарантирует высокий "потенциал" (см. раздел 3.2.1.3). 1т) Множитель а предпочтительно выбирать между .01т и .99т, и его двоичные или десятичные цифры ие должны иметь простую регулярную структуру.

Выбирая несколько случайных констант, подобных а = 3141592621 (которые удовлетворяют обоим условиям в (й1)), почти всегда получаем достаточно хороший множитель. Дополнительная проверка, конечно, нужна, если генератор случайных чисел используется регулярно. Например, частичные отношения ие должны быть большими, ко~да для нахождения йсй а и т используется алгоритм Евклида (см. раздел З.З.З).

Множитель должен пройти спектральный критерий (раздел 3.3.4) и несколько критериев, описанных в разделе 3.3.2, прежде чем он получит сертификат качества. ч) Значение с не существенно, когда а — хороший множитель, за исключением того, что с не должно иметь общего множителя с т, когда т — размер компьютерного слова. Таким образом, можно выбрать с = 1 илн с = а. Многие используют с = 0 вместе с т = 2", но они жертвуют двумя двоичными разрядами точности и половиной начальных значений, чтобы сэкономить всего несколько наносекунд счета (см.

упр. 3.2.1.2-9). ч() Младшие значащие цифры (справа) Х не очень случайны, так что решения, основанные на числе Х, всегда должны опираться, главным образои, на старшие значащие цифры. Обычно лучше считать Х случайной дробью Х/т между О и 1, т. е. представлять себе Х с десятичной точкой слева, а не относиться к Х как к случайному целому числу между 0 и т — 1. Чтобы подсчитать случайное целое число между 0 и А — 1, нужно умножить его на А (но не делить на А; см. упр, 3.4.1 — 3) и округлить результат. чй) Важное ограничение случайности последовательности (1) обсуждалось в разделе 3.3.4, в котором показано, что "точность" при размерности 1 будет только порядка ~/т, Применяя метод Монте-Карло, необходимо использовать случайные последовательности высокой надежности.

Нх можно получить с помощью технических приемов, описанных в разделе 3.2,2. чйЦ Можно генерировать не больше т/1000 чисел, иначе последующие б);зут вести себя подобно предьсдчщим. Если т = 2зз, значит, новая схема (например, новый множитель а) должна использоваться после генерирования нескольких миллионов случайных чисел.

Комментарии, приведенные вылив, относятся, главным образом, к машинному языку программирования. Некоторые понятия прекрасно работают также на языках высокого уровня, например (1) превращается в Х=а»Х+с на языке С, если Х имеет тпп беззнаковое длинное и если т равно модулю беззнаково длинной арифметики (обычно 2ээ или 2"»). Но С не дает возможности рассматривать Х в качестве дроби, как того требует (и), если не обращаться к числам с плавающей точкой двойной точности. Поэтому для языка программирования, подобного С, часто используют другой вариант (1): выбирается простое число т, близкое к наибольшему легко вычисляемому целому числу, а полагается равным первообразному корню т и приращение с в этом случае равняется нулю. Тогда (1) может полностью выполняться простой арифметикой над числами, остающимися иежду -т н +т, так, как в упр.

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

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

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