- •Млта: Математическая логика и теория алгоритмов
- •Комплект трех вариантов структурной формулы
- •Базисные структуры параллельных алгоритмов
- •1.2 Исходные структурные формулы параллельных алгоритмов
- •Стандартная форма формулы алгоритма
- •Контроль результатов
- •1. 2 Автоматизация построений основной схемы алгоритма Исходные условия
- •Вариант 1 структурной схемы. Автоматизация построений
- •Анализ структурной схемы Общие данные структуры алгоритма
- •Проверочная нумерация оболочек формул и схем
- •Вложенность формульных оболочек
- •Явная операция разделения (вилки) потоков
- •Работа с тренажером схемных построений
- •Мозаичный набор схем
- •Временные диаграммы параллельных алгоритмов
- •Графический расчет длительности алгоритма
- •Расчет длительности алгоритма
- •Вербальные тексты параллельных алгоритмов базисных структур
- •ИнФ: Инфиксная форма вербального текста
- •Ги: Горизонтальное исполнение
- •Ви: Вертикальное исполнение
- •Автоматизация построений
- •НИнФ: Неявная инфиксная форма вербального текста
- •Исходные условия
- •Ги: Горизонтальное исполнение
- •КоФ: Комбинированная форма вербального текста: ИнПрПоФ
- •Ги: Горизонтальное исполнение
- •Alg a092: begin z1; cobegin begin z3; z1 end, begin cobegin z5, begin z2; cobegin z4, z0 coend end coend ; cobegin z6, begin z5; z2 end coend end coend_or end
- •Ви: Вертикальное исполнение
- •Автоматизация построений: Алгол (Паскаль)-подобный текст
- •ПрФ: Префиксная форма
- •Исходные условия
- •Ги: Горизонтальное исполнение
- •Автоматизация построений
Работа с тренажером схемных построений
Мозаичный набор схем
Используется программа TRENTEST– графический тренажер-тестер.
Выполняется мозаичный набор структурных схем.
Вариант 1
СФА 0.5: Структурная формула алгоритма
A091 = (Z1 - ((Z3 - Z1) & ( ( Z5 & (Z2 - ( Z4 & Z0 ))) - ( Z6 & (Z5 - Z2)))))
A091 = (Z1 ((Z3 Z1) & ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))))
ССА0.2: Структурная схема алгоритма
ШСА 0.1: Штрих-схема алгоритма
Вариант 2
СФА 0.6: Структурная формула алгоритма
A092 = (Z1 - ((Z3 - Z1) V ( ( Z5 & (Z2 - ( Z4 & Z0 ))) - ( Z6 & (Z5 - Z2)))))
A092 = (Z1 ((Z3 Z1) V ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))))
ССА0.3: Структурная схема алгоритма
ШСА 0.2: Штрих-схема алгоритма
РМУ 0.2Однозначность графических построений:
1) В изложенной технике структурных построений обеспечивается возможность однозначного построения ССА по заданной СФА.
2) Данное обстоятельство обеспечивает возможность контроля правильности учебных схемных построений на основе сравнения с эталоном.
Временные диаграммы параллельных алгоритмов
Построения временных диаграмм. Вариант 1
Вариант 1 диаграммы (A091). Автоматизация построений
Используется программа GRAMPRAL
СФА 2.7: Структурная формула алгоритма / У: Поток управления
A091 = (Z1 ((Z3 Z1) & ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))))
A091 = (Z1 - ((Z3 - Z1) & ( ( Z5 & (Z2 - ( Z4 & Z0 ))) - ( Z6 & (Z5 - Z2)))))
Набор формулы и данных:
ДИА 2.1: Диаграмма исполнения алгоритма
ЛД: Линейная (временная) диаграмма
СД: Сетевая (временная) диаграмма:
ручная доработка – указание причинно-следственных связей событий
Построения временных диаграмм. Вариант 2
Вариант 2 диаграммы (A092). Автоматизация построений
Используется программа GRAMPRAL.
СФА 2.8: Структурная формула алгоритма / У: Поток управления
// Замена обозначений: "" - "–"; "V" - "|"
A092 = (Z1 ((Z3 Z1) V ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))))
A092 = (Z1 - ((Z3 - Z1) V ( ( Z5 & (Z2 - ( Z4 & Z0 ))) - ( Z6 & (Z5 - Z2)))))
Набор формулы и данных
ДИА 2.2: Диаграмма исполнения алгоритма
ЛД: Линейная (временная) диаграмма
Вариант 2
СД: Сетевая (временная) диаграмма:
ручная доработка – указание причинно-следственных связей событий
Графический расчет длительности алгоритма
Исходные обозначения
Принимаются обозначения:
mai: Длительность (цикла) исполнения алгоритмаAi– общее обозначение;
mai': Длительность исполнения алгоритмаAi– отсчет данных по линииai;
mai": Длительность исполнения алгоритмаAi– графический расчет
(выполняется далее).
Непосредственный отсчет длительности
Отсчет длины линии по времени начального и конечного события:
mai=taiо –taiн,
где taiн– время начала (цикла) исполнения алгоритмаAi,
taiо– время окончания (цикла) исполнения алгоритмаAi.
Вариант 1
ma001' =ta001о –ta001н=115– 0 =115
Вариант 2
ma002' =ta002о –ta002н=100– 0 =100
Графический расчет длины линии
Расчет выполняется по критическому пути временного графа:
Вариант 1
ma001" =mz1 +mz2 +mz4 +mz5 +mz2 = 35 + 20 + 15 + 25 + 20 = 115
Вариант 2
ma002" = mz1 + mz2 + mz0 + mz1 =35+20+10 + 35= 100
РМУ 2.1 Критический путьвременного графа:
это "плотная" последовательность работ (без "зазоров"), в которой изменение длительности любой работы влияет на общую длительность комплекса работ
Проверка результатов
Выполняется проверка соотношения mai' =?mai":
Вариант 1
ma001' =115 =ma001" =115
Вариант 2
ma002' =100 =ma002" =100
Вывод: данные графического отсчета и расчета совпадают.
2.1.4. Аналитический расчет длительности алгоритма
Подготовка формулы расчета длительности
СФА: Структурная формула алгоритма / У: Поток управления
ИнФ: Инфиксная форма
ПИнФ: Полная инфиксная форма
Вариант 1
A091 = (Z1 ((Z3 Z1) & ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))))
Вариант 2
A092 = (Z1 ((Z3 Z1) V ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))))
удаление наружных скобок (не нужны для последующего)
Вариант 1
A091 = Z1 ((Z3 Z1) & ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2))))
Вариант 2
A092 = Z1 ((Z3 Z1) V ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2))))
ШФР: Шаблон формулы расчета
КоФ: Комбинированная форма
ИнПрФ: Инфиксно-префиксная форма
Вариант 1 // пошаговое построение
= Z1 ((Z3 Z1) & ( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))) =
= Z1 &((Z3 Z1),( ( Z5 & (Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))) =
= Z1 &((Z3 Z1),(&( Z5,(Z2 ( Z4 & Z0 ))) ( Z6 & (Z5 Z2)))) =
= Z1 &((Z3 Z1),(&( Z5,(Z2 &( Z4,Z0 ))) ( Z6 & (Z5 Z2)))) =
= Z1 &((Z3 Z1),(&( Z5,(Z2 &( Z4,Z0 ))) &(Z6,(Z5 Z2))))
Вариант 2 // пошаговое построение
= Z1((Z3Z1)V( (Z5 & (Z2(Z4 &Z0 )))(Z6 & (Z5 Z2)))) =
= Z1V((Z3Z1),( (Z5 & (Z2(Z4 &Z0 )))(Z6 & (Z5 Z2)))) =
= Z1V((Z3Z1),(&(Z5,(Z2(Z4 &Z0 )))(Z6 & (Z5 Z2)))) =
= Z1V((Z3Z1),(&(Z5,(Z2&(Z4,Z0 )))(Z6 & (Z5 Z2)))) =
= Z1V((Z3Z1),(&(Z5,(Z2&(Z4,Z0 )))&(Z6,(Z5 Z2))))
// операция суперпозиции () остается в инфиксах
// операции конъюнкции (&) и дизъюнкции (V) выносятся в префиксы
ТЗО: Таблица замены обозначений
Компоненты ШФР |
Ai |
Zi |
|
& |
V |
Компоненты ФРД |
mai |
mzi |
+ |
Max |
Min |
ФРД: Формула расчета длительности
// получается из ИнПрФ заменой обозначений по ТЗО
Вариант 1
ma001"'=
= mz1+max((mz3+mz1),(max(mz5,(mz2+max(mz4,mz0 )))+max(mz6,(mz5+mz2))))
Вариант 2
ma002"' =
= mz1+ min((mz3+ mz1),(max(mz5,( mz2+ max(mz4, mz0 )))+ max(mz6,( mz5+ mz2))))