ВУЗ:
Составители:
20
3 Применение методики для задач идентификации
Рассмотрим решение задачи, в которой требуется за один просмотр каждой входной
последовательности символов, заканчивающейся "bottom", идентифицировать наличие
хотя бы одной из искомых цепочек-образов. Количество последовательностей символов
(S) равно 10. Длины последовательностей символов равны 10(2),20(2),30(4),40(2), т.е. две
последовательности по 10 символов, две последовательности по 20 символов и т.д. Число
процессоров в системе (Р) равно 4. Входной алфавит Z=(z
1
, ... ,z
9
). Искомые цепочки-
образы: z
1
z
2
z
2
... z
2
z
1
; z
3
z
2
z
1
; z
3
z
2
z
3
... z
2
z
3
z
1
. Хранение входных последовательностей сим-
волов и результатов поиска цепочек в них производится в одном источнике и одном при-
емнике. Необходимо выполнить проектирование на событийном уровне параллельного
алгоритма решения этой задачи и его исследование. Для разработки параллельного алго-
ритма рекомендуется выполнить следующие этапы проектирования.
3.1 Разработка алгоритма и рекомендации по его реализации для однопроцессор-
ной системы
На первом этапе разработаем для однопроцессорной системы алгоритм поиска це-
почек в одной последовательности символов. Алгоритм поиска любой из трех цепочек-
образов можно записать регулярным выражением на языке РВАС:
r(y)=s
0
(z
1
z
2
{z
2
}z
1
∨z
3
z
2
z
1
∨z
3
{z
2
z
3
}z
1
).
Разобьем это выражение на части и получим систему РВАС:
s
к1
(y)=s
0
z
1
z
2
{z
2
}z
1
– поиск первой цепочки образа.
s
к2
(y)=s
0
z
3
z
2
z
1
– поиск второй цепочки образа.
s
к3
(y)=s
0
z
3
{z
2
z
3
}z
1
– поиск третьей цепочки образа.
Перейдем от системы РВАС к НДСКУ и СВФ, а затем, выполнив их коррекцию, по-
лучим алгоритм для однопроцессорной системы на языке НДСКУ:
СКУ:
s
к1
=s
1
z
1
s
1
=s
2
z
2
∨s
1
z
2
s
2
=s
0
z
1
s
к2
=s
3
z
1
s
3
=s
4
z
2
s
4
=s
0
z
3
s
к3
=s
5
z
1
s
5
=s
0
z
3
∨s
6
z
3
s
6
=s
5
z
2
s
f
=(s
0
∨s
к1
∨s
к2
∨s
к3
∨s
1
∨s
2
∨s
3
∨s
4
∨s
5
∨s
6
∨s
f
)&bottom
СВФ:
y=s
к1
∨s
к2
∨s
к3
y
f
=s
f
.
Чтобы убедиться в правильности алгоритма, необходима его отладка с использова-
нием тестирования. Для этого удобно использовать систему отладки и моделирования па-
раллельных алгоритмов "СОМПА" (смотри раздел 4). “СОМПА” позволяет эффективно
довести алгоритм до работоспособного состояния. Какие преимущества дает использова-
ние этой системы? В окне стандартного редактора для приложений ОС WINDOWS вво-
дится алгоритм на РВАС. По нажатию кнопки выполняется преобразование с языка РВАС
на НДСКУ, при этом выявляются синтаксические ошибки в РВАС, которые сразу же
можно отредактировать. Этот процесс повторяется до устранения всех синтаксических
3 Применение методики для задач идентификации Рассмотрим решение задачи, в которой требуется за один просмотр каждой входной последовательности символов, заканчивающейся "bottom", идентифицировать наличие хотя бы одной из искомых цепочек-образов. Количество последовательностей символов (S) равно 10. Длины последовательностей символов равны 10(2),20(2),30(4),40(2), т.е. две последовательности по 10 символов, две последовательности по 20 символов и т.д. Число процессоров в системе (Р) равно 4. Входной алфавит Z=(z1, ... ,z9). Искомые цепочки- образы: z1z2z2 ... z2z1; z3z2z1; z3z2z3 ... z2z3z1. Хранение входных последовательностей сим- волов и результатов поиска цепочек в них производится в одном источнике и одном при- емнике. Необходимо выполнить проектирование на событийном уровне параллельного алгоритма решения этой задачи и его исследование. Для разработки параллельного алго- ритма рекомендуется выполнить следующие этапы проектирования. 3.1 Разработка алгоритма и рекомендации по его реализации для однопроцессор- ной системы На первом этапе разработаем для однопроцессорной системы алгоритм поиска це- почек в одной последовательности символов. Алгоритм поиска любой из трех цепочек- образов можно записать регулярным выражением на языке РВАС: r(y)=s0(z1z2{z2}z1∨z3z2z1∨z3{z2z3}z1). Разобьем это выражение на части и получим систему РВАС: sк1(y)=s0z1z2{z2}z1 – поиск первой цепочки образа. sк2(y)=s0z3z2z1 – поиск второй цепочки образа. sк3(y)=s0z3{z2z3}z1 – поиск третьей цепочки образа. Перейдем от системы РВАС к НДСКУ и СВФ, а затем, выполнив их коррекцию, по- лучим алгоритм для однопроцессорной системы на языке НДСКУ: СКУ: sк1=s1z1 s1=s2z2∨s1z2 s2=s0z1 sк2=s3z1 s3=s4z2 s4=s0z3 sк3=s5z1 s5=s0z3∨s6z3 s6=s5z2 sf=(s0∨sк1∨sк2∨sк3∨s1∨s2∨s3∨s4∨s5∨s6∨sf)&bottom СВФ: y=sк1∨sк2∨sк3 yf=sf. Чтобы убедиться в правильности алгоритма, необходима его отладка с использова- нием тестирования. Для этого удобно использовать систему отладки и моделирования па- раллельных алгоритмов "СОМПА" (смотри раздел 4). “СОМПА” позволяет эффективно довести алгоритм до работоспособного состояния. Какие преимущества дает использова- ние этой системы? В окне стандартного редактора для приложений ОС WINDOWS вво- дится алгоритм на РВАС. По нажатию кнопки выполняется преобразование с языка РВАС на НДСКУ, при этом выявляются синтаксические ошибки в РВАС, которые сразу же можно отредактировать. Этот процесс повторяется до устранения всех синтаксических 20
Страницы
- « первая
- ‹ предыдущая
- …
- 18
- 19
- 20
- 21
- 22
- …
- следующая ›
- последняя »