Метод вывода ограничений при построении графического интерфейса в системах управления технологическими процессами и производствами

Анализ использования графической информации. Изучение использования геометрических ограничений целостности для развития метафоры модели мира и методов прямого манипулирования объектами. Разработка графического редактора с выводом ограничений целостности.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 15.08.2020
Размер файла 20,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Метод вывода ограничений при построении графического интерфейса в системах управления технологическими процессами и производствами

информация графический редактор

Старший преподаватель Митин А.А., ассистент Иванов С.Д.,

канд. техн. наук Гордиенко А.П.

Орловский Государственный Технический Университет

Россия, г.Орел, тел.7+0862-40-96-14, 7+0862-76-19-10

Constraints provide a declarative means for specifying relationships that we wish to hold true. Interactive graphical applications give rise to varying kinds of constraints, and researchers have developed diverse constraint solving techniques. Several approaches have been proposed for inferring constraints from unfinished drawings. This paper proposes a new approach to inferring graphical constraints in graphical editors. In our approach, users modify objects interactively so that the objects have approximate geometric relations, and relevant constraints are automatically inferred by production rules.

В последние годы развитие вычислительной техники характеризуется резким повышением производительности вычислительных систем, скоростей ввода/вывода графической информации, созданием приложений, обладающих интерфейсом пользователя. Это привело к появлению большого количества систем, работающих с графической информацией, и росту интереса к методам их создания. Успех подобных систем во многом определяется интерфейсом пользователя - компонентами, обеспечивающими взаимодействие пользователя с системой. Пользователь, как правило, не обладает и не желает обладать специализированными знаниями и навыками, связанными с управлением сложными специализированными системами. В частности, одной из важнейших составляющих Scada-систем является специализированное программное обеспечение, ориентированное на обеспечение интерфейса между оператором и системой управления, а также коммуникацию с внешним миром. Функционально графические интерфейсы SCADA-систем очень похожи. В каждой из них существует графический объектно-ориентированный редактор с определенным набором функций. Используемая векторная графика дает возможность осуществлять широкий набор операций над выбранным объектом. Общение оператора с компьютером происходит через интуитивный объектно-ориентированный графический интерфейс. Он реализуется с помощью программ рисования (Draw) и просмотра (View). Программа рисования имеет средства работы с текстом, графикой, данными, анимацией и диаграммами. Имеется большой набор часто встречающихся объектов, помогающий ускорить создание экранных форм. Программа просмотра поддерживает работу оператора в реальном времени с созданными в программе элементами. В основе графического интерфейса лежит возможность построения различных связей между графическими объектами на экране монитора. При установлении связи информация о реальном состоянии производственных процессов из базы данных мгновенно отражается соответствующим объектом на экране, позволяя оператору отслеживать их состояние и при необходимости вносить коррективы /1/.

В настоящее время существует большое количество различных инструментальных средств, используемых для создания Scada-систем. Наиболее распространенными среди них являются: Intouch (США), Citect (Австралия), Fix (США), Genesis (США), Factory Link (США), Real Flex (США), Sitex (Великобритания), TraceMode (Россия).

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

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

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

Ограничения в графических системах впервые были рассмотрены более 30 лет назад. Одной из первых систем, использующих язык с ограничениями и объектно-ориентированный подход в интерактивной графике, является Sketchpad, разработанная Сазерлендом. Вслед за этой системой появился целый ряд систем, как развивающих те же идеи, так и разрабатывающих другие подходы. Среди них ThingLab, Juno, Peridot, Bertrand и другие. Опыт создания и применения графических систем с ограничениями показал эффективность и практичность таких систем.

Основополагающие концепции применения ограничений в графических системах были сформулированы в работах Б.А.Майерса, А.Борнинга, Р.Д.Хила, Б.Фридмана-Бенсона, Г.Нельсона, Нома, Р.Макданиела и других авторов /3,4,5/.

Однако вопросы, связанные с выводом ограничений целостности в графических редакторах интерактивных графических систем, еще не получили должного освещения.

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

Управление системой ограничений осуществляется механизмом удовлетворения ограничений - программой, рассматривающей множество заданных ограничений, определяющей пути их удовлетворения, выбирающей методы изменения данных и другие параметры, необходимые для удовлетворения всей системы ограничений.

Но задача вывода ограничений исходя из действий пользователя представляет также большой интерес.

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

Другой подход автоматизированного задания ограничений связан с использованием “гравитационных полей” /8/. Гравитационные поля - это области, связанные с действием некоторого ограничения. Попадая в такую область, объект автоматически вовлекается в соответствующее ограничение. Например, круг с центром в созданной ранее точке может представлять гравитационное поле ограничения эквивалентности. Если создаваемая точка попадает внутрь круга, то между точками устанавливается ограничение эквивалентности, т.е. они рассматриваются как совпадающие. Более сложная ситуация возникает, если пользователь создает объект в области пересечения нескольких гравитационных полей. В этом случае система использует ряд эмпирических правил, определяющих выбор ограничений. Некоторые системы динамически изменяют порядок применения правил, исходя из предыдущих действий пользователя.

В качестве механизма вывода ограничений в интерактивных графических системах нами используется подход, основанный на порождающих правилах . Сущность его состоит в следующем. Пусть задано порождающее правило в форме:

1$1 …m$m 1$1'…n $n'.

В нем 1$1 …m$m называют антецедентом (antecedent) правила, а 1$1'…n $n' - консеквентом (consequent) правила, по аналогии с условным выражением логики высказываний. Правило в форме XY говорит о том, что можно записать, сгенерировать или породить консеквент Y при заданном антецеденте X. Порождающие правила обычно реализуются в форме правил, манипулирующих с символическими структурами типа списка векторов. В результате алфавит канонической символьной системы заменяется словарем символов или атомов и простой грамматикой формирования символических структур. Словарь, как правило, состоит из трех подмножеств:

– подмножества N имен объектов предметной области;

– подмножества P имен свойств, которые рассматриваются в качестве атрибутов объектов;

– подмножества V допустимых значений атрибутов.

На практике подмножества N и V перекрываются. Используемая грамматика, как правило, имеет вид триад объект-атрибут-значение. Триада (v,,) существует, если vN, P и V.

Представленная синтаксическая форма обобщается в том случае, когда нужно для некоторого объекта v представить n вариантов пар атрибут-значение (1,1),…,(n,n). В таком случае они объединяются в вектор в форме (v,1,1…n,n).

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

Продукционная система (production system) состоит из множества правил (иногда этот набор правил называют продукционной памятью - production memory), интерпретатора правил, который решает, когда надлежит применить каждое из них, и рабочей памяти, содержащей данные, описание цели и промежуточные результаты, в совокупности определяющие текущее состояние проблемы /9/. Именно структуры данных в рабочей памяти анализируются и преобразуются порождающими правилами. Обращение к правилам синхронизируется текущими данными, а интерпретатор правил управляет выбором и активизацией правил в каждом цикле.

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

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

– деклараций (или шаблонов), которые определяют формат векторов в рабочей памяти;

– определений фактов, которыми задается начальное состояние проблемы;

– порождающих правил, которые определяют возможные трансформации состояния проблемы.

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

1. Сопоставить образцы в предпосылках правил и элементы данных в рабочей памяти.

2. Если окажется, что можно активизировать более одного правила, выбрать одно из них; этот шаг называется разрешением конфликта.

3. Применить выбранное правило. Результатом будет добавление нового элемента данных в рабочую память и/или удаление какого-либо существующего элемента из рабочей памяти. Затем перейти к шагу 1.

Обычно перед началом этого циклического процесса в рабочую память вводится элемент, соответствующий исходному состоянию проблемы. Процесс останавливается, если будет обнаружен цикл, в котором ни одно из правил не может быть активизировано, или если активизированное правило явно содержит команду прекращения работы. На шаге 2 система располагает набором пар, состоящих из правил и подстановок переменных, которые сформированы при сопоставлении образцов. Такие пары называются означиваниями (instantiations). Механизм разрешения конфликтов специфичен для каждой системы, т.е. для каждого интерпретатора правил. Можно, однако, сформулировать и такой набор правил, что в любой ситуации только одно из них будет удовлетворяться (он называется детерминированным). Но в экспертной системе, коей является система, основанная на продукционных правилах, используются недетерминированные наборы правил, поскольку в реальной жизни очень часто встречаются ситуации, которые позволяют использовать более одного правила.

Использование вывода геометрических ограничений целостности позволило сделать еще один шаг в развитии метафоры модели мира и методов прямого манипулирования объектами. Нами разработан графический редактор с выводом ограничений целостности. Он включает в себя набор графических примитивов для построения графического интерфейса, механизм удовлетворения ограничений целостности между графическими объектами, базу правил, на основании которой осуществляется вывод ограничений целостности, и средства их редактирования, а также интерпретатор правил, который служит для пользователя “интеллектуальным подсказчиком”, и позволяет в зависимости от действий пользователя, принять или отвергнуть выведенное ограничение между объектами.

Литература

1. Андреев Е.Б., Куцевич Н.А. Scada-системы: взгляд изнутри. Графический интерфейс Scada-систем. [Электронный ресурс].- Способ доступа: URL: http://www.scada.ru/publication/book/chapter1.html

2. Нильсон Н. Принципы искусственного интеллекта.- М.: Радио и связь, 1985. - 390 с.

3. Borning A., Freeman-Benson B.N. The OTI Constraint Solver: A Constraint Library for Constructing Interactive Graphical User Interfaces // Proc. Constraint Programming' 95. - Springer-Verlag LNCS, 1995. - Vol.910.

4. Gleicher M., Witkin A. Drawing with Constraints // The Visual Computer. -1994. - N.11(1) - P. 39-51.

5. McDaniel R. Myers B.A. Building Applications Using Only Demonstration // IUI'98 International Conference On Intelligent User Interfaces. - 1998. - P. 109 - 116.

6. Myers B.A. Creating User Interfaces By Demonstration. - Boston: Academic Press. - 1988.

7. Myers B.A. Creating Interaction Techniques by Demonstration // IEEE Computer Graphics and Applications . - 1987. - P. 51-60.

8. Borning A., Duisberg. Constraint-Based Tools for Building User Interfaces// ACM Transactions of Graphics, 1986. - Vol.5. - N.4. - P. 345-374

9. Питер Джексон “Введение в экспертные системы”. Пер. с англ.: Уч. Пособие. - М.: Издательский дом “Вильямс”, 2001. - 624 с.

Размещено на Allbest.ru

...

Подобные документы

  • Изучение теоретического материала, касающегося общих сведений о СУБД MySQL, синтаксиса, а также ее характеристик и возможностей. Формулировка и обоснование разных ограничений семантической и ссылочной целостности, реализуемых в информационных системах.

    курсовая работа [571,3 K], добавлен 21.10.2012

  • Анализ предметной области. Выработка требований и ограничений. Серверная часть информационной системы. Запросы клиентского приложения. Триггеры для поддержки сложных ограничений целостности в базе данных. Пользовательский интерфейс клиентского приложения.

    курсовая работа [2,6 M], добавлен 21.02.2016

  • Общая характеристика системы управления базами данных MySQL, ее основные особенности и возможности, касающиеся обеспечения целостности данных. Реализация ограничений семантической и ссылочной целостности в СУБД MySQL на примере фрагмента ИС "Салон магии".

    курсовая работа [981,0 K], добавлен 14.10.2012

  • Изучение особенностей растровых и векторных графических редакторов. Создание графического редактора: выбор языка программирования, разработка структуры программы и алгоритма работы. Описание интерфейса программы. Руководство программиста и пользователя.

    курсовая работа [1,3 M], добавлен 28.07.2013

  • Информационные задачи и круг пользователей системы. Выработка требований и ограничений. Разработка проекта базы данных. Программная реализация проекта базы данных. Разработка хранимых процедур для поддержки сложных ограничений целостности в базе данных.

    курсовая работа [706,2 K], добавлен 17.06.2012

  • Общая характеристика СУБД MySQL. Отличительные черты физической организации хранения и обработки данных, имеющимся в СУБД MySQL. Характер связи между таблицами. Реализация ограничений семантической и ссылочной целостности на примере "Салон магии".

    курсовая работа [965,5 K], добавлен 13.01.2013

  • Проектирование, концептуальное проектирование базы данных. Формулировка ограничений целостности. Физическое проектирование интерфейса. Генерация отчетов, программная реализация. Основные требования для обеспечения надежности системы управления данными.

    дипломная работа [41,6 K], добавлен 17.08.2010

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

    курсовая работа [2,1 M], добавлен 10.04.2011

  • Анализ предметной области. Определение функций пользователя, атрибутов, ключей, сущностей и связей. Проектирование инфологической модели данных. Спецификация входных и выходных запросов. Разработка процедур и средств реализации ограничений целостности.

    курсовая работа [7,2 M], добавлен 21.04.2015

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

    курсовая работа [2,8 M], добавлен 30.11.2011

  • Разработка графического интерфейса для ввода начальных значений, отображения результатов и тестирования методов собственного класса на языке программирования С++. Подсветка цветом выбранных операндов в процессе их инициализации и вывода на дисплей.

    курсовая работа [234,6 K], добавлен 27.12.2014

  • Изучение основных алгоритмов генерации различных видов фракталов. Выбор языка и среды программирования. Характеристика структурных элементов растрового графического редактора фракталов. Описание интерфейса приложения, порядок редактирования изображений.

    курсовая работа [1,2 M], добавлен 04.04.2014

  • Типы ограничений, поддерживающие целостность в реляционной модели данных. Определение значения поля первичного ключа с помощью генератора. Добавление, изменение и удаление записей в таблицу базы данных "Библиотека" на языке программирования SQL.

    лабораторная работа [30,5 K], добавлен 10.10.2012

  • Характеристика реляционной, иерархической и сетевой моделей баз данных. Анализ методов проектирования (декомпозиция, синтез, объектная связь), организации, обновления, восстановления, ограничений, поддержания целостности данных на примере СУБД Ms Access.

    дипломная работа [347,4 K], добавлен 13.02.2010

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

    лабораторная работа [77,2 K], добавлен 06.07.2009

  • Функционально-структурная организация персонального компьютера. Операционная система Windows. Функции стандартизации программы графического редактора Paint. Рисование геометрических объектов и оформление рисунков с помощью графического редактора Paint.

    курсовая работа [680,1 K], добавлен 03.12.2008

  • Роль распределенных вычислительных систем в решении современных задач. Инструментальная система DVM для разработки параллельных программ. Средства построения формальной модели графического интерфейса. Требования к графическому интерфейсу DVM-системы.

    курсовая работа [2,7 M], добавлен 15.10.2010

  • Выявление сущностей, их атрибутов и ключей. Построение ER-диаграммы. Заполнение предварительных отношений атрибутами. Задание частных ограничений целостности данных. Разработка сценария инсталляции клиентской программы. Руководство пользователя.

    дипломная работа [2,0 M], добавлен 15.11.2012

  • Последовательность выполнения оптимизации с помощью подходов: критерии различны по значимости; метод оптимума номинала и критерии равнозначны. Решение задачи симплекс-методом, построение таблиц. Уравнение равнозначности. Исходная система ограничений.

    контрольная работа [934,6 K], добавлен 23.01.2014

  • Выбор основных средств и методологии проектирования и СУБД. Построение инфологической модели предметной области. Выявление полного перечня ограничений целостности. Описание информационных потребностей пользователей и выбор способов их реализации.

    курсовая работа [2,9 M], добавлен 25.03.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.