Научная статья на тему 'ПАРАЛЕЛіЗМ АЛГОРИТМУ СИНТЕЗУ МОДЕЛЕЙ ОПТИМАЛЬНОї СКЛАДНОСТі НА ЗАСАДАХ ГЕНЕТИЧНИХ АЛГОРИТМіВ'

ПАРАЛЕЛіЗМ АЛГОРИТМУ СИНТЕЗУ МОДЕЛЕЙ ОПТИМАЛЬНОї СКЛАДНОСТі НА ЗАСАДАХ ГЕНЕТИЧНИХ АЛГОРИТМіВ Текст научной статьи по специальности «Математика»

CC BY
244
33
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЕМПіРИЧНА МОДЕЛЬ / ВНУТРіШНіЙ ПАРАЛЕЛіЗМ / ГРАФ АЛГОРИТМУ / ШИРИНА ЯРУСУ / ПАРАЛЕЛЬНА СТРУКТУРА / ЭМПИРИЧЕСКАЯ МОДЕЛЬ / ВНУТРЕННИЙ ПАРАЛЛЕЛИЗМ / ГРАФ АЛГОРИТМА / ШИРИНА ЯРУСА / ПАРАЛЛЕЛЬНАЯ СТРУКТУРА / EMPIRICAL MODEL / INTERNAL PARALLELISM / ALGORITHM GRAPH / CIRCLE / CIRCLE WIDTH / ALGORITHM GRAPH HEIGHT / COMPUTER SYSTEM / PARALLEL STRUCTURE

Аннотация научной статьи по математике, автор научной работы — Горбійчук М. І., Медведчук В. М., Пашковський Б. В.

Для сложных технических объектов с большим числом входных переменных затраты машинного времени на построение математичской модели достаточно заметны. Проведен анализ метода построения эмпирических моделей оптимальной сложности на основе генетических алгоритмов. Показано, что такой алгоритм имеет внутренний параллелизм, что позволяет разработать эффективную программу реализации, что приведет к сокращению затрат машинного времени

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

Похожие темы научных работ по математике , автор научной работы — Горбійчук М. І., Медведчук В. М., Пашковський Б. В.

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

The parallelism in the algorithm of the synthesis of models of optimal complexity based on the genetic algorithms

An analysis of methods for constructing mathematical models has shown that one of the most promising methods for constructing such models is the inductive method of model self-organization that allows to obtain the model of optimal complexity. The disadvantage of this method is its high dimensionality, which limits the scope of this method. A method of the synthesis of models of optimal complexity based on the genetic algorithms, which has a much smaller dimensionality than the inductive method of model self-organization, can be an alternative to it. But for complex technical facilities with a large number of input variables, computing time expenditures are still quite noticeable. In order to reduce such expenditures, analysis of the method of constructing empirical models of optimal complexity based on the genetic algorithms of optimal complexity for parallelism by constructing the algorithm graphs was carried out. It was shown that this algorithm has an internal parallelism, which allows to develop an effective program of the algorithm implementation on a parallel-structure computer system, and this in turn would reduce the computer time expenditures at the practical implementation of the algorithm.

Текст научной работы на тему «ПАРАЛЕЛіЗМ АЛГОРИТМУ СИНТЕЗУ МОДЕЛЕЙ ОПТИМАЛЬНОї СКЛАДНОСТі НА ЗАСАДАХ ГЕНЕТИЧНИХ АЛГОРИТМіВ»

-------------------□ □-----------------------

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

Ключові слова: емпірична модель, внутрішній паралелізм, граф алгоритму, ширина ярусу, паралельна структура

□-------------------------------------□

Для сложных технических объектов с большим числом входных переменных затраты машинного времени на построение математич-ской модели достаточно заметны. Проведен анализ метода построения эмпирических моделей оптимальной сложности на основе генетических алгоритмов. Показано, что такой алгоритм имеет внутренний параллелизм, что позволяет разработать эффективную программу реализации, что приведет к сокращению затрат машинного времени

Ключевые слова: эмпирическая модель, внутренний параллелизм, граф алгоритма, ширина яруса, параллельная структура -------------------□ □-----------------------

1. Вступ

Якщо є вичерпні дані про певну систему (об’єкт), то можна отримати модель, яка буде адекватно відображати поведінку такої системи при зроблених допущеннях і при відомих параметрах середовища, з яким взаємодіє система. Такі моделі дістали назву детермінованих і використовуються для розв’язання цілого ряду задач у різних областях людської діяльності.

У більшості випадків системи (об’єкти) є досить складними. Складність їх полягає у наявності багатьох компонентів, які складним чином взаємодіють між собою. Прикладом таких систем можуть бути як технічні, так і екологічні об’єкти [1, 2]. У таких випадках для опису взаємодії між параметрами системи і зовнішнім середовищем, яке безпосередньо діє на систему і викликає зміну її стану, використовують емпіричне моделювання. Отримані у такий спосіб математичні моделі широко використовують для розв’язання таких задач як розпізнавання образів, прогнозування, автоматична класифікація, оптимальне керування та інші [3].

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

УДК 519.684.4

ПАРАЛЕЛІЗМ АЛГОРИТМУ СИНТЕЗУ МОДЕЛЕЙ ОПТИМАЛЬНОЇ СКЛАДНОСТІ НА ЗАСАДАХ ГЕНЕТИЧНИХ АЛГОРИТМІВ

М. І. Горбійчук

Доктор технічних наук, професор* E-mail: ksm@nung.edu.ua В. М. Медведчук Аспірант* E-mail: ksm@nung.edu.ua Б. В. Пашковський Аспірант* E-mail: ksm@nung.edu.ua *Кафедра комп’ютерних систем та мереж Івано-Франківський національний технічний університет нафти і газу вул. Карпатська, 15, м. Івано-Франківськ, Україна, 76018

2. Аналіз літературних даних

В основі емпіричного моделювання багатьох явищ і процесів лежить широко відомий метод найменших квадратів (МНК), започаткований більше ніж 200 років тому назад молодим німецьким математиком Карлом Фрідріхом Гаусом.

МНК передбачає, що відома структура моделі і необхідно за спостереженнями як за вхідними, так і за вихідною величинами побудувати модель, яка найкращим чином апроксимувала би емпіричні дані. Як критерій наближення вибирають суму квадратів відхилень експериментальних даних від розрахункових, що отримані за емпіричною моделлю.

Критерій наближення МНК є внутрішнім критерієм [4] і його застосування приводить до помилкового висновку: чим складніша модель, тим вона точніша. Оскільки на вихід системи накладається перешкода (допускають, що вона адитивна), то надмірна точність моделі може значно спотворити об’єктивно існуючу функціональну залежність між виходом системи і її входами.

Тому для вибору структури емпіричної моделі акад. О. Г. Івахненком був запропонований метод, який дістав назву індуктивний метод самоорганізації моделей [5], ідейну сторону якого визначає теорема Геделя. Ця теорема стверджує, що ніяка система аксіом не може бути логічно замкнутою: завжди знайдеться така теорема, для доведення якої необхідне зовнішнє

© М. I. іорбиичук, В. м. Медведчук, Б. в. Пашковськии, 2014

доповнення - розширення початкової системи аксіом. Стосовно задачі синтезу моделі геделівський підхід означає застосування зовнішнього критерію для однозначного вибору структури моделі із заданого класу моделей. Критерій називають зовнішнім, якщо його обчислення ґрунтується на даних, які не використовувались при розв’язанні задачі МНК.

Задача синтезу емпіричних моделей з використанням індуктивного методу самоорганізації моделей відноситься до класу задач великої розмірності. Наприклад, якщо вибрана поліноміальна модель, яка має 7 аргументів і п’яту степінь полінома, то загальне число моделей-претендентів, серед яких слід вибрати модель оптимальної складності складе [6] ~ 2,6 10238. Зрозуміло, що реалізувати такий обсяг обчислень навіть на найновіших ЕОМ неможливо.

Для зниження розмірності задачі авторами роботи

[6] запропонований метод синтезу емпіричних моделей на засадах генетичних алгоритмів, суть якого буде подана нижче. Це дало змогу реалізувати відповідний алгоритм у якому число вхідних змінних не перевищує семи, а степінь полінома не більше п’яти. При цьому затрати машинного часу вдалось радикально зменшити, але вони залишаються ще досить помітними. Одним із ефективних шляхів зменшення таких затрат є застосування паралельних обчислень, до яких на сьогоднішній день привернута значна увага як вітчизняних, так і зарубіжних дослідників [3, 7-9].

3. Мета та задачі дослідження

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

Задачами дослідження є:

- аналіз розробленого алгоритму синтезу емпіричних моделей оптимальної структури на засадах генетичних алгоритмів для виявлення його внутрішнього паралелізму;

- визначення можливості реалізації такого алгоритму на різних обчислювальних системах і аналіз затрат машинного часу при такій реалізації.

4. Дослідження алгоритму синтезу моделей оптимальної складності на засадах генетичних алгоритмів на наявність внутрішнього паралелізму

Реалізація індуктивного методу самоорганізації моделей здійснюється поетапно: перший етап генерування моделей-претендентів (у певному порядку підвищення їх складності); другий вибір найкращої моделі за мінімумом одного із критеріїв селекції. Як критерій селекції вибирають [5]: критерії регулярності

і зміщення

£ ^«(Б)- у «(Б) А2 (Б) = -м

ІИЛ)-У(1)(Б)

А2 (А,Б) = -і=і

і И2

Індуктивний метод самоорганізації моделей передбачає, що всі дані, отримані у результаті експерименту, розбиваються на дві частини - навчальну N і перевірну N5 . Тоді у формулах (1) і (2) у(і)(Л), у(і)(В) -значення виходу моделі, що обчислені відповідно на множинах експериментальних значень N і НВ. Якщо вибраний критерій регулярності (1), то витирають такий розподіл даних експерименту [10]: ^ = 0,7N і N = 0,3^ а при виборі критерію (2) - ^ = 0,5N і ^ = 0,5^

Найчастіше при побудові емпіричних моделей функціональну залежність між виходом об’єкта і його входами обирають у такому вигляді:

У = І ак4

(3)

2>(і)(б)2

(1)

де ак , к = 1,г - параметри моделі; х = (х1,х2,^хп)Т -вектор вхідних величин.

Розрізняють три способи генерування моде-лей-претендентів. Перший із них комбінаторний [5], за яким вибір моделей-претендентів здійснюється шляхом прирівнювання до нуля деяких коефіцієнтів у виразі (3), що дає змогу отримати сукупність моделей. Вибір найкращої із них здійснюється на основі одного із критеріїв селекції (2) або (3). Другий спосіб відомий як метод групового врахування аргументів (МГУА) [11], у якому генерування моделей-претен-дентів здійснюється за допомогою багаторядної процедури. У першому ряду селекції комбінують всі можливі пари аргументів (вхідних величин), і для кожної із них утворюють моделі, наприклад, у вигляді повного полінома. Із всіх часткових моделей, утворених у такий спосіб, вибирають К найкращих за одним із критеріїв селекції. Із виходів цих К моделей знову утворюють комбінації всіх можливих пар, які є входами другого ряду селекції. Для кожної із цих пар знову формують часткові моделі, із яких вибирають К найкращих. Процес нарощування рядів селекції відбувається до тих пір поки вибрий критерій селекції зменшує своє значення. Оцінка параметрів часткових моделей здійснюється за допомогою МНК. Третій метод [10] подібний до другого. Різниця лише у тому, що на кожному ряді селекції часткові моделі утворюють шляхом прирівнювання до нуля певного числа їх коефіцієнтів.

Недоліком комбінаторного методу селекції моделей є необхідність великого числа перебору часткових моделей. Якщо початковою моделлю вибраний повний поліном степені т, то загальне число моделей претендентів буде 2м -1, де М - загальне число членів початкового полінома. Навіть сучасні ЕОМ не здатні реалізувати комбінаторний алгоритм селекції моделей при значній кількості вхідних величин і при високій степені початкового полінома. МГУА синтезує моделі, в яких фігурують проміжні змінні, що значно утруднює процес переходу до вхідних змінних системи.

Е

Сказане відноситься і до третього методу, оскільки він по суті є модифікацією МГУА.

Як емпіричну модель виберемо поліном ступіня

,і(а) = ^ - Ба)Т ^ - Ба).

(7)

М 1

У !>і П х/-і 0 І 1

(4)

де аі - коефіцієнти полінома; б.ц - ступіні аргументів, які повинні задовольняти обмеженню:

£** *т.

І=1

Число членів М полінома (4) визначають за такою формулою [12]:

(т + п)!

М = -

т!п!

(5)

Метод найменших квадратів передбачає, що структура моделі (4) відома. Тоді задача полягає у тому, щоб на основі спостережень за вхідними і вихідною величинами, визначити параметри аі, і = 0,М -1 моделі (4), таким чином, щоб якомога точніше наблизити вихід системи до виходу моделі. За критерій такого наближення вибирають суму квадратів відхилень розрахункових У(і) від експериментальних значень Y(i), і = 1,”. При відомій матриці спостережень

■ *?> х« . • х<1)

X = х12) 42) • • х<2)

х(”) _ 1 х(”) . 2 • х<к)

і вибраних параметрах моделі (1) можна обчислити її вихід

У = Ба,

(6)

де Б =

П(*ГГ П(*('Т • ■■ п(х(-:

І=0 ' ' І=0 ' ' І=0 ' '

п (хт П НТ • ■■ її (І

І=0 І=0 І=0

її (*«)’" І=0 її (х(Т • І=0 ■■ П (І І=0

а = (а0,а1,^,аМ_1) - вектор параметрів моделі (4);

У = (у(1),у(2),---,У(К)) - обчислені значення моделі (4) у кожній точці спостережень.

За відомими значеннями Y(l) та у(і) обчислити критерій наближення (апроксимації)

Л а )=і И_ у(і))2,

1=1

який подамо як скалярний добуток двох векторів і(а) = ^_у)Т^_у).

Враховуючи значення у, яке визначається формулою (6), отримуємо

Значення параметрів моделі (4) обчислюють із умови, що критерій наближення (7) набуде мінімального значення відносно вектора параметрів а . Мінімізація

(7) приводить до такого результату:

МБа = БТУ , (8)

де МБ = БТБ - матриця Фішера.

У тому випадку, коли розмірність вектора а невелика і матриця М добре обумовлена, із рівняння (8) можна безпосередньо визначити

При комбінаторному методі синтезу моделей оптимальної складності із повного полінома (4) отримують модель, де частина коефіцієнтів а1, і = 1,М моделі (4) набувають нульових значень. Оскільки задача синтезу емпіричних моделей оптимальної складності з використанням комбінаторного методу має велику розмірність, то для зняття проблеми великої розмірності комбінаторного методу застосуємо генетичний підхід. Утворимо впорядковану послідовність, де на і -тому місці буде знаходитись одиниця або нуль в залежності від того чи параметр а1, і = 1,М моделі (4) буде відмінним від нуля або матиме значення нуль. У теорії генетичних алгоритмів така упорядкована послідовність носить назву хромосоми, а атомарний елемент (одиниця або нуль) хромосоми - це ген. Набір хромосом утворює популяцію. Важливим поняттям у теорії генетичних алгоритмів є функція пристосування, яка визначає ступінь пристосованості окремих особин у популяції. Вона дає змогу із усієї популяції вибрати ті особини, що є найбільш пристосованими, тобто ті яким відповідає найменше (найбільше) значення функції пристосування. У задачі синтезу моделей оптимальної складності як функцію пристосування виберемо критерій селекції (1) або (2).

Як і класичний генетичний алгоритм [13], алгоритм синтезу моделей оптимальної складності, що ґрунтується на засадах генетичних алгоритмів, складається із таких кроків.

К1. Формування початкової популяції (ініціалізація). На першому кроці роботи алгоритму випадковим чином формулюється популяція із I особин, кожна із яких є хромосомою довжиною М . Число генів у хромосомі визначається за формулою (5).

К2. Оцінка пристосованості хромосоми у популяції. Для кожної хромосоми обчислюється значення критерію селекції (1) або (2) наступним чином. Якщо вибраний критерій селекції (1), то формуються матриці FA і FB розмірами КА х М і N5 х М. Із матриці FA вилучається і -тий стовпець, якщо на і -тій позиції хромосоми знаходиться нуль; якщо одиниця, то відповідний стовпець залишається без змін. У результаті отримаємо матрицю І^А, із якої вилучено с стовпців (за кількістю нулів у хромосомі). Розмір такої матриці буде ^ х(М _ с). Аналогічно отримаємо матрицю І^в розміром N5 х(М _ с). На множині точок N обчислюються ненульові коефіцієнти а^ , ] = 1,М _с моделі (4) шляхом розв’язання нормального рівняння Гауса, яке видозмінюється наступним чином:

З

М Б,АаА = БХ, (9)

де аА = (аА0,аА1,..,аАМ-с-1) - вектор ненульових па-

раметрів моделі, який асоційований з черговою хромосомою; МБА = БАТБА . YA = ^(1)Д(2),..Д(Ка)) - вектор експериментальних значень на множині ”А .

За знайденими коефіцієнтами аА поліноміальної моделі на множині точок ”В обчислюють значення

У (В) = БА. (10)

Знаючи у (В), за формулою (1) обчислюють значення функції пристосування Д2 (В), І = 1,1 для кожної хромосоми із початкової популяції.

У тому випадку, коли як функцію пристосування використовують критерій зміщення (2), тоді складають рівняння (9), яке розв’язують методом Гауса відносно параметрів аА. Після цього обчислюють у (А ) = БАаА за формулою (10). Отримані значення _у (А) і у (В) дають змогу знайти значення Д2 (А,В), І = 1,1 для кожної хромосоми із популяції.

К3. Перевірка умови зупинки алгоритму.

Визначають

Дт (В) = тіпД2 (В), (11)

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

Дт (А,В) = тіпД2 (А, В). (12)

Якщо мінімальне значення (11) або (12) критерію селекції (1) або (2) не перевищує деякого заданого значення Е , то відбувається зупинка обчислень. Зупинка обчислень також може відбутись у випадку, коли у результаті виконання алгоритму немає суттєвого зменшення функції пристосування або у тому випадку, коли виконано задане число ітерацій.

Після виконання однієї із трьох умов із чергової популяції вибирається та хромосома сЬ”, для якої виконується умова (11) або (12). Ця хромосома задає структуру моделі оптимальної складності і формує матрицю Б* таким чином, що із початкової матриці вилучаються стовпці, які асоційовані з нульовими значеннями відповідних генів. Перерахунок параметрів моделі (4) здійснюється на всій множині точок N за допомогою МНК.

К4. Селекція хромосом. За розрахованими на другому кроці алгоритму значеннями функції пристосування здійснюється відбір тих хромосом, які будуть брати участь у створенні потомків для нової популяції. Такий відбір проводиться за принципом природного відбору, коли найбільші шанси у створенні нової популяції мають хромосоми з найкращими значеннями функції пристосування (1) або (2). Найпоширенішим методами селекції є метод рулетки і турнірний метод [13]. Метод рулетки можна застосовувати тоді, коли функція пристосованості додатна, що робить його придатним лише для задач максимізації. Турнірний метод можна використовувати як у задачах максимізації, так і у задачах мінімізації.

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

К5. Формування нової популяції потомків. Над відібраними особинами алгоритму здійснюють відо-зміну за допомогою двох основних операторів: схрещування і мутації. Слід зауважити, що оператор мутації застосовується рідше у порівнянні з оператором схрещування. Вірогідність схрещування досить висока (0 < Рс < 1). Тоді як вірогідність мутації складає -

0 < Рт < 0,1. Ймовірність мутації Рт можна задати шляхом вибору випадкового числа із інтервалу [0; 1] для кожного гена. Мутації підлягають ті гени (шляхом заміни одиниці на нуль і навпаки), для яких розігране число виявиться меншим або рівним Рт. Мутація може здійснюватись як над пулом родичів, так і над пулом потомків. Оператор схрещування застосовується до пулу потомків у такий спосіб. Із утвореної популяції особин випадковим чином вибирається пара хромосом

1 генерується випадкове число Р2 із інтервалу [0; 1]. Якщо виконується умова Р2 < Рс, то над парою хромосом здійснюється схрещування. У протилежному випадку пара хромосом залишається без змін. Для пари хромосом, які підлягають схрещуванню, випадковим чином розігрується позиція гена (локус), яка визначає точку схрещування. Оскільки кожна хромосома має М генів, то точка схрещування Lc - це натуральне число менше М . Тому фіксація точки схрещування зводиться до вибору натурального випадкового числа із інтервалу [1'^с -1] . Дія оператора схрещування приводить до того, що із пари родичів утворюється нова пара потомків: на позиціях від Lc + 1до Мхромо-соми у парі обмінюються своїми генами.

К6. Після виконання оператора схрещування відбувається перехід до кроку К2.

Реалізація алгоритму синтезу моделей оптимальної складності показала [6], що він дає значний виграш у часі у порівнянні з комбінаторним методом селекції моделей. Але із збільшенням розмірності задачі синтезу емпіричних моделей зростають затрати машинного часу. Для зменшення таких затрат необхідно вивчити внутрішню структуру алгоритму з метою виявлення його внутрішнього паралелізму.

Внутрішній паралелізм є властивістю алгоритму і не залежить від його реалізації на конкретній ЕОМ.

Виявити внутрішній паралелізм алгоритму можна, побудувавши орієнтований граф [3]. Вершини такого графа можуть бути як прості математичні операції (додавання, віднімання, множення та ділення), так і сукупності операцій, які оформлені у вигляді функцій або підпрограм [14]. На множині вершин-операцій певним чином визначений порядок виконання операцій, що дає змогу задати дуги графа. Якщо операція, яка відповідає вершині в , використовує хоча би один аргумент як результат виконання операції відповідної вершини а , то вершини а і в з’єднані орієнтованою дугою. У протилежному випадку дуга між вершинами а і в не проводиться. Побудований у такий спосіб орієнтований граф носить назву графа алгоритму [3].

Граф алгоритму можна розбити на яруси. У середині кожного ярусу немає зв’язків між вершинами. Виходи кожного ярусу є аргументами для наступного ярусу. Ярусам графа, як правило, присвоюють порядкові номери 1, 2, ..., ’. Число вершин в одному ярусі визначає його ширину, а число ярусів у паралельній формі - висоту графа алгоритму.

Е

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

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

Граф алгоритму можна розглядати як розгорнутих у часі послідовність ярусів, число яких визначається умовою зупинки алгоритму. Це число і визначає висоту графа алгоритму.

Вершини кожної гілки графа асоційовані з операціями формування матриці МБА , системи лінійних алгебраїчних рівнянь (9), яку у матрично-векторній формі запишемо так:

АаА = Ь ,

(13)

де А = МБА; Ь = БдУ* , а також її розв’язуванням. У кожній вітці графа алгоритму за формулою (10) обчислюється значення величини у (В).

Дослідимо на паралелізм алгоритми розв’язання системи лінійних алгебраїчних рівнянь (13) та обчислення значення величини у (В) за формулою (10).

Розв’язання системи (13) здійснюється у два етапи [15]: перший приведення матриці А до верхнього діагонального вигляду з одиницями на головній діагоналі з одночасним перерахунком вільних членів системи рівнянь; другий етап знаходження розв’язків системи рівнянь (13) методом зворотного ходу.

Рис. 1. Граф алгоритму синтезу моделей оптимальної складності

Утворимо розширену матрицю Аь = [А \

розміром (М_с)х(М_с +1) і приведемо її до верхнього

діагонального виду , здійснивши такі операції над її елементами [15]:

а(к-1) _______________________________ ______________ акк)=і, а(,к)=а(к_1) _ а!к_1)акк), і=к+и, і=к+и+1,

к = 1,2 ,

(14)

де z = М _ с .

Результатом перетворення матриці Аь за формулами (14) буде верхня діагональна матриця

и=

Зворотний хід, у якому у зворотному порядку визначаються невідомі здійснюється за формулами

“ 1 и12 и13 • • и12 и1,2+1

0 1 и23 • ' и22 и2,2+1

0 0 1 • ' и32 и3,2+1

0 0 0 • 1 и2,2+1 _

, аа,і = иі,2+1 -Х ииаА,і, і = 2 -1,1. І=і+1

(15)

Побудуємо граф алгоритму (14). Вершини графа відповідають операціям типу а/Ь і а - cd. Для того, щоб полегшити аналіз графа алгоритму, вершини графа розмістимо у певному порядку. Розглянемо прямокутну решітку у трьохвимірному просторі з координатами і, і, к У всі цілочисельні вузли решітки для І = 1,2 +1, і, к = 1,2 помістимо вершини графа. Аналізуючи формули (14), можна прийти до висновку, що у вершину з координатами і, і, к буде передаватися результат виконання операції, який відповідає вершині з координатами і, і, к -1. Для к = 2 граф алгоритму показаний на рис. 2. Паралелізм алгоритму (14) проявляється у тому, що для кожного к перерахунок елементів матриці Аь здійснюється незалежно.

Тепер проаналізуємо алгоритм (15) розв’язування системи лінійних алгебраїчних рівнянь з трикутною матрицею и методом зворотної підстановки. Фізичний зміст задачі синтезу оптимальної структури емпіричної моделі такий, що матриця и є не виродженою.

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

,0-1)

а А^-і а А ,2-і и2-і,2-І+1аА,2-і+1 , аА,2-і и2-І,2+1 , аА,2-І аА,2-

(0)

з' ' — і

_.(і)

і = 1,2 - 1, ) = 1,і .

(16)

Основна операція алгоритму виду а_Ьс виконується для всіх значень індексів і, і. Всі інші операції виконують присвоєння. У декартовій системі з осями і, І побудуємо координатну сітку і у її вузлах розмістимо вершини графа, що відповідають операціям а _ Ьс (рис. 3).

кк

З

Рис. 2. Граф алгоритму приведення матриці Аь до верхньої трикутної форми

Формулу (10) запишемо в іншому вигляді

у (В) = Х^а,,, (17)

і=1

де ^ - і-тий стовпець матриці БВ .

Граф алгоритму, побудований на основі аналізу формули (17), показаний на рис. 4 і він носить назву графа алгоритму подвоєння.

Граф має s ярусів. На першому ярусі виконується бінарна операція множення вектора (стовпця матриці) на число. На решта ярусах маємо бінарні операції додавання. На нульовому ярусі розміщені вершини, які відповідають введенню початкових даних ^ та аАі.

Оскільки на при переході від першого ярусу до кожного наступного ярусу кількість вершин графа зменшується наполовину, то на першому ярусі будемо мати 2/2 вершин (для простоти вважаємо, що 2 можна подати як степінь числа 2); на другому ярусі буде 2/22 ; на третьому - 2/23 і т. д. На останньому s -тому ярусі маємо 2/2*. Але останній ярус вміщує тільки одну вершину, тому 2/2* =1. З останньої рівності знаходимо висоту алгоритму подвоєння за умови, що 2 можна подати як ступінь числа 2

* = ^2 2 .

Використовуючи рекурентну процедуру (16), побудуємо граф алгоритму, включивши до нього також вершини, які асоційовані з введення даних иі;і та иі2+1,

і = 2 -1,1. Яруси графа алгоритму відмічені пунктирними лініями. Загальне число ярусів, які вміщують операції типу а - Ьс, дорівнює 2 -1.

Кожна гілка графа алгоритму синтезу моделей оптимальної складності вміщує операцію множення матриці БВ розміром ”В х 2 на вектор аА за формулою (10). У результаті отримуємо вектор у(В).

Рис. 4. Граф алгоритму подвоєння

У загальному випадку значення z Ф 28. Тоді 8 = [^^] , де ціла частина числа [^^] береться з надлишком.

5. Висновки

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

Рис. 3. Граф алгоритму розв’язання системи лінійних алгебраїчних рівнянь вання системи лінійних алгебраїчних

Е

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

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

Література

1. Горбійчук, М. І. Метод синтезу емпіричних моделей з врахуванням похибок вимірювань [Текст] / М. І. Горбійчук, І. В. Щупак, Т. Осколіп // Методи та прилади контролю якості. - 2011. - № 2 (27). - С. 67-76.

2. Горбійчук, М. І. Метод побудови математичних моделей складних процесів на засадах генетичних алгоритмів [Текст] / М. І. Горбійчук, М. А. Шуфнарович // Штучний інтелект. - 2010. - № 4. - С. 50-57.

3. Воеводин, В. В. Параллельные вычисления [Текст] / В. В. Воеводин, Вл. В. Воеводин. - СПб: БХВ-Петербург, 2002. - 608 с.

4. Ермаков, С. М. Математическая теория оптимального эксперимента [Текст] / С. М. Ермаков, А. А. Жиглявский. - М.: Наука, 1987. - 320 с.

5. Ивахненко, А. Г. Индуктивный метод самоорганизации моделей сложных систем [Текст] / А. Г. Ивахненко. - К.: Наукова думка, 1981. - 296 с.

6. Горбійчук, М. І. Метод синтезу емпіричних моделей на засадах генетичних алгоритмів [Текст] / М. І. Горбійчук, О. Б. Василенко, І. В. Щупак // Розвідка та розробка нафтових і газових родовищ. - 2009. - № 4(33). - С. 72-79.

7. Ортега, Дж. Введение в параллельные и векторные методы решения линейных систем [Текст] / Дж. Ортега; пер. с англ. Х. Д. Икрамова, И. Е. Капорина; под ред. Х. Д. Икрамова. - М.: Мир, 1991. - 367 с.

8. Бэбб, Р. Программирование на параллельных вычислительных системах [Текст] / Р. Бэбб, Дж.Мак-Гроу, Т. Акселрод и др.; пер. с англ. А. С. Косачева, Л. В. Шабанова под ред. Ю. Г. Дадаева. - М.: Мир, 1991. - 376 с.

9. Химич, А. Н. Параллельные алгоритмы решения задач вычислительной математики [Текст] / А. Н. Химич, И. Н. Молчанов, А. В. Попов и др. - К.: Наукова думка, 2008. - 248 с.

10. Ивахненко, А. Г. Справочник по типовым программам моделирования [Текст] / А. Г. Ивахненко, Ю. В. Коппа, В. С. Степаш-ко и др.; под ред. А. Г. Ивахненко. - К.: Техніка, 1980. - 180 с.

11. Івахненко, О. Г. Передбачення випадкових процесів [Текст] / О. Г. Іваненко, В. Г. Лапа. - К.: Наукова думка, 1969. - 420 с.

12. Горбійчук, М. І. Індуктивний метод побудови математичних моделей газоперекачувальних агрегатів природного газу [Текст] / М. І. Горбійчук, М. І. Когутяк, Я. І. Заячук // Нафтова і газова промисловість. - 2008. - № 5. - С. 32-35.

13. Рутковская, Д. Нейронные сети, генетические алгоритмы и нечеткие системы [Текст] / Д. Рутковская, М. Пилинський, Л. Рудковский; пер. с польск. И. Д. Рудинского. - М.: Горячая линия-Телеком, 2004.- 452 с.

14. Воеводин, В. В. Вычислительная математика и структура алгоритмов. 10 лекций [Текст] / В. В. Воеводин. - М.: И-во МГУ, 2008. - 113 с.

15. Волков, Е. А. Численные методы [Текст] / Е. А. Волков; 2-е изд., испр. - М.: Наука, 1987. - 248 с.

э

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