Системы искусственного интеллекта

Попытки формализовать мышление человека, построить адекватную модель рассуждений, выявить способы творче­ского разрешения проблемных ситуаций предпринимались учеными с древних времен. Платон, Аристотель, Сенека, Р. Декарт, Г. В. Лейбниц, Дж. Буль, Н. Лобачевский и мно­гие другие исследователи стремились описать мышление как набор некоторых элементарных правил и операций, смоделировать интеллектуальную деятельность.

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

Исследования в области ИИ развиваются по двум основ­ным направлениям. Это связано с тем, что ответить на во­прос, что такое интеллектуальная система, можно двояко.

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

С другой стороны, систему можно считать интеллектуа­льной, если достигнутый ею результат подобен результату, который в тех же условиях получает человек. Что касается внутренних механизмов формирования поведения, то разра­ботчик ИИ вовсе не должен копировать особенности «живых аналогов ».


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

Второе направление, называемое машинным интеллек­том, рассматривает продукт интеллектуальной деятельно­сти человека (решение задач, доказательство теорем, игры со сложной стратегией и пр.), изучает его структуру и стре­мится воспроизвести этот продукт средствами вычислитель­ной техники. Успехи этого направления тесно связаны с развитием компьютеров и искусством программирования.

Оба направления активно используют методы моделиро­вания — имитационного и структурного, математического и компьютерного и др.

Пример. В замечательной книге «Маленькая энциклопедия о большой кибернетике» В. Пекелис, описывая исследо­вания в области бионики, задает вопрос: мог ли чело­век пройти мимо заманчивой идеи — создать своими руками то, что уже создала природа? Тем более, что он подмечает много преимуществ в творениях природы перед своими собственными созданиями. При этом уче­ные стремятся не к слепому подражанию, не к заимст­вованию всех характеристик биологических объектов, а к критическому, строгому отбору только полезных для техники свойств. Моделировать деятельность жи­вых организмов интересно и нужно, особенно те функ­ции, которые повышают гибкость, надежность, эконо­мичность системы или процесса.

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

Кора больших полушарий головного мозга человека со­держит около 14 миллиардов нейронов, образующих слож­нейшее переплетение связей. Устройство и законы функцио­нирования самого нейрона также очень сложны, что позволяет использовать для его описания только упрощен­ные модели. Такие модели носят название нейроноподобных сетей. Используются они для построения систем управления различными робототехническими устройствами. Нейронопо-


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

Пример.Первый в нашей стране транспортный робот ТАИР с сете­вой системой управления был построен еще в 1975 году. Он мог целенаправленно двигаться в естественной среде (в парке), объезжать препятствия, избегать опасных мест, поддерживать внутренние параметры в заданных преде­лах. При этом робот достигал цели с минимальными энергетическими и временными затратами. Нейронопо-добная сеть, составляющая основу управления, содержа­ла 100 узлов и отвечала за шесть видов деятельности: рас­познавание и оценку ситуации, решения, маневры верхнего и нижнего уровня, элементарные двигательные действия. Исследования ТАИРа и его «последователя» — лабороторного робота МАЛЫШ, обладающего более раз­витой системой технического зрения и нейроноподобной сетью, обрабатывающей данные восприятия, стали осно­вой построения промышленного транспортного робота широкого назначения ГРУЗ-2Т.

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

Особое внимание в исследованиях по машинному интел­лекту уделяется проблемам распознавания образов и орга­низации речевого «общения».

Одна из удивительнейших способностей человека — спо­собность узнавать. Едва бросив взгляд, мы узнаем, что перед нами кот или собака, корабль или бабочка, буква «ч» или «у». Узнаем, как правило, безошибочно, будь то сам «ориги­нал» или его уменьшенное или увеличенное изображение. Способностью узнавать человек обладает испокон веков. И все-таки до сего времени ученые в точности не знают, как же человек узнает.


Пример.Попробуйте объяснить, по каким формальным призна­кам вы отличаете кота от собаки. Спутаете ли вы их, если оба они спят, свернувшись клубочком? По каким признакам вы их отличите теперь?

Ученые считают, что восприятие окружающего мира в форме образов дают возможность человеку (и животным) бо­лее экономно использовать память.

Задачи распознавания образов очень разнообразны. Наи­более простые из них решаются, например, в программах оптического распознавания символов (OCR — optical charac­ter recognition), предназначенных для ввода печатного или рукописного текста, в частности, с помощью сканера. Распо­знавание символов, даже будучи «наиболее простым» в классе задач распознавания образов, тем не менее достаточ­но сложны для их формализованного описания.

ПримерНа рис. 2.5.1. приведены различные изображения буквы «А». У них разные начертание, цвет, наклон. Какие формальные признаки, присущие только этой букве и никакой другой, можно выделить? Просто ли перевести их на строгий алгоритмический язык?

Рис. 2.5.1

Изображения буквы «А»

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

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


Пример. Существуют системы, которые могут сообщение, при­сланное по электронной почте, преобразовать в «голосо­вое» и передать по нужному телефону в заданный проме­жуток времени.

Другие системы по названному телефонному номеру (входящему в зараннее определенный список) обеспечи­вают услуги выдачи адресов, маршрутов проезда и т. п.

Интересна история исследований по машинному интел­лекту.

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

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

Компьютеры позволяют изучать эвристическую деятель­ность человека с помощью моделей. Среди них важную роль занимают игры, особенно, шахматы, которые выступают «пробным камнем» моделирования мышления. В процессе шахматной игры человек анализирует множество условий и оценивает множество возможностей: на 64 клетках шахмат­ной доски возникает огромное число комбинаций фигур. Ко­нечно, человек перебирает не все возможные варианты, он пользуется выработанной стратегией. Аналогичные модели перебора множества возможных вариантов возникают при решении самых разнообразных задач, например, при поиске пути в лабиринте или определение стратегии размещения ценных бумаг.

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


не рассматривают вариантов бесперспективного поиска, а ищут решение только в том направлении, где оно возможно.

Эвристическое программирование используется при созда­нии систем искусственного интеллекта, называемых решате­лями задач. Обычно программы-решатели строятся для за­дач, связаных с преобразованием ситуаций, когда заданы исходная и желаемая ситуация, а также набор операторов или действий, которые могут строго определенным образом изменять ситуации. Чаще всего решатели используются как составная часть систем автоматизации управления сложны­ми объектами, в частности, роботами.

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

Этапы анализа таковы:

• выделение из текста очередной фразы;

• лексический анализ — выделение слов и частей речи;

• поверхностный синтаксический анализ — выделение чле­нов предложения;

• глубинный синтаксический анализ, учитывающий смыс­ловые связи между словами.

В результате анализа строится внутреннее представление фразы, отражающее ее смысл.

Синтез перевода включает следующие этапы:

• подбор слов выходного языка для передачи внутреннего представления фразы;

• расстановка слов в нужном порядке с извлечением из сло­варя внешней лексической формы слов;

• формирование окончательного вида переведенной фразы.
Почему машинный перевод относится к классу систем ис­
кусственного интеллекта? Одна из причин — многознач­
ность большинства естественных языков, когда смысл фра­
зы можно определить только из контекста.


Пример. Можно ли однозначно понять и перевести следующие фразы вне контекста?

«Не валяй дурака»; «Вот где собака зарыта»; «Остался с носом»; «Он на этом собаку съел».

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

Знания о предметной области и способах решения задач из нее могут быть декларативные и процедурные. Декла­ративные знания описывают объект (отвечают на вопросы типа: «Что есть X?», «Как связаны X и Y?», «Почему X?»). Процедурные знания описывают последовательность дейст­вий, которые могут использоваться при решении задач (от­вечают на вопросы типа: «Как сделать X?»).

Базы знаний строятся на основе моделей, разработанных в когнитивной психологии (психологии познания). Основ­ных моделей три: логическая, сетевая, продукционная.

Логическая модель широко использует аппарат матема­тической логики. Декларативные знания представляются в виде формул, а использование логических операций позво­ляет записать процедурные знания.

Пример. Суждение «Я обязательно поеду на матч, если достану билет или меня пригласит товарищ и если не будет до­ждя» можно записать следующим образом:

(A v В) л чС => D. Здесь:

А — «Я достану билет»; В = «Меня пригласит товарищ»; С = «Будет дождь»; D = «Я поеду на матч»; v — логическая операция «или»;


л — логическая операция «И»; -1 — логическая операция «НЕ»; => — логическая операция «ЕСЛИ..., ТО...». Возможна и такая форма записи: ( ИМЕТЬ (я, билет) v ПРИГЛАСИТЬ (товарищ, я) ) л -, ИМЕТЬ МЕСТО (дождь) => ПОЙТИ (я, матч).

В основе сетевой модели лежит идея о том, что любые знания можно представить в виде совокупности объектов (понятий) и связей (отношений) между ними. Знания, пред­ставленные таким образом, носят название семантические сети.

Пример. Фраза «девочка ищет в комнате большой красный мяч, который лежит под письменным столом» может быть представлена в виде семантической сети, изображенной на рис. 2.5.2.

Рис. 2.5.2

Семантическая сеть

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

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


Пример