Главная              Рефераты - Разное

«Экспертные системы» - реферат

Министерство общего и профессионального образования Российской Федерации

Воронежский Государственный Университет

Юридический факультет

Заочное отделение

Реферат по информатике

На тему: «Экспертные системы »

Выполнил :

Студент 3 курса

___________________

группы___________

Проверил :

_________________

Воронеж- 98

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

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

Первые ЭС- медицинские mycin и dendral для приложений по химии появились в середине 70-х годов в рамках исследовательских программ по искусственному интеллекту. Уже первые ЭС оказались полезными. Медицинская ситсема mycin успешно вписалась в клиническую практику, помогая в выборе лекарств больным с бактеремией, менингитом, циститом.

Идеологию ЭС можно выразить формулой: знание+ вывод=система. ЭС предполагает взаимодействие блоков. Главные из них – база знаний и механизм вывода.

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


Рис. 1.1 Те хнология разработ ки программ ного обеспече ния: первая - кл ассичес кая; вторая - с испо льзованием обол очек экспертных систем

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

Рис. 1.2. Различие струк т ур обычной программы и программы ИИ:

первая- обыч ная программа; вторая - програм ма ИИ

Более полно различия программ ИИ и обычных программ иллюстрирует табл. 1 . 1 .

Табл ица 1 .1. Сравнитель ная характери ст ика про грамм ИИ

Характе ристика Программа ИИ Обычная программа

Тип обработки символь н ая цифровая метод

Метод эвристический алгоритмический

Определение шагов неявное точное решения

Искомые решения удовлетворительные оптимальные

Разделение управле- раздельно смешан о

ния и данных

Модификация частая редкая

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

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

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

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

эксперт

Приобретение

Знаний

ИНТЕРФЕЙС

ПОЛЬЗОВАТЕЛЯ

Объяснений

Вопросы

ответы


Рис . 1.1. Базов ая структ ура ЭС

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

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

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

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

В целом представление знаний является наиболее важной проблемой при построении экспертных систем и более подробно она будет рассмотрена ни­же.

Традиционно процесс рас­познавания разделяется на два этапа: обучение и собственно распознава­ние. Первый этап инд уктивный, второй - дедуктивный.

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

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

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

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

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

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

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

Решения представляют гипотезы и решения, выдвинутые в качестве воз­можных кандидатов, вместе с зависимостями, связывающими одно решение с другим.

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

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

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

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

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

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

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


Рис. 1.4. Этапы развития средств разработ ки ЭС

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

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

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

Например, такие системы, как Turbo-Prolog, Interlisp-D, позволяют программисту запустить программу сразу после ввода ее в систему. В ответ на ошибку системой вызывается отладчик, чтобы дать возможность програм­ми сту изучить причину сбоя. Программист может затем отредактировать программу и продолжить ее выполнение. этот подход сокращает время на и с­правление мелких ошибок в программе для экспериментального программиро­вания (метод проб и ошибок), обычно применяемого специалистами по ис­кусственному интеллекту.

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

Interlisp-D, Turbo Prolog поддерживают только этапы реализации и отладки. Исследования показывают, что наибольший вклад в стоимость жиз­ненного ци кла дает этап сопровождения. Не менее важное значение и меют средства этапа требований и спецификаций, потому что любую ошибку в спе­ци фикациях очень трудно и дорого исправлять на позднейши х этапах жизнен­ного цикла. Таким образом, анализ жизненного цикла важен для любой части программного обеспечения, которая предназначена для использования кон еч­ными пользователями на заметном интервале времени.

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

В заключение отметим некоторые особенности этапов жизненного цикла э кспертных систем.

Тестирование экспертных систем отличается от тестирования обычн ых систем.

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

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

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

Макетирование является единственным эффективным способом тестирова­ния экспертной системы.

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

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

Источниками знаний для конкретной ЭС могут быть учебники, спавочники, материалы конкретных исследований в проблемной области и т.п. сами разработчики могут иметь теоретические знания и практический опыт в данной области. Но классическим источником знаний является эксперт- профессионал в данной предметной области. Таким образом приобретение знаний требует учёта человеческого фактора. Для успешного решения этой проблемы необходимы совместные усилия математиков, программистов, психологов.

На настоящий момент нет готовых систем, позволяющих исключить человека из цепочки, причастной к формированию БЗ, однако имеются теоретические исследования и исследовательские разработки, наличие которых позволяет выделить три класса способов приобретения знаний:

1. Традиционный диалог эксперта с инженером по знаниям, в котором все знания предоставляются экспертом.

2. Автоматическая генерация знаний, которая позволяет часть правил получать автоматически.

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

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

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

1.«Тройка» объект- атрибут- значение, например: дом- цвет- зелёный; пациент- температура- высокая. Эта форма представления знаний определяет «объект», обладающий некоторыми атрибутами (свойствами), которые могут принимать значения из известного набора.

2.Правила продукций в виде: Если пациент болен гриппом И стадия заболевания начальная, ТО температура высокая с вероятностью = 0.95 И головная боль есть с вероятностью = 0.8.

Правило продукции состоит из двух частей: посылки (ЕСЛИ) и заключения (ТО), каждая из которых состоит из конъюнкции утверждений более низкого уровня детализации.

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

4.Семантическая сеть. Это ориентированный граф, вершины которого соответствуют объектам (событиям), а дуги описывают отношения между вершинами.

Первая из указанных форм представления знаний («тройка») является наиболее ранней формой, своего рода переходной, от представления данных к представлению знаний. Наилучшая область применения «тройки»- диагностические ЭС в предметной области с большим количеством легкокластеризуемых объектов, в каждом классе которых имеется большое количество общих атрибутов. Примером такой области может служить диагностика сложных технических систем.

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

Фрейм- структуры в определённой степени стали развитием метода электронных таблиц в области обработки знаний. Это вторая по частоте встречаемости в конкретных реализациях ЭС форма представления знаний. Фрейм –структуры наиболее разумно применять в предметной области с чётко выраженной иерархической структурой.

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

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

Литература

1. Экспертные системы. «Вычислительная техника и её применение».- 1990г, №10.

2. Экспертные системы для персональных компьютеров: методы, средства, реализации: Справочное пособие/ В.С. Крисевич, Л.А. Кузьмич и др.- Мн.: Выш. шк., 1990г.

3. Экспертные системы. Принципы работы и примеры/ Под ред. Р. Форсайта. – М.: Радио и связь, 1987г.