"Базы знаний и экспертные системы"
Экспертные системы играют важную роль в прогнозировании и управлении экономикой. Овладение методологией экспертных систем помогает принять решение в самых сложных и уникальных ситуациях. Чтобы уметь использовать ЭС на практике, важно знать об основных классах систем, типах данных и способах их хранения, основных стадиях разработки и реализации экспертных систем.
Материал содержит подробную и доступную информацию о экспертных системах. Он будет полезен в самостоятельном изучении дисциплины, при выполнении лабораторных работ и подготовке к зачету.
Лекция №1. Введение
Цели и задачи дисциплины
По мере развития рыночных отношений в экономике России все большее значение приобретают проблемы принятия эффективных управленческих решений. Особенностями экономики в наши дни являются ее крупномасштабность, многогранность, изменчивость и трудность прогнозирования по накопленным данным. Эти факторы в немалой степени обусловили проникновение искусственного интеллекта, и в частности экспертных систем (ЭС), в решение экономических задач. Интерес к ЭС вызван, по крайней мере, тремя причинами.
1) Они ориентированы на решение широкого круга неформальных задач, решение которых до недавнего времени считалось малодоступным для ЭВМ.
2) С помощью ЭС специалисты, не знающие программирования, могут самостоятельно разрабатывать интересующие их приложения.
3) С ЭС иногда удается достичь результатов, не уступающих возможностям экспертов.
Поэтому, главной задачей курса является знакомство с возможностями ЭС и овладение методологией их применения в решении практических задач
В результате изучения дисциплины студенты должны: знать основные классы экспертных систем и их возможности в решении практических экономических задач; типы знаний, способы их получения и методы их хранения и обработки; иметь представление об основных стадиях разработки ЭС и примерах их реализации.
ЭС как ИИС
ИИ – отрасль информатики. Спец-ты в области ИИ стремились разработать программы для ЭВМ, которые могли бы в некотором смысле «думать», т.е. решать задачи таким способом, который мы бы сочли разумным, если бы его применил человек. ИИ – программная система, имитирующая мышление человека.
В рамках ИИ разраб. ИИС.
Для интеллектуальных информационных систем, ориентированных на генерацию алгоритмов решения задач, характерны следующие признаки:
• развитые коммуникативные способности,
• умение решать сложные плохо формализуемые задачи,
• способность к самообучению,
• адаптивность.
Коммуникативные способности ИИС характеризуют способ взаимодействия (интерфейса) конечного пользователя с системой, в частности, возможность формулирования произвольного запроса в диалоге с ИИС на языке, максимально приближенном к естественному.
Сложные плохо формализуемые задачи - это задачи, которые требуют построения оригинального алгоритма решения в зависимости от конкретной ситуации, для которой могут быть характерны неопределенность и динамичность исходных данных и знаний.
Способность к самообучению - это возможность автоматического извлечения знаний для решения задач из накопленного опыта конкретных ситуаций.
Адаптивность - способность к развитию системы в соответствии с объективными изменениями модели проблемной области.
В различных ИИС перечисленные признаки интеллектуальности развиты в неодинаковой степени и редко, когда все четыре признака реализуются одновременно. Условно каждому из признаков интеллектуальности соответствует свой класс ИИС:
• Системы с интеллектуальным интерфейсом;
• Экспертные системы;
• Самообучающиеся системы;
• Адаптивные системы.
Эксперт – это человек, который благодаря обучению и опыту может делать то, что остальные делать не могут. Они компетентны в некоторой ПО, т.е. обладают практически применимыми знаниями. Экспертные системы моделируют экспертизу, т.е. процесс принятия решения экспертом.
Назначение экспертных систем
Заключается в решении достаточно трудных для экспертов задач на основе накапливаемой базы знаний, отражающей опыт работы экспертов в рассматриваемой проблемной области. Достоинство применения экспертных систем заключается в возможности принятия решений в уникальных ситуациях, для которых алгоритм заранее не известен и формируется по исходным данным в виде цепочки рассуждений (правил принятия решений) из базы знаний. Причем решение задач предполагается осуществлять в условиях неполноты, недостоверности, многозначности исходной информации и качественных оценок процессов.
Характеристики экспертной системы
Сердцевину экспертной системы составляет база знаний, которая накапливается в процессе ее построения. Знания выражены в явном виде и организованы так, чтобы упростить принятие решений.
- Накопление и организация знаний - одна из самых важных характеристик экспертной системы. Последствия этого факта выходят за пределы построения программы, предназначенной для решения некоторого класса задач. Причина в том, что знания - основа экспертных систем - являются явными и доступными, что и отличает эти системы от большинства традиционных программ.
- Наиболее полезной характеристикой экспертной системы является то, что она применяет для решения проблем высококачественный опыт. Этот опыт может представлять уровень мышления наиболее квалифицированных экспертов в данной области, что ведет к решениям творческим, точным и эффективным. Именно высококачественный опыт в сочетании с умением его применять, делает систему рентабельной, способной заслужить признание на рынке. Этому способствует также гибкость системы. Система может наращиваться постепенно в соответствии с нуждами бизнеса или заказчика. Это означает, что можно вначале вложить сравнительно скромные средства, а потом наращивать ее возможности по мере необходимости.
- Другой полезной чертой экспертных систем является наличие у них прогностических возможностей. Экспертная система может функционировать в качестве системы обработки информации или модели решения задачи в заданной области, давая ожидаемые ответы в конкретной ситуации и показывая, как изменятся эти ответы в новых ситуациях. Экспертная система может объяснить подробно, каким образом новая ситуация привела к изменениям. Это позволяет пользователю оценить возможное влияние новых фактов или информации и понять, как они связаны с решением. Аналогично, пользователь может оценить влияние новых стратегий или процедур на решение, добавляя новые правила или изменяя уже существующие.
- База знаний, определяющая компетентность экспертной системы, может также обеспечить новое качество: институциональную память. Если база знаний разработана в ходе взаимодействия с ведущими специалистами учреждения, отдела или штаба, то она представляет текущую политику или способы действия этой группы людей. Этот набор знаний становится сводом очень квалифицированных мнений и постоянно обновляющимся справочником наилучших стратегий и методов, используемых персоналом. Ведущие специалисты уходят, но их опыт остается. Это важно для деловой сферы и особенно ценно для вооруженных сил и правительственных органов с их частыми преобразованиями и персональными перемещениями.
-И последним важным свойством экспертных систем является то, что их можно использовать для обучения и тренировки руководящих работников и ведущих специалистов. Экспертные системы могут быть разработаны с расчетом на подобный процесс обучения, так как они уже содержат необходимые знания и способны объяснить процесс своего рассуждения. Необходимо только добавить программное обеспечение, поддерживающее соответствующий требованиям эргономики интерфейс между обучаемым и экспертной системой. Знания о методах обучения и возможном поведении пользователя также должны быть включены. В качестве инструмента обучения экспертная система обеспечивает новых служащих обширным багажом опыта и стратегий, по которым можно изучать рекомендуемую политику и методы. Систему можно также адаптировать для обучения новичков конкретным заданиям.
Применение ЭС
Экспертные системы используются во многих областях, среди которых лидирует сегмент приложений в бизнесе.
Архитектура ЭС
Архитектура экспертной системы включает в себя два основных компонента: базу знаний (хранилище единиц знаний) и программный инструмент доступа и обработки знаний, состоящий из механизмов вывода заключений (решения), приобретения знаний, объяснения получаемых результатов и интеллектуального интерфейса. Причем центральным компонентом экспертной системы является база знаний, которая выступает по отношению к другим компонентам как содержательная подсистема, составляющая основную ценность. "Know-how" базы знаний хорошей экспертной системы оценивается в сотни тысяч долларов, в то время как программный инструментарий - в тысячи или десятки тысяч долларов.
База знаний - это совокупность единиц знаний, которые представляют собой формализованное с помощью некоторого метода представления знаний отражение объектов проблемной области и их взаимосвязей, действий над объектами и, возможно, неопределенностей, с которыми эти действия осуществляются.
В качестве методов представления знаний чаще всего используются правила. Так, правила представляют собой конструкции:
Если < условие >
То <�заключение> CF (Фактор определенности) <�значение>
В качестве факторов определенности (CF), как правило, выступают либо условные вероятности байесовского подхода (от 0 до 1), либо коэффициенты уверенности нечеткой логики (от 0 до 100). Примеры правил имеют следующий вид:
Правило 1: Если Коэффициент рентабельности > 0.2
То Рентабельность = "удовл." CF 100
Правило 2: Если Задолженность = "нет" и Рентабельность = "удовл."
То Финансовое_сост. = "удовл." CF 80
Правило 3: Если Финансовое_сост. = "удовл." и Репутация="удовл."
То Надежность предприятия = "удовл." CF 90
Интеллектуальный интерфейс. Обмен данными между конечным пользователем и ЭС выполняет программа интеллектуального интерфейса, которая воспринимает сообщения пользователя и преобразует их в форму представления базы знаний и, наоборот, переводит внутреннее представление результата обработки в формат пользователя и выдает сообщение на требуемый носитель. Важнейшим требованием к организации диалога пользователя с ЭС является естественность, которая не означает буквально формулирование потребностей пользователя предложениями естественного языка, хотя это и не исключается в ряде случаев. Важно, чтобы последовательность решения задачи была гибкой, соответствовала представлениям пользователя и велась в профессиональных терминах.
Механизм вывода. Этот программный инструмент получает от интеллектуального интерфейса преобразованный во внутреннее представление запрос, формирует из базы знаний конкретный алгоритм решения задачи, выполняет алгоритм, а полученный результат предоставляется интеллектуальному интерфейсу для выдачи ответа на запрос пользователя.
В основе использования любого механизма вывода лежит процесс нахождения в соответствии с поставленной целью и описанием конкретной ситуации (исходных данных), относящихся к решению единиц знаний (правил, объектов, прецедентов и т.д.) и связыванию их при необходимости в цепочку рассуждений, приводящую к определенному результату. Для представления знаний в форме правил это может быть прямая или обратная цепочка рассуждений.
Механизм объяснения. В процессе или по результатам решения задачи пользователь может запросить объяснение или обоснование хода решения. С этой целью ЭС должна предоставить соответствующий механизм объяснения. Объяснительные способности ЭС определяются возможностью механизма вывода запоминать путь решения задачи. Тогда на вопросы пользователя "Как?" и "Почему?" получено решение или запрошены те или иные данные, система всегда может выдать цепочку рассуждений до требуемой контрольной точки, сопровождая выдачу объяснения заранее подготовленными комментариями. В случае отсутствия решения задач объяснение должно выдаваться пользователю автоматически. Полезно иметь возможность и гипотетического объяснения решения задачи, когда система отвечает на вопросы, что будет в том или ином случае.
Однако, не всегда пользователя может интересовать полный вывод решения, содержащий множество ненужных деталей. В этом случае система должна уметь выбирать из цепочки только ключевые моменты с учетом их важности и уровня знаний пользователя. Для этого в базе знаний необходимо поддерживать модель знаний и намерений пользователя. Если же пользователь продолжает не понимать полученный ответ, то система должна быть способна в диалоге на основе поддерживаемой модели проблемных знаний обучать пользователя тем или иным фрагментам знаний, т.е. раскрывать более подробно отдельные понятия и зависимости, если даже эти детали непосредственно в выводе не использовались.
Механизм приобретения знаний. База знаний отражает знания экспертов (специалистов) в данной проблемной области о действиях в различных ситуациях или процессах решения характерных задач. Выявлением подобных знаний и последующим их представлением в базе знаний занимаются специалисты, называемые инженерами знаний. Для ввода знаний в базу и их последующего обновления ЭС должна обладать механизмом приобретения знаний. В простейшем случае это интеллектуальный редактор, который позволяет вводить единицы знаний в базу и проводить их синтаксический и семантический контроль, например, на непротиворечивость; в более сложных случаях извлекать, знания путем специальных сценариев интервьюирования экспертов, или из вводимых примеров реальных ситуаций, как в случае индуктивного вывода, или из текстов, или из опыта работы самой интеллектуальной системы.
База данных (рабочая память) предназначена для хранения исходных и промежуточных данных решаемой в текущий момент задачи. Этот термин совпадает по названию, но не по смыслу с термином, используемым в информационно-поисковых системах (ИПС) и системах управления базами данных (СУБД) для обозначения всех данных (и в первую очередь не текущих, а долгосрочных), хранимых в системе.
Режимы работы ЭС
Экспертная система работает в двух режимах: приобретения знаний и решения задач (режим консультации или режим использования ЭС).
В режиме приобретения знании общение с ЭС осуществляет эксперт через посредничество инженера по знаниям. Эксперт описывает проблемную область в виде совокупности данных и правил. Данные определяют объекты, их характеристики и значения, существующие в области экспертизы. Правила определяют способы манипулирования данными, характерные для рассматриваемой проблемной области. Эксперт, используя компонент приобретения знаний, наполняет систему знаниями, которые позволяют ЭС в режиме решения самостоятельно (без эксперта) решать задачи из проблемной области.
Отметим, что режиму приобретения знаний при традиционном подходе к разработке программ соответствуют этапы алгоритмизации, программирования и отладки, выполняемые программистом. Таким образом, в отличие от традиционного подхода разработку программ осуществляет эксперт (с помощью ЭС), не владеющий программированием, а не программист.
В режиме консультации общение с ЭС осуществляет конечный пользователь, которого интересует результат и (или) способ получения решения.
После обработки данные поступают в РП. На основе входных данных из РП, общих данных о проблемной области и правил из БЗ решатель (интерпретатор) формирует решение задачи.
В отличие от традиционных программ ЭС в режиме решения задачи не только исполняет предписанную последовательность операций, но и предварительно формирует ее. Если ответ ЭС не понятен пользователю, то он может потребовать объяснения, как ответ получен. Для этого предназначена объяснительная компонента.
|