Про один підхід до структурного аналізу схеми алгоритму

Спрощення практичної реалізації структурного аналізу схеми алгоритму. Інструменти методології дослідження, матриця суміжності графа алгоритму з виявленням структурних елементів та співвідношень між ними. Дослідження вимог технології роботи об'єкта.

Рубрика Математика
Вид статья
Язык украинский
Дата добавления 12.08.2022
Размер файла 1,7 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Про один підхід до структурного аналізу схеми алгоритму

Поліський Юрій Давидович, кандидат технічних наук, старший науковий співробітник, Заслужений винахідник України, Науково-дослідний інститут автоматизації чорної металургії, 49000, м.Дніпро

Анотація

При складанні алгоритму можлива поява у його схемі контурів різної довжини. Відповідно до вимог технології роботи об'єкта в одних випадках ці контури можуть бути необхідні, в інших випадках - небажані. При цьому потрібно знати, які оператори алгоритму входять у ті та інші контури, а також виявити відносини та зв'язки зазначених структурних елементів алгоритму. У ряді робіт запропоновані різні за складністю методи реалізації даної задачі, пов'язані як з мовою опису схеми алгоритму, так і з методикою її аналізу. Результати виконаних досліджень свідчать про можливість отримання більш ефективного рішення, яке дозволяє дещо спростити практичну реалізацію структурного аналізу схеми алгоритму. Метою дослідження є аналітичний розгляд схеми алгоритму виявлення структурних елементів алгоритму та взаємовідносин між ними. При цьому структурними елементами алгоритму є ланцюги, контури та вершини, що належать контурам. Інструментами методології дослідження є системний аналіз, теорія графів та матрична алгебра. Методологія дослідження базується на аналізі матриць суміжності графа алгоритму з виявленням структурних елементів та співвідношень між ними. На першому етапі дослідження на кожній ітерації аналізу виконується виявлення структурних елементів та коригування матриці суміжності, що ілюструється відповідною таблицею. На другому етапі дослідження розглядаються різні варіанти взаємовідносин між виявленими структурними елементами, на підставі чого робиться висновок про можливість чи неможливість працездатності алгоритму. Крім того, наведені умови перемикання режиму роботи з робочого на резервний та навпаки. Запропонований підхід дозволяє дещо спростити практичну реалізацію структурного аналізу схеми алгоритму. Результатом роботи є завершене теоретичне обґрунтування запропонованого підходу до ефективного вирішення задачі структурного аналізу алгоритму. Розглянутий підхід до структурного аналізу схеми алгоритму забезпечує отримання шуканого результату. При цьому представляється доцільним застосувати запропонований підхід в якості перспективного напрямку досліджень схем алгоритмів.

Ключові слова: алгоритм, граф, матриця суміжності, контур, ланцюг

Polissky Yuriy Davydovych, Candidate of Technical Sciences, Senior Research Fellow, Honored Inventor of Ukraine, Research Institute of Automation of Ferrous Metallurgy, 49000, Dnipro

ON ONE APPROACH TO STRUCTURAL ANALYSIS OF ALGORITHM SCHEME

Abstract. When compiling the algorithm, the appearance of contours of different lengths in its scheme is possible. In accordance with the requirements of the technology of the object in some cases, these circuits may be necessary, in other cases - undesirable. It is necessary to know which algorithm operators are included in these and other circuits, as well as to identify the relationships and connections of these structural elements of the algorithm. In a number of works methods of realization of the given task of various complexity are connected, connected both with language of the description of the scheme of algorithm, and with a technique of its analysis. The results of the research indicate the possibility of obtaining a more efficient solution, which simplifies the practical implementation of structural analysis of the algorithm scheme. The aim of the research is to analyze the scheme of the algorithm for identifying the structural elements of the algorithm and the relationship between them. The structural elements of the algorithm are chains, contours and vertices belonging to the contours. The tools of the research methodology are systems analysis, graph theory and matrix algebra. The research methodology is based on the analysis of the adjacency matrices of the algorithm graph with the identification of structural elements and the relationships between them. At the first stage of the study, at each iteration of the analysis, the identification of structural elements and adjustment of the adjacency matrix is performed, which is illustrated by the relevant table. In the second stage of the study, various variants of the relationship between the identified structural elements are considered, on the basis of which a conclusion is made about the possibility or impossibility of the algorithm.In addition, the conditions for switching the operating mode from working to backup and vice versa. The proposed approach allows to simplify the practical implementation of structural analysis of the algorithm scheme. The result of the work is a completed theoretical justification of the proposed approach to the effective solution of the problem of structural analysis of the algorithm. The considered approach to the structural analysis of the scheme of the algorithm provides the desired result. Thus it seems expedient to apply the offered approach as the perspective direction of researches of schemes of algorithms.

Keywords: algorithm, graph, adjacency matrix, contour, chain.

Постановка проблеми. При складанні алгоритму можлива поява у його схемі контурів різної довжини

Відповідно до вимог технології роботи об'єкта в одних випадках ці контури можуть бути необхідні, в інших випадках - небажані. При цьому потрібно знати, які оператори алгоритму входять у ті та інші контури, а також виявити відносини та зв'язки зазначених структурних елементів алгоритму. алгоритм матриця графа технологія

Аналіз останніх досліджень і публікацій

У ряді робіт запропоновані різні за складністю методи реалізації даної задачі. Результати виконаних досліджень свідчать про можливість отримання більш ефективного рішення, яке дозволяє дещо спростити практичну реалізацію структурного аналізу схеми алгоритму.

Формулювання мети дослідження

Метою дослідження є структурний аналіз схеми алгоритму.

Виклад основного матеріалу

Нехай схема алгоритму задана орієнтованим графом D = (V, X) - рис.1, де V = {v = 1, v2 = 2,v3 = 3,v4 = 4, v5 = 5} -

вершини графа, X = {x = a,x2 = b, x3 = c,x4 = d, x5 = e, x6 = f,x7 = g, xs = h, x9 = k}- дуги графа.

Рис.І.Граф алгоритму

Мета роботи аналізованого алгоритму полягає у переході від початкової вершини 1 до кінцевої вершини 5.

Одні з відомих підходів [1] до структурного аналізу ґрунтуються на матричних алгоритмах, які будуються на базі послідовного зведення у відповідні ступені матриці суміжності. При цьому наявність шляху між і -й та j -й вершинами позначається у матриці 1, відсутність такого шляху 0.

У аналізованому підході матриця суміжності даного графа D = (V, X) -

рис.2 - квадратна матриця порядку n = 5, де

,

а пераціями множення та додавання є логічні операції кон'юнкції та диз'юнкції (v).

Рис.2. Матриця першого порядку

Будемо позначати вихідну матрицю через Д, не відкориговану матрицю - добуток матриць через Д*_,ПД , відкориговану матрицю через Д.

Перший етап аналізу полягає у виявленні елементарних контурів, вершин графа, що належать контурам, та елементарних ланцюгів, що ведуть від початкової 1 до кінцевої 5 вершини графа.

З матриці суміжності рис.2 отримуємо кп = k, K12 = h елементарні контури першого порядку з довжиною дуги, що дорівнює 1, які лежать на головній діагоналі матриці. Вершини графа, що належать контурам, K = k, K = h - це вершина 3 - рядок 3 і стовпець 3 для K = k і вершина 4 - рядок 4 і стовпець 4 для K2 = h. Дуга а15 = 0, тобто. ланцюг довжиною 1 від вершини 1 до вершини 5 відсутня.

Побудуємо матрицю другого порядку Д = Д _Д - рис.З.

Рис.3.Матриця другого порядку

Як видно з рис.3 всі елементи матриці - ланцюга довжини 2. При цьому на головній діагоналі з'явився елементарний контур другого порядку K21 = db, а також два не елементарні контури другого порядку K22 = kk, K23 = hh . Вершини графа, що належать контуру K21 = db, це вершина 1 - рядок 1 і стовпець 1, вершина 2 - рядок 2 і стовпець 2. Крім того а15 = dg, тобто. з'явився елементарний ланцюг C = dg довжиною 2 від вершини 1 до вершини 5.

Відкоригуємо матрицю Д. Ланцюги а13 = ak, а24 = eh, а33 = kk, а44 = hh не є елементарними, тому їх значення приймаємо рівними нулю. Відкоригована матриця Д k показано на рис. 4.

Рис.4. Відкоригована матриця другого порядку

Побудуємо матрицю третього порядку D3 = D2k D1 - рис.5.

Рис.5. Матриця третього порядку

Як видно з рис.5 всі елементи матриці - ланцюга довжини 3. При цьому на головній діагоналі з'явилися два елементарні контури третього порядку K31 = acb і K32 = def. Вершини графа, що належать контуру K31 = acb, це вершина 1 - рядок 1 і стовпець 1, вершина 2 - рядок 2 і стовпець 2, вершина 3 - рядок 3 і стовпець 3. Вершини графа, що належать контуру K32 = def, це вершина 1 - рядок 1 і стовпець вершина 2 - рядок 2 та стовпець 2, вершина 4 - рядок 4 та стовпець 4.

Крім того, a15 = acg , тобто. з'явився елементарний ланцюг довжиною 3 від вершини 1 до вершини 5.

Відкоригуємо матрицю D. Ланцюги

a12 = dbd, a14 = deh, a21 = bdb, a23 = bak, a32 = cbd, a34 = ceh, a41 = fdb не є елементарними, тому їх значення приймаємо рівними нулю. Відкоригована матриця Dк показано на рис. 6.

Рис.6. Відкоригована матриця третього порядку

Побудуємо матрицю четвертого порядку D3 = D2k D1 - рис.7.

Рис.7. Матриця четвертого порядку

Як видно з рис.7 всі елементи матриці - ланцюга довжини 4. При цьому на головній діагоналі з'явився елементарний контур четвертого порядку К41 = acef.

Вершини графа, що належать контуру, це вершина 1 - рядок 1 та стовпець 1, вершина 2 - рядок 2 та стовпець 2, вершина 3 - рядок 3 та стовпець 3, вершина 4 - рядок 4 та стовпець 4.

Відкоригуємо матрицю DA. Ланцюги

an = acbd v defd, a13 = dbac, au = aceh, a21 = efbd v bacbv bdef, a23 = efde v bdef, a32 = cefd v cbac, a33 = cbak, a41 = fcb v fdf, a44 = fdeh.

не є елементарними, тому їх значення приймаємо рівними нулю. Відкоригована матриця D4 показана на рис. 8.

Рис.8. Відкоригована матриця четвертого порядку Побудуємо матрицю п'ятого порядку D3 = D2k D1 - рис.9.

Рис.9.Матриця п'ятого порядку

Як видно з рис.9 всі елементи матриці - ланцюга довжини 5, на головній діагоналі нові елементарні контури відсутні, а також відсутні елементарні ланцюги, що ведуть початкової до кінцевої вершини графа.

Для перевірки збіжності розглянутого методу відкоригуємо матрицю D5. Ланцюги a13 = acefa, а24 = eface v baceh, a32 = cefac, а33 = cefak, а41 = facef, a44 = faceh. не є елементарними, тому їх значення приймаємо рівними нулю. Відкоригована матриця Dk показана на рис. 10.

Рис.10. Відкоригована матриця п'ятого порядку

Побудована на її основі матриця D6 = 0, що доводить збіжність методу.

Таким чином, в результаті першого етапу аналізу виявлені елементарні контури K = k, K = h ,, К21 = db , К31 = acb , К32 = def, К41 = acef і елементарні ланцюги C = dg, C2 = acg переходу від початкової до кінцевої вершини.

У ряді випадків робота об'єкта потребує наявності контурів у схемі алгоритму. Нехай за умов завдання потрібно виключити контур К21 = db при збереженні контурів К31 = acb і К32 = def. Цю вимогу можна висловити системою рівнянь

З першого та другого рівнянь випливає b = 1 і d = 1 . Проте за третім рівнянням bd = 0. Отже, система рівнянь не сумісна, і за таких умов завдання алгоритм не може бути реалізований.

Нехай за умов завдання потрібно виключити контур acef при збереженні контурів К31 = acb, К32 = def і К21 = db . Цю вимогу можна висловити системою рівнянь

З другого та третього рівнянь випливає відповідно ac = 1 і ef = 1 . Проте за першим рівнянням acef = 0. Отже, система не сумісна, і за таких умов завдання алгоритм не може бути реалізований.

Нехай за умов завдання потрібно виключити всі контури. Введемо позначення - Sp6 робочий режим. Цю вимогу можна висловити системою рівнянь

З першого рівняння d = 1. Підстановка у друге рівняння дає b = 0. Підстановка d = 1 у четверте рівняння дає ef = 0. При цьому ac можливо як ac = 0 , так і ac = 1. Отже, система сумісна, і за таких умов завдання алгоритм реалізується.

Позначимо S - резервний режим.

З першого рівняння ac = 1. Підстановка ac = 1 в третє та п'яте рівняння дає відповідно b = 0 і ef = 0. При цьому d можливо як d = 0, так і d = 1. Система рівнянь сумісна та алгоритм реалізується.

Нехай R - сигнал перемикання режиму роботи.

Тоді

Висновки

Розглянутий підхід до структурного аналізу схеми алгоритму. Показано, що запропонований підхід забезпечує отримання шуканого результату. Представляється доцільним застосувати запропонований підхід в якості перспективного напрямку досліджень схем алгоритмів.

Література:

1.Кононюк А.Е. Дискретно-непрерывная математика. /А.Е.Кононюк -- К.: Освіта України. 2015. -- 512 с.

References:

l.Kononjuk A.E. (2015). Discretno-neprerivnaja matematika [Discrete-continuous mathematics]. K.: Osvita Ukraini [in Ukrainian]

Размещено на Allbest.ru

...

Подобные документы

  • Основні положення теорії графов. Алгоритм розфарбування графу методом неявного перебору. Задання графу матрицею суміжності. Особливості програмної реалізації на мові Turbo Pascal алгоритму оптимального розфарбування вершин завантаженого з файлу графа.

    курсовая работа [557,1 K], добавлен 15.06.2014

  • Особливості реалізації алгоритмів Прима та Крускала побудови остового дерева у графі. Оцінка швидкодії реалізованого варіанта алгоритму. Характеристика різних методів побудови остовних дерев мінімальної вартості. Порівняння використовуваних алгоритмів.

    курсовая работа [177,3 K], добавлен 18.08.2010

  • Побудування графа та матриці інцидентності. Перетворення графа у зважений за допомогою алгоритму Дейкстри, знаходження довжини найкоротшого шляху між двома вершинами та побудування дійсного шляху. Обхід дерева у прямому та зворотному порядках.

    курсовая работа [144,1 K], добавлен 03.07.2014

  • Побудова графічної схеми алгоритму та розмітка станів автомата, графа та кодування, структурної таблиці. Синтез комбінаційних схем для функцій збудження тригерів і вихідних сигналів. Представлення функції в канонічних формах алгебр Буля, їх мінімізація.

    курсовая работа [902,8 K], добавлен 27.08.2014

  • Діяльнісний підхід до організації навчального процесу в педагогічному університеті. Змістове наповнення та методика використання історичного матеріалу на лекціях з математичного аналізу. Історичні задачі як засіб створення проблемних ситуацій на лекціях.

    курсовая работа [195,5 K], добавлен 21.04.2015

  • Описание заданного графа множествами вершин V и дуг X, списками смежности, матрицей инцидентности и смежности. Матрица весов соответствующего неориентированного графа. Определение дерева кратчайших путей по алгоритму Дейкстры. Поиск деревьев на графе.

    курсовая работа [625,4 K], добавлен 30.09.2014

  • Аналіз найвідоміших методів розв’язування звичайних диференціальних рівнянь і їх систем, користуючись рекомендованою літературою. Розробка відповідної схеми алгоритму. Розв’язання системи звичайних диференціальних рівнянь в за допомогою MathCAD.

    лабораторная работа [412,4 K], добавлен 21.10.2014

  • Дослідження основних статистичних понять та їх застосування в оціночній діяльності. Характеристика методів групування статистичних даних по якісним та кількісним прикметам. Вивчення алгоритму побудови інтервального ряду, розрахунок розмаху варіації.

    лекция [259,0 K], добавлен 07.02.2012

  • Вивчення властивостей натуральних чисел. Нескінченість множини простих чисел. Решето Ератосфена. Дослідження основної теореми арифметики. Асимптотичний закон розподілу простих чисел. Характеристика алгоритму пошуку кількості простих чисел на проміжку.

    курсовая работа [79,8 K], добавлен 27.07.2015

  • Понятие матрицы достижимости и связности. Операция удаления вершины из графа. Алгоритм выделения компонент сильной связности. Разработка и листинг программы на языке Turbo Pascal, осуществляющей вычисление матрицы достижимости по заданному алгоритму.

    курсовая работа [584,3 K], добавлен 26.04.2011

  • М- и (М-1)-последовательности на основе произведения многочленов. Результаты по синтезу модели: структурная схема, методика построения по алгоритму Хемминга и по корреляционному моменту, аффинному преобразованию для заданного множества векторов.

    контрольная работа [960,4 K], добавлен 24.07.2013

  • Нове уточнення поняття алгоритму вітчизняним математиком Марковим: 7 уточнених ним параметрів. Побудова алгоритмів з алгоритмів. Універсальний набір дій по управлінню обчислювальним процесом. Нормальні алгоритми Маркова. Правило розміщення результату.

    реферат [48,7 K], добавлен 30.03.2009

  • Деякі відомості математичного аналізу. Виховне значення самостійної навчальної роботи. Короткий огляд та аналіз сучасних систем комп'ютерної математики. Відомості про систему Wolfram Mathematica. Обчислення границь функції, похідних та інтегралів.

    курсовая работа [1,0 M], добавлен 10.05.2011

  • Контрольный пример к алгоритму метода хорд. Вычисление и уточнение корня методом хорд и касательных. Нахождение второй производной заданной функции. Уточненное значение корня решаемого уравнения на заданном интервале. Код программы данного примера.

    лабораторная работа [276,9 K], добавлен 02.12.2014

  • Практична реалізація задачі Гамільтона про мандрівника методом гілок та меж. Математична модель задачі комівояжера, її вирішення за допомогою алгоритму Літтла. Програмне знаходження сумарних мінімальних характеристик (відстані, вартості проїзду).

    курсовая работа [112,5 K], добавлен 30.09.2014

  • Розв'язання задач з теорії множин та математичної логіки. Визначення основних характеристик графа г (Х,W). Розклад функцій дискретного аргументу в ряди по базисним функціям. Побудова та доведення діаграми Ейлера-Вена. Побудова матриці інцидентності графа.

    курсовая работа [988,5 K], добавлен 20.04.2012

  • Точне знаходження первісної й інтеграла для довільних функцій. Чисельне визначення однократного інтеграла. Покрокові пояснення алгоритму методу Чебишева, реалізованого засобами програмування СКМ Mathcad. Знаходження інтегралу за допомогою панелі Calculus.

    курсовая работа [390,8 K], добавлен 19.05.2016

  • Необхідні поняття теорії графів. Задача про максимальний потік. Алгоритм Форда знаходження максимального потоку. Модифікація алгоритму Форда розв’язання задачі максимізації кількості призначень у задачах розподілу. Результати числового експерименту.

    курсовая работа [499,9 K], добавлен 18.12.2013

  • Основні принципи і елементи комбінаторики. Теорія ймовірностей: закономірності масових випадкових подій, дослідження і узагальнення статистичних даних, здійснення математичного і статистичного аналізу. Постановка і вирішення задач економічного характеру.

    курс лекций [5,5 M], добавлен 21.11.2010

  • Використання методу Монтгомері як ефективний шлях багаторазового зведення за модулем. Складність операцій з многочленами та обчислення їх значень. Алгоритм Руфіні-Горнера. Визначення рекурсивного процесу для множення. Доведення алгоритму Тоома-Кука.

    контрольная работа [103,8 K], добавлен 07.02.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.