Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Домашня робота ТА 2

.docx
Скачиваний:
8
Добавлен:
22.04.2016
Размер:
94.21 Кб
Скачать

Міністерство освіти і науки України

Національний авіаційний Університет

Кафедра прикладної інформатики

Домашня робота

з дисципліни «Теорія алгоритмів»

Виконав: студент ТП-113

Односумов М.С.

Київ 2015

Домашня робота

Тема роботи: Методи розробки алгоритмів.

Мета роботи: Одержати навики застосування основних методів розробки алгоритмів

Варіант 15

Завдання

1) Основні визначення і теореми теорії рекурсивних функцій

2) Задача пошуку найкоротшого шляху між усіма парами вершин в (ор)графі, обрахувати для заданого орієнтованого графу методом Флойда:

1

8

28

2

14

20

44

15

3

18

31

9

35

7

22

5

66

Завдання 1:

Арифметичні функції, для обчислення значень яких є які-небудь алгоритми, прийнято називати обчислюваними. Обчислювані функції грають в математиці важливу роль. В той же час, якщо поняттю алгоритму тут не буде доданий точний сенс, то і само поняття обчислюваної функції виявиться декілька розпливчатим. Р. ф. вже через сам характер свого визначення виявляються обчислюваними. У відомому сенсі вірно і зворотне: є серйозні підстави вважати, що математичне по своєму характеру поняття рекурсивності є точним еквівалентом декілька розпливчатого поняття вичислімості. Пропозиція вважати поняття вичислімості співпадаючим за об'ємом з поняттям рекурсивності відома в теорії Р. ф. під назвою тези Черча по імені американського математика А. Черча, що вперше (у 30-х рр. 20 ст) сформулював і обгрунтував це пропозиція. Прийняття тези Черча дозволяє додати поняттю обчислюваної арифметичної функції точний математичний сенс і піддати це поняття вивченню за допомогою точних методів.

  Р. ф. є частковими функціями, тобто функціями, не обов'язково усюди визначеними. Щоб підкреслити цю обставину, часто як синонім використовують термін «частково рекурсивні функції». Р. ф., визначені при будь-яких значеннях аргументів, називають загальнорекурсивними функціями.

  Визначенню Р. ф. може бути додана наступна форма. Фіксується невелике число надзвичайно простих вихідних функцій, що обчислюються в згаданому вище інтуїтивному сенсі (функція, тотожно рівна нулю, функція збільшення одиниці і функції, що виділяють з системи натуральних чисел член з даним номером); фіксується невелике число операцій над функціями, що переводять обчислювані функції знову в обчислюваних (оператори підстановки, примітивної рекурсії і мінімізації). Тоді Р. ф. визначаються як такі функції, які можна отримати з початкових в результаті кінцевого числа вживань згаданих вище операцій.

  Оператор підстановки зіставляє функції f від n змінних і функціям g 1 . . ., g n від m змінних функцію h від m змінних таку, що для будь-яких натуральних чисел x 1 , .., x m

h ( x 1 , .., x m ) @ f ( g 1 ( x 1 , .., x m ) ..., g m ( x 1 , .., x m ))

(тут і нижче умовна рівність @ означає, що обидва вираження, що зв'язуються їм, осмислено одночасно і в разі свідомості мають одне і те ж значення).

  Оператор примітивної рекурсії зіставляє функціям f від n змінних і g від n + 2 змінних функцію h від n + 1 змінних таку, що для будь-яких натуральних чисел x 1 , .. .., x n , в

h ( x 1 , .., x n ,0) @ f ( x 1 , .., x n ),

h ( x 1 , .., x n , в + 1) @ g ( x 1 , .., x n , в , h ( x 1 , .., x n , в )).

  Оператор мінімізації зіставляє функції f від n змінних функцію h від n змінних таку, що для будь-яких натуральних чисел x 1 , .., x n

h ( x 1 , .., x n ) @ f ( x 1 , .., x n-1 , в )

де в таке, що f ( x 1 , .., x n-1 , в -1) визначені і відмінні від x n , а f ( x 1 , .., x n , в ) визначена і рівна x n , якщо ж в з вказаними властивостями не існує, то значення h ( x 1 , .., x n ) вважається не визначеним.

  Важливу роль в теорії Р. ф. грають так звані примітивно рекурсивні функції — Р. ф., що виходять з вихідних функцій в результаті кінцевого числа вживань одних лише операторів підстановки і примітивної рекурсії. Вони утворюють власну частину класу загальнорекурсивних функцій. Через відому теорему Кліні про нормальну форму Р. ф. можуть бути вказані такі конкретні примітивно рекурсивні функції U від однієї змінної і T n от n + 2 змінних, що для будь-якого Р. ф. j від n змінних і для будь-яких натуральних чисел x 1 . . ., x n має місце рівність j( x 1 ..., x n )@ U ( в ), де в є найменше з чисел z таких, що T n (j, x 1 ..., x n , z ) = 0 (тут j є т.з. гедельов номер функції j — число, яке ефективно будується за системою рівності, задаючою функцію j). З цієї теореми, зокрема, витікає, що для Р. ф. від п змінних може бути побудована універсальний Р. ф. від n +1 змінних, тобто такий Р. ф. Ф n , що для будь-якого Р. ф. j від n змінних і для будь-яких натуральних чисел x 1 . . ., x n має місце умовна рівність

j( x 1 . . ., x n )@ Ф n (, x 1 . . ., x n ).

  Це — один з центральних результатів загальної теорії Р. ф.

  Теорія Р. ф., будучи частиною алгоритмів теорії, є розгалуженою математичною дисципліною з власною проблематикою і з додатками в ін. розділах математики. Поняття «Р. ф.» може бути покладене в основу конструктивного визначення вихідних математичних понять. Широке вживання теорія Р. ф. знайшла в математичній логіці . Зокрема, поняття примітивне рекурсивній функції лежить в основі первинного доведення знаменитої теореми Геделя про неповноту формальної арифметики, а поняття «Р. ф.» в його повному об'ємі було використано С. К. Кліні для інтерпретації інтуїционістськой арифметики (дослідження це склало цілу епоху в області семантики ). Апарат теорії Р. ф. використовується також в теорії обчислювальних машин і програмування.

  Дослідження показали, що всі відомі уточнення загального поняття алгоритму, у тому числі Р. ф., взаємно моделюють один одного і, отже, ведуть до одного і того ж поняття обчислюваної функції. Ця обставина служить серйозним аргументом на користь тези Черча.

Завдання 2:

D0=

0

28

14

0

31

0

20

9

0

18

15

0

22

0

35

0

0

На основании матрицы D0, вычислим последовательно все элементы матрицы D1. Для этого мы используем рекуррентное соотношение di,j1=min{ di,10+ d1,j0; di,j0}. d1,11=min{d1,10+d1,10d1,10}=min{0+0; 0}=0 d1,21=min{d1,10+d1,20d1,20}=min{0+∞; ∞}=∞ d1,31=min{d1,10+d1,30d1,30}=min{0+∞; ∞}=∞ d1,41=min{d1,10+d1,40d1,40}=min{0+∞; ∞}=∞ d1,51=min{d1,10+d1,50d1,50}=min{0+∞; ∞}=∞ d1,61=min{d1,10+d1,60d1,60}=min{0+∞; ∞}=∞ d1,71=min{d1,10+d1,70d1,70}=min{0+∞; ∞}=∞ d1,81=min{d1,10+d1,80d1,80}=min{0+28; 28}=28 d2,11=min{d2,10+d1,10d2,10}=min{14+0; 14}=14 d2,21=min{d2,10+d1,20d2,20}=min{14+∞; 0}=0 d2,31=min{d2,10+d1,30d2,30}=min{14+∞; ∞}=∞ d2,41=min{d2,10+d1,40d2,40}=min{14+∞; ∞}=∞ d2,51=min{d2,10+d1,50d2,50}=min{14+∞; 31}=31 d2,61=min{d2,10+d1,60d2,60}=min{14+∞; ∞}=∞ d2,71=min{d2,10+d1,70d2,70}=min{14+∞; ∞}=∞ d2,81=min{d2,10+d1,80d2,80}=min{14+28; ∞}=42 d3,11=min{d3,10+d1,10d3,10}=min{∞+0; ∞}=∞ d3,21=min{d3,10+d1,20d3,20}=min{∞+∞; ∞}=∞ d3,31=min{d3,10+d1,30d3,30}=min{∞+∞; 0}=0 d3,41=min{d3,10+d1,40d3,40}=min{∞+∞; 20}=20 d3,51=min{d3,10+d1,50d3,50}=min{∞+∞; ∞}=∞ d3,61=min{d3,10+d1,60d3,60}=min{∞+∞; 9}=9 d3,71=min{d3,10+d1,70d3,70}=min{∞+∞; ∞}=∞ d3,81=min{d3,10+d1,80d3,80}=min{∞+28; ∞}=∞ d4,11=min{d4,10+d1,10d4,10}=min{∞+0; ∞}=∞ d4,21=min{d4,10+d1,20d4,20}=min{∞+∞; ∞}=∞ d4,31=min{d4,10+d1,30d4,30}=min{∞+∞; ∞}=∞ d4,41=min{d4,10+d1,40d4,40}=min{∞+∞; 0}=0 d4,51=min{d4,10+d1,50d4,50}=min{∞+∞; ∞}=∞ d4,61=min{d4,10+d1,60d4,60}=min{∞+∞; ∞}=∞ d4,71=min{d4,10+d1,70d4,70}=min{∞+∞; 18}=18 d4,81=min{d4,10+d1,80d4,80}=min{∞+28; 15}=15 d5,11=min{d5,10+d1,10d5,10}=min{∞+0; ∞}=∞ d5,21=min{d5,10+d1,20d5,20}=min{∞+∞; ∞}=∞ d5,31=min{d5,10+d1,30d5,30}=min{∞+∞; ∞}=∞ d5,41=min{d5,10+d1,40d5,40}=min{∞+∞; ∞}=∞ d5,51=min{d5,10+d1,50d5,50}=min{∞+∞; 0}=0 d5,61=min{d5,10+d1,60d5,60}=min{∞+∞; 22}=22 d5,71=min{d5,10+d1,70d5,70}=min{∞+∞; ∞}=∞ d5,81=min{d5,10+d1,80d5,80}=min{∞+28; ∞}=∞ d6,11=min{d6,10+d1,10d6,10}=min{∞+0; ∞}=∞ d6,21=min{d6,10+d1,20d6,20}=min{∞+∞; ∞}=∞ d6,31=min{d6,10+d1,30d6,30}=min{∞+∞; ∞}=∞ d6,41=min{d6,10+d1,40d6,40}=min{∞+∞; ∞}=∞ d6,51=min{d6,10+d1,50d6,50}=min{∞+∞; ∞}=∞ d6,61=min{d6,10+d1,60d6,60}=min{∞+∞; 0}=0 d6,71=min{d6,10+d1,70d6,70}=min{∞+∞; 35}=35 d6,81=min{d6,10+d1,80d6,80}=min{∞+28; ∞}=∞ d7,11=min{d7,10+d1,10d7,10}=min{∞+0; ∞}=∞ d7,21=min{d7,10+d1,20d7,20}=min{∞+∞; ∞}=∞ d7,31=min{d7,10+d1,30d7,30}=min{∞+∞; ∞}=∞ d7,41=min{d7,10+d1,40d7,40}=min{∞+∞; ∞}=∞ d7,51=min{d7,10+d1,50d7,50}=min{∞+∞; ∞}=∞ d7,61=min{d7,10+d1,60d7,60}=min{∞+∞; ∞}=∞ d7,71=min{d7,10+d1,70d7,70}=min{∞+∞; 0}=0 d7,81=min{d7,10+d1,80d7,80}=min{∞+28; ∞}=∞ d8,11=min{d8,10+d1,10d8,10}=min{∞+0; ∞}=∞ d8,21=min{d8,10+d1,20d8,20}=min{∞+∞; ∞}=∞ d8,31=min{d8,10+d1,30d8,30}=min{∞+∞; ∞}=∞ d8,41=min{d8,10+d1,40d8,40}=min{∞+∞; ∞}=∞ d8,51=min{d8,10+d1,50d8,50}=min{∞+∞; ∞}=∞ d8,61=min{d8,10+d1,60d8,60}=min{∞+∞; ∞}=∞ d8,71=min{d8,10+d1,70d8,70}=min{∞+∞; ∞}=∞ d8,81=min{d8,10+d1,80d8,80}=min{∞+28; 0}=0 Представим матрицу D1, включив в нее рассчитанные элементы.

D1=

0

28

14

0

31

42

0

20

9

0

18

15

0

22

0

35

0

0

На основании матрицы D1, вычислим последовательно все элементы матрицы D2. Для этого мы используем рекуррентное соотношение di,j2=min{ di,21+ d2,j1; di,j1}. d1,12=min{d1,21+d2,11d1,11}=min{∞+14; 0}=0 d1,22=min{d1,21+d2,21d1,21}=min{∞+0; ∞}=∞ d1,32=min{d1,21+d2,31d1,31}=min{∞+∞; ∞}=∞ d1,42=min{d1,21+d2,41d1,41}=min{∞+∞; ∞}=∞ d1,52=min{d1,21+d2,51d1,51}=min{∞+31; ∞}=∞ d1,62=min{d1,21+d2,61d1,61}=min{∞+∞; ∞}=∞ d1,72=min{d1,21+d2,71d1,71}=min{∞+∞; ∞}=∞ d1,82=min{d1,21+d2,81d1,81}=min{∞+42; 28}=28 d2,12=min{d2,21+d2,11d2,11}=min{0+14; 14}=14 d2,22=min{d2,21+d2,21d2,21}=min{0+0; 0}=0 d2,32=min{d2,21+d2,31d2,31}=min{0+∞; ∞}=∞ d2,42=min{d2,21+d2,41d2,41}=min{0+∞; ∞}=∞ d2,52=min{d2,21+d2,51d2,51}=min{0+31; 31}=31 d2,62=min{d2,21+d2,61d2,61}=min{0+∞; ∞}=∞ d2,72=min{d2,21+d2,71d2,71}=min{0+∞; ∞}=∞ d2,82=min{d2,21+d2,81d2,81}=min{0+42; 42}=42 d3,12=min{d3,21+d2,11d3,11}=min{∞+14; ∞}=∞ d3,22=min{d3,21+d2,21d3,21}=min{∞+0; ∞}=∞ d3,32=min{d3,21+d2,31d3,31}=min{∞+∞; 0}=0 d3,42=min{d3,21+d2,41d3,41}=min{∞+∞; 20}=20 d3,52=min{d3,21+d2,51d3,51}=min{∞+31; ∞}=∞ d3,62=min{d3,21+d2,61d3,61}=min{∞+∞; 9}=9 d3,72=min{d3,21+d2,71d3,71}=min{∞+∞; ∞}=∞ d3,82=min{d3,21+d2,81d3,81}=min{∞+42; ∞}=∞ d4,12=min{d4,21+d2,11d4,11}=min{∞+14; ∞}=∞ d4,22=min{d4,21+d2,21d4,21}=min{∞+0; ∞}=∞ d4,32=min{d4,21+d2,31d4,31}=min{∞+∞; ∞}=∞ d4,42=min{d4,21+d2,41d4,41}=min{∞+∞; 0}=0 d4,52=min{d4,21+d2,51d4,51}=min{∞+31; ∞}=∞ d4,62=min{d4,21+d2,61d4,61}=min{∞+∞; ∞}=∞ d4,72=min{d4,21+d2,71d4,71}=min{∞+∞; 18}=18 d4,82=min{d4,21+d2,81d4,81}=min{∞+42; 15}=15 d5,12=min{d5,21+d2,11d5,11}=min{∞+14; ∞}=∞ d5,22=min{d5,21+d2,21d5,21}=min{∞+0; ∞}=∞ d5,32=min{d5,21+d2,31d5,31}=min{∞+∞; ∞}=∞ d5,42=min{d5,21+d2,41d5,41}=min{∞+∞; ∞}=∞ d5,52=min{d5,21+d2,51d5,51}=min{∞+31; 0}=0 d5,62=min{d5,21+d2,61d5,61}=min{∞+∞; 22}=22 d5,72=min{d5,21+d2,71d5,71}=min{∞+∞; ∞}=∞ d5,82=min{d5,21+d2,81d5,81}=min{∞+42; ∞}=∞ d6,12=min{d6,21+d2,11d6,11}=min{∞+14; ∞}=∞ d6,22=min{d6,21+d2,21d6,21}=min{∞+0; ∞}=∞ d6,32=min{d6,21+d2,31d6,31}=min{∞+∞; ∞}=∞ d6,42=min{d6,21+d2,41d6,41}=min{∞+∞; ∞}=∞ d6,52=min{d6,21+d2,51d6,51}=min{∞+31; ∞}=∞ d6,62=min{d6,21+d2,61d6,61}=min{∞+∞; 0}=0 d6,72=min{d6,21+d2,71d6,71}=min{∞+∞; 35}=35 d6,82=min{d6,21+d2,81d6,81}=min{∞+42; ∞}=∞ d7,12=min{d7,21+d2,11d7,11}=min{∞+14; ∞}=∞ d7,22=min{d7,21+d2,21d7,21}=min{∞+0; ∞}=∞ d7,32=min{d7,21+d2,31d7,31}=min{∞+∞; ∞}=∞ d7,42=min{d7,21+d2,41d7,41}=min{∞+∞; ∞}=∞ d7,52=min{d7,21+d2,51d7,51}=min{∞+31; ∞}=∞ d7,62=min{d7,21+d2,61d7,61}=min{∞+∞; ∞}=∞ d7,72=min{d7,21+d2,71d7,71}=min{∞+∞; 0}=0 d7,82=min{d7,21+d2,81d7,81}=min{∞+42; ∞}=∞ d8,12=min{d8,21+d2,11d8,11}=min{∞+14; ∞}=∞ d8,22=min{d8,21+d2,21d8,21}=min{∞+0; ∞}=∞ d8,32=min{d8,21+d2,31d8,31}=min{∞+∞; ∞}=∞ d8,42=min{d8,21+d2,41d8,41}=min{∞+∞; ∞}=∞ d8,52=min{d8,21+d2,51d8,51}=min{∞+31; ∞}=∞ d8,62=min{d8,21+d2,61d8,61}=min{∞+∞; ∞}=∞ d8,72=min{d8,21+d2,71d8,71}=min{∞+∞; ∞}=∞ d8,82=min{d8,21+d2,81d8,81}=min{∞+42; 0}=0 Представим матрицу D2, включив в нее рассчитанные элементы.

D2=

0

28

14

0

31

42

0

20

9

0

18

15

0

22

0

35

0

0

Соседние файлы в предмете Теория алгоритмов и автоматов