КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Экспертные системыСтруктура статической экспертной системы. Типичная статическая ЭС состоит из следующих основных компонентов (рис. 1.5): · решателя (интерпретатора); · рабочей памяти (РП), называемой также базой данных (БД); · базы знаний (БЗ); · компонентов приобретения знаний; · объяснительного компонента; · диалогового компонента. База данных (рабочая память) предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. База знаний (БЗ) в ЭС предназначена для хранения долгосрочных данных, описывающих рассматриваемую область (а не текущих данных), и правил, описывающих целесообразные преобразования данных этой области. Решатель, используя исходные данные из рабочей памяти и знания из БЗ, формирует такую последовательность правил, которые, будучи примененными к исходным данным, приводят к решению задачи. Компонент приобретения знаний автоматизирует процесс наполнения ЭС знаниями, осуществляемый пользователем-экспертом. Объяснительный компонент объясняет, как система получила решение задачи (или почему она не получила решение) и какие знания она при этом использовала, что облегчает эксперту тестирование системы и повышает доверие пользователя к полученному результату. Диалоговый компонент ориентирован на организацию дружественного общения с пользователем как в ходе решения задач, так и в процессе приобретения знаний и объяснения результатов работы. Рис. 1.5 Структура статической ЭС В разработке ЭС участвуют представители следующих специальностей: · эксперт в проблемной области, задачи которой будет решать ЭС; · инженер по знаниям - специалист по разработке ЭС (используемые им технологию, методы называют технологией (методами) инженерии знаний); · программист по разработке инструментальных средств (ИС), предназначенных для ускорения разработки ЭС. Необходимо отметить, что отсутствие среди участников разработки инженеров по знаниям (т. е. их замена программистами) либо приводит к неудаче процесс создания ЭС, либо значительно удлиняет его. Эксперт определяет знания (данные и правила), характеризующие проблемную область, обеспечивает полноту и правильность введенных в ЭС знаний. Инженер по знаниям помогает эксперту выявить и структурировать знания, необходимые для работы ЭС; осуществляет выбор того ИС, которое наиболее подходит для данной проблемной области, и определяет способ представления знаний в этом ИС; выделяет и программирует (традиционными средствами) стандартные функции (типичные для данной проблемной области), которые будут использоваться в правилах, вводимых экспертом. Программист разрабатывает ИС (если ИС разрабатывается заново), содержащее в пределе все основные компоненты ЭС, и осуществляет его сопряжение с той средой, в которой оно будет использовано. Примеры задач, решаемых экспертными системами. Перечень типовых задач, решаемых экспертными системами, включает:
Технология разработки экспертной системы.
В настоящее время сложилась определенная технология разработки ЭС, которая включает следующие шесть этапов (рис. 1.7): идентификация, концептуализация, формализация, выполнение, тестирование и опытная эксплуатация. Рис. 1.7 Этапы разработки ЭС. Этап идентификации На этом этапе осмысливаются задачи, формируются требования к ЭС. Результат – что надо сделать и какие ресурсы задействовать. Составляется описание в котором указывается : характеристики задачи, подзадачи, ключевые понятия, входные (выходные) данные предположительный вид решения, а также знания, относящиеся к решаемой задаче. Этап концептуализации На данном этапе проводится анализ проблемной области, выявляются используемые понятия и их взаимосвязи, определяются методы решения задач. Этап завершается созданием модели предметной области (ПО). На этапе определяются следующие особенности задачи: типы доступных данных; исходные и выводимые данные, подзадачи общей задачи; используемые стратегии и гипотезы; виды взаимосвязей между объектами ПО, типы используемых отношений , процессы, используемые в ходе решения; состав знаний, используемых при решении задачи; типы ограничений, накладываемых на процессы, используемые в ходе решения; состав знаний, используемых для обоснования решений. Этап формализации Теперь все ключевые понятия и отношения выражаются на некотором формальном языке. Выходом этапа формализации является описание того, как рассматриваемая задача может быть представлена в выбранном или разработанном формализме. Сюда относится указание способов представления знаний (фреймы, сценарии, семантические сети и т.д.) и определение способов манипулирования этими знаниями (логический вывод, аналитическая модель, статистическая модель и др.) и интерпретации знаний. Этап выполнения Цель этого этапа — создание одного или нескольких прототипов ЭС, решающих требуемые задачи. Затем на данном этапе по результатам тестирования и опытной эксплуатации создается конечный продукт. Главное в создании прототипа в том, чтобы этот прототип обеспечил проверку адекватности идей, методов и способов представления знаний решаемым задачам. Этап тестирования В ходе данного этапа производится оценка выбранного способа представления знаний в ЭС в целом. Для этого инженер по знаниям подбирает примеры, обеспечивающие проверку всех возможностей разработанной ЭС. Этап опытной эксплуатации На этом этапе проверяется пригодность ЭС для конечного пользователя. Пригодность ЭС для пользователя определяется в основном удобством работы с ней и ее полезностью. Системы с нечеткой логикой. Нечеткая логика (fuzzy logic) является обобщением привычной булевой логики, оперирующей с двоичными числами, которые соответствуют понятиям истина и ложь. В нечеткой логике эти понятия обобщаются и на все промежуточные между истиной и ложью состояния. В соответствии с этим нечеткая логика оперирует числами из интервала [0,1], которые отражают степень истинности высказывания. Переход от двоичного представления чисел к интервальному требует обобщения логических операций на соответствующие операции с нечеткими числами. При этом обобщенные операции должны переходить в классические, если операнды имеют значения 0 или 1. Пример такого обобщения. Пусть имеются нечеткие числа a и b. Суммой двух нечетких чисел называется нечеткое число, совпадающее с максимальным операндом: c = a + b = max(a,b). Произведением двух нечетких чисел называется нечеткое число, равное минимальному операнду: c = a * b = min(a,b). В соответствии с введенными определениями множество нечетких чисел является замкнутым относительно данных операций. Одним из важных применений нечеткой логики выступают нечеткие экспертные системы (НЭС), в которых логические правила вывода оперируют с нечеткими операциями.
|