«А.В. ГАВРИЛОВ ГИБРИДНЫЕ ИНТЕЛЛЕКТУАЛЬНЫЕ СИСТЕМЫ Новосибирск 2002 5 А.В. Гаврилов. Гибридные интеллектуальные системы: Монография – Новосибирск: Изд-во НГТУ, 2002. – 142 с. В монографии рассматриваются вопросы ...»
Министерство образования Российской Федерации
Новосибирский государственный технический университет
_
А.В. ГАВРИЛОВ
ГИБРИДНЫЕ ИНТЕЛЛЕКТУАЛЬНЫЕ
СИСТЕМЫ
Новосибирск
2002
5 А.В. Гаврилов. Гибридные интеллектуальные системы: Монография – Новосибирск: Изд-во НГТУ, 2002. – 142 с.
В монографии рассматриваются вопросы построения моделей и архитектур гибридных систем искусственного интеллекта (ИИ), совмещающих в себе разные методы представления и обработки знаний, в том числе, логические, эвристические и нейрокибернетические. Предлагаются такие модели и архитектуры. Приводятся примеры прикладных гибридных систем ИИ, разработанных автором. Некоторые результаты, представленные в монографии, публикуются впервые.
Монография предназначена для специалистов в области искусственного интеллекта и всех интересующихся им, для студентов и аспирантов, изучающих дисциплины, связанные с искусственным интеллектом.
Рис. 33, список лит. 332 назв.
Рецензенты: В.В.Губарев, академик РАЕН и МАИ, Д.т.н., проф.
Е.В.Рабинович, д.т.н., проф.
Новосибирский государственный © технический университет, Гаврилов А.В., 2002 г.,
ВВЕДЕНИЕ
"С годами мозг мыслителя искусный Мыслителя искусственно создаст".И.В. Гете. Фауст В последние 20-30 лет исследования в области искусственного интеллекта заняли одно из ведущих мест в информатике и в развитии информационных технологий.
В истории человечества можно выделить несколько информационных революций, которые являлись переломными моментами в развитии цивилизации.
Первая была связана с появлением речи. Речь дала возможность передавать знания от одного индивидуума к другому и, следовательно, сохранять их, передавая из поколения в поколение.
Вторая информационная революция была связана с появлением письменности. Письменность позволила передавать знания между индивидуумами без непосредственного контакта и, следовательно, существенно увеличить доступность и надежность сохранения знаний.
Третья революция – появление книгопечатания – еще более увеличило доступность знаний и сделало возможным массовое распространение и сохранение знаний.
Четвертая революция была связана с появлением электросвязи в различных видах и средств записи знаний (информации) электрическим путем.
Пятая революция, которую мы переживаем сейчас, связана с появлением массовых ЭВМ, объединенных сетями, и обладающих мощными средствами для хранения, накопления и использования знаний. В рамках этой информационной революции можно выделить также ряд этапов, последним из которых является появление систем искусственного интеллекта или систем, основанных на знаниях. В целом пятая революция дала возможность сохранять и иметь быстрый доступ практически к неограниченным по объему знаниям. Кроме того, системы искусственного интеллекта дали возможность впервые связать непосредственно знания с материальным производством (или, в более общем случае, с окружающим материальным миром), исключив человека, как промежуточное звено. Более того, они могут вырабатывать новые знания. Для этого служат средства извлечения (или приобретения) знаний, например из баз данных путем выявления закономерностей и формулирования этих закономерностей в виде баз знаний. В компьютерном мире сейчас получили распространение исследования и разработки в области так называемых технологий "data mining" и "knowledge discovery" – извлечения полезных данных (знаний) из большого их количества, в том числе, из неструктурированных данных.
Современная информатика во многом обязана исследованиям в области искусственного интеллекта. Например, многие разделы исследования операций появились из разработанных в 50-х годах методов ограничения перебора вариантов при решении задач ИИ. На терминологию и методы построения компиляторов повлияли исследования в области машинного перевода. Средства распознавания и синтеза речи сейчас уже являются неотъемлемой частью некоторых специализированных информационных систем и претендуют на широкое использование в операционных системах. Системы распознавания текста являются обычной частью офисных программных систем (печатный текст) или карманных компьютеров (рукописный ввод). Объектно-ориентированное программирование выросло из представления знаний в виде фреймов, придуманных американским ученым Мински в конце 60-х годов. Нейросетевые технологии и технологии экспертных систем успешно применяются в системах экономического анализа и прогнозирования. Примеры можно было бы продолжить.
Существует много различных определений области информатики, называемой искусственным интеллектом (ИИ). Ниже приведены некоторые из них [1]:
"[Автоматизация] видов деятельности, которые мы ассоциируем с человеческим мышлением (human thinking), таких как принятие решений, решение проблем, обучение …" (Belman, 1978);
"Прикладывание новых усилий для того, чтобы сделать думающие компьютеры, … машины с мозгами в полном и дословном смысле" (Hougeland, 1985);
"Изучение ментальных способностей через использование вычислительных моделей" (Charniak, McDermott, 1985);
"Искусство создания машин, которые осуществляют функции, требующие интеллекта при реализации их человеком" (Kurzweil, 1990);
"Область науки, которая имеет дело с объяснением и воспроизведением интеллектуального поведения в терминах вычислительных процессов" (Schalkoff, 1990);
"Изучение того, как заставить компьютеры делать вещи, которые в настоящее время лучше делают люди" (Rich, Knight, 1991);
"Изучение вычислений, которые делают возможным распознавать, размышлять и действовать (Winston, 1992);
"Область информатики, имеющая дело с автоматизацией интеллектуального поведения" (Luger, Stubblefield, 1993).
Такое разнообразие определений объясняется тем, что понятие "искусственный интеллект" может рассматриваться в различных контекстах. Оно может рассматриваться как наука, набор технологий, реализованная модель разума, раздел информатики, занимающийся изучением того, как работает мозг. Некоторые ученые склонны рассматривать "искусственный интеллект" как нечто постоянно ускользающее и недоступное (цель, всегда находящаяся за горизонтом). Такая точка зрения объясняется тем, что технологии и алгоритмы, разработанные в рамках ИИ, со временем становятся неотъемлемой частью информационных технологий и более не ассоциируются с ИИ. Если встать на эту точку зрения, то искусственным интеллектом можно назвать "еще не широко используемые или не открытые технологии, которые реализуют или моделируют процессы обработки информации в нервной системе".
В отличие от некоторых других достижений цивилизации, таких как автомобиль, самолет, кухонная бытовая техника, искусственный интеллект не имеет прототипов в народном творчестве – мифах, легендах и сказках. Мифы или мечты о нем возникают только с появлением вычислительной техники и автоматики (в 40-х годах 20-го века), за некоторыми исключениями (одно из них, может быть, единственное) приведено в эпиграфе. Что касается более ранней мифологии, наиболее близким легендарным персонажем является искусственный человек (андроид или гомункулус). Однако он всегда присутствует как бездумный послушный хозяину механизм. Можно вспомнить железного человека, выкованного Гефестом на горе Олимп, деревянного человека, сделанного итальянским мастером в Толедо и известного больше под именем "каменного гостя" А.С. Пушкина, Голема – слугу средневекового алхимика из г. Праги.
Они явились прототипом современного робота. Однако при создании реальных современных роботов возникла проблема общения с ними с целью формулирования им задач. При решении этой проблемы появилось понимание того, что если мы хотим иметь удобные и надежные средства общения с роботом (или в общем случае с некоторой сложной системой), мы должны обеспечить его средствами внутреннего представления и решения задач примерно такими же, как у человека. Иначе мы обречены либо на изучение искусственного языка общения или программирования либо на "непонимание" роботом того, что мы от него хотим. Впервые на проблему понимания интеллектуальной системой того, что от нее хотят, обратил внимание основатель кибернетики Н. Винер в 1948 году в своей книге "Кибернетика" [1], приведя в качестве примера притчу об обезьяньей лапке.
Особенное значение эта проблема взаимопонимания человека и искусственных интеллектуальных систем приобретает в связи с применением искусственного интеллекта в военной области, что является основой так называемой "стратегической компьютерной инициативы", провозглашенной президентом США Р. Рейганом еще в 1983 году.
Таким образом, основной целью научного направления, называемого искусственным интеллектом, является разработка механизмов человеческого мышления в искусственных технических системах.
В настоящее время можно выделить шесть основных бурно развивающихся и наиболее перспективных (по мнению автора) технологий ИИ:
1. Нейронные сети.
2. Мягкие вычисления за исключением нейронных сетей (включая сюда генетические алгоритмы и эволюционное программирование).
3. Интеллектуальные роботы.
4. Интеллектуальные агенты и мультиагентные системы.
5. Интеллектуальный анализ данных.
6. Обработка естественного языка (включая распознавание и синтез речи).
В таблице 0.1 приведена информация об основных научных школах, занимающихся разработкой этих технологий.
Из анализа существующих на рынке программных продуктов, использующих методы ИИ или разработанных для ИИ была предложена классификация прикладных задач, решаемых или способных решаться с использованием ИИ, приведенная на рис. 0.1.
В области искусственного интеллекта в СССР, России и за рубежом значительный вклад сделали следующие исследователи: Аверкин А.Н., Амосов Н.К., Батыршин И.З., Берштейн Л.С., Вагин В.М., Васильев В.И., Воронков Г.С., Гаазе-Рапопорт М.Г., Гаврилова Т.А., Галушкин А.И., Гладкий А.В., Гладун В.П., Горбань А.Н., Дорогов А.Ю., Дунин-Барковский В.Л., Ефимов Е.И., Жданов А.А., Загоруйко Н.Г., Загорулько Ю.А., Кандрашина Е.Ю., Короткий С., Крюков А.Ю., Кузнецов В.Е., Кузнецов И.П., Куссуль Э.М., Ловицкий В.А., Любарский Ю.А., Макаров И.М., Мартынов В.В., Мельчук И.А., Миркес Е.М., Нариньяни Н.С., Оныкий Б.Н., Осипов Г.С., Позин Н.В., Попов Э.В., Поспелов Г.С., Поспелов Д.А., Радченко А.Н., Рыбина Г.В., Рубашкин Б.Ш., Соломатин Н.М., Соколов Е.Н., Тимофеев А.В., Файн В.С., Финн В.К., Трахтенгерц Э.А., Хабаров В.И., Хорошевский В.Ф., Шумский С.А., Щетинин В.Г., Янковская А.Е., Bobrow D.G., Bundy A., Davis R., Feigenbaum E.A., Hayes-Roth B., Hinton J.E., Honavar V., Hopfield J.J., Hunt E.B., Kohen W.W., Kohonen T., Kovalski R.A., Lauriere J.L., Lenat D., McDermott J., McCarthy J., Minsky M., Newell A., Nil H.P., Nilsson N.J., Quillian M.R., Raphael B., Robinson J.A., Rosenblatt F., Rumelhart D.E., Sacerdoti E.D., Samuel A.L., Simon H.A., Schank R.C., Shannon C.E., Viner N., Wasserman F., Waterman D.A., Winograd T., Winston P.H., Yen J., Zadeh L.A. и др.
С самого начала развития вычислительной техники в области моделирования мыслительной деятельности параллельно развивались два подхода:
• логический, основанный на моделировании рассуждений или логического (вербального) мышления;
• нейрокибернетический, основанный на моделировании работы человеческого мозга как множества взаимодействующих нейронов.
Первый из них занимается моделированием поверхностного мышления, начиная с программирования эвристик в 50-х годах на примере решения главным образом игровых и математических задач [3] и кончая построением классических экспертных систем 80-х-90-х годов [4-10]. Этот подход реализуется в рамках технологий инженерии знаний. Но вся история развития этого направления связана с совершенствованием работы систем, основанных на знаниях, путем углубления этих знаний, и моделирования более глубинных мыслительных процессов, чем просто механизмов манипулирования символьной информацией. К этим попыткам можно отнести представление нечетких знаний с помощью лингвистических переменных [11], нечеткие [12-19] и псевдофизические логики [20] и т.п. Кроме того, в этом направлении в 80-90-годах наметилась тенденция объединения разных концепций представления и обработки University of Toronto Stanford University Carnegi-Mellon Univer- Iowa State University Iowa State University Massachusets Institute of Www.cs.toronto.edu/neuron/ Http://cs.stanford.edu/R sity http://www.cs.iastate.ed http://www.cs.iastate.e Technologies (MIT) Iowa State University esearch, http://www.cs.cmu.edu, u/~honavar/ailab/, du/~honavar/ailab/, Http://www.ai.mit.edu, navar/ailab/, http://www.cs.iastate.ed http://www.ai.mit.edu, Http://alife.santafe.edu, Http://cs.stanford.edu/ Http://cs.stanford.edu/Re http://www.shef.ac.uk, Carnegi-Mellon Uni- http://www.cs.mu.oz.au, http://www.cs.mu.oz.au, Manchester University Edinburg University Austrian Research Institute versity Stanford University Edinburg University http://www.cs.man.ac. http://www.informatics.e for AI www.ai.univie.ac.at, http://www.cs.cmu.edu, Http://cs.stanford.edu/Res Http://www.informatics. uk, d.ac.uk, Это - попытка классификации всех задач 0. Инструментарий информатизации, в которых применяются 0.1.Языки программирования для ИИ или могут применяться технологии ИИ. 0.2.Средства для создания экспертных систем 0-й раздел - задачи, решаемые не для конечных 0.3.Средства для создания хранилищ данных и пользователей, а для разработчиков интеллектуальных знаний Таблица создана на основе анализа существующих 0.5.Средства для экспериментов ERP-и CRM-системы 1.1. Планирование 2.1. Диагностика 3.1. Зрение 4.1. Идентифика- 5.1. Анализ данных 6.1. Конфигу- 7.1. Стратегии 1.2. Прогноз 2.2. Управление 3.2. Распознавание ция ситуации/ 5.2. Анализ докумен- рирование 7.2. Имитаторы 1.4. Диагностика 2.4. Безопасность 3.3. Другие сен- 4.2. Диагностика 5.3. Поиск по смыслу комплектации 7.4. Тесты и знаний в одной системе ИИ [21-28], в отличие от ранних систем ИИ (например, ранних экспертных систем). Такие системы ИИ получили название гибридных интеллектуальных систем. Причем в последнее десятилетие появились новые парадигмы, такие как онтология [29-30], интеллектуальный агент [31-32], призванные дать возможность с одной стороны более структурировать базы знаний, с другой стороны, предоставить большее разнообразие точек зрения на сущности, участвующие в представлении и обработке знаний и, соответственно, большее разнообразие методов и алгоритмов обработки. Этот путь совершенствования моделирования мыслительной деятельности можно назвать моделированием "сверху вниз".
Достоинством этого направления является относительная легкость понимания и объяснения того, что происходит в интеллектуальной системе при решении задачи, т.к. объяснение основано на вербализации, естественно реализуемой в таких системах. Недостатками этого направления являются:
• поверхностность рассуждений, т.е. отсутствие в них творческой составляющей или инсайта;
• последовательный характер рассуждений, что затрудняет распараллеливание с целью ускорения решения задач;
• трудность и большая трудоемкость формализации знаний или обучения системы;
• трудность реализации таких перспективных моделей рассуждений как немонотонные рассуждения, поддержка множественности линий рассуждений, нечеткие рассуждения, ассоциативный поиск и т.п.
Нейрокибернетическое же направление [33-58] с самого начала занималось моделированием самых глубинных процессов, протекающих в мозгу человека или животного. Можно сказать, что в отличие от первого направления, моделирующего осознанное (на вербальном уровне) мышление, это направление занимается моделированием подсознания, на котором основана в основном творческая деятельность. Недостатками этого подхода являются:
• отсутствие вербализации в процессе решения задачи нейронной сетью и, следовательно, трудность понимания того, как задача решена и достаточно ли можно доверять полученному решению;
• трудность реализации диалога в процессе решения задач;
• отсутствие возможности работы с абстрактными понятиями и иерархическими структурами.
В направлении ликвидации этих недостатков в настоящее время ведутся исследования, в частности, по созданию ансамблевых нейронных сетей [59], в которых ансамбль нейронов ассоциируется с абстрактным понятием, которое поддается вербализации, или модульных нейронных сетей [60] Это направление можно назвать моделированием мыслительной деятельности "снизу вверх".
В настоящее время (последние полтора десятилетия) наметилась тенденция комбинирования в одной гибридной интеллектуальной системе логического (в различных вариантах) и нейрокибернетического подходов [61-74]. Таким образом, исследователи пытаются компенсировать недостатки одного и другого подходов. В конечном итоге, такой путь может привести к созданию действительно "искусственного разума", рассуждающего так же как человек, и необходимого для того, чтобы обеспечивать такое же взаимопонимание между человеком и машиной, как и между людьми (при постановке и обсуждении задач, для решения которых создается прикладная система ИИ). В частности, автором в 1989 году [61] была предложена и далее развивается в [62-64, 71-72, 74] парадигма "двухполушарных экспертных систем", в основе которой лежит использование взаимодействующих между собой через доску объявлений (black board) классической экспертной системы и нейронной сети.
Таким образом, можно выделить две интерпретации понятия гибридной интеллектуальной системы – узкая, когда в ней объединяются разные парадигмы представления и обработки знаний и данных, но она остается в рамках инженерии знаний, и широкая – когда в ней объединяются модели инженерии знаний и нейроинформатики.
В настоящей работе представлены результаты исследований и разработок автора в направлении развития теории и практики гибридных интеллектуальных систем как в узком так и в широком смысле этого понятия.
1. ЭЛЕМЕНТЫ ТЕОРИИ ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ
В настоящее время существует много различных концепций, принципов и теорий, объясняющих те или иные аспекты процесса мышления и поведения человека. Они появились в рамках различных парадигм искусственного интеллекта и других разделов информатики, а также, других наук и научных дисциплин, таких как философия, психология, нейрофизиология, педагогика, лингвистика.Эти концепции и теории можно разделить на следующие группы:
1. Модели для представления знаний;
2. Модели решения задач;
3. Модели приобретения знаний (обучения);
4. Модели общения и понимания естественного языка;
5. Модели зрительного восприятия;
6. Модели планирования поведения;
7. Глобальные модели мозга и разума.
Модели представления знаний и модели решения задач развиваются в рамках инженерии знаний и традиционно тесно связаны с появлением и развитием экспертных систем. Однако, автор считает, что в обученной нейронной сети также содержатся знания, и поэтому соответствующие модели представление знаний добавлены в перечень. Модели представления знаний традиционно делятся на логические и эвристические. К логическим относятся:
• логика высказываний (обычно не считается аппаратом инженерии знаний) [1];
• логика предикатов 1-го порядка [1];
• логика Хорна в языке Prolog и подобных ему системах [2];
• логика предикатов высших порядков;
• трехзначная логика;
• логика возможных миров [3];
• модальные логики [1, 3];
• теория нечетких множеств [4-6];
• нечеткая логика [4-6];
• лингвистические переменные [7].
К эвристическим моделям представления знаний можно отнести:
• деревья решений [8, 9];
• семантические сети [1, 10-12];
• фреймы и сети фреймов [11, 13];
• онтологии [14-16];
• объектно-ориентированное программирование [17];
• реляционная алгебра (обычно не рассматривается в рамках инженерии знаний) [18, 19];
• правила-продукции (эта модель является промежуточной между логическими и эвристическими и может в зависимости от особенностей интерпретации правил рассматриваться в рамках одной или другой группы) [11, 20-22]; матрица весов связей обученной нейронной сети (коннекционистский подход) [23, 24];
• матрица весов связей и другие изменяемые параметры обученной нейронной сети, в том числе, в спайковых [25] или осцилляторных нейронных сетях [26].
Модели решения задач также можно разделить на логические и эвристические. К логическим можно отнести:
• метод резолюции [1];
• прямой, обратный и смешанный детерминированный дедуктивный логический вывод [20, 27];
• прямой, обратный и смешанный нечеткий дедуктивный логический вывод [20, 27];
• унификация в языке Prolog и подобных ему системах [1, 2, 3];
• немонотонный логический вывод [1];
• метод аргументации [28].
К эвристическим можно отнести следующие модели решения задач:
• табличный метод;
• различные методы оптимизации, рассматриваемые в рамках исследования операций (линейного, нелинейного и целочисленного программирования) [29];
• метод Монте-Карло и его разновидности [29];
• поиск решения в однородном пространстве состояний с использованием различных эвристических стратегий перебора вариантов [30];
• разбиение задач на подзадачи и решение последовательности подзадач [20, 31];
• разбиение пространства состояний на подпространства с разными уровнями абстракции и решение подзадач на этих уровнях абстракции [20];
• рассуждения по аналогии [32];
• вероятностный вывод [33, 34];
• сопоставление с образцом (четкое, нечеткое);
• генетические алгоритмы генерации и отбора решений [35];
• нейроподобные модели решения задач, основанные на взвешенном суммировании факторов [36-48].
К моделям приобретения знаний или обучения можно отнести следующие:
• индуктивный логический вывод в рамках логических моделей представления знаний [27];
• индуктивный вывод (обобщение) в рамках эвристических моделей представления знаний (к этому классу относится ДСМ-метод [49], растущие семантические сети [12]);
• обучение на одном примере путем запоминания ассоциаций (к этому классу относятся большинство моделей, реализованных в диалоговых системах, обучающихся поиску текстов по содержимому, например, [50, см. главу 4]);
• обучение на одном примере путем анализа примера;
• модель множественного учета аргументов (МГУА) [51];
• обучение на множестве примеров путем изменения весов связей нейронной сети (коннекционистский подход) [41-48];
• обучение на множестве примеров путем изменения весов связей и порогов нейронов нейронной сети [36-40];
• обучение на множестве примеров путем создания новых нейронов и связей в нейронной сети (конструктивные методы обучения) [52-54].
К моделям общения и понимания естественного языка (ЕЯ) относятся следующие модели:
• представление смысла в виде шаблонов как в программе Alice и ей подобных системах [30];
• грамматики Холмского (почти не рассматриваются в рамках искусственного интеллекта);
• синтаксически-ориентированные модели [55] анализа ЕЯ, в том числе, семантические грамматики для построения специализированных диалоговых систем со сравнительно узкой и статической предметной областью;
• модель "смысл-текст" [56];
• модель концептуальных зависимостей [57];
• сети расширенных переходов [58];
• модели активного диалога [59-60];
• модель анализа смысла как задачи распознавания [61];
• модели синтеза предложений на естественном языке;
• модели распознавания и синтеза речи [62].
К моделям зрительного восприятия относятся следующие [63-64]:
• модели борьбы с помехами на изображении, в том числе, увеличения контрастности изображения;
• модели распознавания особенностей и элементов изображений (линий, углов, точек, эллипсов);
• модели распознавания объектов (на основе сопоставления с образцом, основанных на знаниях о структуре объектов, на основе выявления особенностей);
• модели распознавания текстуры изображений;
• модели описания и распознавания сцен;
• модели для распознавания размеров объектов и расстояний.
К моделям планирования поведения можно отнести следующие:
• модели условного рефлекса [65];
• модели адаптивного поведения интеллектуальных систем (к этому классу относятся и модели управления вниманием, в частности, принцип доминанты) [66-68];
• модели искусственной жизни [68];
• модели планирования оптимального маршрута движения [69];
• модели планирования маршрута движения в неопределенной или изменяющейся среде [70];
• модели управления роботом-манипулятором (к этому классу относятся методы планирования движения манипулятора, в частности, с учетом динамических нагрузок и других помех [71];
• модели поведения мобильных интеллектуальных роботов [72].
К глобальным моделям разума можно отнести следующие:
• модель отражения материального мира марксизма-ленинизма;
• модель первичности и объективности сознания (Гегеля и других школ идеализма и мистицизма);
• гомеостатическая модель Эшби [73];
• модель целеустремленных систем [74];
• теория функциональных систем П.К. Анохина [75];
• голографическая метафора К. Прибрама [76];
• квантовая психология Р.А. Уилсона [77].
Большинство из этих моделей либо носит неконструктивный характер (особенно, последняя группа глобальных моделей), либо слишком специализировано на решение узкого класса задач при существенной ориентации на использование определенных технологических методов и средств, что затрудняет (или даже делает невозможным) комбинировать их в одной интеллектуальной системе.
В данной главе сделана попытка сформулировать концепции и модели, связанные с описанием информационных процессов, происходящих в мозгу, или подобных им, лишенные этих недостатков, и удовлетворяющие следующим требованиям:
они должны быть достаточно конструктивными, чтобы быть основой для создания действующих программных или программно-аппаратных моделей;
должны описывать как можно большее количество сторон функционирования интеллектуальных систем, т.е. включать в себя концепции и модели из всех перечисленных выше классов, но достаточно гармонично связанных между собой;
должны быть открыты для дальнейшего развития – уточнения и добавления новых моделей на основе уже имеющихся.
Наличие таких концепций и моделей может служить основой для создания теории интеллектуальных систем (естественных и искусственных) и создания на ее основе действительно полномасштабного искусственного разума, называемого в зарубежных публикациях "Strong Artificial Intelligence".
Необходимость его создания диктуется потребностью в Искусственном Интеллекте (реализованном в различных приложениях) как в полноценном партнере, понимающем человека на уровне человеческого понимания.
1.2. Модель интеллектуальной системы [78] Любой метод представления знаний в естественной или искусственной интеллектуальной системе можно представить как где: K – множество денотатов – образов внешнего мира, представленных в виде состояний разного типа рецепторов (датчиков или сенсоров);
D – множество десигнатов – знаков;
F(K, D) – функция отображения K на D.
При этом множество образов K можно разделить на статические и динамические и на гомогенные и гетерогенные образы. Строго говоря, статических образов вообще не существует в реальном мире. Однако, для упрощения представления и обработки знаний полезно рассматривать отдельно образы, которые не зависят существенно от времени и считать их статическими.
Динамические образы можно представить в виде множества состояний рецепторов К = (k 1, k 2,…, k i(t,K), k i+1(t,K),…), где k i+1(t,K) – параметр, зависящий от времени, т.е. функция, определенная на множестве K.
Гомогенные образы состоят из состояний сенсоров (сигналов) одного типа.
Например, зрительные или слуховые образы. В отличие от них, гетерогенные представляют собой комбинации состояний разного типа сенсоров, т.е. их можно рассматривать как комбинации гомогенных образов.
В (1) можно отображение F(K,D) разделить на два отображения: F R(K,D) – отображение образов на десигнаты (знаки) и F A(D,D) – отображение знаков на знаки. Последнее отождествляется с обычно рассматриваемыми в рамках инженерии знаний методами представлением знаний – семантическими сетями, сетями фреймов, правилами-продукциями, иерархическими структурами и т.п., с которыми имеют дело всевозможные методы логического вывода, в том числе, и нечеткого вывода. Отображение F R(K,D) можно отождествить с преобразованием образов в знаки (кодированием или распознаванием образов), производимым, в частности, в искусственных нейронных сетях.
Несколько менее очевиден тот факт, что можно выделить еще одну составляющую отношения F(K,D), отношение, определяемое на множестве нечетких образов внешнего мира, F F(K,K) (F от слова "fuzzy"). Это отношение формируется в процессе обработки поступающей из внешнего мира через рецепторы информации и является описанием получающейся в результате этого ассоциативной памяти, основы для образного (ассоциативного) мышления.
Если мы имеем дело с интеллектуальной системой, проявляющей активность по отношению к внешней среде (живое существо, интеллектуальный робот), т.е. с целеустремленной (активной) системой [74], то в формулу (1) можно добавить соответствующие компоненты, и она примет вид где: A – множество действий, которые может производить интеллектуальная система (механические действия, звуки, вывод сообщений и т.п.);
f(K,A) – отображение множества образов на множество действий (в простейшем случае это – взаимно-однозначное соответствие, имеющее место в естественных интеллектуальных системах в виде условных и безусловных рефлексов) (рис. 1.1). Осознанные действия (управляемые вербальным мышлением) здесь явно не отражены, т.к. связь между действиями и знаками существует опосредованная через образы (через подсознательное мышление).
С другой стороны мозг можно представить (рис. 1.2) в виде ядра, ответственного за подсознательное мышление, и множества сенсорных анализаторов (зрительного, слухового, тактильного и т.п.), процесс мышления в которых осознан, т.к. непосредственно связан с активностью рецепторов. В определенном смысле можно сказать, что человек осознает себя и свои мысли через взаимодействие с окружающим миром.
Тактильные образы Отображения F A(D,D) и F R(K,D) – основа для вербального мышления, относятся к области сознания, причем к небольшой ее части, связанной со слуховым анализатором. Это связано с тем, что в основе вербального мышления лежит последовательное проговаривание слов (знаков), развитием которого является последовательное логическое мышление. Все остальные области мозга занимаются образным мышлением (осознанным или подсознательным). В случае осваивания человеком техники скорочтения проговаривание исключается из процесса восприятия текста и в этом случае при чтении имеет место параллельная обработка зрительных образов, распознавание которых может инициировать как образное, так и вербальное мышление.
Известно, что при медитации [81] человек отключает сознание и органы чувств, т.е. процесс мышления сохраняется только в ядре. Это позволяет мозгу разбудить процесс поиска ассоциаций, свободный от ограничений, связанных с логическим мышлением и с ассоциациями, хранящимися в сенсорных анализаторах, описывающих конкретные образы (ситуации). В этом случае при возврате на сознательный уровень мышления возникает эффект "инсайта", т.е.
знание в мозгу появляется как бы "само по себе". Подобные процессы могут иметь место в искусственных интеллектуальных системах, построенных в "двухполушарной" парадигме [80-87]. Пока же при реализации нейронных сетей мы имеем дело с моделированием подсознания (разработчики практически не продвинулись дальше реализации условных рефлексов и ассоциативной обработки данных на уровне зрительных и других анализаторов). При реализации систем, основанных на знаниях, моделируется сознание на уровне логического мышления (с элементами нечеткости как попыткой свести параллельные процессы ассоциативного поиска к последовательному логическому выводу).
1.3. Модель ассоциативного мышления [88, 89] "Память никогда не восстанавливает реальность.
Память реконструирует.
Реконструкция же изменяет оригинал, становясь внешней формой, содержание которой неизбежно страдает изъянами".
Главной задачей обработки знаний, решаемой в любой интеллектуальной системе, является задача поиска релевантных знаний или, другими словами, восстановление фрагмента знания (образа) по его неполному или зашумленному образцу.
В пролого-подобных системах поиск релевантного знания реализован в виде унификации. Во фреймовых системах задача поиска реализуется в виде сопоставления (matching) фреймов. В семантических сетях поиск осуществляется путем сопоставления фрагментов сети и графа-запроса.
Все эти методы поиска можно свести к одному, который и является, повидимому, реализованным в естественных интеллектуальных системах, – ассоциативному нечеткому поиску знания по его фрагменту. Под знанием здесь подразумевается ассоциативная связь между образами Пусть задано:
множество признаков K = {p i} | i = 1,N p, описывающих состояние внешнего мира и самой интеллектуальной системы в некоторый момент времени t, где N p – количество признаков;
множество комбинаций значений признаков на множестве K P 0 = {P j} | P j = {p ij} | j = 1,N о, i = 1,N p, описывающих конкретные образы, с которыми сталкивается при своем функционировании интеллектуальная система, где N о – количество образов;
множество реальных (не с полным набором признаков) образов P = {P kj} | j = 1, N о и k пробегает значения из подмножества натурального ряда чисел в интервале (1,N p);
запрос (образ, инициирующий ассоциативный поиск) P P;
образ-результат ассоциативного поиска R P.
Выделение множества "реальных" образов P в отличие от множества "идеальных" образов P 0 имеет принципиальное значение. Естественная интеллектуальная система практически всегда имеет дело с неполными данными о внешнем и внутреннем (своем) мире. Основываясь на них, она вспоминает (додумывает, довоображает) недостающие данные, а также, вспоминает связанные с ними ассоциативно другие образы (предшествующие или следующие во времени). Этот процесс, основанный на ассоциативном вспоминании, и лежит в основе процесса мышления. При этом надо различать два разных процесса:
процесс восстановления образа по частично заданным признакам (обычно именно этот процесс имитируется в различных моделях ассоциативной памяти, и он может иметь смысл восстановления искаженного помехами зрительного или слухового образа, вспоминания шума, услышанного одновременно с определенным зрительным образом и т.п.);
процесс поиска связанных ассоциативно с данным образом других образов, привязанных к другим значениям времени (эти образы могут иметь смысл причины или следствия данного образа).
Если первый вариант реализуется в естественных интеллектуальных системах в рамках сенсорных отделов головного мозга, то второй – в коре головного мозга и является основой прогностической деятельности и всей мыслительной деятельности живого существа.
Далее будет рассматриваться модель, ориентированная на описание второго варианта, представляющего на взгляд автора наибольший интерес. До недавнего времени моделированию процесса ассоциативного мышления во времени не уделялось должного внимания, хотя в последнее время начали появляться модели нейронных сетей, работающих с динамическими образами [25, 26]. Из более ранних работ можно упомянуть [37].
В общем случае признаки из множества K являются числами, определенными на метрических шкалах. В частном случае признаки являются бинарными. Признаки могут быть внешними и внутренними. Внешние признаки связаны с восприятием объектов внешнего мира с помощью рецепторов или устройств, их заменяющих в искусственных интеллектуальных системах. Внутренние признаки являются состояниями элементов системы представления знаний (переменных, слотов, нейронов). Соответственно, образы, описываемые признаками, можно разделять на внешние и внутренние.
Определение 1. Назовем отношение между двумя образами P и R, обладающее свойствами симметричности, рефлексивности и транзитивности, ассоциацией A(P,R) или (P,R), предикат (P a,R a,T a), описывающий процесс восстановления R a | R a R по P a | P a P, – ассоциативным поиском, P a – начальным образом ассоциативного поиска и R a – конечным образом ассоциативного поиска, T a – временем ассоциативного поиска. Причем, для всех P a и R a справедливо, что (P a,R a,T a) = true, если P a = P и R a = R, (P a,R a,T a) = false, если P a =. Если рассматривается интеллектуальная система, функционирующая в дискретном времени, то T a (1,N).
Определение 2. Множество ассоциаций A = {A i(P i,R i)} | i(1,M) образуют память или базу знаний интеллектуальной системы.
Определение 3. Ассоциативный поиск (P a,R a,T a) такой, что он использует только одну ассоциацию, содержащуюся в памяти интеллектуальной системы, A = (P,R) | P a P, R a R, называется элементарным ассоциативным поиском. Для случая интеллектуальной системы с дискретным временем элементарному ассоциативному поиску соответствует время поиска Ta=1 (один шаг). В этом случае будем опускать время поиска и обозначать элементарный ассоциативный поиск как (P a,R a).
Определение 4. Ассоциативный поиск, принимающий значение true, будем называть успешным, а принимающий значение false, – неудачным.
Каждой ассоциации A = (P,R) соответствует в общем случае множество элементарных ассоциативных поисков, мощность которого равна мощности декартова произведения P s X R s, где P s – множество всех подмножеств множества P и R s – множество всех подмножеств множества R.
Каждой ассоциации A = (P,R) в общем случае соответствует множество успешных ассоциативных поисков = { i(P ia,R ia,T a)}, где P ia P и R a R.
Формирование этого множества зависит от особенностей конкретной реализации ассоциативной памяти (а именно, сопоставления начального образа ассоциативного поиска P ia с образом P). Предикат-отношение, описывающий сопоставление двух образов (имеющий смысл примерного равенства), будем обозначать знаком.
Определение 5. Ассоциация, которой соответствует множество успешных ассоциативных поисков, мощность которого равна 1, называется детерминированной ассоциацией. Если мощность множества больше 1, ассоциация называется нечеткой.
Определение 6. Назовем ассоциацию и ассоциативный поиск связанными, если на образы накладывается следующее ограничение:
Определение 7. Назовем ассоциацию и ассоциативный поиск несвязанными (или свободными), если никаких ограничений на множества P и R не накладывается.
Определение 8. Множество признаков K 0 называется ядром ассоциации, если т.е. K 0 является пересечением множеств P и R.
функционирование нейронной сети Хопфилда [23] с "замораживанием" разрядов входного вектора, а примером свободного ассоциативного поиска – функционирование сети Хопфилда без "замораживания". Функционирование любой другой модели нейронных сетей, где входной и выходной векторы "разнесены в пространстве" (базируются на разных нейронах) и имеют разную интерпретацию, можно рассматривать как свободный ассоциативный поиск.
Множество из N ассоциаций (P i,R) / i (1,N), в котором в качестве множества признаков R выбирается один и тот же внутренний образ, является элементарным деревом и элементом иерархических структур, используемых для классификации образов.
Процесс мышления в определенных выше терминах ассоциаций и ассоциативного поиска можно представить как ассоциативный поиск (процесс вспоминания) образов, инициируемый начальным входным образом, состоящим из внешних признаков. В общем случае его можно представить как ассоциативный поиск, раскладываемый в цепочку или дерево элементарных ассоциативных поисков. Дерево получается, если на очередном шаге есть альтернативные для применения ассоциации. Возможно два вида цепочек:
1) цепочка с забыванием, когда все образы, восстановленные в результате предыдущих ассоциативных поисков, не учитываются в процессе выполнения текущего ассоциативного поиска;
2) цепочка с запоминанием, когда начальным образом для текущего ассоциативного поиска является образ, являющийся композицией (в простейшем случае, объединением) конечных образов, полученных на предыдущих шагах ассоциативного поиска, причем можно ввести параметр m – глубину запоминания, ограничивающий учет истории ассоциативного поиска (при m = 0 цепочка с запоминанием превращается в цепочку с забыванием).
При цепочке с запоминанием величина m ассоциируется с понятием емкости кратковременной памяти, используемым в психологии и нейрофизиологии. Считается, что объем кратковременной памяти составляет 5образов.
Цепочку с забыванием можно представить в следующем виде:
( P a, Pna, T a ) = ( P a, P2a, T1a ), ( P2a, P3a, T2a ),...., ( Pi a, Pi a 1, Ti a ),...., ( Pna1, Pna, Tna ), где:
Графически процесс мышления в случае цепочки ассоциативных поисков с забыванием изображен на рис. 1.3. Здесь между начальным и конечным образами каждого элементарного ассоциативного поиска (жирные линии) показаны образы P и R ассоциации, использованной в нем (тонкие линии).
Рис. 1.3. Процесс мышления – цепочка элементарных ассоциативных поисков с забыванием На рис. 1.4 изображен процесс ассоциативного поиска в случае цепочки с запоминанием с глубиной запоминания m = 1. Параметр m может интерпретироваться, по всей видимости, как аналог объема кратковременной памяти в естественной интеллектуальной системе.
Рис. 1.4. Процесс мышления – цепочка элементарных ассоциативных поисков Цепочку с запоминанием можно представить как ( P a, Pna, T a ) = ( P a, P2a, T1a ), ( P2a +, P3a, T2a ),...., ( Pi a +, Pi a 1, Ti a ),...., ( Pna+, Pna, Tna ), где:
Comp – композиция образов;
m – глубина запоминания.
Под композицией в простейшем случае можно понимать объединение образов. В этом случае одинаковые признаки образов с разными значениями сосуществуют вместе. Однако более реальным и перспективным представляется вариант, когда разные значения образов одного и того же признака взаимодействуют между собой. Для упрощения формализации и дальнейшей реализации модели предлагается следующий вариант композиции образов с (i–m)-го по i-й:
где:
m k – количество образов, в которых присутствует признак p ik;
pjk = 0, если k-й признак отсутствует в j-ом образе.
Это по существу означает вычисление среднего арифметического среди присутствующих в образах значений k-го признака. При этом с учетом дискретизации значений признаков необходимо округлять среднее арифметическое до ближайшего дискретного значения. В случае бинарного признака (со значениями из диапазона {0,1}) его значением при композиции образов необходимо считать последнее i-е значение.
Возможные варианты развития ассоциативного поиска в случае наличия альтернативных ассоциаций или множества альтернативных успешных ассоциативных поисков, соответствующих ассоциациям, можно представить в виде дерева, подобного дереву решений в классической теории искусственного интеллекта. Однако, это статическая картина, которая может применяться только для удобства понимания сторонним наблюдателем. В действительности, поступление внешних образов, инициирующих процесс ассоциативного поиска, происходит в произвольные моменты времени. Поэтому следует говорить о параллельных или квазипараллельных процессах ассоциативного поиска, рост количества которых ограничивается объемом кратковременной памяти (параметр m).
В естественных интеллектуальных системах процесс ассоциативного поиска реализован в виде цепочки применения ассоциаций с запоминанием, которая эквивалентна просмотру дерева, подобно тому, как существует последовательный алгоритм, эквивалентный итерационному. При моделировании этого процесса возможны три модели просмотра этого дерева:
1) детерминированная;
2) вероятностная;
3) параллельная.
Детерминированная модель эквивалентна просмотру дерева решений в классических (логических) системах искусственного интеллекта. Эта модель предполагает оценку правильности полученного решения (в данном случае – образа) и возможность возврата к альтернативным ассоциативным поискам, отвергнутым ранее. Очевидно, эта модель далека от того, что происходит в естественных интеллектуальных системах и плохо описывает реальный процесс мышления. Однако, она может применяться при построении искусственных интеллектуальных систем. При этом надо иметь в виду, что возникает проблема выбора стратегии упорядочивания альтернатив.
Вероятностная модель предполагает выбор альтернативной ассоциации с некоторой вероятностью, которая пропорциональна прочности ассоциации (ее подкрепления в процессе обучения) (см. 1.3.3).
Параллельная модель предполагает развитие параллельного процесса применения всех возможных ассоциаций, возможно, с уровнем прочности запоминания, превышающей некоторый порог. Вероятно, это модель наиболее близка к тому, что происходит в реальной естественной интеллектуальной системе. Кроме того, параллельность подразумевает поступление новых внешних образов, инициирующих новые процессы ассоциативного поиска, в произвольные моменты времени.
В естественных интеллектуальных системах (в отличие от большинства моделей ИИ) процесс обучения не отделим от процесса рассуждений или ассоциативного поиска. Попытаемся в терминах, определенных выше, описать этот процесс.
Ассоциации в памяти возникают постоянно в процессе восприятия все новых образов внешнего мира. Но запоминаются не все из них, а только те, которые подкрепляются в процессе вызванного ими ассоциативного поиска.
Можно сказать, что процесс запоминания управляется запомненной ранее информацией. ассоциативного вспоминания (описанного выше в виде цепочек элементарных ассоциативных поисков, которые могут протекать в виде дерева параллельных процессов) при срабатывании очередной ассоциации (P,R) она становится активной на время mT a (в случае T a = 1 эта величина может быть заменена на m – объем кратковременной памяти). Подкрепление ассоциации A = (P 1,R 1) при срабатывании очередной ассоциации B = (P 2,R 2) в процессе ассоциативного поиска происходит в случае, если удовлетворяются следующие условия:
1) ассоциация A активна;
Что скрывается под термином "подкрепление ассоциации", зависит от конкретной реализации ассоциативной памяти (так же как и отношение примерного равенства образов).
Если при поступлении некоторого образа из внешнего мира инициированный им ассоциативный поиск не приводит к успеху, образ запоминается в виде конечного образа R 1 ассоциации A = (P 1,R 1), начальным образом P 1 которой является предыдущий образ. Эта ассоциация становится активной на время mT a. Если за это время она не подкрепляется, то стирается из памяти. Так происходит при первичном формировании ассоциативной памяти.
При этом на начальном этапе, когда еще память содержит немного ассоциаций, величина кратковременной памяти m может иметь большое значение и уменьшается по мере формирования ассоциативной памяти.
Понятие "ассоциация" тесно связано с понятием "подобие". Можно сказать, что если два понятия подобны, то между ними существует ассоциативная связь.
В инженерии знаний давно используются рассуждения по аналогии, основанные на применении отношений подобия (аналогии). Однако отношение подобия в инженерии знаний носит "четкий" характер, в то время как для определения ассоциативного поиска максимально, подобного происходящему в естественных интеллектуальных системах, требуется использовать категорию "нечеткость".
Пусть задано множество объектов A.
В дальнейшем будем отождествлять объекты с образами, если не оговорено иное.
Определение 9. На множестве образов (объектов) A определено отношение нечеткого подобия, если на нем определено отношение эквивалентности, и на декартовом произведении A A определена мера истинности µ() (0,1) отношения.
Определение 10. Два образа (объекта) a i и a j (a i,a j A) являются нечетко подобными с уверенностью µ ij, если на множестве A определено отношение нечеткого подобия, и паре объектов a i и a j соответствует значение меры истинности µ ij() [H,1], где H – нижняя граница нечеткого подобия, причем H [0,1). Если нас не интересует мера уверенности нечеткого подобия, будем говорить, что образы a i и a j нечетко подобны (или неограниченно нечетко подобны), если µ ij() > 0. Если задано значение H > 0,,будем говорить о нечетком подобии, ограниченном порогом H.
Утверждение 1. Задание отношения нечеткого подобия на множестве образов (объектов) A равносильно заданию на этом множестве метрики расстояний между объектами.
Например, в нейронной сети Хопфилда с состояниями нейронов из интервала (–1,1) и порогом = 0 можно представить меру истинности подобия двух образов (векторов) в следующем виде:
где a1i и a2i – i-й разряд векторов (образов) a 1 и a 2, соответственно;
функция Sign(x) принимает значение 1, если x 0, и 0 – в противном случае, w ij – вес между i-м и j-м нейронами.
Необходимо только пронормировать ее, т.е. привести к диапазону значений (0,1).
Как известно [23], при функционировании сети Хопфилда происходит минимизация энергетической функции где xi, x j – состояния i-го и j-го нейронов.
Если величину µ12() инвертировать, то легко видеть связь ее с энергетической функцией. При этом надо иметь ввиду, что энергетическая функция E учитывает связи между как одинаковыми признаками (разрядами) образов a 1 и a 2, так и между антагонистическими (имеющими разные значения), а функция µ12() учитывает только признаки, имеющие одинаковые значения. представить формирование значения µ ij() двух образов ai и aj как взвешенной суммы разницы однотипных признаков:
(aik, a jk ) – разница k-х признаков i-го и j-го образов;
где:
n – нормировочный коэффициент;
a i, a j K, где K – множество образов.
Вычисление разницы признаков и нормировочного коэффициента n зависит от вида кодирования признаков. В случае кодирования образов в виде двоичных векторов разница вычисляется как сумма по модулю 2, а нормировочный коэффициент равен длине векторов.
Если сравниваемые векторы признаков, описывающих образы, имеют разную длину, надо выравнивать их длины по вектору с максимальной длиной и формировать в одном из векторов недостающие признаки. При этом можно использовать одну из трех стратегий:
1) оптимистическую, при которой недостающие признаки формируются так, чтобы для них разница была минимальна;
2) пессимистическую, при которой недостающие признаки формируются так, чтобы для них разница была максимальна;
3) умеренную, при которой недостающие признаки формируются так, чтобы для них разница принимала среднее значение из возможных значений.
Для более полного описания возможных ассоциативных связей между образами в интеллектуальных системах введем понятие нечеткого антиподобия.
Определение 11. На множестве образов (объектов) A определено отношение нечеткого антиподобия, если на нем определено отношение эквивалентности ', и на декартовом произведении A A определена мера истинности µ(') (0,1) отношения ', причем, µ ij(') 0. Если задано ограничение подобия (порог) H > 0, то теоремы 1, 2 и 3 в общем случае не справедливы. Однако, справедливо следующее утверждение.
Утверждение 6. Для любого отношения подобия и для любых образов и ассоциаций существует такое значение H > 0, при котором справедливы теоремы 1, 2 и 3.
1.4. Принципы организации функционирования 1.4.1. Принцип обучения посредством формирования и последующего закрепления ассоциаций, происходящего в Способность обучаться (адаптироваться, пополнять и корректировать базу знаний и т.п.) является неотъемлемой частью любой действительно интеллектуальной системы (те искусственные "интеллектуальные" системы, которые не обладают этим качеством, безусловно, не могут претендовать на звание "интеллектуальных").
Принцип обучения можно сформулировать следующим образом.
Интеллектуальная система в процессе взаимодействия с внешней средой запоминает ассоциации между разными образами (стимулами, сигналами, знаками и т.п.), которые используются в процессе планирования ее поведения посредством ассоциативного вспоминания образов по их фрагментам. При достаточном закреплении ассоциаций они могут превращаться в обозначения в форме отношений (атрибутивных, причинно-следственных, падежных и т.п.) между сущностями.
Более детальное описание этого принципа содержится в предыдущем разделе 1.3.
Принцип ассоциативного вспоминания является вариантом формулирования предложенной Прибрамом в [76] голографической метафоры работы мозга.
1.4.2. Принцип концентрации и экономии ресурсов Принцип концентрации и экономии ресурсов можно сформулировать в общем виде следующим образом.
В интеллектуальной системе (естественной или искусственной) существует механизм выделения (распознавания) и активизации тех информационных ресурсов (нейронов, нейронных ансамблей, фреймов, правил и т.п.), которые существенны для решения текущей задачи интеллектуальной системой, и выключения (деактивации) тех ресурсов, которые для решения задачи не существенны.
Принцип концентрации и экономии на уровне сознательного мышления неразрывно связан с понятием целеполагания [76] и выражается в концентрации усилий (информационных и энергетических ресурсов) для достижения поставленной цели. На уровне подсознательного мышления принцип концентрации выражается, например, в решении задачи концентрации внимания (модель ART Гроссберга [90], называемая адаптивной резонансной теорией).
Этот принцип, также, аккумулирует в себе знания, накопленные в нейропсихологии в форме теории возбуждения и торможения.
В естественном мозге целеполагание или концентрация внимания реализованы в ретикулярной формации [76].
Этот принцип, по-видимому, связан с механизмом эмоций в интеллектуальных системах [91]. Можно сказать, что сила эмоций влияет на степень концентрации ресурсов, а характер эмоций – на выбор цели, для достижения которой концентрируются ресурсы. Можно также предположить, что эмоции связаны и с предыдущим принципом и сила и "знак" эмоций (положительные или отрицательные) влияет на закрепление ассоциаций, связанных с возникновением положительных эмоций.
Так же как в квантовой физике существует принцип неопределенности Гейзенберга, устанавливающий соотношение между точностью определения координат элементарной частицы и ее энергии, в теории интеллектуальных систем можно сформулировать принцип неопределенности, устанавливающий соотношение между точностью определения (распознавания) описания внутренней семантики объекта (синтаксиса или структуры образа) и его взаимосвязей с другими объектами (внешней или просто семантики образа). Он может быть сформулирован следующим образом.
Чем более точно распознается (интерпретируется) структура образа, т.е. его внутренняя семантика, тем менее точно распознается его взаимодействие с другими образами (его внешняя семантика) и наоборот.
Этот принцип неопределенности означает, что любая интеллектуальная система не может одинаково хорошо разбираться в синтаксисе образов и в их семантике или, другими словами, нельзя одновременно изучать глубоко структуру объекта и его взаимосвязи с другими объектами. Или, другими словами, в той степени, в которой разработчик (интерпретатор, пользователь) представления знаний в интеллектуальной системе уделяет большое внимание представлению и распознаванию деталей в структуре объектов (понятий), он вынужден обходить вниманием представление и распознавание взаимосвязей между ними. Этот принцип работает как при формализации знаний в процессе разработки интеллектуальной системы, так и при ее использовании в процессе интерпретации (применения) знаний.
Подобно тому, как погрешность определения координат и энергии элементарной частицы зависит от характеристик "наблюдателя" (средств измерений), погрешность обработки знаний зависит от объема памяти вычислительного средства и быстродействия логического вывода, используемых при интерпретации знаний.
Глубинной причиной принципа Гейзенберга так же как причиной выше сформулированного принципа является факт единства наблюдаемого и наблюдателя и необходимость их рассмотрения как единой системы. И применительно к интеллектуальной системе не суть важно кто (что) является наблюдателем знаний – интерпретатор знаний, являющийся ее частью или внешний наблюдатель (исследователь или разработчик).
Возможно, эта аналогия между образом и элементарной частицей не случайна. Не даром, в [76] была сформулирована аналогия между голограммой и образом в биологической памяти, и процесс вспоминания обладает свойствами, схожими со свойствами процесса восстановления голограммы.
Возможно, одно из причин появления в естественных интеллектуальных системах в ходе эволюции способности к абстрагированию является этот принцип, т.к. он ограничивает возможности системы устанавливать причинноследственные связи, строить планы, используя работу только с конкретными образами внешнего мира.
При формализации базы знаний интеллектуальной системы (например, экспертной системы) этот принцип проявляется в том, что если разработчик базы знаний хочет описать как можно больше взаимосвязей некоторого понятия с другими понятиями, представление этого понятия "размывается". Его выделение как самостоятельного понятия (структуры данных) становится проблематичным. Оно все больше становится частью других понятий и теряет свое значение как отдельный объект со своей внутренней структурой.
Проявлением этого принципа в инженерии знаний является появление различных методов структуризации или масштабирования знаний, таких как, структурированные семантические сети, фреймы, онтологии, мультиагентные системы.
1.4.4. Принцип единства нечетких рассуждений и четких действий В основе рассуждений, происходящих в естественной интеллектуальной системе, всегда лежит оперирование с нечеткими или искаженными образами, неточными понятиями, неполными описаниями, условными выводами при неполной информации и т.п. Причинами этого является ограниченность возможностей органов чувств, локальность восприятия ими внешней среды и недетерминированный характер внешней среды (мира), хотя последний фактор спорен, т.к. мы судим о внешнем мире посредством тех же самых ограниченных органов чувств, пусть даже усиленных всевозможными инструментами и приборами. С другой стороны действия, которые производит интеллектуальная система, носят точный характер, например, "хватание предмета", "бросание предмета", "поднятие руки", "рождение ребенка", "включение определенной мышцы" и т.п.
В простейшем случае при вырабатывании условного рефлекса происходит формирование ассоциативной связи между ситуацией и действием, которое необходимо произвести при ее возникновении. Отсюда, процесс рассуждений сводится к распознаванию ситуации и ассоциативному вспоминанию соответствующего ему действия. Кажется оправданным предположить, что попытка рассуждать в терминах такого "ситуативного" мышления привела к появлению абстрактного мышления, таксономии с классификацией и классической логики. Ведь по существу строгий логический вывод или решение задачи в четко описанной математически постановке сводится к цепочке принятия решений по принципу "ситуация-действие" (здесь под действием подразумевается операция над формулами).
Более творческий процесс рассуждений задействует образное мышление (см. п. 1.2), которое обеспечивает снижение риска потери информации о ситуации (задаче) в процессе принятия решений, т.к. использует на всех уровнях решения задачи (до самого принятия решения о действии) большое количество признаков, описывающих образ ситуации. Чем больший вектор признаков используется в цепочке ассоциативного вспоминания (рассуждения), тем большая часть мозга вовлечена в процесс рассуждений и тем больше возможность получения нетривиальных решений.
Принцип, указанный в заголовке, можно сформулировать следующим образом:
В основе рассуждений лежит оперирование с нечеткими образами посредством ассоциативного вспоминания образов (см. п. 1.3.2), в конце которого осуществляется выбор четкого действия (его вспоминание), с которым можно ассоциировать выбор достигаемой цели (решаемой задачи), фокусировка внимания, запуск действия как программы срабатывания моторных нейронов и т.п. При этом выбранное действие в качестве признака вовлекается в дальнейший процесс рассуждений.
1.5. Количественная оценка знаний в сообщении При передаче знаний между индивидуумами (пользователями знаний) возникает проблема понимания знания интеллектуальной системойприемником. Только в случае понимания можно говорить о том, что переданное знание пополнило базу знаний, и количество знаний у приемника увеличилось. В противном случае, передаваемое знание содержит только информацию (меру неоднородности носителя информации, количество которой можно вычислить по известным формулам из теории информации). Проблема понимания возникает в силу двух причин:
1) использования для передачи знаний какой-либо знаковой системы и необходимости преобразования внутреннего представления знаний в представление в рамках этой знаковой системы;
2) разного онтогенеза при формировании баз знаний передатчика и приемника знаний, приводящего к разной интерпретации используемой знаковой системы.
Что же можно определить как количество знаний при передаче? Приведем несколько примеров знаний, выраженных на ЕЯ.
Пример 1. "Аист – птица".
Пример 2. "Аист умеет летать".
Пример 3. "Аист принес сына".
Если приемник имеет представление о том, что такое "птица" и что такое "аист" (например, однажды его видел и связал с его обликом слово "аист"), но не знает, что аист относится к разряду птиц, для него в первом примере содержится элемент знания. Это – отношение (или ассоциация) между понятиями "аист" и "птица". Если же у него уже промелькнула мысль о том, что "аист это птица", когда он его увидел (большинство людей способно на это), пример 1 не содержит для него никакого нового знания, т.е. количество знаний в нем равно нулю.
Если в примере 1 одно из понятий отсутствует в базе знаний приемника (например, "аист"), то новое знание присутствует в нем. Это отношение между понятием "птица" и некоторым новым понятием "аист", относительно которого приемник ничего не узнает нового, кроме того, что это нечто, ассоциативно связанное с понятием "птица". Таким образом, и в этом случае можно считать, что в примере 1 содержится элемент знания в виде отношения (ассоциации).
Рассмотрим пример 2. В случае, если в базе знаний приемника есть все три понятия, упоминаемые в нем, но без относительно друг к другу, в примере содержатся два новых отношения: между "умеет" и "аист" и между "умеет" и "летать". Такая ситуация возможна, если мозг приемника обучался понятию "уметь" на других примерах умений (а не летать). Если же понятие "уметь" уже связано с понятием "летать", в примере 2 будет всего одно новое отношение.
Если же приемник уже однажды вывел для себя (используя для этого знание из примера 1 и знание о том, что птица умеет летать) знание о том, что "аист умеет летать", то в примере 2 для него нет нового знания, т.е. количество в нем знаний равно нулю.
В примере 3 имеют силу те же рассуждения, что и для примера 2. Кроме того, если даже в примере 3 не содержится нового знания, в случае, если человек знает соответствующую метафору, он получит знание о том, что у кого-то родился сын, т.е. в примере 3 для него будет неявно содержаться новое отношение между понятиями "родился" и "сын". Так как неизвестно у кого он родился, второго отношения в базу знаний приемника не прибавится.
Все эти рассуждения на примерах позволяют сформулировать следующее утверждение.
Утверждение 7. Количество знаний, содержащихся в сообщении, формализованном в какой-либо знаковой системе, передаваемом от интеллектуальной системы А интеллектуальной системе В, равно количеству бинарных отношений (ассоциаций) между понятиями, содержащимися в сообщении, удовлетворяющих следующим условиям: 1) эти отношения не известны системе В; 2) хотя бы одно из пары понятий, связанных отношением, известно системе В.
Известность понятия системе означает наличие в памяти системы этого понятия, т.е. либо его образа, либо его знака.
Известность отношения системе означает присутствие его в памяти системы, т.е. наличие ассоциации между какими-либо понятиями или образами, соответствующее этому отношению.
Следует иметь в виду, что в этом утверждении не оценивается истинность/ложность и надежность/ненадежность получаемых из сообщения знаний. Эта задача решается в процессе рассуждений "приемника" над полученным знанием.
Пусть в сообщении S = ( s, s) содержится множество понятий (термов) s = { is} | i = (1,N s) и множество бинарных отношений, s = { js( ks, ls)} | j = (1,Ns), k,l = (1,Ns) между ними. Пусть база знаний интеллектуальной системы-приемника K = ( r, r) содержит r = {ir} | i = (1,Nr) и множество бинарных отношений r = {jr(kr,lr)} | j = (1,Nr), k,l = (1,Nr) между ними.
Тогда количество знаний в сообщении S равно содержится в базе знаний приемника и понятия ks, ls содержатся в базе знаний приемника, и 0 – в противном случае.
1.6. Многомерные лингвистические переменные и При разработке современных прикладных систем искусственного интеллекта одной из главных проблем является представление нечетких знаний и реализация рассуждений с их использованием. Эта проблема решается в зависимости от применяемого подхода (нейрокибернетического или логического) в основном с использованием механизма нейронных сетей [36-48] и лингвистической переменной [7], соответственно.
Недостатком применения нейронных сетей является трудность визуализации или вербализации результатов их работы, а также, перехода к логической обработке информации.
Этих недостатков лишен механизм лингвистической переменной. Однако, у классической лингвистической переменной есть свои недостатки:
• ее описание носит субъективный характер;
• ее описание зависит от контекста, в котором используется лингвистическая переменная, но этот контекст не описывается в рамках данного • нет механизма перехода от логической обработки информации (в рамках формализма;
традиционных механизмов логического вывода) к ассоциативной обработке с использованием нейронных сетей и обратно.
Этих недостатков можно избежать, расширив понятие лингвистической переменной до т.н. многомерной лингвистической переменной.
Как известно, лингвистической переменной называется переменная, которая может принимать как символьные так и численные значения, связанные между собой отношением нечеткой принадлежности.
Другими словами, лингвистическая переменная описывается множеством символьных значений S = [s i] | i = (1,n), с каждым из которых связано нечеткое множество значений V i = v j | j = (1,m i) обычно, упорядоченных в виде метрической шкалы, на которой определена функция принадлежности µij = (0,1). Если используется метрическая шкала, то значения имеют смысл чисел, если нет – эти значения также являются символьными.
Если рассматривать шкалу как размерность, то можно определить nмерную лингвистическую переменную как множество символьных значений S = [s i], с каждой из которых связана функция принадлежности µ i, определенная на множестве из n шкал, которые могут быть как метрическими так и топологическими.
Например, лингвистическая переменная "кровяное давление" может иметь значения "высокое", "нормальное", и "низкое", определенные на шкалах "возраст" и "вес". Это означает, что для возраста 20 лет будет одна кривая, описывающая функцию принадлежности, а для возраста 50 лет – другая. Более того, лингвистическая переменная "кровяное давление" может рассматриваться как одно из значений лингвистической переменной "давление", в описание которой добавляется еще одна топологическая шкала, описывающая тип материала, давление которого описывается. Помимо значения "кровь" эта переменная может иметь другие, например, "вода в водопроводе", "вода в океане", "газ в трубопроводе" и т.п. Таким образом можно задавать контекст, в зависимости от которого кривая функции принадлежности может иметь разный вид.
Другой пример – лингвистическая переменная "напряжение" (электрическое). Она может иметь множество символьных значений: "высокое", "нормальное", "низкое". Каждое из них определяется на метрической шкале. Но семантика "высокого напряжения в энергетической системе" отличается от семантики "высокого напряжения в бытовой электротехнике". Чтобы отразить эту разницу введем топологическую шкалу "область применения", на которой зададим несколько значений: "энергетика", "бытовая электротехника", "телевизоры и мониторы", "компьютеры" (рис. 1.5).
Энергетика Бытовая электротехника Телевизоры Компьютеры Рис. 1.5. Иерархия понятий и связь их с лингвистическими переменными Такое представление лингвистической переменной можно использовать для его реализации в виде нейронной сети. При этом на основе нейронной сети реализуется ассоциативная память, в которой в процессе обучения формируются ассоциативные связи между численными и символьными значениями лингвистической переменной. При этом можно использовать любую модель, в которой реализуется ассоциативная память, например, модель Хопфилда или многослойный перцептрон.
При использовании многослойного перцептрона можно естественным образом получать описание новых лингвистических переменных на каждом новом слое многослойного перцептрона. При этом метрическая шкала (или шкалы), является входом очередного слоя перцептрона, а значения лингвистической переменной – его выходами. Если для описания лингвистической переменной требуется несколько шкал, зависящих от контекста, то шкалы-контексты добавляются как входы соответствующих уровню контекста слоев нейронной сети.
Кроме того, входами очередного слоя являются и выходы предыдущего слоя, т.е. значения лингвистической переменной, формируемой в нем. Такая структура нейронной сети напоминает структуру растущих семантических сетей, предложенных В.П. Гладуном в [12].
Таким образом, концепция "n-мерная лингвистическая переменная" имеет следующие полезные свойства, отличающие его от классического понятия:
• позволяет естественным образом строить иерархию лингвистических переменных, включая на каждом из следующих верхних уровней имя (обозначение) лингвистической переменной нижележащего уровня в качестве дополнительной размерности;
• позволяет естественным образом связать описание лингвистической переменной с описанием нейронной сети, считая гиперповерхность, описывающую функцию принадлежности функцией, обратной энергетической функцией нейронной сети;
• позволяет иерархию описаний лингвистических переменных рассматривать, как ассоциативную память, которая может быть реализована в виде нейронной сети, а процесс поиска решения как ассоциативное восстановление вектора состояния нейронной сети по его фрагменту, при котором происходит минимизация энергетической функции с возможностью "замораживания" некоторых состояний нейронов (известных с абсолютной • дает механизм перехода от представления и обработки признаков и чисел уверенностью факторов);
в нейронной сети к представлению и обработке символьной информации в виде значений лингвистических переменных.
Эмоции без сомнения являются очень важным механизмом функционирования живых существ и неразрывно связаны с планированием поведения. Давно установлено [92] наличие в мозгу центров удовольствия и неудовольствия, ответственных за поведение живых систем. В связи с этим логично все многообразие эмоций свести к двум основным классам – положительным и отрицательным, в основе которых лежит активность соответствующих центров в мозгу, и из которых в зависимости от контекста происходит формирование всех остальных эмоций, имеющих свои наименования в естественном языке.
Положительные эмоции используются для закрепления ассоциаций в процессе обучения достижению цели, а отрицательные – в процессе обучения избеганию цели. Кроме того, сила эмоций управляет концентрацией усилий на решении той или иной задачи интеллектуальной системой.
Утверждение 8. Причиной положительных эмоций является совпадение ожидаемых (планируемых) образов с воспринимаемыми при решении задачи (достижении цели), а отрицательных – несовпадение.
Следует иметь в виду, что это утверждение справедливо только для прогнозирования образов в процессе планирования поведения системы. Если прогнозирование происходит безотносительно к планированию поведения (например, ожидание продолжения рассказа), оно может вызвать совсем другие эмоции. Например, можно предположить, что причиной положительных эмоций (вызывающих улыбку или хохот) при рассказе анекдота является не соответствие продолжения с ожидаемыми выводами из ранее сказанного (при условии, если у слушающего не возникает ассоциаций между персонажем анекдота и своей персоной).
Положительные эмоции в искусственных интеллектуальных системах можно использовать для подкрепления ассоциаций, используемых для планирования поведения (решения задачи, достижения цели). Отрицательные – для подкрепления ассоциаций с понятиями (образами, действиями), которые необходимо избегать.
В главе предложены следующие концепции и модели:
1) модель интеллектуальной системы, в которой отражены понятия вербального и образного мышления, сознания и подсознания;
2) модель ассоциативного мышления, как цепочки ассоциативных поисков на множестве пар образов, называемых ассоциациями;
3) концепция нечеткого подобия образов, тесно связанная с моделью ассоциативного мышления;
функционирования интеллектуальных систем:
принцип обучения посредством формирования и последующего закрепления ассоциаций, происходящего в процессе ассоциативного принцип концентрации и экономии ресурсов;
принцип неопределенности.
5) предложены подходы к измерению количества знаний, содержащихся в сообщении на языке, естественном или близком к естественному.
6) предложена модель многомерной лингвистической переменной, как механизма, который может быть связующим звеном между нейронными сетями и символьной обработкой информации в искусственных интеллектуальных системах.
7) сформулированы причины и роль эмоций в функционировании интеллектуальных систем.
Предложенные в главе концепции и модели можно использовать как основу для дальнейшего развития теории интеллектуальных систем. Ее развитие позволит разрабатывать экспертные системы и интеллектуальные роботы, процесс рассуждений в которых более приближен к тому, который имеет место в мозгу человека.
При этом ключевой проблемой, которую следует решить, является моделирование процесса перехода от сигнального представления образа к его знаковому представлению (в виде терма). При этом запоминание ассоциаций на определенном уровне обработки знаний превращается в формирование отношений, и обратно. Это может происходить в форме взаимодействия между нейронными сетями, обрабатывающими разные подмножества образов, или между нейронными сетями и классическими механизмами поиска решений в экспертных системах.
Некоторые концепции, описанные в этой главе, были использованы при разработке архитектур и программных продуктов, описанных в следующих главах, в частности:
1) модель интеллектуальной системы (см. 1.2) и парадигма ассоциативного поиска лежат в основе "двухполушарной" архитектуры интеллектуальной системы, описанной в разделе 3.6;
2) парадигма нечеткого подобия используется в архитектурах программного обеспечения, описанных в главе 4 и предназначенных для решения разных задач, связанных с обработкой естественного языка.
Кроме того, концепции и модели, описанные в этой главе, являются обобщением опыта, накопленного при разработке разных систем искусственного интеллекта, описанных в главах 2, 3 и 4.
2. КОМБИНИРОВАНИЕ РАЗНЫХ МЕТОДОВ ПРЕДСТАВЛЕНИЯ И
ОБРАБОТКИ ЗНАНИЙ В ГИБРИДНЫХ ЭКСПЕРТНЫХ СИСТЕМАХ
2.1. Методы представления знаний в гибридных экспертных системах Обобщенная архитектура экспертной системы [1-11] показана на рис. 2.1.Рис. 2.1. Обобщенная структура экспертной системы База знаний предназначена для хранения экспертных знаний о предметной области, используемых при решении задач экспертной системой.
База данных предназначена для временного хранения фактов или гипотез, являющихся промежуточными решениями или результатом общения системы с внешней средой, в качестве которой обычно выступает человек, ведущий диалог с экспертной системой.
Машина логического вывода – механизм рассуждений, оперирующий знаниями и данными с целью получения новых данных из знаний и других данных, имеющихся в рабочей памяти. Для этого обычно используется программно реализованный механизм дедуктивного логического вывода (какая-либо его разновидность) или механизм поиска решения в сети фреймов или семантической сети (поиска релевантных знаний).
Подсистема общения служит для ведения диалога с пользователем, в ходе которого ЭС запрашивает у пользователя необходимые факты для процесса рассуждения, а также, дающая возможность пользователю в какой-то степени контролировать и корректировать ход рассуждений экспертной системы.
Подсистема объяснений необходима для того, чтобы дать возможность пользователю контролировать ход рассуждений и, может быть, учиться у экспертной системы. Если нет этой подсистемы, экспертная система выглядит для пользователя как "вещь в себе", решениям которой можно либо верить, либо нет. Обычно пользователь выбирает последнее, и такая ЭС не имеет перспектив для использования.
Подсистема приобретения знаний служит для корректировки и пополнения базы знаний. В простейшем случае это – интеллектуальный редактор базы знаний, в более сложных экспертных системах – средства для извлечения знаний из баз данных, неструктурированного текста, графической информации и т.д.
Архитектура экспертных систем характеризуется следующими особенностями ее построения:
• применяемый метод (методы) представления знаний (в том числе, нечетких);
• применяемый метод (методы) решения задач (интерпретации базы знаний);
• применяемый (или нет) метод (методы) приобретения знаний;
• особенности и глубина реализации подсистемы объяснений;
• особенности реализации подсистемы общения (взаимодействия с внешним миром).
Особенности архитектуры экспертных систем можно рассматривать в контексте трех основных классов характеристик (рис. 2.2): быстродействие, гибкость и понятность.
Быстродействие характеризует скорость решения задач или реакции на входную информацию. В контексте быстродействия различают статические и динамические экспертные системы [10]. Среди последних, в свою очередь, выделяются экспертные системы реального времени.
В контексте гибкости можно выделить следующие характеристики:
поддержка разных парадигм представления знаний и решения задач;
возможность интеграции в другими программными системами;
легкость наращивания базы знаний, в частности, наличие возможностей автоматизации процесса приобретения новых знаний, т.е. обучения;
легкость модификации программ;
уровень языка программирования, на котором реализована экспертная система.
В контексте понятности можно рассматривать следующие характеристики:
структуризация базы знаний;
масштабируемость работы с базой знаний;
использование графики в пользовательском интерфейсе;
использование естественного языка в пользовательском интерфейсе;
адекватность пользовательского интерфейса особенностям предметной области.
Треугольник иллюстрирует тот факт, что каждая пара из этих трех классов находится в отношении конкуренции друг с другом. Так, например, увеличивая гибкость, разработчики, как правило, тем самым уменьшают быстродействие и понятность, и наоборот. Увеличение понятности (это обычно связано с увеличением специализации экспертной системы), как правило, приводит к уменьшению гибкости и уменьшению быстродействия. Последнее может быть связано с упрощением структуры, а следовательно, с уменьшением возможности оптимизации поиска вариантов на разных этапах решения задачи, либо с увеличением доли графики и анимации, в том числе, многомерной в пользовательском интерфейсе.
Рис. 2.2. Классы характеристик экспертных систем Понятие гибридного интеллекта появилось впервые в работе [12] применительно к человеко-машинным системам (ЧМС), в которых под интеллектом понимался как искусственный интеллект, так и естественный интеллект пользователя. Разновидность экспертных систем, в которых существенная роль при решении задач отводится пользователю, получила название партнерских систем [13, 14]. Но в последнее время наметилась тенденция применения этого термина к искусственным интеллектуальным системам, не зависимо от участия в них человеческого интеллекта. В этой работе автор придерживается такого подхода.
Обычно под гибридными экспертными системами понимаются экспертные системы, в которых реализуются разные парадигмы (методы, модели) представления и интерпретации знаний, а также, подсистема взаимодействия с внешним миром не сводится только к пользовательскому интерфейсу.
В настоящее время существует большое разнообразие методов представления знаний, которые можно разделить на пять групп:
• логические;
• продукционные;
• фреймовые;
• семантические сети;
• нейронные сети.
Методы обработки (интерпретации знаний) обычно трудно (а иногда, невозможно) отделить от их представления и поэтому в дальнейшем будем говорить о методах представления и обработки знаний.
Каждая из перечисленных групп имеет свои преимущества, недостатки, условия и цели применимости.
Логические методы [15-17] представления знаний характеризуются хорошим математическим обоснованием. Цель их использования – дать базис для построения других методов представления знаний или для реализации языков программирования искусственного интеллекта, таких как Prolog [18-20] или SmallTalk [21]. Особое место среди них занимают методы для представления нечетких знаний: нечеткая логика [22], псевдофизические логики [23], лингвистические переменные [24] и т.п. Наиболее развитая из этих моделей – псевдофизические логики, в которых аккумулируются концепции нечетких множеств, лингвистической переменной и логики предикатов 1-го порядка.
Продукционные методы [25-28] дают возможность создавать и визуализировать базу знаний в привычной для человека нотации "ЕСЛИ ….. ТО ……". С другой стороны они базируются на хорошо обоснованных логических методах доказательства и, в то же время, дают возможность достаточно вольно интерпретировать правила в зависимости от особенностей решаемых задач.
Цель фреймовых моделей [27, 29, 30] – дать удобную форму визуализации текстовой информации, описывающей понятия, с инкапсуляцией и наследованием свойств и ориентацией на представление иерархических структур знаний.
К ним можно отнести и объектно-ориентированную модель, появившуюся позднее на основе, по всей видимости, концепции фреймов.
Семантические сети [31, 32] ориентированы на визуализацию знаний в виде графов. Они появились раньше фреймов как средство описания смысла, заключенного в предложениях естественного языка, и концепцию фреймов можно рассматривать, как попытку структурировать семантические сети и дать им лучшую обозримость путем комбинации текстового и графического представления информации.
Нейронные сети [33-60] до недавнего времени рассматривались отдельно от всех других выше перечисленных методов (вне инженерии знаний). Это связано с тем, что в них изначально речь шла об обработке сигналов, а не какимлибо образом формализованных данных или знаний. Сейчас, когда нейронные сети все больше применяются для обработки текстовой информации и извлечения знаний из данных, и наметилась тенденция использовать нейронные сети как основу построения экспертных систем, их можно выделить в отдельную группу методов представления знаний. Цель применения нейронных сетей как метода представления и обработки знаний – дать возможность наиболее естественным образом представлять нечеткие знания, реализовать процесс обучения на примерах на основе ассоциативного запоминания/вспоминания информации (см. 1.3 и 1.4.1).
В последнее десятилетие появились новые парадигмы для представления знаний, такие как онтологии [61, 62] и интеллектуальные агенты [63, 64].
Онтологии служат для структуризации больших баз знаний, построенных с использованием других методов представления (фреймов, правил, семантических сетей) и являются промежуточной категорией между понятием базы знаний (в целом) и единицы знаний (фрейма, узла семантической сети, отношения и т.п.).
Интеллектуальные агенты служат для той же цели, что и онтологии. Только их применение направлено на декомпозицию не только базы знаний, а интеллектуальной системы в целом, как сложной программной или программноаппаратной системы, с целью обеспечения возможности построения распределенных интеллектуальных систем [65-66].
В рамках гибридных экспертных систем можно использовать разные комбинации методов представления знаний. В экспертных системах и инструментальных средствах для построения экспертных систем наиболее часто применяются комбинации правил-продукций с фреймами (XCON[5], CENTAUR [67], СПЭЙС [68], ESWin [69-72, см. раздел 2.2], BABYLON, Flex, AION, Eclipse, Arity Expert, Art*Enterprise) и семантическими сетями (PROSPECTOR [73], ДЕКЛАР [74]).
Во всех методах представления из выше перечисленных (кроме нейронных сетей) реализуется в том или ином виде логический вывод (или другими словами моделируется вербальное или логическое мышление). В нейронных сетях реализуется ассоциативная обработка информации (или моделируется ассоциативное мышление) (см. 1.2).
В последнее время наметилась тенденция объединять в одной системе ассоциативную и логическую обработку информации (см. главы 3, 4). К таким системам относится, например, экспертная система для управления прокатным станом [75], диагностическая экспертная система для подводного аппарата [76], экспертная система "Investor" для выдачи рекомендаций об инвестициях [77], экспертная система для диагностики аварийных ситуаций в работе энергосистемы [78], экспертная система для профориентации "PROFEXOR" [79, см. раздел 3.4].
2.2. Архитектура инструментального программного обеспечения ESWin для создания гибридных экспертных систем [69-72] ESWin — инструментальное программное обеспечение для создания экспертных систем, ориентированное на решение задач диагностики, идентификации и классификации. В его состав входят пять программ (рис. 2.3): программная оболочка ESWin, предназначенная для интерпретации баз знаний (используемая для разработки и отладки баз знаний); программная оболочка ESWinK для запуска баз знаний конечным пользователем; редактор-конструктор баз знаний EdKb, позволяющий в удобной форме конструировать, просматривать и редактировать базы знаний; программа KBView для просмотра и диагностики целостности баз знаний; программа KBOptim для редактирования и оптимизации баз знаний. Программы могут работать независимо друг от друга или в комплексе.
Разработчик экспертной системы Конечный пользователь В пакете ESWin реализовано представление знаний в виде правилпродукций, фреймов и лингвистических переменных. Для решения задач в ней реализован нечеткий обратный логический вывод. Кроме того, оболочка ESWin позволяет запускать из базы знаний внешние программы и получать в процессе логического вывода факты из внешних реляционных баз данных.
Программное обеспечение ESWin разработано совместно кафедрой ВТ НГТУ и фирмой "ИНСИКОМ" (Интеллектуальные Системы и Комплексы) (http://insycom.chat.ru) и реализовано на Delphi 5.
База знаний содержит набор фреймов и правил-продукций. Формат внешнего представления базы знаний:
TITLE = ‹название экспертной системы› COMPANY = ‹название предприятия› ‹описание фрейма› ‹описание фрейма› ENDF ‹описание условий правила› ‹описание заключений правила› ENDR ‹описание условий правила› ‹описание заключений правила› ENDR Пример базы знаний:
TITLE = для выбора метода представления знаний FRAME = Цель Метод представления знаний: () ENDF FRAME = Тип Решаемые задачи: (диагностика; проектирование) ENDF FRAME = Область Применение [Какова область применения?]: (медицина; вычислительная техника) ENDF FRAME = Количество Число правил в базе знаний (численный): () Число объектов в базе знаний (численный): () ENDF FRAME = Действие Сообщение: () ENDF RULE > (Количество.Число правил в базе знаний; 50) < (Количество.Число правил в базе знаний; 100) < (Количество.Число объектов в базе знаний; 30) = (Тип.Решаемые задачи; диагностика) ENDR RULE > (Количество.Число правил в базе знаний; 100) > (Количество.Число объектов в базе знаний; 30) = (Тип.Решаемые задачи; проектирование) = (Область.Применение; медицина) = (Тип.Решаемые задачи; диагностика) = (Метод представления знаний; Правила-продукции с представлением нечетких знаний) = (Область.Применение; вычислительная техника) = (Тип.Решаемые задачи; проектирование) = (Метод представления знаний; Фреймы) = (Метод представления знаний; Правила-продукции с представлением нечетких знаний) = (Метод представления знаний; Семантические сети) MS(Действие.Сообщение; Доказано правило 4) База знаний состоит из двух частей: постоянной и переменной. Переменная часть базы знаний называется базой данных (или базой фактов) и состоит из фактов, полученных в результате логического вывода. Факты в базе данных не являются постоянными. Их количество и значение зависит от процесса и результатов логического вывода.
До начала работы с экспертной оболочкой база знаний находится в текстовом файле. В файле с расширением *.klb (KnowLedge Base) хранятся фреймы и правила-продукции (база знаний). Этот файл создается пользователем с помощью специального редактора EdKB или вручную с помощью какого-либо стандартного текстового редактора (например, "Блокнот" или WordPad). Кроме файла *.klb в базу знаний может входить файл *.lvd, содержащий описания лингвистических переменных (см. раздел 6), если они используются в базе знаний.
В файле с расширением *.dtb (DaTa Base) хранятся факты, полученные в процессе логического вывода (база данных). При начале работы с программной оболочкой наличие данного файла необязательно. Файл с базой данных создается программной оболочкой в процессе логического вывода.
При работе с программной оболочкой (после загрузки в виртуальную память базы знаний) фреймы и правила-продукции, находившиеся в файле с расширением *.klb, остаются неизменными. Факты, находившиеся в файле с расширением *.dtb, могут изменяться в процессе логического вывода (появляться, удаляться или менять свое значение в результате срабатывания правилпродукций или диалога с пользователем).
Фреймы используются в базе знаний для описания объектов, событий, ситуаций, прочих понятий и взаимосвязей между ними. Фрейм – это структура данных, состоящая из слотов (полей). Формат внешнего представления фреймов: