Нормальні Алгоритми Маркова. Побудова алгоритмів з алгоритмів. » Українські реферати
Теми рефератів
Авіація та космонавтика Банківська справа Безпека життєдіяльності Біографії Біологія Біологія і хімія Біржова справа Ботаніка та сільське гос-во Бухгалтерський облік і аудит Військова кафедра Географія
Геодезія Геологія Держава та право Журналістика Видавнича справа та поліграфія Іноземна мова Інформатика Інформатика, програмування Історія Історія техніки Комунікації і зв'язок Краєзнавство та етнографія Короткий зміст творів Кулінарія Культура та мистецтво Культурологія Зарубіжна література Російська мова Маркетинг Математика Медицина, здоров'я Медичні науки Міжнародні відносини Менеджмент Москвоведение Музика Податки, оподаткування Наука і техніка Решта реферати Педагогіка Політологія Право Право, юриспруденція Промисловість, виробництво Психологія Педагогіка Радіоелектроніка Реклама Релігія і міфологія Сексологія Соціологія Будівництво Митна система Технологія Транспорт Фізика Фізкультура і спорт Філософія Фінансові науки Хімія Екологія Економіка Економіко-математичне моделювання Етика Юриспруденція Мовознавство Мовознавство, філологія Контакти
Українські реферати та твори » Математика » Нормальні Алгоритми Маркова. Побудова алгоритмів з алгоритмів.

Реферат Нормальні Алгоритми Маркова. Побудова алгоритмів з алгоритмів.

Категория: Математика

Нормальні Алгоритми Маркова. Побудова алгоритмів з алгоритмів.

У 1956 році вітчизняним математиком А.А. Марковим було запропоновано нове уточнення поняття алгоритму, яке пізніше було названо його ім'ям.

У цьому уточненні виділені нами 7 параметрів були визначені таким чином:

Сукупність початкових даних - слова в алфавіті S;

Сукупність можливих результатів - слова в алфавіті W;

Сукупність можливих проміжних результатів - слова в алфавіті

Р = SWV, де V - алфавіт службових допоміжних символів.

Дії:

Дії мають вигляд або a В® g, або a a g, де a, g ГЋP * , де

P * - безліч слів над алфавітом Р, і називається правилом підстановки. Сенс цього правила полягає в тому, що оброблюваний слово w є видимим зліва направо і шукається входження в нього слова a.

Определеніе.3.1. Слово a називається входженням в слово w, якщо існують такі слова b і n над тим же алфавітом, що і a і w, для яких вірно: w = ban.

Якщо входження a в w знайдено, то слово a замінюється на слово g.

Всі правила постановки упорядковуються. Спочатку шукається входження для першого правила підстановки. Якщо воно знайдено, то відбувається підстановка і преобразуемое слово знову проглядається зліва направо у пошуках входження. Якщо входження для першого правила не знайдено, то шукається входження для другого правила і т.д. Якщо входження знайдено для i-го правила підстановки, то відбувається підстановка, і перегляд правил починається з першого, а слово проглядається спочатку і зліва направо.

Вся сукупність правил підстановки називається схемою алгоритму.

Правило початку - проглядання правил завжди починається з першого.

Правило закінчення - виконання алгоритму закінчується, якщо:

було застосовано правило підстановки виду aag,

не застосовно жодне правило підстановки зі схеми алгоритму.

7. Правило розміщення результату - слово, отримане після закінчення виконання алгоритму.

Розглянемо приклад 1 з лекції 2:

побудувати алгоритм для обчислення

U (n) = n +1;

S = {0,1,2,3,4,5,6,7,8,9}; S = W; V = {*, +}.

Cхема цього НАМ показана на малюнку 3.1.

переганяти службовий символ * в кінець слова n, щоб відзначити останню цифру молодших розрядів.

Збільшуємо на одиницю, починаючи з цифр молодших розрядів.

Вводимо службовий символ * в слово, щоб їм відзначити останню цифру в слові.

Рис.3.1. Схема НАМ для обчислення U 1 (n) = n +1

Неважко зміркувати, що складність цього алгоритму, виражена в кількості виконаних правил підстановки, буде дорівнює:

(k +1) + (l +1),

де k - кількість цифр в n, l - кількість 9, які були збільшені на 1.

Але в будь-якому випадку складність НАМ для U 1 (n) більше складності Машини Тюрінга для цієї ж функції, яка дорівнювала k +1.

Зверніть увагу, що у НАМ порядок слідування правил підстановки в схемі алгоритму істотно впливає на результат, в той час як для МТ він не суттєво.

Побудуємо НАМ для прикладу 2 з лекції 2:

побудувати алгоритм для обчислення

U 2 ((n) 1 ) = (n-1) 1

Отже, S = {|}; W = S; V = Г†, тобто порожньо.

| a

Складність цього алгоритму рівна 1, у той час як складність алгоритму для Машини Тюрінга дорівнювала n.

Тепер побудуємо НАМ для прикладу 3 з лекції 2:

побудувати алгоритм для обчислення

U 3 ((n) 1 ) = (n) 10

S = {|}; W = {0,1,2,3,4,5,6,7,8,9}; V = Г†

Схема цього алгоритму приведена на малюнку 3.2.

1 | В® 2

2 | В® 3

3 | В® 4

4 | В® 5

5 | В® 6

6 | В® 7

7 | В® 8

8 | В® 9

9 | В® | 0

| 0 В® 10

0 | В® 1

| В® 0 |

Рис. 3.2. Схема НАМ для обчислення U 3 ((n) 1 ) = (n) 10.

Складність цього НАМ буде n + [log 10 n], що істотно менше складності для Машини Тюрінга, обчислює цю функцію, яка дорівнювала n 2 + [log 10 n (log 10 n +1)].

Реалізацію функції U 4 порівняння двох цілих чисел залишаємо читачу як вправи.

Зауваження: початкове слово треба задати в формі *

Для нормальних алгоритмів Маркова справедлива теза, аналогічний тези Тьюринга.

Теза Маркова: Для будь інтуїтивно обчислюваною функції існує алгоритм, її обчислює.

Побудова алгоритмів з алгоритмів.

Дотепер, будуючи ту чи іншу МТ, або НАМ ми кожного разу всі робили наново. Природно поставити запитання, а чи не можна при побудові, наприклад, нової МТ користуватися вже побудованою раніше МТ.

Наприклад, МТ 3 з прикладу 3

U 3 ((n) 1 ) = (n) 10

по суті є належним чином об'єднані МТ для U 1 (n) = n +1 і U 2 ((n) 1 ) = (n-1) 1 .

Аналогічне питання можна сформулювати для НАМ. Іншими словами чи можна акумулювати знання у формі алгоритмів так, щоб з них можна було будувати інші алгоритми.

Ми розглянемо цю проблему стосовно до МТ. Однак всі сформульовані нами твердження будуть справедливі і для НАМ і для інших еквівалентних уточнень поняття алгоритму. Еквівалент уточнень поняття алгоритму ми розглянемо пізніше.

Определеніе.3.2. Будемо говорити, що МТ 1 можна ефективно побудувати з МТ 2 і МТ 3 якщо існує алгоритм, який дозволяє, маючи програму для МТ 2 і МТ 3 , побудувати програму для МТ 3 .

Определение.3.3.Последовательной композицією МТ А і В називається така МТ З, що

область застосовності МТ А і С збігаються;

C (a) = B (A (a)).

Іншими словами, застосування З до слова a дає такий же результат, як послідовне застосування до цього ж слова спочатку А, а потім до результату застосування А - В.

Послідовну композицію МТ А і МТ В будемо позначати АoВ.

Теорема 3.1. Нехай дано МТ А і В, такі, що В застосовна до результатів роботи А і Q A Q B = Г†.

Тоді можна ефективно побудувати МТ З таку, що С = АoВ.

Доказ.

В якості алфавіту даних і безлічі станів для МТ З візьмемо об'єднання алфавітів даних і множин станів для А і В, тобто

D C = D A D В , Q C = Q A Q B

У програмі для А всі правила ap В® b! w, де a, bГЋD A *, wГЋ {Л, П, Н} замінимо на ap В® bq o B w, де q o B ГЋ Q B - початковий стан для В. Це забезпечить включення У в той момент, коли А свою роботу закінчила і не раніше, тому Q A Q B = Г†.

Що і т.д.

Таблична запис програми для З показана на малюнку 3.3.


Рис 3.3 Структура табличній записи програм для Машини З.

Определеніе3.4. Паралельної композицією Машин Тюрінга А і В назвемо таку Машину С, для якої:

D C = D A D B

Q C = Q A Q B

C (a | | b) = A (a | | b) В° B = B (a | | b) В° A = A (a) | | B (b).

З цього визначення видно, що порядок застосування МТ А і ...


Страница 1 из 2Следующая страница

Друкувати реферат
Замовити реферат
Товары
Наверх Зворотнiй зв'язок