1.5.Преимущества и недостатки экспертных систем
Сам собою напрашивается вопрос: зачем разрабатывать экспертные системы? Не лучше ли обратиться к человеческому опыту?
Искусственная компетентность ЭС имеет ряд существенных преимуществ перед человеческой
Человеческая компетентность | Искусственная компетентность |
Непрочная, утрачиваемая при отсутствии практики | Постоянная |
Трудно передаваемая, т.к. обучение – долгий и дорогой процесс | Легко передаваемая посредством копирования программной системы |
Трудно документируемая | Легко документируемая, т.к. способ представления искусственной компетентности в системе отображен в описании этого представления на естественном языке |
Непредсказуемая, зависящая от эмоций эксперт-человек может принимать разные решения в тождественных ситуациях из-за эмоций, забыть в кризисной ситуации важное правило | Устойчивая |
Дорогая | Приемлемая по затратам, т.к. разработка ЭС дорога, это годы труда высокооплачиваемых инженеров знаний и экспертов но эксплуатация дешева. |
Но обычно ЭС используются как советчики экспертов-людей, не заменяя их.
“…Вероятно, можно отказаться от наиболее квалифицированного эксперта, но во многих ситуациях необходимо оставить в системе место для эксперта со средней квалификацией. Экспертные системы используются при этом для усиления и расширения профессиональных возможностей такого пользователя”[Уотермен, “Руководство по экспертным системам”].
В ряде областей деятельности человеческая компетентность превосходит искусственную.
Это не есть отражение фундаментальных ограничений ИИ, но характерно для его современного состояния.
Человеческая компетентность | Искусственная компетентность |
Творческая, использующая воображение, аналогии с ситуациями из других предметных областей. | Запрограммированная, ЭС тяготеет к рутинному поведению |
Приспосабливающаяся | Нуждается в подсказке, мало приспособлена к обучению новым концепциям и правилам |
Использует чувственное восприятие визуальной, звуковой, осязательной или обонятельной информации | Использует символьный ввод |
Широкая по охвату | Узконаправленная |
Использует общедоступные знаниячеловек использует огромный объем общедоступных знаний, которые почти невозможно встроить в ЭС | Использует только специализированные знания |
2.Организация ЭС
2.1.Организация знаний
Для специалистов в области ИИ термин знания означает информацию, которая необходима программе, чтобы она вела себя «интеллектуально».
Эта информация представляется в форме фактов и правил.
ФАКТ: При включении станка получена травма.
ПРАВИЛО: Если не соблюдались требования безопасности, то применимо законодательство о неосторожном поведении, приведшем к несчастному случаю.
Факты и правила в экспертной системе не всегда либо истинны, либо ложны. Иногда существует некоторая степень неуверенности в достоверности факта или точности правила. Если это сомнение выражено явно, то оно называется «коэффициентом уверенности».
ФАКТ: Станок имеет дефект с коэффициентом уверенности 0.9
ПРАВИЛО: Если станок имеет дефект с коэффициентом уверенности >0.6, то теория строгой ответственности применима с коэффициентом уверенности 1.0.
Многие правила ЭС являются эвристиками, т.е. эмпирическими правилами, которые упрощают или ограничивают поиск решений, когда предметная область сложна или недостаточно изучена и решаемая задача не поддается строгому математическому анализу или алгоритмическому решению.
Рассмотрим различия между алгоритмическим и эвристическим методами на примере
Рис. 3.
Алгоритм полностью исключает возможность попадания оружия на борт самолета и предотвращает захват террористами самолета, но требует много времени, дорог и непопулярен. Эвристический метод более легок и практичен, но не обеспечивает 100% защиту.
Таким образом, алгоритмический метод гарантирует корректное решение задачи, тогда как эвристический метод дает приемлемое решение в большинстве случаев.
В экспертной системе существует четкое разделение знаний на:
Программа, которая работает со знаниями, организованными подобным образом(т.е. база знаний +мех-м вывода), называется системой, основанной на знаниях.
База знаний экспертной системы содержит факты и правила, использующие эти факты как основу для принятия решений.
Механизм вывода содержит:
Чтобы приносить реальную пользу, экспертная система должна иметь базу знаний, содержащую высококачественные знания о предметной области, а ее механизм вывода должен содержать знания о том, как эффективно использовать знания о предметной области.
Разработка механизма вывода ЭС – нетривиальная задача, поскольку простой и общий метод организации логического вывода отсутствует.
Чтобы ясно понимать суть этой проблемы, необходимо, во-первых, понимать, что структура логического вывода зависит и от специфики предметной области и от того, как знания структурированы и организованы в ЭС, а во-вторых, осознавать возможности инструментальных средств построения экспертных систем.
Эти средства разделяются на четыре основных категории:
1. Языки программирования;
2. Языки инженерии знаний
3. Вспомогательные средства
4. Средства поддержки
Языки программирования, применяемые для работы в области экспертных систем – это или проблемно-ориентированные языки(Фортран, Паскаль) или языки обработки текстов (Лисп, Пролог). Проблемно-ориентированные языки разработаны для специального класса задач: например, Фортран удобен для выполнения алгебраических вычислений и чаще всего применяется в научных, математических и статистических исследованиях.
Наиболее широко используемым языком программирования для задач искусственного интеллекта является Лисп. Его популярность основывается на таких его свойствах, как легкое и гибкое манипулирование символами, автоматическое управление памятью, развитые редактирование и средства отладки, едином подходе к представлению программ и данных, что позволяет программе на Лиспе модифицировать свой собственный код так же просто, как и данные. Последнее качество благоприятно для написания программ, которые могут вводить новые или модифицировать уже существующие в базе знаний правила.
Рассмотрим, как записывается обычное высказывание на языке Лисп:
Естественный язык | Лисп |
Разлита нефть в строении №5 | (МЕСТОНАХОЖДЕНИЕ (РАЗЛИТА НЕФТЬ) (СТРОЕНИЕ №5)) |
Здесь элемент МЕСТОНАХОЖДЕНИЕ действует как отношение, которое указывает, что его первый аргумент размещается в его втором аргументе.
Подобные Лисп языки программирования представляют максимальную гибкость разработчику экспертной системы, но не указывают ему, как представлять знания или как построить механизм доступа к базе знаний.
Язык инженерии знаний – это язык построения экспертных систем, погруженный в обширное поддерживающее окружение. Языки инженерии знаний разделяются на скелетные и универсальные. Скелетный язык инженерии знаний – это экспертная система без специальных предметных знаний, включающая только механизм вывода и средства поддержки.
Примеры
Первая ЭС в геологии PROSPECTOR → скелетный язык диагностики и классификации KAS.
ЭС диагностики и лечения бактериальных инфекций MYCIN → скелетная система EMYCIN (EMPTYMYCIN).
Консультационная система по глаукоме CASNET → скелетная система EXPERT.
Скелетные системы обеспечивают структуризацию знаний и готовые механизмы вывода, которые делают разработку системы легкой и быстрой. Но они приложимы лишь к узкому классу проблем и сильно ограничивают возможности разработчика экспертных систем.
Универсальный язык инженерии знаний может быть применим к проблемам разного типа в разных прикладных областях. Он обеспечивает большие возможности управления поиском данных и доступом к ним, чем скелетные системы, но более сложен в использовании.
Все скелетные и универсальные языки находятся на уровне исследовательских разработок. Однако несколько компаний, специализирующихся в области искусственного интеллекта, продают версии языков инженерии знаний коммерческого уровня. Эти языки – между скелетными системами и универсальными языками; многие из них возникли из скелетных систем и были развиты для того, чтобы стать более общими и легко применимыми.
Вспомогательные средства – это программы, оказывающие помощь в приобретении знаний у эксперта-человека и представлении их, и программ, которые помогают разработать проекты экспертных систем.
Эти программы должны выполнять очень сложные задания, из них большинство являются пока что чисто исследовательскими разработками, которые лишь начали превращаться во что-то практически полезное, хотя некоторые системы уже предлагаются как законченные коммерческие продукты.