Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по СИИ.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
424.24 Кб
Скачать

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

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

  1. возможна;

  2. оправдана;

  3. методы инженерии знаний соответствуют решаемой задаче.

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

  1. существуют экспертные системы в данной области, которые решают задачу значительно лучше, чем начинающие специалисты;

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

  3. эксперты должны уметь вербализовать (выразить на естественном языке) и объяснить используемые ими методы;

  4. задача, возложенная на экспертную систему требует только рассуждения, а не действий, в противном случае её нужно объединить с робототехникой;

  5. задача не должна быть очень трудной, то есть её решение должно занимать у экспертной системы несколько часов, а не дни или недели;

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

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

  1. решение задачи принесёт значительный эффект;

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

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

Приложение соответствует методам инженерии знаний, если:

  1. задача может быть решена посредством символьных рассуждений, а не числовыми методами;

  2. задача должна иметь эвристическую, а не алгоритмическую природу;

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

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

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

Технология разработки экспертной системы включает 6 этапов:

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

  1. формализация неформальных знаний экспертов;

  2. улучшение качества решений, принимаемых экспертами;

  3. автоматизация рутинных аспектов работы экспертов или пользователей;

  4. тиражирование знаний экспертов.

Основные ресурсы при проектировании следующие:

  1. источники знаний;

  2. время разработки;

  3. вычислительные средства;

  4. объёмы финансирования.

  1. Этап концептуализации. На этом этапе программист и инженер по знаниям объясняют и выделяют ключевые понятия, отношения и характеристики, необходимые для описания и решения задачи:

  1. типы доступных данных;

  2. используемые стратегии и гипотезы;

  3. виды взаимосвязей между объектами предметной области;

  4. типы используемых отношений;

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

  6. состав знаний, используемых для решения задачи;

  7. состав знаний, используемых для объяснения принятого решения.

  1. Формализация. Все ключевые понятия и отношения, введённые на этапе концептуализации , описываются на некотором формальном языке, выбранном инженером по знаниям. Кроме этого, инженер по знаниям определяет, подходят ли имеющиеся инструментальные средства для решения рассматриваемой проблемы, либо необходимы оригинальные разработки. Строится модель исследуемой задачи. Наличие модели позволяет генерировать решение. Могут использоваться как поведенческие, так и математические модели.

  2. Выполнение. Создаётся один или несколько прототипов экспертной системы, решающий требуемые задачи. По результатам тестирования и опытной эксплуатации создаётся конечный продукт, пригодный для массового использования. Разработка прототипа состоит в программировании его компонентов, либо выборки его из имеющихся инструментальных средств и наполнение базы знаний. Некоторые программы-прототипы могут войти в окончательную версию системы, некоторые могут быть полностью отвергнуты. Главное чтобы первый прототип обеспечил проверку адекватности идей, методов и способов представления знаний, выбранных при создании данной экспертной системы решаемым задачам. В первом прототипе реализуется простейшая процедура вывода и его работа проверяется на ограниченном ряде задач из области экспертизы. Если всё нормально, то далее круг решаемых задач расширяется. Идёт увеличение объёма знаний системы, совершенствуются стратегии поиска на основе замечаний и пожеланий, которые выявляются при эксплуатации прототипа. Таким образом, в конечном итоге экспертная система приводится к состоянию, когда она может дать высококачественные решения задач из данной проблемной области. В состав экспертной системы включается: дружественный интерфейс, средства для сбора замечаний пользователей, средства библиотеки задач, решённых системой. А также средства для исследования базы знаний и цепочек выводов, сгенерированных экспертной системой.

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

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