Искусственный интеллект

Начало сайта

Для учёбы

Личности

 Почти серьёзно

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

Что же это за задачи ?

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

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

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

А теперь рассмотрим эти задачи подробнее.      

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

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

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

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

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

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

Важной технической задачей при выявлении закономерностей является "сжатие" информации. Дело в том, современные средства сбора данных настолько производительны, что очень быстро заполняют память почти любого объёма. Например, стандартный телевизионный датчик требует размещения 10 млн. байт информации каждую секунду. Для того чтобы "сжать" обильный поток информации, достаточно выявить его закономерность и фиксировать лишь отклонения от нее.

Как же решается задача выявления закономерностей ? Её основой является метод индукции, т. е. способ суждения от частного к общему.

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

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

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

Понимание естественного языка - одна из самых трудных проблем при создании искусственного интеллекта.

Проиллюстрируем сложность её решения  на примере перевода с одного естественного языка на другой. На первый взгляд, здесь нет особой сложности. Лет тридцать назад так и думали.Известен прогноз того времени, что в 70-х годах компьютер будет бойко переводить любой текст с английского на русский и наоборот. Этот прогноз не оправдался. Считалось, что достаточно ввести в память компьютера англо-русский словарь и сведения о грамматике обоих языков. Но из этого ничего не получилось. И виной тому то, что одни и те же слова имеют разный смысл в зависимости от контекста. Например, русские слова "лук" и "коса" имеют несколько значений, а у английского слова "set" их множество. Прежде  чем  выбрать одно из значений, компьютер должен понять, о чем идет речь. А это является принципиальной трудностью машинного перевода.

Дело в том, что проблема понимания текста имеет много важных и сложных аспектов. Существует несколько уровней понимания.На самом низком уровне текст понимается дословно. Так общаются с компьютером на одном из алгоритмических языков (БЭЙСИК, ФОРТРАН, АЛГОЛ и т. д.). При этом возможен только прямой смысл. Если, например, написано (.)/a, то это означает,что значение надо разделить на а и ничего другого. Если компьютеру, владеющему лишь этим уровнем понимания, сказать "Здравствуйте, я - ваша тетя", то он будет считать, что с ним здоровается его тётя.

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

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

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

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

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

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

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

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

Источники:
  1. Растригин Л. Искусственный интеллект // Радио №4 1988
 

Последние изменения на странице произошли 08-08-2004

Hosted by uCoz