Маршрутизация крупногабаритных транспортных средств

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

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

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

Ограничения

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

  • Географическая доступность : Маршрутизация для крупногабаритных транспортных средств доступна только на территории 48 смежных штатов США .
  • Рекомендации для водителей и правила безопасности : Водители не должны полагаться исключительно на маршруты, возвращаемые этим API, как на безопасные или законные. Маршруты не гарантируют соответствия транспортному средству, и следование им может подвергнуть водителей опасностям, таким как низкие мосты или дороги, где запрещено движение крупногабаритных транспортных средств.
  • Маршруты, предлагаемые по принципу «наилучших усилий» : В некоторых случаях API не может найти маршрут, полностью соответствующий ограничениям на поездки. Вместо этого он возвращает маршрут, предлагаемый по принципу «наилучших усилий», который все еще может проходить через зоны с ограничениями.
  • Неподдерживаемые функции : Маршрутизация крупногабаритных транспортных средств не поддерживает следующие функции:
    • цены на проезд по платным дорогам для грузовиков
    • Ограничения скорости
    • Маршрутизация радиоактивных опасных материалов
  • Оплата: Google выставляет единые счета за все запросы optimizeTours , независимо от того, задаются ли в запросах параметры маршрутизации для крупных транспортных средств.
  • Маршруты дальнего следования: Маршруты дальнего следования для грузовых автомобилей протяженностью 500 километров и более требуют больше вычислительного времени, чем более короткие маршруты, и могут возвращать данные о маршруте более низкого качества. Для поддержания качества маршрута ограничьте расстояния между грузами, начальными и конечными точками транспортных средств. Если вам требуются маршруты дальнего следования, увеличьте сроки выполнения запросов, чтобы снизить вероятность ошибок DEADLINE_EXCEEDED .

Характеристики

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

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

Свойство Тип Требование Описание
travelMode нить Необходимый Задает режим движения для транспортного средства. Чтобы включить свойства маршрутизации для крупных транспортных средств, установите это значение на TRUCK .
routeModifiers объект Необходимый Содержит настройки, специфичные для маршрута, включая vehicleInfo .

vehicleInfo

Объект vehicleInfo содержит физические характеристики транспортного средства. Определите этот объект в свойстве routeModifiers . Предоставление объекта vehicleInfo необходимо, если вы установили travelMode в TRUCK .

В таблице ниже перечислены свойства, доступные в объекте vehicleInfo :

Свойство Тип Требование Описание
totalHeightMm целое число Необходимый Указывает общую высоту транспортного средства в миллиметрах. Это значение должно быть положительным целым числом.
totalWidthMm целое число Необходимый Указывает общую ширину транспортного средства в миллиметрах. Это значение должно быть положительным целым числом.
totalWeightKg целое число Необходимый Указывает общий вес транспортного средства в килограммах. Это значение должно быть положительным целым числом.
totalLengthMm целое число Необходимый Указывает общую длину транспортного средства в миллиметрах. Это значение должно быть положительным целым числом.
trailerInfo множество Необязательный Содержит массив технических характеристик прицепов, включая свойство lengthMm для указания длины каждого отдельного прицепа в миллиметрах.
totalAxleCount целое число Необходимый Указывает общее количество осей на транспортном средстве. Это значение должно быть целым числом, большим или равным 2.

Примеры

В этом разделе рассматриваются два типа примеров:

  • Пример кода , иллюстрирующий структуру маршрутизации крупногабаритных транспортных средств.
  • Пример запроса , включающего данную функцию.

Пример кода

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

"vehicles": [
  {
    "travelMode": "TRUCK",
    "routeModifiers": {
      "vehicleInfo": {
        "totalHeightMm": TOTAL_HEIGHT_MM,
        "totalWidthMm": TOTAL_WIDTH_MM,
        "totalWeightKg": TOTAL_WEIGHT_KG,
        "totalLengthMm": TOTAL_LENGTH_MM,
        "trailerInfo": [
          {
            "lengthMm": TRAILER_LENGTH_MM
          }
        ],
        "totalAxleCount": TOTAL_AXLE_COUNT
      }
    }
  }
]

Пример запроса

В следующем примере показана структура базового запроса optimizeTours , включающего маршрутизацию для крупногабаритных транспортных средств:

{
  "model": {
    "shipments": [
      {
        "pickups": [
          {
            "arrivalLocation": {
              "latitude": 40.953523,
              "longitude": -72.2277846
            }
          }
        ],
        "deliveries": [
          {
            "arrivalLocation": {
              "latitude": 40.9546673,
              "longitude": -72.2580151
            }
          }
        ]
      }
    ],
    "vehicles": [
      {
        "travelMode": "TRUCK",
        "routeModifiers": {
          "vehicleInfo": {
            "totalHeightMm": 4000,
            "totalWidthMm": 2500,
            "totalWeightKg": 9000,
            "totalLengthMm": 20000,
            "trailerInfo": [
              {
                "lengthMm": 15000
              }
            ],
            "totalAxleCount": 5
          }
        },
        "costPerKilometer": 1.0
      }
    ]
  }
}