3.27. Вычислительная математика: процедуры нисходящие или восходящие?

К оглавлению1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 
51 52 53 54 55 56 57 58 59 60 61 62 

В предыдущем разделе мы могли убедиться, какую неоцени­мую помощь могут оказать компьютеры при решении некоторых математических задач. Во всех упомянутых успешных примерах примененные вычислительные процедуры носили исключитель­но нисходящий характер. Более того, лично мне не известно ни об одном сколько-нибудь значительном чисто математическом результате, полученном с помощью восходящих процедур, хотя вполне возможно, что такие методы могут оказаться весьма по­лезными в различного рода поисковых операциях, входящих в состав каких-либо по преимуществу нисходящих процедур, пред­назначенных для отыскания решений тех или иных математиче­ских задач. Может, так оно и будет, однако мне до сих пор не доводилось сталкиваться в вычислительной математике ни с чем таким, что хотя бы отдаленно напоминало конструкции вроде на­шей формальной системы, которые можно было бы предста­вить себе в качестве основы для деятельности «сообщества обу­чающихся математических роботов», описанного в §§3.9—3.23. Противоречия, с которыми мы всякий раз сталкивались, пыта­ясь изобразить упомянутую конструкцию, призваны подчеркнуть тот факт, что такие системы просто не могут предложить нам сколько-нибудь результативный метод математического иссле­дования. Компьютеры приносят огромную пользу в математи­ке, но только тогда, когда их применение ограничивается нис­ходящими вычислениями; для того же чтобы определить, какое именно вычисление необходимо выполнить, требуется идея, по­рожденная человеческим пониманием, то же понимание потребуется и на заключительном этапе процесса, т. е. при интерпре­тации результатов вычисления. Иногда очень значительный эф­фект дает применение интерактивных процедур, предполагающих совместную работу человека и компьютера, или, иначе говоря, участие человеческого понимания на различных промежуточных стадиях процесса. Попытки же полностью вытеснить элемент человеческого понимания и заменить его исключительно вычис­лительными процедурами выглядят, по меньшей мере, неумными, а если подойти к делу с более строгих позиций — то и вовсе неосуществимыми.

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

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

Вообще говоря, в нынешнее время компьютеры нередко именно таким образом и используются. Самый знаменитый при­мер — уже упоминавшееся выше доказательство теоремы о четы­рех красках, осуществленное Кеннетом Аппелем и Вольфгангом Хакеном с помощью компьютера. Роль компьютера в данном случае свелась к выполнению некоторого четко определенного вычисления для каждого возможного варианта, причем количе­ство альтернативных вариантов, хотя и было весьма велико, со­ставляло все же величину конечную; исключение этих возмож­ных вариантов дает основания для проведения (математиками-людьми) требуемого общего доказательства. Имеются и другие примеры подобных доказательств «с компьютерной поддерж­кой», а кроме того, сегодня на компьютере выполняют не только численные расчеты, но и сложные алгебраические преобразо­вания. И в этом случае работой компьютера управляют строго нисходящие процедуры, правила же для этих процедур формули­руются человеком в результате понимания задачи.

Следует упомянуть и еще об одном направлении работ — так называемом «автоматическом доказательстве теорем». К этой категории можно отнести, например, набор процедур, состоящий в определении некоторой фиксированной формальной системы и последующей попытки вывода теорем в рамках этой системы. Изнам известно, что отыскание доказательств всех теорем системыодного за другим, есть процесс исключительно вы­числительный. Такие процессы можно автоматизировать, однако если автоматизация выполнена без должного внимания и пони­мания, то полученный результат окажется, скорее всего, крайне неэффективным. Если же к разработке компьютерных процедур привлечь-таки эти самые внимание и понимание, то можно до­биться весьма и весьма впечатляющих результатов. В одной из разработанных таким образом схем (см. [49]) правила евклидовой геометрии были преобразованы в весьма эффективную формаль­ную систему, способную доказывать существующие геометриче­ские теоремы (а иногда и открывать новые). Приведем конкрет­ный пример из практики этой системы: перед ней была поставле­на задача доказать гипотезу В. Тебо — геометрическое предполо­жение, выдвинутое в 1938 году и доказанное лишь относительно недавно (в 1983) К. Б. Тейлором, — с чем она как нельзя более успешно справилась за 44 часа компьютерных вычислений).

Более близкую аналогию с описанными в предыдущих раз­делах процедурами можно усмотреть в предпринимаемых раз­личными исследователями на протяжении последних приблизи­тельно десяти лет попытках разработки «искусственно-интел­лектуальных» процедур для реализации математического «по-нимания». Надеюсь, представленные мною аргументы дают ясное представление о том, что каковы бы ни оказались успехи подобных систем, действительного математического понимания они ни в коем случае не достигнут! Некоторое отношение к упомянутым трудам имеют и попытки создания автоматических «теоремо-порождающих» систем; задачей такой системы яв­ляется отыскание теорем, которые можно отнести к категории «интересных» — в соответствии с определенными критериями, заданными системе заранее. Насколько мне известно (и думаю, многие с этим согласятся), из этих попыток пока что ничего, что представляло бы сколько-нибудь реальный математический ин­терес, не вышло. Мне, несомненно, возразят, что мы еще лишь в начале пути, и наверняка в будущем от них можно ожидать самых потрясающих результатов. Однако всякому, кто дочитал до этого места, уже должно быть ясно, что лично я крайне скептически отношусь к возможности получения из всех этих начинаний хоть какого-то подлинно положительного результата — разве что мы наконец выясним точные пределы возможностей таких систем.

 

В предыдущем разделе мы могли убедиться, какую неоцени­мую помощь могут оказать компьютеры при решении некоторых математических задач. Во всех упомянутых успешных примерах примененные вычислительные процедуры носили исключитель­но нисходящий характер. Более того, лично мне не известно ни об одном сколько-нибудь значительном чисто математическом результате, полученном с помощью восходящих процедур, хотя вполне возможно, что такие методы могут оказаться весьма по­лезными в различного рода поисковых операциях, входящих в состав каких-либо по преимуществу нисходящих процедур, пред­назначенных для отыскания решений тех или иных математиче­ских задач. Может, так оно и будет, однако мне до сих пор не доводилось сталкиваться в вычислительной математике ни с чем таким, что хотя бы отдаленно напоминало конструкции вроде на­шей формальной системы, которые можно было бы предста­вить себе в качестве основы для деятельности «сообщества обу­чающихся математических роботов», описанного в §§3.9—3.23. Противоречия, с которыми мы всякий раз сталкивались, пыта­ясь изобразить упомянутую конструкцию, призваны подчеркнуть тот факт, что такие системы просто не могут предложить нам сколько-нибудь результативный метод математического иссле­дования. Компьютеры приносят огромную пользу в математи­ке, но только тогда, когда их применение ограничивается нис­ходящими вычислениями; для того же чтобы определить, какое именно вычисление необходимо выполнить, требуется идея, по­рожденная человеческим пониманием, то же понимание потребуется и на заключительном этапе процесса, т. е. при интерпре­тации результатов вычисления. Иногда очень значительный эф­фект дает применение интерактивных процедур, предполагающих совместную работу человека и компьютера, или, иначе говоря, участие человеческого понимания на различных промежуточных стадиях процесса. Попытки же полностью вытеснить элемент человеческого понимания и заменить его исключительно вычис­лительными процедурами выглядят, по меньшей мере, неумными, а если подойти к делу с более строгих позиций — то и вовсе неосуществимыми.

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

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

Вообще говоря, в нынешнее время компьютеры нередко именно таким образом и используются. Самый знаменитый при­мер — уже упоминавшееся выше доказательство теоремы о четы­рех красках, осуществленное Кеннетом Аппелем и Вольфгангом Хакеном с помощью компьютера. Роль компьютера в данном случае свелась к выполнению некоторого четко определенного вычисления для каждого возможного варианта, причем количе­ство альтернативных вариантов, хотя и было весьма велико, со­ставляло все же величину конечную; исключение этих возмож­ных вариантов дает основания для проведения (математиками-людьми) требуемого общего доказательства. Имеются и другие примеры подобных доказательств «с компьютерной поддерж­кой», а кроме того, сегодня на компьютере выполняют не только численные расчеты, но и сложные алгебраические преобразо­вания. И в этом случае работой компьютера управляют строго нисходящие процедуры, правила же для этих процедур формули­руются человеком в результате понимания задачи.

Следует упомянуть и еще об одном направлении работ — так называемом «автоматическом доказательстве теорем». К этой категории можно отнести, например, набор процедур, состоящий в определении некоторой фиксированной формальной системы и последующей попытки вывода теорем в рамках этой системы. Изнам известно, что отыскание доказательств всех теорем системыодного за другим, есть процесс исключительно вы­числительный. Такие процессы можно автоматизировать, однако если автоматизация выполнена без должного внимания и пони­мания, то полученный результат окажется, скорее всего, крайне неэффективным. Если же к разработке компьютерных процедур привлечь-таки эти самые внимание и понимание, то можно до­биться весьма и весьма впечатляющих результатов. В одной из разработанных таким образом схем (см. [49]) правила евклидовой геометрии были преобразованы в весьма эффективную формаль­ную систему, способную доказывать существующие геометриче­ские теоремы (а иногда и открывать новые). Приведем конкрет­ный пример из практики этой системы: перед ней была поставле­на задача доказать гипотезу В. Тебо — геометрическое предполо­жение, выдвинутое в 1938 году и доказанное лишь относительно недавно (в 1983) К. Б. Тейлором, — с чем она как нельзя более успешно справилась за 44 часа компьютерных вычислений).

Более близкую аналогию с описанными в предыдущих раз­делах процедурами можно усмотреть в предпринимаемых раз­личными исследователями на протяжении последних приблизи­тельно десяти лет попытках разработки «искусственно-интел­лектуальных» процедур для реализации математического «по-нимания». Надеюсь, представленные мною аргументы дают ясное представление о том, что каковы бы ни оказались успехи подобных систем, действительного математического понимания они ни в коем случае не достигнут! Некоторое отношение к упомянутым трудам имеют и попытки создания автоматических «теоремо-порождающих» систем; задачей такой системы яв­ляется отыскание теорем, которые можно отнести к категории «интересных» — в соответствии с определенными критериями, заданными системе заранее. Насколько мне известно (и думаю, многие с этим согласятся), из этих попыток пока что ничего, что представляло бы сколько-нибудь реальный математический ин­терес, не вышло. Мне, несомненно, возразят, что мы еще лишь в начале пути, и наверняка в будущем от них можно ожидать самых потрясающих результатов. Однако всякому, кто дочитал до этого места, уже должно быть ясно, что лично я крайне скептически отношусь к возможности получения из всех этих начинаний хоть какого-то подлинно положительного результата — разве что мы наконец выясним точные пределы возможностей таких систем.