выходе может быть получен как линейная комбинация сигналов на входе, сгенерированных для каждого из них в отдельности. Поэтому достаточно рассмотреть случай единичного скачка на выходе одного из каналов. Это соответствует граничному условию Uj(/,®) = 1, U2(l,ю) = 0.
Введя в (7) обозначения
X
Ли(х) = jraj^1,э(4 ) ;
о
a12 (x) = S12 (x) • exp(- Q12 (x) - Л12 (x)), получим матричное соотношение между входом (x=0) и выходом (х=/ ):
(Ui (0) 'j f-ai (0) a2 (0)Y- ai (l) a2 (l)V1 (Ui (l) 'j
IU2(0)J { ai(0) a2(0)){ ai(l) a2(l)J [U2(l)J '
Учитывая, что a12(0) = S12(0), получлем выражение для комплексных амплитуд напряжений, которые следует сгенерировать:
U1,2 - +
Si(0)
2Si(l)
exp(Qi(l) + Ai(l)) +
+ ^SS(°)exp(Q2(l) + Л 2 (l))
2S2(l)
(8)
Здесь знак « - » в первом слагаемом соответствует Ui, а «+» - U2 , Л12 определяет «опережение», т.е. время,
предшествующее моменту t0 = 0, когда на выходе канала появится единичный импульс. Физический смысл формулы (8) состоит в следующем: на вход обеих цепей в момент времени ti = -Ai (l) подаются противоположные по знаку скачки напряжений величиной Si (0) / (2Si(l)). Пусть далее в момент t2 = -Л 2 (l) подаются скачки одного знака и величины S2 (0) / (2S2 (l)). Тогда в момент t0 = 0 на выходе
УДК 68 i.5
КРИТЕРИЙ УПРАВЛЯЕМОСТИ СИСТЕМ НА ОСНОВЕ СЕТЕЙ ПЕТРИ
КАЧУР С.А.
Рассматривается управляемость систем, описанных сетями Петри, в общем случае и для конкретного расширения сетей Петри. Разрабатывается критерий управляемости в терминах сетей Петри.
1. Введение
Прежде чем синтезировать алгоритмы оценивания, управления и адаптации, целесообразно рассмотреть возможности осуществления этих процессов для за-
первой цепи получаем единичный скачок напряжения Ui = i(t), на выходе второй - напряжение U2 = 0 .
Заключение
Научная новизна работы состоит в определении ограничений на точность формирования характеристик обрабатывающих смесь импульсов. Задача о нахождении оптимальных параметров импульсов до сих пор не рассматривалась. Зависимость качества смесей и эффективности их обработки от этих параметров не изучалась. Оптимальные параметры импульсов могут быть определены только посредством специальным образом спланированного эксперимента. В работе определены границы достижимой точности такого эксперимента. В этом заключается практическая ценность работы.
Литература: 1.Хаяси С. Волны в линиях электропередачи. М.: Госэнергоиздат, i960. 343 с. 2. Васильев С.Н. Проверка применимости метода малого параметра для описания неоднородных многомодовых каналов передачи данных //Радиоэлектроника и информатика. 2005. Вып. 4. 3. Ди-карев В.А. Волны в многомодовых системах с распределенными параметрами //Радиотехника и электроника, Изд-во АН СССР, 1975. Т.ХХ. Вып i2. С. 26i8-262i 4. ФремкеА.В. Телеизмерения. М.: Высшая школа, 1975. 243 с. 5. Зюко А.Г. Элементы теории передачи информации. Киев: Техника, 1969. 298с.
Поступила в редколлегию 03.04.2006
Рецензент: д-р физ.-мат наук, проф. Дикарев В.А.
Васильев Сергей Николаевич, зам.главного инженера Государственного предприятия «Харьковский приборостроительный завод им. Т.Г. Шевченко». Научные интересы : моделирование и управление в технических системах. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 23-01-81.
Гора Николай Николаевич, генеральный директор Государственного предприятия «Харьковский приборостроительный завод им. Т.Г. Шевченко». Научные интересы: моделирование и управление в технических системах. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 23-01-81.
данного объекта или системы. Эти возможности в значительной степени выявляются при изучении таких свойств системы, как наблюдаемость, идентифицируемость, управляемость и адаптируемость.
Цель исследования - анализ управляемости систем, описанных сетями Петри (СП) [ 1 ], определение критерия упр авляемости.
Актуальность исследования. Понятие управляемости систем связано с переходом системы посредством управления из одного состояния в другое. Будем рассматривать структурно-качественную сторону управляемости системы, т. е. возможность ее перехода из заданного множества состояний в другое множество состояний за конечное время [1].
РИ, 2006, № 2
47
Методы исследования во многом зависят от выбора модели системы. В настоящее время в связи с изменением, повышением степени интеграции и сложности элементной базы систем автоматического управления возникает про блема описания динамика системы в условиях неопределенности. Это обуславливает необходимость разработки новых моделей, позволяющих описывать недетерминированную динамику поведения с локальными связями между параллельными процессами. Для анализа и синтеза современных систем управления с переменной случайной структурой общего класса разработка подобных моделей актуальна в настоящее время. И как следствие этого -актуальность изучения свойств систем, описанных новыми моделями.
Одной из таких моделей является предложенная в статье [2] модель соединения стохастических систем переменной структуры на базе СП.
2. Постановка проблемы
Для системы, описанной расширением СП, предложенным в работе [2], структурный подход к анализу управляемости сводится к анализу СП, в частности, ее свойств: достижимости и активности. Состояние системы в этом случае определяется маркировкой СП и значениями параметров системы, удовлетворяющих заданным ограничениям.
Задачи достижимости и активности эквивалентны. Для того чтобы показать разрешимость задачи, необходимо свести задачу для СП к задаче с известным решением, а для того, чтобы показать неразрешимость, нужно свести задачу, которая известна как неразрешимая, к задаче для СП [3].
Необходимо показать, что для системы, представленной моделью на базе СП, существует критерий управляемости, аналогичный критерию управляемости по Калману [3].
Решение поставленной задачи предлагается провести с использованием двух теорем.
3. Критерий управляемости в терминах СП
Теорема 1. Степень управляемости системы, описанной сетью Петри, определяется активностью этой сети.
Теорема 2. Система, описанная расширением СП [2], обладает степенью управляемости, равной четырем.
Доказательство теоремы 1. Существуют следующие, связанные с активностью понятия, которые можно разбить на категории по уровню активности и определить для СП с маркировкой следующим образом [3]:
Уровень 0. Переход tj обладает активностью уровня 0, если он никогда не может быть запущен.
Уровень 1. Переход tj обладает активностью уровня 1, если он потенциально запустим, т.е. существует такая
маркировка /и1 є R(C, /и), что он разрешен в jj (R(C, д) - множество достижимости сети Петри с маркировкой М).
Уровень 2. Переход tj обладает активностью уровня 2, если для всякого целого n существует последовательность запусков, в которой tj присутствует по крайней мере n раз.
Уровень 3. Переход tj обладает активностью уровня 3, если существует бесконечная последовательность запусков, в которой tj присутствует неограниченно часто.
Уровень 4. Переход tj обладает активностью уровня 4, если для всякой ц! є R(C,^) существует такая последовательность запусков ст , что tj разрешен в S(^ ,а) (S - функция следующего состояния СП).
Переход, обладающий активностью уровня 0, называется пассивным. Переход, обладающий активностью уровня 4, называется активным. Сеть Петри обладает активностью уровня i, если каждый ее переход обладает активностью уровня i.
Поскольку состояние системы описывается состоянием СП, т.е. параметрами СП в заданной интерпретации и ее маркировкой, то можно говорить об эквивалентности множества достижимости R(C,^) конечному множеству состояний системы.
Если для маркировки СП ju при управляющем воздействии u и внешних воздействиях X вх существует последовательность маркировок а , то такая СП является управляемой. Последовательность маркированных СП (Cs) можно рассматривать как операторфункцию Xвых = F(CS,Xвх,щст).
Если СП является управляемой, то всегда можно найти такую последовательность маркировок, при которых реализуемая СП функция при заданных входных воздействиях за конечное время переведет систему в состояние Xвых с малой погрешностью є .
На малом интервале времени At любую систему можно рассматривать как линейную. Следовательно, можно подобрать оператор-функцию F на интервале At так, чтобы была описана зависимость X = Ax + Bu, где х -n-мерный вектор фазовых координат; и - г-мерный вектор управляющих воздействий; А и В - матрицы размерностью (n х n) и (n х г) соответственно.
Следовательно, на интервале времени At можно свести задачу управляемости системы, описанной СП, к задаче управляемости линейной стационарной системы. В данном случае матрицы А и В определяются маркировкой СП.
Критерий полной управляемости системы будет формулироваться следующим образом: необходимым и достаточным условием полной управляемости является четвертый уровень активности СП.
Теорема 1 доказана.
48
РИ, 2006, № 2
Доказательство теоремы 2. В модели стохастической системы, описываемой расширением СП [2], маркер интерпретируется как вектор электрических сигналов. Следовательно, данное расширение СП свободно от конфликтов без ограничения на параллельность вычислений. Каждый переход имеет только одну выходную позицию (аналог шины данных), которая может быть входной для нескольких переходов. Кроме того, в СП [1] отсутствуют петли, и она является однородной.
Таким образом, по своей структуре (но не по мощности моделирования) СП[2] может быть сопоставима с маркированными графами. Маркированные графы хорошо изучены и показаны их хорошие свойства с точки зрения разрешимости [3]. Задача достижимости для данного класса СП решена.
Введение сдерживающей событийной гипердуги [2] при принятой интерпретации маркера не влияет на разрешающую способность сети. Для срабатывания перехода в рассматриваемой СП необходимо наличие маркера хотя бы в одной позиции, связанной разрешенной дугой [2] с рассматриваемым переходом, в отличие от обычных СП, для которых требуется наличие маркеров во всех входных позициях перехода с учетом кратности дуг. Это улучшает разрешимость данной задачи.
Исходя из сказанного выше, можно сделать вывод, что при достаточном числе запусков (поскольку СП [2] является стохастической) и наличии управляющих воздействий, задающих пар аметры системы (значения переменных в условиях, сопоставленных переходам, так как СП является функциональной) и модифицирующих ее структуру, рассматриваемая СП обладает четвертым уровнем активности. Следовательно, по теореме 1 система, описанная данной СП, обладает степенью управляемости, равной четырем.
Теорема 2 доказана.
4. Заключение
Научная новизна определяется возможностью проводить анализ управляемости систем в терминах СП и в частном случае для расширения СП [2] на основе предложенного критерия управляемости.
Практическая значимость состоит в снижении размерности задачи анализа управляемости благодаря возможностям математического аппарата СП.
Выводы. Моделирующие возможности математического аппарата СП позволяют описывать широкий круг сложных систем управления. Поэтому вопросы дальнейшего исследования моделей на базе СП являются актуальными с точки зрения как теории, так и практики. В качестве примера может быть приведена модель нейронной системы на базе СП [4], которую можно рассматривать как описание адаптивной оптимальной системы автоматического управления, а процесс обучения - как оптимальное управление нейронной сетью (объектом управления).
Литература: 1. Справочник по теории автоматического управления / Под ред. А. А. Красовского. М.: Наука, 1987. 712с. 2. Качур С.А. Модель стохастических систем и их соединений на основе сетей Петри //Проблемы управления и информатки.2002.№1. С.93-98. 3. ПитерсонД. Теория сетей Петри и моделирование систем. М.: Мир,1984.264с. 4. Качур С.А. Модель нейронного модуля как элемента стохастических систем на основе сетей Петри // Радиоэлектроника. Информатика. Управление. 2005. №1. С.125-129.
Поступила в редколлегию 23.05.2006
Рецензент: д-р техн. наук, проф. Бутаков Е.А.
Качур Светлана Александровна, канд. техн. наук, доцент кафедры автоматизации электрических станций Севастопольского национального университета ядерной энергии и промышленности. Научные интересы: сети Петри, модели, моделирование, управление сложными техническими системами, управление экономическими системами. Адрес: Украина, 99029, Севастополь, Пр. Остря-кова,74, кв.9, тел. (0692) 57-09-92.
РИ, 2006, № 2
49
КОМПЬЮТЕРНАЯ ИНЖЕНЕРИЯ И ТЕХНИЧЕСКАЯ ДИАГНОСТИКА
УДК681.324
ОПТИМИЗАЦИЯ КОМПОЗИЦИОННОГО МИКРОПРОГРАММНОГО УСТРОЙСТВА УПРАВЛЕНИЯ С ЭЛЕМЕНТАРНЫМИ ОПЕРАТОРНЫМИ ЛИНЕЙНЫМИ ЦЕПЯМИ
БАРКАЛОВ А.А., КРАСИЧКОВ А.А.,
ХАЛЕД БАРАКАТ_____________________
Предлагается использовать преобразование адреса микроопераций в схеме КМПК. Рассматриваются применения преобразователя адреса. Приводится пример синтеза схемы КМПК с преобразователем адреса. Проведенные исследования показали, что метод уменьшает аппаратурные затраты до 18%.
1. Введение
Модель композиционного микропрограммного устройства управления (КМУУ) может быть использована при реализации устройств управления (УУ) цифровых систем [1,2]. Структурно КМУУ состоит из схемы адресации и управляющей памяти, хранящей набор микрокоманд УУ. Такая модель достаточно просто реализуется в современных “системах на кристалле” [3,4], где логика адресации реализуется на FPGA или CPLD, а управляющая память - на блоках встроенной памяти типа PROM или RAM. Одним из путей увеличения числа функций, реализуемых системой при ограниченной емкости кристалла, являетсяумень-шение аппаратурных затрат в отдельных блоках системы, что требует применения различных оптимизационных методов. Для решения этой задачи при синтезе КМУУ может быть использован метод разделения кодов [2], ориентированный, как и известные методы [5,6], на уменьшение числа термов в системе функций возбуждения памяти КМУУ. Однако этот метод применим только при выполнении определенных условий [2], в противном случае он приводит к резкому увеличению емкости упр авляющей памяти.
Целью исследования является возможность применения предлагаемого метода преобразования адресов, позволяющего использовать разделение кодов при произвольных характеристиках исходной граф-схемы алгоритма (ГСА), задающей алгоритм управления.
Задача исследования - разработка формализованного метода преобразования адресов, ориентированного на КМУУ с элементарными операторными линей-
ными цепями (ОЛЦ). Отметим, что предлагаемый метод применим и для КМУУ с произвольными ОЛЦ.
2. Основные определения и общие положения
Пусть множество B вершин ГСА Г включает начальную вершину b0, конечную вершину bE, операторные вершины bq Є Bj и условные вершины bq є B2: B = B1 uB2 u{b0,bE} . В вершинах bq є B1 записываются наборы микроопераций из множества Y = {y1,...,yN}, в вершинах bq є B2 записываются элементы множества логических условий X = {x1,...,xL}. Вершины ГСА Г связаны дугами
< bq,bt >Є E, где E - множество дуг.
Введем ряд определений [1,2], необходимых для дальнейшего изложения материала
Определение 1. Операторной линейной цепью ГСА Г называется последовательность операторных вершин ag =< bg1, -’bgFg >, такая, что для любой пары соседних компонент вектора ag существует дуга
< bgA,+1 >є E(i = 1,-,Fg -1).
Определение 2. Вершина bq є Dg , где Dg - множество вершин, входящих в ОЛЦ ag, называется входом ОЛЦ ag , если существует дуга < bt,bq >є E, гдеbt = b0 илиbt є B2, или bt £ Dg .
Определение 3. Операторная линейная цепь ag называется элементарной операторной линейной цепью (ЭОЛЦ), если она имеет только один вход.
Определение 4. Вершина bq є Dg называется выходом ОЛЦ ag , если существует дуга < bt ,bq >є E, где
bt = bE или bt є B2, или bt g Dg .
Определение 5. Элементарные ОЛЦ , aj называются псевдоэквивалентными ЭОЛЦ, если их выходы связаны с входом одной и той же вершины ГСА Г.
Пусть Ig - вход ЭОЛЦ »g, Og - выход ОЛЦ , О(Г) - множество выходов ОЛЦ ГСА Г. Пусть для ГСА Г сформировано множество ЭОЛЦ С = {a1,...,aG}, удовлетворяющее условию
D1 n Dj =0(i,je {1,...,G});
B1 = D1 uD2u...uDg ; G ^ min. (1)
При выполнении (1) каждая вершина bq є B1 входит точно в одну ЭОЛЦ и каждая ЭОЛЦ ag є C включает максимально возможное число компонент. Закодируем ЭОЛЦ ag є C R1 -разрядными кодами K(a,g), где R1 =]log2 G[, и используем для такого кодирования элементы множества г , где | т |= R1. Закодируем компоненты каждой ЭОЛЦ ag є C r2 -разрядными кодами K(bt), где R2 =]log2Fmax[, Fmax = max(FJ,...,FG), и используем для такого кодирования элементы множества T, где | T |= R2. Выполним кодирование так, чтобы выполнялось условие
РИ, 2006, № 2
50
K(bgJ = K(bg.)+1), (2)
где g = , І = 1,...,Fg -1.
Теперь операторной вершине bq є Dg соответствует код
A(bq) = K(a g) * K(bq), (3)
здесь * - знак конкатенации.
Clock в RG заносится код очередной ОЛЦ аІ є C, во вход которой есть переход из выхода Og под действием переменных X. Одновременно содержимое CT обнуляется, что соответствует первой компоненте ЭОЛЦ аІ є C . Если <bt,bq >єE, то одновременно с микрооперациями Y формируется сигнал yE, триггер TF обнуляется и выборка микрокоманд прекращает-
Этот код можно рассматривать как адрес микрокоманды Y(bq), соответствующей вершине bq є Dg .
Представление (3) называется разделением кодов [2] и ему соответствует КМУУ U1 (рис.1).
Рис. 1. Структурная схема КМУУ с разделением кодов и элементарными ОЛЦ
Здесь комбинационная схема СС формирует систему функций возбуждения регистра RG, хранящего коды ЭОЛЦ,
ся, что соответствует режиму останова КМУУ Uj.
Такая организация УУ позволяет минимизировать число выходов схемы СС по сравнению с известными методами реализации КМУУ [1,2], а также позволяет использовать оптимальное кодирование псевдоэквивалентных ЭОЛЦ, основанное на принципах [7].
Однако при выполнении условия
R1*R2 >R , (5)
где R = ]log2M[, M =| B1 |, емкость управляющей памяти КМУУ U1 в
2R-(R1+R2) (6)
раз больше ее минимальной емкости:
Vmm = 2r(N + 2). (7)
В настоящей работе предлагаются два метода оптимизации КМУУ U1 , позволяющие использовать принцип разделения кодов при любых характеристиках исходной ГСА. Методы основаны на введении преобразователя адресов, формирующего адрес микрокоманды с разрядностью R0 < R по представлению (3).
¥ = ¥(х,Х); (4)
управляющая память СМ хранит микрооперации Y, сигнал управления синхронизацией y0 и сигнал управления выборкой yE , триггер выборки TF формирует сигнал выборки Fetch.
Устройство U1 функционирует следующим образом. По сигналу start в RG заносится нулевой код, соответствующий первой ЭОЛЦ ГСА Г, а в CT заносится нулевой код, соответствующий коду первой компоненты ЭОЛЦ. Одновременно сигнал Fetch=1, что разрешает выборку микрокоманд из CM. Пусть в момент времени t (t=0, 1, 2, ...) содержимое RG и CT образует адрес A(bq). Если вершина bq £ 0(Г), то управляющая память формирует микрооперации, записанные в вершине
bq єВь и сигнал у0. По сигналу синхронизации Clock содержимое СТ увеличивается на единицу, что соответствует режиму (2). Таким образом, в момент времени t +1 из CM выбирается микрокоманда, соответствующая очередной компоненте ОЛЦ ag, и содержимое RG не меняется.
Если bq є °(Г), то сигнал у0 не формируется. При этом по сигналу
3. Принцип организации КМУУ с оптимальным кодированием элементарных ОЛЦ и преобразователем адреса
Пусть для ГСА Г условие (5) выполняется. Введем в схему КМУУ U1 преобразователь адреса AT, что порождает КМУУ U2 (рис. 2). Здесь преобразователь адреса формирует переменные
A = A(T, т), (8)
используемые для адресации микрокоманд в CM.
В настоящей работе предлагается метод синтеза КМУУ U2 , включающий следующие этапы:
РИ, 2006, № 2
51
1. Формирование преобразованной ГСА Г (U2).
2. Формирование множества ЭОЛЦ ГСА Г (U2).
3. Кодирование элементарных ОЛЦ.
4. Кодирование операторных вершин.
5. Адресация микрокоманд.
случае R1 = 3 , т = (ть т2, т3} и один из вариантов кодирования ЭОЛЦ представлен на рис. 4
6. Формирование содержимого управляющей памяти.
7. Формирование таблицы переходов КМУУ.
8. Формирование таблицы преобразователя адресов.
9. Формирование систем функций Y и L.
10. Реализация схемы КМУУ в заданном элементом базисе.
Преобразование исходной ГСА Г необходимо для организации режима пуска и останова КМУУ U2.
Если в ГСА Г имеется дуга <b0,bq >єE, гдеbq єB2
(рис. 3,а), то в ГСА T(U2) водится операторная вершина (рис. 3, б).
Если в ГСА Г имеется дуга <bt,bE >єE, гдеbt єB1 (рис. 3, в), то в вершинуbt вводится сигнал yE. Если
в ГСА Г имеется дуга <bq,bE >є E, где bq єB2 (рис. 3, в), то в ГСА вводится дополнительная операторная вершина с yE (рис. 3, г).
Множество ЭОЛЦ формируется по преобразованной ГСА с использованием методики [2]. Для кодирования ЭОЛЦ необходимо найти разбиение множества C на классы псевдоэквивалентных ЭОЛЦ:
ПC = {B1,...,BI} . Элементарные ОЛЦ ag О B1 кодируются так, чтобы их коды входили в один обобщенный интервал R1 -мерного пространства, при этом интервалы интерпретируются как коды K(Bt) соответствующих классов B1 £xC.
Рис. 4. Оптимальное кодирование ЭОЛЦ ГСА Г1
В этом случае K(B1) = 000, K(B2) = 1**, K(B3) = 0*1, K(B4) = *10.
Кодирование операторных вершин производится тривиальным образом. Например, при R2 = 3 первые компоненты всех ЭОЛЦ имеют код 000, вторые - 001 и т.д. Очевидно, что такой подход позволяет получить коды вершин, удовлетворяющих условию (2).
После формирования ЭОЛЦ в операторные вершины bq ^Og(g = 1, ...,G) преобразованнойГСА Г(U2) вводится сигнал управления синхронизацией у0. Таким образом, операторной вершине bq соответствует микрокоманда Yq с Yu{y0,yE}. Пусть ГСА Г(U2) содержит K попарно различных наборов микроопераций и сигналов у0, yE (микрокоманд). Для адресации наборов Yk (k = 1,...,K) достаточно
R0 =]log2K[ (9)
двоичных переменных, образующих множество L. Адресация микрокоманд Yk(k = 1,...,K) может выполняться произвольным образом, так как эти адреса формируются схемой AT по адресам (3), удовлетворяющим условию (2).
Очевидно, что при выполнении условия
R0 < R (10)
емкость управляющей памяти КМУУ (U2) в (R - R0) раз меньше параметра Vmin . Таким образом, применение преобразователя адресов позволяет при определенных условиях уменьшить емкость управляющей памяти КМУУ.
Пусть для ГСА Г1 ПC = {Bj,...,B4}, где B1 = {аЦ, B2 = {a2,a3,a4}, B3 = {a5,a6}, B4 = {a7}. В этом
( start ) b0
Содержимое упр авляющей памяти формируется тривиальным образом: адресу A(Yk) микрокоманды Yk(k = 1,...,K) соответствует ячейка СМ с соответствую щимимикроопе-рациями и сигналами Уо 5 УЕ-
В г
Рис. 3. Преобразование исходной ГСА Г
При достижении выхода ЭОЛЦ, содержаще-
го сигнал yE, функционирование КМУУ U2 прекращается. Поэтому таблица переходов КМУУ должна отображать переходы из выходов ЭОЛЦ, входя-
52
РИ, 2006, № 2
щих в классы B. є ПC. В классы разбиения ПC с ПC не входят ЭОЛЦ с сигналом yE.
Для формирования таблиц переходов предлагается построить систему обобщенных формул перехода
B. ^vX1(ag)ag, (11)
где В1 є ПC, Xi(ag) - конъюнкция логических условий xe є X, определяющих переход в ГСА Г( U2) из выхода ОЛЦ aj єВі во вход ОЛЦ ag eBt, где Bt єП C. Каждый терм выражения (11) соответствует одной стороне таблицы переходов со столбцами: B1, K(Bi), ag, K(ag), Xh, Yh, h, где Xh - Xi(«g), % - набор функций возбуждения регистра RG, принимающих единичное значение для формирования в RG кода K(«g); h = 1,...,H- номер перехода.
Таблица преобразователя адреса АТ задает закон формирования адресов микрокоманд A(Yk) по кодам K(a,g) * K(bq), где Yk - набор микроопераций и сигналов у0 и yE, записанный в вершине bq є Bi. Каждая строка таблицы имеет столбцы bq, K(bq), ag, K(ag), Yk, A(Yk), \, q, где столбец X q содержит переменные X q є Л , принимающие единичные значения в адресе микрокоманды A(Yk), q = 1,...,M - номер строки.
Система функций (4) строится по таблице переходов КМУУ U2 в виде
но рассмотрены в литературе [4-6,8] и выходят за рамки нашей статьи.
4. Особенности синтеза КМУУ с преобразователем кодов элементарных ОЛЦ
Оптимальное кодирование ЭОЛЦ, при котором все коды ЭОЛЦ одного класса входят в один обобщенный интервал, возможно не всегда. Например, для
разбиения П C = {B1,...,B4}, где B1 = {a1}, B2 = {a2,a3,a4}, B3 = {a5,a6}, B4 = {a8}, такого решения при R1 = 3 не существует. В этом случае предлагается ввести преобразователь кодов ЭОЛЦ в коды классов псевдоэквивалентных ЭОЛЦ, что порождает КМУУ U3 (рис. 5).
Здесь преобразователь кодов СОТ формирует переменные
Z = Z(t), (14)
кодирующие классы псевдоэквивалентных ЭОЛЦ, а схема СС реализует систему функций
¥ = ¥ (Z,X), (15)
управляющую регистром RG.
Методы синтеза КМУУ U3 и U2 практически совпадают, но в процедуру синтеза добавляются этапы:
5а. Кодирование классов псевдоэквивалентных ЭОЛЦ.
9а. Формирование таблицы преобразователя кодов СОТ.
H R1
Dr = v Сгh( лтГ11) • Xh (г = 1,...,R1), (12)
h =1 r=1
где Dr еТ; Crh - булева переменная, равная единице, если в h-й строке таблицы переходов записана переменная Dr; lir e{0,L,*}- значение г-го разряда кода K(B.) из h-й строки таблицы переходов, т0 = хг , хГ =х^ X* = 1(r = 1,...ДЦ.
Кроме того, в п.10 необходимо ввести формирование функций Z, которые фигурируют в таблице переходов КМУУ U3 вместо функций хг єх.
Для кодирования классов B. є nC достаточно
R3 =]l0g2 І1[ (16)
переменных zr є Z, где I1 = Пc . Кодирование клас-
Система функций (8) строится по таблице AT в виде
M R1 , R2 і
Xr = V Сrq(Axrgr)• (ATrlqr),(r = 1,...,Ro), (13)
q=1 r=1 r=1
здесь Crq - булева переменная, равная единице, если в q-й строке таблицы находится переменная Xг ; lgr є{0Л} - значение г-го разряда кода K(«g) из q-й строки таблицы; Ц є {0,1} - значение г-го р азряда кода K(bq) из q-й строки таблицы;
сов выполняется тривиальным образом, а таблица преобразователя СОТ включает столбцы: ag, K(ag), B., K(B.), Zg, g, где Zg - переменные zr eZ,
T° = X
Xr =Xr ,
0
r
(r = 1,...,R1); Tru = Tr ,
Tr1 = Tr, (r = 1,...,R2).
Вопросы реализации подобных функций достаточно пол-
Рис. 5. Сруктурная схема КМУУ U3
РИ, 2006, № 2
53
принимающие единичные значения в коде K(Bj) класса Bi є ПC; - номер строки (g = 1,...,G0, где G0 < G ). Функции (14) реализуются в виде
Go Ri ,
zr = ^С^лтЛ (г = 1,...,R3), (17)
g=1 r=1
где Cgr - булева переменная, равная единице, если в g-й строке таблицы COT переменная zr = 1; lgr є {0,1}
- значение г-го разряда кода K(ag) из g-й строки таблицы.
Наиболее просто система (11) реализуется на PROM или RAM.
5. Заключение и результаты исследований
Применение метода преобразования адресов эффективно при выполнении условия (5), при этом емкость управляющей памяти КМУУ может быть уменьшена
по сравнению с параметром Vmin , достижимым при известных методах синтеза КМУУ [1,2]. Уменьшение емкости возможно при выполнении условия (10), если в разных операторных вершинах находятся одинаковые наборы микроопераций.
Научная новизна предложенных методов заключается в разработке методов синтеза, позволяющих соединить все преимущества метода разделения кодов с минимизацией емкости управляющей памяти. Практическая значимость методов заключается в уменьшении площади кристалла, занимаемой управляющей памятью КМУУ, что позволяет получить схемы, которые либо обладают меньшей стоимостью, либо позволяютувеличить объем микропрограммного обеспечения цифровой системы при неизменной площади кристалла, чем отличаются от литературных аналогов.
Если коды псевдоэквивалентных элементарных ОЛЦ входят в один интервал R1 -мерного булева пространства для всех классов эквивалентности, то наибольшая экономия аппаратурных затрат достигается при
использовании КМУУ U2. В противном случае необходимо провести выбор между моделями U2 и U3. Исследования авторов показали, что лучшая в конкретных условиях модель дает до 18% экономии аппаратуры по сравнению с известными структурами КМУУ.
Література: І.Баркалов А.А., Палагин А.В. Синтез микропрограммных устройств управления. Киев: ИК НАН Украины, 1997. 135 с. 2. Баркалов А.А. Синтез устройств управления на программируемых логических устройствах. Донецк: ДонНТУ, 2002. 262 с. 3. Грушвицкий Р.И., Мурсаев А.Х., Угрюмое Е.П. Проектирование систем с использованием микросхем программируемой логики. Петербург: БХВ, 2002. 4. Luba T. Synteza ukladow logicznych. Warszawa: WSIZ, 2001. 238 s. 5. Salcic Z. VHDL and FPLDs in Digital systems Design, prototyping and Customization. Kluwer Academic Publishers, 1998. 412 p. 6. Sasao T. Switching Theory for Logic Synthesis. Kluwer Academic Publishers, 1999. 316 p. 7. Баркалов А.А. Принципы оптимизации логической схемы микропрограммного автоматa Мура / Кибернетика и системный анализ. 1998, №1. С. 65 - 72. 8. Соловьев В.В. Проектирование цифровых схем на основе программируемых логических интегральных схем. М.: Горячая линия-ТЕЛЕКОМ, 2001. 636 с.
Поступила в редколлегию 05.06.2006
Рецензент: д-р техн.наук, проф. Хаханов В.И.
Баркалов Александр Александрович, д-р техн. наук, профессор кафедры ЭВМ ДонНТУ, профессор Университета Зеленогурского (Польша). Научные интересы: цифровые устройства управления. Увлечения: научная работа, спорт. Адрес: Украина, 83122, Донецк, ул. Артема, 204А, кв. 105, тел. (+38062)301 -07-35.
Красичков Алексей Александрович, канд. техн. наук, доцент кафедры ЭВМ ДонНТУ. Научные интересы: цифровые устройства управления на ПЛУ. Увлечения: научная работа, спорт, музыка. Адрес: Украина, 83005, Донецк, ул. Куприна, 62, кв. 33, тел. (+38062)301-07-23.
Халед Баракат, аспирант кафедры ЭВМ ДонНТУ. Научные интересы: цифровые устройства управления на ПЛУ. Увлечения: научная работа. Адрес: Украина, 83000, Донецк, ул. Артема, 58, к. 36.
54
РИ, 2006, № 2
КОМПЬЮТЕРНЫЕ _
УДК681.51.007
МЕТРИЧЕСКОЕ СРАВНЕНИЕ РЕЗУЛЬТАТОВ СЕГМЕНТАЦИИ ИЗОБРАЖЕНИЙ
ЕГОРОВА Е.А., КИНОШЕНКО Д.К.,
МАШТАЛИР С.В., ШЛЯХОВ Д.В._____________
Предлагается использовать сравнение разбиений поля зрения в качестве базы для сопоставления изображений. На произвольных конечных разбиениях вводится функционал, оценивающий их сходство, и доказывается, что он представляет собой метрику. Обсуждаются результаты моделирования метрических свойств разбиений.
Введение
Любая автоматическая интерпретация изображений связана с разделением полезной и мешающей информации. Первый шаг в этом плане - сегментация, т.е. поиск классов эквивалентности в поле зрения видеодатчика относительно выбранного признакового пространства, как правило, связанного с предметной областью. В простейших случаях сегментация сводится к поиску «однородных» областей. При этом используются методы, основанные на выделении, слиянии-расщеплении областей [1,2], построении контурных препаратов [3-5], локальном или глобальном анализе функций распределения яркостей (текстурные [6,7], гистограммные [8], фрактальные подходы [9]), различном комплексировании специализированных алгоритмов [10-14]. Основным результатом сегментации является разбиение (реже - покрытие) видеокадра, которое представляет собой входную информацию для этапа анализа «содержания» изображения. Принято различать недостаточную (граничная ситуация - исходное, попиксельное представление изо бражения) или избыточную (предельная ситуация - все изображение соответствует одному классу) сегментацию. Определение степени адекватности разбиения изображения реальному содержанию наблюдаемой сцены - весьма сложная задача, которая не всегда легко решается и человеком. Одним из важнейших инструментов принятия решения о необходимости трансформаций разбиений (в частности, объединения или дробления классов) является объективное сравнение результатов сегментации изображений. Естественным образом такое сравнение, по крайней мере предварительно, должно проводиться на совокупностях множеств, соответствующих найденным областям «однородности» изображений, т. е. на разбиениях или покрытиях поля зрения видеодатчика.
Цельюработы является изучение метрических свойств разбиений для оценки сходства изображений по результатам сегментации, что позволит учитывать избыточность или дефицит информации наряду с ее многозначностью на этапе тематической интерпретации видеокадров.
В задачах обработки изображений (в качестве меры их сходства) используется целый ряд метрик. Вместе с использованием традиционных (метрика Минковского и ее частные случаи - евклидово и Манхэттенское расстояния) активно проводятся исследования по введению расстояний, учитывающих специфику анализа визуальной информации. Диверсификация поисковых видеосистем с запросами «ad exemplum» приводит к введению новых метрик, в том или ином смысле удовлетворяющих трактовке изображений. Следует выделить такие подходы: трансформация локальной информации в структурное сходство [15], учет связных пиков гистограмм [16], анализ минимальной «стоимости» преобразований законов распределения применительно к цвету и текстуре [17], метрические свойства гауссовых смесей [18], динамическая активизация различных наборов признаков при сравнении различных изображений [19], множественный анализ классов с использованием расстояний хи-квадрат [20], иерархическая классификация со сходством типа метрики Махаланобиса [21], отображение свойств эталонной сегментации в пространство анализируемых изображений [22], учет наборов функций сходства, основанных на свойствах энтропии [23], использование псевдометрик, например, при нейросетевой семантической классификации [24]. Однако в этих метриках слабо используется информация о форме компонентов изображений, которая часто является ключевой при интерпретации. Традиционные методы анализа формы областей базируются на их последовательном выделении и вычислении признаков. Задача работы - построение метрики, интегрально учитывающей все элементы разбиений (результаты сегментации изображений).
Метрика на разбиениях изображения, индуцированных сегментацией
Рассмотрим произвольное множество A (поле зрения видеодатчика) и его разбиения на собственные подмножества Пі с конечным числом элементов, т.е.
П і = {Pl,...,Pn},
где Pk с A, k = 1,n, Uk=1Pk = A, Pi П Pj = 0,i,j = 1,n,i *j.
Будем считать, что на A с R2 задана некоторая мера p(A) (площадь, количество точек, попадающих в область, и т.п.) и она конечна, откуда следует и конечность мер для элементов произвольных разбиений.
Введем функционал на множестве произвольных разбиений П = {P[,...,Pn}, G = {G1,...,Gm} множества A:
РИ, 2006, № 2
55
n m
P( n,G) =EE [ P(Pk А01)ц(Рк n Gj)], (1)
к=11=1
где « Д » - операция симметрической разности множеств.
Подчеркнем, что изучение метрических свойств разбиений для оценки сходства изображений по результатам сегментации сводится к проверке выполнения аксиом рефлексивности, симметричности и неравенства треугольника. Отметим, что конечность разбиений будет использована нами только при доказательстве неравенства треугольника.
Нетрудно заметить, что из вида функционала (1) непосредственно следует, что он удовлетворяет аксиоме симметричности. Докажем рефлексивность. Будем считать, что разбиение П состоит из n элементов, тогда
р(п,п) = £ £ №дрмр п р) =
n к=11=1 n
= £ [ц(Ркдрмр npi)]+2 £ [ц(Ркдроц(Рк пPi)],
к=1 к,1=1
к>1
т.е. р (П, П) состоит из n слагаемых с совпадающими номерами, а значит, и с совпадающими элементами
разбиения, и из n2 - n слагаемых с различными элементами разбиения. Первая группа слагаемых состоит из нулей, так как р (РДРк) = 0, для к = 1,n, а вторая группа дает нулевые слагаемые, поскольку
р (Рк П Р1) = 0 для Vк,1 = 1,n и к ф1. Таким образом, в одну сторону рефлексивность доказана.
Покажем рефлексивность в обратную сторону, т.е. пусть для двух, в общем случае, различных разбиений п и G имеет место р (П, G) = 0. Поскольку все слагаемые функционала (1) положительны, то он равен 0 только тогда, когда каждое из них равно 0. Выберем некоторый элемент разбиения pеП . В исходном функционале он входит в набор «нулевых» слагаемых p(pAgi)p(pf|gi) = 0, где 1 = 1,m , G = {g1,...,gm}. Если предположить, чтоp не является элементом разбиения G, то для всех gl є G выполняется р(pAgl) Ф 0 . Но тогда для всех номеров 1 должно выполняться р (p П gl) = 0. Однако это возможно только тогда, когда p Ф 0 , так как p є A, а весь набор G = {g1,...,gm} покрывает множество A. В то же время p - элемент покрытия П этого же множества A и, естественно, p Ф0 . Тогда найдутся элементы разбиения G , покрывающие p и имеющие с ним непустые пересечения (рис.1). Но тогда для этих элементов р (pAgO Ф 0 , т.е. получаем противоречие.
В итоге можно утверждать, что произвольный элемент pеП является элементом G или ПсG .Ясно, что в силу симметрии аналогично можно показать G сП, т.е. П = G. Таким образом, рефлексивность доказана.
Рис. 1. Пересечение покрытий Р и G множества А
Для конечного множества A = {1,...,N} и множества его разбиений Т a на конечный набор подмножеств зафиксируем элемент ПєТА, т.е. П = {pk...,pn},
где pi с A, ^n=1pi = A и pi П pj = 0 , когда i Ф j. Тогда функционал (1) можно представить в виде
p(n,G) = 'Z'Z\piAgj||pi Пgj| (2)
i=1j=1
Нетрудно заметить, что если к множеству A добавить (N +1) - й элемент, то разбиение П є Та может трансформироваться двумя способами: с одной стороны, этот элемент может добавляться как отдельно взятый элемент разбиения:
П'= {РЬ..., Pn, Pn+1}, (3)
гдеП'єТa',A' = {1,...,N +1}; с другой сторонні, он может « вливаться» в один из элементов разбиения п, тогда новое разбиение множества д' будет выглядеть так:
П' = {Pb...,(PbN +1),..., Pn}, (4)
здесь к = 1,п. Трансформацию вида (3) обозначим р( П), а вида (4) - через Рк(П) также при к = 1,n.
Выше было установлено, что функционал p(n,G) удовлетворяет условиям симметричности и рефлексивности. Докажем неравенство треугольника, и тогда этот функционал действительно метрика на Та .
Рассмотрим несколько вспомогательных утверждений, необходимых для доказательства. Нетрудно заметить, что если над элементами G, Пе Та выполнить трансформацию Fi, то функция (2) изменится: область определения станет Та', А'= {1,2,...,N +1}. При этом новый функционал р'(П', G') связан с первоначальным, а именно, вид функционала принципиально не меняется и остается в нотации (2).
Утверждение 1. Для любых двух разбиений n,G множества A имеет место
р (n,G) = p'(Fb(n ),F0(G)), (5)
где F0(n),F0(G) єТа' , А' = {1,2,...,N +1}. Доказательство. С учётом того, что F0( П) = П'= {p1,...,pn,(N +1)},
Fd(G) = G' = {g1,...,gn,(N +1)},
(2) может быть представлено в виде
56
РИ, 2006, № 2
n m - n
р'(П', G') = Ё Ё | pi Agj I Pi n gj I + Ё [ |pi A(N +1)| x 1=1J=1 m ,,i=1
X |pi П (N +1)|] + X gjA(N +1) gj n (N +1) + (6)
j=1
+ |(N +1)A(N +1)| |(N +1) П (N +1)|.
Ясно, что в равенстве (6) первое слагаемое представляет собой р(П, G), два последующих равны 0, так как|pi П (N +1) = |gj П(N +1) = 0 при Vi = 1, n, j = 1,m,
а в силу того, что |(N + 1)A(N +1)| = 0, зануляется
последнее слагаемое. Таким образом, получаем равенство (5), что и требовалось.
Утверждение 2. Для произвольных разбиений П, G множества A и любого номера se{1,...,m} имеет место
р'(РЬ(П),3№)) = р (n,G) + 2|gs |, (7)
где F0(H),Fs(G) є Fa' , A' = {1,2,...,N +1}. Доказательство. Исходя из определения (4), имеем
F0( П) = П'= {p1,...,pn,(N +1)},
Fs(G) = G'= {g1,...,(gs,N + 1),...,gm}.
Тогда
n m n
р'(П', G') = Ё Ё |pi Agj I |pi П gj I + Ё [|pi A(gs, (N +1))| X
i=1j=1 i—1
j*s m ,
X |pi n(gs,N +1)|] + £ |(N + 1)Agj||(N +1)ngj| + j=1
Vs
+ | (N +1) A(gs,N + 1)||(N +1) П (gs,N +1)|. Нетрудно заметить, что при любых i = 1, n, s = 1, m |pi A(gs, N +1)| = |pi Ags I +1,
ІРІ n (gs , N +1)| = |pi n gs 1 - (8)
Далее, для Vj = 1, m
|(N +1) П gj| = 0 (9)
и, наконец,
|(N + l)A(gs, N +1)| = |gs |, |(N + l)n(g.,N + l)| = l. (10)
Учитывая равенства (8) - (10), получаем
n m n
р'(П', G') = Ё Ё | pi Agj I |pi П gj I + Ё [(|pi Ags I +1) x
i=1j=1 i=1
j^S n m n
X |pi П gs|] + |gs | =[ Ё Ё | pi Agj I |pi n gj I+Ё [|pi Ags IX
i=1j=1 i=1 (11)
x |pi n gs I]+Ё |pi П gs| +| gs|.
i—1
Ясно, что в правой части равенства (11) слагаемое в квадратных скобках представляет собой не что иное, как р(n,G), а с учетом того, что П = {p1,...,pn} -разбиение множества A, и при этом gs с A, то zn=1|pi П gs| = |gs| . Следовательно, окончательно
p'(n',G') = р (П, G) + 2 |gs |,
т.е. получаем равенство (7). Утверждение 2 доказано. Замечание 1. Нетрудно понять, что в силу симметрии для любых разбиений П, G множества A и произвольного номера k e{1,...,n} будет иметь место следствие утверждения 2 в виде аналога равенства (7):
р'ШП)Т0^)) =р (n,G) + 2|pk|,
где Fk(П), F0(G) ?a- , A'= {1,2,...,N +1}.
Утверждение 3. Если зафиксировать два произвольных номера k e{1,...,n} и s e{1,...,m} и рассмотреть два произвольных разбиения П, G множества A, то будет выполняться равенство
р'ШПШО)) = p(n,G) + 2|pkAgs|,
где Fk(П), Fs(G) є Fa' , A' = {1,2,...,N +1}. Доказательство. Поскольку
Fk( П) = {p1,...,(pk,N + 1),...,pn},
Fs(G) = {g1,...,(gs,N + 1),...,gm}, (12)
то для функционала p' и равенств (12) находим
р'(п', G,) = Ё Ё |pi Agj I |pi n gj I+ i=1 j=1
i* kj^s
+ І |piA(gs,(N +1)) |pi П(gs,N +1)| + i=1 i^k m
+ Ё |(pk,N + 1)Agj||(pk,N +1)Пgj| + (13)
j=1
Vs
+| (pk,N +1) A(gs,N + 1)||(pk,N + 1) П (gs,N +1)|. Учитывая (10), а именно,
|pi A(gs ,N + 1)| = |pi Ags 1 + 1, |pi П (gs ,N +1)| = |pi П gs I, можем представить (13) в виде
p'(n',G') = £ ||piAgj||pi П gj +
i=1 j=1
i*k j*s
n Jm
+ Ё ( |pi Ags | +1) |pi П gs | + Ё ( |pk Agj I + ^ |pk П gj I +
i=1 j=1
i*k j*s
+ |pkAgs|(|pk П gs| +1).
При этом имелось в виду, что
|(pk, N +1) A(gs, N +1)| = |pk Ags I,
|(pk,N + l)n(gs,N + l)| = (|pk ng.| + l).
Таким образом, имеем
РИ, 2006, № 2
57
n m n
Р'(П', G') = [ Ё E |piAgj I |pi n gj I + E |pi Ags IX
i=1 j=1 i—1
i *kj*s i^k
m n
X |p^lgs|] + E |pk Agj| |p^lgj| + E |pil"lgs| + j=1 i=1
m j*s i^k (14)
+ E |pkHgi| + |pkAg^|p^lg^ + |pkAgs|. j=1
j^s
С учетом того, что слагаемые, стоящие в квадратных скобках равенства (14) вместе со слагаемым этого же равенства вида |pkAgs| |pk П gs|, дают p(n,G), можно далее представить р'(П', G') в виде
р'(П', G') = р(П, G) + ( £ |к П gs | - |p^ng^> +
i=1
+(Е |pk n gj I - |pk n gs |)+|pk Ags|. (15)
j=1
Здесь в каждой из круглых скобок мы фактически добавили и вычли по одному слагаемому |pk П gs |. Но
суммы вида En=1|pi П gs| и E“1pk П gj| рассматривались при доказательстве утверждения 2, т.е. каждая из них равна
u m
Е |pk П gs| = |gs|, Е |pk п gj| = |pk|. (16)
j=1 j=1
Тогда из (15) и (16) имеем
р'(П\G') = р(П, G) + (|рк | + |gs | - 2|рк П gs |) + |pkAgs I ■
Осталось заметить, что поскольку для любых конечных множеств A и B | ЛАБ |=| A | +1 B | —21A П B |, то
p'(ir,G') = p(n,G) + 2|pkAgs|,
т. е. утверждение 3 доказано.
Замечание 2. При выполнении «добавки» одного элемента к конечному множеству A трансформаций над произвольной парой разбиений этого множества n,G є ТЛ кроме тех, которые рассмотрены в формуле (16), быть не может.
В результате рассмотренных утверждений и замечаний можно сформулировать теорему.
Теорема. Функционал (2), заданный на Тл хТл, где Л - конечное множество, а Тл - множество разбиений Л на конечный набор подмножеств, является метрикой.
Доказательство. Заметим, что фактически доказывать будем только неравенство треугольника, поскольку выше симметричность и рефлексивность функционала (2) доказана для любой меры. Доказательство проведем методом математической индукции по количеству элементов множества Л.
Начнем с базы индукции. Когда мощность множества Л равна 1 или 2, то мы сталкиваемся с вырожденной ситуацией, в которой полагаем, что неравенство треугольника имеет место. Допустим N = 3, т.е. обозначая A = {a,b,c}, получаем, что Т л имеет вид
Т Л = {[(a), (b), (c)],[(a), (b, c)],
[(b), (a, c)], [(c), (a, b)], [(a, b,c)]}.
В принципе выбор трех точек (элементов) множества T л может быть осуществлен C5 = 10 вариантами, а именно:
1. [(a),(b),(c)]; [(a),(b,c)]; [(b),(a,c)];
2. [(a),(b),(c)]; [(a),(b,c)]; [(c),(a,b)];
3. [(a),(b),(c)]; [(a),(b,c)]; [(a,b,c)];
4. [(a),(b),(c)]; [(b),(a,c)]; [(c),(a,b)];
5. [(a),(b),(c)]; [(b),(a,c)]; [(a,b,c)];
6. [(a),(b),(c)]; [(c),(a,b)]; [(a,b,c)];
7. [(a),(b,c)]; [(b),(a,c)]; [(c),(a,b)]; (17)
8. [(a),(b,c)]; [(b),(a,c)]; [(a,b,c)];
9. [(a),(b,c)]; [(c),(a,b)]; [(a,b,c)];
10. [(b),(a,c)]; [(c),(b,a)]; [(a,b,c)].
Ясно, что из набора (17), с точностью до обозначения, можно считать эквивалентными следующие варианты:
а) 1,2,4; б) 3,5,6; в) 8,9,10. (18)
Таким образом, надо рассмотреть из групп (18) по одному представителю, и мы приходим к четырем ситуациям, например: 1, 3, 8 и 7.
Обозначим элементы множества Та точками Mi, т.е. M1 = [(a),(b),(c)], M2=[(a),(b,c)], M3 = [(b),(a,c)], M4 = [(c),(a,b)], M5 = [(a,b,c)]. Тогда достаточно исследовать 4 треугольника: AM1M2M3; AM1M2M5; AM2M3M5; AM1M2M4.
Замечание 3. Поясним технику подсчета функционала (2) в общем случае. Для двух конечных разбиений П = {p1,...,pn} и G = {g1,...,gm} следует формировать две (n х m) матрицы Тд и Тр вида
Тд= (ТІ), ТП = (j
где T=|piAgj|, Tpj = |pi Пgj|, i = 1n, j = 1,m. Затем эти матрицы можно поэлементно перемножать, т.е.
Сд n = (Сд p), где C1^ n = , а далее если все эле-
менты (n х m) матрицы Сд р просуммировать, то полученная сумма дает значение функционала (2).
Далее заметим, что два элемента множества Та можно выбрать С2 = 10 способами, если не учитывать порядок выбора. При этом в силу определенной симметрии (с точки зрения обозначений элементов) множеств Mi можно сразу заметить, что
p(M1,M2) = p(M1, M3) = p(M1,M4),
p(M2,M3) = p(M2,M4) = p(M3,M4),
p(M5,M2) = p(M5,M3) = p(M5,M4),
а случай p(M1,M5) должен быть рассмотрен отдельно. Таким образом, надо вычислить всего лишь четыре расстояния. Используем для вычислений описанную в замечании 3 методику.
58
РИ, 2006, № 2
1) p(Mi,M5) = 6:
Тд( Мі,Мз)=
( 2 > ( 2 ^
2 ,Tn( Mi,My)= 1 ,Сд n(Mi,M5)= 2
V 2 J I1; Ч 2 У
2) p(MbM2) = 2:
Тд (Mi,M2)
( 0 3 ^ 2 1
Tn (Mi,M2)
(0 0 'ї
Сд n(Mi,M2)
0 i
V0 i У
(i 0 Ї 0 i ,
3) p(M2,M3) = 4 :
треугольника будет выполняться для добавок Ар, представленных на рис. 4, то оно будет иметь место и для функционала р', заданного на множестве A'x A',
где |A'| = N +1, т.е. индуктивный переход будет обоснован. Таким образом, требуется доказать неравенство треугольника фактически для добавок Ар, вычисляемых по формулам, которые непосредственно следуют из утверждений i—З и замечания i:
р(П',С') =
р(П,0), р(П,0) + 2|gk|, р(П,0) + 2|gs|, р(П,в) + 2|pk Ags
П'= F0 (П), G'= F0(G), П'= Fk(n),G' = F0(G), П'= Fb(n),G' = FS(G), ,П'= Fk (П), G'= FS(G).
тд(M2,M3) = (21J, Tn(M2,M3) = (01),
Сд n(M2,M3) = (0 1).
4) p( М2,Мз)
Тд(М2,Мз) =(2), Tn(M2,M5)42), CдП(М2,Мз)42).
Рис. 3. Треугольники: AM2M3M5 , AM2M3M4
Рассматриваемые треугольники схематично иллюстрируются рис. 2, 3.
4 ' 6
Рис. 2. Треугольники: AM1M2M3 , ДМ1М2М5
Окончательно получаем, что неравенство треугольника всегда имеет место. Таким образом, база математической индукции при |A = 3 обоснована.
Перейдем к доказательству индуктивного перехода. Допустим, неравенство треугольника имеет место для множества А мощности N. Рассмотрим множество мощности N +1 и его произвольное конечное разбиение П' є TA', где A' = {1,2,.N +1} .
Выделим элемет^+1. Возможны два варианта: либо в разбиении п' он является изолированным, либо попадает в какую-то группу элементов. При этом ясно, что A = A' \{(N +1)} будет множеством мощности N , и разбиение получено трансформацией вида (3)П' = F0(П) или вида (4) П' = Fk(n), гдеП eTA -разбиение множества А. Нетрудно понять, что для любых трех разбиений П', G', Q' множества A' их попарные расстояния имеют вид (рис. 4), где для функционалов р(П^) ; р(П^) ир(G,Q) неравенство треугольника имеет место по предположению индукции, так как n,Q, G є Ta - конечные разбиения на множестве А мощности N. Тогда, если неравенство
Возникает восемь различных ситуаций, которые схематично представлены на рис. 5.
Рис. 4. Попарные расстояния для разбиений П', G', Q' Следует отметить, что на рис. 5 напротив сторон треугольников явно указаны величины добавок Ар . Из рис.5 видно, что для ситуаций 1), 2), 3), 5) неравенство треугольника очевидно выполняется. Ситуации 4), 6), 7) сводятся к одной, показанной на рис. 6, где a,b,c обозначают произвольные конечные множества. Ситуация 8) требует выполнения неравенства треугольника для операции аДЬ. Проверим неравенство треугольника для рис. 6. Для этого надо показать: |a| + |b|-|aAb| >0 и |аДЬ|+|а|-|Ь| >0.Принимая во внимание, что |aAb| = |a| + |b[ - 2 |a П b|, получаем |a| + |b - |aAb| = 2 |a П b| ^ 0
и |aAb|+|b _| b = |a|+N _ 2|a П b|+|a| -| b = 2(|a| - |a flb|) = = 2 |a\b| > 0, что и требовалось.
Остается проверить неравенство треугольника для симметрической разности, т.е. то, что для любой тройки множеств A, B, С выполняется
|АДВ| + |АДС|>|ВДС|.
РИ, 2006, № 2
59
Рис. 6
Из рис. 7 видно, что без ограничения общности имеем
І адв| = |Di I+|d2 I+|d5 I+|d6 I, |aac| = |d1|+|D3|+|d6|+|d7|, |bac| = |d3 I+|d5 I+|d2 I+|d7 I,
где Di,i = 1,7 легко выразить черезA,B,C (например, Di = [A\(A П C)]\[(A П B)\(A П B П C)] и т.д.). Тогда из (19) получаем
|AAB| + |AAC| -| BAC| = 2|d1 + 2|D6| +
+ [|D^ + | d5 +| D3| + |D^ - |D2|-I Ds| - |D3-| D7p =
= 2(|Di| + |D6|) > 0,
что и требовалось доказать. Тем самым мы завершили доказательство индуктивного перехода, а следовательно, и всей теоремы.
Рис. 7. Общий случай расположения трех множеств
Обсуждение результатов и перспектив исследования
В работе на конечных разбиениях поля зрения видеодатчика введен функционал, позволяющий сравнивать изображения, и доказано, что он представляет собой метрику, откуда следует теоретическая значимость исследований. Главное назначение этой метрики - инструмент анализа разбиений, полученных на ранних этапах обработки изображений, для выбора и комбинирования результатов сегментации на этапе интерпретации видеоданных, откуда следует практическая ценность работы. При этом, с одной стороны, возникает возможность объективного интегрального сравнения алгоритмов сегментации, с другой - введение операций над разбиениями создает предпосылки для получения лучшего в смысле заданного критерия разбиения, позволяющего достоверно выделять объекты или области интереса.
Экспериментальные исследования показали, что введенная метрика хорошо согласуется по результатам сравнения с традиционными формами сопоставления изображений. Более того, в задачах, когда форма объектов играет принципиальную роль, результаты в большей степени отвечают точности сравнения. На рис. 8 приведены примеры микроизображений гисто-
60
Рис. 8. Примеры исходных изображений для экспериментального исследования метрики (1)
РИ, 2006, № 2
логических препаратов, на рис. 9 - результаты простейшей (многопороговой) сегментации этих изо бр а-жений после эквализации гистограмм и медианной фильтрации (с окном 5 х 5). На рис. 10 приведен пример поиска изображения (а) в евклидовой метрике и разбиения (б) в предложенной.
Одним из перспективных направлений использования метрики являются базы видеоданных с запросами «ad exemplum», так как в этом случае разбиения можно трактовать как признаки изображения, характеризующие его геометрические свойства.
Следует подчеркнуть, что метрику (2) можно использовать и для сравнения покрытий поля зрения: для этого достаточно факторизовать покрытия, т.е. рассматривать возникающие пересечения как элементы индуцированного разбиения. Большой интерес представляет и уточнение метрики для сравнения частично упорядоченных относительно вложения результатов сегментации, поскольку учет вложений позволит управлять степенью детализации представления изобр а-жений на этапе их интерпретации.
Литература: 1. Brox T., Farin D., de With P.H.N. Multi-Stage Region Merging for Image Segmentation / Proceedings of the 22nd Symposium on Information Theory in the Benelux. Enschede, The Netherlands IEEE Benelux Information Theory Chapter. 2001. P. 189-196. 2. Chung R.H.Y., Yung N.H.C., CheungP.Y.S. An Efficient Parameterless Quadrilateral-Based Image Segmentation Method // IEEE Transactions on Pattern Analysis and Machine Intelligence. Vol. 27, No. 9. 2005. P.1446-1458. 3.Lu S., WangZ., Shen J. Neuro-fuzzy synergism to the intelligent system for edge detection and enhancement // Pattern Recognition. Vol. 36, No 10. 2003. P. 2395-2409. 4. Bezdek J. C., Chandrasekhar R., Attikiouzel Y. A geometric approach to edge detection // IEEE Transactions on Fuzzy Systems. 1998. Vol. 6, No 1. P. 52-75. 5. ShinM.C., Bowyer
K.W., Goldgof D.B. Comparison of edge detectors through
use in an object recognition task // Computer Vision and Image Understanding. 2001. Vol. 84, No 1. P. 160-178. 6. Jain A.K., Farrokhnia F. Unsupervised texture segmentation using Gabor filters // Pattern Recognition. 1991. Vol. 24, No 12. P. 1167-1186. 7. Chen J., Pappas T.N., Mojsilovic A., Rogowitz B.E. Adaptive perceptual color-texture image segmentation // IEEE Transactions on Image Processing. Vol. 14, No 10. 2005. P. 1524-1536. 8.ZhangH, Gao W., Chen X., Zhao D. Learning informative features for spatial histogram-based object detection / Proc. IEEE International Joint Conference on Neural Networks (IJCNN 2005). Montraal. 2005. P. 1806-1811.9. Lee P.S., Ewe H. T. Individual Recognition Based on Human Iris Using Fractal Dimension Approach. / / Lecture Notes in Computer Science. Vol. 3072. Berlin Heidelberg: Springer-Verlag. 2004. P. 467-474. 10. Mucoz X., Freixenet J., CutH X., MartH J. Strategies for image segmentation combining region and boundary information / / Pattern Recognition Letters. 2003. Vol.24, No 1-3. P. 375-392.
11. Caelli T., Reye D. On the classification of image regions by color, texture and shape // Pattern Recognition. 1993. Vol. 26, No 4. P 461 -470. 12.DiplarosA., Gevers T., Patras I. Combining color and shape information for illumination-viewpoint invariant object recognition // IEEE Transaction on Image Processing. 2006. Vol. 15, No 1. P. 1-11. 13. Callaghan R.J., Bull D.R. Combined morphological-spectral unsupervised image segmentation // IEEE Transaction on Image Processing. 2005. Vol. 14, No 1. P. 49-62. 14. ZhangD. Improving image retrieval performance by using both color and texture features / Proceedings of IEEE 3rd International Conference on Image and Graphics (ICIG04). Hong Kong. 2004. P. 172-175. 15. Gao X., Wang T., Li J.A. Content-based image quality metric / In: Slezak, D., et al. (eds.): Rough Sets, Fuzzy Sets, Data Mining, and Granular Computing. Lecture Notes in Computer Science. Vol. 3642. Berlin Heidelberg: Springer-Verlag. 2005. P. 31-240. 16. Traina A.J.M., Traina Jr.C., Bueno J.M., Chino F.J.T., Azevedo-Marques P. Efficient content-based image retrieval through metric histograms // World Wide Web. 2003. Vol. 6, No 2. P. 157-185. 17. Rubner Y., Tomasi C., Guibas L.J. The Earth Mover’s Distance as a metric for image retrieval // International Journal of Computer Vision. 2000. Vol. 40, No 2.
у' ыЯИЕ # 4k Ж „л
ш ж
1 J - - 9
Рис. 9. Результаты многопороговой сегментации изображений, представленных на рис. 8
1 2 3 4 5 6 7 8 9 10 11 12
Рис. 10. Пример поиска изображения в евклидовой метрике и по разбиениям
РИ, 2006, № 2
61
P. 99-121. 18. Sfikas G., Constantinopoulos C., Likas A., Galatsanos N.P. An analytic distance metric for Gaussian mixture models with application in image retrieval / In: Duch W., et al. (eds.): Artificial Neural Networks: Formal Models and Their Applications. Lecture Notes in Computer Science. Vol. 3697. Berlin Heidelberg: Springer-Verlag. 2005. P.835840. 19. Li B., Chang E., Wu Y. Discovery of a perceptual distance function for measuring image similarity // Multimedia Systems. 2003. Vol. 8, No 6. P. 512-522. 20. Gao, X., Wang, T, Li, J.:°A Content-based image quality metric / In: Slezak D., et al. (eds.): Advances in Visual Information Systems. Lecture Notes in Computer Science. Vol. 1929. Berlin Heidelberg: Springer-Verlag. 2000. P. 407-418. 21. PartridgeM., JabriM. Hierarchical feature extraction for image recognition // Journal of VLSI Signal Processing. Vol. 32, No 1-2. 2002. P. 157-167. 22. Khan A., Aylward E., Barta P., MillerM.I., BegM.F. Semiautomated basal ganglia segmentation using large deformation diffeomorphic metric mapping / In: Duncan J.S., Gerig, G. (eds.): Medical Image Computing and Computer-Assisted Intervention. Lecture Notes in Computer Science. Vol. 3749. Berlin Heidelberg: Springer-Verlag. 2005. P. 238245. 23. Cheng W., Xu D., Jiang Y., Lang C. Information theoretic metrics in shot boundary detection / In: Khosla, R., et al. (eds.): Knowledge-Based Intelligent Information and Engineering Systems. Lecture Notes in Computer Science. Vol. 3683. Berlin Heidelberg: Springer-Verlag. 2005. P. 388394. 24. Wang D., MaX., Kim Y. Learning pseudo metric for intelligent multimedia data classification and retrieval // Journal of Intelligent Manufacturing. 2005. Vol. 16, No 6. P. 575-586.
Поступила в редколлегию 07.06.2006 Рецензент: д-р техн. наук, проф. Бодянский Е.В.
Егорова Елена Андреевна, аспирантка кафедры информатики ХНУРЭ. Научные интересы: обработка изображений и распознавание образов. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-419, e-mail: [email protected].
Киношенко Дмитрий Константинович, аспирант кафедры информатики ХНУРЭ. Научные интересы: базы видеоданных. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 7021419, e-mail: [email protected].
Машталир Сергей Владимирович, канд. техн. наук, ассистент кафедры информатики ХНУРЭ. Научные интересы: распознавание образов. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-419, e-mail:
Шляхов Дмитрий Владиславович, студент группы ИНФ-02-3 факультета ПММ ХНУРЭ. Научные интересы: обработка изображений. Адрес: Украина, 61166, Харьков, пр. Ленина, 14, тел. 70-21-419.
УДК512.563.6
КОНТРОЛЬ ДОСТОВЕРНОСТИ МИНИМИЗАЦИИ ЛОГИЧЕСКИХ ФУНКЦИЙ
РУБАНОВ В.Г., КОРОБКОВА Е.Н.____________
Проводится анализ способа контроля достоверности результата минимизации, основанный на сжатии области определения функций по различным переменным и представлении их в точках сжатой области в форме упорядоченной дизъюнктивной матрицы с соседним размещением элементов и последующей многоверсионной минимизацией.
1. Постановка проблемы, цель и задачи исследования
Ошибки, допущенные при синтезе цифровых устройств вообще и минимизации в частности, вызывают дополнительные затраты при их последующем обнаружении и исправлении. Следует заметить, что при моделировании, отладке и верификации обнаруживаются только те ошибки, которые искажают заданный алгоритм функционирования. Ошибки же в минимизации, не искажающие алгоритм, а только усложняющие схемную реализацию цифрового устройства, не обнаруживаются. В последние годы вопросы минимизации логических функций вновь стали актуальными. Это обусловлено все более широким спектром выпускаемых специализированных интегральных схем (ИС), а также внедрением в практику проектирования программируемых логических интегральных схем
62
(ПЛИС). При разработке специализированных ИС каждый лишний вентиль и каждый лишний его вход требуют дополнительной площади кристалла, что ведет к усложнению ИС, и как следствие, к увеличению её стоимости.
В программируемых структурах число вентилей в конкретной ПЛИС фиксировано. Поэтому можно подумать, что проблемы лишних вентилей нет. И это действительно так, но только до тех пор, пока не вышли за пределы её возможностей и должны перейти на схемы большего объема, что опять-таки ведет к увеличению стоимости. Возникает проблема контроля достоверности получаемых при минимизации результатов, решение которой позволит избежать дополнительных затр ат [ 1 ].
Анализ публикаций, посвященных минимизации логических функций, показал, что число работ в этой области настолько велико, что уже простое перечисление их представляет собой далеко не тривиальную задачу [2]. Однако, несмотря на такое число работ, в подавляющем их большинстве вопросу анализа достоверности получаемого при минимизации результата должного внимания не уделялось, в то время как этот вопрос является первостепенным не только при ручных способах минимизации, но и при программных. При ручных способах минимизации ошибки неизбежны принципиально, причем на самых различных этапах её проведения. При программных способах также возможны ошибки, как в самой программе, так и при её выполнении.
РИ, 2006, № 2
Традиционные способы контроля достоверности полученного результата основаны на выполнении повторной минимизации той же самой функции с последующим сравнением полученных результатов. Однако в этом случае совпадение результатов не может быть полной гарантией их достоверности, поскольку при ручных способах, анализируя повторно одну и ту же информацию, человеку свойственно допускать одну и ту же ошибку («зацикливаться»).
При программных способах - систематическая ошибка в программе при любом числе версий процедуры минимизации будет приводить к одному и тому же неверному результату, поскольку минимизация проводится в одной и той же среде одной и той же программой. В этом случае , конечно, можно перейти к другой версии программы минимизации, но это опять-таки связано с определенными неудобствами .
В [3,4] рассмотрены способы минимизации, основанные на сжатии области определения заданных логических функций с последующим представлением их и минимизацией в сжатых картах с соседним кодированием. Поскольку сжатие области определения можно выполнить по различным переменным, как по их числу, так и по сочетанию [5,6], то предоставляется возможность проведения процедуры минимизации в различных областях (средах) с различными исходными для минимизации данными. Вероятность допустить ошибки в каждой из совершенно отличных сред минимизации, оперирующих отличными по форме данными, которые приводят к одному и тому же неверному результату, практически равна нулю. Поэтому если при повторной минимизации результат совпадает с предыдущим, то это с очень большой степенью вероятности подтверждает его достоверность.
В работах [3,4] решена только часть проблемы минимизации в сжатой области, ориентированная на логические функции относительно небольшого числа переменных и степень сжатия по одной - двум из них. Кроме того, в этих работах не делался акцент на анализе достоверности результата минимизации.
Цель работы - совершенствование способа контроля достоверности результата минимизации логических функций, основанного на повторном или многократном проведении её процедуры.
Поставленная цель предполагаетрешение следующих задач: разработка и исследование методики минимизации заданной функции в различных средах и с различными исходными для минимизации данными, получаемыми пр и сжатии области определения заданной функции по различному числу и сочетанию переменных; совершенствование методики выделения правильных конфигураций в точках сжатой области с последующим нахождением простых импликант, основанной на представлении минтермов, определяющих значение функции в точках сжатой области, в форме дизъюнктивной матрицы с соседним размещением элементов; анализ вариантов сжатия по различному числу и сочетанию переменных.
РИ, 2006, № 2
2. Метод решения
При решении поставленной задачи мы будем ориентироваться на ручной способ минимизации, основанный на представлении и минимизации функций в сжатых картах с соседним кодированием [3]. На современном этапе при сплошной компьютеризации вопросы разработки и исследования новых ручных способов не потеряли своей актуальности, поскольку любой из этих способов может стать отправной точкой для разработки программных, основанных на описании ручных алгоритмов представления функций и минимизации в терминах структур данных и функций на языках программирования высокого уровня. Кроме того, ручные способы в настоящее время могут иметь и самостоятельное значение, например при синтезе цифровых устройств, выполненных на ИС средней, малой и сверхмалой степени интеграции [ 1 ]. В предстоящие годы, возможно, основным местом, где по-прежнему будут применять ИС этой степени интеграции, а следовательно, и ручные способы минимизации, могут быть учебные и научно-исследовательские лаборатории, устройства промышленной автоматики, устройства сопряжения компонентов большой степени интеграции при решении частных технических задач, при корректировке ошибок в компонентах большой степени интеграции или их интерфейсах.
Как было показано в [5], число всех вариантов сжатия функции от n переменных по k любым из них (следовательно, и число вариантов её минимизации в различных средах) можно представить следующим образом:
n _1 ni
N = X —n—.
k=1(n-k)!k! .
Это число довольно велико даже при относительно небольшом значении n .
Для практического использования предложенного в работе способа контроля достоверности результата минимизации логических функций в общем случае достаточно рассмотреть любые два или более вариантов, различающихся по числу переменных, по которым выполняется сжатие, их сочетанию или как по числу, так и по сочетанию переменных.
При некоторых условиях выбора вариантов сжатия возможен не только контроль достоверности результата минимизации, но и промежуточный дополнительный контроль корректности выделения правильных конфигураций в сжатых картах и нахождения простых импликант, причём ещё до получения конечного результата. Для обеспечения такой возможности первый вариант сжатия можно выполнить по любому
числу и сочетанию переменных подмножества X1 є X, а при выборе второго варианта сжатия по переменным подмножества X2 обязательным является соблюдение условия: X2 = X \ X1.
63
Если пр и выделения пр авильных конфигур аций отме -чать номера точек сжатой области определения, образующих каждую из конфигураций, и однотипные минтермы (или логические суммы соседних минтер-мов), образующие массив данной конфигурации, то при предложенном способе р азбиения переменных на подмножества X1 и X2 в первом варианте сжатия будут фигурировать номера точек сжатой области, определяемые переменными подмножества Х2, и индексы минтермов, определяемые переменными подмножества Xj, а во втором варианте наоборот -номера точек будут определяться переменными подмножества Xj, а индексы минтермов - значениями переменных подмножества X2.
Если в первом и во втором вариантах сжатия правильные конфигурации, соответствующие одному и тому же массиву единиц исходной области определения, выделены корректно, то номера точек в сжатой области определения, полученные в первом варианте сжатия, совпадут с индексами минтермов, полученных во втором варианте. Номера точек в сжатой области определения, полученные во втором варианте, совпадут с индексами минтермов первого варианта.
Если для какой-то пары правильных конфигураций такого совпадения не будет, то в одном или обоих представлениях этой пары допущена ошибка.
Для того чтобы проиллюстрировать предложенный способ контроля не только достоверности результата, но и самого алгоритма ручной минимизации функций в сжатых картах и показать его эффективность по сравнению с известными способами, основанными на представлении функций в картах Карно, рекомендуется рассмотреть два варианта сжатия области определения функции не менее чем от пяти переменных.
Минимизация функций от пяти и более переменных известными ручными способами, основанными на представлении функции в традиционных картах Карно, вызывает определенные трудности. Имеющиеся в литературных источниках сведения по ручным способам минимизации подобных функций [8] сопровождаются общими рассуждениями о принципиальной возможности такой минимизации, но приводимые примеры, как правило, касаются простейших функций, имеющих регулярный характер, или слабо определенных функций, когда число единичных наборов значительно меньше половины максимально возможного их числа, что, конечно же, упрощает процедуру нахождения простых импликант, но не отражает проблемы минимизации этих функций в целом.
В целях исключения предвзятости и субъективизма в оценке эффективности предложенного способа минимизации в сжатых картах мы проведем анализ алгоритма минимизации полностью определенной функции от семи переменных с числом единичных наборов, равным 63. Более того, номера единичных набо-
ров определялись датчиком случайных чисел (программно) в диапазоне от 0 до 127, сформировавшим следующий список:
F(X) :{0,1,5,6,7,9,12,14,16,18,22,23,27,28,30,31,32,33, 35,36,37,39,41,42,43,45,46,47,49,51,53,54,55,56,57,60,
61,65,66,68,70,73,75,76,78,82,85,89, 90,92,97,98,99,101,102,105,107,109,112,113,115, 120, 121}.
В [7] проведен анализ процедуры двухверсионной минимизации при сжатии исходной области определения по трем (k = 3) младшим переменным и четырем (k = 4) старшим. При этом рассмотрена наиболее простая версия алгоритма сжатия, основанная на делении каждого номера единичного набора на 2k (при сжатии по подмножеству переменных X1 ) или на
2n_k (при сжатии по подмножеству переменных X2), с последующим нахождением координат точек сжатой области определения и значения функции в этих точках.
При сжатии исходной области определения по произвольно выбранным переменным подмножества
Xj с X и X2 = X \ Xj рассмотренная в [7] версия алгоритма сжатия сильно усложняется. Это обусловлено необходимостью выполнения предварительных операций, связанных с перестановкой разрядов переменных и определением номеров единичных наборов в соответствии с новыми позициями этих разрядов. Эти преобразования довольно громоздкие не только при ручном выполнении, но и при программном. Более простой в этом случае будет версия алгоритма сжатия, основанная на представлении исходной области определения в декомпозиционной карте [5].
Карта представляет собой таблицу, содержащую
2k строк и 2n_k столбцов (можно и наоборот). Столбцы карты раскрашиваются (размечаются) интервалами значений переменных подмножества X1, а строки - интервалами значений переменных подмножества X2 . Каждая клетка карты отмечается (в правом нижнем углу) номером, который является десятичным эквивалентом двоичного числа, образуемого значениями переменных, покрывающих её, веса которых определяются в соответствии с позицией этих переменных при исходном задании. В клетки карты записываются значения заданной функции.
Из множества возможных вариантов сжатия области определения по произвольно выбранным переменным подмножества X1 с X и X2 = X \ X1 проведём анализ
двух вариантов, включив в подмножество X1 три произвольно выбранных переменных, а в подмножество X2 - остальные четыре переменных. Принимаем:
X1 = {Х5Х3Х0}, X2 = {Х6Х4Х2Х1}.
64
РИ, 2006, № 2
Карта для принятого варианта разбиения переменных приведена на рис.1. Она содержит восемь столбцов, окрашенных интервалами значений переменных подмножества Х1 и шестнадцать строк, окрашенных интервалами значений переменных подмножества Х2. В каждую клетку карты записываем её номер и значение заданной функции. Для удобства работы с картой рекомендуется проставлять не только ее номера клеток, но также номера строк и столбцов, представляющих собой десятичные эквиваленты двоичных чисел, образуемых значениями переменных, покрывающих соответствующие строки и столбцы. При этом веса переменных определяются в соответствии с их
новыми позициями в подмножествах Х1 и Х2.
X 5
X3
X0
Хб X X2 Xi
1 1 0 1 1 1 0 1 0
Го Г Г Г рт , Г7" Г7 рг
0 0 0 0 0 1 1 1 1
F ,F рт Г1 рт рг , Г7 ,F
0 1 1 0 1 1 0 1 2
F F рг F рт рг рт рг
1 1 1 0 0 1 1 1 3
F F рт рг рг | 39 рг рг
1 0 0 0 0 1 1 1 4
Г6 F рт Р5 1 48 | 49 рт рг
1 0 0 1 0 1 0 0 5
| 18 | 19 ГД рт рт рг рг рг
0 0 1 0 0 1 1 1 6
| 20 ро рт р9 , F рг рг рг
1 1 1 1 1 1 0 0 7
| 22 1 23 I 30 рг рт I 55 I 62 pi
0 1 0 1 0 1 0 1 8
| 64 F рт рт рт F |104 рт
1 0 0 1 1 1 0 1 9
| 66 F рт рг рг рг рГ рг
1 0 1 0 0 1 0 1 10
| 68 ГД F рГ 1 100 1 101 р8 109
1 0 1 0 1 0 0 0 11
Г™ F рт рг р2 |Т33 |110 рг
0 0 0 1 1 1 1 1 12
| 80 Г | 88 рг , F [Г13 [120 Р1
1 0 1 0 0 1 0 0 13
| 82 pq рг р1 F1 . F рт рт]
0 1 1 0 0 0 0 0 14
| 84 pTj рг рт І116 | 117 рг рг]
0 0 0 0 0 0 0 0 15
| 86 н рт рг (ЇЇТ | 119 [126 Р7"
0 і 2 3 4 5 6 7 ы
Xi = {Х5Х3Х0}, соответствующих единичным значениям заданной функции. Логические суммы минтер-мов определяют значения функции в точках сжатой области. Записываем полученные номера точек сжатой области определения и логические суммы минтермов:
- m0 v m1 v m3 v m4 v m5 v m7;
(0 - m5 v m6 v m7;
(2) - mi v m2 v m4 v m5 v m7;
(3} - mo v mi v m2 v m5 v m6 v m7;
(4 _ mo v m5 v m6 v m7;
(5) - mo v m3 v m5; (6) - m2 v m5 v m6 v m7;
(l) - mo v mi v m2 v m3 v m4 v m5;
(8) - mi v m3 v m5 v m7;
(9) - mo v m3 v m4 v m5 v m7;
(ll) - mo v m2 v m4;
(io) - mo v m2 v m5 v m7;
(12) - m3 v m4 v m5 v m6 v m7;
(13) - mo v m2 v m5;
(l4)- mi v m2; (l5) -o.
Полученные значения функций записываем в соответствующие клетки шестнадцатиэлементной карты с соседним кодированием по переменным подмножества Х2 = {Х6Х4Х2ХД, приведенной на рис. 2.
-X2
X
Рис. i. Декомпозиционная карта заданной функции
Первый вариант - сжатие по переменным подмножества Хі = {x5ХзХo}. В этом случае номера строк декомпозиционной карты (j), определяемые значениями переменных подмножества Х2 = {Х6Х4Х2ХД, дают номера точек сжатой области определения, а номера столбцов карты (j) дают индексы минтермов, образуемых литералами переменных подмножества
па m па Д0 - - Н0 па па - ё па па - ё па
пз па па - - па пг па - па пг па па па пг -
па - - 14 па - па Із па па 17 па па -- h па
- па па па - па - - па па - - - па пг па
- - па ы па - - 14 па - - Is па - па
па па па па - па
- п па UI па - па ы па - - [11 па па -- 1т па
- пз па - па па пг - па - - - - пз пг -
X X
Рис. 2. Область определения заданной функции, сжатая по трем переменным
РИ, 2oo6, № 2
65
Минтермы в каждой клетке карты размещаем в форме восьмиэлементной дизъюнктивной матрицы с соседним кодированием координат её элементов. Каждый элемент матрицы является местоположением минтер-ма с тем же индексом. Отсутствующие в представлении той или другой функции минтермы в элементах матрицы отмечаются прочерком. Предложенное размещение минтермов в форме дизъюнктивной матрицы позволяет упростить процедуру нахождения простых импликант.
Как было отмечено в [3,4], задача минимизации логических функций в сжатых картах сводится к покрытию множества минтермов минимально возможным числом правильных конфигураций максимально возможной площади, образованных отдельными минтер -мами или логическими суммами взаимнососедних минтермов, которым соответствуют простые импли-канты минимального ранга. Результат выделения конфигураций записываем в виде номеров клеток, образующих эти конфигурации, и соответствующих им простых импликант. При этом следует подчеркнуть, что при большом числе переменных процедуру выделения правильных конфигураций необходимо начинать с тех минтермов или логических сумм соседних минтермов, включение которых в конфигурацию максимально возможной площади единственно.
Кроме того, во избежание ошибок в виде непокрытая некоторых минтермов или повторного выделения одних и тех же правильных конфигур аций рекомендуется при ручном способе минимизации по мере покрытия минтермов вычеркивать их, а при программных -каким-то образом отмечать. В соответствии с правилом идемпотентности вычеркнутый (отмеченный) минтерм может быть использован при образовании других конфигураций неоднокр атно.
Представленная ниже последовательность номеров клеток, образующих правильные конфигурации и соответствующие им простые импликанты, была найдена в соответствии с этими указаниями:
(8,3 - (нц v m3 v m5 v m7 )x4x2Xj = x4x2XjX0;
(5,7) - m3x6x4x, = x6x5x4x3x!xo;
(2,0) - (m4 v m5)x6x4x1 = x^^xj;
(12.8) -(m3 vm7)x6x2x1 = x6x3x2x1x0;
(13) - (m2 V m0 )X6X4X2X1 = X6X5 X4X2X1X0 ;
(12) - (m4 v m5 v m6 v m7 = x6x5x4x2x1;
(7) - (m4 v m5 v m0 v m1)x6x4x2x1 = x6x4x3x2x1;
(13,0,1,4,5,12,8,9) - m5x5x3x2 = x5x3x2x0;
(9.8) - (m3 V m7)x6x4x2 = x6x4x3x2x0;
(10,2,0,8)-(m5 vm7)x4x1 = x5x4x1x0;
(10,11) - (m0 v m2)x6x4x2 = x6x5x4x2x0;
(1,3-(m6 Vm7)x6x4x1 = x6x5x4x3x1;
(3,3 - (m0 V m2)x6x2x1 = x6x5x2x1x0;
(2,3 - (m1 V m5)x6x4x2 = x6x4x3x2x0;
(3 - (m0 V m1 V Ш4 V m5 )x6x4x2x1 = X6X4X3X2X1;
(5,3 - m0X6X4X2 = X6X5 X4 X3 X2 X0 ;
(^) - m1X6X4X2X1 = X6X5X4X3X2X1X0 ;
(14,2,6,13 - m2x2x1 = x5x3x2x1x0;
(6,3 - (m6 V m7)X6X4X1 = X6X5X4X3X1;
(11,3 3 m4 V m0 ) X6 X4 X1 = X6 X4 X3 X1X0 •
Минтерм m5, представленный в клетке (3, можно покрыть двумя равноценными способами: первый способ - включаем этот минтерм в правильную конфигурацию, образованную клетками (6,0,1,2,3,4,5,3, которой соответствует простая импликанта минимального ранга m5x6 = x6x5x3x0; второй способ - логическую сумму минтермов m5 v m7 включаем в конфигурацию (6,2,0,3 , которой соответствует импликанта (m5 vm7)x6x1 = X6X5X1X0. Следовательно, заданная функция имеет две минимальные ДНФ, которые можно представить в виде логической суммы, полученных простых импликант. В целях сокращения объёма запись минимальных ДНФ не п риводим.
Второй вариант - сжатие по переменным подмножества X7 = {X6X4X2X1}. В этом случае номера столбцов карты (i), определяемые значениями переменных подмножества X1 = {X5X3X0}, дают номера точек сжатой области определения, а номера строк карты (j) дают индексы минтермов (образуемых переменными подмножества X2 = {X6X4X2X1}), соответствующих единичным значениям заданной функции. Логические суммы полученных минтермов определяют значения функции в точках сжатой области определения. Запишем полученные номера точек сжатой области определения и значения функции в каждой из них:
(З - Ш0 v m3 v ш.4 v ш.5 v ш.7 v Ш9 v шю v mn v Ш13;
(1 - Ш0 v m2 v m3 v ш.7 v Шд v Ш14;
(3 - m2 v m3 v m6 v m7 v m10 v m11 v m13 v m14;
(3 - Ш0 v ш.5 v Ш7 v mg v Ш9 v Ш12;
(4) - Ш0 v m2 v ш.7 v ш.9 v ши v Ш12;
(5 _ Ш0 v Ш1 v m2 v m3 v ш.4 v ш.5 v
vm6 v ш.7 v Ш8 v Ш9 v шю v mn v Ш13;
(3 - m1 v m3 v m4 v m6 v m12;
66
РИ, 2006, № 2
(7) - m0 v m1 v m2 v m3 v m4 v m6 v m8 v vm9 v m10 v m12.
Полученные значения функции представляем в соответствующих клетках восьмиэлементной карты с соседним кодированием по переменным подмножества Xi = {х5ХзХо> , приведенной на рис. 3.
--------------------- Хз
-------------------- X
mo - m3 —E mo - m3 —E m2 mo —E m3 —E m2
m4 mu m7 - - - m7 - - m5 m7 - - - m7 mo
- тіз mi4 mi2 - - - - mi3 - mi4
- mo mii mio ms - - - ms mo - - - - mii mio
mo - - b m2 mo mi m3 bJ m2 mo mi m3 b m2 mi m3 b
- - m7 - m4 m5 m7 mo m4 - - mo m4 - - mo
mi - - - mi2 mi3 - - mi2 - - - mi2 - - -
- mo mii - ms mo - mio ms mo - mio - - - -
Хб
Рис. 3. Область определения заданной функции, сжатая по четырем переменным
Минтермы в каждой клетке карты размещаем в форме шестнадцатиэлементной дизъюнктивной матрицы с соседним кодированием координат её элементов. Каждый элемент матрицы является местоположением минтерма с соответствующим индексом. Так же, как и в первом варианте, комментарий к процедуре выделения правильных конфигураций опускаем, записывая только его результаты в виде номеров клеток, образующих эти конфигурации, и соответствующие им простые импликанты:
(3.1.5.7) - (mo v m8)Xo = Х4Х2Х1Х0;
(3) - (m5 V m7)X5X3X0 = X6X5X4X3X1Xo;
(4,5) - (m2 V mo ^5X3 = X6X5X4X3Xi;
(3>7) - (mi2 V m8)X3Xo = X6X3X2XiXo;
(2) - (m14 V m2 V m6 V m10 )X5X3X0 = X5X3X2X1X0 ; (2>0) - m13X5Xo = X6X5X4X2X1X0 ;
(4A6,7) - m12x5 = X6X5X4X2X1;
(4,0,1,5) - m7X3 = X6x4X3x2x1;
(5) - (m13 v m0 v m1 v m4 v m5 v vm8 v m9 v m12)x5X3x0 = x5X3X2x0;
(3>7) - (m9 V mg)x3Xo = X6X4X3X2Xo;
(7,5) - (mM v ms v mo v m2)x5Xo = X5X4X1X0;
(0,2) - (m10 V m11)x5Xo = X6X5X4X2X0 ;
(6.7) - (m1V m3)x5X3 = X6X5X4X3X1;
(0,2) - (m3 v m7 )X5Xo = X6X5X2X1X0;
(U) - (m2 V m3)X3Xo = X6X4X3X2Xo;
(0,1A5) - m0X3 = X6X4X3X2X1;
(0) - (m4 v m5)X5X3Xo = X6X5X4X3X2X0;
(0 - m14X5X3X0 = X6X5X4X3X2X1X0 ;
(6,7) - (m4 v m6)x5X3 = X6X5X4X3X1;
(4,0)-(mu vm9)X3Xo = X6X4X3X1X0.
Минтерм m6 , представленный в клетке <5>, можно
покрыть двумя равноценными способами: первый -логической сумме взаимнососедних минтермов
m6 v m0 v m1 v m2 v m3 v m4 v m5 v m7, представленной в клетке <5>, соответствует простая импликанта
(mg v m0 v щ v m2 v m3 v m4 v mg v m7)x5X3x0 = X6x5X3x0; второй - логическую сумму четырех минтермов m6 v m0 v m2 v m4 включаем в конфигурацию, образованную клетками <5,1>, которой соответствует импликанта (m6 v m0 v m2 v m4)x5x0 = X6x5X1x0.
Как и следовало ожидать, и в этом варианте получили те же две минимальные ДНФ.
Сравнивая простые импликанты, полученные в первом и втором вариантах, убеждаемся в их полной идентичности, что подтверждает достоверность проведенных процедур.
Кроме того, нетрудно заметить, что номера выделенных правильных конфигураций первого варианта совпадают с индексами минтермов, образующих массив соответствующих конфигураций второго варианта, и наоборот - номера выделенных правильных конфигураций второго варианта совпадают с индексами минтермов, образующих массив соответствующих конфигураций первого варианта, что обеспечивает контроль корректности выделения правильных конфигураций и проведенных преобразований.
Полученные в первом и втором вариантах сжатия простые импликанты можно найти еще двумя способами. Один из этих способов основан на перемножении логических сумм соседних минтермов (или отдельных минтермов), полученных в первом и втором вариантах сжатия для соответствующих выделенных конфигураций. Другой способ основан на перемножении полученных логических координат правильных конфигураций. Эти два способа обеспечивают дополнительный контроль достоверности полученных при минимизации результатов.
В случае несовпадения результатов рассмотренные способы позволяют не только выявить это несовпадение, но и определить характер ошибки с последующим её исправлением.
РИ, 2006, № 2
67
Заключение
1. Научная новизна. Впервые предложен новый способ контроля достоверности результата минимизации, основанный на представлении и минимизации функций в точках сжатой области определения.
2. Практическая значимость. Поскольку сжатие области определения можно выполнить по различным переменным как по их числу, так и по сочетанию, то предоставляется возможность проведения процедуры минимизации в различных областях (средах) с различными исходными для минимизации данными, что уже при двукратной процедуре минимизации гарантирует достоверность результата. Кроме того, сжатие области определения упрощает процедуру минимизации в целом.
3. Сравнение с аналогами. Традиционные способы контроля основаны на дублировании процедуры минимизации. Они не гарантируют достоверности результата, поскольку минимизация проводится в одной и той же среде с одними и теми же данными, при которых вероятность одной и той же ошибки, приводящей к одному и тому же неверному результату, весьма велика. Однако при минимизации в различных средах с различными по форме данными вероятность ошибки в каждом из вариантов, приводящей к одному и тому же результату, практически равна нулю.
4. Одним из направлений дальнейших исследований является описание предложенного способа контроля в терминах структур данных и функций на языках высокого уровня.
Литература: 1. Уэйкерли Дж. Ф. Проектирование цифровых устройств, т. 1. М.: Постмаркет, 2002. 544с. 2. Соловьёв В.В. Проектирование цифровых систем на основе про-
УДК004.738.52:004.031
МЕТОД ОПИСАНИЯ ФУНКЦИОНАЛЬНОЙ СТРУКТУРЫ WEB-ОРИЕНТИРОВАННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
САЕНКО В.И.________________________________
Рассматриваются вопросы концептуального описания функциональной структуры web-ориентированных информационных систем. Предлагается метод описания таких структур и метод анализа функциональной достаточности спроектированных систем. Обсуждаются вопросы практической реализации для менеджмента систем.
1.Описание проблемы и анализ известных результатов исследований в области проектирования Web-ориентированных информационных систем
Современный уровень распространения информации предъявляет повышенные требования к условиям ее обработки информационными системами. Разрабо-
граммируемых логических интегральных схем. М.: Телеком, 2001. 646с. 3. Коробкова Е. Н. Графоаналитический метод минимизации полностью определенных логических функций в сжатых картах // Системи обробки інформації. Х: НАНУ, ПАНМ, ХВУ. 2002. Вип. (22). С. 288298. 4. Коробкова Е. Н. Два способа сжатия области определения логических функций и их приложение к нахождению минимальных ДНФ // Открытые информационные и компьютерные интегрированные технологии. Х.: НАКУ «ХАИ», 2003. Вып. 19. С. 245-255. 5. Рубанов ВТ, Коробкова Е.Н. Разработка алгоритма сжатия области логических функций // Труды современного гуманитарного университета. Белгородский филиал. Белгород: БФСГУ, 2000. Вып. 18. С. 105-112. 6. Коробкова Е.Н. Анализ табличного алгоритма сжатия области определения логических функций // Открытые информационные и компьютерные интегрированные технологии. Х.: НАКУ «ХАИ», 2003. Вып. 17. С. 42-54. 7. КоробковНТ, Коробкова Е.Н. Повышение достоверности минимизации логических функций //Радіоєлектронні комп’ютерні системи. Х.: НАКУ «ХАИ», 2006. Вып. 2. С. 24-31. 8. Лобанов В.И. Азбука разработчика цифровых устройств. М.: Горячая линия - Телеком, 2001. 192с.
Поступила в редколлегию 04.06.2006
Рецензент: д-р техн. наук, проф. Федорович О.Е.
Рубанов Василий Григорьевич, заслуженный деятель науки и техники РФ, д-р техн. наук, профессор, зав. кафедрой технической кибернетики Белгородского государственного технологического университета им. В.Г. Шухова. Научные интересы: системы автоматического управления и регулирования. Адрес: Россия, Белгород, ул. Костюкова, 46, тел. 25-98-21.
Коробкова Елена Николаевна, ст. преподаватель кафедры технической кибернетики Белгородского государственного технологического университета им. В.Г. Шухова. Научные интересы: проектирование цифровых систем обработки информации. Адрес: Россия, Белгород, ул. Костюкова, 46, тел. 25-98-21.
танная информационная система должна обеспечивать две главные цели:
а) быть востребованной (система может оказаться «мертвой»);
б) быть удобной для проведения менеджмента (manageable).
Часто оказывается, что первая цель недостижима из-за ошибок проектирования, т. е. система «не удобна» для пользователя. Вторая цель может быть «недостижима», так как сложно выделить основные характеристики системы, которые следует использовать в рамках менеджмента. Оба эти фактора свидетельствуют об ошибках на этапах проектирования. Поэтому развитие методов, позволяющих повысить результативность решения проектных задач на этапе разработки функциональной структуры системы, остается актуальной проблемой.
По отношению к web-ориентированным информационным системам может быть использован существующий аппарат концептуального и логического проектирования, например, [1,2]. В то же время построение
68
РИ, 2006, № 2
функциональной структуры для них более конкретизировано. Web-системы рассчитаны на обслуживание запросов пользователей. Идет борьба за пользователя.
Часто приходится сталкиваться с решениями разработчиков, которые оказываются очень неудачными. Например, сайт перегружен картинками и банерами, загружает очень большие страницы, плохо структурирован и т. п. Сегодня вопросы качества сайта становятся весьма актуальными. Для любого сайта важна объективная оценка того, насколько он удовлетворяет желаниям пользователя. Среди существующих концепций наиболее интересными в этой связи являются концепции CRM (Client Relation Management), например, [4], или концепции адаптивных систем [3]. Такие решения предполагают изменение конфигурации системы. Это в свою очередь может привести к нарушению функциональной целостности системы. Одним из путей решения этих про блем является использование специализированных систем менеджмента информационных систем (рис. 1). Но при этом возникает новая задача: разработка хорошо формализованных критериев и показателей качества функционирования системы. Для формирования таких показателей и критериев предлагается воспользоваться системой классификации, представленной в [5].
Представляется необходимым в дополнение к ним использование формализованных процедур описания функциональных структур системы. В [5] была предложена классификация web-ориентированных информационных систем. Предлагается использовать эту классификацию для формирования функциональной структуры. При этом принятое описание методологических принципов построения функциональных структур, например [1] и [2], не меняется.
2. Постановка задачи и описание объекта исследования
Цель исследования - рассмотрение вопроса описания функциональной структуры проектируемой информационной системы.
Описание объекта. Под термином “информационная система” (ИС) будем понимать системы, объектом деятельности которых является информация. При этом будем считать, что система имеет некоторое хранилище информации, называемое информационными ресурсами. Будем рассматривать только web-ориентированные системы (далее web-системы). Следовательно, хранилище информации размещается на удаленном ресурсе, доступ осуществляется по протоколу HTTP, результат запроса представляется в виде .html - файла. Кроме того, система имеет подсистемы, обеспечивающие доступ к хранилищу информации, выборку и интерпретацию информации. Будем считать, что по отношению к системе рассматривается два активных объекта - пользователь и собственник (см. рис. 1). Качество реализации функций контролируется со стороны специальной системы менеджмента и собственника системы. Качество доступа к ре-
сурсам зависит также от политики доступа, свойств сервера и среды передачи.
Рис. 1. Обобщенная структура взаимодействия с
информационной системой
Считаем, что рассматриваемые системы могут быть различного уровня завершенности, т.е. это могут быть разрабатываемые системы или уже разработанные, но требующие проведения сравнительного анализа. Это могут быть уже существующие системы, по отношению к которым проводится непрерывный менеджмент (наблюдение за состоянием). Во всех случаях будем считать, что исследуемую, разрабатываемую или наблюдаемую систему достаточно представить набором функций, которые она поддерживает. Функциональная структура всегда рассматривается как совокупность функций, связанных между собой [2].
Описание концепции представления системы. Будем полагать, согласно [5], что web-систему на концептуальном уровне можно характеризовать конфигурацией web-системы Str(webj), ее информационным наполнением Func(webj) и формой представления информации Des(webj):
System(webj)=<Str(webj), Func(webj), Des(webj)>.
В общем случае процедуры анализа и проектирования охватывают все аспекты структуры System(webj). Для менеджмента важной является функциональная составляющая, отражающая информационное наполнение системы. В статье будем рассматривать только аспект Func(webj).
Согласно классификации, предложенной в [5], и ее положениям имеем:
1) Система обладает свойствами в рамках некоторых признаков:
< Tw,Ew,Gw,Gu,F, М> , (1)
где TW - тип сайта (определяет основное функциональное назначение); EW - вид сайта (определяет форму реализации сайта в соответствии с некоторым типом); Gw - цели системы (цели, преследуемые разработчиками или собственниками системы); Gu - цели пользователя (цели, которые может достичь пользователь, работая с системой); F - функции системы (функции, обеспечивающие решение каких-либо частных задач); М - методы, реализующие функции
РИ, 2006, № 2
69
системы. В рассматриваемом контексте метод - это путь решения задачи обеспечения функции реальной системы. Метод представлен программным компонентом.
2) Для признаков (1) заданы классификаторыЛ
R(TW),R(EW),R(GW),R(GU),R(F),R(M). (2)
3) Наборы свойств, определяющие систему, будут представлены как
ti є R(Tw), ej є R(Ew),(gw1}e R(Gw),
{guj} є R(Gu), {fi} Є R(F), {mi} є R(M). (3)
4) Каждой web-системе может быть поставлен в соответствие набор определенных свойств:
P(webj) = (ti, ej, {gwi}, {guj}, {fi}, {mi}). (4)
В задачах менеджмента информационных систем проверяется соответствие реализации функций поставленным целям. Для этого надо сделать единое описание системы, позволяющее формализовать ее основные свойства.
Постановка задачи с учетом сказанного выше может быть сформулирована в следующем виде: разработать описание функциональной структуры информационной web-системы с учетом ее целей и функций (свойств) и определить пути использования этих описаний при оценивании качества спроектированной системы.
3. Метод описания функциональной структуры системы
Пусть система может быть представлена в соответствии с (1) - (3) и обладает набором свойств (4).
Очевидно, что графы связей между собой элементов этих свойств будут раскрывать функциональные особенности системы.
Предлагается рассмотреть двудольные графы Es(X,Y,L) связей, где X,Y - множества вершин, L -множество ребер графа, а вершинами могут быть наборы между ({gw}и {fi}), ({gu} и {fi}), ({mi}и {fi}). Схема формирования графа приведена на рис.2. Функциональная структура всегда рассматривается как совокупность функций, связанных между собой [2].
Утверждение 1. Двудольные графы Es(X,Y,L) будут определять функциональные структуры
Es(X,Y,L) , s=<syst, user, func>. (5)
Esyst связывает цели системы {gw} и функции {fi} и
показывает, насколько функционально обеспечена каждая из целей, какие из функций являются многоцелевыми, т.е. обеспечивают несколько целей, а какие специализированными (одноцелевыми). Все рассматривается с точки зрения собственника системы или разработчика. Оценивается полезность системы с их точек зрения.
Euser связывает цели пользователя {gu} и функции
{fi} и показывает, насколько функционально обеспечена каждая из целей пользователя. Очень важным является вопрос формирования классификатора этих целей и, особенно, выбор целей для рассматриваемой системы. Euser позволяет выявить наиболее используемые цели и наиболее используемые функции, а также оценить важность каждой функции.
Efunc связывает функции {fi} системы и методы {mi},
которые их реализуют. Efunc позволяет оценить степень реализуемости функций, т.е. какие именно методы реализуют определенную функцию. Вполне допускаются условия, когда один и тот же метод обеспечивает несколько функций и, наоборот, одну и ту же функцию обеспечивают несколько методов. Важно выявить плохо обеспеченные функции.
Утверждение 2. Функциональная структура может быть представлена в виде:
F.Str(web) = {Esyst, Euser , Efunc } , (6)
Esyst = (Xs,Yf,Ls),
E user = (Xu,Yf ,Lu) ,
Efunc = (Xm , Yf , Lf ) ,
Xs = {gwi} C R(Gw),Xu = {gui} C R(Gu),
Xm = {mi} c R(M), Yf = {fi} c R(F).
Выражение (6) будем называть функциональной структурой информационной web- системы.
На основании предложенной концепции можно сформулировать новое утверждение.
Утверждение 3. Функциональная структура может быть дополнительно представлена в виде набора функций и соответствующих методов для каждой цели или в виде набора методов и соответствующих функций, т. е.
Рис. 2. Схема формирования графов функциональной структуры
70
РИ, 2006, № 2
F.str(gwl) = {(fi,{m1,..mk}),(f2,{m1,.mk}),...(fq,{m1,.mk}) F-Str(gw2) = {(fi,{mi,..mk}),(f2,{ml,..mk}),...(fq,{m1,-mk})
F-str(gwx ) = {(f1,{m1 = . mk}),(f2,{m1= . mk}X . . . (fq,{m1= . mk})
F-str(gu1) = {(f1,{m1,..mk}),(f2,{m1,..mk}),---(fq,{m1, .mk}) (7) F-str(gu2) = {(f1,{m1,..mk}),(f2.{m1,..mk}),--(fq,{m1,.mk})
Rstr(guq) = {(f1,{mH . mk}),(f2,{m1’ . mk}X ■ ■ ■ (fq,{m1= . mk})
или
F.str(Xw) = {H ,{f,,. .fk }), (m2 ,{f1, ..fk })...., (mq ,{f1,.fk})} Fstr(Xu) = {(m1,{f1,.fk}),(m2,{f1,.fk})....,(mq,{f1,.fk})}
(8)
Такой подход позволяет строить процедуры контроля по каждой цели и формировать решения о возможности и необходимости расширения системы.
Метод описания функциональной структуры.
1. Выбираем структуру < Tw,Ew,Gw,Gu,F, М > .
2. Выбираем классификаторы:
R(Tw),R(Ew),R(Gw),R(Gu),R(F),R(M).
3. Определяем свойства системы:
P(webj) = (t1,eJ,{gw1},{guJ},{f1},{m1}).
4. Формируем согласно (6) структуру
F.Str(web) = {Esyst,
Euser, Efunc } .
5. Формируем структуры (7) по отношению ко всем целям.
5.1. На основании Esyst выбираем функции fi, инцидентные ребрам с какими-либо вершинами целей gwr. Для каждой выбранной функции fi формируем
набор методов mj, смежных с fi.
5.2. На основании Euser выбираем функции fi, инцидентные ребрам с какими-либо вершинами целей gur. Для каждой выбранной функции fi формируем набор методов mj, смежных с fi.
4. Метод оценивания функциональной достаточности или обеспеченности информационной системы
Для того чтобы охарактеризовать некоторым интегральным показателем информационную систему, предлагается использовать показатель «функциональной обеспеченности». Этот термин контекстно понятный, но сформулировать количественный показатель крайне затруднительно. В качестве такого показателя пред-
лагается использовать некоторую переменную, основанную на экспертных оценках качества функций информационной системы. При этом показатель рас-считыв ается отдельно для каждо й цели и для системы в целом.
Пусть для некоторой системы Syst формализована функциональная структура вида (7). Следовательно,
для каждой цели пользователяgui и системыgwi заданы соответствующе наборы обеспечивающих функций Fpi = {fj }p,p = {u,w}, i-номер цели. В рамках каждой цели (с учетом неформализованных вербальных требований) производится экспертная оценка качества реализации соответствующих функций {fj}. Каждой функции fj ставятся в соответствие экспертные оценки у Pi (f j ), где p = {u, w}, i - номер цели. Экспертная оценка формируется в соответствии со шкалой на рис. 3.
1 2 3 4 5
Очень „ Нормаль Очень
Плохо Хорошо
плохо но хорошо
Рис. 3. Шкала оценивания качества реализации функций
В итоге для каждой цели получаем набор оценок:
rpi = її pi (f1^ У pi (f2 M p = {u’w} .
Часть оценок неопределенна, так как не все функции обеспечивают каждую цель. Для того чтобы учесть этот факт, введем коэффициент, определяющий существование функции для конкретной цели rij = і1,0}, i -номер цели, j - номер функции.
Рассматривая усредненные оценки, можно дать характеристику функциональной обеспеченности для системы и ее целей. Например,
г pi =Er pi(fj)\Z rip>p ={u,w}, j=1 j=1
где k - число определенных функций; i - номер цели. Оценка у pi характеризует степень функциональной обеспеченности конкретной цели.
nn
Оценка у p = Y, У pi (f j) \ 'Z rj, p = {u, w} характеризует
i=1 i=1
степень функциональной используемости соответствующей функции в рамках группы целей, i - номер функции, n - число целей.
Оценка
k n k n
Yp = Ё ІУpi(fj)\Ё Ёij.p = (u,w>
j=1 i=1 j=1 i=1
РИ, 2006, № 2
71
характеризует функциональную обеспеченность си- нальной обеспеченности, представленные в п.5. Пусть
стемы в целом для группы целей. рассматривается уже завершенная система.
Для более точного оценивания функциональной обеспеченности системы предлагается для каждой функции задавать весовой коэффициент ее значимости
w ij , j - номер функции, i - номер цели, вместо
rij = {1,0}. Коэффициент Wij задается в интервале [0,1] в соответствии со шкалой на рис. 4.
О o' СО о" о"
С не овсем Ма важная важ 1ло Важ ная ная Оче важ нь ная
Рис. 4. Шкала оценивания значимости функции
Использование вербальных описателейупрощает процедуру формирования количественных оценок.
Показатели с учетом весовых коэффициентов запишутся так:
У pi = (Е wij У pi(fj))\ I wij, (9)
j=1 j=1
у p= (E wij у pj(fi))\ Z wij, (10)
j=1 j=1
yp = (E Zwijуpi(fj))\(Zw4Zwij). (11)
j=1 i=1 j=1 i=1
Итоговая оценка принимает значение в соответствии со шкалой (рис. 5), показывающей качество обеспеченности системы.
1 2 3 4 5
Слабо
обеспечены
Нормально
обеспечены
Хорошо
обеспечены
Рис. 5. Шкала оценивания качества обеспеченности системы
5. Метод анализа функциональной обеспеченности информационной системы
Анализ функциональной обеспеченности информационной системы предлагается осуществлять по трехэтапной процедуре:
1. Для системы формируется структура (7).
2. Для каждой функции задаются весовые коэффициенты w i,j .
3. На основании шкалы рис. 1 формируются оценки для каждой функции по каждой цели у Pi (fjH где p = {u, w}, i - номер цели.
4. Рассчитываются оценки уPi, уp, у p. Чем больше величина оценок, тем лучше функционально обеспечена система.
Оценивание осуществляет разработчик. Простота формирования экспертных оценок и весовых коэффициентов делает процедуру простой и легко реализуемой.
Метод проведения текущего анализа предназначен для получения ответа на вопрос, удобна ли система для пользователя? При этом значение показателя «удобности» может со временем ухудшиться. В качестве показателя используем оценки, предложенные в п.5. Но оценивание производит пользователь по специальной электронной анкете.
Метод может быть представлен в следующем виде:
1. Пользователю предлагается имеющийся список целей пользователя в соответствии с (7). Пользователь либо выбирает цель из списка, либо добавляет новую, либо игнорирует выбор цели и переходит к функциям.
2. Для выбранной цели предлагается список функций из (7). Пользователь ставит свою экспертную оценку у Pi (f j) для каждой функции.
3. На основании полученных оценок рассчитываются показатели у Pi, у p, у p.
4. Далее принимается решение о доработке методов для какой-либо функции. Пользователь может добавить свою новую функцию. В этом случае формируется новый набор методов для этой функции.
Метод проведения прогностического анализа предназначен для получения ответа на вопрос, что следовало бы улучшить в системе? В качестве основных показателей используются оценки, предложенные в п.5. Оценивание полностью аналогично «текущему анализу»:
1. Оценивание производит пользователь.
- предварительный;
- текущий;
- прогностический.
Метод проведения предварительного анализа предназначен для получения ответа на вопрос, хорошо ли работает система? Используются оценки функцио-
2. На основании полученных результатов функции делятся на три группы: не требующие доработки (А); требующие незначительной доработки (В); требующие значительной доработки или новые (С).
3. Оценивая долю функций группы С, их важность и степень трудоемкости их доработки, делаем выводы о функциональных возможностях информационной системы.
72
РИ, 2006, № 2
6. Примеры реализации системы
Особенности использования разработанных методов покажем на примере анализа некоторой web-информационной системы, т. е. на примере экспертного оценивания качества проектирования. За основу возьмем с некоторыми дополнениями пример из [5].
Пусть разработана информационная web-система типа «Стол заказов» t; = Tw =< коммерческий >, вида ei = Ew =< электронный _ магазин > . Основное назначение - продажа товара через Интернет. Пусть сайт не позволяет делать on-line покупки.
Пусть для рассматриваемой web-системы заданы классификаторы R(Tw),R(Ew),R(Gw), R(GU), R(F), R(M), определяющие наборы свойств:
ti є R(Tw),ej є R(Ew),{gwi} є R(Gw),
{g4} є R(Gu),{fi} є R(F),{mi} є R(M). Фрагмент классификаторов приведен в табл. 1,2 из [5].
Будем полагать, что для сайта можно определить свойства, соответствующие характеристикам предложенной в [5] классификации:
P(webj) = (ti,ej,{gwi},{guj},{fi},{mi}).
Пусть информационная система реализует следующие цели, функции и методы:
gw = {gw1,gw2,gw3} = {<обеспечить заказ товара>, <подобрать товар>,<привлечь покупателя>};
gu = {gu1> gu2 > gu3 >gu4} = {<заказать товар>,<найти
искомый товар>,<выбрать лучший>,<найти все однородные товары>}.
{f1 ,f2,f3,f4,f5} = {<предоставление списка товаров>, <регистрация клиентов>,<регистрация заказов>, <анкетирование>, <процессинг счетов>};
{m1,m2,m3,m4,m5} = {<отображение дерева продукции>, <обработка регистрационных форм>, <обработка форм заказа >, <сохранение в базе данных>,-<защищенное соединение с банком>}.
Векторы, составляющие функциональную структуру, будут определены как Xs = {gwi}, xu = {gm}, XM = {mi}, Yf = {fi}. Для рассматриваемой web-системы имеем графы Esyst = (Xs,Yf,Ls),
Euser = (XU,YF,LS) , Efunc = (XM,YF,LS) . Матрицы
смежностей представлены в табл. 3, 4: Gw - цели системы (цели, преследуемые разработчиками или собственниками системы), Gu - цели пользователя (цели, которые может достичь пользователь, работая с системой).
В соответствии с (7) web-систему можно представить в виде набора функций и связанных с ними методов, сгруппированных в соответствии с целями в частности, для нашего примера функциональная структура для целей системы будет иметь вид
F.str(giW) = {(fi,{mi,m3}),
(f2,{m2,m4}),f3,{m3,m4}};
F.str(g2w) = {(fi,{mi,m3})};
F.str(g3w) = {(fi, {mi, m3}), (f 4,m2)}. Фрагмент вербального представления полученного результата приведен в табл. 5. Аналогично можно получить результат и для целей пользователя. Это главный результат для проведения менеджмента конфигурации системы. Этот результат важен, когда требуется заменить метод и необходимо оценить влияние этой замены на функциональную целостность.
На этапе предварительного анализа проведена экспертиза. Для каждой функции в рамках каждой цели определим экспертные оценки и зададим весовые коэффициенты. Матрицы экспертных оценок и весовых коэффициентов для целей системы и пользователей приведены в табл. 6,7.
В итоге оценка разработчика - <хорошо> (табл. 6). Таким образом, разработчик считает, что разработал систему очень хорошо и пользователь оценит ее на <хорошо> (табл. 7). В итоге делаем выводы, что для целей пользователя система обеспечена хорошо, для целей системы система обеспечена хорошо, в целом система обеспечена хорошо.
Таблица 2
Классификатор функций и методов web-ориентированных систем
Вид, E Lw Функции web-системы , (F) Методы, реализующие функции web-системы, (М)
EG Предоставление списка товаров, услуг. Регистрация клиентов. Регистрация заказов. Процессинг карт, счетов. Анкетирование. Отображение дерева продукции Обработка регистрационных форм. Организация e-mail подтверждений Обработка форм заказов. Сохранение в БД различных форм. Защищенные соединения с банковскими системами Отображение анкет, обработка результатов
Таблица 1
Классификатор целей web-ориентированныхсистем
Тип, Tw Вид, E bw Цель web-системы (Gw) Цель пользователя web-системы (Gu)
TC EG Продать товар. Заказать товар. Купить конкретный товар (услугу). Заказать товар (услугу)
Подобрать товар. Привлечь клиента. Подписать клиента. Найти требуемый товар (услугу) по категориям. Выбрать лучший товар. Найти все смежные товары (услуги)
Примечание. TC-тип системы, “коммерческие системы”; EG-вид системы, “Электронный магазин товаров или услуг (B2C )”
РИ, 2006, № 2
73
Таблица 3
Значения соответствий функций и целей
Yf Цели Xs Цели Xu
gw1 g w2 gw3 gu1 gu2 gu3 gu4
f1 1 1 1 1 1 1 1
f 2 1 0 0 1 0 0 0
f3 1 0 0 1 0 0 0
f 4 0 0 1 0 0 0 0
Таблица 4 В соответствии с табл. 9 формируем три группы функций:
Значения соответствий функций и методов
Xm Yf
f1 f 2 f3 f 4
mx 1 0 0 0
m 2 0 1 0 1
m з 1 0 1 0
m 4 0 1 1 0
m5 0 0 0 0
Таблица 5
А={ 0 }, В={^2 f3 f4 },
С={ f 5 f6 f7 }.
В третьей группе добавлены новые функции f5 f6 f7 .
Чтобы система была привлекательной, следует доработать функции группы В и разработать функции группы С.
Классификатор функций и методов web-ориентированных систем
Цель системы Функции web-системы , (F) Методы, реализующие функции web-системы, (М)
Продать товар Предоставление списка товаров, услуг. Отображение дерева продукции Обработка форм заказов.
Регистрация клиентов Обработка регистрационных форм. Сохранение в БД различных форм.
Регистрация заказов Обработка форм заказов. Сохранение в БД различных форм.
На этапе текущего анализа экспертизу проводит пользователь. Пусть результаты представлены в табл. 8.
Пусть цели gu2, gu3,gu4 были недостаточно хорошо обеспечены функционально. Это нашло отражение в коэффициентах табл. 8. Причиной является плохая реализация функций. В итоге пользователь оценил систему на <нормально>.
На этапе прогностического анализа используем экспертные оценки пользователя табл. 8. Пусть пользователь добавил дополнительные функции: <выбор товара по фильтру>, < выбор лучшего товара по признаку>, < выбор группы товаров по фильтру > (табл. 9).
В итоге пользователь оценил систему на < неудовлетворительной
Таким образом, фактическая оценка системы - Неудовлетворительной Эта оценка соответствует реальному восприятию пользователя по отношению к раз-р аботанной системе.
Пример. Например, до 2005 года почтовый сайт е.ukr.net считался одним из самых удобных и функционально обеспеченных. Он поддерживал стандартные функции почтовой системы, аналогичные другим системам, mail.ru, yahoo.mail.com,.... В то же время был очень экономным с точки зрения трафика (малый объем загружаемых страниц). Эти показатели способствовали притоку очень большого числа пользователей. В 2005 году разработчики добавили новую цель системы - поддержка рекламы и соответствующие функции: использование банеров, флеш, анимации. Сделано это было очень плохо, без анализа аналогичных решений в других сайтах.
В результате резко увеличился трафик загрузки сайта, увеличилось время доступа к информации, лишние графические картинки стали раздражать пользователя и в итоге резко упала оценка качества удобства работы с системой для пользователя, т.е. в цели <работать с удобной е-mail системой> функция Поддержка дружественного интерфейса> получила -1. Если учесть, что таких систем в мире много, то эта функция для пользователя была самой важной. Результат очевиден.
Для экспертных оценок в этом случае можно использовать не только оценку пользователя функции Поддержка дружественного интерфейса>, но и просто характеристику пользователя - «раздражают картинки», «мешает работе рекламная информация» и т.п.
Таблица 6
Значения экспертных оценок и коэффициентов
Yf У wf w 1J
gw1 gw2 gw3 gw1 gw2 gw3 v w У fj
f1 5 5 4 1 1 1 4.7
f2 5 0 0 1 0 0 5
f3 5 0 0 1 0 0 5
f 4 0 0 4 0 0 0.5 4
У wi 5 5 4 5 5 4.7 4.9
{ у wi }={5,5,4.7}, { УW }={4.7,5,5,4}, уsw =4.9 74
Таблица 7
Значения экспертных оценок и коэффициентов
Yf Оценки У uf w VV iJ
g u1 gu2 gu3 gu4 gu1 gu2 gu3 g u4 уu
f1 4 4 4 4 1 1 1 1 4
f2 4 - - - 1 - - - 4
f3 4 - - - 1 - - - 4
f4 -
У ui 4 4 4 4 4 4 4 4 4
{ уui }={4,4,4.4}, { Уu }={4,4,4,-}, уu=4.
РИ, 2006, № 2
Таблица 8
Значения экспертных оценок и коэффициентов
Yf Оценки у. i Коэфф. w.
gu1 gu2 gu3 gu4 gu1 g u2 g u3 g u4 У fj
f1 4 2 2 2 1 0.5 0.5 0.3 2.9
f 2 4 - - - 0.1 - - - 4
f3 4 - - - 0.1 - - - 4
f4 -
У ui 4 2 2 2 4 2 2 2 2.5
{ уui }={4,2,2,2}, { Уu }={2.9,4,4,-}, у^=2.5.
Они переносятся вручную в показатели для функции <поддержка дружественного интерфейса^ Так как разработчик не желает отказываться от своей новой цели, то возникает проблема переработки сайта, но время упущено.
7. Выводы
Рассмотрены вопросы концептуального описания функциональной структуры информационной системы. К основным результатам можно отнести представление функциональной структуры в виде (6), (7) и (8), метод ее формирования, метод анализа функциональной обеспеченности. Результаты могут быть отнесены к научным, получены впервые.
Сравнение с аналогами. Отличие предлагаемого метода от аналогичных состоит в том, что для большинства подходов проектирования учитываются оценки проектировщика и не оценивается система с позиции пользователя. Более того, после сдачи системы ее доработка редко осуществляется на основании требований пользователя, не учитываются цели и экспертные оценки пользователей [ 1,2]. Предлагаемый метод позволяет связать между собой методы и функции в зависимости от целей системы или пользователей.
Общее описание научного результата можно представить в следующем виде:
- впервые предложен метод расширенного описания функциональной структуры информационной системы в виде графов, связывающих цели, функции и методы. Такой подход позволяет более продуктивно проводить анализ web-систем, выявлять слабую функциональную обеспеченность проектируемой или спроектированной системы и, как следствие, сделать систему более жизнеспособной и привлекательной;
- впервые предложен метод оценивания функциональной обеспеченности, как рейтинговое оценивание степени востребованности функций при достижении соответствующей цели. Такой подход позволяет сни-
Таблица 9
Значения экспертных оценок и коэффициентов
Yf Оценки у. u Коэфф. w.
g u1 g u2 gu3 g u4 gu1 g u2 g u3 g u4 Уu
ft 4 2 2 2 1 0.5 0.5 0.3 2.85
f2 4 - - - 0.1 - - - 4
f3 4 - - - 0.1 - - - 4
f 4 0-
f 5 1 1 1
f6 1 1 1
f7 1 1 1
У ui 4 1.5 1.5 1.5 4 1.33 1.33 1.23 1.97
{ у ' }={4,1.33,1.33,1.23},{ уU }={2.85,4,4,0,1,1,1},
u У U=1.97
зить затраты на выявление недоработок системы и сократить сроки их устранения.
Практическая значимость результатов состоит в том, что их можно успешно использовать в реальном менеджменте сложных современных систем. Это в свою очередь может способствовать сокращению финансовых затрат, связанных с перепроектированием систем. Кроме того, предложенное описание структуры позволяет осуществлять менеджмент готовой системы, так как для нее существуют формализованные свойства.
Пути дальнейших исследований. Предполагается рассмотреть вопросы использования предложенной концепции функционального описания систем при проектировании новых систем
Литература: 1. Информационные системы и технологии. Россия. Саратов, СГУ, 2003.280с. http://www.stu.ru/inform/ index.htm 2. Левыкин В.М. Концепция создания распределенных информационных управляющих систем //АСУ и приборы автоматики. 1998. №108.С.32-41 3. PerkowitzM, Etzioni, O. Adaptive Web Sites: An AI challenge. In: Proceedings of the IJCAI-97, 2000. 4. META Group. Integration: Critical Issues for Implementation of CRM Solutions. 208 Harbor Drive, PO Box 120061, Stamford, 2001.
5. Саєнко В.І., Биканов В.А., Саєнко І.А. Метод класифікації web-орієнтованих інформаційних систем // Радиоэлектроника и информатика. 2006. №1. С.80-88.
Поступила в редколлегию 30.05.2006
Рецензент: д-р техн. наук, проф. Кучеренко Е. И.
Саенко Владимир Иванович, канд. техн. наук, профессор кафедры информационных управляющих систем ХНУ-РЭ. Научные интересы: менеджмент компьютерных сетей. Увлечения и хобби: садоводство. Адрес: Украина, 61166, Харьков, пр.Ленина, 14.
РИ, 2006, № 2
75
ИНФОРМАЦИОННЫЕ
УДК[519.95+518.5] :622.692.4
ПРИМЕНЕНИЕ GPS- И GSM-ТЕХНОЛОГИЙ НА ПРЕДПРИЯТИЯХ ПО ГАЗОСНАБЖЕНИЮ И ГАЗИФИКАЦИИ
ДУДОЛАД А.С., СЕДАК В.С.,
ДЗЕШУЛЬСКИЙ Е. С._________________________
Рассматривается необходимость и практическое применение автоматизации системы управления газораспределительными сетями на базе геоинформационных систем с использованием таких новых технологий как радиомодемная связь на базе GSM-модемов и GPS-навигации.
Введение
Система газоснабжения г. Харькова - одна из крупнейших и старейших в Украине. Только сеть распределительных газопроводов составляет более 4 тыс. км, из которых 360 км эксплуатируются более 40 лет.
Трудности эксплуатации газовой сети в большом промышленном центре связаны также и с разветвленной сетью метрополитена, трамвайных и железнодорожных путей, из-за работы которых часто возникают аварии на газопроводе вследствие электрохимической коррозии.
Целью данного исследования является повышение оперативности и эффективности управления в аварийной ситуации для обеспечения надежной и безаварийной работы газовой сети. В первую очередь это относится к Службе аварийно-восстановительных работ (САВР), которая должна в кратчайшие сроки прибыть на место аварии, локализовать её и устранить угрозу для населения, возникшую вследствие утечки газа.
В ходе исследования решаются следующие задачи: обнаружение местоположения аварийной ситуации, рациональная локализация аварийного участка, планирование оптимального газораспределения.
1. Использование информационно-графической системы в ОАО «Харьковгоргаз»
В последнее время многие компании, работающие в области производства коммуникационного оборудования, предлагают навигационные устройства (GPS-навигаторы), которые используют спутниковую глобальную систему позиционирования Global Position System (GPS). Модуль GPS-навигатора может быть встроен в ноутбук, карманный ПК и в более простые устройства. Соответственно, набор функций у различных устройств с GPS-навигатором варьируется в достаточно широком диапазоне. Однако предлагае-
мые аппаратно-программные решения не удовлетворяют условиям нашего предприятия в сфере применения устройств данного класса.
Для решения этих задач на предприятии ОАО «Харьковгоргаз» внедряется информационно-графическая система (ИГС). На базе этой системы предусмотрена организация ряда автоматизированных рабочих мест, в том числе для диспетчеров САВР. Это позволяет более оперативно, эффективно и качественно решать основные задачи управления в случае возникновения аварийной ситуации на газопроводе.
I этап - задача обнаружения местоположения аварийной ситуации. Наиболее часто - это звонок от населения. Использование ИГС на этом этапе позволяет быстро зарегистрировать заявку, а также оперативно получить наиболее полную и достоверную информацию об аварийном участке, как справочную, так и графическую - на мониторе у диспетчера после ввода адреса появляется карта города заданного масштаба с изображением аварийного участка газопровода. В дальнейшем программа позволяет вести, закрывать и хранить заявки, а также получать по архиву заявок разнообразную статистику (количество и характер повреждений, выполнение работ, рекомендации по замене участков труб или ЭХЗ и т.д.). Критерий управления на данном этапе - минимальное время обнаружения аварийной ситуации.
На II этапе решается задача рациональной локализации аварийного участка. Информационно-графическая система предоставляет диспетчеру сведения о запорной арматуре, отключающей данный участок от сети газоснабжения с минимальным ущербом. Диспетчер может получить информацию об отключенных потребителях на локализованном участке, паспортные данные закрываемых запорных устройств, карту города с расположением запорной арматуры, где цветом отмечены аварийный участок газопровода, а также его участки, отключенные от системы газоснабжения после локализации аварии.
Однако при работе в условиях крупных городов существуют объективные обстоятельства, затрудняющие действия САВР по локализации аварийной ситуации и связанные с разветвлённостью и состоянием автомобильных дорог, а также с интенсивностью движения транспорта в городе, которая, возрастая до пиковых значений, приводит к «пробкам» на дорогах.
Очевидно, что в таких условиях необходимо решение задачи выбора оптимального маршрута следования к месту аварии или к запорным устройствам на газопроводе и, в соответствии с этим, оперативный выбор ближайшего автомобиля с бригадой аварийной службы.
Обслуживание такой структуры как система газоснабжения города требует наличия парка специализированной автомобильной техники. Координация действий автомобилей САВР возможна только при наличии эффективной диспетчерской системы, содержа-
76
РИ, 2006, № 2
щей данные о состоянии и положении интересующей техники в городе в режиме реального времени.
2. Программно-аппаратный модуль определения положения автомобилей САВР
На нашем предприятии создан пилот-проект подобной диспетчерской системы. Основой для графического отображения положения автомобилей САВР служит ИГС, используемая в ОАО «Харьковгоргаз».
Положение автомобилей САВР определяется с помощью спутниковой системы GPS (рис. 1).
Рис. 1. Использование спутниковой глобальной системы позиционирования (GPS)
При помощи системы сотовой связи информация о местоположении передаётся диспетчерской системе (рис. 2).
Рис. 2. Положение автомобилей САВР в диспетчерской программе на карте города
Каждый автомобиль должен быть о борудован приёмником системы GPS, приёмо-передающим устройством, поддерживающим стандарт GSM, и программно-аппаратным модулем для координации взаимодействия устройств, входящих в состав комплекса (рис. 3).
В рамках разработанного на предприятии пилот-проекта определения положения автомобилей САВР был построен специализированный программно-аппаратный комплекс (схема). В составе комплекса GPS-навигатор Magellan, GSM-модем Siemens C35i, ноут-
РИ, 2006, № 2
бук с установленным коммуникационным программным обеспечением, программный модуль, обеспечивающий управление комплексом и взаимодействие с информационно-графической системой. Концепция построения комплекса и необходимое программное обеспечение были разр аботаны сотрудниками отдела АСУП ОАО «Харьковгоргаз».
I
Рис. 3. Аппаратура комплекса
Программное обеспечение состоит из двух модулей. Один из них предназначен для использования непосредственно в автомобиле САВР и осуществляет считывание навигационных данных, получаемых от GPS-навигатора, и передачу их через GSM-модем в диспетчерскую.
Другой модуль устанавливается в диспетчерской, его функциями являются приём навигационных данных по GSM каналу, преобразование и передача их информационно-графической системе.
Разработанное программное обеспечение использует протокол NMEA (National Marine Electronic Association) для считывания навигационных данных, получаемых GPS-навигатором.
Передача данных между подвижным объектом и диспетчерской осуществляется по протоколу GSM (Global System for Mobile). Соответственно, разработанное программное обеспечение реализует протокол обмена данными при помощи GSM-модема.
При разработке программной части были использованы принципы объектно-ориентированного программирования; применялись современные CASE (Computer Added Software Engineering) средства.
Такие сущности пространства решаемой задачи как GPS-навигатор, GSM-модем, информационно-графическая система представлены программными классами, содержащими необходимый набор методов и полей для реализации интерфейса этих объектов. Программные модули используют механизм многопоточности для обеспечения удобства и надёжности их использования.
В перспективе планируется заменить дорогостоящий ноутбук, входящий в состав комплекса, на специализированный микроконтроллер. Контроллер будет построен на базе однокристальной микро-ЭВМ, обладающей необходимым набором встроенной периферии и достаточным быстродействием. Такая замена позволит повысить надёжность всего комплекса и при этом значительно уменьшит его стоимость.
77
Внедрение этих технологий позволит повысить эффективность управления в аварийных ситуациях, а также оперативность устранения аварий, следовательно - повысить безопасность и стабильность работы газовой сети, снизить ущерб от прямых потерь газа и уменьшить затраты на работу автомобилей САВР.
3. Планирование газораспределения
Наконец, III этапом при управлении в аварийной ситуации является задача планирования газор аспределения в сети по критерию минимума суммарных избыточных давлений на входах потребителей (для структуры сети, возникшей в результате локализации аварийного участка). Для решения этой задачи в ИГС реализована возможность моделирования с закрытием запорной арматуры на газопроводах и гидравлического расчета для полученной модели газовой сети. Если же в результате аварии возник дефицит газа, то на этом этапе решается также задача управления региональной газовой сетью в условиях дефицита газа.
Выводы
Таким образом, для обеспечения непрерывной и безаварийной подачи газа потребителям в требуемых количествах и в заданном диапазоне давлений необходима автоматизация системы управления газораспределительными сетями на базе геоинформационных систем с применением новейших технологий.
Научная новизна исследования: в ОАО «Харьковгор-газ» впервые в Украине создана диспетчерская система, которая, используя технологии GSM-связи и GPS-навигации, позволяет осуществлять мониторинг
всех автомобилей САВР одновременно и отображать их местоположение на электронной карте города.
Практическая значимость работы связана с актуальностью внедрения данных технологий не только в крупных городах, но и в региональных газовых хозяйствах с большой протяженностью газовых сетей и р азветвленной транспортной сетью.
Перспективы исследования: планируется модернизация комплекса для повышения его надёжности и уменьшения стоимости, что позволит широко применять его для решения диспетчерских задач в газовых и других аварийных службах.
Литература: 1. Макаренко А. И., Седак В. С. Рациональное управление газовым хозяйством области. К.: ИСМО, 1998. С. 12-15. 2. Серпинас Б. Б. Глобальные системы позиционирования. М.: ИКФ “Каталог”, 2002. С.23-24, 37-41. 3. RichardB. Langley. RTKGPS. // GPS World. 1999. №1 С.7. 4. Якунин К. А., Акулов В. А., Корнев Ю. С. Математические модели местности в задачах управления движением наземных транспортных средств с применением GPS-технологий // Вестн. Самар. гос. техн. ун-та. сер. физико-математические науки. 2002. № 16. С. 6. 5. Вахтанов А. С. Исследование компьютерных технологий обновления топографических карт по материалам космической съемки (масштабы 1:25 000 - 1:200 000): Автореф. дис. ... канд. техн. наук. М., 2003. С. 20-22. 6. КарсянМ. Г., Неграфонтов С. А. Мобильные ГИС. Опытная эксплуатация ArcPad. // ARCREVIEW. Современные геоинформационные технологии. 2001. № 1. С. 4. 7. Баделин А. В. Мобильные ГИС на геологическом факультете Санкт-Петербургского государственного университета // ARCREVIEW. Современные геоинформационные технологии. 2005. № 4. С. 17.
Поступила в редколлегию 21.04.2006
Схема
78
РИ, 2006, № 2
Рецензент: д-р техн. наук, проф. Самойленко Н. И.
Дудолад Александр Стефанович, председатель правления ОАО «Харьковгоргаз».Научные интересы: новые
технологии в нефтегазовой отрасли. Адрес: Украина, 61000, Харьков, ул. Октябрьской Революции, 57/59, к.т. 80572-23-47-14.
Седак Владимир Степанович, канд. техн. наук, доцент, профессор, первый заместитель председателя правления ОАО «Харьковгоргаз» - главный инженер. Научные
УДК 519.688
ПРИМЕНЕНИЕ МЕТОДОЛОГИИ ОБЪЕКТНО-ОРИЕНТИРОВАННОГО ПРОЕКТИРОВАНИЯ С ИСПОЛЬЗОВАНИЕМ ЯЗЫКА UML
ЕСИЛЕВСКИЙ В.С., НЕТЁСА П.С.,
КЛИМОВА М.В._______________________________
Рассматриваются вопросы проектирования распределенных информационных систем реального времени. Обсуждается методология объектно-ориентированного проектирования, основанная на применении языка моделирования UML. Предлагаемый подход обеспечивает решение проблем создания программного обеспечения на этапе проектирования, что повышает надежность создаваемых сложных программных систем.
1. Введение
В настоящее время создание программного продукта во многом является искусством. Это означает, что конечный результат всегда зависит от профессиональных качеств исполнителей и множества случайных факторов. В силу того, что требования к программному обеспечению (в отличие от предметов искусства) чаще всего конкретны и строги, а результат проектирования должен быть предсказуем, разработчики ищут промышленные технологии проектирования.
Ответом на эти вопросы на сегодня является методология объектно-ориентированного анализа, проектирования и программирования, предложенная основоположниками этого подхода - Бучем, Рамбо и Дже-кобсоном. Основным ее звеном является представление о жизненном цикле программного обеспечения, в котором выделяются отдельные этапы, причем этап анализа и проектирования отделен от этапа программирования.
Проектирование представляет собой способ графического представления проекта, понятного как эксперту, так и программисту. Методология определяет не только перечень графических диаграмм и способы их оформления, но и процесс его создания. Способ графического проектирования программного обеспечения доведен до стандарта в виде унифицированного языка моделирования - UML (Unified Modeling Language).
интересы: новые технологии в нефтегазовой отрасли. Адрес: Украина, 61000, Харьков, ул. Октябрьской Революции, 57/59, к.т. 8-057-783-94-73.
Дзешульский Евгений Станиславович, заместитель начальника службы аварийно-восстановительных работ ОАО «Харьковгоргаз». Научные интересы: средства коммуникации, мультимедийные технологии. Адрес: Украина, 61000, Харьков, ул. Октябрьской Революции, 57/59, к.т. 8-057-733-07-19.
Целью данной работы является описание процесса анализа и проектирования распределенных систем реального времени, а также исследование применимости для этой цели методологии объектно-ориентированного моделирования на основе языка UML.
В силу большого объема полной проектной документации в статье в качестве базового объекта проектирования используется только одна из подсистем информационно - аналитической системы, разрабатываемой для коммунального предприятия «Харьковкому-ночиствод». Это - автоматизированная подсистема сбора и обработки телеметрической информации с группы канализационных насосных станций городских служб водоотведения на основе радиомодемной GSM-связи
2. Постановка задачи
Неотъемлемой частью системы коммунальных служб городского хозяйства является подсистема водоотведения (канализация) и очистки сточных вод. В ее состав входит канализационная сеть, коллекторы и насосные станции (КНС), обеспечивающие подачу сточной воды для очистки.
Насосные станции, рассматриваемые как активная часть канализационных сетей, являются сложными технологическими объектами с большим количеством параметров контроля и управления. В настоящий момент функционирование насосных станций обеспечивается персоналом в ручном режиме с использованием локальных измерительных средств. Для увеличения эффективности их эксплуатации особенно актуальной является задача централизованного сбора и обработки телеметрической информации с группы насо сных станций.
Формально задача может быть поставлена следующим образом: разработать в графической нотации языка UML проект распределенной системы реального времени централизованного сбора и обработки информации, реализуемый средствами объектноориентированного языка программирования в рамках многозадачной операционной системы.
Принципиальным является то, что множество КНС распределено географически по территории города и информация от них необходима в реальном времени. Для этого нужно создать распределенную информационную систему реального времени, в которой предполагается наличие компьютеров или микроконтроллеров на стороне насосных станций (нижний уровень)
РИ, 2006, № 2
79