Interface FleetRoutingGrpc.AsyncService

All Known Implementing Classes:
FleetRoutingGrpc.FleetRoutingImplBase
Enclosing class:
FleetRoutingGrpc

public static interface FleetRoutingGrpc.AsyncService
 A service for optimizing vehicle tours.
 Validity of certain types of fields:
   * `google.protobuf.Timestamp`
     * Times are in Unix time: seconds since 1970-01-01T00:00:00+00:00.
     * seconds must be in [0, 253402300799],
       i.e. in [1970-01-01T00:00:00+00:00, 9999-12-31T23:59:59+00:00].
     * nanos must be unset or set to 0.
   * `google.protobuf.Duration`
     * seconds must be in [0, 253402300799],
       i.e. in [1970-01-01T00:00:00+00:00, 9999-12-31T23:59:59+00:00].
     * nanos must be unset or set to 0.
   * `google.type.LatLng`
     * latitude must be in [-90.0, 90.0].
     * longitude must be in [-180.0, 180.0].
     * at least one of latitude and longitude must be non-zero.
 
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    batchOptimizeTours(BatchOptimizeToursRequest request, io.grpc.stub.StreamObserver<Operation> responseObserver)
    Optimizes vehicle tours for one or more `OptimizeToursRequest` messages as a batch.
    default void
    optimizeTours(OptimizeToursRequest request, io.grpc.stub.StreamObserver<OptimizeToursResponse> responseObserver)
    Sends an `OptimizeToursRequest` containing a `ShipmentModel` and returns an `OptimizeToursResponse` containing `ShipmentRoute`s, which are a set of routes to be performed by vehicles minimizing the overall cost.
  • Method Details

    • optimizeTours

      default void optimizeTours(OptimizeToursRequest request, io.grpc.stub.StreamObserver<OptimizeToursResponse> responseObserver)
       Sends an `OptimizeToursRequest` containing a `ShipmentModel` and returns an
       `OptimizeToursResponse` containing `ShipmentRoute`s, which are a set of
       routes to be performed by vehicles minimizing the overall cost.
       A `ShipmentModel` model consists mainly of `Shipment`s that need to be
       carried out and `Vehicle`s that can be used to transport the `Shipment`s.
       The `ShipmentRoute`s assign `Shipment`s to `Vehicle`s. More specifically,
       they assign a series of `Visit`s 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 `ShipmentRoute`s to `Vehicle`s that
       minimizes the total cost where cost has many components defined in the
       `ShipmentModel`.
       
    • batchOptimizeTours

      default void batchOptimizeTours(BatchOptimizeToursRequest request, io.grpc.stub.StreamObserver<Operation> responseObserver)
       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/written from/to Cloud Storage in user-specified
       format. Like the `OptimizeTours` method, each `OptimizeToursRequest`
       contains a `ShipmentModel` and returns an `OptimizeToursResponse`
       containing `ShipmentRoute`s, which are a set of routes to be performed by
       vehicles minimizing the overall cost.