Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
материал к экзамену.doc
Скачиваний:
3
Добавлен:
01.07.2025
Размер:
350 Кб
Скачать
☆

Классификация экспертных систем

Для классификации ЭС можно использовать различные критерии. 1. По назначению ЭС можно условно разделить на консультационные (информационные), исследовательские и управляющие. Консультационные ЭС предназначены для получения  квалифицированных ответов; исследовательские - для помощи пользователю квалифицированно решать научные задачи; управляющие - для автоматизации управления процессами в реальном масштабе времени. 2. По сложности и объему базы знаний - неглубокие и глубокие. Неглубокие (простые) ЭС имеют относительно малые БЗ. Доказательства их заключений обычно коротки, большинство выводов являются прямыми следствиями информации, хранимой в базе знаний. Такие ЭС в основном предназначены для решения относительно простых задач типа ответов на запросы по требуемой  информации. Глубокие ЭС делают свои выводы обязательно из моделей происходящих процессов, хранящихся в базах знаний. Сама модель процесса представляет собой набор правил, предназначенных для объяснения большого количества эмпирических данных. В глубоких ЭС доказательства выводов значительно длиннее, основываются на знаниях, выведенных из моделей. 3. По области применения ЭС делятся следующие классы. 1) Диагностика. Например, медицинская диагностика, когда системы используются для установления заболеваний; техническая диагностика, когда определяют  неисправности в механических и электрических устройствах. 2) Прогнозирование. Прогнозирующие системы предсказывают возможные результаты или события на основе данных о текущем состоянии объекта (погода, урожайность, поток пассажиров). 3) Планирование и проектирование. Такие системы предназначены для достижения конкретных целей при решении задач с большим числом переменных (консультации по приобретению товаров, проектирование космических станций, и так далее). 4) Интерпретация. Интерпретирующие системы обладают способностью получать определенные заключения на основе результатов наблюдения (например, местоположение и тип судов в океане по данным акустических систем слежения). 5) Контроль и управление (например, регулирование финансовой деятельности предприятия и оказание помощи при выработке решений в критических ситуациях, управление воздушным движением, атомными электростанциями). 6) Обучение. Экспертно-обучающие системы реализуют следующие педагогические функции: учение, обучение, контроль и диагностику знаний, тренировку. 4. По связям с реальным миром. 1) Статические ЭС разрабатываются в предметных областях, в которых БЗ и интерпретируемые данные не меняются во времени. Они стабильны. Например, диагностика неисправностей в автомобиле. 2) Квазидинамические ЭС интерпретируют ситуацию, которая меняется с некоторым фиксированным интервалом времени. Например, микробиологические ЭС, в которых снимаются лабораторные изменения с технологического процесса один раз в 4 -5 часов и анализируется динамика полученных показателей по отношению к предыдущему измерению. 3) Динамические ЭС работают в сопряжении с датчиками объектов в режиме реального времени с непрерывной интерпретацие            поступающих в систему данных. Например, управление гибкими производственными комплексами, мониторинг в реанимационных палатах. Можно выде­лить четыре основных класса ЭС: классифицирующие, доопределяющие, трансформирующие и мультиагентные. 1) Классифицирующие ЭС решают задачи распознавания ситуа­ций. Основным методом формирования решений в таких систе­мах является дедуктивный логический вывод. 2) Доопределяющие ЭС используются для решения задач с не полностью определенными данными и знаниями. В таких ЭС возникают задачи интерпретации нечетких знаний и выбора аль­тернативных направлений поиска в пространстве возможных ре­шений. В качестве методов обработки неопределенных знаний могут использоваться байесовский вероятностный подход, коэф­фициенты уверенности, нечеткая логика. 3) Трансформирующие ЭС относятся к синтезирующим динами­ческим экспертным системам, в которых предполагается повто­ряющееся преобразование знаний в процессе решения задач. В ЭС данного класса используются различные способы обработки знаний:

· генерация и проверка гипотез;

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

· использование метазнаний (более общих закономерностей) для устранения неопределенностей в ситуациях.

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

· реализация альтернативных рассуждений на основе исполь­зования различных источников знаний и механизма устранения противоречий;

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

· применение различных стратегий вывода заключений в за­висимости от типа решаемой проблемы;

· обработка больших массивов информации из баз данных;

· использование математических моделей и внешних процедур для имитации развития ситуаций.

2) Синтезирующие. В системах решение синтезируется из отдельных фрагментов знаний.

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

  • эксперт;

  • инженер по знаниям;

  • программист;

  • пользователь.

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

Процесс разработки ЭС можно разделить на следующие этапы: 1. Выбор проблемы. 2. Разработка прототипа ЭС. 3. Доработка до промышленной ЭС. 4. Оценка ЭС. 5. Стыковка ЭС. 6. Поддержка ЭС.

1.Выбор подходящей проблемы. На этом этапе: ·определяется проблемная область; ·подбираются специалисты-эксперты; ·подбирается  коллектив разработчиков; ·определяется предварительный подход к решению проблемы; ·готовится подробный план разработки.  2. Разработка прототипа ЭС. Прототипная система является сокращенной версией ЭС, спроектированной для проверки правильности представления фактов, связей и стратегий рассуждения эксперта. Объем прототипа – несколько десятков правил, фреймов или примеров. Разработка прототипа ЭС делится на шесть стадий: идентификация проблемы, извлечение знаний, концептуализация (структурирование) знаний, формализация, реализация прототипа, тестирование.  2.1. Идентификация проблемы – знакомство и обучение членов коллектива разработчиков, а также создание неформальной формулировки проблемы. На этом этапе уточняется задача, планируется ход разработки прототипа ЭС, определяются:  ·ресурсы (время, люди и т.д.); ·источники знаний (книги, дополнительные эксперты); ·имеющиеся аналогичные ЭС; ·классы решаемых задач и т.д. 2.2. Извлечение знаний – получение инженером по знаниям наиболее полного из возможных представлений о предметной области и способах принятия решения в ней. Для извлечения знаний  инженер использует различные методы: анализ текстов, диалоги, лекции, дискуссии, интервью, наблюдение и др. 2.3. Концептуализация (или структурирование) знаний – разработка неформального описания знаний о предметной области в виде графа, таблицы, диаграммы или текста, которое отражает основные концепции и взаимосвязи между понятиями предметной области. На этом этапе определяются: терминология, список основных понятий и их атрибутов, отношения между понятиями, структура входной и выходной информации, стратегия принятия решений и т.д. 2.4. Формализация знаний – это разработка базы знаний на языке представления знаний. На этом этапе используются: логические методы, продукционные модели, семантические модели, фреймы, объектно-ориентированные языки. 2.5. Реализация прототипа – разработка программного комплекса, демонстрирующего жизнеспособность подхода в целом. На этом этапе создается прототип ЭС (включающий базу знаний, остальные программные модули) при помощи: языков программирования (традиционных, специализированных), инструментальных средств разработки ЭС, «пустых» оболочек ЭС. 2.6. Тестирование – процесс выявления ошибок в подходе и реализации прототипа. Прототип проверяется на: удобство и адекватность интерфейса ввода/вывода, качество проверочных примеров, полнота и непротиворечивость правил в базе знаний.  3. Развитие прототипа до промышленной ЭС. Основная работа на этом этапе заключается в расширении базы знаний (добавление правил, фреймов, узлов семантической сети или других элементов знаний). После установления основной структуры знаний ЭС инженер по знаниям приступает к разработке и адаптации интерфейсов, с помощью которых система будет общаться с пользователем и экспертом. Система должна предоставлять пользователю возможность уточнять непонятные моменты, приостанавливать работу и т.д. 4. Оценка системы необходима для того, чтобы проверить точность работы программы и ее полезность. Оценка проводится по следующим критериям:

  • критерии пользователя (понятность работы системы, удобство интерфейсов и т.д.);

  • критерии приглашенных экспертов (оценка советов-решений, предлагаемые системой, оценка подсистемы объяснений и т.д.);

  • критерии коллектива разработчиков (эффективность реализации, производительность, непротиворечивость базы знаний, количество тупиковых ситуаций и т.д.).

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

Базы данных: данные, модель данных, база данных, система управления базами данных, информационная система. Модели данных. Реляционная модель данных.

При наличии большого объема перерабатываемой с помощью компьютера информации возникают задачи обеспечения наилучшего хранения данных (без дублирования) и манипулирования данными (поиска, сортировки, добавления, изменения, обработки). Следовательно, нужно наилучшим образом организовать данные и обеспечить наилучшее управление данными. Данные – информация, представленная в определенной форме, пригодной для последующей обработки, хранения и передачи. Предметная область – часть реального мира, подлежащая изучению с целью организации управления и последующей автоматизации. ПО определена, если известны существующие в ней объекты, их свойства и отношения. Модель данных – представление о предметной области в виде данных и связей между ними. То есть, модель данных – это совокупность взаимосвязанных структур данных и операций над этими структурами. Понятие “Модель данных” включает три компонента: 1) организацию данных (количество и типы объектов модели данных, ограничения на структуру данных); 2) множество допустимых операций над данными: операции выборки (поиск), операции модификации (включить, удалить, изменить данные); 3) средства обеспечения логической целостности и достоверности данных (ограничения на значения данных и связи), с помощью которых достигается непротиворечивость хранимой информации. Выбор модели данных зависит от объема информации, сложности решаемых задач и имеющегося технического и программного обеспечения.  База данных – совокупность данных конкретной предметной области. Они организованы по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования, и не зависят от программ обработки.  Система управления базами данных – набор программных средств (программная система или пакет), обеспечивающих создание и обслуживание баз данных и выполнение операций над данными БД (доступ к ним и обработку). СУБД поддерживает один из типов моделей данных – сетевую, иерархическую или реляционную. Реляционная модель ориентирована на табличное представление данных, т.е. организацию данных в виде двумерных таблиц. В теории множеств таблице соответствует термин отношение (relation), который дал название модели. Реляционная база данных – база данных, логически организованная как набор отношений (прямоугольных таблиц) конкретной предметной области. Таблица соответствует объекту ПО; строка (кортеж) – запись об одном экземпляре объекта. Размещение в одной строке таблицы определенных элементов данных означает установление между ними связи или отношения (relation). Значения в столбце (поле) таблицы определяют характеристику или свойство объекта (атрибут отношения). Таблица имеет фиксированное число столбцов, их порядок фиксирован; число строк – произвольное, их порядок безразличен. Таблица обладает следующими свойствами:

  • столбцам (полям) присвоены уникальные имена;

  • элементы каждого столбца имеют одинаковую природу, т.е. столбцы однородные;

  • в таблице нет одинаковых строк (записей), т.е. любые две строки отличаются хотя бы одним элементом (полем записи);

  • строки и столбцы могут обрабатываться в любой последовательности.

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

  • каждый элемент данных хранится только в одной таблице (экономия места);

  • внесение изменений упрощается, уменьшается риск ошибки (например, в написании фамилий);

  • наличие связей между таблицами ускоряет обработку взаимосвязанной информации;

  • ошибочные записи (с некорректными ссылками) должны автоматически исключаться.

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

  • собственно база данных, содержащая необходимую информацию и описание структуры хранимых данных;

  • система управления базой данных, выполняющая типовые процедуры управления данными;

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

Обеспечение надежности работы ИС. Транзакции. OLTP-системы.

Надежность- свойство объекта сохранять во времени в установленных пределах значения всех параметров, характеризующих способность выполнять требуемые функции в заданных режимах и условиях применения, технического обслуживания, ремонтов, хранения и транспортирования (ГОСТ 27.002-83).

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

Свойства транзакции:- Atomicity (атомарность): определяет, что транзакция является наименьшим, неделимым блоком алгоритма изменения данных. Другими словами, любые части (подоперации) транзакции либо выполняются все, либо не выполняется ни одной такой части. Поскольку на самом деле невозможно одновременно и атомарно выполнить последовательность команд внутри транзакции, вводится понятие «отката» (rollback): если транзакцию не удаётся полностью завершить, результаты всех до сих пор произведённых действий должны быть отменены и система возвращается в исходное состояние.- Consistency (непротиворечивость): по окончанию транзакция оставляет данные в непротиворечивом состоянии.- Isolation (изоляция): во время выполнения транзакции другие процессы не должны видеть данные в промежуточном состоянии. Например, если транзакция изменяет сразу несколько полей в базе данных, то другой запрос, выполненный во время выполнения транзакции, не должен вернуть одни из этих полей с новыми значениями, а другие с исходными.- Durability (долговечность): независимо от проблем на нижних уровнях (к примеру, обесточивание системы или сбои в оборудовании) изменения, сделанные успешно завершённой транзакцией, останутся сохранёнными после возвращения системы в работу. Другими словами, если пользователь получил подтверждение от системы, что транзакция выполнена, он должен быть уверен, что сделанные им изменения не будут отменены из-за какого-либо сбоя.

В идеале транзакции разных пользователей должны выполняться так, чтобы создавалась иллюзия, что пользователь текущей транзакции — единственный. Однако в реальности, по соображениям производительности и для выполнения некоторых специальных задач, СУБД предоставляют различные уровни изоляции транзакций.

OLTP (Online Transaction Processing) — обработка транзакций в реальном времени. OLTP система – ИС, ориентированная на обработку небольших по размерам и сложности транзакций, идущих большим потоком. OLTP-системы предназначены для ввода, структурированного хранения и обработки информации (операций, документов) в режиме реального времени.

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

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