Show / Hide Table of Contents

Class RouteOptimization.RouteOptimizationBase

Base class for server-side implementations of RouteOptimization

Inheritance
object
RouteOptimization.RouteOptimizationBase
Inherited Members
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ToString()
Namespace: Google.Maps.RouteOptimization.V1
Assembly: Google.Maps.RouteOptimization.V1.dll
Syntax
[BindServiceMethod(typeof(RouteOptimization), "BindService")]
public abstract class RouteOptimization.RouteOptimizationBase

Methods

BatchOptimizeTours(BatchOptimizeToursRequest, ServerCallContext)

Optimizes vehicle tours for one or more OptimizeToursRequest messages as a batch.

This method is a Long Running Operation (LRO). The inputs for optimization (OptimizeToursRequest messages) and outputs (OptimizeToursResponse messages) are read from and written to Cloud Storage in user-specified format. Like the OptimizeTours method, each OptimizeToursRequest contains a ShipmentModel and returns an OptimizeToursResponse containing ShipmentRoute fields, which are a set of routes to be performed by vehicles minimizing the overall cost.

The user can poll operations.get to check the status of the LRO:

If the LRO done field is false, then at least one request is still being processed. Other requests may have completed successfully and their results are available in Cloud Storage.

If the LRO's done field is true, then all requests have been processed. Any successfully processed requests will have their results available in Cloud Storage. Any requests that failed will not have their results available in Cloud Storage. If the LRO's error field is set, then it contains the error from one of the failed requests.

Declaration
public virtual Task<Operation> BatchOptimizeTours(BatchOptimizeToursRequest request, ServerCallContext context)
Parameters
Type Name Description
BatchOptimizeToursRequest request

The request received from the client.

ServerCallContext context

The context of the server-side call handler being invoked.

Returns
Type Description
Task<Operation>

The response to send back to the client (wrapped by a task).

OptimizeTours(OptimizeToursRequest, ServerCallContext)

Sends an OptimizeToursRequest containing a ShipmentModel and returns an OptimizeToursResponse containing ShipmentRoutes, which are a set of routes to be performed by vehicles minimizing the overall cost.

A ShipmentModel model consists mainly of Shipments that need to be carried out and Vehicles that can be used to transport the Shipments. The ShipmentRoutes assign Shipments to Vehicles. More specifically, they assign a series of Visits to each vehicle, where a Visit corresponds to a VisitRequest, which is a pickup or delivery for a Shipment.

The goal is to provide an assignment of ShipmentRoutes to Vehicles that minimizes the total cost where cost has many components defined in the ShipmentModel.

Declaration
public virtual Task<OptimizeToursResponse> OptimizeTours(OptimizeToursRequest request, ServerCallContext context)
Parameters
Type Name Description
OptimizeToursRequest request

The request received from the client.

ServerCallContext context

The context of the server-side call handler being invoked.

Returns
Type Description
Task<OptimizeToursResponse>

The response to send back to the client (wrapped by a task).

OptimizeToursLongRunning(OptimizeToursRequest, ServerCallContext)

This is a variant of the [OptimizeTours][google.maps.routeoptimization.v1.RouteOptimization.OptimizeTours] method designed for optimizations with large timeout values. It should be preferred over the OptimizeTours method for optimizations that take longer than a few minutes.

The returned [long-running operation][google.longrunning.Operation] (LRO) will have a name of the format <parent>/operations/<operation_id> and can be used to track progress of the computation. The [metadata][google.longrunning.Operation.metadata] field type is [OptimizeToursLongRunningMetadata][google.maps.routeoptimization.v1.OptimizeToursLongRunningMetadata]. The [response][google.longrunning.Operation.response] field type is [OptimizeToursResponse][google.maps.routeoptimization.v1.OptimizeToursResponse], if successful.

Experimental: See https://developers.google.com/maps/tt/route-optimization/experimental/otlr/make-request for more details.

Declaration
public virtual Task<Operation> OptimizeToursLongRunning(OptimizeToursRequest request, ServerCallContext context)
Parameters
Type Name Description
OptimizeToursRequest request

The request received from the client.

ServerCallContext context

The context of the server-side call handler being invoked.

Returns
Type Description
Task<Operation>

The response to send back to the client (wrapped by a task).

OptimizeToursUri(OptimizeToursUriRequest, ServerCallContext)

This is a variant of the [OptimizeToursLongRunning][google.maps.routeoptimization.v1.RouteOptimization.OptimizeToursLongRunning] method designed for optimizations with large timeout values and large input/output sizes.

The client specifies the URI of the OptimizeToursRequest stored in Google Cloud Storage and the server writes the OptimizeToursResponse to a client-specified Google Cloud Storage URI.

This method should be preferred over the OptimizeTours method for optimizations that take longer than a few minutes and input/output sizes that are larger than 8MB, though it can be used for shorter and smaller optimizations as well.

The returned [long-running operation][google.longrunning.Operation] (LRO) will have a name of the format <parent>/operations/<operation_id> and can be used to track progress of the computation. The [metadata][google.longrunning.Operation.metadata] field type is [OptimizeToursLongRunningMetadata][google.maps.routeoptimization.v1.OptimizeToursUriMetadata]. The [response][google.longrunning.Operation.response] field type is [OptimizeToursUriResponse][google.maps.routeoptimization.v1.OptimizeToursUriResponse], if successful.

Experimental: See https://developers.google.com/maps/tt/route-optimization/experimental/otlr/make-request for more details.

Declaration
public virtual Task<Operation> OptimizeToursUri(OptimizeToursUriRequest request, ServerCallContext context)
Parameters
Type Name Description
OptimizeToursUriRequest request

The request received from the client.

ServerCallContext context

The context of the server-side call handler being invoked.

Returns
Type Description
Task<Operation>

The response to send back to the client (wrapped by a task).

In this article
Back to top Generated by DocFX