Детская энциклопедия
Том 1. Земля. Том 4. Растения и животные. Том 7. Человек. Том 10. Зарубежные страны.
Том 2. Мир небесных тел. Числа и фигуры. Том 5. Техника и производство. Том 8. Из истории человеческого общества. Том 11. Язык. Художественная литература.
Том 3. Вещество и энергия. Том 6. Сельское хозяйство. Том 9. Наша советская Родина. Том 12. Искусство.

разделы современной кибернетики теория алгоритмов и теория автоматов.

Алгоритмом называется конечная система правил, по которым совершается преобразо­вание дискретной информации. Множество разнообразных алгоритмов имеется в матема­тике. Из школьного курса алгебры, например, вам хорошо известны алгоритмы для решения квадратных уравнений, систем линейных урав­нений, для раскрытия скобок и приведения подобных членов в буквенных выражениях и т. п. Но алгоритмы широко распространены и за пределами математики. Если сформули­ровать все правила, которые употребляет опыт­ный переводчик для переводов, скажем, с анг­лийского языка на русский, то получим не что иное, как алгоритм англо-русского перевода.

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

Оказывается, чуть ли не всякий вид умствен­ной деятельности человека может быть сведен к выполнению того или иного алгоритма. Но практически найти все правила, составляющие эти алгоритмы,— часто очень сложная и трудо­емкая задача.

Для кибернетики особенно важны два ре­зультата, полученные в теории алгоритмов. Первый результат — универсальность алго­ритмических систем. Оказывается, для построения любого алгоритма достаточно уметь выполнять относительно небольшое число типов элементарных алгоритмических операций. Подобно тому как из одних и тех же элементар­ных частиц складываются молекулы самых раз­личных веществ или как из одних и тех же букв складываются книги совершенно различного со­держания, так и всякий алгоритм, независимо от его природы, можно составить в результате соответствующего комбинирования элементар­ных алгоритмических операций.

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

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

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

Теория автоматов и «умные» машины

Значение этих результатов для кибернетики становится ясным при переходе от теории алго­ритмов к теории автоматов. Основная задача теории автоматов — разработка мето­дов построения преобразователей информации для реализации тех или иных алгоритмов, например машин для игры в шахматы, для ав­томатического перевода с одного языка на дру­гой и т. п.

Если существуют универсальные алгорит­мические системы, то возможно в принципе построить универсальные преоб­разователи информации, спо­собные реализовать любые алгоритмы. Подоб­ные универсальные преобразователи уже по­строены и успешно работают. Это так называ­емые универсальные электрон­ные цифровые машины. Цифровыми или вычислительными эти машины называ­ются потому, что первым их назначением была реализация вычислительных алго­ритмов. Информация, с которой они имели дело, была цифровой, т. е. набором чисел. Такие машины снабжаются так называемыми запоминающими устройствами (памятью), позволяющими им «запоминать» как перерабатываемую информацию, так и программу работы машины, т. е. записанный в условных кодах, называемых приказами, ал­горитм, который должна реализовать машина.

Изменение программы происходит без ка­ких-либо переделок машины. Достаточно про­пустить сквозь машину набор бумажных кар­точек с пробитыми на них в соответствующих местах отверстиями — перфокарты или ленту с отверстиями — перфоленту. Так вводится в машину новая программа, настраи­вающая ее на совершенно новый вид работы.

Благодаря этому открываются широкие возможности для автоматизации различных

443