Алгоритмічне забезпечення ІС

Алгоритмічне забезпечення (АЗ; IS algorithmically support)сукупність алгоритмів рішення математичних задач функціонального наповнення ІС.

Виділяють алгоритми досягнення цілей, виконання функцій і рішення задач. АЗ включає засоби опису узагальнених процедур функціонування і моделювання об’єктів ІС, а також засоби детального опису рішення конкретних задач і перетворення даних. АЗ покриває усе поле оголошених функціональних можливостей ІС від узагальнених цілей до детальних процедур.

АЗ формується як відображення простору рівнів гіперпростору ІС (функціонального, математичного, інформаційного й інших видів забезпечень) на простір алгоритмів. Процедури ФЗ і МЗ використовуються для уточнення прийнятих алгоритмів рішення задач і моделей поведінки об’єктів. З інформаційного забезпечення використовуються алгоритми перетворення даних. У свою чергу уточнені алгоритми АЗ трансформуються потім в алгоритми програмного забезпечення.

Таким чином, АЗ поєднує у своєму складі повний набір алгоритмів:

- узагальненого функціонування;

- рішення функціональних задач;

- моделювання.

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

Алгоритми рішення функціональних задач підрозділяються на математичні й евристичні. Математичні алгоритми визначаються обраними математичними методами і конкретизацією способу їх рішення. Евристичні алгоритми використовуються у випадках оцінки якості якогось процесу кількісною мірою.

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

Всі алгоритми перерахованих груп в залежності від обраного базису С–F–S можуть бути:

- ціле-орієнтованими;

- функціонально-орієнтованими;

- структурно-орієнтованими.

Ціле-орієнтовані алгоритми описують цільовий компонент С системи (проблему, цілі, функції, задачі, процедури) від верху до низу в прив’язці до структурних елементів системи S.

Функціонально-орієнтоване АЗ включає алгоритми задач обліку, аналізу, прогнозування, планування і управління, що забезпечують досягнення заданої цілі С конкретного структурного підрозділу S.

Структурно-орієнтоване АЗ поєднує алгоритми конкретних структурних підрозділів (системи, підсистем, модулів, елементів) з урахуванням виконання останніми заданих цілей С і функцій F.

Алгоритм в загальному випадку – це послідовність етапів виконання заданої процедури. Алгоритми математичні характеризуються чіткою послідовністю дій, що приводять до вирішення задач даного класу. Послідовність дій алгоритму можна описати за допомогою:

- вербального (змістовного) способу;

- методу блок-схем;

- операторного методу;

- методу алгоритмічних мов і інших засобів.

Опис алгоритму на вербальному рівні відповідає послідовності етапів у вигляді 1,2,3, ... і т.д. Даний спосіб не є формалізованим.

Приклад. Нехай необхідно описати алгоритм формування повідомлень за виразом (3.4) при відхиленні параметру Af від норми An (нехай, Af =12.50; An=15.50):

(3.4)

Послідовність вербального опису.

1.Початок.

2.Поточне введення вихідних даних (Af =12.50; Аn=15.50).

3.Перевірка умови (Af ≤ An).

4.Якщо умова (Af ≤ An) виконується (так), то формується повідомлення (SOB1) "Режим нормальний".

5.Якщо умова (Af ≤ An) не виконується (ні), то формується повідомлення (SOB2) "Режим аварійний".

6.Кінець.

У методі блок-схем для опису дій алгоритму використовується набір графічних фігур (паралелограми, ромби, прямокутники й ін.). Кожному графічному елементові відповідає визначений обчислювальний етап. Призначення фігур та їх накреслення регламентоване (ГОСТ 19.701-90 або ІСО 580785). Цей метод використовується в якості основного при описі алгоритмів.

Алгоритми будь-якої складності в якості базисних використовують три простих "цеглинки" – лінійна ділянка, розгалуження і цикл (рис. 3.6. а, б, в).

 

 

Рис. 3.6. Базисні елементи опису алгоритмів.

 

Блок-схема алгоритму виразу 3.6. представлена на рис. 3.7.

 

 

Рис. 3.7. Блок-схема алгоритму

 

У випадку операторного методу кожному етапу алгоритму ставлять у відповідність великі букви латинського або кириличного алфавіту (рис. 3.7). Ці символи етапів одержали назву операторів. Крім них, використовуються також ліві і праві напівдужки як символи передачі управління (). Цей спосіб часто застосовується з метою публікації алгоритмів.

Алгоритм попереднього прикладу, описаний операторним методом, представляється у вигляді рядка операторів, що називається логічною схемою алгоритму (ЛСА):

,

де Н1 і Z6 – оператори початку і закінчення роботи алгоритму;

Р3 – логічний оператор перевірки умови;

В2, В4, В5 – відповідно оператори введення даних, виводу повідомлення SOB1 і повідомлення SOB2;

() – ліва і права напівдужки передачі управління від Р3 до В5 і від В4 до Z6;

; – розділяючий знак (крапка з комою) характеризує відсутність зв’язку між сусідніми операторами.

Метод алгоритмічних мов залучає засоби мов високого рівня для опису простих алгоритмів проектування або програмування. Для складних алгоритмів спочатку складається блок-схема і її деталізація, а потім провадиться запис простих процедур на мовах високого рівня.