Добавить в цитаты Настройки чтения

Страница 6 из 31

* * *

ДЖОРДЖ БУЛЬ (1815–1864) И ЕГО ЛОГИКА

Если Алана Тьюринга называют одним из отцов современной информатики, то Джорджа Буля можно назвать ее дедом. Этот британский философ и математик создал булеву алгебру — основу современной компьютерной арифметики, которая, в свою очередь, является фундаментом всей цифровой электроники.

Буль разработал систему правил, которые посредством математических методов позволяют выражать и упрощать логические задачи, в которых допускается только два состояния — «истина» и «ложь». Три основные математические операции булевой алгебры — это отрицание, объединение («или») и пересечение («и»). Отрицание, обозначаемое символом заключается в смене значения переменной на противоположное. К примеру, если А = «Аристотель — человек», то ¬А = «Аристотель — не человек». Объединение, обозначаемое символом v — это бинарная операция, то есть операция, в которой для получения результата требуются два аргумента. Результатом объединения будет истина, если один из двух аргументов истинный.

К примеру: «Верно ли, что сейчас вы либо читаете, либо ведете машину?». Ответом на этот вопрос будет «Да, верно», поскольку сейчас вы читаете эту книгу. Но если бы вы вели машину и не читали книгу, то ответ также был бы утвердительным. Он был бы утвердительным и в том случае, если бы вы, пренебрегая всеми соображениями безопасности, вели машину и читали эту книгу одновременно.

Третья операция — пересечение, обозначаемая символом , также является бинарной. Если мы переформулируем предыдущий вопрос и скажем «Верно ли, что сейчас вы читаете и ведете машину?», то ответом будет «Да, верно» только в том случае, если вы будете читать за рулем.

На основе трех указанных операций можно определить другие, более сложные, например исключающее «или» (), результат которой в нашем случае будет истинным только тогда, когда мы либо читаем книгу, либо ведем машину, но не выполняем оба эти действия одновременно. Операция  не принадлежит к основным операциям булевой алгебры, так как ее можно выразить через три основные операции А  В = (А ¬ В) v (¬ А  В).

В цифровой электронике «истина» и «ложь» обозначаются единицей и нулем. Этим значениям соответствует наличие электрического тока в цепи (1) либо его отсутствие (0). Логические операции выполняются с помощью сочетаний транзисторов. Именно благодаря применению транзисторов в интегральных схемах в последние 40 лет информатика развивается столь быстрыми темпами.

Микропроцессор вашего домашнего компьютера, который можно назвать его мозгом, содержит сотни миллионов транзисторов, расположенных на площади всего лишь в несколько квадратных сантиметров!

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

Первые важные открытия в сфере обработки естественного языка совершил инженер Джозеф Вейценбаум (1923–2008), который в 1964–1966 годах разработал программу «Элиза». Пользователи могли задавать вопросы этой компьютерной программе, моделировавшей работу психотерапевта, а «Элиза», казалось, понимала их смысл, так как выдавала более или менее осмысленные ответы. Ниже приведена запись реального разговора между автором этой книги и «Элизой»:

Игнаси Белда: Мне нужен отпуск.

Элиза: Что означает для тебя отпуск?

Игнаси Белда:  Я мог бы проводить больше времени с женой.

Элиза: Расскажи мне подробнее о своей семье.

Игнаси Белда:  У меня есть только жена.

Элиза: Ты говоришь, что у тебя только одна жена?





Игнаси Белда: Да, я не полигамен.

Элиза: Ты кажешься позитивным.

Игнаси Белда: Мою жену зовут Лайа.

Элиза: А кто еще принадлежит к твоей семье?

Игнаси Белда: Больше никто.

Элиза: На самом деле никто?

Игнаси Белда: Да.

Элиза: Ты уверен?

Игнаси Белда: Абсолютно.

Как видите, настоящие психологи могут спать спокойно — «Элиза» еще не скоро сможет лишить их работы. Тем не менее с 1960-х годов обработка естественного языка развивается быстрыми темпами, и сегодня существуют методы решения столь разных задач, как определение плагиата, автоматический перевод текстов или очеловечивание интерфейсов взаимодействия людей и машин. Заинтересованный читатель может поговорить с «Элизой» на сайте http://www.chayden.net/eliza/Eliza.html.

Грамотное структурирование знаний крайне важно. Например, представим, что нас спросили, кто занимает должность мэра в американском городе Остин в штате Техас. Если мы не живем в этом регионе США, то наверняка сразу же ответим: «Не знаю». А система, в которой знания структурированы недостаточно хорошо, например любой персональный компьютер, потратит несколько минут на анализ всех документов на жестком диске, чтобы определить, не содержится ли в них имя мэра этого американского города. Интеллектуальная или псевдоинтеллектуальная система должна отвечать на этот вопрос так же быстро и четко, как человек. Для этого знания, хранящиеся в системе, должны быть четко структурированы и легко доступны.

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

Чтобы четко контролировать знания, содержащиеся в базе, необходима метаинформация, описывающая их внутреннее представление. Знать, как представлены знания, очень важно, так как они могут быть структурированы множеством способов, и информация о структуре хранимых знаний может оказаться крайне полезной.

Следует учитывать и разграничение знаний: при работе с нашей базой знаний будет полезна информация о том, какие области и в какой мере эта база охватывает.

Человек легко справится с неполнотой знаний, но информационной системе необходимо очень четко указать, что ей известно, а что — нет. Поэтому одним из первых методов управления базами знаний стало допущение замкнутости мира (англ. CWA — Closed World Assumption). Это допущение предложил Раймонд Рейтер в 1978 году. Он взял за основу простое утверждение, которое, однако, имело важные последствия: «Единственные объекты, которые могут удовлетворять предикату Р, — те, что должны удовлетворять ему». Иными словами, все знания, не зафиксированные в системе, неверны.