УДК 658.012
ТИПОВЫЕ ФРЕЙМЫ для представления проектов и их формализация С ПОМОЩЬЮ МОДИФИЦИРОВАННЫХ Х-КОНВЕРСИЙ Д.Г. Золотов, В.А. Сырцов, Б.В. Тарасов
Проведен анализ языковых средств представления проектов. Предложен набор типовых фреймов для представления проектов. Осуществлена их формализация на основе использования модифицированного варианта X-конверсий
Ключевые слова: проект, средства, фреймы
Введение. Применительно к современным проектам не применимо традиционное (все еще бытующее) их упрощенное понимание как совокупности документов (смет, чертежей, план-графиков и других документов), необходимых для создания какого-либо объекта. На смену ему пришло современное понимание проекта как завершенного цикла продуктивной деятельности коллектива, организации, предприятия или совместной деятельности многих организаций и предприятий, направленных на достижение определенной цели с учетом установленных требований к качеству результатов и возможным рамкам расхода ресурсов.
По своему компонентному составу, структуре и параметрам современные проекты есть сложные многоаспектные активные системы, обладающие признаками целостности, связанности, расчленимости и неадитивности, управлять которыми надо так, как управляют любыми другими сложными системами. Конечно, процесс управления проектами всегда уникален. Опыт, знания и элементы творческого подхода играют здесь решающую роль. Вместе с тем сколь бы талантливы не были исполнители проектов, необходимо использование моделей,
обеспечивающих интеллектуальную поддержку управленческих решений. В этой связи актуальной становится проблема выбора языковых средств, обеспечивающих построение таких моделей, адекватных сущности проектов.
Языковые средства представления проектов. Выбор языков описания проектов сталкивается с двумя противоречивыми требованиями. С одной стороны, требуется, чтобы такой язык содержал развитую систему формальных эквивалентных преобразований, обеспечивающую возможность определения
синтаксической и семантической правильности выражений и формального построения выводов. С другой стороны, такой язык должен позволять адекватно описывать позиции проекта во всем их многообразии, то есть обеспечивать некоторое отображение естественного языка на формальнологический язык.
Эта двойственность приводит к тому, что выбор того или иного варианта языка описания проектов является компромиссом между различными требованиями к его структуре. В настоящее время наибольший практический интерес представляют четыре группы языков, пригодных для описания проектов (рис.1), каждый из которых обладает своими достоинствами и недостатками.
Рис. 1. Классификация языков описания проектов
Дадим сравнительную характеристику
указанных языков. На рис. 2 приведена
диаграмма, отражающая результаты
качественного сравнительного анализа указанных языков описания проектов.
Золотов Дмитрий Геннадьевич - ВГАСУ,
соискатель, тел. (4732)76-40-07
Сырцов Владимир Александрович - ВГАСУ,
аспирант, тел. (4732)76-40-07
Тарасов Борис Васильевич - ВГАСУ, канд. техн.
наук, тел. (4732)76-40-07
Семантическая скла языка
Логиколингвистические модели проектов
Вербальные модели проектов
Рис. 2. Сравнительная характеристика языков описания проектов
На этой диаграмме языки представления знаний упорядочены по двум характеристикам, определяющим возможности их практического использования. Первая характеристика, названная семантической силой языка, отражает его описательные возможности, то есть возможности адекватного описания параметров проектов. Эта характеристика отложена на горизонтальной оси диаграммы. Ниже приведены упорядоченные по этой оси типы моделей проектов. Вторая характеристика, названная мощностью инструментальных средств языка, отражает его возможности по построению эффективных систем эквивалентных преобразований предложений языка, то есть аппарата, позволяющего (за конечное число шагов) однозначно определять синтаксическую и семантическую правильность предложений. Эта характеристика отложена на вертикальной оси диаграммы. Там же приведены примеры, математических средств и теорий, характеризующих мощность инструментальных средств анализируемых языков.
Кроме того, на диаграмме помимо анализируемых языков описания проектов приведены математические (алгебраические, теоретико-множественные и др.) и естественные языки, имеющие предельные значения указанных характеристик.
Требования наибольшей выразительности и наибольшей мощности инструментальных средств языка, используемого для описания проектов, являются противоречивыми. Так, классические языки математики, оперирующие с количественными (числовыми) категориями, при наибольшей развитости моделей формальных эквивалентных преобразований, имеют минимальную семантическую силу. Для логических (предикатных) языков в рамках исчисления предикатов первого порядка существуют достаточно мощные процедуры эквивалентных преобразований, самый известной из которых является процедура резолюции, используемая при построении систем искусственного интеллекта и экспертных систем.
1 - общие математические теории;
2 - теория формальных языков,
3 - теория математического
мод ел ир ования;
4 - реляционная алгебре;
5 - теории логико-пингеисшческого
мсдипфования нситуационного управления
Мощность инструментами
Мачематнческ ив Я1ЫКН
Логические языки
Реляционные Я)ы']
Фрсйфааыс і
•Естесг
Числовые
модели
проектов
Однако их описательные возможности существенно ограничены следующими обстоятельствами:
- в предикатных языках невозможно выразить многие квантификаторы естественного языка (например, «часто», «сильно», «почти всегда»), а так же модальности (в частности такие как «желательно», «необходимо») и императивы («иди», «сделай» и т. п.), присущие естественноязыковым текстам;
- набор текстов на естественном языке, для которых имеется полная аналогия с предикатным представлением, резко сужается из-за необходимости точного указания области действия предиката;
- количество различных предикатов, которые необходимо использовать для описания реальных проектов, весьма велико, что фактически уравнивает мощность этого множества с мощностью словаря естественного языка.
Из этого следует, что предикатные языки из-за «жесткой» семантики не обладают достаточными описательными возможностями для передачи всех оттенков и тонкостей смысла естественного языка. Вместе с тем мощность процедур эквивалентных преобразований обусловливает их широкое применение в профессионально ориентированных моделях проектов, входной язык которых является небольшим подмножеством естественного языка.
С другой стороны, лишь узкое подмножество реляционных и фреймовых языков, позволяют строить эффективные процедуры эквивалентных преобразований на базе аппарата реляционной алгебры. Речь идет, прежде всего, о языке семантических сетей. Для остальных языков этого типа построение указанных процедур является либо неразрешимой, либо еще не решенной проблемой. Частично эта проблема находит свое решение в разработке языков программирования, интерпретирующих фреймовые языки. Но, в тоже время, реляционные и фреймовые языки обладают существенно более высокими (по сравнению с предикатными языками)
описательными возможностями, определяемыми, прежде всего наличием эффективных процедур обобщения описаний и возможностью построения иерархически организованных систем знаний. Именно последнее обстоятельство приближает их к естественному языку и определяет все более широкое их применение при описании проектов. Следует ожидать, что такая тенденция в перспективе будет не только сохраняться, но и возрастать.
С учетом сказанного, можно заключить, что адекватное описание проектов возможно только при использовании всей палитры перечисленных языковых средств сообразно их семантической силе и мощности инструментальных средств, а общая структура модельного описания проектов данного типа может быть представлена в виде схемы рис.3.
Общее (системное) описание и представление проектов
Идентификация проектов: определение входных переменных, констант, показателей эффективности и т.п.
Сравнение, выбор и координация проектов как целостных символьных систем
Оценка и оптимизация отдельных параметров проектов
Рис. 3. Общая структура модельного описания проектов
На этой же схеме показаны операции, которые выполняются с использованием того или иного класса моделей.
Типовые фреймы для представления проектов и их формализация. Переход от естественно-языкового описания проекта к фреймовому описанию является первым шагом на пути формализации проектов. Как известно [1], в ролевых фреймовых описаниях понятия определяются совокупностью семантических (смысловых) ролей, которые выражают их сущность, и формально задаются строкой:
< 1; р1 р2^ • ^ Pm, Рт+Ъ Рт+2,‘• ^ Рп > , (1)
где 1 - имя понятия,
Рь р2,- • •, Рт - обязательные роли, а Рт+ъ Рш+2, - • •, Рп - необязательные роли.
Множество необязательных ролей может быть пустым.
Рассмотрим в качестве примера ролевый фрейм, описывающий понятие «управление»:
<управление; субъект управления, задачи подчиненным, порядок их взаимодействия, мероприятия по обеспечению, мероприятия по организации управления). Указанные роли в свою очередь, являются сложными понятиями, представляемыми фреймами следующего уровня. Так, например, понятие «задача подчиненным» представляется следующим фреймом: <задачи подчиненным; цель, время действия, объект воздействия, место действия, способ действия, необходимый ресурс).
Таким образом, ролями в каждом фрейме выступают другие фреймы, называемые слотами, что позволяет конструировать иерархические фреймовые описания рекурсивного вида:
< 1; Р1« 1;р\< 1;р21< ...рМ1> ...>),..., Рк « 1;рьк< 1;р2к< -Л ...> )>.
(2)
Основное достоинство такого
представления проектов заключается в том, что с помощью фреймов можно описывать проекты произвольной сложности и достаточно адекватно отображать семантику моделируемых предметных областей. Кроме того, представление проектов в виде фреймов подразумевает довольно полную и строгую их формализацию. Вместе с тем весьма трудно
(даже для заранее известной предметной области) выделить сами фреймы. Какими по форме и структуре они должны быть? Сколько их нужно для адекватного описания того или иного проекта? Как фреймы должны связываться друг с другом и передаются ли их свойства при сцеплении в сеть? Эти и другие вопросы пока не нашли исчерпывающих ответов и решаются на основе опыта разработчиков проектов.
Для компьютерного представления
фреймов используются различные
алгоритмические и программные средства: рекурсивные функции, ККЬ и РКЬ-языки, нормальные алгорифмы Маркова, Х-конверсии, язык универсального семантического кода (УСК) и другие [4]. Среди перечисленных средств несомненными преимуществами обладают Х-конверсии [3].
Во-первых, они чрезвычайно просты для понимания конечным пользователем и носят наиболее универсальный характер в смысле возможностей описания предметной области.
Во-вторых, Х-конверсии имеют достаточно простую и в тоже время эффективную систему формальных эквивалентных преобразований,
имеющую всего четыре правила, главное из которых - подстановка.
В-третьих, Х-конверсии допускают прямую интерпретацию с помощью компьютерных языков высокого уровня (во всяком случае для этого не требуется построение специальных трансляторов, как это необходимо, например при использовании КИЬ и РКЬ-языков).
В-четвертых, фреймовые описания на основе Х-конверсий позволяют перейти к представлению предметных знаний в виде терминальных семантических сетей, что открывает новые, более широкие возможности представления знаний в ИКС (поскольку мощность формальных эквивалентных преобразований в семантических сетях много больше, чем мощность аналогичных преобразований Х-конверсий).
Рассмотрим представление ролевых фреймов с помощью расширенной модификации Х-конверсий. Расширения достигаются за счет введения дополнительных постулатов [4]: а: (Хф. (Хх.ф)) у 1тс Хх. у; (3)
а*: Хх. Б 1тс ХВ. [В/х] Б, (4)
где Х - оператор функциональной абстракции;
1тс - отношение непосредственной
конвертируемости; ф, у - предикатные или функциональные символы одного сорта;
В, Б - правильно построенные формулы языка;
х - переменная.
Использование постулата а позволяет распространить понятие слота не только на переменные, но и на предикатные и
функциональные символы. Это предоставляет возможность декларировать в рамках одного Х-
выражения необходимое количество фреймов при совпадении их с точностью до аргументных мест и сортов у замещаемых предикатных или
функциональных символов. Постулат а*
допускает вложение Х-выражений друг в друга без ограничений глубины вложения, что
позволяет адекватно описывать многослойные структуры.
При конструировании Х-выражений будем исходить из того, что при описании проектов должны быть представлены знания о следующих сущностях: иерархических объектах различной природы и процессах в них протекающих; законах функционирования элементов (подсистем и систем) объектов на всех стратах их представления; взаимосвязях и взаимодействиях элементов (подсистем и систем) объектов на всех стратах их представления; особенностях управления объектами и содержании эксплуатационно-технической документации, необходимой для управления проектом;
средствах поддержания и ведения диалога с оператором на языке, ограниченном
профессиональной лексикой.
Тогда, минимально необходимый набор типовых фреймов должен включать: фрейм-
состав; фрейм-соединение; фрейм-назначение: фрейм-параметры и фрейм-функция.
Фрейм-состав (FC) предназначен для
представления знаний о предметной структуре
объектов проектирования на различных уровнях их детализации. Им отражается ситуация: «объект х содержит объекты yb y2,..., yn, которые имеются в объекте х в количествах ci, c2,..., cn, соответственно». Такой фрейм описывается вложенным Х-выражением следующего вида:
Fc = (...(Хх: Dx, yi:Db..„ yn: Dn. CONTAIN « ch, x>,
< v, yi>,..., < v, yn>)) Х: yi: Di, ciDi*.
QUANTITY « ch, yi>, < v, ci>))...ХупЛш cnDn*. QUANTITY (< ch, yn>, < v, yn>)) conv (5)
Хх: Dx. CONTAIN (< ch, x>, < v, Ху1: Di, ci: Di* QUANTITY ((ch, yi>, < v, ci>)>,..., < v, Хуп: Dn, cn: Dn*.
QUANTITY ((ch, yn>, < v, О )>),
где запись вида x:Dx (и аналогичные) означает,
что переменная х имеет сорт Dx. Через ch и v
обозначены падежные отношения
(«характеристика» и «значение характеристики,
соответственно).
Фрейм-соединение (FS) предназначен для отображения различных типов соединений в проектируемых системах. Графический образец такого фрейма показан на рис. 4. Он отображает ситуацию «субъект x соединяет объект у с объектом z» и описывается Х-выражением вида: FS= Х {x: Dx, y: Dy, z: Dz. CONNECT (< s, x>, < o, y>, < o, z>)}, (6)
где s и o - падежные отношения, соответственно «кого соединяют» (то, что производит действие) и «с кем соединяют» (то, над чем совершается
действие), Б - имя или сорт объекта (субъекта). Нетрудно заметить, что фреймы типа (6) легко вкладываются друг в друга, что позволяет использовать их для описания иерархических структур в системах различного назначения.
Рис. 4. Образец фрейма-соединения
Фрейм-назначение (FN) служит для
представления знаний о предназначении объектов через их функции и описывается Х-выражением вида:
fn = XR: ^, x: Dx y: DY, w: Dw, z: Dz. R(< s, x>, < o, y>, < u, w>, < d, z>), (7)
где u и d - падежные отношения, соответственно «быть входом», «быть выходом».
Пример использования (7)
проиллюстрируем записью следующего
выражения: объект (К) преобразует сообщение (С) из формы (ИС) в форму (ПС). Этому выражению соответствует следующая нормальная форма Х-выражения:
TRANSFER (< s, КС>, < о, С>, < u, ИС>, < d, ПС>), (8)
которая получается при подстановке предикатного символа и индивидных констант соответствующих сортов в (7), то есть ((((^R: DR, x: Dx, y: Dy, w: Dw, z: Dz. R(< s, x>, < o, y>, < u, w>,
< d, z>) TRANSFER) КС) С) ИС) ПС) conv TRANSFER (< s, КС>, < о, С>, < u, ИС>, < d, ПС>).
Фрейм-параметры (FP) предназначен для представления знаний о значениях параметров какого-либо объекта в дискретные моменты времени. Х-выражение для этого вида фреймов аналогично (7) с добавлением падежного отношения «быть моментом времени».
Фрейм-функция (Ff) описывает порядок расчета параметров р1 некоторого объекта при заданной функции p1(t) = f [(a, a2, ... ,aN), t], где aj
- аргументы, к которым применяется функция, t -текущее время. Обобщенное Х-выражение для фреймов этого типа имеет вид:
Ff = Х{р: Dp, t: Dt, f: Df, ai:Db..., aN: DN. CALCULATE (< res, p>, < t, t>) = (9)
= (< vf, f>) (< argi ai>,., < argN aN>)}, где res - результат применения функции, arg -аргумент, vf - падежное отношение «вид функции», т - падежное отношение «быть
моментом времени», а запись х: Бх означает, как и ранее, что переменная х имеет имя или сорт Бх.
При наличии стандартных вычислительных процедур использование выражения (9) позволяет задать алгоритм вычисления сложной составной функции произвольного вида.
Представленные выше фреймовые описания обладают двумя очевидными недостатками. Во-первых, в них присутствует дублирование однотипной информации, что приводит при большем объеме данных к нерациональному расходу памяти. Поэтому в практических моделях, использующих фреймовые описания, применяется принцип наследования свойств. Суть его состоит в упорядочении рекурсии (2) с помощью древовидного графа зависимостей, в котором узлы соответствуют фреймам, а путь от корней к вершине указывает на порядок рекурсии. При этом вся информация, записанная во фреймах, лежащих на пути от корневой вершины до данной, автоматически переносится и в данную вершину. Во-вторых, фреймовые описания (в какой бы форме они не отображались) не обладают развитым аппаратом формальных эквивалентных преобразований. Устранение этого недостатка возможно путем перехода от фреймовых описаний к представлению знаний семантическим сетями.
Вместе с тем в относительно простых ситуациях фреймовые описания позволяют построить логические конструкции,
обеспечивающие вывод новых знаний. В настоящее время для этого широко используется метод продукций [4], с использованием, как правило, связок импликативного вида: а ^ р. Представляется, что при описании проектов целесообразно воспользоваться понятием дедуктивной секвенции [3].
Определение. Дедуктивной секвенцией называется выражение:
О,
Оп
^Ai ^....
(n,m > 0)
(10)
где в! и Д - антецеденты и сукцеденты секвенции соответственно, представляющие собой конечные последовательности правильно построенных формул.
Выражение (10) понимается следующим образом:
- п = 0, т = 0, то есть 0 с= Б ^ 0 как «имеется противоречие»;
- п = 0, т Ф 0, то есть 0 ^ (Дь & Д2 &•& Дт)
как «имеет место Дь & Д2 &•& Дт;
- п Ф 0, т = 0, то есть (вь & в2 &•& вп) ^ 0
как «вь & в2 &...& вп приводят к
противоречию»;
- п ф0, т Ф 0, то есть (вь & в2 &•& вп) ^ (Дь
& Д2 &...& Дт) как «если & в2 &...& вп, то имеет место Дь & Д2 &•& Дт».
Из приведенных записей видно, что использование в качестве продукций дедуктивных секвенций вида (10) позволяет строить секвенциальные деревья для описания тех ситуативных знаний о проекте, которые в явном виде не содержались в его исходном описании.
Литература
1. Minsky M. A. Framework for Representing Knowledge, in The Psychology of Computer Vision, P.H. Winston (ed.), McGraw-Hill, i975.
2. Яцук В.Я. Логико-алгебраический язык с
привлечением Х-конверсий для представления знаний в сложных технических системах. - В кн.:
Интеллектуальные банки данных, i982.
3. Яцук В.Я. Использование Х-фреймов и метода продукций при построении интеллектуальных систем принятия решений. В кн.: Материалы международного симпозиума по искусственному интеллекту. - Л., i982.
4. Уэно Х., Исидзука М. Представление и использование знаний / Пер. с англ. - М.: Наука, i989.-228 с.
F
Воронежский государственный архитектурно-строительный университет
TYPICAL FRAMES FOR REPRESENTATION OF PROJECTS AND THEIR FORMALIZATION WITH THE HELP OF THE MODIFIED X-CONVERSION
D.G. Zolotov, V.A. Syrtsov, B.V. Tarasov
The analysis of language means of representation of projects is lead. The set of typical frames for representation of projects is offered. Their formalization is carried out on the basis of use of the modified variant of X-conversion
Keywords: the project, means, frames