Конкурс «КИО 2021»
Эпидемия (2 уровень)

Условие

a virus
Alissa Eckert, MS; Dan Higgins, MAM. Общественное достояние, https://commons.wikimedia.org/w/index.php?curid=86444014
Этот год прошел под знаком коронавируса. Задача о моделировании роста заболеваемости стала актуальной для планирования работы больниц и оценке потерь, которые несет промышленность от коронавируса.

В этой задаче вам предлагается простейшая модель распространения эпидемии, в которой число заразившихся пропорционально числу встреч здоровых с инфицированными (то есть пропорционально их произведению). Вы можете вводить масочные режимы разного уровня строгости, уменьшающие вероятность заразиться при контактах. При этом производительность будет уменьшаться на 10% при режиме 1, до 50% при режиме 5. Можно вводить частичный карантин, выводя из производственного процесса на некоторое время часть населения. Также имеется возможность проводить выборочное тестирование случайно выбранных человек в допустимом количестве. При этом обнаруженные носители вируса будут изолироваться, но появятся затраты на тестирование ( 40% от его выработки за день). Все заболевшие перемещаются в больницу. Количество мест в больнице ограничено 20 больными. Вам нужно так спланировать введение ограничительных мер на 100 дней для маленького сообщества из 100 человек, чтобы сохранить его максимальную производительность. Нужно учесть, что каждые четыре дня извне приезжает зараженный вирусом человек.

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

people in masksОпределяя последовательность смены режимов, вы сразу получите результат — объем произведенной продукции. При желании можно проследить за изменением структуры числа зараженных в анимационном режиме или даже проследить изменения по дням.

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

Помощь

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

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

Стратегии не могут накладываться друг на друга. Если какая-то стратегия наложена на другую или имеет некорректные дни начала и окончания, она не действует.

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