Вестник ТюмГУ. Физико-математическое моделирование. Нефть, газ, энергетика.


Выпуск:

2017. Том 3. №2

Название: 
Сортировка зубчатых массивов для оценки решений транспортных задач


Для цитирования: Ткаченко И. Н. Сортировка зубчатых массивов для оценки решений транспортных задач / И. Н. Ткаченко, М. В. Григорьев, И. И. Григорьева // Вестник Тюменского государственного университета. Физико-математическое моделирование. Нефть, газ, энергетика. 2017. Том 3. № 2. С. 100-114. DOI: 10.21684/2411-7978-2017-3-2-100-114

Об авторах:

Ткаченко Иван Николаевич, ведущий программист ООО «Техноком» (г. Тюмень); tkachenko@technocom.tech

Григорьев Михаил Викторович, кандидат технических наук, доцент кафедры программной и системной инженерии, Тюменский государственный университет; m.v.grigorev@utmn.ru

Григорьева Инна Ивановна, кандидат технических наук, доцент кафедры программной и системной инженерии, Тюменский государственный университет; i.i.grigoreva@utmn.ru

Аннотация:

В статье исследуются способы сортировки зубчатых массивов для упорядочивания строк по убыванию значимости по двум критериям. Зубчатый массив является представлением решений задачи нахождения оптимального пути, в котором каждая строка — одно из решений. Цель сортировки — выбор наиболее значимых решений и последующее сокращение количества объектов, хранимых в матрице достижимости. Сокращение количества объектов не влияет на размерность матрицы достижимости, но сокращает объем памяти, необходимый для хранения ячеек матрицы. Задача описана на примере оценки решений транспортной задачи доставки грузов.

В статье при сортировке строк зубчатых массивов подразумевается приоритет одних ячеек строки массива над другими, т. е. первая ячейка оказывает на результат большее значение, чем вторая, а вторая ячейка большее, чем третья, и так далее.

Результатом исследования является формализация правил восьми различных подходов к сортировке — по количеству вариантов комбинирования двух критериев сортировки, приведен алгоритм и дана оценка вычислительной сложности. Критериями сортировки являются длина ключа и значение ключа. Все восемь подходов обеспечивают разные результаты сортировки. Для каждого подхода описаны и разобраны на примерах операции, необходимые для достижения требуемого результата. Для каждого подхода сформулирована и формализована задача.

Алгоритм сортировки зубчатых массивов основан на генерации текстового представления ключа строки. В статье рассмотрена только сортировка строк, сортировка столбцов в статье не рассматривается.

Сделаны выводы о том, какие из описанных подходов обеспечивают наилучшую скорость сортировки и почему. На примере задачи транспортировки грузов описано — к какому результату приведет выбор того или иного подхода к сортировке.

Список литературы:

  1. Кнут Д. Э. Искусство программирования. Том 3. Сортировка и поиск / Д. Э. Кнут. Москва: Вильямс, 2007. 832 с.
  2. Конкатенация. URL: https://ru.wikipedia.org/wiki/Конкатенация (дата обращения: 29.06.2017).
  3. Кормен Т. Х. Алгоритмы: построение и анализ / Т. Х. Кормен, Ч. И. Лейзерсон, Р. Л. Ривест, К. Штайн.  2-е изд. М.: Вильямс, 2006. 1296 с.
  4. Шилдт Г. C# 4.0. Полное руководство / Г. Шилдт. Москва: Вильямс, 2011. 1056 с.
  5. American National Standard for Information Systems. Coded Character Sets — 7-Bit American National Standard Code for Information Interchange (7-Bit ASCII) ANSI-X3.4-1986 (R 2007), 2007. 31 pp.