Курсовая работа: Генератор псевдотекстов
1. Введение
2. Алгоритмы генерации псевдотекстов
2.1. Генераторы, основанные на псевдослучайном выборе букв или слов
2.1.1. Генератор с равными вероятностями всех букв
2.1.2. Генератор с равными вероятностями всех слов
2.1.3. Генератор с различными вероятностями всех букв
2.1.4. Генератор с более сложным анализом вероятностей
2.2. Генератор, использующий SIMP-таблицы
3. Реализация алгоритмов генерации псевдотекстов
3.1. Генератор псевдотекста со случайным выбором букв без учёта вероятностей их появления в текстах на русском языке
3.2. Генератор псевдотекста со случайным выбором слов без учёта вероятностей их появления втекстах на русском языке
3.3. Генератор псевдотекста со случайным выбором букв с учётом вероятностей их появления в текстах на русском языке
3.4. Генератор псевдотекста, анализирующий вероятность появления в тексте буквы после четырёх букв
3.5. Генератор псевдотекста с использованием SIMP-таблиц
4. Заключение
5. Библиография
1. Введение
В данной курсовой работе исследуются алгоритмы генерации псевдотекстов. Псевдотекст - это последовательность слов, пробелов и знаков препинания. Слова, из которых состоит псевдотекст, совсем необязательно существуют в реальном языке, так же как и сам псевдотекст может вовсе не иметь смысла. Псевдотексты играют огромную роль в жизни современного общества. Многие композиторы используют генераторы псевдотекстов для создания стихов к написанной ими музыке. Сама музыка также может быть сгенерирована подобными генераторами. Многие газетные и журнальные статьи тоже генерируются компьютерами. При этом используются профессиональные генераторы псевдотекстов, генерирующие текст, мало отличимый от текста, созданного человеком. В связи с вышесказанным, данная курсовая работа является очень актуальной.
Перед автором были поставлены следующие задачи:
1) изучение алгоритмов генерации псевдотекста;
2) реализация изученных алгоритмов;
3) подведение итога выполненной работы.
2. Алгоритмы генерации псевдотекстов
В ходе выполнения курсовой работы были исследованы некоторые алгоритмы генерации псевдотекстов. Они различаются как по сложности, так и по характеристикам псевдотекста, получаемого с их помощью. Генераторы псевдотекста можно условно разделить на две категории:
1) генераторы, генерирующие псевдотекст последовательно, элемент за элементом. В качестве элемента может выступать буква или слово. Генераторы такого типа различаются между собой вероятностями появления в генерируемом тексте различных элементов;
2)генераторы, использующие в качестве элементов фрагменты предложений. Эти фрагменты состоят из одного или более слов и разделяются пробелами.
2.1 Генераторы, основанные на псевдослучайном выборе букв или слов
В ходе выполнения курсовой работы были исследованы 4 алгоритма генерации псевдотекста, основанные на псевдослучайном выборе букв или слов.
2.1.1 Генератор с равными вероятностями всех букв
Можно создать генератор, генерирующий текст с равными вероятностями появления каждой буквы. Из заданного алфавита выбирается одна из букв и помещается в выходную строку. Затем выбирается следующая буква и тоже помещается в выходную строку. Процесс продолжается, пока не будет получен необходимый объём псевдотекста. Вероятности появления в сгенерированном тексте каждой буквы равны 1 / N, где N - размер алфавита. Пример текста (200 букв), сгенерированного генератором такого типа, приведён ниже. В качестве алфавита использовались строчные буквы русского алфавита и пробел.
гъ цчцёэпетйащадмп жжцъооойчшмккхойбфззбфмяджетёелшсфвры
сджйдгщпёмйщярыыуфщехфвщтаоёюхвбвншмьёжьгкманмсшюпхыжяяпдёчссвёншьшзоеюьмвцйвзюторйьэкзомбгежфмъхьгявмъыихёюькаыбаянсшоасуъжяыътъигзё во
2.1.2 Генератор с равными вероятностями всех слов
Аналогично можно построить генератор, который псевдослучайным образом, с одинаковой вероятностью, генерирует не буквы, а слова. Исходными данными для такого генератора является список используемых слов. Пример текста (20 слов), сгенерированного генератором такого типа, приведён ниже. В качестве словаря использовался словарь операционной системы Linux (/usr/dict/words, с русскими словами, объём словаря порядка 32000 слов).
--> ЧИТАТЬ ПОЛНОСТЬЮ <--