Искусственный инт(2).ppt
- Количество слайдов: 173
Понятие искусственного интеллекта и интеллектуальных систем.
Благодаря истинному знанию ты будешь гораздо смелее и совершеннее в каждой работе, нежели без него. А. Дюрер
Термин интеллект (intelligence) происходит от латинского intellectus, что означает ум, рассудок, разум, мыслительные способности человека. Интеллектом называется способность мозга решать интеллектуальные задачи путем приобретения, запоминания и целенаправленного преобразования знаний в процессе обучения на опыте и адаптации к разным обстоятельствам.
Под искусственным интеллектом понимается свойство автоматических систем брать на себя отдельные функции интеллекта человека, например, выбирать и принимать оптимальные решения на основе ранее полученного опыта и рационального анализа внешних воздействий.
По определению автора термина, Джона Маккарти, искусственный интеллект (ИИ, англ. Artificial Intelligence, AI) – наука и технология создания интеллектуальных машин, особенно интеллектуальных компьютерных программ
Искусственный интеллект l l Рождение искусственного интеллекта как научного направления произошло только после создания ЭВМ в 40 -е годы 20 века. В это же время Норберт Винер создал свои основополагающие работы по новой науке - кибернетике. Термин «искусственный интеллект» - ИИ (AI – artificial intelligence) появился в 1956 году. Вскоре после признания искусственного интеллекта произошло его разделение на два направления: нейрокибернетика и «кибернетика черного ящика» . Эти направления развиваются практически независимо, отличаясь и методологически и технологически. И только в последнее время появились тенденции к объединению этих частей в единое целое.
Нейрокибернетика: Основную идею этого направления можно выразить следующим образом: единственный объект, способный мыслить – это человеческий мозг. Поэтому любое «мыслящее» устройство должно каким-то образом воспроизводить эту структуру.
Нейросетевые технологии, предназначены для воспроизведения неосознанных мыслительных усилий человека (например, человек плохо знает, как он узнает цвет предмета). Такого рода технологии используются для распознавания каких -либо событий или предметов. С их помощью можно воспроизвести многочисленные связи между множеством объектов. Принципиальное отличие искусственных нейросетей от обычных программных систем, например экспертных, состоит в том, что они не требуют программирования. Они сами настраиваются, т. е. обучаются тому, что требуется пользователю.
Основные сферы применения нейросетей: l l l l Экономика и бизнес: предсказание поведения рынков, предсказание банкротств, оценка стоимости недвижимости, автоматическое рейтингование, оценка кредитоспособности, прогнозирование курса валют. Медицина: обработка медицинских изображений, диагностика. Интернет: ассоциативный поиск информации. Автоматизация производства: оптимизация режимов производственного процесса, диагностика качества продукции, предупреждение аварийной ситуации. Политические технологии: обобщение социологических опросов. Безопасность и охранные системы: системы идентификации личности, распознавание автомобильных номеров, распознавание аэрокосмических снимков. Геологоразведка: анализ сейсмических данных, оценка ресурсов месторождений.
Искусственные нейросети состоят из искусственных нейронов
Применение нейросетей предполагает выполнение следующих этапов: l l l Постановка задачи: формирование цели применения нейросети (например, прогнозирование курса ценных бумаг). Обучение нейросети: подготовка обучающих примеров, которые представляют собой уже известные результаты решения задачи без нейросети и предъявление их ей. Эксплуатация сети: сети предъявляется некоторая ситуация, которая либо распознается, либо нет.
Обучение нейронных сетей представляют собой последовательный процесс изменения синаптических весов, отражающих силу связей между нейронами
Преимущества нейросетей. l l Способность обучаться на примерах без программирования, что позволяет отказаться от поиска каких-либо аналитических зависимостей между входными данными и результатами. Нейросети могут обучаться на неполной, противоречивой и искаженной информации. Для использования нейросетей не требуются профессионалы-математики. Не требуется выполнение условия отсутствия взаимосвязи между входными факторами, как это требуется в регрессионном анализе.
«Кибернетика черного ящика» . В основу этого подхода положен принцип, противоположный нейрокибернетике: Не имеет значения, как устроено мыслящее устройство. Главное, чтобы на заданные входные воздействия оно реагировало так же, как человеческий мозг. Это направление ИИ было ориентировано на поиски алгоритмов решения интеллектуальных задач на существующих моделях компьютеров. Пионерами этой науки стали Маккарти – автор первого языка программирования для задач ИИ – ЛИСП, Минский - автор идеи фреймовой модели представления знаний, Саймон, Ньюэлл и другие.
Исторический экскурс l l l l l Рождение науки об искусственном интеллекте 19431956 Дартмутская конференция 1956 Золотые годы 1956 -1974 Оптимизм Финансирование Перцептроны и темные времена Первая «зима» искусственного интеллекта 1974 -1980 Бум 1980 -1987 Вторая «зима» 1987 -1993 -наши дни
Значительные события и даты l l l l 1991 система DART 1995 система компьютерного зрения Alvinn 11 мая 1997 Компьютер Deep Blue 24 октября 1998 Deep Space 1 2005 г стэнфордская разработка 2009 - Blye Brain Project Февраль 2011 - Cуперкомпьютер IBM Watson
Хронологически этапы развития этого направления ИИ выглядят следующим образом: В конце 50 -х годов появилась модель лабиринтного поиска. Эта модель представляла задачу как некоторое пространство состояний в форме графа, и в этом графе проводился поиск оптимального пути от входных данных к результирующим. . Для решения практических задач эта модель не нашла применения. l Начало 60 -х годов – эпоха эвристического программирования. Эвристика – это правило, теоретически не обоснованное, которое позволяет сократить количество переборов в пространстве поиска. Эвристическое программирование – разработка стратегии действий на основе известных, заранее заданных эвристик. l в 1963 -1970 годах начали использовать методы математической логики. Робинсон разработал метод резолюций, который позволяет автоматически доказывать теоремы, имея набор исходных аксиом. Наш математик Маслов предложил так называемый обратный вывод, который решал ту же задачу другим способом. l На основе метода резолюций Алан Колмероэ в 1973 году создает язык логического программирования ПРОЛОГ. Однако, большинство реальных задач не сводится к набору аксиом, поэтому логические модели при всех своих преимуществах имеют ограничения по классу решаемых задач. l В середине 70 -х годов в США появилась идея моделировать конкретные знания специалистов –экспертов. Появились первые коммерческие системы, основанные на знаниях, или экспертные системы. Стал применяться новый подход к решению задач искусственного интеллекта – представление знаний. Созданы MYCIN и DENDRAL – две первые экспертные системы для медицины и химии. l в конце 70 – х годов Япония объявила о начале проекта машин 5 поколения, основанных на знаниях. Был создан достаточно дорогой и громоздкий символьный процессор, реализующий ПРОЛОГО - подобный язык. Широкого признания этот проект не получил. l. l
В качестве определения искусственного интеллекта можно привести следующее: ИИ – это одно из направлений информатики, целью которого является разработка аппаратнопрограммных средств, позволяющих пользователю – непрограммисту ставить и решать интеллектуальные задачи, общаясь с ЭВМ на ограниченном подмножестве естественного языка. В настоящее время существует достаточно много направлений искусственного интеллекта, основным из них является разработка систем, основанных на знаниях. Это направление связано с разработкой моделей представления знаний, созданием баз знаний, образующих ядро экспертных систем.
Встает закономерный вопрос: а что же такое знания и чем они отличаются от данных, которые уже десятилетиями обрабатываются ЭВМ? Данные – это отдельные факты, характеризующие объекты, процессы и явления предметной области, а также их свойства. Знания основаны на данных. полученных эмпирическим путем. Они представляют результат мыслительной деятельности человека, направленной на обобщение его опыта, полученного в результате практической деятельности. Знания – это закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и решать задачи в этой области. Часто используется такое определение знаний: Знания – это хорошо структурированные данные, или данные о данных, или метаданные. Знание (knowledge) - непосредственный (личный) опыт, владение методиками (прикладная наука, технология), знакомство с научными основами (теория) и результаты познавательной активности (поиск, чтение, раздумья, систематические занятия / тренировки. . . ). Для хранения данных используются базы данных – для них характерны большой объем и относительно небольшая удельная стоимость информации, для хранения знаний – базы знаний – небольшого объема, но исключительно дорогие информационные массивы. База знаний – основа любой интеллектуальной системы.
Знания могут быть классифицированы по следующим категориям: Поверхностные – знания о видимых взаимосвязях между отдельными событиями и фактами в предметной области; Глубинные – абстракция, аналогии, схемы, отображающие структуру и природу процессов, протекающих в предметной области. Эти знания объясняют явления и могут использоваться для прогнозирования поведения объектов. Пример: Поверхностные: 1 Если нажать на кнопку звонка, раздастся звук. 2. Если болит голова, надо принять пенталгин. Глубинные: 1. Принципиальная электрическая схема звонка и проводки. 2. Знания врачей высшей квалификации о причинах, видах головной боли и методах лечения.
По другой классификации знания делят на процедурные и декларативные. Декларативные знания, это есть знания о фактах, явлениях и закономерностях, а процедурные знания, представляют собой умение решать задачи. Процедурные знания возникают на основе декларативных исключительно путём интенсивной практики. Знания можно также разделить на физиологические знания, например, умения парикмахера, спортсмена, синхронного переводчика, и ментальные, хранилищем которых является только сознание конкретного человека, например, знания консультантов, экспертов. . .
Знания также можно весьма условно разделить на явные, которые можно высказать, записать, изобразить, и неявные - которые, по мнению специалистов, затруднительно или невозможно документировать. По мере развития отрасли знаний объем неявных знаний сокращается. Передача неявных знаний возможна только с использованием института наставничества (совместная работа, тренинг. . . ). До момента фиксации в любой системе знаков (речь, письмо, изображения, жесты. . . ) знание неотделимо от своего источника - человека или иного разумного существа. Явные знания охватывают все те знания, о которых мы знаем, что можем их записать, сообщить другим и ввести в базу данных. (например — кулинарный рецепт). Неявные знания это то, о чем мы не знаем, что мы это знаем. В его состав входят разные ноу-хау, секреты мастерства, опыт, озарение и интуиция. Сегодня знания, используемые в экспертных системах, приобрели чисто декларативную форму; то есть знаниями считаются предложения, записанные на языках представления знаний, приближенных к естественному языку, и понятных неспециалистам.
Семантические сети
Семантическая сеть – это ориентированный граф, вершины которого – понятия, а дуги – отношения между ними Пример семантической сети
l l l В качестве понятий обычно выступают абстрактные или конкретные объекты, а отношения – это связи типа: «это» ( «is» ), «имеет частью» ( «has part» ), «принадлежит» . Характерной особенностью семантических сетей является обязательное наличие трех типов отношений: Класс – элемент класса (цветок – роза); Свойство – значение (цвет – желтый) Пример элемента (роза – чайная)
Наиболее часто в семантических сетях используются следующие отношения: l l l l Связи типа «часть-целое» ( «класс – подкласс» , «элемент – множество» ) Функциональные связи (определяемые обычно глаголами «производит» , «влияет» ) Количественные (больше, меньше, равно) Пространственные (далеко от…, близко от…) Временные (раньше, позже, в течение…) Атрибутивные связи (иметь свойство, иметь значение) Логические связи (И, ИЛИ, НЕ
Для реализации семантических сетей существуют специальные сетевые языки: NET, l SIMER + MIR. Существуют экспертные системы, использующие семантические сети в качестве языка представления знаний: l PROSPECTOR, l CASNET, l TORUS. l
ФРЕЙМЫ Термин Фрейм (от английского “FRAME”- рамка) был предложен Марвином Минским в 1979 году для обозначения структуры знаний для восприятия пространственных сцен. Эта модель, как и семантическая сеть имеет психологическое обоснование. Фрейм – это абстрактный образ для представления некоего стереотипа восприятия. В психологии и философии известно понятие абстрактного образа.
ФРЕЙМЫ Фрейм – это абстрактный образ для представления некоего стереотипа восприятия. Различают фреймы образцы, или прототипы, и фреймы – экземпляры, которые создаются для отображения реальных фактических ситуаций на основе поступающих данных. Модель фрейма является достаточно универсальной, поскольку позволяет отобразить различные знания через: l Фреймы – структуры, использующиеся для обозначения объектов и понятий; l Фреймы – роли (менеджер, кассир, клиент) l Фреймы – сценарии (собрание акционеров, вручение дипломов, празднование именин) l Фреймы – ситуации (тревога, авария) l …
Структура фрейма может быть представлена как список свойств: (ИМЯ ФРЕЙМА) (имя 1 -го слота; значение 1 -го слота) (имя 2 -го слота; значение 2 -го слота) … (имя N-го слота; значение N-го слота)
Ту же запись можно представить в виде таблицы, дополнив её двумя столбцами:
Сеть фреймов
Существует несколько способов получения слотом значений во фрейме-экземпляре: l l l По умолчанию от фрейма-образца; Через наследование свойств от фрейма, указанного в слоте AKO (А - Kind-Of = это) По формуле, указанной в слоте Через присоединенную процедуру Явно из диалога с пользователем Из базы данных
Сеть фреймов
Фрейм – ориентированные промышленные экспертные системы: l ANALIST, l MODIS, l TRISTAN, l ALTERID. Языки представления фреймов: – FRL – Frame Representation Language - фреймовая «оболочка» Карра
Формальные логические модели Часто в представлении знаний выделяют формальные логические модели, основанные на классическом исчислении предикатов, когда предметная область или задача описывается в виде набора аксиом. Однако в промышленных экспертных системах такая модель практически не используется, поскольку предъявляет очень высокие требования и ограничения к описанию предметной области.
Продукционная модель –модель, основанная на правилах, позволяет представить знания в виде предложений типа «Если (условие), то (действие)» . Под «условием» (антецедентом) понимается некоторое предложение-образец, по которому осуществляется поиск в базе данных, а под «действием» (консеквентом) – действия, выполняемые при успешном исходе поиска (они могут быть промежуточными, выступающими далее как условия и терминальными или целевыми, завершающими работу системы).
Правило 1. ЕСЛИ индекс цен возрастет не менее чем на 3% (условие В) И цены на энергоносители вырастут не более чем на 19% (условие С), ТО акции следует покупать (заключение А) Правило 2. ЕСЛИ ВВП возрастет не менее чем на 1, 5% (условие Д) ИЛИ ставки Центрального банка будут в пределах 12% (условие Е) ИЛИ объем экспорта возрастет более чем на 5% (условие G) ТО индекс цен возрастет не менее чем на 3%. (заключение В)
В общем виде под продукцией понимается выражение следующего вида: i: Q; P; A B; N.
Чаще всего вывод на такой базе знаний бывает прямой (т. е. от данных, к поиску цели) или обратный (от цели для её подтверждения – к данным) Данные – это исходные факты, хранящиеся в базе фактов, на основании которых запускается машина вывода или интерпретатор правил, перебирающий правила из продукционной модели базы знаний.
К преимуществам продукционных моделей можно отнести: l l l простоту и ясность основной единицы (продукции); модульность, т. е. независимость продукции; легкость модификации базы знаний; легкость, простоту и изученность механизма логического вывода; применение продукционных правил способствует "прозрачности" интеллектуальной системы, т. е. её способности к объяснению принятых решений и полученных результатов.
К недостаткам продукционных моделей следует отнести: l l l трудность при добавлении правил, зависящих от уже имеющихся в базе знаний; неясность взаимных отношений продукций; сложность оценки целостного образа знаний.
Программные средства, реализующие продукционный подход: Язык OPS 5; l «оболочки» или «пустые» ЭС – EXSYS Professional, - ЭКСПЕРТ, - ЭКО l Инструментальные системы ПИЭС и СПИЭС. l
При использовании продукционной модели база знаний состоит из набора правил. Программа, управляющая перебором правил, называется машиной вывода Она выполняет две функции: • во-первых, просматривает существующие факты из рабочей базы данных и правила из базы знаний и добавляет при необходимости и по возможности новые факты; • во-вторых, определяет порядок просмотра и применения правил. Эта машина управляет процессом консультации, сохраняя для пользователя информацию о полученных заключениях. Она же запрашивает у него (пользователя) информацию, когда для срабатывания очередного правила в рабочей памяти оказывается недостаточно данных.
В большинстве систем, основанных на знаниях, механизм вывода представляет собой небольшую по объему программу, которая содержит два компонента: один реализует собственно вывод (компонент вывода), другой управляет этим процессом (управляющий компонент. Действие компонента вывода основано на применении правила, называемого modus ponens: «Если известно, что истинно утверждение А и существует правило вида «Если А, то В» , то утверждение В также истинно» . Правила срабатывают, когда находятся факты, удовлетворяющие их левой части; если истинна посылка, то должно быть истинно и заключение. Компонент вывода должен функционировать даже при недостатке информации. Полученное решение может и не быть точным. Однако система не должна останавливаться из-за того, что отсутствует какая-то часть входной информации.
Управляющий компонент определяет порядок применения правил и выполняет четыре функции: l Сопоставление – образец правила сопоставляется с имеющимися фактами l Выбор – если в конкретной ситуации может быть применено сразу несколько правил, то из них выбирается одно, наиболее подходящее по заданному критерию. l Срабатывание – если образец правила при сопоставлении совпал с какими-либо фактами из рабочей памяти, то правило срабатывает. l Действие – рабочая память изменяются путём добавления в неё заключения сработавшего правила. Если в правой части правила содержится указание на какое-либо действие, то оно выполняется. Интерпретатор правил работает циклически. В каждом цикле он просматривает все правила, чтобы выявить те, посылки (левые части) которых совпадают с известными на данный момент фактами из рабочей памяти. После выбора правило срабатывает, его заключение заносится в рабочую область, и затем цикл повторяется сначала.
Критерий выбора правила В одном цикле может сработать только одно правило. Если несколько правил успешно сопоставлено с фактами, то интерпретатор производит выбор по определенному критерию единственного правила, которое срабатывает в данном цикле. Цикл работы интерпретатора представлен на слайде:
Цикл работы интерпретатора Сопоставление Рабочая память (база даных) База правил Конфликтное множество Критерий выбора правила Разрешение конфликта Выполняемое правило Действие
Стратегии управления выводом От выбранного метода поиска, то есть стратегии вывода будет зависеть порядок применения и срабатывания правил. Процедура выработки сводится к определению направления поиска. При разработке стратегии управления выводом важно определить два вопроса: 1. Какую точку в пространстве принять в качестве исходной? От выбора этой точки зависит и метод осуществления поиска – в прямом или обратном направлении. 2. Какими методами можно повысить эффективность поиска решения? Эти методы определяются выбранной стратегией перебора – в глубину, в ширину, по подзадачам или иным способом.
Существуют два направления поиска – прямой и обратный вывод: При обратном поиске вывода вначале выдвигается некоторая гипотеза, а затем механизм вывода как бы возвращается назад, переходя к фактам, пытаясь найти те, которые подтверждают гипотезу. В системах с прямым выводом по известным фактам отыскивается заключение, которое их этих фактов следует. Если такое заключение удается найти, то оно заносится в рабочую память.
Пример. Имеется фрагмент базы знаний из двух правил: l П 1 Если «отдых – летом» и «человек – активный» , то «ехать в горы» l П 2. Если «любит солнце» , то «отдых летом» Предположим, в систему поступили факты: - «человек активный» - «любит солнце» ПРЯМОЙ Вывод – исходя из фактических данных, получить рекомендацию 1 -ый проход: Шаг 1. Пробуем Правило 1, не работает, поскольку не хватает данных «отдых летом» Шаг 2. Пробуем Правило 2, работает, в базу поступает факт «отдых летом» 2 проход: Шаг 3. Пробуем П 1, работает, активируется цель «ехать в горы» , которая и выступает как совет, который дает система.
Прямой вывод
ОБРАТНЫЙ ВЫВОД – подтвердить выбранную цель при помощи имеющихся правил и данных. 1 -ый проход: l Шаг 1. Цель «ехать в горы» : , пробуем П 1 - данных «отдых летом» нет, они становятся новой целью и ищется правило, где цель в левой части. l Шаг 2. Цель «отдых летом» : пробуем Правило 2, оно подтверждает цель и активирует её 2 проход: l Шаг 3. Пробуем П 1, подтверждается искомая цель.
Обратный вывод
Методы поиска в ширину и глубину В базах знаний с сотнями правил желательно использовать такую стратегию управления выводом, которая уменьшает время на поиск решения К числу таких стратегий относятся: l l поиск в глубину, поиск в ширину, разбиение на подзадачи альфа-бета алгоритм
При поиске в глубину в качестве очередной подцели выбирается та, которая соответствует следующему, более детальному уровню описания задачи. Пример: диагностирующая система, сделав предположение о болезни, будет продолжать запрашивать уточняющие признаки до тех пор, пока полностью не опровергнет выдвинутую гипотезу. l При поиске в ширину, напротив, система вначале проанализирует все симптомы, находящиеся на одном уровне пространства состояний, даже если он относятся к разным заболеваниям, и лишь потом перейдет к симптомам следующего уровня детальности.
l l Разбиение на подзадачи – подразумевает выделение подзадач, решение которых рассматривается как достижение промежуточных целей на пути к конечной. Пример: поиск неисправности в компьютере – сначала выявляется отказавшая подсистема(питание, память, др. ) что значительно сужает пространство поиска. Альфа-бета алгоритм уменьшает пространство поиска путем удаления ветвей, неперспективных для успешного поиска. Поэтому просматриваются только те вершины, в которые можно попасть в результате следующего шага, после чего неперспективные направления исключаются. Альфа-бета алгоритм применяется в системах, ориентированных на различные игры, например, в шахматных программах
ЭС – это класс ИС, ориентированный на тиражирование опыта высококвалифицированных специалистов в областях, где качество принятия решений традиционно зависит от уровня экспертизы, например, медицина, юриспруденция, геология, экономика, военное дело Экспертные системы достаточно молоды – первые системы такого рода, MYCIN и DENDRAL появились в США в конце 70 -х. В настоящее время насчитывается несколько тысяч промышленных ЭС, которые дают советы: l По управлению перевозками – AIRPLAN l По прогнозу военных действий ANALIST, BATTLE l По оценке финансовых рисков – RAD l По налогообложению - Rune l По постановке медицинских диагнозов – ARAMIS Главное отличие ИС и ЭС от других программных средств – это наличие базы знаний.
Можно дать следующее определение экспертной системы: ЭС – это сложные программные комплексы, аккумулирующие знания специалистов в конкретных предметных областях и тиражирующие этот опыт для консультаций менее квалифицированных специалистов.
Структура экспертной системы
Классификация экспертных систем
Интерпретирующие экспертные системы Интерпретирующие системы имеют дело не с четкими символьными представлениями проблемной ситуации, а непосредственно с реальными данными (оценка производственного процесса на химическом заводе). Примерами могут служить: l программы обнаружения и идентификации океанских судов – SIAP; l определение основных свойств личности по результатам психодиагностического тестирования АВТАНТЕСТ.
Диагностирующие экспертные системы Диагностические системы часто являются консультантами, которые не только ставят диагноз, но и помогают в отладке. Они могут взаимодействовать с пользователем, чтобы оказать помощь при поиске неисправностей, а затем предложить порядок действий по их устранению. В настоящее время диагностические системы разрабатываются для приложений к инженерному делу и компьютерным системам. Примерами могут служить: l диагностика и терапия сужения коронарных сосудов ANGY, l диагностика ошибок в аппаратуре и математическом обеспечении компьютеров CRIB.
Экспертные системы мониторинга Мониторинг – это непрерывная интерпретация данных в реальном масштабе времени и сигнализация о выходе тех или иных параметров за допустимые пределы. Эти системы должны работать в режиме реального времени и осуществлять зависящую как от времени, так и от контекста интерпретацию поведения небольшого объекта. Примерами могут служить: l контроль за работой электростанций СПРИНТ, l контроль аварийных датчиков на химическом заводе FALCON.
Проектирующие экспертные системы Эти экспертные системы разрабатывают конфигурации объектов с учетом набора ограничений, присущих проблеме и готовят спецификации на создаваемые объекты с заранее определенными свойствами. В этих системах тесно связаны два процесса: вывод решения и его объяснение. Примерами могут служить: l генная инженерия, разработка интегральных схем CADHELP, l конфигурирование компьютеров XCON.
Планирующие экспертные системы Эти системы определяют полную последовательность действий, прежде чем начнется их выполнение, для объектов, способных выполнять некоторые функции. Используются модели поведения реальных объектов с тем, чтобы логически вывести последствия планируемой деятельности. Примерами могут служить: l планирование поведения робота STRIPS, l планирование эксперимента по оценке боеспособности предполагаемого противника MOLGEN.
Прогнозирующие экспертные системы Эти системы логически выводят вероятные следствия из заданных ситуаций. Используется параметрические динамические модели, в которых значения параметров «подгоняются» под заданную ситуацию. Примерами могут служить: l предсказание погоды WILLARD, l экономические прогнозы ECON, l возникновение военных конфликтов (прогноз по данным разведки).
Обучающие экспертные системы В качестве примера можно привести системы для обучения студентов языкам программирования: PROUST для Паскаля и «Учитель Лиспа» . Большие планы возлагают на экспертные системы для дистанционного обучения. Они наделяются функцией самообучения, что позволяет выдавать полные и точные рекомендации. Экспертная система может брать на себя ответственность за проектирование обучения.
. Классификация по связи с реальным временем l l l Статические ЭС разрабатываются в предметных областях, в которых база знаний и данные не меняются во времени. Они стабильны. Например, диагностика неисправностей в автомобилей Квазидинамические ЭС - интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени Например, микробиологические ЭС, в которых снимаются лабораторные измерения с технологического процесса раз в 4 -5 часов и анализируется динамика полученных показателей по отношению к предыдущему измерению. Динамические ЭС работают в сопряжении с датчиками объектов в режиме реального времени. Например, мониторинг в реанимационных палатах, или управление гибкими производственными комплексами
интеграции с другими программами Автономные ЭС работают в режиме консультаций с пользователем для специфически «экспертных» задач, т. е. таких, для которых не требуется привлекать традиционные методы обработки данных. Гибридные ЭС представляют программный комплекс, сочетающий в себе стандартные пакеты прикладных программ (например, математическую статистику, линейное программирование или СУБД) и средства манипулирования данными. Это может быть интеллектуальная настройка над ППП или интегрированная среда для решения сложной задачи с элементами экспертных данных.
Экспертная система PROSPECTOR
PROSPECTOR - это экспертная система, применяемая при поиске коммерчески оправданных месторождений полезных ископаемых. PROSPECTOR-KAS- система приобретения знаний для PROSPECTOR. Назначение - консультирование геолога изыскателя по трем основным вопросам: 1. оценка геологических ресурсов региона; 2. оценка конкретной местности на предмет наличия полезных ископаемых; 3. рекомендация мест для бурения. Экспертные системы в геологии решают самые разнообразные проблемы. Наиболее известные и важные экспертные системы: DIPMETER ADVISOR, DRILLING ADVISOR, ELAS, LITHO, PROSPECTOR.
Принцип использования Система включает в себя несколько автономных компонентов БЗ (геологических моделей). Их количество в системе может неограниченно изменяться. Каждая геологическая модель содержит знания, касающиеся совершенно определенного вида полезных ископаемых и служащих для ответа на вопрос: есть ли в данной местности данное полезное ископаемое? При этом система действует в следующей последовательности: 1. Принимает от пользователя (геолога-изыскателя) информацию о его наблюдениях в данной местности. 2. Выбирает соответствующую геологическую модель; выясняет, какой информации недостаточно. 3. Втягивает пользователя в диалог с целью получения недостающей информации.
Экспертная система PROSPECTOR разрабатывалась SRI International с 1974 по 1983 год и реализована на языке INTERLISP Она предназначена для геологических изысканий и относится к интерпретирующему типу ЭС, которые выводят некоторые заключения на основе наблюдений. Данная программа располагает динамическим количеством геологических моделей, каждая из которых содержит знания об определенных видах полезных ископаемых. В 1984 году система точно предсказала существование месторождения молибдена, оцененного в многомиллионную сумму.
Особенности стиля взаимодействия с пользователем 1) ведет диалог с пользователем на основе профессиональной терминологии; 2) переформулирует вопросы, если это желательно пользователю; 3) объясняет пользователю, если он пожелает, с какой целью задается вопрос; 4) ищет противоречия в сообщениях пользователя и, при обнаружении, предлагает ему внести изменения; 5) на основе информации, полученной от пользователя, выбирает геологическую модель, и в дальнейшем задает вопросы, имея целью либо подтвердить, либо опровергнуть гипотезу о наличии полезных ископаемых, соответствующих данной геологической модели; 6) отвергает гипотезу, если это следует из ответов пользователя, выдвигает новую; 7) предоставляет пользователю возможность "перебивать" себя, т. е. вводить любую информацию в любой момент, а также принудительно определить геологическую модель; 8) в конце сеанса предлагает пользователю выводы и их обоснования.
Система PROSPECTOR содержит большое число правил, относящихся к различным объектам, а также возможных исходов, выведенных на их основе. В этой системе используется также “движение по цепочке назад” и вероятности. Методы этой системы являются одними из лучших среди всех разработанных методов для любой из существующих ныне систем. Система PROSPECTOR пользуется методом, основанным на применении формулы Байеса с целью оценки априорной и апостериорной вероятностей какого-либо события. В целом правила в системе PROSPECTOR записываются в виде ЕСЛИ. . . , ТО (LS, LN), причем каждое правило устанавливается с отношением правдоподобия как для положительного, так и для отрицательного ответа. Система PROSPECTOR предлагает пользователю шкалу ответов в диапазоне от -5 до + 5. Нижний предел - это определенно “Да”, верхний - определенно “Нет”. Обычно ответ пользователя находится где-то между крайними значениями, и PROSPECTOR корректирует Р(Н), учитывая LS и LN с помощью линейной интерполяции. Это легко представить себе в виде линейной шкалы, где LN - крайнее левое, а LS - крайнее правое значения.
Достоинства: 1. Форма представления знаний не накладывает ограничений на содержание. 2. Не является обязательным структурированное и единообразное описание предметной области. Недостатки: 1. Отсутствует возможность явным образом обрабатывать казуальную информацию. 2. Человеку свойственно, отвечая на вопрос, предполагать цель, с которой этот вопрос задается, и отвечать в соответствии с этим пониманием цели. Отсутствие казуального подхода приводит к тому, что он не всегда правильно понимает, "к чему клонит" система, и дает не вполне правильные ответы.
В будущем… При разработке последующих экспертных систем были учтены особенности и недостатки PROSPECTOR. Благодаря этому такие диагностические медицинские системы, как INTERNIST и CASNET, основанные на ассоциативном и казуальном (от анг. casual - случайный) подходах, приобрели более мощные механизмы вывода.
Общая структура экспертной системы диагностирования
Интерфейс OMEGAMON для заполнения БЗ
Этапы разработки ЭС 1. Выбор проблемы 2. Разработка прототипа ЭС 3. Доработка до промышленной ЭС 4. Оценка ЭС 5. Стыковка ЭС 6. Поддержка ЭС
1. Выбор подходящей проблемы. Этот этап предшествует решению начать разрабатывать конкретную ЭС, он включает: l l l Определение проблемной области и задачи; нахождение эксперта, и коллектива разработчиков; определение предварительного подхода к решению проблемы; анализ расходов и доходов от разработки; подготовку подробного плана разработки.
После того, как инженер по знаниям убедился, что: l l Данная задача может быть решена с помощью экспертной системы; Экспертную систему можно создавать предлагаемыми на рынке средствами; Имеется подходящий эксперт; Затраты и срок их окупаемости приемлемы для заказчика, Он составляет план разработки, в котором определяется процесс разработки. необходимые затраты и ожидаемые результаты.
Стадии разработки прототипа экспертной системы
Методы извлечения знаний
Описание приемов извлечения знаний инженерами знаний Приемы Описание 1. Наблюдение Инженер наблюдает, не вмешиваясь, за тем, как эксперт решает реальную задачу 2. Обсуждение задачи Инженер на представительном множестве задач неформально обсуждает с экспертом данные, знания и процедуры решения 3. Описание задачи Эксперт описывает решение задач для типичных запросов 4. Анализ решения Эксперт комментирует получаемые результаты решения задачи, детализируя ход рассуждений 5. Проверка системы Эксперт предлагает инженеру перечень задач для решения (от простых до сложных), которые решаются разработанной системой 6. Исследование системы Эксперт исследует и критикует структуру базы знаний и работу механизма вывода 7. Оценка системы Инженер предлагает новым экспертам оценить решения разработанной системы
Классификация вопросов при интервьюировании
Переход от прототипа к промышленной экспертной системе Демонстрационный прототип ЭС Система решает часть задач, демонстрируя жизнеспособность подхода (несколько десятков правил или понятий) Исследовательский прототип ЭС Система решает большинство задач, но неустойчива в работе и не полностью проверена (несколько сотен правил или понятий) Действующий прототип ЭС Система надежно решает все задачи на реальных примерах, но для сложной задачи требует много времени и памяти Промышленная система Система обеспечивает высокое качество решений при минимизации требуемого времени и памяти Коммерческая система Промышленная система, пригодная к продаже, т. е. хорошо документированная
Оценка системы проводится, исходя из следующих критериев: l l l Критерии пользователей: понятность и «прозрачность» работы системы, удобство интерфейсов и др. Критерии приглашенных экспертов: оценка советов -решений, предлагаемых системой, сравнение её с собственными решениями, оценка подсистемы объяснений и т. п. Критерии коллектива разработчиков: производительность, время отклика, дизайн, широта охвата предметной области, непротиворечивость БЗ, количество тупиковых ситуаций, анализ чувствительности программы к незначительным изменениям в представлении знаний и др.
5. Стыковка системы На этом этапе осуществляется: l стыковка экспертной системы с другими программными средствами в той среде, в которой будет работать программа; l разработка связей между ЭС и самой средой; l обучение людей, которых она будет обслуживать.
Отличия систем ИИ от обычных программных систем Характеристика Традиционное Программирование в СИИ Тип обработки Числовая Символьная Методы Алгоритм Эвристический поиск Задание шагов решения Точное Неявное Искомое решение Оптимальное Удовлетворительное Управление и данные Разделены Перемешаны Знания Точные Неточные Модификации Редкие Частые
Инструментальные средства разработки интеллектуальных систем l l Языки программирования Среды программирования «Оболочки» Дополнительные модули.
"Оболочки" (пустые ЭС ) Под "оболочками : (shells) понимают "пустые" версии существующих экспертных систем, т. е. готовые экспертные системы без базы знаний. l Примером такой оболочки может служить EMYCIN (Empty MYCIN - пустой MYCIN ), которая представляет собой незаполненную экспертную систему MYCIN. Достоинство оболочек в том, что они вообще не требуют работы программистов для создания готовой экспертной системы. Требуется только специалисты) в предметной области для заполнения базы знаний. Однако если некоторая предметная область плохо укладывается в модель, используемую в некоторой оболочке, заполнить базу знаний в этом случае весьма не просто.
Типичным представителем этой группы инструментальных средств является пакет EXSYS Professional 5. 0 for Windows (оболочка – по определению разработчика – компании Multi. Logic Inc. , США) и его последующая модификация Exsys Developer 8. 0, предназначенный для создания прикладных экспертных систем в различных предметных областях.
ОБЩИЕ ХАРАКТЕРИСТИКИ СИСТЕМЫ Система-оболочка Exsys представляет собой инструментальное средство, которое может быть использована для разработки прикладных ЭС для любой предметной области. При этом знания представляются в виде продукционных правил. В систему включены средства отладки и тестирования программы, редактирования для модификации знаний и данных.
Основной частью ЭС является БЗ, которая накапливается в процессе развития системы. БЗ содержит правила типа: IF (условие) THEN (заключение), либо IF (условие) THEN (заключение 1) ELSE (заключение 2) Пример : IF p. H < 6, THEN жидкость – кислота.
Правила могут существовать с некоторой степенью вероятности, которая выражается коэффициентом уверенности. Величину этого коэффициента задает эксперт при формировании БЗ. В Exsys предусмотрено три шкалы, по которым оцениваются коэффициенты уверенности. Первая шкала использует только два значения коэффициентов уверенности: 0 – ложь, 1 – истина. Вторая шкала предусматривает значения от нуля до десяти, при этом: 0 – абсолютная ложь, 10 – абсолютная истина, промежуточные значения характеризуют различную степень уверенности. Третья шкала расширяет возможности второй: -100 – абсолютная ложь, +100 – абсолютная истина, промежуточные значения соответствуют различной степени уверенности. Разрабатывая ЭС, эксперт решает, в зависимости от особенностей задачи, какую из этих шкал выбрать.
При разработке БЗ можно воспользоваться текстовой информацией, формулами или использовать и то, и другое одновременно. Все зависит от выбора разработчика. В том случае, если было решено использовать математические выражения, появляются переменные. Они записываются в квадратных скобках. Например, [X] > [Y]. С правилом могут быть связаны примечание (NOTE) и ссылка (REFERENCE), которые отражают справочную информацию. Каждое правило обязательно должно содержать две части IF – условие и THEN – заключение. Части ELSE, NOTE и REFERENCE не являются обязательными.
При разработке правил в Exsys используются квалификаторы. Квалификатор – это специальная текстовая переменная, которая имеет имя и может принимать одно из нескольких значений. Все значения пронумерованы для быстрого и легкого ввода их при создании правил. Квалификаторы используются для формирования условий. С этой целью выбирается нужный квалификатор и указывается номер соответствующего значения. В процессе создания ЭС можно изменить любое правило, любой квалификатор, их текстовую информацию и вариант значения.
В системе формируются варианты выбора (CHOICES) принятия решения, которые составляют часть THEN (заключение) правила с заданной экспертом шкалой вероятности. Важной особенностью системы Exsys является возможность вывода информации из других правил, позволяющая разбивать сложные задачи на подзадачи. В Exsys реализованы механизмы как прямого, так и обратного вывода. В Exsys имеется возможность объяснения полученных результатов. При необходимости, можно выяснить весь ход вычислений, вплоть до исходных данных.
ПРИМЕР РАБОТЫ EXSYS PRO Создадим небольшое множество правил, которые будут определять, как профессия вам больше подходит. Для создания новой базы знаний необходимо ответить на несколько вопросов. Введем название предметной области – «Выбор профессии» . Далее необходимо выбрать шкалу вероятности. В рассматриваемом примере будет шкала Yes/No.
Зададим варианты выбора (CHOICES): l программист l врач l юрист l переводчик l экономист l актер
Зададим варианты квалификатора (QUALIFIERS): l l l l l Вы склонны к (гуманитарным наукам/точным наукам)? Вас интересует (компьютеры/криминал)? Вы любите читать (детективы/ литературу на иностранном языке)? Вы склонны к (математике/риторике)? Вы предпочитаете работу типа (человек/человек-техника)? Вам бы хотелось проводить операции (с банковскими бумагами/в медицинских целях)? Техника для вас это ("неизвестное существо"/смысл жизни)? По телевизору вы смотрите (криминальную хронику/программу здоровье)? Вы участвуете в самодеятельности (да/нет)?
КОНСТРУКЦИЯ ПРАВИЛ: RULE NUMBER: 1 IF: Вы склонны к гуманитарным наукам and Вы склонны к риторике THEN: Вы любите читать литературу на иностранном языке
RULE NUMBER: 2 IF: Вы любите читать литературу на иностранном языке and Вы предпочитаете работу типа человек -человек THEN: Переводчик - Confidence=1
RULE NUMBER: 3 IF: Вы любите читать детективы or: По телевизору вы смотрите криминальную хронику or: Вы склонны к гуманитарным наукам and Вас интересует криминалистика THEN: Юрист - Confidence=1
RULE NUMBER: 4 IF: Вы склонны к гуманитарным наукам and Вы склонны к математике THEN: Техника для вас это смысл жизни
ЭКО (Рос. НИИ ИТ и АП) Наиболее успешно комплекс применяется для создания ЭС, решающих задачи диагностики (технической и медицинской), эвристического оценивания (риска, надежности и т. д. ), качественного прогнозирования, а также обучения. Комплекс ЭКО используется: для создания коммерческих и промышленных экспертных систем на персональных ЭВМ, а также для быстрого создания прототипов экспертных систем с целью определения применимости методов инженерии знаний в некоторой конкретной проблемной области. На основе комплекса ЭКО было разработано более 100 прикладных экспертных систем. Среди них отметим следующие: l поиск одиночных неисправностей в персональном компьютере; l оценка состояния гидротехнического сооружения (Чарвакская ГЭС); l подготовка деловых писем при ведении переписки с зарубежными партнерами; l оценка показаний микробиологического обследования пациента, страдающего неспецифическими хроническими заболеваниями легких;
Комплекс ЭКО включает три компонента. Ядром комплекса является интегрированная оболочка экспертных систем ЭКО, которая обеспечивает быстрое создание эффективных приложений для решения задач анализа в статических проблемных средах. При разработке средств представления знаний оболочки преследовались две основные цели: l l эффективное решение достаточно широкого и практически значимого класса задач средствами персональных компьютеров; гибкие возможности по описанию пользовательского интерфейса и проведению консультации в конкретных приложениях.
l Для расширения возможностей оболочки по работе с глубинными знаниями комплекс ЭКО может быть дополнен компонентом К-ЭКО (конкретизатором знаний), который позволяет описывать закономерности в проблемных средах в терминах общих (абстрактных) объектов и правил. К-ЭКО используется на этапе приобретения знаний вместо диалогового редактора оболочки для преобразования общих описаний в конкретные сети вывода, допускающие эффективный вывод решений средствами оболочки ЭКО.
l Третий компонент комплекса - система ИЛИС, позволяющая создавать ЭС в статических проблемных средах за счет индуктивного обобщения данных (примеров) и предназначенная для использования в тех приложениях, где отсутствие правил, отражающих закономерности в проблемной среде, возмещается обширным экспериментальным материалом. Система ИЛИС обеспечивает автоматическое формирование простейших конкретных правил и автономное решение задач на их основе; при этом используется жесткая схема диалога с пользователем.
Языки искусственного интеллекта К числу средств этой группы относятся языки обработки символьной информации, ПРОЛОГ, ЛИСП, РЕФАЛ. . На основе языков искусственного интеллекта создаются специализированные компьютеры (например, Лисп-машины), предназначенные для решения задач искусственного интеллекта. Недостаток этих языков - неприменимость для создания гибридных экспертных систем. Помимо Лиспа и Пролога существуют следующие языки, ориентированные на обработку символьной информации и разработку ЭС: Smalltalk, FRL, Interlisp. Кроме этих специализированных языков для разработки экспертных систем используются и обычные языки программирования общего назначения: Си, Ассемблер, Паскаль, Фортран, Бейсик и др. Общим недостатком языков программирования для создания экспертных систем являются: Ø большое время разработки готовой системы, Ø необходимость привлечения высококвалифицированных программистов, Ø трудности с модификацией готовой системы. Все это делает применение языков программирования для реализации ЭС весьма дорогостоящим и трудоемким.
Языки представления Знаний в экспертных системах OPS 5 Университета Carnegie в Mellon'е l ART Inference Corporation l CLIPS NASA l ART - IM Inference Corporation l Eclipse Haley Enterprise. l ILOG правила ILOG, Inc l
OPS 5 Университета Carnegie l l l OPS 5 был первым системным языком, использованном в промышленных целях, первым языком ИСКУССТВЕННОГО ИНТЕЛЛЕКТА, который был успешно применен в коммерческой прикладной программе, когда доктор Джон Макдермотт использовал правила для конфигурирования компьютерных систем VAX для Digital Equipment Corporation. Для языка R 1 был первоначально использован Лисп, но позже по причинам эффективности был перенесен в одну из версий OPS 5 , после. Вследствие этого R 1 был переименован в XCON был чрезвычайно удачен и былиспользован при к разработке ряда экспертных систем , использующих OPS 5. Некоторые из них осуществил Paul Haley.
На языке OPS - 5 создан ряд промышленно эксплуатируемых экспертных систем для фирмы DEC с объемом баз знаний от 1000 до 5000 правил. Одной из последних, но уже достаточно широко известной реализацией является OPS-83 l Особенности этой реализации - наличие некоторых конструкций, характерных для процедурных языков программирования, а также сильная типизация данных. l
Общие отличительные черты семейства языков OPS: - программное управление стратегий вывода решений; l - развитая структура данных и принципиальной эффективности реализации. l В языке OPS допускается использование внешних процедур, реализованных на других языках программирования. l
Эффективность в языке OPS достигается во - первых, за счет использования специального алгоритма быстрого сопоставления, l во-вторых, за счет компилирующей схемы, применяемой взамен более традиционной для продукционных языков интерпретирующей. l
l l Язык OPS имеет типичную для продукционных систем архитектуру, включающую в себя базу правил, рабочую память и механизм вывода. База правил состоит из неупорядоченной совокупности правил, рабочая память - из дискретных объектов, называемых элементами рабочей памяти. Механизм вывода является стандартным для системы продукций циклом управления. На первой фазе цикла выбираются все правила, левые части которых сопоставились с содержимым рабочей памяти. На второй фазе правило выполняется. Встроенный в OPS механизм вывода непосредственно поддерживает только прямой вывод, однако в языке имеются средства для организации обратного и смешанного выводов.
Программа на языке OPS состоит из декларативной и продукционной частей. Язык OPS очень прост: в нем всего три вида операторов: l оператор описания типов данных TYPE, l оператор описания классов CLASS и l ператор описания правил RULE. l
ОПС l l l Мультисенсорные пожарные извещатели Линейка новых приемно-контрольных панелей «ВИСТА» Многофункциональная ОПС Satel для офисных зданий, магазинов, коттеджей и квартир Новая система пожарной безопасности SINTESO от компании Siemens Пожарная автоматика высотных зданий на основе системы ESMI FXNET Беспроводная система ABAX – новое качество привычных ОПС Комплексы технических средств для ПЦН, использующих GSM ППК для систем охранной сигнализации магазинов Адресные приемно-контрольные приборы Радиоканальные системы охраны Пожарный извещатель в беспроводном формате. Теплодымовой датчик Satel ASD-100 Уличные сирены Odyssey от компании Texecom
Среды программирования l l l l Позволяют разработчику не программировать некоторые или все компоненты ЭС, а выбирать их из заранее составленного набора. В эту группу программных средств искусственного интеллекта входят специальные инструментарии общего назначения. Как правило, это библиотеки и надстройки над языком искусственного интеллекта Лисп: KEE (Knowledge Engineering Environment), FRL (Frame Representation Language), KRL (Knowledge Represantation Language), ART G 2 и др. Они позволяют пользователям работать с заготовками экспертных систем на более высоком уровне, нежели это возможно в обычных языках искусственного интеллекта.
Одной из первых многофункциональных сред искусственного интеллекта является LOOPS [Bobrow and Steflk, 1983], в которой в рамках единой архитектуры обмена сообщениями были объединены четыре подхода к программированию, перечисленные ниже 1. Процедурно-ориентированное программирование. Этот подход был представлен языком LISP, в котором активным компонентом являются процедуры, а пассивным — данные, несмотря на то, что в LISP процедуры сами по себе также являются данными, поскольку имеют вид списков. В рамках единой среды процедуры могут быть использованы для обработки внешних данных, в частности изменения значений общедоступных переменных.
2. Программирование, ориентированное на правила. Этот подход аналогичен предыдущему, но роль процедур играют правила "условие-действие". В среде LOOPS наборы правил сами по себе являются объектами, которые можно рекурсивно вкладывать один в другой. Таким образом, часть "действие" одного правила, в свою очередь, может активизировать подчиненный набор правил. С множествами правил связываются управляющие компоненты, с помощью которых в простейшей форме выполняется разрешение конфликтов.
3. Объектно-ориентированное программирование. Структурированные объекты обладают свойствами и процедур, и данных, причем побочные эффекты обычно локализуются в пределах объекта. Обработка поступающих сообщений приводит к передаче данных или изменению их значений, но все манипуляции данными выполняются под управлением того компонента, который обратился к объекту. При этом вызывающий объект совершенно не интересует, как хранятся данные и как они модифицируются внутри объекта.
4. Программирование, ориентированное на данные. Доступ к данным и обновление данных запускает определенные процедуры, причем не имеет значения, почему изменен компонент данных, — то ли это результат побочного эффекта, то ли результат действия других процедур. С переменными, в которых хранятся значения данных, связываются определенные процедуры, подобно тому, как это делается в слотах фрейма, причем такие переменные часто называют активными величинами. В таких приложениях, как моделирование, этот стиль программирования оказывается довольно продуктивным, поскольку позволяет распространить эффект изменения какого-либо компонента на прочие, с ним связанные.
ART Inference Corporation В 1984 в корпорации Инференс, был разработан язык формулирования логических выводов (ART). ART был создан для поддержки: l Логического программирования l Автоматического разделения цели на подцели и вывода от цели к фактам l Увеличения возможностей языка в процессе сопоставления с образцом l Произвольных процедурных функций и предикатов l Больших выразительных возможностей представления знаний Хотя синтаксис языка ART более выразителен чем в языке OPS 5, синтаксис ART был разработан как уточнение OPS 5.
ART объединяет две главных модели представления знаний: l l правила для процедурных знаний, фреймоподобные структуры для декларативных знаний. Главной является продукционная модель, а декларативные знания описываются через факты, схемы и образцы. В ART различаются факты, которые явно принимаются за ложные и факты, истинность которых неизвестна. Возможно использование логических зависимостей, которые позволяют изменить факты позже, если окажется, что они на самом деле оказались ложными. Существует механизм «точек зрения» (Viewpoint), который допускает образование нескольких конкурирующих миров, где пробуются альтернативные решения.
Продукционные знания описываются с помощью правил пяти видов: 1. правила выводов, 2. продукционные правила, 3. гипотетические правила, 4. правила ограничений, 5. правила полаганий Правила вывода добавляют факты в базу знаний, а продукционные правила изменяют факты в рабочей памяти. Гипотетические правила позволяют использовать возможности формирования гипотез и представляются в форме: «ЕСЛИ это случилось, ТО рассматривать это как гипотезу» . Правила ограничений описывают ситуацию, которая никогда не может произойти правильной точке зрения на действительность. Правила полаганий используются для предположений о точках зрения. При подтверждении гипотезой некоторого условия она принимается за правильную, объединяется со всеми породившими её гипотезами и становится новым корнем в древовидной структуре. Другие, несовместимые, гипотезы отбрасываются.
ART предлагает традиционные модели вывода: «от фактов к цели» и «от цели к фактам» . Они могут объединяться в мощный механизм истинности, основанный на предположениях, который допускает аргументацию типа ЧТО ЕСЛИ. Графическое окружение ART хорошо развито. Интерфейс ART включает в себя базу знаний с демонстрацией гипотез, отладчик запускаемых программ, систему подсказок, систему меню. ART позволяет создавать меню и управлять окнами пользовательского интерфейса, а также создавать сами окна. Первые версии ART опирались на язык ЛИСП, последние реализованы непосредственно на С.
CLIPS NASA К 1985 NASA стандартизировал свои разработки в области ИСКУССТВЕННОГО ИНТЕЛЛЕКТА на ART, но у него возникла необходимость в том, чтобы программы выполнялись на персональных компьютерах типа Macintosh и IBM. В результате Software Technology Branch в Космическом центре им. Джонсона имитировал возможность вывода от фактов к цели и синтаксис языка ART и ввел " Интегрированную Систему Продукции на Языке C" (то есть, CLIPS) в общественное применение. Правительственное финансирование для разработки или поддержки CLIPS было прекращено несколько лет назад. CLIPS редко используется для коммерческих целей из-за отсутствия длительного финансирования и других практических, коммерческих соображений, особенно по сравнению с функциональными преимуществами ART - IM Inference Corporatin Следуя CLIPS'у NASA, Inference Corpotation воплотила вывод "от фактов к цели", объединив ART и CLIPS. Язык был назван ART - IM, впоследствии он был переименован в "ART*ENTERPRISE".
KEE (Knowledge Engineering Environment) KEE представляет собой большой набор хорошо интегрированных правил, он включает: l Продукционные правила; l Основанный на фреймах язык с наследованиями; l Логически-ориентированные утверждения; l Объектно-ориентированные правила. KEE предлагает средства для организации и объединения знаний в специфические компоненты и для структурирования процесса аргументации. KEE обладает мощным и дружественным пользовательским интерфейсом.
Главное отличие между формами представления знаний в KEE и в ART заключается в способе, которым эти интеллектуальные среды связывают фреймы и правила. KEE является средой, в основе которой лежат фреймы, тогда как в ART – правила. Фреймы в KEE называются элементами (units) и имеют более широкий смысл, чем в ART. Фреймы в KEE позволяют строить поведение моделей объекта и моделей экспертизы. С этой целью к слотам могут привязываться активные значения и методы. То есть, язык фреймов в KEE позволяет представить поведение независимых сложных компонент. При этом каждый компонент знаний может быть активирован по требованию
Описание объектов и правил в KEE представляется в виде иерархии фреймов. Доступны два основных отношения: классыподклассы и классы- примеры. Каждый объект представляется слотами, которые могут описывать различные аспекты проблемной области с множественными значениями. На них могут накладываться ограничения, с помощью которых проверяется целостность знаний. Этим KEE отличается от ART, где ограничения могут выражаться только с помощью правил.
KEE предлагает несколько методик для моделирования рассуждений. Есть базовый поисковый механизм, но при этом есть возможность преобразовывать неявные знания во фреймы и в решетки наследования, а это дает средства для моделирования операций аргументации. Достоинства KEE проявляются при решении задач, где процесс аргументации может изменяться, выполняться и управляться с помощью фреймовых компонент. Система снабжена возможностями автоматического восстановления неявной информации и автоматической проверки информации. Для этой цели существует логический язык Telland. Ask.
Пользовательский интерфейс KEE очень гибкий и тщательно проработанный. Он включает мощный редактор, программу просмотра базы знаний, поясняющие сообщения и т. п. KEE обеспечивает пользователя графическими средствами для построения графических представлений. Последние могут быть привязаны к фреймовым слотам и тогда изменение слота приведет к изменению «картинки» Таким образом, KEE является развитой системой, основанной на фреймах, где хорошо сбалансированы формы представления как декларативных, так и процедурных знаний.
Интегрированная среда G 2 (Gensym corp. , Сша) В 1985 г фирма Lisp Machine Inc. выпустила систему Picon для символьных ЭВМ Symbolics. Успех этого ИС привел к тому, что группа ведущих разработчиков Picon в 1986 г. образовала частную фирму Gensym, которая, значительно развив идеи, заложенные в Picon, в 1988 г. вышла на рынок с ИС под названием G 2, версия 1. 0. В настоящее время функционирует версия 4. 2 и готовится к выпуску версия 5. 0. Основное предназначение программных продуктов фирмы Gensym (США) - помочь предприятиям сохранять и использовать знания и опыт их наиболее талантливых и квалифицированных сотрудников в интеллектуальных системах реального времени, повышающих качество продукции, надежность и безопасность производства и снижающих производственные издержки. О том, как фирме Gensym удается справиться с этой задачей, говорит хотя бы то, что сегодня ей принадлежат 50% мирового рынка экспертных систем, используемых в системах управления.
Классы задач, для которых предназначена G 2 и подобные ей системы: l l l l мониторинг в реальном масштабе времени; системы обнаружения неисправностей; диагностика; составление расписаний; планирование; оптимизация; системы - советчики оператора; системы проектирования.
Функциональные возможности системы обеспечиваются за счет: l l l распараллеливания операций, доступности данных в режиме on-line; возможности ссылаться на прошлое поведение системы; интеграции с подсистемами динамического моделирования; специальной техники вывода решений а режиме реального времени; Всё это дает возможность прикладным системам поддерживать обработку 1000 правил реального уровня сложности
Инструментальные средства фирмы Gensym являются эволюционным шагом в развитии традиционных экспертных систем от статических предметных областей к динамическим. Немалую долю успеха фирме Gensym обеспечивают основные принципы, которых она придерживается в своих новых разработках: l проблемно/предметная ориентация; l следование стандартам; l независимость от вычислительной платформы; l совместимость снизу-вверх с предыдущими версиями; l универсальные возможности, не зависимые от решаемой задачи; l обеспечение технологической основы для прикладных систем; l комфортная среда разработки; l поиск новых путей развития технологии; l распределенная архитектура клиент-сервер; l высокая производительность.
Основным достоинством оболочки экспертных систем G 2 для российских пользователей является возможность применять ее как интегрирующий компонент, позволяющий объединить уже существующие, разрозненные средства автоматизации в единую комплексную систему управления, охватывающую все аспекты производственной деятельности - от формирования портфеля заказов до управления технологическим процессом и отгрузки готовой продукции. Это особенно важно для отечественных предприятий, парк технических и программных средств которых формировался по большей части бессистемно, под влиянием резких колебаний в экономике.
Кроме системы G 2, как базового средства разработки, фирма Gensym предлагает комплекс проблемно/предметно-ориентированных расширений для быстрой реализации сложных динамических систем на основе специализированных графических языков для представления элементов технологического процесса и типовых задач обработки информации. Набор инструментальных сред фирмы Gensym, сгруппированный по проблемной ориентации, охватывает все стадии производственного процесса и выглядит следующим образом: l интеллектуальное управление производством - G 2, G 2 Diagnostic Assistant (GDA), Neur. On-Line (NOL), Statistical Process Control (SPC), Batch. Design_Kit; l оперативное планирование - G 2, G 2 Scheduling Toolkit (GST), Dynamic Scheduling Packadge (DSP); l разработка и моделирование производственных процессов - G 2, Re. Think, Batch. Design_Kit; l управление операциями и корпоративными сетями - G 2, Fault Expert.
Фирма Gensym обслуживает более 30 отраслей - от аэрокосмических исследований до производства пищевых продуктов. Список пользователей G 2 выглядит как справочник Who-Is. Who в мировой промышленности: 25 самых крупных индустриальных мировых корпораций используют G 2. На базе G 2 написано более 500 действующих приложений. Чем же объясняется успех инструментального комплекса G 2? l Прежде всего G 2 - динамическая система в полном смысле этого слова. l G 2 - это объектно-ориентированная интегрированная среда для разработки и сопровождения приложений реального времени, использующих базы знаний. l G 2 функционирует на большинстве существующих платформ. l База знаний G 2 сохраняется в обычном ASCII-файле. l Перенос приложения не требует его перекомпиляции и заключается в простом переписывании файлов. Функциональные возможности и внешний вид приложения не претерпевают при этом никаких изменений.
l l MIKE (Микро Интерпретатор для инженерии знаний) - это полная, свободная и переносимая программная среда, разработанная для целей обучения в Открытом Университете ВЕЛИКОБРИТАНИИ. Она включает прямые и обратные правила вывода от цели к фактам с определяемыми пользователем cтратегиями разрешения противоречий, и фреймовый язык представления знаний с наследственностью плюс определенные пользователем cтратегии наследования. Правила вывода автоматически снабжаются, объяснениями 'как ', а пользователь может сформировать объяснения ' почему '. Порядок применения правил в процессе трассировки и выполнения может отображаться графически на дисплее.
l l MIKE, который формирует ядро курса по Инженерии знаний Открытого Университета, написан на консервативном и переносимом подмножестве Пролога, исходный текст программы свободно распространяется. MIKE версии 1 был написан в октябре/ноябре 1990. MIKE v 1. 50, который прежде находился на ftp- сервере, был заменен двумя более новыми версиями: MIKE v 2. 03, полная версия исходного текста на Пролога, включая алгоритм для быстрого поиска вперед, систему сопровождения , обработки неопределенности, и гипотетических миров, и MIKE V 2. 50, с интерфейсом, управляемым с помощью меню, и инструментальными средствами для создания и просмотра фреймов, полностью совместимая с MIKE V 2. 03, но без исходного текста.
Wind. Ex. S (Экспертная система под Windows) - полнофункциональная экспертная система, использует вывод от фактов к цели, работает на базе Windows. Ее модульная архитектура позволяет пользователю заменять модули так, как это требуется для расширения возможностей системы. Wind. Ex. S содержит: l процессор Правил на Естественном языке, l Механизм логического вывода, l Диспетчер файлов, l Интерфейс пользователя, l Администратор Сообщений l модули Базы знаний. Она поддерживает вывод от фактов к цели, и графическое представление базы знаний.
RT-EXPERT - экспертная система общего назначения , что позволяет программистам C интегрировать правила экспертной системы в прикладные программы на языке C или C++. В состав RT-EXPERT входит транслятор правил, который компилирует правила в код C, библиотека, содержащая механизм выполнения правил. Лицензионная версия программы используется в области образования, исследований и хобби. Прикладные программы, созданные с помощью RT-EXPERT , не лицензированы для коммерческих целей.
BABYLON - среда для разработки для экспертных систем. Она включает фреймы , модели данных, Пролог-подобный логический формализм, и язык для написания диагностических прикладных программ. Она написана на Лиспе и переносима на широкий диапазон аппаратных платформ.
Базы знаний и управление знаниями организации Понятие «управление знаниями» (KM – Knowledge Management) появилось в середине 90 -х годов в крупных корпорациях, где проблемы обработки информации приобрели особую остроту. КМ – это установленный в корпорации формальный порядок работы с информационными ресурсами для облегчения доступа к знаниям и повторного их использования с помощью современных информационных технологий
Основы экономики знаний заложили три выпускника Венского университета, которые, впрочем, в дальнейшем жили и работали в США - Йозеф Шумпетер, Фридрих Хайек и Фриц Махлуп. Основателем экономики знаний как дисциплины считается Махлуп, автор книги "Производство и распространение знаний в США, написанной в 1962 г. и переведенной на русский язык в 1966 г Тогда экономика знания понималась просто как один из секторов экономики. По мере увеличения социальной роли науки под экономикой, базирующейся на знаниях, стали все чаще понимать определенный тип экономики, где сектор знаний играет решающую роль, а производство знаний становится источником роста экономики. Близкими понятиями являются инновационная экономика, общество знаний (knowledge society), информационное общество, высокотехнологическая цивилизация.
Появление новой управленческой дисциплины стало очередным ответом на постоянно существующую в мире бизнеса потребность в создании все новых рычагов, формирующих конкурентные преимущества. Со временем уровень информации и знаний бизнес-соперников выравнивается. Как же соревноваться в условиях, когда все располагают примерно одинаковым интеллектуальным капиталом? При этом стало очевидным, что основным узким местом является обработка знаний, накопленных специалистами компании, так как именно знания обеспечивают преимущество перед конкурентами. Часто информации в компаниях накоплено даже больше, чем они в состоянии обработать. Различные компании пытаются решить этот вопрос по-разному, но при этом каждая компания стремится увеличить эффективность обработки знаний.
КМ – это установленный в корпорации формальный порядок работы с информационными ресурсами для облегчения доступа к знаниям и повторного их использования с помощью современных информационных технологий. При этом знания классифицируются и распределяются по категориям в соответствии с предопределенной и развивающейся системой структурированных и полуструктурированных баз данных и баз знаний. Основная цель КМ – сделать знания доступными и повторно используемыми на уровне всей корпорации. Ресурсы знаний различаются в зависимости от отраслей индустрии и приложений, но обычно они включают руководства, письма, новости, информацию о заказчике, сведения о конкурентах и данные, накопившиеся в процессе работы. Для применения систем КМ используются разнообразные технологии: l l l l электронная почта; базы и хранилища данных; системы групповой поддержки; браузеры и системы поиска; корпоративные сети и Internet; экспертные системы и системы баз знаний; интеллектуальные системы.
Чем больше накапливается информации, тем сложнее становится хранить ее на бумажных носителях или запоминать. К несчастью, бумажные документы имеют ограниченный доступ, и их трудно изменять. А если из организации уходит высококвалифицированный специалист, потеря ценных знаний и опыта зачастую оказывается для компании невосполнимой. Поэтому предприятия сейчас переходят к использованию хранилищ данных, чтобы все сотрудники могли использовать накопленную информацию, вносить при необходимости изменения, архивировать данные и т. д. l
Первыми, кто профессионально стал управлять знаниями в рамках своих предприятий, были консалтинговые и юридические компании, информационные бюро. В силу специфики бизнеса такие фирмы заинтересованы в сохранении и тиражировании опыта внутри своих подразделений и филиалов. Как ни удивительно, но военные ведомства и специальные службы также проявили интерес к строительству систем корпоративных знаний. С 2000 года управление знаниями начало читаться как отдельные университетские курсы на кафедрах менеджмента. Известны случаи применения данной методологии крупными организациями, например, ООН
Сегодня в России вторая волна интереса к системам управления знаниями, что объясняется рядом причин, в числе основных следующие: - объем данных в информационных системах ежегодно увеличивается более чем в два раза; - возрастает доля контентной составляющей: до 75% информации предприятия составляет неструктурированная информация (электронные и бумажные документы, изображения, медиаданные); - улучшается аппаратная часть (оптоволоконные линии связи способствуют повышению пропускной способности сетей); - высокая динамика бизнеса: быстро создаются новые компании, товары, услуги; проводится реорганизация предприятий (слияние, разделение и т. д. ), следовательно, необходимо быстро реагировать на события; - текучесть кадров, проектная организация работ (люди приходят и уходят по завершении проекта) - значительное число компаний внедрило ERP-системы, позволяющие управлять ресурсами (однако вопрос, как управлять интеллектуальными ресурсами, по-прежнему остается открытым).
Управление знаниями – это совокупность процессов, которые управляют созданием, распространением, обработкой и использованием знаний внутри предприятия l l ПРИЧИНЫ РАЗРАБОТКИ КМ: Работники предприятия тратят слишком много времени на поиск необходимой информации; Опыт ведущих и наиболее квалифицированных специалистов используется только ими самими Ценная информация захоронена в огромном количестве документов и данных. доступ которым затруднен. Дорогостоящие ошибки повторяются из-за недостаточной информированности и игнорирования предыдущего опыта.
l Шаг первый: анализируются общее состояние управления знаниями, приоритетность выполнения задач, информационные потребности сотрудников, их навыки и умения (в части работы с IT-системами). l Шаг второй: определяется аудитория, которая будет иметь доступ к системе (все сотрудники, часть подразделений, целевые группы – менеджеры, эксперты, маркетологи и т. д. ).
l l Шаг третий: проводится опрос, позволяющий выяснить, знания по каким разделам наиболее востребованы сотрудниками и на поиск какой информации тратится больше всего времени Шаг четвертый: обработка данных.
l Шаг пятый: выбирается оптимальный информационный продукт, отвечающий специфике компании и ожиданиям специалистов. Консультант помогает заказчикам не только сформулировать максимально полный перечень требований, но и выбрать технологии. Наиболее действенной помощь будет в случае, если консультант знаком с функционалом инструментов нескольких производителей, имеет достаточный опыт практического внедрения систем данного класса в организациях разного типа, владеет методологией многоэтапного выбора, настройки и адаптации решений. l Дальнейший алгоритм действий: пилотное внедрение, обучение сотрудников, разработка руководства пользователей по ресурсам и процедурам, тестовое испытание, корректировка.
Одним из решений по управлению знаниями является понятие корпоративной памяти(corporate memory) Знания в книгах
При разработке систем КМ можно выделить следующие этапы: 1 Накопление. Стихийное и бессистемное накопление информации в организации 2. Извлечение 3. Структурирование. На этом этапе должны быть выделены основные понятия, выработана структура представления информации, обладающая максимальной наглядностью, простотой изменения и дополнения. 4. Формализация. Представление структурированной информации в форматах машинной обработки, то есть на языках описания данных и знаний. 5. Обслуживание. Под процессом обслуживания понимаются три процесса обработки знаний: корректировка формализованных знаний (добавление, обновление), удаление устаревшей информации, фильтрация знаний для поиска информации необходимой пользователю.
Для управления корпоративной памятью существуют Organizational Memory Information Systems (OMIS) - Автоматизированные системы корпоративной памяти. Они должны накапливать знания и управлять ими. OMIS могут работать как на 1 уровне – с явными знаниями, так и на 2 уровне – со скрытыми знаниями, зафиксированными в форма экспертных систем.
Основные функции OMIS: l l l Сбор и систематическая организация информации из различных источников в централизованное и структурное информационное хранилище Интеграция с существующими автоматизированными системами. На техническом уровне это означает, что корпоративная память должна быть непосредственно связана с помощью интерфейса с теми программами, которые работают в организации- текстовые и табличные процессоры, базы данных и пр. Обеспечение нужной информации по запросу(пассивная форма) и при необходимости (активная форма). Конечная цель OMIS состоит в том, чтобы обеспечить доступ к знанию всегда, когда это необходимо. Для того, чтобы это обеспечить, OMIS реализует активный подход распространения знаний, который без запроса пользователя, автоматически обеспечивает полезное для решения задачи знание. То есть система должна действовать как интеллектуальный помощник пользователя.
l С отставанием от Gensym на 2 - 3 года другие фирмы начали создавать свои ИС для ЭС РВ. С точки зрения независимых экспертов NASA, проводивших комплексное исследование характеристик и возможностей некоторых из перечисленных систем, в настоящее время наиболее продвинутым ИС, безусловно, остается G 2 (Gensym, США); следующие места со значительным отставанием (реализовано менее 50% возможностей G 2) занимают RTWorks - фирма Talarian (США), COMDALE/C (Comdale Techn. - Канада), COGSYS (SC - США), ILOG Rules (ILOG - Франция).
Каскадная модель формирование требований проектирование реализация тестирование Ввод в действие эксплуатация и сопровождение
Каскадная модель с промежуточным контролем формирование требований проектирование реализация тестирование Ввод в действие эксплуатация и сопровождение
Спиральная модель Рис. 3. Спиральная модель: 1 - начальный сбор требований и планирование проекта; 2 - та же работа, но на основе рекомендаций заказчика; 3 - анализ риска на основе начальных требований; 4 - анализ риска на основе реакции заказчика; 5 - переход к комплексной системе; б - начальный макет системы; 7 - следующий уровень макета; 8 - сконструированная система; 9 - оценивание заказчиком.
Искусственный инт(2).ppt