Автор работы: Пользователь скрыл имя, 08 Января 2012 в 18:59, реферат
Главные блоки ЭС: база знаний и механизм вывода, их взаимодействие. Технология разработки программного обеспечения: первая - классическая; вторая - с использованием оболочек экспертных систем. Базовая структура ЭС. Эволюция средств разработки ЭС.
Таким образом, экспертная система - это компьютерная программа с некоторыми отличиями в структуре и характеристиках по сравнению с традиционными программами.
Наличие базы знаний и относительно универсального интерпретатора делает принципиально возможным создание новых экспертных систем для новых приложений путем разработки новой базы знаний без изменения интерпретатора. Процесс разработки экспертной системы, таким образом, можно свести (при наличии готового интерпретатора) к процессу разработки базы знаний. Такая технология получила название технологии "пустых оболочек", когда однажды разработанная экспертная система используется в качестве оболочки для новых знаний, как правило, различные приложения существенно различаются, и поэтому для ее реализации необходимо иметь большой набор оболочек с различными моделями представления знаний и различными механизмами логического вывода.
Для разработки ЭС используются те же языки и системы программирования, что и для обычных программ, но наличие таких специфических для ИИ структурных частей, как логический вывод, естественно-языковый интерфейс, делает предпочтительным использование для разработки ЭС таких языков ИИ, как Липс, Пролог и специальных средств поддержки разработки.
Особенно перспективной для экспертных систем оказалась реализация языка Пролог. Основная идея логического программирования состоит в отделении логики программы от управления ходом вычислений, что делает процесс создания программы более прозрачным.
Целью
поддержки разработки является облегчение
творческого и интеллектуальног
Эволюция
средств разработки ЭС может
быть разбита на четыре этапа (рис. 1.4).
Для этой эволюции характерны две тенденции:
увеличение степени охвата этапов жизненного
цикла ЭС; движение от использования
дискретных средств ко все более интегрированным
целостным системам.
Рис. 1.4. Этапы развития средств разработки ЭС
Существуют различные средства поддержки разработки программ. Трансляторы языков программирования и отладчики для контроля за состоянием программ во время выполнения были в числе первых таких средств. Отладчики наряду с экранными редакторами и в настоящее время остаются наиболее часто используемыми средствами. К другим популярным средствам относятся программы 'красивой' печати, поддержка управления конфигурацией, программа перекрестных программных ссылок и трассировщик выполнения.
Перечисленные средства являются дискретными и независимыми. Программист мог работать только с одним средством. Например, во время отладки надо было воспользоваться отладчиком для определения ошибки, затем окончить отладку, чтобы вызвать редактор для исправления ошибки. После этого надо было компилировать программу и вызывать отладчик для дальнейшей отладки (цикл редактирования - компилирования - прогона). Программист вынужден был вводить дополнительные команды и терять время на запуск и окончание работы системных средств. Прерывание процесса отладки на редактирование, повторную компиляцию и повторный запуск программы серьезно затруднял процесс обдумывания задачи программистом.
Следующим шагом в развитии средств разработки был интегрированный набор средств, названный 'инструментальным ящиком', каждое средство проектировалось с учетом остальных, поэтому система обеспечивала возможность обращения к другим средствам.
Например, такие системы, как Turbo-Prolog, Interlisp-D, позволяют программисту запустить программу сразу после ввода ее в систему. В ответ на ошибку системой вызывается отладчик, чтобы дать возможность программисту изучить причину сбоя. Программист может затем отредактировать программу и продолжить ее выполнение. этот подход сокращает время на исправление мелких ошибок в программе для экспериментального программирования (метод проб и ошибок), обычно применяемого специалистами по искусственному интеллекту.
Проектирование больших программных средств является сложной проблемой. разбиение жизненного цикла на несколько этапов (анализ требований, спецификации, проектирование, реализация, тестирование и отладка, работа и сопровождение) направлено на уменьшение сложности проектирования путем изолирования и упорядочения важных задач в процессе разработки.
Interlisp-D, Turbo Prolog поддерживают только этапы реализации и отладки. Исследования показывают, что наибольший вклад в стоимость жизненного цикла дает этап сопровождения. Не менее важное значение имеют средства этапа требований и спецификаций, потому что любую ошибку в спецификациях очень трудно и дорого исправлять на позднейших этапах жизненного цикла. Таким образом, анализ жизненного цикла важен для любой части программного обеспечения, которая предназначена для использования конечными пользователями на заметном интервале времени.
Успех методов искусственного интеллекта в различных областях мотивировал их применение в разработке программного обеспечения. Показательными системами являются проект 'Помощник программиста' в Массачусетском технологическом институте, проект "Пси' в Станфордском университете, в этих проектах осуществляется попытка моделировать знания, которыми пользуется программист для понимания, проектирования, реализации и сопровождения программы. Эти знания могут быть использованы экспертными системами для частичной автоматизации процесса разработки программ.
В заключение отметим некоторые особенности этапов жизненного цикла экспертных систем.
Тестирование экспертных систем отличается от тестирования обычных систем.
Во-первых,
экспертные системы часто обладают
недетерминированным поведением
Во-вторых, для правил в отличие от процедур в традиционном программном обеспечении нет никаких точных отношений ввода-вывода. это затрудняет применение для тестирования анализа ввода-вывода.
В-третьих, число способов, которыми
могут быть активизированы
Макетирование является единственным эффективным способом тестирования экспертной системы.
Сопровождение и модификация - важная часть разработки экспертных систем. Правила базы знаний эволюционируют с накоплением опыта их применения, и, следовательно, модифицируются чаще, чем алгоритмы. Правила могут также зависеть от времени, поэтому их достоверность может также изменяться со временем.
С разработкой и использованием экспертных систем тесно связаны такие понятия, как знания и базы знаний. Особая роль знаний в экспертных системах обусловлено, прежде всего, областью их применения, экспертные системы предназначены для решения трудноформализуемых задач или задач, не имеющих алгоритмического решения в узкоспециализированных предметных областях деятельности человека, экспертные системы позволяют аккумулировать, воспроизводить и применять знания, которые сами по себе обладают огромной ценностью.
Источниками знаний для конкретной ЭС могут быть учебники, спавочники, материалы конкретных исследований в проблемной области и т.п. сами разработчики могут иметь теоретические знания и практический опыт в данной области. Но классическим источником знаний является эксперт- профессионал в данной предметной области. Таким образом приобретение знаний требует учёта человеческого фактора. Для успешного решения этой проблемы необходимы совместные усилия математиков, программистов, психологов.
На настоящий момент нет готовых систем, позволяющих исключить человека из цепочки, причастной к формированию БЗ, однако имеются теоретические исследования и исследовательские разработки, наличие которых позволяет выделить три класса способов приобретения знаний:
При разработке ЭС необходимо начинать работу с создания «бумажной» её модели. Эта модель формируется в процессе общения с экспертом. При этом выделяются основные понятия, которыми оперирует эксперт, формируется тезаурус системы. После этого на нескольких несложных примерах подробно анализируется метод, которым эксперт решает такого рода задачи. Таким образом разрабатывается алгоритм задачи.
В базе знаний в некотором закодированном виде хранятся формализованные знания эксперта. На современном этапе развития ЭС используется несколько форм представления знаний. Выделим из них четыре основные:
1.«Тройка»
объект- атрибут- значение, например:
дом- цвет- зелёный; пациент- температура-
2.Правила
продукций в виде: Если пациент
болен гриппом И стадия
Правило
продукции состоит из двух частей:
посылки (ЕСЛИ) и заключения (ТО), каждая
из которых состоит из конъюнкции
утверждений более низкого
3.Фрейм.
Представляет собой
4.Семантическая
сеть. Это ориентированный граф,
вершины которого
Первая из указанных форм
Представление
знаний с помощью правил продукции
– самая распространённая форма
реализации БЗ. С помощью продукций
можно описать практически
Фрейм- структуры в определённой степени стали развитием метода электронных таблиц в области обработки знаний. Это вторая по частоте встречаемости в конкретных реализациях ЭС форма представления знаний. Фрейм –структуры наиболее разумно применять в предметной области с чётко выраженной иерархической структурой.