Структура и функции системы баз знаний
⇐ ПредыдущаяСтр 2 из 2 Знания в БЗ можно разделить на алгоритмические и неалгоритмические. · алгоритмические (процедурные) знания - это алгоритмы (программы, процедуры), вычисляющие функции, выполняющие преобразования, решающие точно определенные конкретные задачи. Пример: любая библиотека программ. · неалгоритмические знания - состоит из объектов, называемых понятиями. Понятие обычно имеет имя, определение, структуру (составные элементы), связано с другими понятиями и входит в какую-то систему понятий. Другие неалгоритмические знания - это связи между понятиями или утверждения о свойствах понятий и связях между ними. На практике во многих экспертных системах и СБЗ содержимое базы знаний подразделяют на "факты" и "правила". Факты - элементарные единицы знания (простые утверждения о характеристиках объекта), правила служат для выражения связей, зависимостей между фактами и их комбинациями. Таким образом, классификацию знаний можно представить следующим образом: · понятия (математические и нематематические) · факты · правила, зависимости, законы, связи · алгоритмы и процедуры Прямое использование знаний из базы знаний для решения задач обеспечивается механизмом получения решений (inference engine - машина вывода) - процедурой поиска, планирования, решения. Механизм решения дает возможность извлекать из базы знаний ответы на вопросы, получать решения, формулируемые в терминах понятий, хранящихся в базе. Примеры запросов: · найти объект, удовлетворяющий заданному условию; · какие действия нужно выполнить в такой ситуации и т.д. Интерфейс - обеспечивает работу с базой знаний и механизмом получения решений на языке высокого уровня, приближенном к профессиональному языку специалистов в той прикладной области, к которой относится СБЗ.
Для создания СБЗ могут использоваться: 1. Традиционные языки программирования - C, Basic, Pascal, Lisp и др. Особо в этом ряду стоит выделит язык функционального программирования Lisp. Его основные свойства: данные представляются в виде списков, для получения решений используется рекурсия. 2. Языки представления знаний (такие как Prolog) - имеют специфические средства описания знаний и встроенный механизм поиска вывода. 3. Пустые оболочки экспертных систем - содержат реализации некоторого языка представления знаний и средства организации интерфейса пользователя. Позволяют практически полностью исключить обычное программирование при создании прикладной экспертной системы. Для иллюстрации приведем пример, заимствованный из книги К.Нейлора. Создадим экспертную систему, с помощью которой можно отличить птицу от самолета. В следующей таблице представлен массив FACTS (факты), который фактически является в нашем случае базой знаний. В нем перечислены некоторые характеристики объектов "птица" и "самолет", наличие данной характеристики и объекта отмечено цифрой 1, отсутствие - 0.
Сформируем теперь правило вывода. Для этого тем характеристикам, которые присущи обоим объектам, присвоим нулевые весовые коэффициенты. Характеристикам присущим только "птице" поставим в соответствие весовой коэффициент 1, присущим только объекту "самолет" -1. Массив RULES, содержащий правило вывода представлен в крайнем правом столбце таблицы. Тогда механизм получения решений будет иметь вид: Массив VALUES заполняется при опросе пользователя. Нетрудно убедиться, что при полном и правильном указании всех характеристик объектов механизм получения решений дает 2 для "птицы" и -2 для "самолета". При неполном указании характеристик объекта вывод о его принадлежности можно сделать на основании того, насколько близок полученный результат к одному из этих предельных значений.
Из этого примера видно, что необходимая таблица может храниться в реляционной или объектной БД и БЗ, представляют собой некий аналог обычных баз данных, но хотя и содержат информацию в виде таблиц, состоящих из записей с полями, но должны интерпретироваться СБЗ как утверждения о чем-либо, например "анальгин обладает болеутоляющим действием" или "зубная боль иногда сопровождается повышением температуры". Доступ к этой информации в СБЗ осуществляется не через команды поиска, а с помощью формулируемых на ограниченном естественном языке вопросов, например "может ли анальгин помочь при зубной боли?". Таким образом, хотя СБЗ может быть создана на основе реляционной или объектной СУБД, более производительно создавать СБЗ с помощью специализированных средств, располагающих особым языком представления знаний (ЯПЗ). Чаще всего интеллектуальные системы (ИС) применяются для решения сложных задач, где основная сложность решения связана с использованием слабо-формализованных знаний специалистов-экспертов и где логическая (или смысловая) обработка информации превалирует над вычислительной. Например, понимание естественного языка, поддержка принятия решения в сложных ситуациях, постановка диагноза и рекомендации по методам лечения, анализ визуальной информации, управление диспетчерскими пультами и др. Прикладные интеллектуальные системы используются в тысячах приложений. Годовой доход от продаж программных и аппаратных средств искусственного интеллекта еще в 1989 г. в США составлял 870 млн долларов, а в 1990 г. – 1,1 млрд долларов [Попов, 1996]. Однако главная проблема использования таких систем, на мой взгляд, лежит не столько в области их проектирования и разработки, а в области практического использования, т.к. за окончательное принятие решения, сгенерированного интеллектуальной системой, отвечает человек.
База знаний - семантическая модель, описывающая предметную область и позволяющая отвечать на такие вопросы из этой предметной области, ответы на которые в явном виде не присутствуют в базе. База знаний является основным компонентом интеллектуальных и экспертных систем. База данных - совокупность связанных данных, организованных по определенным правилам, предусматривающим общие принципы описания, хранения и манипулирования, независимая от прикладных программ. База данных является информационной моделью предметной области. Обращение к базам данных осуществляется с помощью системы управления базами данных (СУБД). База знаний - это база данных особого рода. При этом, база знаний является важным компонентом интеллектуальных систем, наиболее известный их класс — экспертные системы. Они предназначены для построения способа решения специализированных проблем, основываясь на записях баз знаний и на пользовательском описании ситуации [1]. В языке Пролог базы знаний описываются в форме конкретных фактов и правил логического вывода над базами данных и процедурами обработки информации, представляющих сведения и знания о людях, предметах, фактах событиях и процессах в логической форме. В ответах на простейшие запросы к базам знаний система логического программированияПролог выдает значения «истина» и «ложь» в зависимости от наличия соответствующих фактов. Обобщённые сведения в языке Пролог задаются с помощью правил логического вывода, выполняющих роль определения понятий, а также логических процедур, состоящих из наборов правил логического вывода. Достоверность обобщенных сведений зависит от наличия необходимых фактов и достоверности данных в базах знаний.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|