Сравнительная характеристика алгоритмического подхода, нейросетевых методов и ЭС к решению задач.

Представление знаний в ЭС. Методы поиска решений в ЭС.

Этапы разработки ЭС.

Назначение и структура ЭС.

Экспертные системы.

Лекция № 10.

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

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

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

Работа ЭС основана на алгоритмах искусственного интеллекта и предполагает использование информации, заранее полученной от специалистов экспертов. Таким образом, ЭС – это советник, помощник (в большинстве случаев электронный).

При разработке экспертные системы принято выделять 3 основных модуля:

1) база знаний,

2) механизм вывода,

3) интерфейс с пользователем.

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

 

  Оболочка  
Пользователь <----> Механизм вывода <-> Интерфейс с пользователем <----> База знаний
             

 

Рис. Структура экспертной системы.

На более подробном уровне представления можно дополнительно ввести такие понятия, как: база данных, и диалоговый компонент: компонент приобретения знаний и подсистема объяснений.

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

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

3) Механизм вывода позволяет извлекать из базы знаний нужную информацию. Он позволяет, используя исходные данные из рабочей памяти и знания из БЗ, формировать такую по­следовательность правил, применение которых к исходным данным, приводят к решению задачи.

4) Интерфейс с пользователем отвечает за бесперебойный обмен информацией между пользователем и системой.

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

5а) Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями, осуществ­ляемый пользователем-экспертом.

5б) Подсистема объяснений объясняет, как система получила решение задачи (или почему она не получила решение) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату.

 

 
 

 

 


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

 

2. В разработке ЭС участвуют представители следующих специальностей:

эксперт в проблемной области, задачи которой будет решать ЭС;

инженер по знаниям - специалист по разработке ЭС (используемые им технологию, методы на­зывают технологией (методами) инженерии знаний);

программист по разработке инструментальных средств (ИС), предназначенных для ускорения разработки ЭС.

Необходимо отметить, что отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо значительно удли­няет его.

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

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

Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет ис­пользовано.

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

1) существуют эксперты в данной области, которые решают задачу значительно лучше, чем на­чинающие специалисты;

2) эксперты сходятся в оценке предлагаемого решения, иначе нельзя будет оценить качество раз­работанной ЭС;

3) эксперты способны вербализовать (выразить на естественном языке) и объяснить используе­мые ими методы, в противном случае трудно рассчитывать на то, что знания экспертов будут "из­влечены" и вложены в ЭС;

4) решение задачи требует только рассуждений, а не действий;

5) задача не должна быть слишком трудной (т.е. ее решение должно занимать у эксперта не­сколько часов или дней, а не недель);

6) задача хотя и не должна быть выражена в формальном виде, но все же должна относиться к достаточно "понятной" и структурированной области, т.е. должны быть выделены основные поня­тия, отношения и известные (хотя бы эксперту) способы получения решения задачи;

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

Использование ЭС в данном приложении может быть возможно, но не оправдано. Применение ЭС может быть оправдано одним из следующих факторов:

1) решение задачи принесет значительный эффект, например экономический;

2) использование человека-эксперта невозможно либо из-за недостаточного количества экспер­тов, либо из-за необходимости выполнять экспертизу одновременно в различных местах;

3) использование ЭС целесообразно в тех случаях, когда при передаче информации эксперту происходит недопустимая потеря времени или информации;

4) использование ЭС целесообразно при необходимости решать задачу в окружении, враждебном для человека.

Приложение соответствует методам ЭС, если решаемая задача обладает совокупностью следую­щих характеристик:

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

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

3) задача должна быть достаточно сложна, чтобы оправдать затраты на разработку ЭС. Однако она не должна быть чрезмерно сложной (решение занимает у эксперта часы, а не недели), чтобы ЭС могла ее решать;

4) задача должна быть достаточно узкой, чтобы решаться методами ЭС, и практически значимой.

Экспертная система работает в двух режимах: режиме приобретения знаний и в режиме решения задачи (называемом также режимом консультации или режимом использования ЭС).

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

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

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

"Почему система задает тот или иной вопрос?", "как ответ, собираемый системой, получен?".

В ходе работ по созданию ЭС сложилась определенная технология их разработки, включающая шесть следующих этапов (рис. 1.4):

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

 

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

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

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

3. Первый и основной вопрос, который надо решить при представлении знаний, - это вопрос опре­деления состава знаний, т.е. определение того, "ЧТО ПРЕДСТАВЛЯТЬ" в экспертной системе. Вто­рой вопрос касается того, "КАК ПРЕДСТАВЛЯТЬ" знания. Необходимо отметить, что эти две про­блемы не являются независимыми. Действительно, выбранный способ представления может ока­заться непригодным в принципе либо неэффективным для выражения некоторых знаний.

В круг вопросов, решаемых при представлении знаний, могут быть включены следующие вопросы:

определение состава представляемых знаний;

организацию знаний;

представление знаний, т.е. определение модели представления. Состав знаний ЭС определяется следующими факторами:

проблемной средой;

архитектурой экспертной системы;

потребностями и целями пользователей;

языком общения.

В соответствии с общей схемой статической экспертной системы (см. рис. 1.1) для ее функцио­нирования требуются следующие знания:

1) знания о процессе решения задачи (т.е. управляющие знания), используемые интерпретатором (решателем);

2) знания о языке общения и способах организации диалога, используемые лингвистическим про­цессором (диалоговым компонентом);

3) знания о способах представления и модификации знаний, используемые компонентом приоб­ретения знаний;

4) поддерживающие структурные и управляющие знания, используемые объяснительным компо­нентом.

Существует множество стандартных способов представления знаний. В современных ЭС чаще всего используются три самых важных способа представления: правила, семантические сети и фреймы.

Мы остановимся только на одном самом популярном методе. Представление знаний, основанное на правилах, построено на использовании выражения вида ЕСЛИ (условие) ТО (действие). Когда текущая ситуация (факты) в задаче удовлетворяют или согласуются с частью правила ЕСЛИ, то выполняется действие, определяемое частью ТО. Сопоставление частей ЕСЛИ правил с фактами может породить так называемую цепочку выводов.

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

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

1) методы поиска в одном пространстве - методы, предназначенные для использования в сле­дующих условиях: области небольшой размерности, полнота модели, точные и полные данные;

2) методы поиска в иерархических пространствах - методы, предназначенные для работы в об­ластях большой размерности;

3) методы поиска при неточных и неполных данных ;

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

4. Сравнивая ЭС с обычными программами необходимо отметить, что ЭС манипулируют со знаниями, в то время как обычные системы манипулируют с данными.

 

 

 

 


Сравнение ЭС с нейросетевыми моделями можно проиллюстрировать на аналогии: ЭС-НС, логика-интуиция.

Различие между алгоритмом и эвристикой ЭС и обучением НС: