УДК 004

Обоснование выбора семейства операционной системы методом прогнозирования временных рядов

Научный руководитель Кисель Екатерина Сергеевна – кандидат физико-математических наук, доцент кафедры математического моделирования Автомобильно-дорожного института (филиала) Донецкого национального технического университета (г. Горловка).

Мамчур Мария Владимировна – магистрант Автомобильно-дорожного института (филиала) Донецкого национального технического университета (г. Горловка).

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

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

Ключевые слова: свободное программное обеспечение, операционные системы, методы прогнозирования временных рядов, тренды.

Введение

В этой статье мы предлагаем новый подход к выбору семейства ОС, основанный на прогнозировании временных рядов. Мы исследуем, как методы анализа временных рядов могут быть использованы для прогнозирования будущих тенденций в развитии ОС и как эта информация может помочь пользователям и организациям сделать обоснованный выбор.

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

Мы надеемся, что наша работа будет полезна для исследователей и практиков в области информационных технологий, а также для всех, кто сталкивается с задачей выбора ОС.

Основная часть

Первоочередным вопросом, который возникает при анализе проблемы создания оригинальной сборки операционной системы для какой-либо специфической области применения (в частности, для отрасли высшего образования), является выбор семейства ОС.

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

Количество ОС для настольных систем не так велико и в 2024 году составляет всего лишь несколько единиц (если говорить именно о семействах ОС, не принимая во внимание различные версии однотипных систем, например, все версии Windows). Так на сегодняшний день достаточно широко (миллионами пользователей) используются [5]:

- ОС Windows;

- ОС MacOS;

- ОС Linux;

- ОС Chrome OS на ядре GNU/Linux.

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

Существует достаточно обширная статистика применения указанных ОС, которую предоставляют многочисленные сайты для поиска справочной информации. Так, одним из таких ресурсов, предоставляющих подробные данные о статистике применения различных ОС является сайт Statcounter.

Сайт предоставляет весьма подробную информацию об используемых в мире (посетителями Интернет-сайтов) операционных системах – рис. 2.1.

Рисунок2

Рисунок 2.1 Ресурс statcounter, предоставляющий подробные данные по использованию настольных операционных систем [6]

Конкретно на рисунке 2.1 отображена статистика использования настольных ОС за последние 12 месяцев (на март 2024 года), однако сайт предоставляет данные за большое количество последних лет, поэтому примем в рассмотрение сведения за последние 5 лет с 2019 по 2023 гг. включительно.

При этом безусловным лидером (не только в последние 5 лет, а вообще за весь период наблюдений) является ОС Windows. Очевидно, многие пользователи используют пиратские версии данной системы без выполнения какого-либо лицензирования, однако, для официального учебного заведения такой вариант неприемлем.

Таким образом, чрезвычайно важным вопросом является выбор между семейством ОС Linux и Chrome OS и данный выбор должен быть обоснован (желательно математически), а не выполняться случайным образом.

В связи с вышеизложенным, применим к двум указанным альтернативам (Linux и Chrome OS) математический метод прогнозирования их распространенности, основанный на анализе временных рядов.

Под временным рядом [2] будем понимать последовательность значений процента пользователей, которые пользуются данной ОС по месяцам. График двух этих зависимостей показан на рис. 2.2.

Рисунок3

Рисунок 2.2 График изменения популярности ОС по месяцам, начиная с января 2019 г. по февраль 2024 включительно (всего 62 месяца): сплошная линия – ОС Linux, точками показаны данные ОС Chrome OS

Существуют различные математические методы, применяемые для построения прогнозов следующих значений временного ряда на основании известных его членов. Одним из базовых подходов здесь является выделение скользящих средних, поэтому данное понятие следует рассмотреть подробнее.

Скользящее среднее (англ. moving average) – статистический метод анализа временных рядов, который используется для сглаживания данных и выявления трендов [4].

Он работает путем вычисления среднего значения последовательности наблюдений за определенный период времени, который называется окном скользящего среднего. При этом окно перемещается по временному ряду, на каждом шаге пересчитывая среднее значение [1].

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

Очевидно, что при стабильных внешних условиях целесообразно использовать более длинные скользящие средние, а при постоянных изменениях условий – наоборот, длинные учитываемые последовательности не дадут хорошего результата (поэтому следует ориентироваться на короткие их длины).

В рассмотренном ранее материале длину скользящей средней можно охарактеризовать, как p = n – k + 1 [5]. В рамках этих р значений можно проводить различные варианты аппроксимации, простейшим из которых является линейная регрессия. При этом ищется прямая, которая максимально соответствует этим р точкам, где можно рассматривать различные критерии соответствия, но наиболее простым и при этом достаточно эффективным является метод наименьших квадратов. При этом сумма квадратов невязок (разностей значений ординаты аппроксимирующей прямой и реальной ординаты, которая наблюдалась) должна быть минимальной.

Итак, скользящая средняя характеризуется как аппроксимация (часто линейная) p последних (т.е. наиболее свежих) известных значений временного ряда:

Screenshot 8

Очевидно, что выбирать р точек нужно обязательно начиная с последней (определенной позднее всех, в момент, лежащий ближе всего к текущему моменту времени) и двигаясь постепенно ретроспективно (назад во времени), отбирая нужное количество значений (р величин). Если отбор значений проводить не с самого позднего отсчета, то будут учитываться более старые значения ряда, без учета более свежих, что не имеет смысла. Если при заданном n, также считать заданным p, то это эквивалентно заданию номера члена ряда k, начиная с которого следует учитывать все последующие (более поздние) значения вплоть до самого последнего (максимально свежего на данный момент) [3].

Коэффициенты в (2.1) высчитываются по стандартным формулам линейной регрессии.

Например, известно несколько экспериментальных замеров величины уі при заданной величине хі – рис. 2.3, показанные точками.

После выполнения экспериментов возникает задача воспроизведения функциональной зависимости величины у от х. Как уже сказано выше, можно выполнить аппроксимацию линейной зависимостью (2.1) (и которая показана пунктиром на рис. 2.3). Возможно, более адекватно отражала бы явление квадратичная зависимость (или какие-либо другие варианты функциональной зависимости), но с математической точки зрения, как самая простая, взята именно линейная зависимость (2.1).

Рисунок4

Рисунок 2.3 Функциональная зависимость, близкая к линейной

Выбрать конкретные коэффициенты можно по методу наименьших квадратов: следует рассмотреть отклоненияScreenshot 9

и найти минимум суммы квадратов таких невязок:

Screenshot 10

Из этого требования следует система двух уравнений, из которой можно определить коэффициенты линейной регрессии:

Screenshot 2

Итак, в качестве основы для написания программного обеспечения часто принимают зависимость (2.1), коэффициенты которой ищут по формулам (2.2), которые проанализируем подробнее. В (2.2) имеются некоторые стандартные величины, подлежащие определению:

- среднее арифметическое (или на языке математической статистики - математическое ожидание) входной величины х, которая является аргументом функции (2.1);

- среднее арифметическое исходной величины у, которая является функцией в зависимости (2.1);

- среднее квадратическое входной величины х (сумма квадратов всех наблюдений х, деленная на их общее количество);

- среднее значение всех произведений величин х и у.

Все эти величины можно рассчитывать в одном цикле от 0 до n (не включая), по окончании которого можно выполнить арифметический расчет полученных средних значений и определить числа a и b по (2.2).

Аналогичную к (2.2) систему можно получить по методу наименьших квадратов и для коэффициентов квадратичной регрессии y = ax2 + bx + c:

Screenshot 3

Неизвестные коэффициенты a, b, c можно найти, решая полученную систему линейных алгебраических уравнений, например, методом Крамера (хотя, конечно, возможно применение и других подходов):

Screenshot 4

Ввиду более высокой сложности (а значит и малой практичности) формул квадратичной и более высоких порядков регрессии, в большинстве нематематических (прикладных) исследований применяют именно линейную регрессию вида (2.1) с коэффициентами (2.2), которая, вообще говоря, может иметь разную размерность [4].

Итак, конечно, помимо (2.1) иногда могут использоваться также квадратичные зависимости (квадратичная регрессия с тремя коэффициентами a, b, c) и более сложные варианты функциональных зависимостей. Однако, на практике чаще всего все же используется именно вариант линейной регрессии (2.1). Хороший эффект может давать комбинирование разных скользящих средних (которые, как уже выяснено выше, могут отличаться только числом p). Тогда каждую из них можно учитывать в общей сумме с некоторым весовым коэффициентом:

Screenshot 5

где L – общее количество комбинируемых скользящих средних;

wl – вес l-той скользящей средней в общем результате.

Вес более длинных скользящих средних может быть как меньше (ведь при этом учитываются более устаревшие сведения), так и больше (ведь при этом нивелируются резкие временные скачки) – это зависит от принятого исследователями подхода.

Следует отметить, что в выражении (2.3) все веса wl должны быть нормированы, т.е. должно соблюдаться:

Screenshot 6

Если же условие (2.4) нарушено, то формулу (2.3) следует нормализовать, применяя формулу вида:

Screenshot 7

Применим изложенные методы, а именно – вычисление линейной регрессии для рассматриваемого случая выявления наиболее популярной в будущем свободной операционной системы. Расчет по приведенным формулам (2.2) выполняем в автоматизированной форме с помощью математического пакета Mathcad. Расчет для ОС Linux приведен на рис. 2.6, а соответствующий график выявленной линейной регрессии показан на рис. 2.7. Аналогичный расчет для ОС Chrome OS показан на рис. 2.8, а график полученной регрессии отображен на рис. 2.9.

Рисунок5

Рисунок 2.6 Расчет временного ряда для популярности ОС Linux в среде Mathcad

Рисунок6

Рисунок 2.7 Рассчитанная линейная регрессия, описывающая популярность ОС Linux на основе данных исторических наблюдений (за последние 5 лет)

На графиках видно четкий рост популярности обеих ОС, но видно, то в целом рост популярности для Linux происходит быстрее.

Рисунок7

Рисунок 2.8 Расчет временного ряда для популярности ОС Chrome OS в среде Mathcad

Рисунок8

Рисунок 2.9 Рассчитанная линейная регрессия, описывающая популярность ОС Chrome OS на основе данных исторических наблюдений

В качестве сравнения можем задать временной интервал в районе 10 лет (120 месяцев), и полученные модели для ОС Linux дают величину популярности порядка 5,141% от всех пользователей, а для Chrome OS – 4,565% от всех пользователей. Дальше разрыв между ними будет все больше увеличиваться ввиду большего коэффициента наклона прямой, соответствующей ОС Linux.

Таким образом, как вывод из полученного исследования временных рядов, можно сказать следующее:

- популярность ОС Linux на начало 2024 года превышает популярность Chrome OS;

- построенная математическая модель на основании анализа временных рядов популярности этих двух ОС показывает, что через 10 лет превышение будет еще более значительным и разрыв все время будет расти;

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

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

  1. А. Н. Тырсин, «Построение моделей авторегрессии временных рядов при наличии помех», Математическое моделирование, т. 17, вып. 5, сс. 10–16, 2005.
  2. Введение в анализ временных рядов: [Электронный ресурс] // Режим доступа: https://studfile.net/preview/5303711/
  3. Мясоедова Е.А., Будникова Г.А. Информационная образовательная среда учреждения: понятие, структура, проектирование // Вестник Российского университета дружбы народов. Серия: Информатизация образования. – 2012. – №2. – C. 82-90
  4. Нейросетевое прогнозирование временных рядов [Электронный ресурс] // Режим доступа: http://www.ysu.am/files/Paper4.pdf
  5. Aaron van den Oord, Sander Dieleman, Heiga Zen, Karen Simonyan, Oriol Vinyals, Alex Graves, Nal Kalchbrenner, Andrew Senior, Koray Kavukcuoglu WaveNet: A Generative Model for Raw Audio [Электронный ресурс]. – Режим доступа :URL: https://arxiv.org/abs/1609.03499
  6. Statcounter [Электронный ресурс]. – Режим доступа: https://gs.statcounter.com/os-market-share#monthly-202302-202402. – Дата доступа: 19.02.2024.