Научная статья на тему 'Технология быстрой разработки баз данных и приложений пользователя в системе «Cobra++»'

Технология быстрой разработки баз данных и приложений пользователя в системе «Cobra++» Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
144
56
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Технология быстрой разработки баз данных и приложений пользователя в системе «Cobra++»»

множества воздействий над средой). Не расширяя формализм, добавим возможность использования методов иерархической абстракции машин, объединив подмножества состояний, в которых выполняются действия, и состояния вызова других машин, в единое множество действий. Состояние выбора естественным образом войдет в функцию переходов (функция T в исходном формализме).

По сути, исходная задача разбивается на подзадачи, для каждой из которых создается отдельный агент: AG={agi}, i = 1..k. Каждый из агентов работает со своим подмножеством состояний среды и набором действий над средой (результатом действия может стать передача управления другому агенту): S=S1xS2x...xSv; agi=<(Si 1x...xSi „), {ai i,...,aj i }, n>.

Приведем обобщенный алгоритм иерархического подкрепленного обучения.

1. Для текущего агента ag выбрать текущее действие at на основе предыстории текущего состояния st, например, методом вспомогательных суффиксов (Utile Suffix Memory, USM [9]):

at ^nag(st) .

2. Выполнить действие at. Если в результате действия произошла передача управления другому агенту, обозначить предыдущего агента как пассивно получающего выплаты.

3. Для текущего агента записать: результирующее наблюдение ot; полученную выплату rt. Если до предыдущего шага текущий агент получал выплаты пассивно, прибавить текущую выплату к накопленной сумме с учетом накопленного множителя скидки: rsum^rsum+Yt • rt.

Для всех агентов, обозначенных как пассивно получающие выплаты, при каждом переходе из состояния st-1 в состояние st с выплатой rt и скидкой у накапливается всякая выплата и обновляется множитель скидки: rsum^rsum+Yt • rt, Yt+i^Y • Yt.

4. Выполнить шаг обновления оценочной функции для текущего агента согласно методу USM. Перейти на шаг 1.

Таким образом, используется прежний формализм описания задач подкрепленного обучения с той лишь разницей, что в описании действий агентов возможно появление операторов переключения текущего агента. Такой механизм является более общим, чем в методе HAM, так как позволяет определять задачи высокого уровня как произвольную последовательность состояний, являющихся задачами более низкого уровня. В то же время, накопление выплат, которые даются агенту как вознаграждение за передачу управления другому агенту, производится аналогично тому, как это делается в методе HSM. Фактически описанный метод позволяет реализовать оба механизма иерархического подкрепленного обучения, обобщая их и делая более универсальным для применения в ИСППР.

Список литературы

1. Вагин В.Н., Еремеев А.П. Некоторые базовые принципы построения интеллектуальных систем поддержки принятия решений реального времени // Изв. РАН: Теория и система управления, 2001. - № 6. - С. 114-123.

2. Еремеев А.П., Тихонов Д.А., Шутова П.В. Поддержка принятия решений в условиях неопределенности на основе немарковской модели // Там же. 2003. - № 5. - С. 75-88.

3. Поспелов Д.А. Логико-лингвистические модели в системах управления. - М.: Энергоиздат, 1981.

4. Lin L-J. and Mitchell T. Memory approaches to reinforcement learning in non-Markovian domains. Technical Report CMU-CS-92-138, Carnegie Mellon University, 1992.

5. Hasinoff S. Reinforcement Learning for Problems with Hidden State, Technical Report, University of Toronto, Department of Computer Science, 2003.

6. Kaelbling L., Littman M. and A. Cassandra. Planning and acting in partially observable stochastic domains. Artificial Intelligence, 101, 1998.

7. Еремеев А.П., Подогов И.Ю. Методы подкрепленного обучения для систем поддержки принятия решений реального времени // Тр. междунар. науч.-технич. конф.- М.: Янус-К, 2006. - Т.3.

8. Parr R. and Russell S. Reinforcement learning with hierarchies of machines. In Advances in Neural Information Processing Systems 10, 1998. - р. 1043-1049.

9. Hernandez-Gardiol N. and Mahadevan S. Hierarchical memory-based reinforcement learning. In Advances in Neural Information Processing Systems 13, 2000.

10. McCallum R.A. (1995b). Instance-based utile distinctions for reinforcement learning with hidden state. In Proceedings of the Twelfth International Conference on Machine Learning, p. 387-395.

ТЕХНОЛОГИЯ БЫСТРОЙ РАЗРАБОТКИ БАЗ ДАННЫХ И ПРИЛОЖЕНИЙ ПОЛЬЗОВАТЕЛЯ В СИСТЕМЕ «COBRA++»

В.Н. Шведенко, д.т.н., Р.А. Набатов

(Костромской государственный технологический университет)

Существующая трехуровневая система проектирования баз данных по технологии ANSI/X3/ SPARC имеет два интерфейса между фазами концептуального, логического и физического проектирования. Это создает определенные трудности, особенно при развитии сложных проектов. Новые объектно-реляционные и объектно-ориентированные СУБД дополняются объектными свойствами, но, тем не менее, это не

в полной мере решает существующие проблемы. Сегодня лишь немногие промышленные объектно-ориентированные СУБД позволяют получать решения за более короткий срок, чем традиционные реляционные СУБД [1-3].

В статье предлагается новая технология разработки баз данных, позволяющая исключить два интерфейса в схеме проектирования баз данных. Реали-

зация описываемого подхода представлена в системе «Cobra++» компании ЗАО «Регул» (Свид. об офиц. регистр. программ для ЭВМ: № 2008610728, № 2008610758, № 2008610757, № 2008610729; -М.:- ФИПС. 2008).

Информационная модель объекта создается в результате проведения анализа объекта предметной области. Модель обладает рядом свойств, которые должны удовлетворять требованиям специалистов из отдельных подсистем предметной области. Причем для каждой функции информационная модель может иметь свой уровень детализации, то есть структуры данных обладают свойством ортогональности. Информационная модель в предлагаемой системе легко переводится в физические объекты хранилища данных в памяти ЭВМ. При этом достигается независимость от платформы, на которой строится информационная система. Информационная модель предназначена для унификации информационных ресурсов путем объединения структур, каждая из которых получена в результате обследования части объекта предметной области.

В системе предусмотрен длительный интервал транзакций обработки информации. Это особенно востребовано в условиях современного предприятия, где информационная среда крайне динамична. Моделирование и реализация долговременных интерактивных сеансов взаимодействия с базой данных в прикладной среде становится важной как с точки зрения соблюдения безопасности данных, так и с позиций обеспечения качественной информации для подготовки и принятия решений. Реализация традиционной модели транзакций в условиях долговременных сеансов приводит к длительным задержкам их отработки и большому объему внешней памяти, что с течением времени приводит к неэффективности работы приложений. Поэтому в работе для обеспечения долговременных транзакций применена временная (хронологическая) модель данных [4,5]. Долговременные транзакции ориентированы на обеспечение гибкости взаимодействия поставщиков информации. При этом соблюдается заранее определенный регламент взаимодействия поставщиков и потребителей информации. Цель выработки модели транзакции заключается в автоматическом поддержании согласованного состояния базы данных, когда одновременно выполняется множество операций чтения и записи информации.

Предлагается выделить два механизма обеспечения актуальности данных. Это синхронизация информации в распределенных базах данных и конвертирование фрагмента частной базы данных в хранилище данных. Синхронизация данных позволяет отслеживать момент изменения данных и корректировать информацию в масштабе заданного интервала времени. Конвертация данных дает возможность отмечать актуальность информации на текущий момент и при необходимости корректировать запросы в пользовательских приложениях.

Одним из элементов системы, обеспечивающим ее гибкость и адаптивность по отношению к изменениям, является механизм управления версиями информационных объектов. Это необходимо для под-

держания гибкости приложений и возможности оперативно дополнять информационные объекты новыми свойствами.

Схема предлагаемой технологии разработки информационной системы показана на рисунке.

Пользовательские приложения

Пользователи

Автоматизированная система визуального проектирования информационной системы

Построение структур информационных объектов

Проектирование приложений (форм, вычислений, запросов, бизнес-процессов и т.п.)

Автоматическая

генерация инвариантных структур

Генерация объектов информационной системы cobra++ и—,

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

Сервер базы данных системы «Cobra++» реализован на платформе СУБД Oracle. Универсальные пользовательские приложения и утилиты написаны под операционные системы семейства Windows.

Практическая реализация системы «Cobra» позволила в несколько раз уменьшить время настройки системы, сократить период адаптации информационной системы к изменениям в системе управления предприятием и уменьшить финансовые затраты на сопровождение.

Список литературы

1. Когаловский М.Р. Энциклопедия технологий баз данных. М.: Финансы и статистика, 2002. 800 с.

2. Саймон А.Р. Стратегические технологии баз данных: менеджмент на 2000 год: Пер. с англ. /Под ред. и с предисл. М.Р. Когаловского. - М.: Финансы и статистика, 1999. - 479 с.: ил.

3. Козловский А. Объектные СУБД: ситуация смены парадигмы // BYTE/Россия. 2000. №8. С. 16-28.

4. Roddick J.F., «SQL/SE - A Query Language Extension for Databases Supporting Schema Evolution», SIGMOD Record (September 1992), 10.

5. Шведенко В.Н. Временная модель данных на основе объектно-ориентированных технологий / В.Н. Шведенко, Д.А. Иванов. Кострома: КГТУ, 2003.- 90 с.

ПРИМЕНЕНИЕ МЕТОДОВ НЕЧЕТКОГО РЕГУЛИРОВАНИЯ В СОЕДИНЕНИИ ОНТОЛОГИЙ ПРЕДМЕТНОЙ ОБЛАСТИ

Л.В. Найханова, к.т.н. (Восточно-Сибирский государственный технологический университет, Бурятия, г. Улан-Удэ)

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

К настоящему времени разработано достаточно много систем, позволяющих в диалоговом режиме создавать онтологии. Однако этот процесс характеризуется высокой трудоемкостью. Поэтому знания о понятиях необходимо извлекать из полнотекстовых источников знаний автоматически. Ядром онтологии предметной области является терминосистема, для создания которой знания необходимо извлекать из терминологических словарей. Для автоматического построения номенклатуры [1], являющейся проекцией термино-системы на подобласти знаний, знания можно извлекать из научных и учебных изданий.

Построение онтологии предметной области выполняется на основе единого категориального аппарата, при этом вначале создается терминоси-стема, а затем номенклатуры.

Соединение номенклатуры и терминосистемы

Присоединение вновь создаваемой номенклатуры N8 к существующей терминосистеме Т8 той же предметной области выполняется в процессе представления нового термина. По каждому новому термину ^^еТегт1^ (где Тегт^ - множество терминов номенклатуры N8) должен выполняться поиск по образцу данного термина в тер-миносистеме Т8. Пусть имеем два образца т^ и

n8

тк , соответствующие имени термина в терминосистеме Т8 и номенклатуре N8:

.те (г г2 гз ^ ^ = (г1 г2 гз I

' 1Х11 Х12 Х13У ' 1Ук1 Ук2 Ук3У где г1 - имя термина; г2 - тип термина; г3 - вид

т«

сущности; ху - значение 11 для терминосистемы; ук, - значения для номенклатуры. Если соответст-

n8

вующие ху и уц| равны, то термину 1;к соответст-

ts ts ts

вует термин ti eTerm , где Term - множество

терминов терминосистемы TS.

Однако возможны случаи, когда в образце TkNS неизвестны значения y^ и/или yk3, так как в научном тексте информация о термине может быть неполной. Тогда, если xi1=yk1, будем считать, что

ns ts ts

термину tk соответствует термин ti eTerm . Если термин найден, то в соответствующую вершину семантической сети G или слота знака-фрейма F необходимо записать ссылку на термин ti s терминосистемы.

Кроме того, необходимо добавить записи в заголовки терминосистемы и номенклатуры. В общем виде заголовок терминосистемы и номенклатуры имеет одинаковую структуру: <Имя предметной области = <.. .>

<Присоединенная предметная область

<Уровень предметной области = верхний 1нижний> <Тип предметной области = терминосистема!

1область знаний 1задача!вид деятельности> <Имя присоединенной подобласти знаний = <имя> <Имя связывающего термина = <.. .>

>

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

Интенсионал термина типа «Понятие» определяется кортежем: Т=<1, Б, Рг, А, С, К, М>, где 1 - имя термина, заданное вектором Z=<z1,z2,z3>; Б - множество дефиниций термина; Рг - множество свойств термина; А - множество действий; С - кортеж, состоящий из множества синонимов и множества коррелятов термина; К - множество терминов, находящихся в квалитативных отношениях с термином 1; М - множество метазнаков.

Так как элементами вектора Т являются в основном множества, анализ будем проводить по У1^еТ, причем существенными будем считать множества Рг, К. Нельзя сказать, что множества С, М и А несущественны. Но, как правило, в научном тексте рассматриваются отдельные сторо-

>

i Надоели баннеры? Вы всегда можете отключить рекламу.