статья в дивноморский сборник

advertisement
УДК 519.7
Т.А. Брыкина
ВИС ФГБОУ ВПО «ЮРГУЭС» г. Волгодонск
Использование многомерной алгебры логики для построения модели
генератора псевдослучайных семимерных двоичных чисел
В данной статье показан процесс построения модели генератора псевдослучайных
семимерных двоичных чисел на базе многомерной алгебры логики в рамках семимерной
парадигмы Короткова.
Известно,
что
возможно
использование
в
специализированных
вычислительных системах в качестве системы счисления числа Фибоначчи.
Это позволяет существенно сократить время выполнения арифметических
операций и, как следствие, повысить производительность указанных
вычислителей.
Решим задачу о получении 32-битных двоичных чисел с помощью
описанного выше генератора, каждое чисел будет семимерным, т.е. будет
состоять из семи пространственных координат.
Разработаем ГПСЧ, используя метод Фибоначчи с запаздываниями, т.к.
он наиболее подходит для решения нашей задачи.
Математическая модель построена с использованием многомерной
алгебры логики в рамках семимерной парадигмы. Элементы массива
задаются
по
типу
a=(a1,a2,a3,a4,a5,a6,a7),
b=(b1,b2,b3,b4,b5,b6,b7),
c=(c1,c2,c3,c4,c5,c6,c7) и тому подобное.
Опишем метод реализации алгоритма подробнее. Метод Фибоначчи с
запаздываниями (Lagged Fibonacci generator) — один из методов генерации
псевдослучайных чисел.
В
качестве
соотношения:
алгебраической
модели
используются
следующие
где
— вещественные числа из диапазона
— целые
,
положительные числа, называемые лагами. При реализации через целые
числа достаточно формулы
арифметические
(при этом будут происходить
переполнения).
требуется знать
Для
работы
фибоначчиеву
датчику
предыдущих сгенерированных случайных чисел.
При программной реализации для хранения сгенерированных случайных
чисел используется конечная циклическая очередь на базе массива. Для
старта фибоначчиевому датчику требуется
случайных чисел,
которые могут быть сгенерированы простым конгруэнтным датчиком.
Получаемые случайные числа обладают хорошими статистическими
свойствами,
причём
все
биты
случайного
числа
равнозначны
по
статистическим свойствам. Период фибоначчиева датчика может быть
оценен по следующей формуле:
,
где — число битов в мантиссе вещественного числа.
Лаги a и b — «магические» и их не следует выбирать произвольно.
Рекомендуются следующие значения лагов:
,
или
. Качество получаемых случайных чисел зависит от значения
константы, a чем оно больше, тем выше размерность пространства, в котором
сохраняется
равномерность
случайных
векторов,
образованных
из
полученных случайных чисел. В то же время, с увеличением величины
константы a увеличивается объём используемой алгоритмом памяти.
На рисунке 1 представлена структурная схема разработанного
генератора. Число элементов массива определяет максимальный из двух лаг.
Именно их этих номеров элементов массива берутся величины, и из
одной вычитается другая. Когда получается значение, весь массив сдвигается
в начало на один элемент, с потерей первого элемента, потом в конец
массива устанавливается полученное значение, и оно же выводится в
качестве случайного. В полях текущего генератора при запуске появляются
значения лагов и К. Лаги не могут быть двоичными, так как это, по сути,
индексы. В вычислениях лаги напрямую не участвуют и нужны для
получения элементов массива по номеру. Задаются лаги в полях – Лаги.
Рисунок 1 – Структурная схема генератора случайных чисел методом
Фибоначчи
Рисунок 2 – Структурная схема генератора случайных чисел методом
Фибоначчи в работе. Генерация массива случайных чисел
При нажатии кнопки Массив случайных чисел результат генерации
выводится в центральном поле, как показано на рисунке 2. При нажатии
кнопки Очистить – форма очищается. Лаги, как было замечено выше, можно
назначать любые целочисленные десятичные. При нажатии Тестовый пример
появится тестовый массив чисел.
Сумма после знака равенства не есть конечный продукт работы
генератора, это текстовое представление целочисленного многомерного типа
данных UInt32Element. В памяти ЭВМ –
это объект, который в себе
содержит 32 элемента, семи мерных битов/объектов, которые сами по себе
тоже содержат 7 отдельных битов каждый. На дальнейших расчетах
текстовое представление не сказывается.
Список литературы:
1)
Коротков А.В., Мешков В.Е., Чураков В.С., Бабкина Т.А.,
Козоброд А.В., Прудий А.В. Многозначные и многомерные булевы и
небулевы алгебры логики А.В. Короткова и пифагоровы
числа в
искусственном интеллекте и криптографических системах: монография. –
(Серия
«Семимерная
парадигма
А.В.
Короткова
в
информатике,
искусственном интеллекте и когнитологии». Вып.1). – Новочеркасск: Изд-во
«НОК», 2011. – 488с.
2)
Мешков В.Е., Брыкина Т.А. Разработка моделей сумматоров на
базе многомерной алгебры логики в рамках семимерной парадигмы
А.В.Короткова// Естественные и технические науки. 2012. № 2. –
М.:Спутник+ – 513с. – (с. 423-428)
3)
Брыкина Т.А. Анализ влияния на темпоральность процессов в
вычислительных системах многомерной алгебры логики//Информационные
технологии в науке и образовании. Международная научно-практическая
конференция (март-июнь 2012 года). V Всеросийский семинар «Применение
MOODLE в сетевом обучении» (Железноводск, 29-31 мая 2012 года):
материалы/радкол. А.Э.Попов [и др.]. – Шахты: ФГБОУ ВПО «ЮРГУЭС»,
2012. – 192 с. – (с. 84-86)
Download