Моделирование системы в Anylogic

Автор: Федотов В.А.

Журнал: Форум молодых ученых @forum-nauka

Статья в выпуске: 2 (54), 2021 года.

Бесплатный доступ

В статье описывается процесс создания моделируемой системы в программе AnyLogic.

Моделирование, процесс, модель, устройство

Короткий адрес: https://sciup.org/140288440

IDR: 140288440

Текст научной статьи Моделирование системы в Anylogic

  • 1    ОПИСАНИЕ МОДЕЛИРУЕМОЙ СИСТЕМЫ

Специализированное вычислительное устройство, работающее в режиме реального времени, имеет в своем составе два процессора, соединенные с общей оперативной памятью. В режиме нормальной эксплуатации задания выполняются на первом процессоре, а второй является резервным. Первый процессор работает безотказно лишь в течение 150±20мин. Если отказ происходит во время решения задания, то мгновенно производится подключение второго процессора, который продолжает решение прерванного задания, а также решает и последующие задания до восстановления первого процессора. Это восстановление происходит за 20±10мин, после чего начинается решение очередного задания на первом процессоре, а резервный отключается. Задания поступают каждые 10±5 мин, а решаются за 5±2 мин. Надежность второго процессора абсолютна. Смоделировать процесс работы устройства в течение 50ч.

  • 2    СХЕМА И ОПИСАНИЕ МОДЕЛИ

Q-схема специализированного вычислительного устройства представлена на рисунке 1.

Рисунок 1 – Q-схема устройства

Реализуем Q-схему специализированного вычислительного устройства с помощью программного средства AnyLogic, рисунок 2.

Рисунок 2 – Q-схема устройства, реализованная в AnyLogic

Источник используется в качестве начального блока диаграммы процесса. Задачи, поступающие в очередь и далее к процессорам, исходят от источника и прибывают согласно заданному времени прибытия, в соответствии с рисунком 3. Время поступления 1 задачи находится в интервале от 5 до 15 минут включительно. Время выбирается рандомно, используя целочисленные значения.

Рисунок 3 – Интервал поступления задач

Далее задача поступает в «Очередь_1» и, если «Процессор_1» свободен для выполнения задачи, то задача поступает в «Процессор_1» и выполняется. Время выполнения 1 задачи находится в интервале от 3 до 7 минут включительно, в соответствии с рисунком 4. Время выбирается рандомно, используя целочисленные значения.

Рисунок 4 – Время решения задачи

«Процессор _1» может выполнять задачи в интервале от 130 до 170 минут включительно, в соответствии с рисунком 5. Время выбирается рандомно, используя целочисленные значения.

Рисунок 5 – Время работы 1 процессора

После истечения времени «TimeProc1» задачи начинают поступать в «Очередь_2» и если «Процессор_2» свободен для выполнения задачи, то задача поступает в «Процессор_2» и выполняется. Время выполнения 1 задачи находится в интервале от 3 до 7 минут включительно, в соответствии с рисунком 6. Время выбирается рандомно, используя целочисленные значения.

Рисунок 6 – Время работы 1 процессора

В «delay2» поступают выполненные задачи из «Процессора_1» и «Процессора_2». «Sink» используется в качестве конечного блока диаграммы процессов.

  • 3    ТЕСТИРОВАНИЕ МОДЕЛИ

    • 3.1    Тестирование №1

Проведем тестирование №1 со следующими значениями параметров:

  • -    SourceTime (время поступления задач) = 11 минут;

  • -    Proc1 (время решения задачи) = 3 минуты;

  • -    Proc2 (время решения задачи) = 7 минут;

  • -    TimeProc1 (время работы 1 процессора) = 138 минут;

  • -    TimeProc2 (время работы 2 процессора) = 24 минуты.

  • 3.2    Тестирование №2

После запуска вычислительное устройство отработало 1 круг (время работы 1 процессора + время работы 2 процессора), равный 162 минуты. За это время было выполнено 12 задач на процессоре 1 и 2 задачи на процессоре 2. В сумме было выполнено 14 задач. На рисунке 7 представлено выполнение вычислительного процесса 1 и графики со значениями на схеме.

Рисунок 7 – Выполнение вычислительного процесса 1

Проведем тестирование №2 со следующими значениями параметров:

  • -    SourceTime (время поступления задач) = 14 минут;

  • -    Proc1 (время решения задачи) = 6 минут;

  • -    Proc2 (время решения задачи) = 4 минуты;

  • -    TimeProc1 (время работы 1 процессора) = 158 минут;

  • -    TimeProc2 (время работы 2 процессора) = 17 минут.

  • 3.3    Тестирование №3

После запуска вычислительное устройство отработало 1 круг (время работы 1 процессора + время работы 2 процессора), равный 175 минут. За это время было выполнено 11 задач на процессоре 1 и 1 задача на процессоре 2. В сумме было выполнено 12 задач. На рисунке 8 представлено выполнение вычислительного процесса 2 и графики со значениями на схеме.

Рисунок 8 – Выполнение вычислительного процесса 2

Проведем тестирование №3 со следующими значениями параметров: - SourceTime (время поступления задач) = 5 минут;

  • -    Proc1 (время решения задачи) = 3 минуты;

  • -    Proc2 (время решения задачи) = 6 минут;

  • -    TimeProc1 (время работы 1 процессора) = 151 минута;

  • -    TimeProc2 (время работы 2 процессора) = 25 минут.

После запуска вычислительное устройство отработало 1 круг (время работы 1 процессора + время работы 2 процессора), равный 176 минут. За это время было выполнено 30 задач на процессоре 1 и 3 задачи на процессоре 2. В сумме было выполнено 33 задач. На рисунке 9 представлено выполнение вычислительного процесса 3 и графики со значениями на схеме.

Рисунок 9 – Выполнение вычислительного процесса 3

Статья научная