Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
6gJr5byPBn.file.1.doc
Скачиваний:
12
Добавлен:
30.04.2022
Размер:
2.09 Mб
Скачать

3. Элементы теории алгоритмов

Понятие «алгоритм» принадлежит к числу основных понятий математики и занимает одно из центральных мест в вычислительной математике.

Еще в IX веке узбекский ученый Мухаммед бен–муса аль–Хорезми разработал систему правил четырех арифметических действий над числами в десятичной позиционной системе счисления. Эти правила предписывали строгую последовательность действий над исходными данными – числами для получения искомого результата – числа. Эти правила получили название «алгоритм» в честь арабского имени аль-Хорезми.

В ХХ веке в связи с развитием вычислительных машин и техники управления понятие алгоритма расширило свои границы. Так, исходными данными и результатами работы алгоритма стали различные конструктивные объекты математики: числа и многочлены, кортежи и матрицы, графы и автоматы, слова и тексты. Эти конструктивные объекты формируются по правилам соответствующих грамматик из элементарных объектов.

Процесс последовательного преобразования конструктивных объектов от исходных данных до искомого результата выполняется дискретно, как говорят, «по шагам». Происходящее за один шаг преобразование конструктивного объекта носит локальный характер, т. е. преобразованию подвергается не весь объект, а лишь его часть: член многочлена, компонента кортежа, столбец или строка матрицы, фрагмент графа или автомата, часть слова или текста и т. п.

Процесс преобразования конструктивного объекта, включающий в себя заданную последовательность шагов, называют алгоритмическим процессом.

Выяснением того, какие объекты и какие действия над ними следует считать точно определенными, какими свойствами и какими возможностями обладают комбинации

элементарных действий — все это стало предметом теории алгоритмов.

В процессе развития теории были сформулированы основные свойства алгоритма:

1) свойство дискретности: алгоритм состоит из отдельных элементарных действий, выполняемых по шагам; множество элементарных шагов, из которых состоит алгоритмический процесс, конечно и счетно.

2) свойство детерминированности: после каждого шага дается точное указание, как и в какой последовательности выполнять следующие шаги алгоритмического процесса.

3) свойство массовости: алгоритм должен быть пригоден для решения всех задач из заданного класса.

4) свойство сходимости или результативности: обязательна остановка алгоритмического процесса после конечного числа шагов с указанием достигнутого конструктивного объекта в виде искомого результата.

Для доказательства свойств алгоритмов формируется конечный набор элементарных объектов и элементарных шагов для построения новых объектов и организации всего алгоритмического процесса. Эти наборы составляют основу алгоритмической модели. Для различных наборов элементарных действий могут быть сформированы различные алгоритмические модели. Однако выделяют два основных типа универсальных алгоритмических моделей.

Первый тип – рекурсивные функции – связывает понятие алгоритма с числовыми функциями, определяемыми на множестве целых положительных чисел и принимающими значения на том же множестве.

Второй тип – машина Тьюринга – связывает понятие алгоритма с механическим устройством, способным выполнять дискретно элементарные действия над элементарными объектами.

В теории вычислительных алгоритмов доказана сводимость одного типа модели к другой, т. е. всякий алгоритм, описанный средствами одной модели, может быть описан средствами другой.

Рассмотрим подробнее реализацию алгоритмических процессов для вычисления значений числовых функций на двух типах моделей алгоритмов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]