Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Книги / TURIN / ЛЕКЦИИ9.DOC
Скачиваний:
76
Добавлен:
10.12.2013
Размер:
363.01 Кб
Скачать

162

9. Общие сведения о теории алгоритмов

9.1. Понятие об алгоритме

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

Слово "алгоритм" происходит от имени среднеазиатского (узбекского) математика Аль Хорезми - "Аlgorithmi", сформулировавшего правила выполнения четырех арифметических действий в 10-тичной системе счисления.

Алгоритм характеризует:

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

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

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

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

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

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

Явно эта гипотеза впервые (в несколько ином виде) была высказана А.Черчом и носит название тезиса Черча. Сейчас она общепризнанна. Формальное определение понятия алгоритма создало предпосылки для разработки теории алгоритма еще до разработки первых ЭВМ. Прогресс вычислительной техники стимулировал дальнейшее развитие теории алгоритмов.

Можно выделить три основных типа универсальных алгоритмических моделей, различающихся исходными соображениями относительно того, что такое алгоритм. Первый тип связывает понятие алгоритма с наиболее традиционными понятиями математики - вычислениями и числовыми функциями. Наиболее развитая и изученная модель этого типа - рекурсивные функции- является исторически первой формализацией понятия алгоритма. Второй тип основан на представлении об алгоритме как о некотором детерминированном устройстве, способном выполнять в каждый отдельный момент лишь весьма примитивные операции. Такое представление не оставляет сомнений в однозначности алгоритма и элементарности его шагов. Эти модели близки к практике ЭВМ и к инженерной интуиции. Основной теоретический моделью этого типа является так называемаямашина Тьюринга. Наконец, третий тип алгоритмических моделей - этопреобразование слов в произвольных алфавитах, в которых элементарными операциями являются подстановки, т.е. замены куска слова (подслова) другим словом. Преимущества этого типа - в его максимальной абстрактности и возможности применить понятие алгоритма к объектам произвольной, не обязательно числовой природы.

Соседние файлы в папке TURIN