Пандемия коронавируса так или иначе коснулась уже практически каждого человека на планете. Более 20 миллионов переболели, порядка миллиона умерли, а число тех, кто потерял работу и лишился средств к существованию, составляет уже сотни миллионов. Но есть и хорошие новости: пандемия сплотила человечество перед лицом общей угрозы и создала новые рынки для высокотехнологичных проектов. Основатель одного из физтеховских стартапов, возникших благодаря коронавирусу, рассказывает свою историю.
Жизнь до вируса
На Физтех я поступил в 2006 году, по окончании ЗФТШ и одной из известных московских физматшкол. Мои родители думали, что перед выпускником Физтеха открываются любые двери, и как только я получу заветный диплом, работодатели выстроятся за мной в очередь. Я поверил.
В 2012 году окончил Факультет аэрофизики и космических исследований МФТИ, работать начал рано, как и большинство нынешних физтехов. Работал и в госкорпорациях, и в частных компаниях, делал карьеру, получал дополнительное образование. Собирался защититься, но не получилось совмещать аспирантуру с работой. Итог — 12 лет вполне успешной карьеры.
Волонтерство
В 2020 на Землю пришел COVID-19 и забрал у моей семьи двоих ее членов. Погибли бабушка и дедушка моей супруги, скорая доехала до них спустя несколько дней после вызова. В это время я работал в крупной строительной компании и, как многие в Москве, по указу мэра перешел на удаленный режим работы. Наблюдал за событиями в мире, связанными с пандемией. С портала госуслуг пришло приглашение стать волонтером, и я решил попробовать. Попал в команду Тверского района. Занимался доставкой продуктовых наборов и горячих обедов для пожилых людей. За несколько недель удалось придумать и внедрить небольшие оптимизационные фишки, и доставка заработала в 3–5 раз быстрее, а нагрузка на волонтеров сократилась раз в 10. Я написал небольшое API на базе Яндекс.Карт, и волонтеры стали доставлять обеды и продуктовые наборы сразу в несколько домов, расположенных по соседству. Поскольку пандемия набирала обороты, моей технологией заинтересовалось руководство города. Мне доверили управление логистикой волонтеров Тверского района Москвы, а через некоторое время — и всего ЦАО. Работа кипела круглосуточно.
О незамысловатой, казалось бы,системе заговорили, нами заинтересовались СМИ. Появились репортажи в Reuters и на федеральных каналах. Пришло понимание того, что одного API уже недостаточно, да и одного меня тоже. Каждый день надо было составлять тысячи маршрутных листов и логистических карт. Что-то удавалось автоматизировать, что-то приходилось делать руками. По ночам штудировал руководства по языку программирования Python. Буквально через несколько недель после сюжетов на телевидении и в интернете о волонтерах, а также резкого увеличения заболеваемости ко мне обратились руководители системы здравоохранения Москвы. Они увидели сюжет на телеканале «Москва 24» о внедренной системе логистики в волонтерскую деятельность и заинтересовались этим решением.
Ковидные бригады
Как и во многих странах, хорошо работающая, современная система депздрава Москвы оказалась не готова к резкому росту количества вызовов врачей на дом. Проблема была также в том, что отсутствовала единая база заболевших. Баз данных было много. В одну квартиру могли приехать сразу несколько бригад врачей, потому что заболевший коронавирусом человек находился в одной базе данных, его супруга — в другой, а ребенок в третьей. Соответственно, в один подъезд могло прибыть, а в соседний — ни одной, люди там умирали. Именно так случилось с членами моей семьи. Искать виноватых в этом, разумеется, можно. Но по большому счету никто не был готов отразить вирус. Ни одна страна мира.
Я начал свою работу с одной из лучших и самой большой городской поликлиникой Москвы. Важно отметить, что там, несмотря на очень большое количество умных и образованных людей на квадратный метр, системы логистики не существовало вообще. Руководители формировали список пациентов, к которым необходимо было выехать, далее эти списки в формате Excel присылались на почту или в чат ответственному исполнителю, тот собирал все в один файл и сортировал вручную по дате планируемого посещения пациента. После этого всех нужно было разделить по адресам филиалов поликлиники и распределить по выездным бригадам, количество которых менялось каждый день. Руководство считало это нормальным, везде так работают.
Поначалу я стал внедрять в поликлинике те же решения, которые использовал в работе с волонтерами. Но этого было недостаточно: нужно было строить логистику на несколько филиалов поликлиник. Две-три тысячи вызовов в день. Ночевал в клинике, потому что времени на дорогу уже попросту не оставалось. Нужно было что-то делать, поскольку с увеличением объема данных выполнять поставленные задачи становилось невозможно, да и силы были на исходе. Пришла идея взять небольшую паузу и полностью «обнулиться». В процессе обнуления я обратился к нескольким десяткам своих сокурсников, выпускникам МФТИ, с которыми пересекался в либо во время учебы на Физтехе, либо в Российской экономической школе (РЭШ).
Откликнулся Дмитрий Зубанов, выпускник Физтеха и РЭШ, сейчас большой босс в инвестиционном бизнесе. Он познакомил меня с Александром Гришиным, одним из основателей Школы программирования. И мы вместе с ним и руководителем одного из аналитических центров Департамента здравоохранения Москвы Павлом Кузьминым приступили к работе над приложением.
Логистика
Задача поиска оптимального маршрута между несколькими точками была впервые сформулирована почти 200 лет назад. Позже ее стали называть задачей коммивояжера и разработали множество алгоритмов ее решения.
С развитием рынка онлайн-коммерции задача построения оптимального маршрута для курьеров службы доставки приобрела новую актуальность. Сейчас на рынке представлено множество готовых решений по оптимизации работы курьеров. Например, недавно для этого открылся сервис Яндекс.Маршрутизация.
Что же мешало просто взять эти готовые решения и использовать их для оптимизации работы врачебных бригад? Проблем было несколько. Во-первых, персональные данные. Существует Федеральный закон «О персональных данных» № 152-ФЗ. Контактные данные больных (фамилии, адреса, телефоны), а особенно медицинскую информацию о них можно хранить и обрабатывать только с соблюдением строгих норм и правил. Нельзя просто взять и выгрузить их во внешний коммерческий сервис. Во-вторых, нет готовых систем, которые были бы совместимы с программами, используемыми врачами. Форматы загрузки данных не сочетаются с форматами выгрузки. Острой необходимости в таких сервисах до пандемии не было.
Карты Яндекса и Гугла не подошли по причине лицензионных ограничений (данные маршрутов и геокодирования можно отображать только на картах от этих вендоров, а у потенциальных пользователей были опасения, что передавать вендорам даже списки домов больных — недопустимо. Поэтому мы взяли за основу проект OpenStreetMaps. Он бесплатен, имеет возможность локальной установки и достаточно хорошее покрытие по крупным городам России.
Принцип работы таков: адреса из «сырого» вида преобразуются в координаты домов, находящиеся рядом адреса кластеризируются, после этого кластеры распределяются между бригадами так, чтобы время работы бригад было примерно одинаковым.
Система «Логист» со стороны медицинского учреждения загружает список адресов с внешними ключами (ID заявки). Эти идентификаторы нужны для соблюдения закона о персональных данных. При необходимости сотрудник поликлиники или больницы корректирует адреса (если они не распознались или обнаружились где-нибудь в другом городе). После этого оператор сразу видит адреса на карте в виде цветных маркеров (свой цвет для каждой бригады) и имеет возможность перераспределить задания, «перекрасив» маркеры.
Первые прототипы приложения были сделаны буквально за несколько недель. Мы постоянно собираем отзывы пользователей и дорабатываем интерфейс. Сейчас можно уверенно сказать, что наша работа уже спасла не одну жизнь. Ставим перед собой задачу полного внедрения нашей программы в систему здравоохранения не только Москвы, но и других крупных городов, таких как Уфа или Владивосток.
После вируса
Мы уверены, что и после окончания пандемии приложение будет продолжать пользоваться спросом. Ну а в случае второй волны оно тем более понадобится. Именно поэтому мы хотим дать возможность использовать этот сервис всем врачам, у которых возникнет такая потребность. А также добавить в сервис новые полезные функции. Например, снабдить врачей GPS-трекерами для более удобной обработки вызовов быстрого реагирования и строить маршруты с учетом пробок, получая данные ЦОДД.
На данный момент в нескольких клиниках Москвы используется наша система «Координатор», с которой достаточно только загрузить список на сайт программы. «Координатор» сам распределит все по бригадам, проложит оптимальный маршрут и соберет информацию со смартфонов водителей. Быстро и очень просто.
На одной системе логистики мы не остановились. Уже сейчас наша команда совместно с сотрудниками Депздрава разрабатывает систему управления базой данных коронавирусных больных с различным уровнем прав доступа, построением прогнозов с помощью нейросетей и искусственного интеллекта.
В моей жизни случилось так, что, не ожидая никаких наград и премий, я приобрел прекрасную команду, работу, опыт и настоящее счастье от того, что моя деятельность нужна. Так сбылось обещание родителей о том, что перед выпускником Физтеха открываются любые двери. Родители просто забыли добавить, что в некоторые из этих дверей нужно настойчиво постучать.
Дмитрий Курдюмов, врач ковидной бригады клинико-диагностической поликлиники № 121 Москвы:
— Перед началом смены мы получаем адреса пациентов, которых должны посетить. Они расположены по всему району, и нашей первоначальной задачей является распределение этих адресов по бригадам и построение маршрутов.
Раньше приходилось делать это вручную. На то, чтобы правильно построить маршрут, уходило большое количество времени, и часто маршруты получались неудобными. Появлялись ошибки.
С появлением программы «Координатор» стало действительно легче, время значительно сократилось. Если выбирать между ручным построением маршрутов и программным, конечно, выбираем программный метод, потому что сэкономленное время можем посвятить больным. С помощью программы мы успеваем сделать все в срок. Надеемся, что система будет развиваться и становиться еще более удобной.
За несколько недель удалось придумать и внедрить небольшие оптимизационные фишки, и доставка заработала в 3–5 раз быстрее, а нагрузка на волонтеров сократилась раз в 10.
Система «Координатор» сам распределит все по бригадам, проложит оптимальный маршрут и соберет информацию со смартфонов водителей.