Научная статья на тему 'Изучение периодических структур в произвольных символьных последовательностях на грид-системах из персональных компьютеров'

Изучение периодических структур в произвольных символьных последовательностях на грид-системах из персональных компьютеров Текст научной статьи по специальности «Математика»

CC BY
80
14
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПЕРИОДИЧЕСКИЕ СТРУКТУРЫ / ГРИД-СИСТЕМА / ПЕРСОНАЛЬНЫЙ КОМПЬЮТЕР / СИМВОЛЬНАЯ ПОСЛЕДОВАТЕЛЬНОСТЬ

Аннотация научной статьи по математике, автор научной работы — Колпаков Роман Максимович, Храпов Николай Павлович

Исследование периодических структур в произвольных символьных последовательностях является важным направлением в дискретной математике. Результаты исследований используются при создании алгоритмов сжатия данных и систем поиска по шаблону. В последние годы задача периодических структур получила широкое применение также и в биологии при анализе ДНК-последовательностей. В данной статье изложена постановка одной из задач символьных последовательностей и приведены результаты, полученные к настоящему времени на основе грид-систем из персональных компьютеров.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Колпаков Роман Максимович, Храпов Николай Павлович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Изучение периодических структур в произвольных символьных последовательностях на грид-системах из персональных компьютеров»

Колпаков Р. М.1, Храпов Н. П.2

1 Механико-математический факультет МГУ им. М.В. Ломоносова 2 Институт Проблем Передачи Информации РАН foroman@mail.ru nkhrapov@ gmail . com

Изучение периодических структур в произвольных символьных последовательностях на грид-системах из персональных компьютеров

КЛЮЧЕВЫЕ СЛОВА:

Периодические структуры, грид-система, персональный компьютер, символьная последовательность.

АННОТАЦИЯ:

Исследование периодических структур в произвольных символьных последовательностях является важным направлением в дискретной математике. Результаты исследований используются при создании алгоритмов сжатия данных и систем поиска по шаблону. В последние годы задача периодических структур получила широкое применение также и в биологии при анализе ДНК-последовательностей. В данной статье изложена постановка одной из задач символьных последовательностей и приведены результаты, полученные к настоящему времени на основе грид-систем из персональных компьютеров.

Описание задачи поиска периодических структур в произвольных символьных последовательностях

Пусть w = w[1]w[2]....w[n] - произвольное слово, где w[i] может принимать бинарные значения. Длина n слова w обозначается через |w|. Фрагмент w[i]....w[j] слова w, где 1 < i < j < n, называется фактором слова w и обозначается через w[j...j]. Положительное число p называется периодом слова w если w[i] = w[i+p] для любого i = 1, ... ,n - p. Любое слово имеет тривиальный период, равный длине слова, но при этом оно может также иметь более короткие периоды. Из всех периодов слова w можно выбрать минимальный период, который обозначается через p(w). Отношение | w/p(w) называется порядком слова w и обозначается через e(w). Слово называется примитивным, если его порядок не является целым числом большим, чем 1.

Под периодичностью в слове понимается любой фактор, порядок которого не меньше, чем 2. Периодичности играют фундаментальную роль как в словарной комбинаторике [1], так и в различных приложениях, таких как алгоритмы на строках [2, 3], молекулярная биология [4] или сжатие текстовых данных [5]. Простейшим и наиболее изученным примером

периодичностей являются факторы вида ии, где и - некоторое непустое слово. Такие периодичности называются квадратами. Факторы вида иии, где и - некоторое непустое слово, называются кубами. Кубы и квадраты

представляют собой частные случаи факторов вида = ии ....и [к подряд

идущий непустых одинаковых слов) , где к > 1 и и — непустое слово. Такой фактор называется к-ой степенью слова и. Если слово и является примитивным, то называется примитивной к-ой степенью. Если слово w имеет целый порядок к > 1, то оно, очевидно, является примитивной к-ой степенью своего префикса длины рС другой стороны, нетрудно показать (см., например, [6]), что при к > 1 порядок примитивной к-ой степени равен к. Таким образом, слово имеет целый порядок к > 1 тогда и только тогда, когда оно является примитивной к-ой степенью. Наряду с целыми степенями слов можно также рассмотреть "дробные"

периодичности вида ики^, где к > 2, и - примитивное непустое слово и ^ -

некоторый префикс слова и, отличный от и. Такие периодичности имеют дробный порядок.

Определение. Периодичность w[i..j] с минимальным периодом р в слове w называется максимальной, если она удовлетворяет следующим условиям:

если i > 1, то w[z' - 1] Ф w[z' - 1 + р], если у < п, то + 1 - р] Ф w[j + 1].

Таким образом, периодичность в слове называется максимальной, если она не содержится внутри некоторой более длинной периодичности с тем же минимальным периодом, т.е. периодичность в слове является максимальной, если она не может быть расширена в этом слове ни на один символ ни вправо, ни влево с сохранением своего минимального периода.

На рисунке 1 приведены примеры бинарных слов со всеми возможными периодичностями.

¿гч '-^ ; 1 ■

б) 101011011101100

I I I I | I I_ц_|

Рисунок 1. Поиск максимальных периодичностей в словах. В слове а 6 периодичностей; в слове б - 8.

Любая периодичность содержится в некоторой единственной максимальной периодичности с тем же минимальным периодом, поэтому максимальные периодичности естественным образом задают в слове все остальные периодичности (квадраты, кубы, к-е степени и т.д.), что позволяет их использовать в многочисленных приложениях [7]. В [8]

доказано, что максимальное возможное число максимальных периодичностей в словах длины п равно О(п). Более того, было показано, что максимальная возможная сумма порядков максимальных периодичностей в словах длины п равна О(п).

Понятие периодичности нетрудно обобщить на случай факторов, порядок которых не меньше, чем 1 + £, где 0 < £ < 1.

Определение. е-квазипериодичностью называется фактор: порядок которого не меньше, чем 1 + е.Рассматриваемая нами задача состоит в оценке максимального возможного числа тгп(п, £) максимальных £-квазипериодичностей в словах длины п для различных значений п и г. Можно показать, что тгп(п, £) = 0(п/£2). Однако остаётся открытым вопрос, является ли данная оценка для тгп(п, £) точной по порядку. Проведение вычислительного эксперимента

Для получения достаточно точной оценки максимума исследуемой величины требуется большой объем вычислений, выполнение которых заняло бы на одном персональном компьютере неприемлемо длительное время. В таких случаях целесообразно применение методов параллельных и распределенных вычислений [9-11].

Для поиска значений тгп(п, £) была разработана программа smallexp, анализирующая символьные последовательности. Последовательности создавались в коде программы специально разработанным генератором случайных последовательностей. Расчеты проводились на инфраструктуре ВОШС в рамках проекта 0РТ1МА@Н0МЕ [9]. Особенность работы приложения smallexp на инфраструктуре ВОШС состоит в том, что все вычислительные узлы получали задания с одинаковыми входными данными; в процессе работы на различных узлах генерировались различные случайные символьные последовательности для анализа.

В изначальной версии приложение smallexp, именуемое решателем, выполняло перебор последовательностей для конкретно заданного параметра е. В процессе дальнейшей работы решатель был оптимизирован для подсчёта тгп(п, £) для нескольких параметров £ одновременно. Таким образом эффективность решателя удалось повысить примерно в 5 раз.

В общей сложности было обработано 2.5х1013 случайных двоичных слов. Результаты вычислительного эксперимента приведены в таблице 1. Графическое отображение результатов приведено на рисунке 2._

п к £ тгп(1; 1 + 1/к)

120 1 1 81

120 2 1/2 142

120 3 1/3 197

120 4 1/4 252

120 5 1/5 303

Таблица 1. Результаты вычислительного эксперимента по подсчёту максимального числа £-квазипериодичностей в произвольных словах

Экспериментальная зависимость mrg(120,n/c)

350 -

SO -

О

G 100 200 ЗСО 400 500 600 700

120 /е

Рисунок 2. Графическое отображение экспериментальных результатов вычислительного

эксперимента

В результате предварительных расчётов были получены точные нижние грани mrn( n,(k + 1)/k) для случаев n = 120 и к = 1, 2, 3, 4, 5. Полученные результаты позволяют сделать предположение, что mrn(n, е)= O( n / е). Однако для s = 1 была составлена теоретическая оценка значения mrn [12], равная 110. По причине большого расхождения теоретической оценки и экспериментального значения, полной уверенности в верности данной гипотезы на данный момент быть не может. Полученный к настоящему моменту результат является важным приближением к решению поставленной задачи. Сама задача нуждается в дальнейших исследованиях на основе более эффективных алгоритмов и большего набора исследуемых значений.

Литература

1. M. Lothaire, Combinatorics on Words, volume 17 of Encyclopedia of Mathematics and Its Applications, Addison Wesley, 1983.

2. Z. Galil, J. Seiferas, Time-space optimal string matching, J. Comput. System Sci. 26(3) (1983), 280294.

3. М. Crochemore, W. Rytter, Squares, cubes, and time-space efficient string searching, Algorithmica 13 (1995), 405-425.

4. D. Gusfield, Algorithms on Strings, Trees, and Sequences, Cambridge University Press, 1997.

5. J. Storer, Data compression: methods and theory, Computer Science Press, Rockville, MD, 1988.

6. R. Kolpakov, G. Kucherov, Periodic structures in words, chapter for the 3rd Lothaire volume Applied Combinatorics on Words, Cambridge University Press, 2005.

7. M. Crochemore, C. Iliopoulos, M. Kubica, J. Radoszewski, W. Rytter, T. Walen, Extracting powers and periods in a string from its runs structure, Lecture Notes in Comput. Sci. 6393 (2010), 258-269.

8. R. Kolpakov, G. Kucherov, On Maximal Repetitions in Words, J. Discrete Algorithms 1(1) (2000), 159-186.

9. О.С. Заикин, М.А. Посыпкин, А.А. Семенов, Н.П. Храпов. Опыт организации добровольных вычислений на примере проектов OPTIMA@HOME и SAT@HOME.Вестник Нижегородского

университета им. Н.И. Лобачевского, 2012, No5(2), c.340-347.

10. Р. Ловаш, А.П. Афанасьев, В.В. Волошинов, М.А. Посыпкин, О.В. Сухорослов, Н.П. Храпов. О грид-системах из персональных компьютеров и их интеграции с другими видами грид-систем. Сборник избранных трудов V Международной научно-практической конференции "Современные информационные технологии и ИТ-образование". Москва: ИНТУИТ.РУ 2010г.

11. О.В. Сухорослов. Реализация и композиция проблемно-ориентированных сервисов в среде MathCloud // Вестник ЮУрГУ Серия «Математическое моделирование и программирование», Вып. 8, № 17(234). - Челябинск: Издательский центр ЮУрГУ, 2011. (с. 101-112)

12. http://www.csd.uwo.ca/~ilie/runs.html

i Надоели баннеры? Вы всегда можете отключить рекламу.