Читаем Сознающий ум. В поисках фундаментальной теории полностью

Понятие имплементации нечасто подвергается детальному анализу; обычно его просто принимают как данность. Но для защиты сильного ИИ мы нуждаемся в его детальном объяснении. Тезис о сильном ИИ выражен в вычислительных терминах и говорит о том, что имплементация надлежащего вычисления достаточна для сознания. Чтобы оценить это утверждение, мы должны знать, в каком именно случае физическая система имплементирует вычисление. Разобравшись в этом, мы сможем присоединить это знание к проделанному нами ранее анализу психофизических законов, чтобы понять, может ли из этого вытекать интересующий нас вывод.

Некоторые авторы доказывали невозможность дать сколь-либо содержательное объяснение имплементации. В частности, Серл (Searle 1990b) доказывал, что имплементация не является чем-то объективным, а, наоборот, зависит от наблюдателя: любая система может быть истолкована как имплементирующая любое вычисление при надлежащей интерпретации. Серл, к примеру, считает, что о его стене можно рассуждать так, будто она имплементирует его текстовый редактор Wordstar. Если бы это было так, то трудно было бы понять, как вычислительные понятия могут играть какую-то основополагающую роль в теории, в конечном счете имеющей дело с конкретными системами. Что же до сильного ИИ, то он либо оказался бы лишен всякого содержания, либо подразумевал бы признание сильной разновидности панпсихизма. Думаю, однако, что пессимизм такого рода неоснователен: не существует препятствий для объективной характеристики имплементации. В этом параграфе я схематично представлю эту характеристику (она будет несколько технической, но оставшаяся часть главы должна быть понятной, даже если проскочить эти детали).

Любое объяснение имплементации вычисления будет зависеть от того, о каком классе вычислений идет речь. Существует множество разных вычислительных формализмов, которым соответствует различные классы вычислений: машины Тьюринга, конечные автоматы, программы на Паскале, коннекционистские сети, клеточные автоматы и т. д. В принципе, нам нужно объяснение имплементации для каждого из этих формализмов. Я объясню имплементацию только для одного формализма, а именно для формализма комбинаторных автоматов. Этот класс вычислений достаточно абстрактен для того, чтобы можно было без труда перенести на другие классы связанную с ним концепцию имплементации.

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

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

Комбинаторные автоматы (КоА) ничем не отличаются от КА, за исключением того, что их внутренние состояния структурированы. Состояние комбинаторного автомата представляет собой вектор [S1, S2,…,Sn]. Этот вектор может быть конечным или бесконечным, но я сосредоточусь на первом случае. Элементы этого вектора можно мыслить в качестве компонентов внутреннего состояния; они соответствуют клеткам клеточного автомата или ячейкам ленты и состоянию управляющего устройства машины Тьюринга. Каждый элемент Si может иметь конечное множество значений Sij, где Sij — j-e возможное значение i-го элемента. Эти значения можно трактовать в качестве «подсостояний» общего состояния. Данные на входе и на выходе имеют аналогичную комплексную структуру: первые являют собой вектор [I1,…, Ik], вторые — вектор 1,…, Оm].

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже