Доклады БГУИР
2011 № 2 (56)
УДК 512.563:519.863
БУЛЕВА АЛГЕБРА В РЕШЕНИИ ОПТИМИЗАЦИОННЫХ ЗАДАЧ. РЕСУРНАЯ ОПТИМИЗАЦИЯ ОЦЕНКИ ПРОЦЕССА ПРОЕКТНЫХ РЕШЕНИЙ ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ РЕАЛЬНОГО ВРЕМЕНИ
А С. КОБАЙЛО*, А.Т. ПЕШКОВ, Д А. ФЕЦКОВИЧ
Белорусский государственный технологический университет Свердлова, 13а, Минск, 220006, Беларусь
Белорусский государственный университет информатики и радиоэлектроники П. Бровки, 6, Минск, 220013, Беларусь
Поступила в редакцию 15 октября 2010
Представлен метод решения оптимизационных задач для процесса проектирования сложных технических систем, основанный на элементах булевой алгебры. Предлагаемый метод ресурсной оптимизации проектируемой системы позволит эффективно решать проблему выбора оптимального по заданным критериям варианта системы на ранней стадии синтеза.
Ключевые слова: оптимальный вариант системы, характеристическая булева функция, логико-комбинаторный метод.
Введение
В соответствии с одним из центральных положений теории синтеза вычислительных систем реального времени [1], для каждого вектора из множества векторов назначения должна выполняться процедура определения множеств свертываемых вершин.
Теоретическая часть
Предположим, что граф вычислительного алгоритма (ГВА) или нагруженный граф (так называемый граф базовой структуры) содержит дуги (г, k) , (], k), (I,п), (т, п) , (5, t), (q, t) (рис. 1), при этом в соответствии с выбранным на одном из более ранних этапов синтеза вектором назначения гк = гп = г , т. е. ук о Azp < а , уп о zi, у( о zi, где ук , уп , у( - вершины
ГВА, Zj - ]-е функциональное устройство (ФУ) из заданного набора Z.
Тогда возможны следующие варианты множества свертываемых вершин:
Sol-1) = 0 - пустое множество (отсутствие свертки);
= ^,п);= ^,Г);= (I,п);= (k,п,I).
В общем случае справедливо следующее утверждение: если существуют (г, k), (I,п), ..., (5,¿) и k, п,..., t с S, то возможно преобразование (г,^——^(г,у),(у,k) ; (/,п)—— >(/,w),(у,п);...;(5,t)—— >(5,р);(р,t) , (у,w,р) = S1, т.е. добавленные вершины образуют новые множества свертываемых вершин, каждой из которых назначаются функциональные устройства (ФУ) одного типа (один экземпляр а^к\). ДВ - операция добавления вершины (см. рис. 1)
Рис. 1. Фрагмент ГВА
Ж Мккм„
N =!П
м>=1 т=1 k=1
!/(k!(Ктк - k)!
(1)
где м> - мощность множества векторов назначения, Мм> =[Sw ] - мощность множества множеств свертываемых вершин для вектора назначения Rw , Кт - мощность т-го множества свертываемых вершин вектора Rw .
Рис. 2. Фрагмент преобразованного ГВА
Расчет количества альтернативных вариантов проектируемой системы по выражению (1) показывает, что даже при простейших математических моделях системы это число может достигать значений с порядком 10 и выше.
Таким образом, одной из важнейших задач, решаемых при синтезе вычислительной системы, является задача выбора из множества работоспособных синтезированных вариантов оптимального по заданным критериям.
Отметим, что большинство известных математических методов решения оптимизационных задач являются достаточно сложными и трудоемкими. Выбор оптимального варианта в простейшем случае может решаться при следующей постановке оптимизационной задачи [2]:
РЬ ^ тт, Azn < а,
(2)
где Ь - вектор булевых переменных, обозначающих отдельные элементы, соответствующие функциональным устройствам из множества Z; Р = ( р1,..., рп ) - вектор весов элементов zi е Z , Лгр < а - система ограничений для атрибутов проектируемого объекта.
Задача формализации этого важнейшего этапа проектирования сложных технических объектов (выбор оптимального варианта структуры) может быть решена с помощью аппарата характеристических булевых (логических) функций.
Установим взаимнооднозначное соответствие между функциональными элементами (ФЭ) и аргументами характеристической функции zi о bi.
Характеристической булевой функцией (ХБФ) множества альтернативных вариантов называется булева функция f (Ь1,...,Ьп), простая импликанта которой равна единице тогда и
только тогда, когда соответсвующие ее аргументам Ь11,...,Ь" функциональные элементы z11,..., z1n представляют собой правильный вариант структуры. Тогда перечисление всех вариантов структуры проектируемого объекта можно представить в виде дизъюнкции всех простых импликант ХБФ, т.е. сокращенной дизъюнктивной нормальной формы (сокр. д. н. ф.) [3]:
F (ЬЛ..., Ьп*п ) = / V / V .../п ^л Ь^л... л Ьот(1)) v(ьl(2) л Ь2(2) л... л Ь« л Ь^ л... л Ьн <2) V V... V Ь^е))
V
Операцией конъюнкции связываются переменные, включаемые совместно в один из вариантов структуры, функция дизъюнкции соответствует операции выбора одного из альтернативных вариантов.
С ростом числа альтернативных вариантов целесообразно использовать особенные скобочные нормальные формы (о ск. н. ф.) характеристических булевых функций. Для ее формирования достаточно выполнить операцию факторизации и использовать правила булевой алгебры, в частности:
X л X л ... л X = X . (3)
В качестве примера рассмотрим минимизацию произвольной логической функции:
F(Ь1(9),...,Ь^(<г)) = (Ья л ... лЬр{1 л Ь ® льг л ...Ь/2) л
л... л ь/3)) V (Ьа(1)л... л ЬР(1) л Ьг(1)л Ь(1)л Ьу л... л Ьг(1) л лЬ,( 1 л... л Ъ.(2)) V (Ь}1) л... л Ьп{ 1) л Ъ.(1 л Ь,( 1 л... л
] I ' ^ и р I ]
лЬ/2) л Ь ... л Ь/1 л Ь/1 л...) V (Ьа л... л Ьп л Ь/1 л Ь/1 л
. У . ] а Р . .7
лЬ„... л ...Ь/1) л... л Ь,( 1)л ...Ь/1) л... л Ь,( 1) =
/ . ] ^ 7
Ьа л Ьп л... л Ьу л [(Ьг(1) л Ьг(2) л Ьг(3))v (Ьг(1) л Ь;(1) л Ьг(1) л л
лЬ ) V л Ь,.(1) лЬ 2 л л Ь,.(1)) V(Ь>' л Ь,.(1) л Ъ 1) л \ 7 7/ 7 .
{Д} лЬ;(1) л Ь/ 1)Ь7«)] = Ьа: Ьп л... л Ьу л [(ь/ 1 л Ь/2) л Ь/
л (Ь/ ^л Ь7 ( 1)л Ь/ (Ь/ ^л Ь7 «)].
Данное выражение содержит не исчерпывающее количество всех возможных вариантов из .МР - полного перебора; некоторые импликанты могут дублировать друг друга, представляя, тем не менее, разные варианты структуры.
Тогда алгоритм выбора оптимального варианта структуры может быть следующим. 1. Установление взаимно-однозначного соответствия между ФУ проектируемой системы и булевыми переменными zi о Ьi.
2. Представление множества альтернативных вариантов структуры проектируемой системы в виде дизъюнкции всех простых импликант характеристической булевой функции (ХБФ), т. е. сокращенной дизъюнктивной нормальной формы (сокр. д. н. ф).
3. Преобразование сокр. д. н. ф. ^ о. ск. н. ф.
4. Переход к арифметической форме представления альтернативных вариантов путем замен в формуле ХБФ:
- замена в формуле ХБФ - bi ^ pi (рг - вес ФУ, соответствующего г-й булевой переменной);
- замена логических функций на арифметические: конъюнкция ^ арифметическое сложение: Ь1 л Ь^ ^ р1 + р}-;
- дизъюнкция ^ определение минимального значения: bi V Ь ■ ^ тт(pi, р ■).
5. Определение тт(Р^) - минимального значения весовой функции (функции, полученной в результате выполнения шага 5).
6. Идентификация варианта структуры в соответствии с результатом выполнения шага.
7. Проверка варианта структуры на соответствие второго критерия из (2) - Azp < а . Если условие выполняется, перейти к 8, в противном случае - к 9.
8. Исключить из ХБФ импликанту, соответствующую текущему варианту. Перейти к 4.
9. Считать текущий вариант системы искомым решением. Оценку эффективности предлагаемого метода проведем на примере: Предположим, для некоторой проектируемой системы сокращенная дизъюнктивная
нормальная форма (сокр. д. н. ф.) имеет вид:
^ ( ^ ,..., ^ з ) — ^ Zз Zx з Z7 VV Zl Zз Zl з Zg VV Zl Zз Zl 3 Zl 2 Z6 ^^^ Zl Zз Z6 Zl 1Z7
В результате преобразований сокр. д. н. ф. с использованием законов алгебры логики, получим ХБФ в особенной скобочной форме:
f ( zi3 ) = ziz3 [ zi3 ( z7 V z8 V z12 z6 ) V z6 z„ ( z7 V z8 V ^ V z12 ) V
VZ10 V Z12) V ( z4 V z5 z2 V z9 )( z7 V Z8 V Z12 Z6 V Z10 )] .
Пусть веса функциональных элементов, выражение в условных единицах, равны
Р1 = ^ Р2 = 5, Рз = 4, Р 4 = 7, Р5 = 8, Рб = ^ Р7 = 6, Р8 = 4, Р9 = 6, Р10 = 4, Р11 = 5, Р12 = 3. Тогда, чтобы зафиксировать варианты подструктур, получающихся в процессе вычислений, значениям весов приписываются сложные индексы в виде подформул соответствующих подструктур. Ради краткости в этих подформулах указываются только индексы переменных -zt (i = 1,...,n) вместо самих переменных. Тогда можно записать:
min Pf = Рз + min(P13 + min ( Р7 , Р8, Р12 + Рб ) , Рб + Р11 + min ( Р7 , Р8, Рl0, Р12 ) , min ( Р 4, Р5 + P2, Р9 )+ min ( Р7, P8, Р12 + P6, Р10 )) =
= 43 + min (313 + 48,3б + 5„ + 48v10 , 69 + 48V10 ) = = 43 + min ( 713Л8 ,12бл11(8v10) ,109(8v10)) = 43 + 713л8 = 113л13л8 .
Таким образом, минимальный вес р = 11 имеет вариант z1z3 z13 z8.
>/ Z1Z3 Z6 Z11Z^ >/ Z1Z3 Z6 Z11Z10 Z1Z3 Z6 Z11Z12 Z1Z3 Z4 Z7 >/ Z1Z3 Z4 Z^ >/ Z1Z3 Z4 Z12 Z6
>/ Z1Z3 Z4 Z10 Z1Z3 Z5 Z2 Z 7 Z1Z3 Z5 Z 2 Z^ Z1Z3 Z5 Z2 Z12 Zб ^^ Z1Z3 Z5 Z2 Z10 Z1Z3 Z 9 Z7 >/
Z1Z3 Z9 Z8 Z1Z3 Z9 Z12 Z6 Z1Z3 Z9 Z10 .
В процессе получения оптимального решения выполнено суммирование 13 величин и взятие минимума от 17 величин. При решении задачи на основе сокр. д. н. ф. требуется выполнение 69 и 19 операций суммирования и взятия минимума соответственно. Очевидно, что с увеличением сложности проектируемых систем эффективность метода, заключающаяся в снижении трудозатрат на поиск оптимального варианта, будет проявляться более значительно (в отдельных случаях на несколько порядков).
Выводы
Метод оценки проектных решений на основе аппарата ХБФ, позволяющего минимизировать исходные представления множества альтернативных вариантов проектируемой системы с помощью правил и законов булевой алгебры, приведет к:
- снижению трудоемкости поиска оптимального варианта решения и требуемого объема памяти для хранения альтернативных вариантов за счет замены сложных математических расчетов элементами алгебры логики;
- сокращению расходов энергоресурсов, временных и финансовых затрат на проектирование систем; экономии при проектировании систем за счет снижения ресурса процессорного времени, обусловленного использованием наименее ресурсоемкой операции - сложения;
- улучшению технических и экономических характеристик проектируемых систем.
THE BOOLEAN ALGEBRA IN THE DECISION OF OPTIMISING PROBLEMS. THE RESOURCE OPTIMIZATION OF THE ESTIMATION OF PROCESS OF DESIGN DECISIONS OF COMPUTING SYSTEMS OF REAL TIME
A S. KOBAYLO, A T. PESHKOV, D A. FETSKOVICH
Abstract
The method of the decision of optimizing problems for process of designing of the difficult technical systems, based on elements of boolean algebra, is presented. The offered method of resource optimization of projected system will allow to solve effectively a problem of a choice optimum by the set criteria of a variant of system at an early stage of synthesis.
Литература
1. Кобайло А.С. Теория синтеза вычислительных систем реального времени. Минск, 2010.
2. Анкудинов Г.И. Синтез структуры сложных объектов: Логико-комбинаторный подход. Л., 1986.
3. ЖилякН.А. // Труды БГТУ. Сер. VI. Физ.-мат. науки и информ. 2008. Вып. XVI. - С. 125-128.