Math-Net.Ru
All Russian mathematical portal
L. F. Kashirova, Design of monitorable automata. I, Avtomat. i Telemekh. , 1983, Issue 11, 141–146
Use of the all-Russian mathematical portal Math-Net.Ru implies that you have read and agreed to these terms of use
http://www.mathnet.ru/eng/agreement Download details:
IP: 118.70.116.132
November 3, 2022, 17:03:50
У Д К 519.713
ПОСТРОЕНИЕ К О Н Т Р О Л И Р У Е М Ы Х А В Т О М А Т О В . I КАШИРОВА Л. Ф .
(Томск)
Рассматривается некоторый класс контролируемых автоматов. Пока
зывается, что любой конечный автомат преобразуется в автомат, при
надлежащий этому классу. Строятся верхние оценки на длину контроль
ной последовательности в синтезируемых автоматах. Формулируются условия, при которых полученные оценки ниже известных.
Введение
В связи с широким использованием дискретных устройств в системах управления становится актуальной проблема повышения их надежности.
Один из аспектов этой проблемы — построение устройств с заранее задан
ными свойствами, упрощающими решение задачи контроля [ 1 ] . В данной работе рассматривается конечный, возможно частичный, автомат А.
Предлагается метод преобразования автомата А в контролируемый авто
мат А, реализующий А ж имеющий относительно короткую контрольную последовательность, построенную по методу Хенни [2]. Преобразование осуществляется путем расширения входного, выходного алфавитов и мно
жества состояний автомата А и некоторым доопределением функций пе
реходов и выходов в расширенной области. Предел расширения автомата определяется тройкой чисел (s, у, Z), где s, v — дополнительное число сим
волов входного и выходного алфавитов, / — множества состояний. Строят
ся верхние оценки на длину контрольной последовательности в преобра
зованных автоматах, оценки оказываются ниже известных [3] при .*о<] ( ( 3 / 2 ) + т + ( 1 / 2 - т г ) ) ] l o g
2r c [ - ( ( ™ / 2 ) + i ) [,
где t
0— наибольшая по абсолютной величине разность между полусте
пенью исхода и захода некоторого состояния графа переходов автомата А, т — мощность входного алфавита, п — мощность множества состояний ав
томата А. Рассмотренные теоремы положены в основу алгоритмов синтеза контролируемых автоматов, используемых при построении системы СКА (синтеза контролируемых автоматов). Исходной информацией для систе
мы служит описание автомата А в форме таблиц переходов и выходов и тройка чисел (s, v, Z), выходной — автомат Л, снабженный контрольной последовательностью.
1. Определения и обозначения
Пусть А=<Х, Q, У, if), ф> — конечный автомат, где X, Y — входной, вы
ходной алфавиты, (^—множество состояний, г|), ф — функции переходов и выходов, определенные на парах (xq)^XXQ со значениями в Q и Y соот
ветственно.
Обозначим через Ш{т,п,р) множество автоматов, имеющих |X\ =т,
| Q| =тг, | 7 | =р. Положим г==] logp п[, где ] к[ — наименьшее целое число, большее или равное к.
Автомат А является подавтоматом автомата А (обозначение А^*А), если Х^Х, У ^ Г , (?, функции г|), ф являются ограничениями функций
ф на множестве XXQ.
Здесь и в дальнейшем через s будем обозначать объект, множество, функцию, граф, полученные в результате преобразования исходного объ
екта, множества, функции, графа, заданных S.
141
Если А^А, будем говорить, что автомат А реализует А.
Обозначим через X* множество слов в алфавите X, включая пустое слово Л.
Распространим функции я|>, ср на пары (aq)^XXQ индукцией по длине слова а : если а=$х и i|)([J, q) уже определено, то я|)(а, д ) = ф ( х , i|>([5
9q))
rф(а, д)=<ф(Р, q)<(){x, г|)(р, q)).
Положим i|)(A, q)=q, ф(Л, q) = Л . Через х
кобозначим далее слово хх ... х из к букв х.
Последовательность а^Х* назовем контрольной последовательностью автомата А, если она с точностью до изоморфизма отличает автомат А от любого другого автомата с п состояниями.
Пусть
GA=<Q,Г> — граф переходов автомата А, <я
г-, Г
г> — подграф графа
GA,где
n ^ Q ,IV={(g, q'):{q, д ' И
гЛ { д ,
q'}=7ii},ш(я<) - суммар
ное число дуг в графе <я*, Г
г>.
Зададим разбиение п={п
ия
2, . . . , тс
8} на Q, где
Я г= { д 1г,g
2\ ,
) яг| = / С г ,
г = 1 ,
2 , . . . , 5 .В дальнейшем индекс сверху при букве q будет
обозначать номер блока разбиения, которому принадлежит д, индекс сни
зу — номер состояния в блоке, а при отсутствии верхнего индекса — номер состояния в множестве Q. Иногда индексы при q будем вообще опускать.
Обозначим через
С ? А ( Я ) = < Я , ГЛ>мультиграф, в котором пара (я
г-, щ)^
е Г
я, если
(1) Э д е я Д д
,е я , ( ( д д
,)
еГ ) ,
из вершины Яг в вершину щ проведено столько дуг, сколько существует пар со свойством ( 1 ) .
Обозначим через U
+, U~ полустепени исхода и захода вершины g* гра
фа G
A, £o=max \ t
t~\; £
г +( я ) , tc(n) — полустепени исхода и захода вер-
г
шины я* графа
< ? А ( Я ) .Последовательность из к букв
T = T I T2. . . T&некоторого алфавита назо
вем циклической r-последовательностыо длины к, если в множестве слов;
Z (%) = { T( i - l) ( A ) + l T i ( f e ) + i . . . Т( г+ г_2) ( , & ) + 1 / £ = 1 , 2, . . . , к}
все слова попарно различны. Запись а (к) обозначает выражение a mod к..
Множество Т циклических г-последовательностей в алфавите 7 назо
вем r-множеством, если
(2) V%,%'^T(z{%)(\Z(%
r)=<fi),
и r-множеством автомата А, если верно (2) и сумма \Z{%) | по те=Г рав
на гг.
Определим классы автоматов % ( я ) , й ( я , Т): Ле=91(я), если на множе
стве Q состояний автомата А существует разбиение я = { я 1 , я
2, . . . , я
8}
?, такое, что граф
GA(TC)эйлеров.Автомат Ае=§{(я, Г ) , если А^Щп) и в ал
фавите Y существует г-множество Г = { т
1, т
2, , х
1} автомата А, связан
ное с я взаимно-однозначным отображением / :
Я г= / г^ | я г | = | 2 ( г О | .
Каждому блоку я
г- разбиения я можно сопоставить циклическую г-по- следовательность x
j, число слов в которой совпадает с числом состояний блока Яг. К а к покажем в дальнейшем, эти свойства позволяют легко пре
образовать автомат А в контролируемый автомат А>А.
Некоторому А^%(п) сопоставим множество П разбиений множестваQ
rтакое, что для любого я ^ П граф G
A(я) эйлеров.
Рассмотрим алфавит 7 . Обозначим через f = { 7
l r7
2, . . . , Y
k} множе
ство подмножеств из 7 , такое, что
VY^Y((7-7) Д
I Y<| < m i n (р(г-1))).Множеству Y^Y сопоставим множество слов Z^Z, где Z — множество слов длины г в алфавите 7 , Z
{— множество слов, состоящих из букв мно
жества 7
г:
У а е ^ ( { а , / / < г } = 7 0 .
142
Пусть a=aia
2...а
г— некоторое слово из Z, Кг, тогда Р
г(#) —a
i+i.. „ .. .a
rai... a
t. Для произвольных а, Ъ определим множество К
аЪ:
Определим отношения .=>• на Z
2: если а
2... a
r=bi... frr-i,
=^&, если существуют слова с \ с
2, . . . , cY такие, что а - ^ с
1- ^
2- * - . . . ->-Ь. Пусть а —некоторое слово из Z, а
г— слово с номером I, щ — б у к в а
гзанимающая 7-ю позицию в слове а, щ будем называть у-й компонентой слова а. Буквы, обозначающие слова множества Z, будем использовать как с верхними индексами, так и без них.
Аналогично верхний индекс при букве т, например х°, обозначает ц и клическую г-последовательность множества Т, имеющую номер v. T j - ~ буква, занимающая /*-е место в последовательности т.
2. Построение автоматов, имеющих минимальную длину контрольной последовательности
Рассмотрим автомат Л ^ й ( т , п, р).
Г.
Теорема 1. Если А^'91 (я, Т), то автомат А преобразуется в контроли
руемый автомат Л^ЗЦттг, тг, р ) , реализующий Л, длина L контрольной по
следовательности которого удовлетворяет следующему неравенству:
(3) ^ < ^ + г ( | я | +
( т - 1 ) Я )+
( ^ - 1 ) ^ | я г 12, iГДе 7 2 = 7 2 , 7 7 1 = 7 7 1+ 1 , Г = Г , Я = Я .
Доказательство теоремы дано в приложении.
Пусть А^%(п), построим контролируемый автомат Л ^ Л , где А<^$1{п
7 Т), длина контрольной последовательности которого, задаваемая выражением (3), минимальна.
Предложение 1. Автомат Л ^ Э ( я ) , если и только если на множестве состояний Q существует разбиение я такое, что граф G
A(n) — связный и (4) V r t
iSr t ( £ ( * } - * J ) = 0 ) ,
Доказательство дано в приложении.
Величина выражения (3) зависит от значения суммы | я
г|
2по я * е я
ггде я = я . Используя предложение, отыщем разбиение я е Ц , для которого величина (3) принимает минимальное значение.
Сопоставим А тройку объектов (Q, Р, РУ, где Q — множество состоя
ний автомата А, Р — одноместный предикат, определенный на множестве всех подмножеств из Q; предикат принимает истинное значение на любом S^Q, таком, что сумма (tj
+—tf) по q^S равна нулю; функция F сопо
ставляет каждому разбиению я на Q число, равное сумме | я
г 2| по t==l,
2 , . . . , | я |. Требуется найти такое разбиение я множества Q на классы,принадлежащие области истинности предиката Р , которое минимизирует функцию F. Сформулированная задача есть известная Т-задача, алгоритм, решения которой предложен в работе [4]. Пусть я — решение рассмотрен
ной Г-задачи, тогда искомый автомат А>А, Л = < Х , Q, У, <р>, где Х =
==XU{a}, Q=Q, Y=YUY', алфавит У расширяется настолько, чтобы суще
ствовало r-множество Т автомата, связанное с разбиением я отображени
ем /, описанным выше. Функции <р на множестве {a}XQ определены следующим образом:--ф(а, д / ) = д < ж ) ( *
4) , <р(а, д / ) = т / , i, l<z={l, 2 , . . . , , | я | } при условии, что Я г = / т Д очевидно, я = я , Л^31(я, Т ) .
Пусть^Л§£Щя, Т), построим контролируемый автомат Л, реализующий Л, Ле§1(я, Т), величина выражения (3) для которого минимальна.
14а
Рассмотрим произвольное разбиение jt={jti,
' Э Т 2 5. . . 9я
8} на множестве состояний Q, пусть G
A(n) — связный граф.
Предложение 2. Если Уп^к ^ ^ £ г ) < И л ;
г1 j , то существует ав- томат Л^§1(ттг+г;, тг, /?), реализующий Л, такой, что А^%(я).
Доказательство дано в приложении.
Теорема 2. Любому автомату A^%{тп, п, р) можно сопоставить контро
лируемый автомат Л ^ Л , Л^31(я, Т), Ле§1(т?г, /г, /?), где m=m+t
0+l, п=п, р = т а х (тг, /?), £
0=niax | {U
+—tc)\, длина контрольной последовательности
г
которого удовлетворяет следующему неравенству:
(5) L^2n+2(t
0+m)n.
Доказательство дано в приложении.
В работе [5] аналогичная оценка приводится для полностью опреде
ленного автомата Л.
Построим автомат А^Л, для которого величина выражения (3) мини
мальна. Из теоремы 2 следует, что величина m<m+t
0+l, где Z
0=max \
г
—t{~\. Для г = 1 , 2 , . . . , t
0сопоставим автомату Л тройку чисел Г
г==<(?, Р
{, F
{}, где Рг — одноместный предикат, определенный на множестве под
множеств из Q, предикат Р
гпринимает истинное значение на любом
^Q, таком, что сумма (t^—tf) по q^S меньше или равна г!*!?!. Функция Ft сопоставляет каждому разбиению я = { я 1 , я
2, . . . , n
s} множества Q на классы, принадлежащие области истинности предиката Pi, число Ф
г, рав
ное произведению (m+i) на сумму | я ^ |
2по / = 1 , 2 , . . . , | я | . Требуется найти разбиение я на множестве Q на классы, принадлежащие области истинности предиката Pi, доставляющие минимум Ф
гфункции Р
{. Поиск искомого разбиения сводится опять к решению Г-задачи [ 4 ] . Для каждого г = 1 , 2 , . . . , t
0найдем Ф
ги соответствующее разбиение я
( г ). Пусть Ф
0=
= т т Ф
г, ввиду теорем 1, 2 существует контролируемый автомат А,
г
длина контрольной последовательности которого не превышает величины:
(6) n+f(\n
(o)\ + (m-l)n)+0
o,
где п = п , 77г^77г+1+£0, Г < Г .Рассмотренный метод синтеза контролируемого автомата Л ^ Л сво
дится к построению автомата Л (я, ? ) = Л . Построение осуществляется путем расширения входного, выходного алфавитов автомата и некоторым доопределением функций переходов и выходов в расширенной области.
И з теорем 1, 2 следует, что контролируемый автомат Л ^ Л существует при s<t
0+l, Z=0, y < m a x (р, п)—р.
ПРИЛОЖЕНИЕ Доказательство теоремы 1, Поскольку А^%(тс, Т), в алфавите Q существует раз
биение я={зт1,
л
2 1. . . , л
8} ,
порождающее эйлеров граф GA(TL). Каждому блоку яг=— { ^ Л #2*, Qk*} разбиения л можно сопоставить циклическую г-последовательность т*=хф2^..%1*, где Ki=fxv. Пусть 2 = (X, Q, 7, \ ф>, X = X U { а } , <?=<?, 7 = 7 , функ
ции ф,
ф
совпадают с функциями ф,ф
на парах (xq)^XXQ. На парах{хд)^{а}п\
функции ф, ф определены следующим образом:
(7) ф ( а , qji)=qu+i){ki)i
ф(а,
Яз*)=х.?,* = l , 2 , . . . , s .
Из способа доопределения функций ф, ф следует, что Ае=$1(п, Г), где я = я , Т=Т.
Из выражения (7) нетрудно заметить, что в каждом подграфе (я*, Гг> графа (л) существует простой контур, содержащий все вершины множества лг-, дуги которого помечены символом а, и верно следующее:
Vgz, qt^Q(l=£t-»q)(ar, qi)^(p(ar, qt)),
4 4
т. е. аг является диагностической последовательностью [2] (так как г = г, здесь и далее используем символ г). А — сильносвязный, минимальный автомат, имеющий
144
диагностическую последовательность, следовательно, А — контролируемый автомат [2^ 6]. Пусть g0 ~ начальное состояние А , Р=ЖиПц... я<„ - эйлеров контур графа
( я )у qo^itn. Положим Ро=ф, Р * 'в{ я \ - / / < * } , каждой дуге ( я *я сопоставим вару (хзадающую переход из состояния блока я^- в состояние блока я ^+ 1, где qj&Ki., ap(xj, qj)=n,ij+l. Построим контрольную последовательность р=Р±р2... Pv, удов
летворяющую условиям, сформулированным в [ 2 ] . Обойдем контур Р. Пусть, прой
дены вершины лг 1, Л г2, . . . , Л ц _1 контура Р ж построены последовательности р4, Р г , . . . . . . , р*_!, рассмотрим следующую вершину яг> Сопоставим дуге: {лц, лц+1) переход
(xt, qt) ж построим последовательность р*. Если вершина лц еще не встречалась при обходе Р, то яг^ Рг и Р*=РПР*2Р*3, отрезок $ti==cikt+r проверяет множество переходов
{(а.» Q.Y- соответствующих циклической части графа (я*, I V , что легко дока
зать с помощью леммы 3 из [ 7 ] . Длина р*1 не превосходит величины (г+&*), где
%1=\лц\. Подпоследовательность р*2 состоит из w отрезков Р*Д Р * Д . . . , Р«ад2, которые проверяют множество переходов М={(х, q)\ x e l \ { a } , | M | = w , pf f 2, i = l , 2 , . . . . . . , н ? - проверяет переход (я*., qti)s=M, pf.2= asZ i . ar [ 7 ] , as переводит автомат 4 в со
стояние д^, длина as не более (kt—l), длина р*2 не превышает величины w(kt+г).
Последовательность р*3 переводит автомат А в состояние блока я ^+ 1 и проверяет переход (я*, qt), соответствующий дуге (я^, я ^ ) графа G% ( я ) , pf 3= aM#far, где аи
устанавливает А в состояние qt, длина р*3 н е более ( kt+ r ) . Если вершина лц встре
чалась при обходе контура Р, то Лц^Рг ж множество переходов между состояниями
•блока Лц проверено одной из последовательностей, построенной на предыдущем шаге, поэтому р=р*3 проверяет один переход (xt, qt). Из построения следует, что последо
вательность p=Pip2... Рг> проверяет множество переходов автомата Л и в силу тео
ремы в работе [6] является контрольной последовательностью А . Подсчитаем сум
марную длину р. Пусть, VjSXXjiij - множество переходов из состояний множества пц, |7з|==^+м7(Ягл-) + * у+( я ) < ( 7 л — г д е к$=\лц\ совпадает с числом переходов в циклической части графа <я^., Г^>, м(лф - м о щ н о с т ь множества Mj—{(x, q):
х^Х\{а}, деЯ г Д , ^+( я ) - число переходов из состояний блока я^. в состояния дру
гих блоков. Длина подпоследовательности, проверяющей переходы множества Fj, не превышает следующей величины:
( ^ + г ) + ю ( ^ ( Лл+ г ) + ^ + ( я ) ( ^ + | 0 ,
просуммировав по /, получим следующее выражение:
« * •
+ + ^ w ( ni3) (к5 + г)+ ^ * «л+ ( я ) (к, + Г)<П+8Г+'
+ у%(го-1)(£
д+г)^ kj\
j=i j=i Учитывая, что | я | = $ , \л^\=%з, получаем выражение (3). Теорема доказана.
Доказательство предлооюения 1. Пусть А^Щл), тогда УЯг^я(*г""(я:)=^+(я)), т. е. сумма 13~) по д /еяг- , равная {и+(л) + ю(лг)) — (гл(я) + н?(Яг))=0, следова
тельно, верно (4). Пусть верно (4), тогда сумма (^+—tf) п о д /еяг- , равная ( ^+( я ) + +w (Л{)) —
(tc
(я) + w (Яг)), есть ноль, следовательно, t{+(я)—tr
(я) и GA (я) - эйлеров граф, поскольку он связный граф. Предложение доказано.Доказательство предложения 2. Определим А = (Х, Q, У, ф, ф), где Х=Х[)ХГ, Q=Q, У = У , \X'\=v, А>А. Вычислим равное сумме *Г) п<> Если $г<0, то функцию ф доопределим на (#(, д)€=Х'ХЯг так, что существует ровно Si переходов в состояния других блоков. Если 5г> 0 , то существует ровно Si переходов в состояния множества я* других блоков. Такое доопределение всегда возможно, поскольку сумма
\si\ по 5г<0 равна сумме SJ по S J > 0 и меньше или равна vQ. Из способа доопределе
н и я следует, что для любого л^л сумма tf). по q^Лг равна нулю, в силу пред
ложения 1 граф <7А(Я) эйлеров, Т . е. А<^$£(я) при я = я . Предложение доказано.
яб. Автоматика и телемеханика, № 11 145
Доказательство теоремы 2. Пусть Q, Y\ ф, ф>, где X=*X\)X'[}{a,},-Q==Q±
У = Т и Г , |Х'|=*о, У=тах(?г, р), А>А. Положим <?=><?W', V q^Q'{(ti+-tc)<ti)v
V g ^ C ? ' W - * r ) > 0 ) .
Определим частичные функции г|), ф на ларах (я, q) ^X'XQ таким образом, что из каждой вершины q^Qr исходит \U+-t-\ дуг, в каждую вершину # ге( ? " заходит
| £ j+- t / - | дуг, что возможно, поскольку сумма \ti+-t~\ по qi&Q' равна сумме
\tj+-tj-\ по q^Q" и меньше или равна U\Q\. Очевидно, что А^%(п) и л=С?, полагая Т={Уи У^--">Уп}л 'ФО*, qi)=qi, Ф(а, qi)=yu i = l , 2 , . . . , и, получаем контролируемый автомат А=51 (л, Г ) . Из теоремы 1 следует, что длина L контрольной последователь
ности удовлетворяет неравенству (5). Теорема доказана.
ЛИТЕРАТУРА
1. Основы технической диагностики / П о д ред. Пархоменко П. П. М.: Энергия, 1976.
2. Hennie F. С. Fault detecting experiments for sequential circuits.— In: Proc. 5th Annu.
Symp. Switching Circuit Theory and Logical Desing Princeton. N. Y., 1964, p. 95—100.
3. Fujiwara H., Nagao I., Sasoo Т., Kinoshita K. Easily testable sequential machines with extra i n p u t s . - IEEE Trans. Comput, 1975, v. C-24, p. 82:1-826.
4. Агибалов T, П., Беляев В. А . Метод сокращенного обхода дерева поиска и его при
менение в синтезе интегральных схем.— Управляющие системы и машины, 1977,
№ 6, с. 9 9 - 1 0 3 .
5. Каширова Л. Ф. К синтезу контролируемых автоматов.— В кн.: IV Всес. совещ. п о технической диагностике. М.: Ин-т проблем управления, 1979, с. 149-151.
6. Богомолов А . М.у Барашко А . С, Грунекий И. С, Эксперименты с автоматами. Киев:
Наукова думка, 1973.
7. Murakami S., Kinoshita К., Ozaki Н. Sequential machines capable of fault diagnosis.—
IEEE Trans. Comput., 1970, v. C-19, p. 1079^1085.
Поступила в редакцию- 4.III.1982, DESIGN OF MONITORABLE AUTOMATA. I
K A C H I R O V A L . F .
A class of monitorable automata is considered. A n y finite automaton is shown t o be transformable into one of this class. The upper bounds are obtained, the control f o r sequence of automata being designed. Conditions are formulated under which the resul
tant estimates are below the conventional ones.
446