Компьютеры сегодня могут практически все, нейрокомпьютеры — многое. Чаще всего их «всемогущество» зависит от четкого следования алгоритму, иногда — от правильной адаптации программы к поступающим данным, а порой –– от возможности на собственном опыте обучаться выполнению поставленных задач. Причем в последнем случае даже разработчики компьютерных программ не всегда понимают причины подобной сообразительности машин.
Интеллектуальные мускулы
Человек всегда стремился окружать себя разнообразными приспособлениями, помогающими ему быть быстрее, сильнее и умнее. Люди давно осознали, что некоторые вычислительные задачи гораздо удобнее решать с помощью специальных механических и электрических машин. Однако реализовать эту мечту оказалось непросто. Первые арифмометры начали активно эксплуатировать только с середины XIX века, а первые ЭВМ появились всего каких-нибудь 50 лет назад. Электронные устройства, призванные усиливать интеллектуальные и творческие силы человека, оказались сложны не только в разработке и изготовлении. Кроме «железа» необходимы были программы, заставляющие машину производить совершенно определенные действия. Таким образом, впервые в истории человеческой цивилизации появились вещи, способные приносить пользу только в том случае, если в них будут установлены некие тексты-программы, дарящие бездушной машине частичку человеческого разума.
Программирование — достаточно своеобразное занятие, поскольку сочинять программы приходится на особом компьютерном языке, мало похожем на человеческий. И хотя большинство слов в этом языке пишется английскими буквами, в обычных лексических словарях их не найти. Роль же грамматических правил играют законы логики. Причем строгие законы программирования и обоснования правил составления безошибочных алгоритмов были разработаны математиками еще в 1930-х годах.