Экспертные системы. 6
Министерство образования и науки Российской Федерации
ФГАОУ
ВПО «Российский
Институт
электроэнергетики и
Факультет информатики
Кафедра
сетевых информационных систем и
компьютерных технологий обучения
КОНТРОЛЬНАЯ РАБОТА
по информатике
Вариант
№ 8
Экспертные системы
Группа: ВТ-103
Работу проверил: Шайдуров А.А.
Екатеринбург
2011
Оглавление
Введение 3
1. Сущность экспертной системы 4
1.1. Краткий исторический очерк 4
1.2. Определение экспертной системы 5
1.3. Свойства экспертной системы 6
1.4. Достоинства и недостатки экспертной системы по сравнению с человеком 8
1.5. Структура экспертной системы 10
2. Модели представления знаний 13
2.1. Логическая модель представления знаний 15
2.2. Продукционная модель представления знаний 16
2.3. Представление знаний фреймами 17
2.4. Представление знаний семантическими сетями 19
3.
Области применения экспертных систем. 20
Введение
1. Сущность экспертной системы
1.1. Краткий исторический очерк
Технология
экспертных систем является одним из
направлений новой области
Искусственный интеллект (ИИ) – это область информатики, которая занимается разработкой интеллектуальных компьютерных систем, т.е. систем, обладающих возможностями, которые мы традиционно связываем с человеческим разумом, - понимание языка, обучение способность рассуждать, решать проблемы и т.д.
Первые попытки моделировать процесс мышления были предприняты в 60-х годах 20-го века. В те годы специалисты в области ИИ пытались найти общие методы для решения широкого класса задач и использовать их в универсальных программах. Разработка универсальных программ оказалась слишком сложна, кроме того, выяснилось, что чем универсальнее программа, тем скуднее ее возможности при решении конкретной проблемы.
В 70-е годы усилия были направлены на разработку общих методов и приемов программирования, пригодных для более специализированных программ. Постепенно стало ясно, что эффективность программы при решении задачи зависит от знаний, которыми она обладает, а не только от используемых ею формализмов и схем вывода. К концу 70-х гг. была принята принципиально новая концепция:
Чтобы
сделать программу
Это
привело к развитию специализированных
программных систем, каждая из которых
является экспертом в узкой предметной
области. Эти программы получили название
экспертных систем.
1.2. Определение экспертной системы
Определим экспертную систему (ЭС), как программную систему, использующую экспертные знания для обеспечения высокоэффективного решения задач в узкой предметной области.
ЭС
выдают советы, проводят анализ, выполняют
классификацию, дают консультации и
ставят диагноз. Они ориентированы
на решение задач, обычно требующих
проведения экспертизы человеком-специалистом.
В отличие от машинных программ, использующий
процедурный анализ, ЭС решают задачи
в узкой предметной области (конкретной
области экспертизы) на основе дедуктивных
рассуждений. Такие системы часто оказываются
способными найти решение задач, которые
неструктурированны и плохо определены.
Они справляются с отсутствием структурированности
путем привлечения эвристик, т. е. правил,
взятых “с потолка”, что может быть полезным
в тех системах, когда недостаток необходимых
знаний или времени исключает возможность
проведения полного анализа.
1.3. Свойства экспертной системы
Основа
экспертной системы – база знаний,
накапливаемая при ее построении.
Накопление и организация знаний
— одна из самых важных характеристик
экспертной системы.
Основные
свойства экспертной системы:
1. ЭС применяет для решения задач высококачественный опыт, представляющий уровень мышления наиболее квалифицированных экспертов. Это, как правило, приводит к точным и эффективным решениям.
Высококачественный опыт в сочетании с умением его применять делает систему рентабельной, способной заслужить признание на рынке. Этому способствует также гибкость системы. Система может наращиваться постепенно в соответствии с нуждами бизнеса или заказчика. Это означает, что можно вначале вложить сравнительно скромные средства, а потом наращивать ее возможности по мере необходимости.
Но, как и любой эксперт, система способна ошибаться.
Джон Макдермотт, разработчик экспертной системы для конфигурирования VAX-111 в корпорации DEC:
«Я настойчиво подчеркивал, что основанная на знаниях программа должна пройти через сравнительно долгий период ученичества, и что даже после того, как она станет экспертной, она будет, подобно всем экспертам, время от времени делать ошибки. Первая часть этого утверждения была воспринята, но я подозреваю, что со второй этого пока не произошло. Поэтому меня беспокоит, будет ли после осознания этого свойства экспертных систем компания DEC морально готова возложить значительную долю ответственности на программы, про которые известно, что они не являются непогрешимыми».
Ошибки
ЭС чрезвычайно трудно исправлять,
поскольку стратегии, эвристики
и принципы, лежащие в основе этих
программ, явно не сформулированы в
их тексте. Следовательно, эти ошибки нелегко
определить и исправить. Но ЭС имеют потенциальную
способность учиться на своих ошибках.
С помощью компетентных пользователей
можно заставить ЭС совершенствоваться
в решении задачи в ходе практической
работы.
2. ЭС обладает прогностическими возможностями, т.е. может дать ответ в конкретной ситуации, показать, как изменятся этот ответ в новых ситуациях, и объяснить, каким образом новая ситуация привела к изменениям.
Пользователь
может оценить возможное
3. ЭС обладает институциональной памятью. Если база знаний ЭС разработана с привлечением ведущих специалистов отдела или штаба, то она представляет политику или способы действия этой группы людей.
Ведущие
специалисты уходят, но их опыт остается.
Это важно для деловой сферы
и особенно ценно для вооруженных
сил и правительственных
4. ЭС можно использовать для обучения и тренировки руководителей и специалистов, поскольку они содержат необходимые знания и способны объяснить процесс своего рассуждения.
Необходимо
только добавить программное обеспечение,
поддерживающее соответствующий требованиям
эргономики интерфейс между обучаемым
и экспертной системой.
1.4. Достоинства и недостатки экспертной системы по сравнению с человеком
Сам
собою напрашивается вопрос: зачем
разрабатывать экспертные системы?
Не лучше ли обратиться к человеческому
опыту?
Искусственная
компетентность ЭС имеет ряд существенных
преимуществ перед
| Человеческая |
Искусственная компетентность |
| Непрочная, утрачиваемая при отсутствии практики | Постоянная |
| Трудно передаваемая, т.к. обучение – долгий и дорогой процесс | Легко передаваемая посредством копирования программной системы |
| Трудно документируемая |
Легко документируемая, т.к. способ представления искусственной компетентности в системе отображен в описании этого представления на естественном языке |
| Непредсказуемая, зависящая от эмоций | Устойчивая |
| Дорогая |
Приемлемая по затратам, т.к. разработка ЭС дорога, это годы труда высокооплачиваемых инженеров знаний и экспертов но эксплуатация дешева. |
Но
обычно ЭС используются как советчики
экспертов-людей, не заменяя их.
«…Вероятно, можно отказаться от наиболее квалифицированного эксперта, но во многих ситуациях необходимо оставить в системе место для эксперта со средней квалификацией. Экспертные системы используются при этом для усиления и расширения профессиональных возможностей такого пользователя»
В ряде областей деятельности человеческая компетентность превосходит искусственную.
Это
не есть отражение фундаментальных
ограничений ИИ, но характерно для
его современного состояния.
| Человеческая компетентность | Искусственная компетентность |
| Творческая, использующая воображение, аналогии с ситуациями из других предметных областей. | Запрограммированная, ЭС тяготеет к рутинному поведению |
| Приспосабливающаяся |
Нуждается в подсказке, мало приспособлена к обучению новым концепциям и правилам |
| Использует чувственное восприятие визуальной, звуковой, осязательной или обонятельной информации | Использует символьный ввод |
| Широкая по охвату | Узконаправленная |
| Использует
общедоступные знания
(человек использует огромный объем общедоступных знаний, которые почти невозможно встроить в ЭС) |
Использует только специализированные знания |
1.5. Структура экспертной системы
Обобщенная структура экспертной системы представлена на рисунке. Следует учесть, что реальные ЭИС могут иметь более сложную структуру, однако блоки, изображенные на рисунке, непременно присутствуют в любой действительно экспертной системе, поскольку представляют собой стандарт структуры современной ЭИС.
Основные
компоненты ИТ, используемой в экспертной
системе:
Пользователь
- специалист предметной области,
для которого предназначена система. Обычно
его квалификация недостаточно высока,
и поэтому он нуждается в помощи и поддержке
своей деятельности со стороны ЭИС
Интерфейс
пользователя -
это комплекс программ, реализующих диалог
пользователя с ЭИС (экспертной интеллектуальной
системой) как на стадии ввода информации,
так и при получении результатов Специалист
использует интерфейс для ввода информации
и команд в экспертную систему и получения
выходной информации из нее. Команды включают
в себя параметры, направляющие процесс
обработки знаний. Информация обычно выдается
в форме значений, присваиваемых определенным
переменным. Специалист может использовать
четыре метода ввода информации: меню,
команды, естественный язык и собственный
интерфейс.
База знаний (БЗ) - это совокупность знаний (долгосрочных данных, а не текущих) предметной области, записанная на машинный носитель в форме, понятной эксперту и пользователю (обычно на некотором языке, приближенном к естественному). Параллельно такому «человеческому» представлению существует БЗ во внутреннем «машинном» представлении. БЗ содержит факты, описывающие проблемную область, а также логическую взаимосвязь этих фактов.
Центральное
место в базе знаний принадлежит
правилам. Правило определяет, что
следует делать в данной конкретной
ситуации, и состоит из двух частей:
условия, которое может выполняться
или нет, и действия, которое следует
произвести, если условие выполняется.
Все используемые в экспертной системе
правила образуют систему правил, которая
даже для сравнительно простой системы
может содержать несколько тысяч правил.
Инженер
по знаниям (когнитолог, инженер-интерпретатор,
аналитик) — специалист в области искусственного
интеллекта, выступающий в роли промежуточного
буфера2 между экспертом и базой
знаний.
Решатель - (интерпретатор, дедуктивная машина, машина вывода, блок логического вывода) - это программа, моделирующая ход рассуждений эксперта на основании знаний, имеющихся в БЗ, и производящая в определенном порядке обработку знаний (мышление). Блок логических выводов и диагноза помогает наметить пути выхода из сложившейся ситуации с помощью фактического анализа показателей
Технология
работы решателя сводится к последовательному
рассмотрению совокупности правил (правило
за правилом). Если условие, содержащееся
в правиле, соблюдается, выполняется определенное
действие, и пользователю предоставляется
вариант решения его проблемы.
Подсистема
объяснений - программа, позволяющая
пользователю получить ответы на вопросы:
«Как была получена та или иная рекомендация?»
и «Почему система приняла такое решение?»
Ответ на вопрос «как» — это трассировка
всего процесса получения решения с указанием
использованных фрагментов БЗ, то есть
всех шагов цепи умозаключений. Ответ
на вопрос «почему» — ссылка на умозаключение,
непосредственно предшествовавшее полученному
решению, то есть отход на один шаг назад.
Развитые подсистемы объяснений поддерживают
и другие типы вопросов
Интеллектуальный
редактор БЗ - программа, представляющая
инженеру по знаниям возможность создавать
БЗ в диалоговом режиме. Включает в себя
систему вложенных меню, шаблонов языка
представления знаний, подсказок (Help) и
других сервисных средств, облегчающих
работу с базой.
Представленная на рисунке структура является минимальной, что означает обязательное присутствие указанных на ней блоков. Если система объявлена разработчиками как экспертная, только наличие всех этих блоков гарантирует реальное использование аппарата обработки знаний. Однако промышленные прикладные ЭИС могут быть существенно сложнее и дополнительно включать БД, блок расчета, интерфейсы обмена данными с различными пакетами прикладных программ, электронными библиотеками и т. д.
База
данных содержит плановые, фактические,
расчетные, отчетные и другие постоянные/оперативные
показатели. Этот термин совпадает по
названию, но не по смыслу с термином, используемым
в системах управления базами данных (СУБД)
для обозначения всех данных (в первую
очередь долгосрочных), хранимых в системе.
- блок расчета необходим в ситуациях, связанных с принятием управленческих решений;
- блок ввода и корректировки данных используется для оперативного и своевременного отражения текущих изменений в базе данных если в системе есть блок учета, то надобность в блоке ввода и корректировки данных отпадает;
- блок приобретения знаний снимает проблему самообучения системы. Необходим для получения знаний от эксперта, поддержки базы знаний и дополнения ее при необходимости. Автоматизирует процесс наполнения ЭИС знаниями, осуществляемый пользователем-экспертом модуль создания системы служит для создания набора (иерархии) правил. Существуют два подхода, которые могут быть положены в основу модуля создания системы: использование алгоритмических языков программирования и использование оболочек экспертных систем. Для представления базы знаний специально разработаны языки Лисп3 и Пролог4, хотя можно использовать и любой известный алгоритмический язык.
Оболочка
экспертных систем - это готовая программная
среда, которая может быть приспособлена
к решению определенной проблемы путем
создания соответствующей базы знаний.
В большинстве случаев использование
оболочек позволяет создавать экспертные
системы быстрее и легче в сравнении с
программированием.
В
целом процесс функционирования
ЭИС можно представить
Специальности специалистов по разработке экспертных систем
В
разработке ЭИС предметной области
участвуют представители
-
эксперт в проблемной области, задачи
которой будет решать ЭИС. Определяет
знания (данные и правила), характеризующие
проблемную область, обеспечивает полноту
и правильность введенных в ЭИС знаний;
-
инженер по знаниям - специалист по разработке
ЭИС (используемые им технологию, методы
называют технологией (методами) инженерии
знаний). Помогает эксперту выявить и структурировать
знания, необходимые для работы ЭИС; осуществляет
выбор того ИС, которое наиболее подходит
для данной проблемной области, и определяет
способ представления знаний в этом ИС;
выделяет и программирует (традиционными
средствами) стандартные функции (типичные
для данной проблемной области), которые
будут использоваться в правилах, вводимых
экспертом;
- программист по разработке инструментальных средств (ИС), предназначенных для ускорения разработки ЭИС. Осуществляет интеграцию с той средой, в которой она будет использоваться
Необходимо
отметить, что отсутствие среди участников
разработки инженеров по знаниям (т.
е. их замена программистами) либо приводит
к неудаче процесс создания ЭИС,
либо значительно удлиняет его.
2. Модели представления знаний
С разработкой и использованием экспертных систем тесно связаны такие понятия, как знания и базы знаний. Особая роль знаний в экспертных системах обусловлена, прежде всего, областью их применения. Экспертные системы предназначены для решения трудно формализуемых задач или задач, не имеющих алгоритмического решения в узкоспециализированных предметных областях деятельности человека. Экспертные системы позволяют аккумулировать, воспроизводить и применять знания, которые сами по себе обладают огромной ценностью.
Переход
от данных к знаниям является закономерным
следствием развития и усложнения информационных
структур, обрабатываемых на ПЭВМ. В
настоящее время нет
Сопоставление данных и знаний приводит к неизбежному выводу, что данные – составная часть знаний.
Отличительные
качественные свойства для знаний обусловлены
наличием у знания избыточных возможностей
по сравнению с данными. Авторы предлагают
следующую классификацию
- внутренняя интерпретируемость;
- рекурсивная структурированность;
- связность (взаимосвязь единиц);
- семантические пространства с метрикой;
- активность;
- функциональная целостность
Первые два признака, свойственные для знания, являются справедливыми и для традиционно организованных структур данных.
Внутренняя
интерпретируемость предусматривает
возможность установки для
Второй признак – структурированность рекурсивная – определяет свойство декомпозиции для информационной единицы, т.е. при необходимости такая информационная единица может быть расчленена на более мелкие единицы или, наоборот, объединена в более крупные системы. Это свойство предусматривает установку отношений принадлежности элементов к классу и видовых отношений типа часть – целое, род – вид.
Третий
признак – связность –
Пространства
семантические с метрикой характеризуют
близость-удаленность
Активность – это принципиальное отличие знаний от данных. С самого начала своего развития программирование опиралось на первичность процедур и вторичность данных. Процедурам отводилась роль активизирующего начала, они отражали способ решения задачи, активизировали необходимые данные, пассивно лежащие в памяти системы.
Для человека характерна познавательная активность. Он использует те или иные процедуры потому, что в его знаниях возникла определенная ситуация, т.е. для когнитивных структур в памяти человека характерна внутренняя активность. То или иное соотношение между информационными единицами побуждает к тем или иным действиям, для реализации которых необходимо выполнить определенные процедуры. Активность базы знаний позволяет экспертной системе формировать мотивы, ставить цели и строить процедуры их решения.
Последний из выделенных признаков – целостность функциональная – отражает возможность выбора желаемого результата, времени его получения, средств получения результата, средств анализа достаточности полученного результата.
Элементы знаний – это особым образом организованные структуры информации, которые имеют свое содержание, структуру, возможные связи, процедуры принятия решений.
На основании сказанного можно сделать вывод, что для систем искусственного интеллекта основное отличие уровня знаний от уровня данных заключается в том, что уровень знаний является концептуальной моделью реально функционирующего не компьютеризованного знания о предметной области, в то время как уровень данных не выполняет моделирующей функции.
2.1. Логическая модель представления знаний
В основе логических моделей представления знаний лежит понятие формальной системы в виде четверки:
M = <T,P,A,F>,
где T – множество базовых символов теории M (например, буквы алфавита);
P
– множество синтаксических
A
– множество построенных
F
– правила вывода, определяющие
множество отношений между