2013-05-17 3 views
2

Нужна небольшая помощь от кого-то, кто знает немного о логистике;Как рассчитать ETA без карты


В настоящее время я работаю с приложением, известным как Framework. Приложение не совсем то, с чем я знаком, но независимо от того, могу ли я понять, как это работает. Одна из вкладок, запущенных в приложении, предназначена для ожидаемых заказов (грузовых автомобилей). В пределах этого я могу видеть, где находится текущее местоположение исходящего грузовика, а также его назначение. Я пытаюсь добавить функциональность в приложение, которое позволит мне увидеть приблизительное время прибытия в текущее место назначения + диск обратно в мое местоположение. Это кажется достаточно простым, но я пытаюсь выяснить, как лучше всего это вычислить. Я посмотрел API-интерфейс Google Distance Matrix, но мне не нужно отображать карту приложения, все, что я хочу, это ETA. Я довольно неопытна в этом, поэтому я надеялся, что кто-то может указать мне в правильном направлении. Спасибо, ребята.

Это может быть не самым лучшим форумом для этого вопроса ...

+0

Ну, проблема с Google Distance Matrix заключается в том, что если вы используете ее, вам нужно отобразить карту Google. Если вы попытаетесь использовать только информацию о базе данных, это отклонит вас. Я не слышал о OSRM, но я проверю это, спасибо! –

+0

Я отправил вам полный ответ. Вы также можете проверить сайт [GIS stackexchange] (http://gis.stackexchange.com/). – Deanna

ответ

2

Похоже, Google Distance Matrix требует, чтобы отобразить карту. Альтернативой является открытый источник OSRM project. Натурально это движок C++ для маршрутизации, который выводит маршруты и общую информацию о маршруте, чтобы любой дисплей карты соответствовал вам.

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

0

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

Предположим, что ваша зона доставки составляет 10 миль x 10 миль.

  • Так что это 100 квадратных миль. Мы будем использовать каждую квадратную милю в качестве точки.
  • Сделайте одноразовый расчет того, сколько времени потребуется, чтобы получить от каждого пункт к остальным. Вы можете использовать
  • , используя API-интерфейс Матрицы расстояний Google, так как вы только делаете этот раз.
  • Это даст вам 10 000 записей, каждый из которых указывает точку.

Итак, если ваш грузовик находится в пункте 25 и должен добраться до точки 64, вы выполните поиск и убедитесь, что это займет около 10 минут. плюс привод из точки 64 обратно на склад (точка 10) составляет 8 минут. Тогда вы узнаете, что грузовик должен вернуться примерно через 18 минут.

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

Btw, если ваша область доставки составляет 100 миль x 100 миль, то это будет 100 000 000 точек места, если каждая точка равна 1 квадратной миле. Если это слишком много, то, если вы увеличите свой размер точки до 2 миль x 2 мили (4 квадратных мили), то это около 6 000 000 записей.

Смежные вопросы