Language semantics of khowledge representation in the intellectual frame-based environment



Cite item

Full Text

Abstract

Production-frame-based environment of knowledge representation allows to construct intelligent system. The core of such system is a knowledge base using the frame structures as standard elements of knowledge representation. In the article a model of knowledge base of development system and semantics of knowledge representation are discussed and refined in accordance with the unified model of frame.

Full Text

Введение Качество и своевременность принятия решений в сложных ситуациях во многом определяются информационным окружением лица, принимающего решение. В [1 – 3] рассмотрена концепция построения интеллектуальной информационной компьютерной среды с фреймовой структурой знаний, которая позволяла бы создавать, развертывать и исполнять интеллектуальные приложения в различных предметных областях. Ядром такой среды является база знаний с использованием фреймовых структур как унифицированных элементов представления знаний. Несмотря на то, что фреймовая модель представления знаний предложена давно [4], до сих пор формализация процесса решения задач вызывает значительные трудности [5, 6]. В статье рассмотрена и уточнена в соответствии с унифицированной моделью фрейма модель базы знаний инструментальной системы и семантика языка представления знаний. Структура базы знаний системы Фреймы базы знаний могут быть подразделены на группы: – активные в логическом выводе результата, имеющие слоты с исполняемыми присоединенными процедурами (демонами и/или значениями слотов) Fa – поведение этих фреймов определяет логический вывод; – пассивные, не имеющие слотов с присоединенными процедурами Fр (они представляют фреймы-структуры, аналогичные таблицам, из которых только можно брать информацию в процессе вывода, но изменение значений слотов на время вывода запрещено). К активным фреймам относятся системные фреймы, например фрейм приложения и др., имеющие хотя бы одну присоединенную исполняемую процедуру. Общая схема решения задачи зависит от того, в какой форме ищется решение: 1) традиционно, в форме алгоритма по данным пассивных фреймов; 2) по образцу решения, наиболее близкого к образцу среди пассивных фреймов с использованием той или иной меры близости; 3) методом распространения возбуждения по сети фреймов, содержащих все возможные решения проблемы в группе конечных фреймов-результатов (экземпляров) по указанным экземплярам входных фреймов-параметров информационного запроса. В системе должен иметься исходный активный фрейм запроса стандартной структуры, содержащий слоты параметров запроса, а также слот результата. Следует различать базу знаний среды разработки – общую базу знаний, применимую для всех возможных приложений (справочная библиотека), и частную базу знаний (приложение), полностью определяющую состав и структуру частных фреймов-прототипов и экземпляров, специфичных для конкретного приложения. Фрейм конкретного приложения является в общем случае агрегацией фреймов, входящих в информационную базу (пассивных во время решения задачи и переходящих в активные при вводе (сборе) информации) и активных фреймов логического вывода (в частном случае – одного). Чаще всего приходится разделять фрейм-ситуацию «запрос» на частные фреймы достижения промежуточных результатов (агрегация фреймов-запросов). Полная база знаний К = Ксистемы + Кприложений, , где Кпi – частная база знаний i-го приложения. В состав базы знаний входят знания статические Ks (структуры фреймов, значения слотов на множестве типов T) и динамические Kd (системные методы и процедуры инструментальной системы, присоединенные процедуры и процедуры-демоны фреймов-приложений) , где индекс sys относится к инструментальной системе, индекс appi – к i-му приложению. Фреймы Фрейм как единица представления знаний отображает как статические, так и динамические знания, причем все множество фреймов F, эквивалентное знаниям К, представляется в виде F = Fsys + Fapp1 + Fapp2 + …. + FappN , где F appi – множество фреймов i-го приложения (множества могут пересекаться). Фрейм рассматривается как некоторый контейнер (пакет) знаний, имеющий имя (идентификатор, (II– полное множество идентификаторов фреймов и слотов) и содержащий как агрегацию набор слотов. Каждый слот является также носителем статических и динамических знаний в виде возможных значений, определенных на системе типов T, и набора присоединенных процедур из некоторого множества выражений E, λ-выражений; [6]. В частном случае λ-выражение может включать константы, в том числе имена присоединенных процедур, а также ссылки на другие слоты и значения NIL (неизвестно). Для формализации фреймовых структур будем (аналогично [6]) рассматривать функцию состояний w: I → F, отображающую множество идентификаторов в множество фреймов (эта функция фиксирует состав всей базы знаний на текущий момент); где W – множество возможных состояний. Обозначим через состояние информационной базы приложения, которое определяет часть фреймов приложения (системных и приложения), пассивных по отношению к логическому выводу, а через – состояние системы управления вывода (решателя) – набора активных фреймов. Каждый фрейм является функцией , отображающей множество идентификаторов слотов фрейма в множестве слотов S. Динамические знания представляются множествами демонов и присоединенных процедур и правил. Состояние информационной базы приложения на период вывода считается неизменным. Считаем, что фреймы включают слоты, задаваемые в общем случае кортежами , – значение слота; – значение слота по умолчанию; – упорядоченное множество присоединенных к слотам процедур-демонов поиска значений слота типа IF_NEEDED; – упорядоченное множество присоединенных к слоту процедур-демонов типа IF_CHANGED, обрабатывающих событие изменения значения слота; – упорядоченное множество ограничений на значения слота (набор правил или предикатов); α – флаг, используется в контексте вывода для управления выводом, булевского типа. Для доступа к значениям слота используем операцию разыменования: s.v, s.u; s.IF_NEEDEDi ; s. α и т. п. Считая идентификаторы фреймов уникальными во всей системе, а идентификаторы слотов – уникальными в пределах фрейма, в операции разыменования объекты f и s заменяем их соответствующими идентификаторами и в этом контексте можем считать, что запись f.s одновременно является идентификатором (адресом) слота s во фрейме f. В первоначальном состоянии (на нулевом шаге вывода) f.s.v = NIL для всех слотов всех фреймов подсистемы вывода, а также f.s.α = NIL. Операции присваивания значения слоту будем рассматривать как функцию, в общем случае осуществляющую изменение состояния: a) системы в целом; b) информационной базы в режиме только пополнения длительно хранимых знаний; c) только подсистемы вывода в процессе получения результата решения задачи при неизменном состоянии информационной базы. Система типов фреймовой среды Определим на множестве фреймов инструментальной среды систему типов. В данной системе при выполнении операций присваивания в вычислении выражения производится строгая проверка типов. Полагаем, что в нашем случае более слабые ограничения системы без типизации обязательно будут выполнены для систем со строгой типизацией. А именно: пусть система типов – τ = <T, Ө > , где T – множество типов, Ө – множество операций. Условия: 1. – решетка с отношениями порядка . 2. 3. 4. где - множество арифметический операций. Будем рассматривать следующие типы данных: 1. B = {true, false} – логический тип. 2. N – множество натуральных чисел, представимых в ЭВМ с разрядностью не менее 32. 3. D – множество действительных чисел, представимых в ЭВМ с разрядностью не менее 32. 4. P – множество строк в некотором алфавите A. 5. R – множество ссылок, R = R1 + R2, где R1 = I, R2 = <f, s>, 6. M = M1 + M2 – множество массивов одномерных и двумерных. 7. L – множество списков конечной длины из элементов одного типа T = {NIL} + B + N + D + S + R + M + L. Так как на всех рассматриваемых типах может быть введено отношение порядка , то при условии неизменности знаний о значениях по умолчанию ссылок по агрегациям и обобщениям, а также процедурных знаний отношение порядка может быть определено на множестве пространства состояний, и в частности на множестве . В дальнейшем, учитывая неизменность состояний информационной базы, в процессе логического вывода индекс «СА» для состояний будем опускать, считая, что рассуждения о смене состояний ведутся лишь для фреймов, участвующих в логическом выводе, для которых изменяются значения f.s.v и f.s.α, и если α – признак активности фрейма в логическом выводе, то при f.s.α = false слот s фрейма f не может изменить свое значение в процессе вывода, что должно быть проконтролировано в процедурах вывода. Фреймы-экземпляры являются конечными в иерархии и наследников не имеют [3]. Отсутствовать значение может только у системного фрейма самого верхнего уровня, и он только один. У остальных фреймов значение прямого родителя имеется обязательно и заполняется при создании нового частного фрейма-прототипа или фрейма-экземпляра. Поскольку наследование в системе является обязательным для всех фреймов, то при обращении к слоту за значением («чтение») и его отсутствием проверяется, нельзя ли определить это значение по цепочке «снизу вверх» обобщений (это может быть зафиксировано одним из предикатов , прикрепленных к данному слоту). Такая ситуация возможна в процедуре IF_NEEDEDi которая также наследуется от родителя [7]. Определим синтаксис множества выражений. Выражения, «продвигающие» шаги вывода, делятся, как и фреймы, на активные (содержащие операции присваивания, записи нового значения слота) и пассивные (информационные) вспомогательные, не содержащие операций изменения значений слотов и лишь подготавливающие промежуточные данные для вычисления выражений на последующих шагах вывода, однако демоны IF_NEEDED всегда активны, если не завершаются ошибкой, а демоны IF_CHANGED могут быть как активными, так и пассивными. Для выражения E = f.s определим следующую систему вычисления значений слота: Предполагается, что контекст разрешает активизировать только одну процедуру IF_NEEDED из множества (одновременный вызов двух процедур-оракулов считается конфликтом и должен исключаться предикатом или правилом с контекста). Значение f.s.v может быть установлено равным значению g.s.v соответствующего родительского фрейма, если это разрешено контекстом, при выполнении операции создания нового фрейма. Все процедуры-демоны и присоединенные процедуры и правила наследуются потомками, что учитывается при создании фрейма. Если контекст C отсутствует (C=NIL), то , но при этом используется первая по порядку (младшая) процедура . Процесс вычисления выражения может включать в себя вызов функции оракула (запроса к внешней среде с использованием некоторой текстовой команды – дескриптора dsc). Контекст определяет в том числе и семантику наследования при вычислениях. В принципе, часть этого контекста, выделенная в виде набора правил IF_USED, прикрепленных к фрейму f, в целом может определять условия использования значений слотов, демонов и присоединенных процедур, родительских фреймов. Будем рассматривать следующие операции для композиции выражений во множестве . 1. Подстановка константы из множества типов T. 2. Ссылка на слот . 3. Арифметическая операция E1 E2, . 4. ∙ ∙ Логическая операция E1 E2 или NOT E1. 5. Условная операция E0→ E1, E2 или E0→ E1. 6. ∙ Вызов функции-оракула (запросы значений путем обращения к внешней среде) A. где - множество логических операций. Арифметические и логические операции должны соответствовать множеству типов T и условиям строгой типизации выражений из IE (общие ограничения на множестве типов уже были рассмотрены). Константа соответственного типа может подставляться вместо переменной или выражения в целом независимо от состояния системы вывода. Условное выражение вычисляется по схеме Заключение Изложенный подход и нотация могут быть использованы в процессе разработки языка представления знаний и обоснования стратегий решения задач в интеллектуальной информационной среде с унифицированной фреймовой базой знаний.
×

About the authors

Artem I Belousov

S.P. Korolyov Samara State Aerospace University

Email: timone65@yandex.ru
Assistant 34, Moskovskoye sh., Samara, 443086

Valentin P Deriabkin

S.P. Korolyov Samara State Aerospace University

Email: deriabkin_v@mail.ru
(Ph.D. (Techn.)), Associate Professor 34, Moskovskoye sh., Samara, 443086

References

  1. Дерябкин В.П. База знаний системы синтеза и параметрической настройки проблемно-ориентированной информационной компьютерной среды // Перспективные информационные технологии в научных исследованиях, проектировании и обучении «ПИТ-2006», Т. 1. – Самара: СГАУ, 2006. – С. 65-69.
  2. Дерябкин В.П. Среда визуальной разработки интеллектуальных систем продукционно-фреймового типа // Математическое моделирование информационных процессов и систем в науке, технике и образовании. – Самара: СГАСУ, 2010. – С. 48-51.
  3. Дерябкин В.П., Белоусов А.И. Фреймовая база знаний информационной компьютерной среды // Перспективные информационные технологии для авиации и космоса (ПИТ-2010). Избранные труды Международной конференции с элементами научной школы для молодежи. – Самара: СГАУ, 2010. – С. 61-64.
  4. Minsky M. A Framework for Representing Knowledge / M.A. Minsky. – Cambridge: MIT Press, 1974.
  5. Джарратано Д. Экспертные системы: принципы разработки и программирования, 4-е изд. / Д. Джарратано, Г. Райли. – М.: ИД «Вильямс», 2007. – 1152 с.
  6. Сошников Д.В. Логический вывод на основе удаленного вызова и включения в системах с распределенной фреймовой иерархией / Д.В. Сошников // Под ред. В.Е. Зайцева. – М.: Вузовская книга, 2002. – 48 с.
  7. Белоусов А.И., Дерябкин В.П. Унифицированное представление знаний продукционно-фреймового типа // Стандартизация информационных технологий и интераперабельность СИТОП 2011. Пятая всероссийская конференция. – М.: МИРЭА, 2011. – С. 12-16.

Supplementary files

Supplementary Files
Action
1. JATS XML

Copyright (c) 2013 Samara State Technical University

Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies