Статья: Экспертные системы на базе VP-Expert

--PAGE_BREAK--               3. СОСТАВ И ФУНКЦИОНИРОВАНИЕ ЭКСПЕРТНОЙ СИСТЕМЫ
    Обычно считается,  что прагматические требования  к  экспертной системе сводятся   к  тому,   что она должна быть предназначена для удобной, квалифицированной  поддержки  информационной  деятельности человека в определенной предметной области. Подразумевается наличие развитого диалога,  обеспечивающего  понимание  входных  сообщений, выполнение нужных   процедур  и выдача разумных сообщений в удобной форме. Считают, что сообщения разумны, если они заслуживают доверия и «прозрачны».

      Структура типичной экспертной системы приведена на Рис.2. Как

правило, в ее состав входят:

1.    -  Интерфейс,   обеспечивающий  общение   пользователя   с экспертной системой   в  удобной  для  него  форме,   он  позволяет передавать ей информацию,   составляющую  содержание  базы  данных, обратиться к системе с вопросом или за объяснением.

2.    -  Рабочая  память,   хранящая   данные   (база   данных), соответствующие объектам, связь между которыми задается правилами в базе знаний.

3.    -   Диспетчер,    определяющий   порядок  функционирования экспертной системы,  планирующий порядок  постановки  и  достижения целей.

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

5.    — База знаний — совокупность  всех  имеющихся  сведений  о проблемной области,    для  которой предназначена данная экспертная система, записанных  с  помощью  определенных  формальных  структур представления знаний (набора правил, фреймов, семантических сетей и пр.)

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

       Два подхода получили наибольшее распространение при создании машин логического   вывода  экспертных  систем.

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

1.    В рабочую память 2 через интерфейс 1 вводятся пользователем значения исходных переменных.

2.    В базе  знаний 5   определяются    те правила,  в  условиях которых присутствуют переменные, имеющиеся в рабочей памяти.

3.    Производится попытка применения правил  с  помощью  машины логического вывода 4 и занесение результатов в рабочую память.

4.    Если применение хотя бы одного правила оказалось успешным, то переход к п.2.

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

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

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

представить в следующем виде.

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

2.    В базе знаний машина логического вывода    выделяет список правил, из которых можно найти неизвестные  переменные   в рабочей памяти.

3.     Из  условий  выделенных  правил,  определяются  остальные переменные, необходимые для применения правил.

4.    Определяется, какие из найденных в  п.3  переменных  можно получить из правил базы знаний.

5.    Дополняется список целей переменными найденными в п.4.

6.     Значения  переменных  из  списка  определенного в п.3, за исключением найденных в п.4, запрашиваются у пользователя.

7.    Производится попытка применения  правил  базы  знаний  для достижения поставленных целей.

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

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

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

         

         
    продолжение
--PAGE_BREAK--             4. ОСОБЕННОСТИ СОЗДАНИЯ ЭКСПЕРТНЫХ СИСТЕМ
     

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

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

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

·     — Идентификация  -  определение  проблемы,   ресурсов,  целей, экспертов, производится     неформальное   (вербальное)    описание проблемы.

·     — Концептуализация  -  выделение  ключевых  понятий   системы, отношений и   характеристик,  достаточных  для  полного и детального описания рассматриваемой проблемы.

·     — Формализация  -  выражение  введенных  понятий  на некоторым формальным языке, построение модели исследуемой области.

·     — Этап выполнения — создание одного или нескольких прототипов.

·     — Этап  тестирования  — оценка выбранного метода представления знаний и работоспособности всей системы в целом на основе  проверки прототипа.

·     — Этап опытной эксплуатации — проверка пригодности системы для конечного пользователя.

·     — Модификация  системы  -  полное   перепрограммирование   или доведение прототипа до состояния программного продукта.

   Известны три основные разновидности исполнения экспертных систем:

¨    — Экспертные  системы, выполненные в виде отдельных программ, на некотором алгоритмическом  языке,   база  знаний  которых  является непосредственно частью этой программы.  Как правило,  такие системы предназначены для решения задач в  одной  фиксированной  предметной области. При   построении таких систем применяются как традиционные процедурные языки PASCAL,  C и др.,  так и специализированные языки искусственного интеллекта LISP, PROLOG.

¨    — Оболочки экспертных систем — программный продукт,  обладающий средствами представления     знаний   для  определенных  предметных областей. Задача  пользователя заключается  не  в  непосредственном программировании, а  в формализации и вводе знаний с использованием предоставленных оболочкой возможностей.   Недостатком  этих  систем можно считать невозможность охвата одной системой всех существующих предметных областей. Примером могут служить   ИНТЕРЭКСПЕРТ,    РС+, VP-Expert.

¨    — Генераторы экспертных систем — мощные программные  продукты, предназначенные для получения оболочек,  ориентированных на то или иное представление   знаний  в   зависимости   от   рассматриваемой предметной области. Примеры этой разновидности — системы KEE, ART и др..

     

     
        5. ОБЛАСТИ И КРИТЕРИИ ПРИМЕНИМОСТИ ЭКСПЕРТНЫХ СИСТЕМ


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

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

        В списке  наиболее  распространенных  в  настоящее время за рубежом экспертных систем и их оболочек  можно  выделить  следующие наименования:     INSIGT, LOGIAN,  NEXPERT, RULE MASTER, KDS, PICON, KNOWLEDGE CRAFT, KESII, S1, TIMM и др.

        В качестве критериев, по которым можно судить о возможности создания экспертной системы следует отметить следующие:

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

2.    — Наличие экспертов,  компетентных в избранном круге вопросов, которые согласны сотрудничать при создании ЭС.

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

4.    — Необходимо четко ограничивать  круг  решаемых  задач,   т.е. предметная область   выбирается достаточно «узкой»,  чтобы избежать «комбинаторного взрыва»     объема   информации   необходимой   для компетентного решения поставленной задачи.

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

6.    — Должно  быть  достаточно  исходных   данных   для   проверки работоспособности экспертной     системы   в  выбранной  предметной

7.    области, чтобы    разработчики  смогли  убедиться  в   достижимости некоторого заданного уровня ее функционирования.

8.    — Должна обеспечиваться возможность  постепенного  наращивания системы. База    знаний должна легко расширяться и корректироваться, так как правила часто меняются с появлением новых фактов.

           Ценность использования ЭС проявляется в следующих аспектах:

a)    — В    сборе,     оперативном    уточнении,    кодировании   и распространении экспертных знаний.

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

c)    — В  сохранении  наиболее  уязвимой  ценности   коллектива   — коллективной памяти.

        Создание баз знаний открывает широкие возможности,  которые обусловлены безошибочностью   и  тщательностью,   присущими  ЭВМ  и синтезом знаний  экспертов.  Если база знаний объединяет информацию по нескольким дисциплинам,  то  такой  «сплав»  знаний  приобретает дополнительную ценность.

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

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

     
    продолжение
--PAGE_BREAK--
еще рефераты
Еще работы по информатике