{"id":14279,"url":"\/distributions\/14279\/click?bit=1&hash=4408d97a995353c62a7353088166cda4ded361bf29df096e086ea0bbb9c1b2fc","title":"\u0427\u0442\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u0442\u0435: \u0432\u044b\u0435\u0445\u0430\u0442\u044c \u043f\u043e\u0437\u0436\u0435 \u0438\u043b\u0438 \u0437\u0430\u0435\u0445\u0430\u0442\u044c \u0440\u0430\u043d\u044c\u0448\u0435?","buttonText":"","imageUuid":""}

Как алгоритмы «Яндекс.Такси» распределяют автомобили в городе

Несколько месяцев назад «Яндекс.Такси» разработало и запустило систему, которая предлагает каждому водителю, только что завершившему поездку, индивидуальный маршрут, предсказывая спрос и эффективно распределяя все автомобили по городу. Это позволило водителям, подключенным к сервису, как минимум на 20% увеличить свой ежедневный доход.

Руководитель группы экспериментальных продуктов Лев Феофанов написал для блога компании на vc.ru колонку о том, как работает система подсказок.

Лев Феофанов, Яндекс.Такси

Доход водителя зависит от эффективности

У «Яндекс.Такси», как и у любого сервиса по заказу поездок онлайн, есть две категории пользователей — водители, подключенные к платформе, и пассажиры, которых они везут. Для тех и других важно, чтобы сервис был надёжным, быстрым и доступным.

Разница лишь в том, что для водителей это не просто приложение, а источник дохода — либо основного, либо дополнительного. Поэтому для них важно как можно больше времени проводить с клиентом — чем меньше он ездит «в холостую», тем выше его доход за смену.

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

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

Водителям зачастую сложно принимать решения

Чтобы максимально увеличить полезный пробег у «Яндекс.Такси», есть много алгоритмов. Платформа умеет искать для водителя заказ по цепочке: ещё до завершения текущей поездки система подбирает ему следующий заказ — недалеко от того места, куда он сейчас везёт пассажира.

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

В таких ситуациях водителю приходится самостоятельно принимать решение: оставаться и ждать следующего пассажира или переместиться в другой район в надежде получить заказ там.

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

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

Чтобы облегчить водителям жизнь, мы начали им помогать принимать эти решения. Несколько лет назад мы стали показывать карту повышенного спроса. Прямо в водительском приложении «Таксометр» стали обозначать районы, в которых клиентов больше, чем водителей — то есть много заказов и, как следствие, действует временный повышающий коэффициент.

Но глобально «проблему выбора» нововведение не решило. Часто возникают ситуации, когда рядом с водителем несколько районов с повышенным спросом, а на маршруте ещё и пробки. Как принять оптимальное решение, не потратив время и топливо зря?

Практика показала, что это сложно — чаще всего водители в такой ситуации остаются ждать следующего заказа в том месте, где до этого высадили пассажира, даже если неподалеку есть район, где сейчас не хватает машин и высокий спрос.

Как можно помочь водителям принимать решения

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

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

«Жизнь» в город привнесли тысячи виртуальных пассажиров: каждый из них перемещается по своим делам — в точности, как это делают настоящие горожане.

При помощи команды машинного обучения мы смогли воссоздать поведение обычного водителя, который опирается на свой опыт перемещения по городу, и доступную на текущий момент информацию от сервиса — такого, как «Яндекс.Такси». Чем больше дней такой водитель работает, тем больше знаний о городе накапливает, тем более качественными становятся его решения и тем больше он зарабатывает в конце своей виртуальной смены.

Затем мы добавили в виртуальный город водителя-профессионала. Он знает о городе всё: где лучшие заказы, когда будет повышенный спрос, в каком районе он возникнет, как долго продлится, как быстрее всего к нему доехать. Как правило, такой водитель зарабатывает значительно больше, чем первый, за то же время, проведённое на линии.

Мы повторили такую симуляцию для нескольких реальных городов в разное время года и получили огромный массив данных — с их помощью лучше поняли разницу в заработке «обычного» водителя и «оракула», который знает всё наперёд и придерживается оптимальной стратегии перемещения.

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

Как работает алгоритм распределения водителей

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

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

Например, мы знаем, что сегодня после 19 часов в Хамовниках такси понадобится примерно 150 пользователям. Неподалеку свои заказы завершат 70 водителей, так что нам остается найти еще 80, для того чтобы удовлетворить спрос и не допустить повышающих коэффициентов.

Дальше в дело вступает математика: чтобы расчёты были точными, нужно учесть сразу несколько вводных. Например, что водитель не обязан следовать нашим рекомендациям: если мы отправим предложение «Проводника» 80 водителям поблизости, не факт, что все они согласятся.

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

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

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

Доходы водителя с «Проводником» увеличились

Уже первые пилотные запуски «Проводника» показали, что водители, следующие предложениям от системы, начали зарабатывать в среднем на 20% больше, не увеличивая при этом длительность своей рабочей смены.

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

Проводник делает сервис более привлекательным для водителей: как для тех, у кого такси — это основная работа, так и для тех, кто считает её подработкой.

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

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

Компании по всему миру заняты созданием беспилотных автомобилей: свои наработки есть у Alphabet, Uber, «Яндекса», в гонку вступили производители автомобилей. Однако спроектировать автономные машины, способные распознавать дорожную разметку, самостоятельно перемещаться по дорогам, — это лишь одна часть задачи.

Дальше надо научить эти машины принимать решения — когда и куда именно двигаться, для того, чтобы как можно быстрее добраться до следующего пассажира и отвезти его максимально быстрым путём. И в тот момент, когда таких машин на дорогах станет больше, победит тот, кто будет эффективнее управлять таким беспилотным флотом.

Вакансии

В нашей команде еще много задач, который нам надо помочь решить. Присоединяйтесь:

0
240 комментариев
Написать комментарий...
Ваня Суханкин

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

Ответить
Развернуть ветку
Трейдер мамкин

Ой ну тогда объясни мне какого хера это же такси стоит будто за рулём сидим сениор бэкенд разработчик???

Ответить
Развернуть ветку
Ваня Суханкин

Так, давайте в другую сторону. Сколько должно стоить такси? У ЯТ на тарифе Комфорт+ поездка 30 минут выходит в районе 500 рублей. Это дорого что ли? Какой синьор получает 1000 рублей в час? 😂😂😂

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

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

Ответить
Развернуть ветку
Трейдер мамкин

Коммисия Яндекса меня как клиента волновать не должна, доехать до меня одна две минуты, собственно найти следующий заказ меня тоже не волнует если его тупо нет, а если есть там сотни разрабов пилят систему что бы как раз и не было простоев (видимо это им не удаеться и работают там всякие Виталики и Глебы) Бензин 15км простите копейки, что там ещё амортизация, масло, незамерзайка это все тоже стоит копейки ну кому вы все эти сказки рассказывайте

Ответить
Развернуть ветку
Глеб Алейников

Вот я поражаюсь, как человек не понимающий элементарных вещей, " делает зпмечания космической глупости", что такое амортизация я вам поясню, хотя я таксист. Это стоимость владения автомобилем, которая складывается из: 1. Самого автомобиля, стоимость которого благодаря таким умникам как автор этой статьи через три года упадёт на 70%. Через три года этот автомобиль не будет подходить под комфорт + или комфорт т.е. нормально работать в такси нельзя. Продать его не возможно, т.к. по винкоду сразу пробивается что авто работало в такси, т.к. на нём лицензия... 2. Масло, незамерзайка копейки... Масло меняется в зависимости от пробега, как и другие вещи фильтры воздушный, масляный, кондиционера, топливный т.е. ТО от 9000 до 24000р каждые 15000км, которые я проезжаю за полтора два месяца, а ещё от интенсивности эксплуатации колодки, амортизаторы, и т.д. и т.п. А есть ещё более серьёзные узлы, которые по гарантии мне не подменяют т.к. она 120000 км и закончится она у меня примерно через 1,5 года работы в такси если не быстрее... Поэтому когда благодаря алгоритмам автора данной статьи я везу за 200р пассажира и собираюсь высадить пассажира у поворота, а он мне говорит во двор подъезд номер 9, где всё в ямах и заставлено машинами и риск повредить машину свою и чужую возрастает, мне хочется выйти из машины вытащить пассажира за ухо и дать ему подж..пу... Но я этого не делаю, т.к. пассажир не причём, виноваты эти эффективные разработчики, такие как аффтар, которые в жизни не сделали ни одной поездки и не перевезли ни одного пассажира а берутся управлять бизнесом а главное сотнями тысяч людей....

Ответить
Развернуть ветку
Alexey Lamkinson

Глеб, насколько я понял, ты как и я работаешь в Москве на своем авто в такси.Судя по твоим тратам на ТО ,обслуживаешься ты только у официалов?Если это так ,то я тебя не совсем понимаю,ибо замена масла в гараже (а это все ,что требуется автомобилю) с пробегом до 100000 км,ну не считая колодки ,свечи ,стоит максимум 3000 рублей и это я говорю про авто класса Д,типа Камри,Оптимы ,мазды 6. А если ты работаешь на своем авто,то ты намнооооого счастливее тех,кто горбатится на арендованных тачках ,а значит,жалоб с твоей стороны быть не должно)).Да ,на нас огромные риски,не дай Бог кто-то въедет и мы уже не потянем ,но ты не хуже моего знаешь,что тот ,кто не рискует ,тот не пьет шампанского,не так ли.Возвращаясь к тратам на ТО ,не имеет смысла обслуживаться у официалов ,когда ты преодолел порог 100000км.А 100000 - это год - полтора.У меня уходит на ТО от 3-5000 ,а не от 9-24 .Если у тебя так ,то ты реально богатый таксист))).Поэтому ,я тебя призываю к тому ,чтобы, остстаивать ,защищать честь таксистов,как это пытаюсь делать я ,но при этом постоянно делать оговорку ,что речь идёт о таксистах ,которые горбатятся в экономе именно на арендованных авто.Так как дела ч Комфорте и комфорте + обстоят лучше,хоть и не намного,но все же лучше)

Ответить
Развернуть ветку
Глеб Алейников

Я работаю в комфорте на арендованной Октавии. Про ТО я написал, потому что я собираюсь взять в кредит Оптиму или Камри или Суперб и под рукой лежал листочек где я сравнивал стоимость владения аппаратами. Если не у официалов, то слетишь с гарантии. Далее, кто из таксистов может взять машину сразу из салона, а не в кредит или лизинг, там то же встаёт вопрос где ты обслуживаешься, а это уже не 100000, а три года минимум... Далее, я рад за тебя коллега, что у тебя всё ровно, а в эконома "бедолаги", я считаю что в эконома, что в комфорте на арендованной или на своей пока тухляк. Я допустим отработав год не отложил на первый взнос машины, т.е. не Яндекс, а все агрегаторы, пока заточены не на построение нормального сервиса, а на заработок сию минутный, хотя смешно по ходу Сити, Гетт да и Яндекс то же пока убыточны))) Вот интересно кому нужны такие сервисы, которые не приносят прибыли акционерам, не дают заработать водителям и не предоставляют услуг надлежащего качества пассажирам, основным в этой истории... ))) Наверно они нужны таким как автор данной статьи, которые в " инженеров играют" не понимая как работает такси)))

Ответить
Развернуть ветку
Alexey Lamkinson

Знаешь,сегодня ровно 5 лет ,как я вынужденно ,разумеется,))влился в эту сферу.Блин,да я ещё помню те времена ,когда эконом стоил 200 руб подача и далее 15 руб /минута,а теперь столько стоит комфорт +))).Бывало всякое.Работая на арендованном экономе, я частенько ночевал в тачке.Я сбился со счета того количества раз сколько мы были на грани развода ,имея малолетнюю дочь;до 4 лет мы почти не виделись,так как я уходил пока она спала ,а возвращался ,когда она уже спала.Пару раз были сбои по здоровью ,которые выводили меня из строя в общей сложности на месяц.Ты не поверишь ,но я так и не стал импотентом и не обзавелся геморроем)))И признаюсь ,что меня множество раз спасли мои родные и друзья,всем,что у меня есть я обязан им ,но больше всего я благодарен своей уже 6 летней дочурке,с которой мы большие друзья,если бы не она ,работал бы я себе и дальше логистом без какой-либо цели в жизни)).Глеб,если ты решил брать авто в кредит под такси,если ты действительно решился на это безумие,на которое лично к меня кишка тонка,ибо я , разумеется,не заработал на новый авто и также как и ты ,но много лет назад я сел за стол ,пресполненный отчаяния (надеюсь ,ты просто сел за стол ))и начал прикидывать.Был конец 2015 и я думал как мне взять Киа Рио на мезанике,о чем то большем я даже мечтать не смел.Мне помогли и я взял эту "мечту таксиста" ,тогда ещё в гетте эти тачки шли по комфорту , представляешь?)Прошли 2 года ,а вместе с ними остались позади 200000 км ,сон в автомобиле ,засыпания за рулём ,конфликты с пассажирами и прочая поебень ,которой в экономе всегда в достатке ,ну и ,конечно же МКПП.Потом был новый кредит и новый Сид.Теперь очередной кредит и Оптима,но не новая ,разумеется.Иногда я смотрю на все эту и думаю ,что я не здоров умом)))Но потом я вспоминаю через что я прошел и успокаиваюсь,все сделал правильно.Поэтому ,если ты решился и выбор стоит между оптимой ,камрюхой и уж совсем дорогим супербом,то ,разумеется,мой тебе совет бери оптиму,а обо всем остальном забудь.

Ответить
Развернуть ветку
Глеб Алейников

Нет коллега, я пока не решился. Я думаю, но читая статьи этих умников, закладывается всё больше и больше сомнений. Вот сейчас они явно прибывают комфорт, только не понятно из какой логики... Заказов нет, расценки в комфорте как в эконома, они видно решили оставить только эконом и комфорт+... Это опять же из жадности что провести большую ценовую грань... Но как же люди парки которые купили машины, о чем эти "разработчики" думают. И вот я думаю, что если я возьму машину в кредит, а эти "гении" опять что придумают эдакое, эти сторонники машинного обучения и иит, как обезьяны с гранатой, опасные люди, особенно в Яндексе)))

Ответить
Развернуть ветку
Alexey Lamkinson

Глеб, я так тебе скажу ,что мое бегство с эконома на комфорт и с комфорта на комфорт +,было подобно бегству обосравшейся от страха крысы с тонущего корабля.И что же теперь?Вот я на комфорте +,бля.Рейтинг 5,000,сейчас серебро ,а в августе гребаная платина и что, ты думаешь что я в шоколаде,что вожу только К+?)) Конечно,нет .60-70% это комфорт,но рука на него поднимается ,когда пробку стихают до 3-4 баллов.Ты спросишь ,что я делаю когда пробки от 5 и выше ? Я стою недвижимо с включенным К+ и геттом в надежде ,что по последнему выстрельнет корпоративный комфорт ,который будет по счётчику.Эконом я не врубаю НИКОГДА,даже когда коэффициент х2.Потому что эконом -это определенные люди ,их повадки ,реакции от которых я сбежал 2 года назад и с которыми я не хочу иметь ничего общего ни на секунду)

Ответить
Развернуть ветку
Глеб Алейников

Примерно так же, но я не могу стоять, просто не могу, двигаюсь, гетт сейчас совсем плохой стал, заказов мало, но я не под брендом, считаю что они стоят друг друга и пока не заслужили...
А если честно, сцыкотно опять же брендироваться из за этих чудо оптимизаторов, не известно откуда прилетит новая "гениальная" идея, что за ней... На плюшки их я плавал, вот сейчас сижу пишу, а у меня 768, т.е. можно было бы доказать до золота, сегодня 31-е, да я плевал, они и здесь водителей обманули, не обратил внимания, что перед тем как это ввести они понизили рейтинг... У меня было 4.93, потом резко 4.8 а потом 4.7... Вот я не понимаю, когда они поймут, что они никто, просто приложение в телефоне. Главный конечно пассажир, а потом мы. Это мы делаем добавленную стоимость, это по нам пассажир судит о качестве сервиса и из этого во многом складываются предпочтения пассажира и лояльность... Я просто представляю, что думает пассажир, когда садиться в мою машину и видит мою рожу))) Но потом я вежливо интересуюсь не будет ли мешать ему музыка и включаю не шансон а джаз))) Короче, там где водителей больше, там подача короче, там и пассажир, растеряет Яндекс своими новациями водителей, дальше потеря пассажиров, дальше ...

Ответить
Развернуть ветку
Alexey Lamkinson

На эти уровни забей! Золото открывает точку Б ,но при активности 90 ,кажется!И это так тупо)).Ибо видя точку Б ты по-любому будешь чаще отказываться и ни о каких 90 речи идти не может ,даст Бог 50))У меня в диапазоне 40-80!

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