Даже если судить сообразно моей точке зрения, некоторая доля истины в этой картине должна быть, поскольку, как мне представляется, большая часть работы мозга действительно носит алгоритмический характер, и к тому же — как читатель наверняка догадался из предыдущих рассуждений — я являюсь убежденным сторонником (теории) естественного отбора. Но я не понимаю, как естественный отбор сам по себе мог дать рождение алгоритмам, которые позволяли бы делать осознанные выводы касательно
правомерностиприменения всех прочих алгоритмов, которыми мы должны, по идее, пользоваться.Представьте себе обычную компьютерную программу. Как
онапоявилась на свет? Ясно, что никак не за счет (непосредственно) естественного отбора! Чтобы это произошло, какой-нибудь программист должен был бы разработать ее и убедиться, что она корректно выполняет те действия, для которых она предназначена. (В действительности большинство сложных компьютерных программ содержат ошибки — как правило, незначительные и малозаметные, которые выявляются только в достаточно редких случаях при необычных стечениях обстоятельств. Наличие таких ошибок не влияет существенно на мои рассуждения.) Иногда компьютерная программа может быть «написана» другой компьютерной программой-«мастером», но тогда та, в свою очередь, с необходимостью должна быть создана человеческим гением; то же самое относится и к тем программам, в состав которых могут входить фрагменты кодов, написанных другими компьютерными программами. Но в любом случае, задача обоснования использования конкретного алгоритма и разработка общей концепции программы «ложится на плечи» (по крайней мере) одного человеческого сознания.Можно представить себе, конечно, что все могло бы происходить совсем не так, и что по прошествии достаточного количества времени компьютерная программа могла бы самостоятельно эволюционировать в процессе некоего естественного отбора. Если верить, что действия, производимые в сознании программистов, сами являются всего лишь алгоритмами, то надо с необходимостью согласиться с тем, что таким же образом
развилисьи алгоритмы. Но меня здесь беспокоит то, что принятие решения о правомерности использования алгоритма отнюдь не является алгоритмическим процессом. Кое-что об этом уже было сказано в главе 2. (Будет или нет машина Тьюринга на самом деле
останавливаться— вопрос, который не может быть решен алгоритмическим путем.) Чтобы решить, будет ли алгоритм действительно
работать, нужно
глубокое понимание, а не просто еще один алгоритм.Тем не менее, можно было бы представить себе, что существует определенный процесс естественного отбора, который способен создавать
довольноэффективные алгоритмы. Лично мне, однако, очень трудно в это поверить. Любой процесс отбора такого рода мог бы оказывать воздействие только
результатывыполнения алгоритмов
[214], а не на лежащие в основе этих алгоритмов идеи. И это не только совершенно неэффективно — я думаю, что это не принесло бы вообще никакого результата. Во-первых, нелегко определить, глядя на итог работы алгоритма, что он из себя на самом деле представляет. (Нетрудно сконструировать две простые, но совершенно различные процедуры для машины Тьюринга, выходные ленты которых совпадали бы, скажем, до
265536-й позиции — и тогда их различие не было бы замечено даже за всю историю вселенной!) Более того, малейшая «мутация» алгоритма (например, небольшое изменение в описании машины Тьюринга или в ее выходной ленте) сделала бы ее полностью бесполезной; поэтому трудно понять, как настоящие
усовершенствованияалгоритмов могут получаться таким вот случайным образом. (Даже
обдуманныеусовершенствования труднореализуемы, когда неизвестен их точный «смысл». Так традиционно получается в тех нередко возникающих ситуациях, когда необходимо внести изменения или исправления в сложную и небрежно задокументированную программу, чей автор находится вне пределов досягаемости или давно умер. Тогда вместо того, чтобы пытаться разобраться в хитросплетениях разнообразных промежуточных значений и неявных подзадач, на которых базируется эта программа, иной раз бывает проще стереть все и начать заново!)Предположим, что мог бы быть разработан гораздо более «здоровый» метод определения алгоритмов, в отношении которого вышеприведенная критика становилась бы беспочвенной. В некоторым роде, это как раз то, о чем я и говорю. «Здоровые» определения — это
идеи, на которых базируется алгоритм. Но идеям, насколько нам известно, для своего выражения требуется разум, наделенный сознанием. А значит, мы вновь возвращаемся к проблеме определения сознания и тех его свойств, которые отличают обладающих сознанием существ от остального мира — и к вопросу о том, как, черт побери, естественный отбор мог оказаться достаточно «умным», чтобы развивать
такие замечательныесвойства.