Так или иначе, проблема заключается не в том, что упрощение задач само по себе ведет к неудаче — напротив, это весьма полезный прием. Проблема лежит глубже, как можно выбрать подходящую внутреннюю интерпретацию задачи? В каком пространстве вы ее располагаете? Какие действия сокращают дистанцию между вами и вашей целью в выбранном вами пространстве? На математическом языке это может быть выражено как задача нахождения подходящей метрики (функции расстояния) между состояниями. Вам надо найти такую метрику, в которой расстояние между вами и целью было бы очень коротким.
Поскольку нахождение внутреннего представления само по себе является задачей — и весьма непростой! — вы можете попытаться приложить технику упрощения задач к ней самой. Для этого вам придется каким-то образом представить огромное множество абстрактных пространств, что является весьма сложным проектом. Я пока не слышал, чтобы кто-нибудь пытался сделать подобное. Это может быть лишь интересной теоретической возможностью, на практике совершенно невыполнимой. В любом случае, ИИ очень не хватает программ, которые могут «отойти в сторону» и посмотреть, что происходит — и затем, используя эту перспективу, лучше сориентироваться для нахождения цели. Одно дело — написать программу, которая умеет выполнять единственное задание, даже такое, для выполнения которого, как нам кажется, нужен интеллект, и совсем другое дело — написать действительно думающую программу! Эта разница аналогична разнице между осой Sphex (см. главу XI), чьи инстинктивные действия кажутся весьма разумными, и человеком, за ней наблюдающим.
Снова режим I и режим М
Разумной программой, по-видимому, будет программа, достаточно гибкая для решения разнообразных задач. Она научится решать каждую из них и в процессе этого будет приобретать опыт. Она будет способна работать в согласии с набором правил, но в нужный момент сможет посмотреть на свою работу со стороны и решить, ведут ли данные правила к стоящей перед ней цели. Она будет способна прекратить работу по данным правилам и, если потребуется, выработать новые правила, лучше подходящие для данного момента.
Многое в этом обсуждении может напомнить вам о головоломке MU. Например, отход в сторону от конечной цели напоминает об отходе в сторону от MU, выводя все более длинные строчки, которые, как вы надеетесь, рано или поздно помогут вам получить MU. Если вы похожи на описанную наивную собаку, то можете чувствовать, что уходите в сторону от «кости MU» каждый раз, когда ваша строчка получается длиннее двух букв, если же вы — «собака» поумней, то понимаете, что использование длинных строчек может иметь определенный смысл — нечто вроде приближения к калитке, ведущей к кости MU.
Между предыдущим обсуждением и головоломкой MU есть еще одна связь: два операционных режима, приведшие к решению головоломки MU — Механический режим и Интеллектуальный режим. В первом из них вы работаете в системе жестких правил; в последнем вы всегда можете выйти из системы и взглянуть на проблему со стороны. Подобная перспектива означает возможность выбора определенного представления проблемы; работа же внутри системы сравнима с применением техники упрощения задач, не выходя из пределов уже данного представления. Комментарии Харди о стиле Рамануяна — в особенности, о его готовности изменять собственные гипотезы — иллюстрируют это взаимодействие между режимом M и режимом I в творческой мысли.
Оса Sphex работает в режиме M превосходно, но совершенно не способна выбирать представление о системе или вносить в режим M какие бы то ни было изменения. Она не может заметить, что некое событие происходит в ее системе снова, снова и снова, поскольку это равнялось выходу из системы, каким бы незначительным он ни был. Она просто не замечает того факта, что повторяется нечто одинаковое. Эта идея (не замечать тождественности повторяющихся событий) интересна в применении к нам самим. Есть ли в нашей жизни часто повторяющиеся идентичные ситуации, в которых мы каждый раз ведем себя одинаково глупо, поскольку не можем, взглянув на себя со стороны, заметить их тождественность? Здесь мы опять сталкиваемся с вопросом: «Что такое тождественность?» Этот вопрос прозвучит как одна из тем ИИ, когда мы будем обсуждать узнавание структур.
ИИ в применении к математике
Математика — необыкновенно интересная область для изучения с точки зрения ИИ. Каждый математик чувствует, что между идеями в математике существует некая метрика — что вся математика является сетью взаимосвязанных результатов. В этой сети некоторые идеи соотносятся очень тесно; для соединения же других идей требуются более сложные пути. Иногда две теоремы в математике близки между собой, потому что одну из них легко доказать, пользуясь доказательством другой. Иногда две идеи близки между собой, потому что они аналогичны или даже изоморфны. Это только два примера значения слова «близкий» в области математики; возможно, имеются и другие. Трудно сказать, является ли наше чувство математических взаимосвязей универсальным и объективным, или же это только историческая случайность. Некоторые теоремы различных ветвей математики кажутся нам трудно соотносимыми, и мы можем подумать, что они никак не связаны между собой — но позднее можем узнать нечто, что заставит нас пересмотреть это мнение. Если бы нам удалось ввести высоко развитое чувство математической близости — так сказать, «мысленную метрику» математика — в программу, то у нас, возможно, получился бы примитивный «искусственный математик». Но это зависит от нашей способности наделить программу также чувством простоты и «естественности» — еще один из основных камней преткновения.
Эти темы возникали во многих проектах ИИ. Например, в Массачусетском институте технологии были разработаны программы, объединенные под названием «MACSYMA». Они были призваны помогать математикам в символической манипуляции сложными математическими выражениями. В некотором смысле, MACSYMA знает, «куда идти» — в ней есть что-то вроде «градиента сложности», ведущего ее от того, что нам кажется сложными выражениями, к более простым выражениям. В репертуар MACSYMA входит программа под названием «SYN», которая символически интегрирует функции; считается, что в чем-то она превосходит людей. Она опирается на множество различных способностей, как это обычно делает разум: глубокие знания, техника упрощения задач, множество эвристических правил, а также некоторые специальные приемы.
Целью программы, составленной Дугласом Ленатом из Стэнфордского университета, было изобретение идей и открытие фактов элементарной математики. Начиная с понятия «множества» и набора «интересных» идей, которые были в нее введены, она «изобрела» идею счета, затем сложения, затем — умножения, затем, среди прочего, — понятие простых чисел… Она зашла так далеко, что повторила открытие гипотезы Гольдбаха! Разумеется, все эти «открытия» были уже сделаны сотни, а то и тысячи лет назад. Может быть, успех программы объясняется тем, что понятие «интересного», которое Ленат вложил в машину, было закодировано в большом количестве правил, на которые, возможно, повлияло современное математическое образование самого Лената; тем не менее, этот успех впечатляет. Правда, после этих достойных уважения свершений программа, по-видимому, выдохлась. Примечательно, что она не смогла развить и улучшить свое чувство того, что является интересным. Эта способность, по-видимому, лежит несколькими уровнями выше.
В сердце ИИ: представление знаний
Многие из приведенных примеров показывают, что то, каким образом представлена некая область, имеет огромное влияние на то, как она будет «понята». Программа, которая печатала бы теоремы ТТЧ в заранее заданном порядке, не понимала бы ничего в теории чисел; с другой стороны, можно сказать, что программа, подобная программе Лената, обладающая дополнительным знанием, имеет некое рудиментарное чувство теории чисел. Программа, чьи математические познания находились бы в широком контексте опыта реального мира, имела бы больше всего возможностей «понимать» в том же смысле, как и люди. Именно представление знаний находится в сердце ИИ.