Искусственный интеллект: состояние и перспективы

Искусственный интеллект - область информатики (т.е. наука в ряду других компьютерных наук - Computer Sciences), которая исследует и разрабатывает модели, методы и средства формализованного решения интеллектуальных задач. Сразу же возникает вопрос - какие задачи следует считать интеллектуальными? Не будем вдаваться в подробное обсуждение этой темы, поскольку разные специалисты имеют по этому поводу разные мнения, которые к тому же меняются c развитием самой науки. Ограничимся упрощенной формулировкой: интеллектуальные задачи - это задачи, для решения которых у человека нет алгоритма.

Два слова о ключевых понятиях информатики, которые только что были упомянуты. Первое из них - алгоритм, т.е. точно определенная процедура, которая при наличии исходных данных может выполняться чисто механически. Для ее выполнения не требуется ни знаний (кроме знания самого алгоритма), ни опыта, ни сообразительности - лишь бы шаги, из которых она состоит, были достаточно элементарными и однозначно понимаемыми. Поэтому, кто бы эту процедуру ни выполнял, при одинаковых данных не только результат, но и весь процесс выполнения должен быть одним и тем же. Таковы, например, вычислительные процедуры или инструкции (если они четко написаны) для пользователей бытовой электроники. Интеллектуальные же задачи разные люди решают по-разному. Знания, опыт и сообразительность здесь играют решающую роль. Отметим, впрочем, что между интеллектуальными и рутинными задачами нет четкой грани. Часто человек использует интеллект и для рутинной задачи - чтобы решить ее с меньшими затратами.

Второе ключевое понятие информатики - формализация. Под формализацией задачи понимается точное (как правило, математическое) описание требований к тому, что следует считать успешным решением задачи, а также условий и ограничений, при которых ее надо решать. Создать алгоритм невозможно, не проведя формализацию. Но не всякая формализация приводит сама по себе к алгоритму. Например, задача выигрыша в шахматах вполне формализована: точно определены начальная позиция, ходы всех фигур, ситуации окончания (матовые и патовые позиции, троекратное повторение позиции), цель игры (решение задачи) - мат противнику. Однако алгоритм выигрыша из этого описания никак не следует.

Итак, искусственный интеллект (ИИ) - это наука (а не прибор типа искусственного сердца или искусственной почки), основными проблемами которой являются 1) формализация знаний, опыта и сообразительности (фундаментальная составляющая ИИ) и 2) использование полученных результатов для решения интеллектуальных задач и в конечном счете - создание интеллектуальных информационных технологий, т.е. систем, основанных на знаниях (прикладная составляющая ИИ).

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

Возникновение ИИ как самостоятельной науки принято датировать 1956 годом. Первые локальные успехи (персептрон Розенблатта, программа "Логик-теоретик", доказывавшая некоторые теоремы логики высказываний, "Общий решатель задач" Ньюэлла-Саймона) вселили надежды на быстрое продвижение по первому пути - пути моделирования процессов мозга. Эти надежды базировались на так называемой компьютерной парадигме: предположении о том, что мозг - это "биокомпьютер", т.е. что его устройство аналогично компьютеру и что в терминах базовых алгоритмических моделей информатики можно адекватно описать информационные процессы мозга. Постепенно выяснилось, что это не так.

Грубо говоря, принципиальное отличие компьютера от мозга заключается в том, что компьютер предназначен для обработки символьной информации, а мозг - для обработки образной информации. Образность здесь понимается в широком смысле - не обязательно как графическое или визуальное представление информации, а как целостное представление, обрабатываемое "сразу" каким-то нераскрытым до сих пор способом. Образными могут быть мысли, идеи, впечатления, оценки людей и ситуаций. На образных представлениях основаны различные виды интуитивных решений в реальном времени военачальниками, диспетчерами, брокерами; экспертные оценки качества (оценки членов конкурсных жюри, антикваров, судей фигурного катания); узнавание в разных формах - идентификация знакомого объекта (лица, дома, предмета), опознание манеры, стиля, почерка; наконец, известное всем чувство "что-то это мне напоминает". Характерная особенность этих процессов - их невоспроизводимость и невербальность, иначе говоря, невозможность их объективировать, т.е. дать словесное (и тем более формальное) описание, с помощью которого процесс можно повторить, передать другому. Многочисленные компьютерные методы обработки образной информации работают с ней как с символьной и имеют мало общего с тем, как работает с ней мозг.

В результате то, что легко для компьютера (например, сложные вычисления), трудно для мозга; и наоборот - то, что трудно для компьютера, легко для мозга. "Легкость" для мозга можно объяснить только тем, что, как уже говорилось, мозг свои представления обрабатывает "сразу", т.е. с высочайшим уровнем параллелизма, тогда как вычислительные процессы компьютера являются последовательными. Кроме того, по-видимому, представления информации в мозге являются по большей части не цифровыми, а аналоговыми. Информационные механизмы мозга, не раскрытые до сих пор, позволяют компенсировать низкую скорость передачи нейронных сигналов. Благодаря этому человек до сих пор многие задачи (включая упомянутые выше задачи узнавания, принятия решений, экспертных оценок и т.д.) решает эффективнее, чем компьютер.

В настоящее время приходится констатировать, что задача моделирования информационных процессов мозга крайне далека от своего решения и требует тесного взаимодействия всех когнитивных наук: нейрофизиологии, психологии, лингвистики и искусственного интеллекта. Наибольших успехов на этом пути достигла, видимо, нейрофизиология. Об анатомии, физике и биохимии процессов мозга известно очень многое. Но эти знания, грубо говоря, аналогичны знаниям по электронике и схемотехнике компьютера, и не более того. Чтобы понять, в чем принципиальная недостаточность этих знаний, полезно вспомнить историю вычислительной техники. В глазах миллионов пользователей ее триумфальное шествие связано, прежде всего, с выдающимися успехами микроэлектроники. Однако в действительности компьютеры придумали не физики и не инженеры, а математики. Основные принципы работы компьютеров - это математические принципы обработки информации, не зависящие от ее физических носителей. Они были созданы на теоретическом уровне Тьюрингом в 30-х годах (знаменитая "машина Тьюринга"), а на практическом уровне в виде первых вычислительных машин - фон Нейманом в 40-х годах ("фон-неймановская архитектура" - модель организации информационных процессов в реальных компьютерах), когда никакой прикладной электроники еще не существовало. Эти принципы по-прежнему лежат в основе современной вычислительной техники и от успехов физики не зависят. Так вот - если принципы обработки информации в компьютерах нам известны досконально, то принципы информационных (а не физиологических!) процессов мозга нам пока неизвестны.

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

Во всякой ИС можно выделить два основных функциональных блока: базу знаний (БЗ) и блок вывода, который называют также решателем, рассуждателем и т.д. Именно возможность рассуждать, т.е. делать выводы из имеющейся информации и получать сведения, которые явно не лежат в БЗ, превращает данные в знание. Этим база знаний отличается от базы данных (БД).

Простой пример. Пусть в базе данных лежат только два утверждения: "Расстояние от Москвы до Твери 180 км" и "Автобус Москва-Тверь идет со средней скоростью 60 км/час". Такая БД способна ответить только на два вопроса: "Каково расстояние от Москвы до Твери?" и "Какова средняя скорость автобуса Москва-Тверь?". На вопрос "Можно ли доехать автобусом из Москвы до Твери за 2 часа?" она ответить уже не может. Человек легко даст отрицательный ответ, но при этом он использует дополнительное знание ("Расстояние равно произведению времени на скорость"), которого в базе нет, и проведет простое рассуждение типа: "За два часа автобус пройдет 60*2=120 км. 120 меньше, чем 180. Поэтому доехать автобусом из Москвы до Твери за 2 часа нельзя".

Построение баз знаний основано на совокупности методов, называемой инженерией знаний. Эти методы решают две проблемы. Первая - извлечение знаний из специалистов в данной области (экспертов). Здесь трудность заключается в том, что специалисту не всегда легко выразить свой опыт и знания в четкой словесной форме. Например, опытный врач уверенно назначает лечение, но затрудняется сформулировать свое решение в виде правила " если имеются такие-то симптомы и результаты анализов, то лечить надо так-то". Поэтому методы извлечения знаний включают различные психологические приемы и требуют определенных умений от инженера по знаниям ("извлекателя знаний"). Вторая проблема состоит в создании представлений знаний, удобных для автоматической обработки. Знания могут быть представлены в виде системы продукций (правил вида "если ... то ..."), совокупности утверждений логики предикатов, семантической сети (системы понятий, связанных определенными отношениями), фреймов и т.д. В последнее время становится все более популярным представление знаний в виде онтологий. Онтология - это стандартизованная семантическая сеть, имеющая, как правило, иерархическую структуру с определенным набором отношений и средств обработки запросов.

Блок вывода содержит средства рассуждений, позволяющие делать выводы из знаний, содержащихся в БЗ. В исторически первых ИС, названных экспертными системами, знания состоят из фактов (заложенных заранее или поступающих в реальном времени) и правил-продукций вида "если ... то ...". В них рассуждение представляет собой поиск правил, для которых выполнено условие "если", с последующим выполнением действий, описанных в правой части правила. В ИС, где знания представлены логическими утверждениями, рассуждение имеет вид доказательства теоремы, т.е. использует методы дедуктивной логики. Таковы, например, ИС, использующие известный язык ПРОЛОГ. В ИС, ориентированных на интеллектуальный анализ данных, т.е. на извлечение закономерностей из массивов данных, используются методы индуктивной логики, которые заключаются в автоматическом порождении гипотез и их последующей проверке. Кроме того, разрабатываются различные "неклассические" логики, в которые неявно включены знания об особенностях конкретной предметной области: логики времени, учитывающие временные отношения "раньше", "одновременно", "не позднее чем" и др.; пространственные логики с отношениями типа "над", "за", "около", "ниже", "выше"; различные варианты нечеткой логики, формализующие неустранимую нечеткость исходных данных.

Рассуждения в ИС могут и не иметь явно выраженного логического вида. К ним относятся, например, методы автоматической классификации, в которых задача состоит в том, чтобы отнести данный объект к одному из известных классов по заданному набору признаков, методы анализа ситуаций на основе когнитивных карт (диаграмм специального вида) и т.д.

Перечислим некоторые типичные задачи, которые решаются с помощью ИС.

Диагностика - обнаружение источников и причин отклонений от нормы. Сюда относятся задачи медицинской диагностики, обнаружение неисправностей в сложных технических системах, программном обеспечении и т.д.

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

Управление сложными системами (верхний уровень, требующий нестандартных, плохо формализуемых решений): управление роботом, управление грузовыми потоками на железной дороге и транспортной ситуацией в большом городе. С управлением тесно связана п оддержка принятия решений - помощь лицу, принимающему решение, в формировании альтернатив и выборе правильного решения. Примеры: выбор стратегии выхода фирмы из кризисной ситуации, выбор курса лечения в медицине, принятие решений в различных чрезвычайных ситуациях. Решение таких задач обычно сочетается с прогнозированием последствий различных выборов.

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

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

Обучение. Обучающие системы анализируют ошибки и пробелы в знаниях учеников, планируют общение с учеником в зависимости от его успехов.

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

В Советском Союзе работы по ИИ начались с середины 60-х годов. С этого времени бессменным лидером советской школы стал Дмитрий Александрович Поспелов, на книгах которого воспитано не одно поколение исследователей. По его инициативе в конце 80-х годов была создана Советская (ныне Российская) ассоциация искусственного интеллекта (РАИИ). РАИИ является членом Европейской координационной комиссии по ИИ (ECCAI), активно участвует в европейских конференциях по ИИ и провела уже десять национальных конференций по искусственному интеллекту. В настоящее время фундаментальные работы по ИИ ведутся более чем в тридцати городах: в институтах Российской академии наук (ИСА, ВЦ РАН, ВИНИТИ, ИПУ, ИППИ (все - Москва), СПИИРАН (Санкт-Петербург), ИСИ (Новосибирск), ИДСТУ (Иркутск), ИАПУ (Владивосток) и др.) и в вузах (РГГУ, МЭИ, МИФИ, МЭСИ (все - Москва), СПбГПУ (Санкт-Петербург), ИПС (Переславль-Залесский), ТРТУ (Таганрог) и др.). Системы с элементами ИИ используются в промышленности, медицине, управлении регионами, в обработке текстовой информации и интернет-поиске и т.д. Среди теоретических исследований есть немало работ мирового класса. Наши исследователи регулярно выступают на международных конференциях. Однако уровень использования интеллектуальных систем на практике заметно отстает от развитых стран.

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

       
Print version Распечатать