Sie müssen an Abhol- und Lieferorten nicht umdrehen.
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Standardmäßig können Fahrzeuge aus jeder Richtung an einem Abhol- oder Lieferort ankommen und in jede Richtung wieder abfahren. In einigen Fällen wird das Fahrzeug dadurch gezwungen, am Zielort zu wenden, was aufgrund der Fahrzeuggröße, der Verkehrszeichen am Ort oder der üblichen Verkehrsbedingungen schwierig oder unmöglich sein kann.
Damit Fahrzeuge zwischen Ankunft und Abfahrt an einem bestimmten Abhol- oder Lieferort nicht die Richtung ändern, können Sie avoid_u_turns für diesen Ort auf „true“ setzen. Bei dieser Einstellung kommt das Fahrzeug mit derselben Fahrtrichtung am Zielort an und fährt wieder ab. So wird eine Kehrtwende vermieden. Bei zweispurigen Straßen werden beide Richtungen berücksichtigt und eine davon im Rahmen der Routenoptimierung ausgewählt.
Sie können side_of_road auch auf „true“ setzen, um eine Route zu erhalten, bei der das Fahrzeug auf der Straßenseite ankommt und abfährt, die dem Wegpunkt am nächsten ist. In diesem Fall ändert das Fahrzeug auch nicht den Kurs zwischen Ankunft und Abfahrt. Sie können sowohl side_of_road als auch avoid_u_turns auf „true“ setzen, um dasselbe Ergebnis zu erzielen. Weitere Informationen finden Sie unter Interaktion mit anderen Funktionen.
In der Praxis sollte avoid_u_turns verwendet werden, wenn es sicher ist, die Straße zu überqueren, um zum Wegpunkt zu gelangen. Verwenden Sie side_of_road, wenn das Überqueren nicht empfohlen wird oder nicht möglich ist.
Beispiel: OptimizeTours-Anfrage mit avoid_u_turns stellen
OptimizeTours-Anfragen können entweder mit REST oder gRPC gestellt werden.
Ersetzen Sie vor dem Senden einer Anfrage die folgenden Parameter durch Werte, die für Ihre Umgebung geeignet sind:
Sobald die Anfrage abgeschlossen ist, erhalten Sie eine Antwort.
Interaktion mit anderen Funktionen
avoid_u_turns kann zusammen mit side_of_road = true verwendet werden. In diesem Fall werden Wendemanöver vermieden, aber der Solver wählt eine Route aus, bei der sich das Fahrzeug auf derselben Straßenseite wie der Wegpunkt befindet. Das ist ähnlich wie beim Festlegen von side_of_road = true allein.
Wenn avoid_u_turns = true für eine bestimmte Besuchs-Anfrage, dann hat ShipmentRoute.Visit in der entsprechenden Antwort das Feld injected_solution_location_token festgelegt. Die genaue Bedeutung des Werts ist ein Implementierungsdetail, aber er enthält Informationen über die Straßenseite, die vom Solver ausgewählt wurde.
Wenn Sie ein ShipmentRoute.Visit als Teil der Eingabeanfrage verwenden und dieses ShipmentRoute.Visit einem VisitRequest entspricht, in dem avoid_u_turns = true, muss ShipmentRoute.Visit ein injected_solution_location_token enthalten, das zuvor vom Solver zurückgegeben wurde.
Beschränkungen
Die Funktion zur Vermeidung von U-Turns wird nach dem Best-Effort-Prinzip umgesetzt. In bestimmten Situationen kann die Route weiterhin Wendemanöver enthalten:
avoid_u_turns funktioniert nur mit Fortbewegungsmitteln, die side_of_road unterstützen.
Insbesondere wird sie nicht für den Fortbewegungsmittelmodus WALKING unterstützt.
avoid_u_turns kann nicht für Abholungen und Lieferungen verwendet werden, bei denen Ankunft und Abfahrt nicht am selben Ort erfolgen.
Wenn eine Abholung oder Lieferung in einer Sackgasse erfolgt, ist es erforderlich, zu wenden, um die Straße zu verlassen.
Ziel dieser Funktion ist es, Wendemanöver an Abhol- und Lieferorten zu vermeiden.
Wenden zwischen Wegpunkten wird nicht vermieden.
Sehr scharfe Abbiegungen auf eine andere Straße gelten nicht als Wendemanöver und werden in der Regel nicht vermieden.
Während der Entwicklung dieser Funktion gelten zusätzliche Einschränkungen. Wir gehen davon aus, dass sie im Laufe der Weiterentwicklung der Funktion aufgehoben werden.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-04 (UTC)."],[[["\u003cp\u003eVehicles typically arrive and depart from locations in any direction, potentially requiring u-turns.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eavoid_u_turns\u003c/code\u003e setting prevents vehicles from changing direction at a pickup or delivery location, ensuring arrival and departure with the same heading.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eside_of_road\u003c/code\u003e setting ensures vehicles arrive and leave on the side of the road closest to the waypoint, also avoiding changes in heading.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eavoid_u_turns\u003c/code\u003e and \u003ccode\u003eside_of_road\u003c/code\u003e can be used together to prevent u-turns while also maintaining the vehicle's position on the correct side of the road.\u003c/p\u003e\n"],["\u003cp\u003eU-turn avoidance is not supported in all travel modes, such as \u003ccode\u003eWALKING\u003c/code\u003e mode, and is also not supported when the arrival and departure locations for a delivery or pickup differ.\u003c/p\u003e\n"]]],[],null,["\u003cbr /\u003e\n\n| This product or feature is Experimental (pre-GA). Pre-GA products and features might have limited support, and changes to pre-GA products and features might not be compatible with other pre-GA versions. Pre-GA Offerings are covered by the [Google\n| Maps Platform Service Specific Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms). For more information, see the [launch stage descriptions](/maps/launch-stages).\n\n\u003cbr /\u003e\n\nBy default, vehicles can arrive at a pickup or a delivery location from any\ndirection, and then leave in any direction. In some cases, this forces\nthe vehicle to make a u-turn at the visit location, which may be difficult or\nimpossible because of vehicle size, traffic signs at the location, or usual\ntraffic conditions.\n\nTo prevent vehicles from changing direction between the arrival and departure\nfor a given pickup or delivery location, you can set [`avoid_u_turns`](/maps/tt/route-optimization/experimental/u-turn-avoidance/reference/rest/v1/ShipmentModel#VisitRequest.FIELDS.avoid_u_turns) to\ntrue for this location. Under this setting, the vehicle will arrive and leave\nthe location with the same heading, thus avoiding the u-turn. On two-way roads\nthe solver will consider both directions and choose one as part of the route\noptimization.\n\nYou can also set [`side_of_road`](/maps/tt/route-optimization/experimental/u-turn-avoidance/reference/rest/v1/projects/optimizeTours#google.maps.routeoptimization.v1.Waypoint.FIELDS.bool.google.maps.routeoptimization.v1.Waypoint.side_of_road) to true to obtain a route where the vehicle\narrives and leaves on the side of the road closest to the waypoint. In this\ncase, the vehicle also does not change heading between the arrival and the\ndeparture. It is possible to set both `side_of_road` and `avoid_u_turns` to true\nto achieve the same result. For details, see [Interaction with other\nfeatures](#interaction_with_other_features).\n\nIn practice, `avoid_u_turns` should be used when it is safe to cross the road to\nget to the waypoint. Use `side_of_road` when crossing is discouraged or not\npossible.\n\nExample: Make an `OptimizeTours` request with `avoid_u_turns`\n\n`OptimizeTours` requests can be made using either [REST](/maps/tt/route-optimization/experimental/u-turn-avoidance/reference/rest/v1/projects/optimizeTours) or [gRPC](/maps/tt/route-optimization/experimental/u-turn-avoidance/reference/rpc/google.maps.routeoptimization.v1#routeoptimization).\n\nBefore making a request, replace the following parameters with values\nappropriate for your environment:\n\n- Ensure you have [Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc) configured as described in [Use OAuth](/maps/documentation/route-optimization/oauth-token).\n- Set \u003cvar label=\"project_number\" translate=\"no\"\u003ePROJECT_NUMBER_OR_ID\u003c/var\u003e to your Cloud\n project number or ID.\n\n The following command sends an `OptimizeTours` request to the Route\n Optimization API and receives a response synchronously. \n\n ```scdoc\n curl -X POST 'https://routeoptimization.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID:optimizeTours' \\\n -H \"Content-Type: application/json\" \\\n -H \"Authorization: Bearer $(gcloud auth application-default print-access-token)\" \\\n --data @- \u003c\u003cEOM\n {\n \"model\": {\n \"shipments\": [\n {\n \"pickups\": [\n {\n \"arrivalLocation\": {\n \"latitude\": 37.42506261000996,\n \"longitude\": -122.09535511930135\n },\n \"avoidUTurns\": true\n }\n ],\n \"deliveries\": [\n {\n \"arrivalLocation\": {\n \"latitude\": 37.42421503206021,\n \"longitude\": -122.09526063135228\n },\n \"avoidUTurns\": true\n }\n ]\n }\n ],\n \"vehicles\": [\n {\n \"travelMode\": \"DRIVING\",\n \"costPerKilometer\": 1.0\n }\n ],\n }\n }\n EOM\n ```\n | **Note:** this example uses the `--data @-` to read a request from standard input. Use `--data @`\u003cvar label=\"curl_filename\" translate=\"no\"\u003eFilename\u003c/var\u003e to read from a file.\n\nOnce the request completes, you'll receive a response message.\n\nInteraction with other features\n\n- `avoid_u_turns` can be used together with `side_of_road = true`. In this case, u-turns are avoided, but the solver selects a route that the vehicle is on the same side of the road as the waypoint, similar to setting `side_of_road = true` alone.\n- When `avoid_u_turns = true` for a certain visit request, then the `ShipmentRoute.Visit` in the corresponding response has the field `injected_solution_location_token` set. The precise meaning of its value is an implementation detail, but it encodes the information about the side of the road picked by the solver.\n- When you use a `ShipmentRoute.Visit` as part of the input request, if that `ShipmentRoute.Visit` corresponds to a `VisitRequest` in which `avoid_u_turns = true`, then `ShipmentRoute.Visit` must contain an `injected_solution_location_token` previously returned by the solver.\n\nLimitations\n\nU-turn avoidance is best effort. In certain situations, the route may still\ncontain u-turns:\n\n- `avoid_u_turns` works only with travel modes that support [`side_of_road`](/maps/tt/route-optimization/experimental/u-turn-avoidance/reference/rest/v1/projects/optimizeTours#google.maps.routeoptimization.v1.Waypoint.FIELDS.bool.google.maps.routeoptimization.v1.Waypoint.side_of_road). Specifically, it is not supported for the `WALKING` travel mode.\n- `avoid_u_turns` can't be used for pickups and deliveries where the arrival and departure are not the same.\n- When a pickup or a delivery is on a dead-end road, it is necessary to make a u-turn to leave the road.\n- The aim of this feature is avoiding u-turns at pickup and delivery locations. U-turns between waypoints are not avoided.\n- Very sharp turns to a different road are not considered u-turns, and they will generally not be avoided.\n\nThere are additional limitations while this feature is under development. We\nexpect them to be lifted as the feature evolves.\n\n- `avoid_u_turns` can't be used together with [`interpret_injected_solutions_using_labels`](/maps/tt/route-optimization/experimental/u-turn-avoidance/reference/rest/v1/projects/optimizeTours#google.maps.routeoptimization.v1.OptimizeToursRequest.FIELDS.bool.google.maps.routeoptimization.v1.OptimizeToursRequest.interpret_injected_solutions_using_labels)."]]