Key words: expert system interface, analysis of neuroprocessor structures, TypeScript, JavaScript, decision making, product model.
Kostrov Boris Vasilevich, doctor of technical science, professor, head of chair, ko-strov. b. vaevm.rsreu.ru, Russia, Ryazan, Ryazan state radio engineering University,
Ruchkin Vladimir Nikolaevich, doctor of technical science, professor, v. ruchkin a rsu. edu. ru, Russia, Ryazan, Ryazan State University,
Fulin Vladimir Andreevich, senior teacher, v.fulin®,365. rsu. edu. ru, Ryazan, Ryazan State University,
Pikulin Dmitry Romanovich, postgraduate, [email protected], Ryazan, Ryazan State University
УДК 004.274
БУФЕРИЗАЦИЯ ДАННЫХ В СИСТЕМАХ УПРАВЛЕНИЯ РОБОТАМИ
Е.В. Ларкин, А.В. Богомолов, М.А. Антонов
Рассматривается модель буферизации данных в системах управления роботами. Получены зависимости для определения времени между двумя последовательными опросами исходного дискретного сигнала, между двумя последовательными выводами сжатого сигнала в аппаратуру передачи данных и задержки в обработке сигнала между вводом и выводом и между выводом и вводом. Показано, что адекватная модель функционирования буферизированных систем - это сложный Марковский процесс, каждое состояние которого представляет собой 2-параллельный Марковский процесс, который описывает «соревнование» источника сигнала, заполняющего буфер, и приемника сигнала, опорожняющего буфер. Сложный Марковский процесс преобразован в ординарный процесс, состояния которого моделируют количество заполненных в текущий момент ячеек буфера. Анализ ординарного процесса позволил получить зависимость, описывающую связь вероятности отказа, объема буферной памяти и соотношения между математическими ожиданиями времени заполнения и опорожнения буфера.
Ключевые слова: буферизация данных в системах управления роботами, временной интервал, Марковский процесс, буфер, вероятность отказа.
Буферизация данных и программное сжатие в системах управления роботами в настоящее время довольно широко распространено в системах передачи данных [1, 2].
Суть состоит в том, что повышение точности систем, обрабатывающих аналоговые сигналы, при использовании сенсоров требует повышения частоты опроса сенсоров. Поскольку один тракт обработки передачи данных выполняет функцию сбора, преобразования, обработки и пересылки, возникает ряд проблем, к примеру, запаздывание процессора обработки данных, по отношению к прерываниям сенсорных устройств.
117
Структурно программный модуль буферизации размещается между сенсорным устройством, решающим задачу получения данных и их преобразования в цифровой код, и аппаратурой передачи данных, которая решает задачу трансляции буферизированных данных по узкополосному каналу передачи данных. В силу жестких ограничений на стабильность частоты транзакций по обоим указанным интерфейсам, и особенностей обработки сигналов с помощью контроллеров на базе Фон Неймановской ЭВМ, передаваемые данные подлежат буферизации. Буферизация позволяет организовать, своего рода сдвиговый регистр, с той лишь разницей, что один разряд - это есть п-мерное слово, где п- разрядность слова, генерируемого сенсорным модулем. Таким образом, организуется накопление «слов» данных, полученных от сенсора, которые процессор обработки данных может загружать из буфера и обрабатывать, освобождая буфер, последовательно. Тем самым исключается проблема потери данных, вырабатываемых сенсорным блоком.
Поскольку методики оценки объема буферной памяти в настоящее время используются недостаточно, представленная работа необходима и актуальна.
1. Общая модель функционирования системы передачи данных в цифровых системах управления роботами. Принцип передачи данных по узкополосному каналу связи приведен на рис. 1 [1, 2].
Рис. 1. Функциональная схема обработки данных при передаче по узкополосному каналу
Система функционирует следующим образом. Данные с сенсора преобразуются в последовательность цифровых кодов и поступают на вход первой буферной памяти для дальнейшей передачи их на обработку в ЭВМ Фон Неймановского типа. ЭВМ опрашивает буфер 1 с использованием процедуры полинга, сжимает данные программно и выдает на вход буфера 2, связывающего ЭВМ с аппаратурой передачи данных. Аппаратура передачи данных опрашивает выход буфера 2 и передает данные в канал связи. В приведенной схеме присутствуют три субъекта, функционирующих каждый по своему алгоритму:
источник данных с жесткой синхронизацией, частота которой должна удовлетворять требования теоремы Котельникова для исключения потерь информации;
ЭВМ Фон Неймановского типа, генерирующая сигналы транзакций опроса буферов и выполняющая операцию собственно сжатия данных;
аппаратура передачи данных с жесткой синхронизаций, частота которой должна удовлетворять стандарту интерфейса аппаратуры передачи данных с внешними устройствами.
Для оценки времени прохождения сигнала по тракту сжатия данных и объемов буферов 1, 2 должна быть построена модель, учитывающая особенности поступления и вывода данных, и такие свойства алгоритма обработки данных, как цикличность, квази-стохастичность продолжения в местах ветвления и квази-случайность времени выполнения [3, 4]. Подобная модель представляет собой 3-параллельный полумарковский процесс вида
т={1т,2 т,3т}; (1)
i т = {гЛ, )} г = 1,2,3, (2)
1 2 где т - процесс, описывающий ввод данных в буфер 1; т - процесс, описывающий обработку данных, т - процесс, описывающий вывод данных
из буфера 2; гЛ - множество состояний; 1 к(х) - полумарковская матрица; t -время.
Полумарковские процессы (1) являются эргодическими. В самом общем случае структуры подобных процессов представляют собой полные графы с петлями, приведенные на рис. 2.
1 3
Процессы т и т имеют вид;
гт = {{г4 %)}, г = 1,3, (3)
где {г'а| - множество, состоящее из единственного состояния генерации транзакций;
гк(1 ) = 8(г-гТ); 8(...) - 8-функция Дирака; гТ - период следования транзакций; г = 1,3 (рис. 2 a, о).
Структура полумарковского процесса т показана на рис. 2 Ь. В
указанном процессе
2 Л
= J; к(;) = [^тп (t)] - полумарковская матрица
размером J х J; Нтп ^) - взвешенные плотности распределения; 2 А ¡2 2 22 2 22 2 2 \
2 2 2 2
Ли = | а1,..., аи,..., аи\ - подмножество состояний генерации запросов в буфер 1; 2Л8 ={2аи+1,. ., ,..., 2а^} - подмножество состояний генерации запросов в буфер 2; 2Л = {2а$+1,..., 2а,-,..., 2аJ} - состояния, моде-
лирующие прочие операторы алгоритма.
1 3
В полумарковских процессах т, т транзакции генерируются при
каждом переключении процесса из состояния 1а в состояние 1а, г = 1,3. В
полумарковском процессе 2 т транзакция генерируется в одном из двух случаев:
1) при прямом переключении процесса из состояний с номерами с 1 по £ в состояния с теми же номерами;
2) при переключении процесса из состояний с номерами с 1 по £ в состояния с номерами с £ + 1 по J с последующим блужданием из состояний с номерами с £ + 1 по J в состояния с номерами с 1 по £.
2 т-2 ~ = {2 Л,2й{4 (5)
Рис. 2. Структура 3-параллельного полумарковского процесса: а, с - процессы, описывающие работу источника и приемника данных;
Ь - процесс, описывающий обработку данных
Методами, приведенными в [5, 6], полумарковский процесс т может быть упрощен до процесса 2 включающего только состояния генерации транзакций
• т® ~
2 . 2. 2. 2. 2. 2. 2. где А = \ «1,..., аи,..., аи, аи+1,..., а8,..., - сокращенное множество вершин; 2 )=[~тп (V) - полумарковская матрица размером £ х £;
1 £ т, п £ £.
2 ~
Процесс т остается эргодическим. При каждом переключении полумарковского процесса т генерируется одна транзакция, либо в буфер 1, либо в буфер 2. Для внешнего наблюдателя вероятности пребывания в состоянии т в установившемся режиме переключений определяются по зависимостям:
Рт = Тт, (6)
0 т
где Тт - математическое ожидание времени пребывания процесса 2р в состоянии 2рте2Л ; 0т - время возврата в состояние 2~те2Л .
Время Тт определяется по зависимости
¥ 5 Р
Тт = |t • ЕИтп (tМ. (7)
0 т=1
Для определения 0т расщепим 2 рт на 2Ьрт и 2ерт. Это осуществляется за счет переноса столбца матрицы 2/ф) с номером т в столбец с номером 5 +1. Столбец с номером т и строка с номером 5 +1 заполняются нулями. В результате этого формируется матрица 2 ), имеющая размер (5 + 1)х (5 +1), Математическое ожидание времени возврата определяется по следующей зависимости:
¥ ОО р ___ -р.т
0т = !t • Ь~1 г 15+1 • Е{ьЩ)]} с 1тЛ, (8)
к=1
где 1т - вектор-столбец, имеющий размер 5 +1, т-й элемент которого
Г Т
равен единице, а остальные элементы равны нулю; 1т - вектор-строка, имеющий размер 5 +1, (5 +1) -й элемент которого равен единице, а остальные элементы равны нулю; Ь[...], Ь_1[...] - прямое и обратное преобразования Лапласа.
С учетом (6) и свойства эргодичности полумарковского процесса, плотности распределения времени между двумя транзакциями в буфер 1 будет
и и Р Е Рт Е Ьтп (t)
/ии (' )= ти п=и-; (9)
Е Рт3 Е р тп
т=1 п=1
плотность распределения времени между двумя транзакциями в буфер 2 будет
5 5 Р
Е Рт Е ^тп (t)
Ы0=т=Г п=и+ ; (10)
Е Рт3 Е Р/
т=и+1 п=и+1
плотность распределения времени между транзакцией в буфер 1 и транзакцией в буфер 2
и 8 ~
2 рт 2Ьтп(г)
/и.8(')= ти п=и+1—; (11)
2 рт3 2 ~ тп
т=1 п=и+1
плотность распределения времени между транзакцией в буфер 2 и транзакцией в буфер 1
8 и ~
2 рт 2^тп(г)
/ш Ь)
В формулах (9) - (12)
= т=и+1 п=1_
_ 8 и ~
2 2 Р тп т =и +1 п =1
(12)
Ртп = | Ьтп (г ). 0
(13)
Вследствие того, что транзакции генерируются в результате блужданий по состояниям полумарковских процессов, транзакции, сгенерированные по каждой отдельной траектории, могут рассматриваться как отдельный поток, а генерация по множеству возможных траекторий может рассматриваться как объединение потоков транзакций. В соответствии с теоремой Б. Григелиониса [7], подобный суммарный поток является пуас-соновским. Следовательно, можно ввести ограничение на плотности распределения времени между транзакциями, и считать, что процесс является строго Марковским с непрерывным временем [8], а указанные плотности описываются следующим образом:
2
/г Ь ) =
1
ехр
г
1г
г = 1,3.
(14)
где 2Л (г) = /ии (г); 2/з (г) = /88 (г);2Т = Iг-2/ (г)Ж г = 1,3 - математическое
о
ожидание времени между двумя последовательными транзакциями в соответствующем потоке.
2. «Соревнование» за заполнение/опорожнение буфера. Для
оценки объемов буферов сделаем допущение о том, что полумарковские 1 з
процессы т и т также являются строго Марковскими с непрерывным временем, и потоки транзакций при заполнении буфера 1 и опорожнении буфера 2 являются пуассоновскими, т.е.
оо
оо
ih(t ) = — exp
i J
iT у
i = 1,3.
(15)
Для этого случая может быть разработана математическая модель «соревнования» [9, 10, 11] на заполнение и опорожнение абстрактного буфера, которая представляет собой цепочку 2-параллельных Марковских процессов вида (рис. 3, а):
п
где с В матрица.
{П B(
m
{c в, cn(t)},
(16)
ÎChO OO;
ЙВп,..., ЙВN} - множество состояний; с) - марковская
i
OOj
_ ч сЯон оюн ою,*- • ^
^ 1/t-exp(- t/t-) 1/t+-exp(- t/t+) "J
Missing of processing cycle
(a)
Failure due to buffer overload
1 1 (b)
Pn
a+1
a+1
a+1
a+1
t
1
1
Рис. 3. Марковский процесс, описывающий «соревнование.» за заполнение и опорожнение абстрактного буфера (а) и расчетная модель (Ь)
Каждое состояние цепочки (16) представляет собой 2-параллельный Марковский процесс вида
П Вп ={{с РЬ ,с &, с Р2ь ,с Р^ } СПп (')}, 0 £ п £ N, (17)
где
"'Пп (t ) =
0 —exp
t
+
0
V т+ у
0
0
0
1
0 —exp t_
t_
0
0
, 0 < n < N. (18)
t
t
где т+ - математическое ожидание времени между двумя транзакциями по заполнению буфера; т_ - математическое ожидание времени между двумя транзакциями по опорожнению буфера.
В свою очередь, цепочка из 2-параллельных марковских процессов может быть преобразована в ординарный марковский процесс
Р = {в, п(г)}, (19)
где В = {00,..., Р п,.., Р N } - множество состояний, каждое из которых определяется количеством занятых в текущий момент ячеек буфера; п(г) = [л тп (г)] - марковская матрица размером (Ы + 1)х (Ы +1), у которой
hmn )
1
exp
-1-
a +1
v
when n = m +1;
У
0, when n Ф m + 1,or n Ф m -1;
a ( a + 1Л —exp -1-
t
v
when n = m -1;
a =
t у t+
t_
(20)
(21)
Структура марковского процесса показана на рис. 3, Ь. Если привязать параметры Марковского процесса (19) к параметрам процессов (1), то
Ь .............
(22)
t+ =
T, when buffer 1,
2r
t-
(23)
T3 , when buffer 2;
2T1, when buffer1, 3T, when buffer 2.
3. Оценка потребного объема буфера. Для определения потребного объема абстрактного буфера может быть применена теория массового обслуживания [12], однако воспользуемся зависимостью (6), применив ее к Марковскому процессу и зависимостями, приведенными в [5, 6], для оценки временных интервалов и вероятностей. Вероятности того, что для внешнего наблюдателя в произвольный момент времени процесс (16) будет находиться в состояниях bn, будут равны
qn =
a
n
N .
I ai
i=0
(24)
Сбой работы системы из-за переполненного буфера наступает тогда, когда все ячейки буфера заполнены, т.е.
q fail
a
N
N
I ai
i=0
(25)
Умножив обе части (22) на a -1, будем иметь
aN (a-1)
Из (23) следует, что
N > ln q fail - ln[l -a(1 - qfail)] (27)
Ina
где a - соотношение между математическими ожиданиями плотностей распределения времени заполнения и опорожнения абстрактного буфера; qfall - допустимая вероятность сбоя из-за переполнения буфера; N - объем буфера.
В качестве примера рассмотрим случай, когда 0,55 £ a < 0,95 . Графики зависимости N (a) для различных qfaii приведены на рис. 4.
0,6 0,65 0,7 0,75 0,8 0,85 0,9 а
Рис. 4. Зависимость потребного объема буфера от соотношения периодов поступления и считывания данных и от допустимой вероятности сбоя
Заключение. Таким образом, представлена методика оценки временных интервалов между транзакциями алгоритма сжатия данных. На основании результатов оценки произведены расчёты объема буфера между источником и приемником, обеспечивающего вероятность отказа не ниже заданной при обработке непрерывных потоков данных. Полученная зависимость может быть использована для оптимизации аппаратного и программного обеспечения систем сжатия данных.
125
Дальнейшим развитием предложенного подхода может являться разработка конкретных рекомендаций по величине объемов буферов для конкретных алгоритмов сжатия данных.
Список литературы
1. Ramirez M.A., Minami M. Technology and standards for low-bit-rate vocoding methods // The Handbook of Computer Networks. Ed. H.Bidgoli, New York: Wiley, 2011. Vol. 2. P. 447 - 467.
2. NATO Interoperable Narrow Band Voice Coder. STANAG 4591 C3 (Edition 1) - The 600 bit/s, 1200 bit/s, 2400 bit/s. NSA/1025(2008)-C3/4591.
3. Korolyuk V., Swishchuk A. Semi-Markov random evolutions // Semi-Markov Random Evolutions. Springer Science + Business Media, 1995. P. 5991.
4. Semi-Markov modeling of commands execution by mobile robot / E.V.Larkin, A.N.Ivutin, V.V.Kotov, A.N.Privalov // Proceedings of first International conference «Interactive collaborated robotics ICR 2016». Lecture notes in artifical intelligence. Springer 2016. P. 189 - 198.
5. Larkin E.V., Ivutin A.N. Estimation of Latency in Embedded RealTime Systems // 3-rd Meditteranean Conference on Embedded Computing (MEC0-2014). 2014 June 15-19. Budva: Montenegro, 2014. P. 236 - 239.
6. Larkin E.V., Ivutin A.N., Esikov D.O. Recursive procedure of evaluation of time intervals between transactions // MATEC Web of conferences: Australia, Melbourne, 2016.
7. Grigelionis B. On the convergence of sums of random step processes to a Poisson process. Theory Probab. Appl. 1963. P. 177 - 182.
8. Markov A.A. Extension of the law of large numbers to dependent quantities, Izvestiia Fiz.-Matem. Obsch. Kazan Univ., (2-nd Ser.), 1906. P. 135 -156.
9. Cleaveland R., Smolka S.A. Strategic directions in concurrency research // CSUR. 1996. Dec. Vol. 28. N. 4. P. 607 - 625.
10. Ivutin A.N., Larkin E.V. Simulation of Concurrent Games // Bulletin of the South Ural State University. Series: Mathematical Modelling, Programming and Computer Software. Chelyabinsk. 2015. Vol. 8. № 2. P. 43 - 54.
11. Simulation of Relay-races/ E.V.Larkin, A.N.Ivutin, V.V.Kotov, A.N.Privalov // Bulletin of the South Ural State University. Mathematical Modelling, Programming & Computer Software. 2016. Vol. 9. No 4. P. 117 - 128.
12. Sundarapandian V. Queueing Theory: Probability, Statistics and Queueing Theory. PHI Learning. New Delhi. 2009.
Ларкин Евгений Васильевич, д-р техн. наук, проф., зав. кафедрой, elarkinamail.ru, Россия, Тула, Тульский государственный университет,
Богомолов Алексей Валерьевич, д-р техн. наук, проф., elarkinamail.ru, Россия, Тула, Тульский государственный университет,
Антонов Максим Александрович, магистрант, elarkinamail.ru, Россия, Тула, Тульский государственный университет
DATA BUFFERING IN THE CONTROL SYSTEMS OF ROBOTS
E. V. Larkin, A. V. Bogomolov, M.A. Antonov
In frames of this article, a data buffering model in robot control systems has been developed. Dependences are obtained for determining the time between two consecutive interrogations of the original discrete signal, between two successive outputs of the compressed signal to the data transmission and delay equipment in processing the signal between the input and the output and between the output and the input. It is shown that an adequate model of the functioning of buffered systems is a complex Markov process, each state of which is a 2-parallel Markov process that describes the "competition" of the source of the signal that fills the buffer and the signal receiver emptying the buffer. The complex Markov process is transformed into an ordinary process, the states of which simulate the number of currently filled buffer cells. The analysis of the orthodynamic process made it possible to obtain a relationship describing the relationship between the probability of failure, the amount of buffer memory, and the relationship between the mathematical expectation of the time for filling and emptying the buffer.
Key words: data buffering in robot control systems, time interval, Markov process, buffer, probability of failure.
Larkin Evgeniy Vasilievich, doctor of technical sciences, professor, head of chair, elarkina mail. ru, Russia, Tula, Tula State University,
Bogomolov Alexey Valerievich, doctor of technical sciences, professor, elarkina mail. ru, Russia, Tula, Tula State University,
Antonov Maxim Aleksandrovich, master, elarkina mail. ru, Russia, Tula, Tula State University