АЛГОРИ́ТМА СЛО́ЖНОСТЬ
-
Рубрика: Математика
-
Скопировать библиографическую ссылку:
АЛГОРИ́ТМА СЛО́ЖНОСТЬ, числовая характеристика алгоритма, измеряющая либо сложность его описания, либо сложность вычисления с помощью этого алгоритма. Ниже рассматривается только А. с. вычисления, которая характеризует его эффективность в том или ином смысле. А. с., как правило, является функцией не только самого алгоритма, но и исходных данных (напр., слов). Многие варианты А. с. являются монотонными функциями на множестве натуральных чисел (длин слов). Самым распространённым вариантом А. с. является А. с. в наихудшем случае, определяемая как макс. сложность алгоритма по всем исходным данным, длина которых не превосходит некоторого натурального числа $n$, рассматриваемого как параметр. Обычно ставится вопрос об асимптотич. (при $n\rightarrow \infty$ ) поведении А. с. в наихудшем случае.
Наиболее важным примером А. с. является время его работы, измеряемое числом элементарных шагов (операций), совершаемых алгоритмом при переходе от исходных данных к результату работы. Алгоритмы, время работы которых в наихудшем случае ограничено некоторым полиномом от длины исходных данных, называются полиномиальными. Расширенный тезис Чёрча утверждает, что все разумные, в широком интуитивном смысле, уточнения понятия алгоритма приводят к одному и тому же классу полиномиальных алгоритмов и что этот класс совпадает с классом алгоритмов, фактически реализуемых на практике. Обе части этого тезиса не являются настолько бесспорными, как изначальный тезис Чёрча (см. в ст. Алгоритмическая проблема).
Теория А. с. как самостоятельная науч. дисциплина начала развиваться в 1960-х гг. одновременно с развитием компьютерных технологий. В это время, в частности, сформировались осн. концепции теории А. с. В нач. 1970-х гг. была построена теория переборных задач и сформулирована центральная в этой области проблема перебора (см. Алгоритмов теория). Было также введено важнейшее понятие сводимости, связанное с возможностью из эффективных алгоритмов, построенных для решения одной задачи, получать эффективные алгоритмы для решения др. задач.
Совр. теория А. с. имеет дело как с вычислит. алгоритмами в прямом смысле этого слова, так и с более общими процессами алгоритмич. характера. Помимо времени работы, часто изучаются и др. виды А. с., напр. объём необходимой памяти или количество переданной информации.
Проблематика теории А. с. включает как построение и анализ эффективных алгоритмов, так и доказательство того, что в ряде случаев такие алгоритмы невозможны (т. н. проблема нижних оценок). В то время как в первом направлении достигнут существенный прогресс, проблема нижних оценок оказалась крайне сложной.