Алгоритм Катхілл — Маккі (КМ), названий на честь Елізабет Катхілл і Джеймса Маккі, це алгоритм переведення розрідженої матриці, яка симетрично розріджена, у смугову матрицю з малою шириною смуги, шляхом переставляння рядків і стовпчиків. Зворотний алгоритм Катхілл Маккі (ЗКМ) запропонований Аланом Джорджем — це той самий алгоритм, але з оберненим порядком індексування вершин. На практиці це допомагає отримати менше заповнювання нульових позицій порівняння з КМ впорядкуванням при використанні методу Гауса.
Алгоритм Катхілл — Маккі — це варіант стандартного пошуку в ширину, що використовується для графів. Він стартує з периферійної вершини і генерує для допоки не вичерпано всі вершини. Множина утворюється за допомогою множини збираючи всі вершини суміжні вершинам в . Ці вершини записуються в порядку збільшення степеня вершини. Цей останній момент і є відмінність від алгоритму пошуку в ширину.
Алгоритм
Маючи симетричну матрицю ми візуалізуємо її як матрицю суміжності графу. Тоді алгоритм Катхілл — Маккі перепозначає вершини графу, щоб зменшити ширину смуги матриці суміжності.
Алгоритм формує впорядкований кортеж з n елементів, який містить новий порядок вершин.
Спочатку обираємо (периферійну вершину), або (псевдопериферійну), бо периферійну зазвичай важко знайти, і встановлюємо .
Після цього ми повторюємо наступні кроки допоки
- Конструюємо множину суміжності для (з — i-й компонент ) і виключаємо вершини, які вже в
- Сортуємо за збільшенням степені вершини.
- Додаємо до результовної множини .
Інакше кажучи, нумеруємо вершини відповідно до спеціального пошуку в ширину де сусідні вершини відвідуються в порядку від найменшого до найбільшого степеня.
Див. також
Примітки
- Елізабет Катхілл і Джеймс Маккі. Reducing the bandwidth of sparse symmetric matrices In Proc. 24th Nat. Conf. ACM, pages 157—172, 1969.
- . Архів оригіналу за 18 січня 2017. Процитовано 9 квітня 2017.
{{}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title () - J. A. George and J. W-H. Liu, Computer Solution of Large Sparse Positive Definite Systems, Prentice-Hall, 1981
- Cuthill–McKee documentation [ 29 квітня 2017 у Wayback Machine.] для Boost.
- A detailed description of the Cuthill–McKee algorithm [ 3 листопада 2009 у Wayback Machine.].
- symrcm [ 7 липня 2016 у Wayback Machine.] MATLAB's реалізація RCM.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Algoritm Kathill Makki KM nazvanij na chest Elizabet Kathill i Dzhejmsa Makki ce algoritm perevedennya rozridzhenoyi matrici yaka simetrichno rozridzhena u smugovu matricyu z maloyu shirinoyu smugi shlyahom perestavlyannya ryadkiv i stovpchikiv Zvorotnij algoritm Kathill Makki ZKM zaproponovanij Alanom Dzhordzhem ce toj samij algoritm ale z obernenim poryadkom indeksuvannya vershin Na praktici ce dopomagaye otrimati menshe zapovnyuvannya nulovih pozicij porivnyannya z KM vporyadkuvannyam pri vikoristanni metodu Gausa Vporyadkuvannya matrici algoritmom Kathill Makki ZKM vporyadkuvannya toyi zh matrici Algoritm Kathill Makki ce variant standartnogo poshuku v shirinu sho vikoristovuyetsya dlya grafiv Vin startuye z periferijnoyi vershini i generuye R i displaystyle R i dlya i 1 2 displaystyle i 1 2 dopoki ne vicherpano vsi vershini Mnozhina R i 1 displaystyle R i 1 utvoryuyetsya za dopomogoyu mnozhini R i displaystyle R i zbirayuchi vsi vershini sumizhni vershinam v R i displaystyle R i Ci vershini zapisuyutsya v poryadku zbilshennya stepenya vershini Cej ostannij moment i ye vidminnist vid algoritmu poshuku v shirinu AlgoritmMayuchi simetrichnu n n displaystyle n times n matricyu mi vizualizuyemo yiyi yak matricyu sumizhnosti grafu Todi algoritm Kathill Makki perepoznachaye vershini grafu shob zmenshiti shirinu smugi matrici sumizhnosti Algoritm formuye vporyadkovanij kortezh R displaystyle R z n elementiv yakij mistit novij poryadok vershin Spochatku obirayemo periferijnu vershinu abo psevdoperiferijnu bo periferijnu zazvichaj vazhko znajti x displaystyle x i vstanovlyuyemo R x displaystyle R x Pislya cogo i 1 2 displaystyle i 1 2 dots mi povtoryuyemo nastupni kroki dopoki R lt n displaystyle R lt n Konstruyuyemo mnozhinu sumizhnosti A i displaystyle A i dlya R i displaystyle R i z R i displaystyle R i i j komponent R displaystyle R i viklyuchayemo vershini yaki vzhe v R displaystyle R A i Adj R i R displaystyle A i operatorname Adj R i setminus R Sortuyemo A i displaystyle A i za zbilshennyam stepeni vershini Dodayemo A i displaystyle A i do rezultovnoyi mnozhini R displaystyle R Inakshe kazhuchi numeruyemo vershini vidpovidno do specialnogo poshuku v shirinu de susidni vershini vidviduyutsya v poryadku vid najmenshogo do najbilshogo stepenya Div takozhRozridzhena matricyaPrimitkiElizabet Kathill i Dzhejms Makki Reducing the bandwidth of sparse symmetric matrices In Proc 24th Nat Conf ACM pages 157 172 1969 Arhiv originalu za 18 sichnya 2017 Procitovano 9 kvitnya 2017 a href wiki D0 A8 D0 B0 D0 B1 D0 BB D0 BE D0 BD Cite web title Shablon Cite web cite web a Obslugovuvannya CS1 Storinki z tekstom archived copy yak znachennya parametru title posilannya J A George and J W H Liu Computer Solution of Large Sparse Positive Definite Systems Prentice Hall 1981 Cuthill McKee documentation 29 kvitnya 2017 u Wayback Machine dlya Boost A detailed description of the Cuthill McKee algorithm 3 listopada 2009 u Wayback Machine symrcm 7 lipnya 2016 u Wayback Machine MATLAB s realizaciya RCM