Організація багатоетапного сортування поштових одиниць
Традиційна стратегія багатоетапного автоматизованого сортування заснована на низхідному сортуванні ПО. Загальний порядок сортування й упакування сортувальних груп. Розгляд принципу безупинного сортування ПО детальніше на прикладі триетапного сортування.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лекция |
Язык | украинский |
Дата добавления | 25.06.2017 |
Размер файла | 1,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru//
Размещено на http://www.allbest.ru//
Організація багатоетапного сортування поштових одиниць
Упровадження багатоетапного сортування ПО викликане тим, що необхідна кількість напрямів сортування багаторазово перевищує кількість накопичувачів АЛСМ у системах автоматизованого сортування ПО.
Крім власне сортування повинно бути забезпечене упакування ПО до ОПЗ різних рівнів ієрархії.
Традиційна стратегія багатоетапного автоматизованого сортування заснована на низхідному сортуванні ПО в ОПЗ вищих рівнів ієрархії до підпорядкованих їм ОПЗ нижчих рівнів ієрархії та фактично повторює традиційну стратегію ручного сортування ПО.
Приймаючи до уваги, що за такого сортування в будь-якому ОПЗ вхідний потік ПО поділяється на декілька вихідних потоків, загальна схема багатоетапного сортування набуває виду піраміди, у вершині якої розташований ОПЗ найвищого рівня ієрархії, а в основі - ОПЗ найнижчого рівня ієрархії.
Схему традиційного триетапного сортування й упакування ПО наведено на рис. 3.2. Враховуючи, що кількість напрямів сортування т, кількість накопичувачів АЛСМ п і кількість етапів сортування k пов'язані співвідношенням , реальна кількість етапів сортування не перевищує трьох.
Цифрами на рис. 3.2 позначені:
0 - несортована сукупність ПО G;
1 - сортувальні групи першого етапу сортування ;
2 - робочі комірки проміжного зберігання сортувальних груп або упаковок сортувальних груп першого етапу сортування ;
3 - сортувальні групи другого етапу сортування ;
4 - робочі комірки проміжного зберігання сортувальних груп або упаковок сортувальних груп другого етапу сортування ;
5 - сортувальні групи третього етапу сортування ;
6 - робочі комірки проміжного зберігання сортувальних груп або упаковок сортувальних груп третього етапу сортування ;
7 - упаковки сортувальних груп третього етапу сортування
8 -упаковки сортувальних груп другого етапу сортування , що містять у собі упаковки сортувальних груп третього етапу сортування;
9 - упаковки сортувальних груп першого етапу сортування , що містять у собі упаковки сортувальних груп другого етапу сортування
, що, у свою чергу, містять у собі упаковки сортувальних груп третього етапу сортування
Рисунок 3.2 - Традиційна схема триетапного сортування й упакування ПО
У залежності від порядку формування й упакування сортувальних груп можливі два основні методи організації багатоетапного сортування.
Згідно з першим методом упакування сортувальних груп виконується лише після повного завершення їхнього формування.
Загальний порядок сортування й упакування сортувальних груп за першим методом передбачає наступні дії:
Кількість комірок складає;
кількість комірок складає;
кількість комірок складає.
Загальна кількість комірок для тимчасового збереження неупакованих або упакованих сортувальних груп за першим методом складає
У табл. 3.11 наведено приклад триетапного низхідного сортування ПО за першим методом за наявності п = 10 накопичувачів АЛСМ . Для скорочення записів підетапи другого і третього етапів сортування, на яких відсутні сортувальні групи, не зазначені. Цифри, за якими провадиться сортування, підкреслені.
Таблиця 3.11 - Приклад триетапного низхідного сортування ПО за першим методом
Початкова послідовність напрямів сортування |
|||||||||||
625, 278, 309, 018, 540, 192, 278, 777, 913, 114, 007, 596, 250, 002, 116, 257, 303, 592, 778, 999 |
|||||||||||
Етап сортування |
Розподіл напрямів сортування за накопичувачамн АЛСМ |
||||||||||
1 |
018 007 002 |
І92 114 116 |
278 278 250 257 |
309 303 |
540 596 592 |
125 |
777 778 |
913 999 |
|||
2.0 |
007 002 |
018 |
|||||||||
2.1 |
Ц4 116 |
192 |
|||||||||
2.2 |
210 257 |
278 278 |
|||||||||
2.3 |
309 303 |
||||||||||
2.5 |
540 |
596 592 |
|||||||||
2.6 |
625 |
||||||||||
2.7 |
777 778 |
||||||||||
2.9 |
913 |
999 |
|||||||||
3.0.0 |
002 |
007 |
|||||||||
3.0.1 |
018 |
||||||||||
3.1.1 |
114 |
116 |
|||||||||
3.1.9 |
192 |
||||||||||
3.2.5 |
250 |
252 |
|||||||||
3.2.7 |
278 278 |
||||||||||
3.3.0 |
303 |
309 |
|||||||||
3.5.4 |
540 |
||||||||||
3.5.9 |
592 |
596 |
|||||||||
3.6.2 |
621 |
||||||||||
3.7.7 |
777 |
778 |
|||||||||
3.9.1 |
911 |
||||||||||
3.9.9 |
999 |
Згідно з другим методом формування сортувальних груп чередується з їх упакуванням.
Загальний порядок сортування й упакування сортувальних груп за другим методом передбачає наступні дії:
Кількість комірок складає п;
кількість комірок складає п;
кількість комірок складає п.
Загальна кількість комірок для тимчасового збереження неупакованих або упакованих сортувальних груп за другим методом складає
У табл. 3.12 наведено приклад триетапного низхідного сортування ПО за другим методом. Початкові дані збігаються з наведеними у табл. 3.11.
Таблиця 3.12 - Приклад триетапного низхідного сортування ПО за другим методом
Початкова послідовність напрямів сортування |
|||||||||||
625, 278, 309, 018, 540, 192, 278, 777, 913, 114, 007, 596, 250, 002, 116, 257, 303, 592, 778, 999 |
|||||||||||
Етап сорту вання |
Розподіл напрямів сортування за накопичувачами АЛСМ |
||||||||||
1 |
018 007 002 |
192 114 116 |
278 278 250 257 |
309 303 |
540 596 592 |
625 |
277 278 |
913 999 |
|||
2.0 |
007 002 |
018 |
|||||||||
3.0.0 |
002 |
007 |
|||||||||
3.0.1 |
018 |
||||||||||
2.1 |
114 116 |
192 |
|||||||||
3.1.1 |
114 |
116 |
|||||||||
3.1.9 |
192 |
||||||||||
2.2 |
250 257 |
228 278 |
|||||||||
3.2.5 |
250 |
257 |
|||||||||
3.2.7 |
278 278 |
||||||||||
2.3 |
309 303 |
||||||||||
3.3.0 |
303 |
309 |
|||||||||
2.5 |
540 |
596 592 |
|||||||||
3.5.4 |
540 |
||||||||||
3.5.9 |
592 |
596 |
|||||||||
2.6 |
625 |
||||||||||
3.6.2 |
625 |
||||||||||
2.7 |
727 778 |
||||||||||
3.7.7 |
772 |
778 |
|||||||||
2.9 |
913 |
999 |
|||||||||
3.9.1 |
913 |
||||||||||
3.9.9 |
999 |
Традиційній стратегії багатоетапного низхідного сортування ПО властивий ряд принципових недоліків, основними з яких є:
- необхідність застосування програм сортування (при кількість таких програм складе 10101);
- необхідність застосування від робочих комірок для проміжного зберігання сортувальних груп або упаковок сортувальних груп між етапами сортування (при кількість робочих комірок складе від 300 до 1010100);
- необхідність розвантаження п накопичувачів ЛЛСМ після виконання сортування по кожній зпрограм сортування (при кількість таких розвантажень складе 1010100);
- необхідність почергової подачі відсортованих груп ПО з індивідуальних робочих комірок на вхід АЛСМ для виконання подальших етапів сортування;
- необхідність формування відправок ПО до відповідних ОПЗ з відсортованих груп ПО, що зберігаються в різних індивідуальних робочих комірках;
- суттєві витрати ручної праці при виконанні операцій розвантаження накопичувачів АЛСМ; переміщення відсортованих груп ПО від накопичувачів АЛСМ в індивідуальні робочі комірки для їх проміжного зберігання; почергове переміщення відсортованих груп ПО з індивідуальних робочих комірок на вхід АЛСМ для виконання подальших етапів сортування; переміщення відсортованих груп ПО з індивідуальних робочих комірок до місць формування відправок до відповідних ОПЗ;
- багаторазове (в десятки разів на другому, в сотні разів на третьому етапі сортування) падіння реальної продуктивності АЛСМ, обумовлене її вимушеними простоями під час багатократних розвантажень накопичувачів при зміні програм сортування.
Ідея пропонованої стратегії автоматизованого багатоетапного безупинного сортування ПО полягає у заміні традиційного низхідного порядку сортування ПО (від ОПЗ вищого рівня ієрархії до ОПЗ нижчого рівня ієрархії) висхідним порядком сортування (від ОПЗ нижчого рівня ієрархії до ОПЗ вищого рівня ієрархії).
Приймаючи до уваги, що за такого сортування у будь-якому ОПЗ всі вхідні потоки об'єднуються в один вихідний потік, виникає унікальна можливість упорядкованого об'єднання всіх сортувальних груп, сформованих на попередньому етапі сортування, перед виконанням чергового етапу сортування, завдяки чому кожний етап сортування виконується одночасно для всіх зазначених груп, минаючи стадії їх зберігання в індивідуальних робочих комірках, а, разом з тим, виключаючи простої АЛСМ у процесі виконання всіх етапів сортування.
Розглянемо принцип безупинного сортування ПО детальніше на прикладі триетапного сортування.
Важливо підкреслити, що кількість напрямів безупинного сортування на кожному з її етапів дорівнює п (у традиційному сортуванні, як вже наголошувалося, кількість напрямів сортування складає: на першому етапі - п; на другому етапі - ; на третьому етапі - ).
Довільний напрям сортування Nc за триетапного безупинного сортування представляється у виді сукупності напрямів сортування на кожному з цих етапів . багатоетапний сортування поштовий
Уводиться єдина нумерація зазначених напрямів сортування незалежно від рівнів ієрархії ОПЗ, яким вони відповідають.
Так, при п - 100, кожний з напрямів сортування подається двозначними числами від 00 до 99, а конкретний напрям сортування - деяким числом, наприклад, Nc = 652907, де N1 = 65 - номер напряму сортування, що відповідає ОПЗ першого рівня ієрархії; N2 = 29 - номер напряму сортування, що відповідає ОПЗ другого рівня ієрархії; = 07 - номер напряму сортування, що відповідає ОПЗ третього рівня ієрархії.
Підкреслимо, що хоча всі напрями сортування, що представляють всі ОПЗ першого рівня ієрархії (група цифр N/), всі ОПЗ другого рівня ієрархії (група цифр N2) і всі ОПЗ третього рівня ієрархії (група цифр N3) мають нумерації, що збігаються, індивідуальність кожного конкретного напряму сортування визначається комбінацією цифр усіх груп (у наведеному прикладі Nc = 652907 розглядається як напрям сортування, представлений цим шестизначним числом).
Пропоновану схему безупинного триетапного сортування й упакування ПО наведено на рис. 3.3.
Рисунок 3.3 - Пропонована схема автоматизованого триетапного сортування й упакування ПО
Цифрами на рис. 3.3 позначені:
0 - несортована сукупність ПО G;
1 - сортувальні групи першого етапу сортування за цифрами N3 напрямів
сортування ;
2 - об'єднання сортувальних груп першого етапу сортування в порядку зростання значень цифр напрямів сортування ;
3 - сортувальні групи другого етапу сортування за цифрами напрямів сортування ;
4 - об'єднання сортувальних груп другого етапу сортування в порядку зростання значень цифр напрямів сортування ;
5 - сортувальні групи третього етапу сортування за цифрами напрямів сортування ;
6 - упаковки сортувальних груп за цифрами напрямів сортування ;
7 - упаковки сортувальних груп за цифраминапрямів сортування , що містять у собі упаковки сортувальних груп за цифрами напрямів сортування ;
8 - упаковки сортувальних груп за цифрами напрямів сортування , що містять у собі упаковки сортувальних груп за цифрами N2 напрямів сортування , що, у свою чергу, містять у собі упаковки сортувальних груп за цифрами N3 напрямів сортування
Загальний порядок сортування й упакування сортувальних груп за пропонованим методом передбачає наступні дії:
У табл. 3.13 наведено приклад безупинного триетапного сортування ПО при поданні кожної з груп напрямів сортуванняоднією десятковою
цифрою (усього при цьому можливо 1000 напрямів сортування від 000 до 999). Цифри напрямів, за якими провадиться сортування, підкреслені. Початкові дані збігаються з наведеними у табл. 3.11.
Таблиця 3.13 - Приклад безупинного триетапного сортування ПО
Початкова послідовність напрямів сортування |
||||||||||
625, 278,309,018, 540,192,278,777,913,114,007,596,250,002,116,257,303,592,778,999 |
||||||||||
Розподіл напрямів сортування за накопичувачами АЛСМ після першого етапу сортування |
||||||||||
540 250 |
192 002 592 |
912 303 |
114 |
622 |
592 116 |
772 002 257 |
272 018 272 778 |
302 999 |
||
Послідовність напрямів сортування після першого етапу сортування |
||||||||||
540,250,192, 002,592,913,303,114, 625,596,116, 777,007,257,278,018, 278,778,309,999 |
||||||||||
Розподіл напрямів сортування за накопичувачами АЛСМ після другого етапу сортування |
||||||||||
002 303 007 309 |
913 114 1І6 018 |
625 |
540 |
220 257 |
727 228 228 778 |
1Ј2 522 526 929 |
||||
Послідовність напрямів сортування після другого етапу сортування |
||||||||||
002,303,007,309,913,114,116,018,625,540, 250,257,777,278,278,778, 192, 592,596,999 |
||||||||||
Розподіл напрямів сортування за накопичувачами АЛСМ після третього етапу сортування |
||||||||||
002 007 018 |
114 116 Ї92 |
250 257 278 278 |
103 209 |
240 292 596 |
625 |
277 278 |
913 999 |
|||
Послідовність напрямів сортування після третього етапу сортування |
||||||||||
002,007,018,114,116,192,250,257,278,278,303,309,540,592, 596,625,777, 778,913,999 |
Після закінчення третього етапу сортування в накопичувачах отримані групи ПО, відсортовані за всіма трьома цифрами напрямів сортування; відсутність ПО в накопичувачахсвідчить про відсутність ПО, що спрямовуються у відповідні ОПЗ першого рівня ієрархії (і, природно, в підпорядковані їм ОПЗ другого і третього рівнів ієрархії).
Приймаючи до уваги, що напрями сортування N] представляють ОПЗ першого рівня ієрархії, до яких прямують відсортовані ПО, є можливість сформувати упаковки ПО до ОПЗ всіх рівнів ієрархії і спрямувати їх до зазначених ОПЗ першого рівня ієрархії, або безпосередньо спрямувати отримані в накопичувачах АЛСМ відсортовані групи ПО до зазначених ОПЗ першого рівня ієрархії, де вони без додаткового сортування будуть поділені на відсортовані групи ПО, що спрямовуються до підпорядкованих їм ОПЗ другого і третього рівнів ієрархії.
Для зручності такого розподілу може виявитися доцільною установка розподілювальних карток між сортувальними групами ПО при зміні значень цифр у покажчиках напрямів сортування і А2 в процесі виконання третього етапу сортування за покажчиком напрямів сортування N.
З табл. 3.13 також випливає, що пропонована стратегія безупинного багатопрограмного сортування зводиться до впорядкування напрямів сортування ПО у порядку їх зростання. Оскільки таке ж завдання вирішується в стратегії маршрутного сортування ПО, не можна не відзначити єдність принципів обох стратегій сортування.
Із порівняння схем рис. 3.2 і 3.3 випливає, що схема традиційного сортування передбачає проведення послідовного сортування як за етапами, так і за групами цифр напрямів сортування, внаслідок чого може бути схарактеризована як послідовно-послідовна, в той час як схема безупинного сортування передбачає послідовне сортування за етапами і паралельне сортування за групами цифр напрямів сортування, у зв'язку з чим може бути схарактеризована як послідовно-паралельна.
У табл. 3.14 наведено основні показники традиційної і пропонованої стратегій багатоетапного сортування ПО при п = 100, r = 3.
Таблиця 3.14 - Показники багатоетапного сортування ПО
Показники |
Традиційна стратегія |
Пропонована стратегія |
|
Порядок сортування |
Низхідний |
Висхідний |
|
Кількість програм сортування |
10101 |
3 |
|
Кількість розвантажень накопи- чувачів AЛCM |
1010100 |
300 |
|
Простої АЛСМ в процесі виконання етапів сортування |
Після виконання кожної з 10101 програм сортування |
Після виконання кожної з 3 програм сортування |
|
Затрати ручної праці на розвантаження накопичувані в АЛСМ |
Розвантаження 100 накопичувачів після виконання кожної з 10101 програм сортування |
Розвантаження 100 накопичувачів після виконання кожної з 3 програм сортування |
|
Затрати обладнання для проміжного зберігання відсортованих груп ПО |
Мінімум 300 робочих комірок, максимум 1010100 робочих комірок |
Відсутні |
|
Формування відправок ПО до одного ОПЗ |
Зі 100 робочих комірок |
3 одного накопичувана АЛСМ |
Як випливає з табл. 3.14, традиційна стратегія низхідного богатое тайного сортування ПО за усіма основними показниками суттєво поступається пропонованій стратегії висхідного багатоетапного сортування.
Размещено на Allbest.ru
Подобные документы
Прості алгоритми сортування та їх програмування. Сортування вставками - алгоритм сортування на основі порівнянь. Злиття двох упорядкованих послідовностей (сортування злиттям). Ідея алгоритму швидкого сортування. Алгоритм сортування на основі порівнянь.
лабораторная работа [631,3 K], добавлен 19.08.2010Задача сортування даних в програмуванні. Алгоритм сортування обміном за критерієм або вибором, деревом, пірамідальне, швидке, сортування Хоара та метод цифрового сортування. Системні вимоги та інструкція для користувача. Алгоритм та лістинг програми.
курсовая работа [20,6 K], добавлен 08.08.2009Вирішення задач сортування в програмуванні та розробка ефективних алгоритмів сортування. Знайомство з теоретичним положенням, що стосуються методів сортування файлів, реалізації їх на мові програмування Turbo Pascal. Методи злиття впорядкованих серій.
курсовая работа [46,9 K], добавлен 16.09.2010Характеристика швидкодії алгоритмів сортування масивів прямим і бінарним включенням, методами "бульбашки", "камінця", та шейкерного відбору, визначення їх переваг та недоліків. Огляд функцій сортування із стандартної бібліотеки мови програмування С++.
курсовая работа [452,1 K], добавлен 16.09.2010Особливості методів сортування масивів прямим та бінарним включенням. Порівняльна характеристика швидкодії алгоритмів сортування способами включення із зменшуваними швидкостями, обміну на великих відстанях, вибору при допомозі дерева (Тree і Heap Sorts).
курсовая работа [58,9 K], добавлен 16.09.2010Приклад реалізації крок за кроком методу сортування масивів "бульбашка", характеристика етапів. Графічне представлення методу, фрагмент програми його реалізації. Алгоритми сортування масивів методами вибору та вставок, опис особливостей їх реалізації.
презентация [824,2 K], добавлен 26.11.2014Розгляд основ сучасної технології підготовки та рішення на електронних обчислювальних машинах розрахункових задач військового та прикладного характеру. Побудова блок схеми, програмної реалізації алгоритму сортування. Оцінка трудомісткості сортування.
курсовая работа [301,5 K], добавлен 08.07.2015Алгоритм процедури сортування у порядку зростання елементів побічної діагоналі (зліва направо) за допомогою методу вибору мінімального елементу. Підрахунок та визначення кількості перестановок. Виведення масиву на лист MS Excel до та після перетворень.
практическая работа [404,3 K], добавлен 26.09.2013Принцип роботи методів вибору, вставки з лінійним пошуком місця та шейкерного сортування для одновимірного випадку. Лістинг програми з коментарями. Порівняння результатів та часу сортування для різних станів масивів. Кількість переміщень елементів.
курсовая работа [311,9 K], добавлен 09.12.2013Вивчення можливостей інтегрованого середовища розробки програм Qt Creator. Ознайомлення з основами паралельних обчислень мовою програмування С++ в цьому середовищі. Переваги та конструкції OpenMP, сортування масиву злиттям. Тестування програми сортування.
курсовая работа [87,5 K], добавлен 28.10.2015