{"id":14277,"url":"\/distributions\/14277\/click?bit=1&hash=17ce698c744183890278e5e72fb5473eaa8dd0a28fac1d357bd91d8537b18c22","title":"\u041e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0442\u0440\u044b \u0431\u0435\u043d\u0437\u0438\u043d\u0430 \u0438\u043b\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0443\u043a\u0440\u0430\u0448\u0435\u043d\u0438\u044f","buttonText":"\u041a\u0430\u043a?","imageUuid":"771ad34a-9f50-5b0b-bc84-204d36a20025"}

Прогноз пандемии коронавируса. Математическая модель

​Прогноз развития эпидемии в России coronavirussia.online

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

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

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

Согласно статистике, развитие эпидемий в мире происходит по нормальному закону распределения Гаусса. Его и взял за основу.

Для начала подключился к открытым источникам и научился выкачивать данные раз в 15 минут. Отобразил их красиво с помощью Chart.js и перешел к прогнозу. Взял для работы функцию нормального распределения

y(t) = b · e -c·(t-a)2

Исходные данные ti - ежедневные отметки времени xi - число активных случаев болезни в этот день

Взял натуральный логарифм от y(t) и от данных xi

ui = ln(xi)

u(t) = ln(y) = ln(b)-c·t2 + 2c·a·t-c·a2

Сделаем замены: А=-с; B=2a·c; C=ln(b)-c·a2; Получаем

u(t) = A·t2+B·t+C

Чтобы найти А, В и С - использую метод наименьших квадратов, согласно которому сумма по i от 1 до n квадратов разностей

Σ(xi-y(ti))2 -> min

должна стремится к минимуму.

Назовем эту сумму Ф(А,В,С)

Продифференцируем dФ по dA, dB и dC. Производные при это должны быть равны нулю.

Получаем систему уравнений

A·Σti4+B·Σti3+C·Σti2 = Σui·ti2

A·Σti3+B·Σti2+C·Σti = Σui·ti

A·Σti2+B·Σti+C·n = Σui

Решаем эту систему по методу Крамера

А = ∆A/∆

B = ∆B/∆

C = ∆C/∆

Находим нужные коэффициенты a,b,c для исходной функции

c = -A a = B/2·c b = eC+c·a2

И, вуаля, готово! Программируем и рисуем красивые графики и узнаем когда это кончится!

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

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

​Прогноз развития эпидемии в Италии coronavirussia.online

Будьте здоровы!

0
64 комментария
Написать комментарий...
Valera Rybakoff

Это никогда не закончится потому что к РНК-содержащим вирусам нет стойкого иммунитета. Коронавирус COVID-2019 просто убьёт всех кого может убить и останется жить в человеческой популяции ближайшие несколько сотен тысяч лет.

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

Ответить
Развернуть ветку
Nickol Nemchenko

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

Ответить
Развернуть ветку
Valera Rybakoff

Оспа за тысячи лет передачи от человека к человеку тоже потеряла летальность?

Ответить
Развернуть ветку
61 комментарий
Раскрывать всегда