Все выпуски
- 2024 Том 16
- 2023 Том 15
- 2022 Том 14
- 2021 Том 13
- 2020 Том 12
- 2019 Том 11
- 2018 Том 10
- 2017 Том 9
- 2016 Том 8
- 2015 Том 7
- 2014 Том 6
- 2013 Том 5
- 2012 Том 4
- 2011 Том 3
- 2010 Том 2
- 2009 Том 1
-
Введение в распараллеливание алгоритмов и программ
Компьютерные исследования и моделирование, 2010, т. 2, № 3, с. 231-272Просмотров за год: 53. Цитирований: 22 (РИНЦ).Описаны отличия технологии программирования для параллельных вычислительных систем от технологии последовательного программирования, аргументировано появление новых этапов в технологии: декомпозиция алгоритмов, назначение работ исполнителям, дирижирование и отображение логических исполнителей на физические. Затем кратко рассмотрены вопросы оценки производительности алгоритмов. Обсуждаются вопросы декомпозиции алгоритмов и программ на работы, которые могут бытьвы полнены параллельно.
-
Прямые мультипликативные методы для разреженных матриц. Ньютоновские методы
Компьютерные исследования и моделирование, 2017, т. 9, № 5, с. 679-703Рассматривается численно устойчивый прямой мультипликативный алгоритм решения систем линейных уравнений, учитывающий разреженность матриц, представленных в упакованном виде. Преимущество алгоритма состоит в возможности минимизации заполнения главных строк мультипликаторов без потери точности результатов, причем изменения в позиции очередной обрабатываемой строки матрицы не вносятся, что позволяет использовать статические форматы хранения данных. Решение системы линейных уравнений прямым мультипликативным алгоритмом — это, как и решение с помощью $LU$-разложения, просто другая схема реализации метода исключения Гаусса.
В данной работе этот алгоритм лежит в основе решения следующих задач.
Задача 1. Задание направления спуска в ньютоновских методах безусловной оптимизации путем интеграции одной из известных техник построения существенно положительно определенной матрицы. Такой подход позволяет ослабить или снять дополнительные специфические трудности, обусловленные необходимостью решения больших систем уравнений с разреженными матрицами, представленных в упакованном виде.
Задача 2. Построение новой математической формулировки задачи квадратичного программирования и новой формы задания необходимых и достаточных условий оптимальности. Они достаточно просты и могут быть использованы для построения методов математического программирования, например для поиска минимума квадратичной функции на многогранном множестве ограничений, основанного на решениях систем линейных уравнений, размерность которых не выше числа переменных целевой функции.
Задача 3. Построение непрерывного аналога задачи минимизации вещественного квадратичного многочлена от булевых переменных и новой формы задания необходимых и достаточных условий оптимальности для разработки методов их решения за полиномиальное время. В результате исходная задача сводится к задаче поиска минимального расстояния между началом координат и угловой точкой выпуклого многогранника (полиэдра), который является возмущением $n$-мерного куба и описывается системой двойных линейных неравенств с верхней треугольной матрицей коэффициентов с единицами на главной диагонали. Исследованию подлежат только две грани, одна из которых или обе содержат вершины, ближайшие к началу координат. Для их вычисления достаточно решить $4n – 4$ систем линейных уравнений и выбрать среди них все ближайшие равноудаленные вершины за полиномиальное время. Задача минимизации квадратичного полинома является $NP$-трудной, поскольку к ней сводится $NP$-трудная задача о вершинном покрытии для произвольного графа. Отсюда следует вывод, что $P = NP$, в основе построения которого лежит выход за пределы целочисленных методов оптимизации.
Ключевые слова: $NP$-трудные задачи, разреженные матрицы, ньютоновские методы, прямой мультипликативный алгоритм, направление спуска, новые математические формулировки, необходимые и достаточные условия оптимальности, минимизация псевдобулевой функции, псевдобулево программирование, линейное программирование.Просмотров за год: 7. Цитирований: 1 (РИНЦ). -
Критическая скорость роста вычислительных сетей для обеспечения неограниченной наработки на отказ
Компьютерные исследования и моделирование, 2009, т. 1, № 1, с. 33-39Исследуется отказоустойчивость конечной вычислительной сети с произвольным графом, элементы которой имеют вероятность отказа и вероятность восстановления после отказа. Работа сети происходит по трехэтапным тактам (разрушение-восстановление-функционирование). Предлагается алгоритм наращивания сети в начале каждого такта ее работы. При этом граф увеличенной конфигурации сети формируется путем добавления новых экземпляров исходной сети и соединения их определенным образом с элементами старой конфигурации сети. Доказывается, что при достаточно быстром росте сеть имеет положительную вероятность неограниченной безотказной работы. Параметрическая оценка критической скорости роста сети имеет логарифмический порядок по числу тактов.
-
Алгоритм распознавания простых графов коллективом агентов
Компьютерные исследования и моделирование, 2021, т. 13, № 1, с. 33-45Исследование, представленное в работе, посвящено проблеме распознавания конечных графов с помощью коллектива агентов. В работе рассматриваются конечные неориентированных графы без петель и кратных ребер. Коллектив агентов состоит из двух агентов-исследователей, которые имеют конечную память, независимую от числа вершин исследуемого ими графа, и используют по две краски каждый (в общей сложности используется три различные краски, так как цвет одной из красок у агентов совпадает), и одного агента-экспериментатора, который обладает конечной, неограниченно растущей внутренней памятью. Агенты-исследователи могут одновременно передвигаться по графу, считывать и изменять метки элементов графа, а также передавать необходимую информацию третьему агенту — агенту-экспериментатору. Агент-экспериментатор — это неподвижный агент, в памяти которого фиксируется результат функционирования агентов-исследователей на каждом шаге и, кроме того, постепенно выстраивается представление исследуемого графа (изначально неизвестного агентам) списком ребер и списком вершин.
В работе подробно описаны режимы работы агентов-исследователей с указанием приоритетности их активации, рассмотрены команды, которыми обмениваются агенты-исследователи с агентом-экспериментатором во время выполнения тех или иных процедур. Также подробно рассмотрены проблемные ситуации, возникающие в работе агентов-исследователей, например окрашивание белой вершины при одновременном попадании двух агентов в одну и ту же вершину или пометка и распознавание ребер перешей- ков (ребра, соединяющие подграфы, распознаваемые различными агентами-исследователями) и так далее. Представлен полный алгоритм работы агента-экспериментатора с подробным описанием процедур обработки полученных от агентов-исследователей сообщений, на основании которых и происходит построение представления исследуемого агентами графа. Также в работе проведен полный анализ временной, емкостной и коммуникационной сложностей построенного алгоритма.
Представленный алгоритм распознавания графов имеет квадратичную (от числа вершин исследуемого графа) временную сложность, квадратичную емкостную сложность и квадратичную коммуникационную сложность. Работа алгоритма распознавания основывается на методе обхода графа в глубину.
-
Фреймворк sumo-atclib для моделирования адаптивного управления трафиком дорожной сети
Компьютерные исследования и моделирование, 2024, т. 16, № 1, с. 69-78В данной статье предлагается фреймворк sumo-atclib, который предоставляет удобный единообразный интерфейс для апробации разных по ограничениям алгоритмов адаптивного управления, например ограничения на длительности фаз, последовательности фаз, ограничения на минимальное время между управляющими воздействиями, который использует среду микроскопического моделирования транспорта с открытым исходным кодом SUMO. Фреймворк разделяет функционал контроллеров (класс TrafficController) и систему наблюдения и детектирования (класс StateObserver), что повторяет архитектуру реальных светофорных объектов и систем адаптивного управления и упрощает апробацию новыха лгоритмов, так как можно свободно варьировать сочетания разных контроллеров и систем детектирования транспортных средств. Также в отличие от большинства существующих решений добавлен класс дороги Road, который объединяет набор полос, это позволяет, например, определить смежность регулируемых перекрестков, в случаях когда на пути от одного перекрестка к другому количество полос меняется, а следовательно, граф дороги разбивается на несколько ребер. При это сами алгоритмы используют одинаковый интерфейс и абстрагированы от конкретных параметров детекторов, топологии сети, то есть предполагается, что это решение позволит транспортному инженеру протестировать уже готовые алгоритмы для нового сценария, без необходимости их адаптации под новые условия, что ускоряет процесс разработки управляющей системы и снижает накладные расходы на проектирование. В настоящий момент в пакете есть примеры алгоритмов MaxPressure и метода обучения с подкреплением Q-learning, база примеров также пополняется. Также фреймворк включает в себя набор сценариев SUMO для тестирования алгоритмов, в который входят как синтетические карты, так и хорошо верифицированные SUMO-сценарии, такие как Cologne и Ingolstadt. Кроме того, фреймворк предоставляет некоторый набор автоматически подсчитываемых метрик, таких как полное время в пути, время задержки, средняя скорость; также в фреймворке представлен готовый пример для визуализации метрик.
-
Поиск стохастических равновесий в транспортных сетях с помощью универсального прямо-двойственного градиентного метода
Компьютерные исследования и моделирование, 2018, т. 10, № 3, с. 335-345Просмотров за год: 28.В статье рассматривается одна из задач транспортного моделирования — поиск равновесного распределения транспортных потоков в сети. Для описания временных издержек и распределения потоков в сети, представляемой с помощью графа, используется классическая модель Бэкмана. При этом поведение агентов не является полностью рациональным, что описывается посредством введения марковской логит-динамики: в каждый момент времени водительвыбирает маршрут случайно согласно распределению Гиббса с учетом текущих временных затрат на ребрах графа. Таким образом, задача сводится к поиску стационарного распределения для данной динамики, которое является стохастическим равновесием Нэша – Вардропа в соответствующей популяционной игре загрузки транспортной сети. Так как данная игра является потенциальной, эта задача эквивалентна минимизации некоторого функционала от распределения потоков, причем стохастичностьпро является в появлении энтропийной регуляризации. Для полученной задачи оптимизации построена двойственная задача. Для ее решения применен универсальный прямо-двойственный градиентный метод. Его особенность заключается в адаптивной настройке на локальную гладкость задачи, что особенно важно при сложной структуре целевой функции и невозможности априорно оценитьг ладкость с приемлемой точностью. Такая ситуация имеет место в рассматриваемой задаче, так как свойства функции сильно зависят от транспортного графа, на который мы не накладываем сильных ограничений. В статье приводится описание алгоритма, в том числе подробно рассмотрено применение численного дифференцирования для вычисления значения и градиента целевой функции. В работе представлены теоретическая оценка времени работы алгоритма и результаты численных экспериментов на примере небольшого американского города.
-
Экспериментальное сравнение алгоритмов поиска вектора PageRank
Компьютерные исследования и моделирование, 2023, т. 15, № 2, с. 369-379Задача поиска PageRank вектора представляет большой научный и практический интерес ввиду своей применимости к работе современных поисковых систем. Несмотря на то, что данная задача сводится к поиску собственного вектора стохастической матрицы $P$, потребность в новых алгоритмах для ее решения обусловлена большими размерами входных данных. Для достижения не более чем линейного времени работы применяются различные рандомизированные методы, возвращающие ожидаемый ответ лишь с некоторой достаточно близкой к единице вероятностью. Нами рассматриваются два таких способа, сводящие задачу поиска вектора PageRank к задаче поиска равновесия в антагонистической матричной игре, которая затем решается с помощью алгоритма Григориадиса – Хачияна. При этом данная реализация эффективно работает в предположении о разреженности матрицы, подаваемой на вход. Насколько нам известно, до сих пор не было ни одной успешной реализации ни алгоритма Григориадиса – Хачияна, ни его применения к задаче поиска вектора PageRank. Данная статья ставит перед собой задачу восполнить этот пробел. В работе приводится описание двух версий алгоритма с псевдокодом и некоторые детали их реализации. Кроме того, в работе рассматривается другой вероятностный метод поиска вектора PageRank, а именно Markov chain Monte Carlo (MCMC), с целью сравнения результатов работы указанных алгоритмов на матрицах с различными значениями спектральной щели. Последнее представляет особый интерес, поскольку значение спектральной щели сильно влияет на скорость сходимости MCMC, и не оказывает никакого влияния на два других подхода. Сравнение проводилось на сгенерированных графах двух видов: цепочках и $d$-мерных кубах. Проведенные эксперименты, как и предсказывает теория, демонстрируют эффективность алгоритма Григориадиса – Хачияна по сравнению с MCMC для разреженных графов с маленьким значением спектральной щели. Весь код находится в открытом доступе, так чтобы все желающие могли воспроизвести полученные результаты самостоятельно, или же использовать данную реализацию в своих нуждах. Работа имеет чисто практическую направленность, никаких теоретических результатов авторами получено не было.
-
Программный комплекс для численного моделирования движения систем многих тел
Компьютерные исследования и моделирование, 2024, т. 16, № 1, с. 161-174В настоящей работе решается задача численного моделирования движения механических систем, состоящих из твердых тел с произвольными массово-инерционными характеристиками. Предполагается, что рассматриваемые системы являются пространственными и могут содержать замкнутые кинематические цепи. Движение системы происходит под действием внешних и внутренних сил достаточно произвольного вида.
Моделирование движения механической системы производится полностью автоматически при помощи вычислительного алгоритма, состоящего из трех основных этапов. На первом этапе на основе задаваемых пользователем начальных данных выполняется построение графа механической системы, представляющего ее иерархическую структуру. На втором этапе происходит вывод дифференциально-алгебраических уравнений движения системы. Для вывода уравнений движения используется так называемый метод шарнирных координат. Отличительной чертой данного метода является сравнительно небольшое количество получаемых уравнений движения, что позволяет повысить производительность вычислений. На третьем этапе выполняются численное интегрирование уравнений движения и вывод результатов моделирования.
Указанный алгоритм реализован в виде программного комплекса, содержащего систему символьной математики, библиотеку графов, механический решатель, библиотеку численных методов и пользовательский интерфейс.
-
Предсказание производительности избранных типов циклов над одномерными массивами посредством анализа эмбеддингов промежуточных представлений
Компьютерные исследования и моделирование, 2023, т. 15, № 1, с. 211-224Предложен метод отображения промежуточных представлений C-, C++-программ в пространство векторов (эмбеддингов) для оценки производительности программ на этапе компиляции, без необходимости исполнения. Использование эмбеддингов для данной цели позволяет не проводить сравнение графов исследуемых программ непосредственно, что вычислительно упрощает задачу сравнения программ. Метод основан на серии трансформаций исходного промежуточного представления (IR), таких как: инструментирование — добавление фиктивных инструкций в оптимизационном проходе компилятора в зависимости от разности смещений в текущей инструкции обращения к памяти относительно предыдущей, преобразование IR в многомерный вектор с помощью технологии IR2Vec с понижением размерности по алгоритму t-SNE (стохастическое вложение соседей с t-распределением). В качестве метрики производительности предлагается доля кэш-промахов 1-го уровня (D1 cache misses). Приводится эвристический критерий отличия программ с большей долей кэш-промахов от программ с меньшей долей по их образам. Также описан разработанный в ходе работы проход компилятора, генерирующий и добавляющий фиктивные инструкции IR согласно используемой модели памяти. Приведено описание разработанного программного комплекса, реализующего предложенный способ оценивания на базе компиляторной инфраструктуры LLVM. Проведен ряд вычислительных экспериментов на синтетических тестах из наборов программ с идентичными потоками управления, но различным порядком обращений к одномерному массиву, показано, что коэффициент корреляции между метрикой производительности и расстоянием до эмбеддинга худшей программы в наборе отрицателен вне зависимости от инициализации t-SNE, что позволяет сделать заключение о достоверности эвристического критерия. Также в статье рассмотрен способ генерации тестов. По результатам экспериментов, вариативность значений метрики производительности на исследуемых множествах предложена как метрика для улучшения генератора тестов.
-
О подходе к разработке и валидации алгоритмов маршрутизации на разрывных сетях
Компьютерные исследования и моделирование, 2022, т. 14, № 4, с. 983-993В данной статье рассматривается проблема централизованного планирования маршрутов передачи данных в сетях, устойчивых к задержкам и разрывам. Исходная проблема расширяется дополнительными требованиями к хранению узлов и процессу связи. Во-первых, предполагается, что связь между узлами графа устанавливается с помощью антенн. Во-вторых, предполагается, что каждый узел имеет хранилище конечной емкости. Существующие работы не рассматривают и не решают задачу с этими ограничениями. Предполагается, что заранее известны информация о сообщениях, подлежащих обработке, информация о конфигурации сети в указанные моменты времени, взятые с определенными периодами, информация о временных задержках для ориентации антенн для передачи данных и ограничения на объем хранения данных на каждом спутнике группировки. Два хорошо известных алгоритма — CGR и Earliest Delivery with All Queues — модифицированы для удовлетворения расширенных требований. Полученные алгоритмы решают задачу поиска оптимального маршрута в сети, устойчивой к разрывам, отдельно для каждого сообщения. Также рассматривается проблема валидации алгоритмов в условиях отсутствия тестовых данных. Предложены и апробированы возможные подходы к валидации, основанные на качественных предположениях, описаны результаты экспериментов. Проведен сравнительный анализ производительности двух алгоритмов решения задачи маршрутизации. Два алгоритма, названные RDTNAS-CG и RDTNAS-AQ, были разработаны на основе алгоритмов CGR и Earliest Delivery with All Queues соответственно. Оригинальные алгоритмы были значительно расширены и была разработана дополненная реализация. Валидационные эксперименты были проведены для проверки минимальных требований «качества» к правильности алгоритмов. Сравнительный анализ производительности двух алгоритмов показал, что алгоритм RDTNAS-AQ на несколько порядков быстрее, чем RDTNAS-CG.
Журнал индексируется в Scopus
Полнотекстовая версия журнала доступна также на сайте научной электронной библиотеки eLIBRARY.RU
Журнал входит в систему Российского индекса научного цитирования.
Журнал включен в базу данных Russian Science Citation Index (RSCI) на платформе Web of Science
Международная Междисциплинарная Конференция "Математика. Компьютер. Образование"