DSINSIGHTS Telegram 74
🚙 Вычисляем расчетное время прибытия Uber

На собесах по ML System Design могут предложить построить сервис оценки времени поездки Uber, от момента до его вызова до момента прибытия. Здесь нам пригодится теория графов.

1️⃣ Для начала разбиваем расчетное время на 4 этапа
- Eyeball. Старт: когда водитель вводит пункт назначения в приложении.
- Dispatch. Найти машину и забрать пассажира в кратчайшие сроки ожидания
- Pickup. Забрать пассажира: найти время, необходимое для того, чтобы забрать пассажира.
- On-trip. Время поездки: своевременно предоставлять обновления в режиме реального времени, чтобы добраться до места назначения.

2️⃣ Далее нам нужен алгоритм маршрутизации. Для этогопредставляем карту города в виде графа, где каждый перекресток представляем, как узел. Поскольку в городе перекрестков очень много, то разделим весь граф на партиции и будем строить маршрут внутри одной партиции. При этом свяжем партиции теми узлами, которые лежат на ее контуре. Чтобы построить оптимальный маршрут воспользуемся алгоритмом Дейкстры.

3️⃣ После того как маршрут построен, нам нужно обогатить информацию о нем данными о дорожном движении. Для этого используем скор загруженности трафика (можем брать скоры исторический и онлайн) в качестве весов между ребрами.

4️⃣ И наконец, для борьбы с неточностями в сигналах GPS в городе делаем сопоставлениые карты с GPS с реальным сегментом дороги. Для этой задачи можно применить фильтр Калмана, где мы с определенной периодичностью делаем предположение о нашей позиции и сверяем его с реальной дорогой.

source: uproger

#base
🔥3👍21



tgoop.com/dsinsights/74
Create:
Last Update:

🚙 Вычисляем расчетное время прибытия Uber

На собесах по ML System Design могут предложить построить сервис оценки времени поездки Uber, от момента до его вызова до момента прибытия. Здесь нам пригодится теория графов.

1️⃣ Для начала разбиваем расчетное время на 4 этапа
- Eyeball. Старт: когда водитель вводит пункт назначения в приложении.
- Dispatch. Найти машину и забрать пассажира в кратчайшие сроки ожидания
- Pickup. Забрать пассажира: найти время, необходимое для того, чтобы забрать пассажира.
- On-trip. Время поездки: своевременно предоставлять обновления в режиме реального времени, чтобы добраться до места назначения.

2️⃣ Далее нам нужен алгоритм маршрутизации. Для этогопредставляем карту города в виде графа, где каждый перекресток представляем, как узел. Поскольку в городе перекрестков очень много, то разделим весь граф на партиции и будем строить маршрут внутри одной партиции. При этом свяжем партиции теми узлами, которые лежат на ее контуре. Чтобы построить оптимальный маршрут воспользуемся алгоритмом Дейкстры.

3️⃣ После того как маршрут построен, нам нужно обогатить информацию о нем данными о дорожном движении. Для этого используем скор загруженности трафика (можем брать скоры исторический и онлайн) в качестве весов между ребрами.

4️⃣ И наконец, для борьбы с неточностями в сигналах GPS в городе делаем сопоставлениые карты с GPS с реальным сегментом дороги. Для этой задачи можно применить фильтр Калмана, где мы с определенной периодичностью делаем предположение о нашей позиции и сверяем его с реальной дорогой.

source: uproger

#base

BY ML Advertising




Share with your friend now:
tgoop.com/dsinsights/74

View MORE
Open in Telegram


Telegram News

Date: |

How to Create a Private or Public Channel on Telegram? How to Create a Private or Public Channel on Telegram? How to create a business channel on Telegram? (Tutorial) Your posting frequency depends on the topic of your channel. If you have a news channel, it’s OK to publish new content every day (or even every hour). For other industries, stick with 2-3 large posts a week. Don’t publish new content at nighttime. Since not all users disable notifications for the night, you risk inadvertently disturbing them.
from us


Telegram ML Advertising
FROM American