...

Source file src/google.golang.org/genproto/googleapis/cloud/optimization/v1/alias.go

Documentation: google.golang.org/genproto/googleapis/cloud/optimization/v1

     1  // Copyright 2022 Google LLC
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by aliasgen. DO NOT EDIT.
    16  
    17  // Package optimization aliases all exported identifiers in package
    18  // "cloud.google.com/go/optimization/apiv1/optimizationpb".
    19  //
    20  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb.
    21  // Please read https://github.com/googleapis/google-cloud-go/blob/main/migration.md
    22  // for more details.
    23  package optimization
    24  
    25  import (
    26  	src "cloud.google.com/go/optimization/apiv1/optimizationpb"
    27  	grpc "google.golang.org/grpc"
    28  )
    29  
    30  // Deprecated: Please use consts in: cloud.google.com/go/optimization/apiv1/optimizationpb
    31  const (
    32  	AsyncModelMetadata_CANCELLED                                                                              = src.AsyncModelMetadata_CANCELLED
    33  	AsyncModelMetadata_FAILED                                                                                 = src.AsyncModelMetadata_FAILED
    34  	AsyncModelMetadata_RUNNING                                                                                = src.AsyncModelMetadata_RUNNING
    35  	AsyncModelMetadata_STATE_UNSPECIFIED                                                                      = src.AsyncModelMetadata_STATE_UNSPECIFIED
    36  	AsyncModelMetadata_SUCCEEDED                                                                              = src.AsyncModelMetadata_SUCCEEDED
    37  	DataFormat_DATA_FORMAT_UNSPECIFIED                                                                        = src.DataFormat_DATA_FORMAT_UNSPECIFIED
    38  	DataFormat_JSON                                                                                           = src.DataFormat_JSON
    39  	DataFormat_STRING                                                                                         = src.DataFormat_STRING
    40  	InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_LEVEL_UNSPECIFIED                              = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_LEVEL_UNSPECIFIED
    41  	InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_RELAX_ALL_AFTER_THRESHOLD                      = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_RELAX_ALL_AFTER_THRESHOLD
    42  	InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_RELAX_VISIT_TIMES_AFTER_THRESHOLD              = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_RELAX_VISIT_TIMES_AFTER_THRESHOLD
    43  	InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_RELAX_VISIT_TIMES_AND_SEQUENCE_AFTER_THRESHOLD = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_RELAX_VISIT_TIMES_AND_SEQUENCE_AFTER_THRESHOLD
    44  	OptimizeToursRequest_CONSUME_ALL_AVAILABLE_TIME                                                           = src.OptimizeToursRequest_CONSUME_ALL_AVAILABLE_TIME
    45  	OptimizeToursRequest_DEFAULT_SOLVE                                                                        = src.OptimizeToursRequest_DEFAULT_SOLVE
    46  	OptimizeToursRequest_DETECT_SOME_INFEASIBLE_SHIPMENTS                                                     = src.OptimizeToursRequest_DETECT_SOME_INFEASIBLE_SHIPMENTS
    47  	OptimizeToursRequest_RETURN_FAST                                                                          = src.OptimizeToursRequest_RETURN_FAST
    48  	OptimizeToursRequest_SEARCH_MODE_UNSPECIFIED                                                              = src.OptimizeToursRequest_SEARCH_MODE_UNSPECIFIED
    49  	OptimizeToursRequest_VALIDATE_ONLY                                                                        = src.OptimizeToursRequest_VALIDATE_ONLY
    50  	ShipmentTypeIncompatibility_INCOMPATIBILITY_MODE_UNSPECIFIED                                              = src.ShipmentTypeIncompatibility_INCOMPATIBILITY_MODE_UNSPECIFIED
    51  	ShipmentTypeIncompatibility_NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY                                            = src.ShipmentTypeIncompatibility_NOT_IN_SAME_VEHICLE_SIMULTANEOUSLY
    52  	ShipmentTypeIncompatibility_NOT_PERFORMED_BY_SAME_VEHICLE                                                 = src.ShipmentTypeIncompatibility_NOT_PERFORMED_BY_SAME_VEHICLE
    53  	ShipmentTypeRequirement_IN_SAME_VEHICLE_AT_DELIVERY_TIME                                                  = src.ShipmentTypeRequirement_IN_SAME_VEHICLE_AT_DELIVERY_TIME
    54  	ShipmentTypeRequirement_IN_SAME_VEHICLE_AT_PICKUP_TIME                                                    = src.ShipmentTypeRequirement_IN_SAME_VEHICLE_AT_PICKUP_TIME
    55  	ShipmentTypeRequirement_PERFORMED_BY_SAME_VEHICLE                                                         = src.ShipmentTypeRequirement_PERFORMED_BY_SAME_VEHICLE
    56  	ShipmentTypeRequirement_REQUIREMENT_MODE_UNSPECIFIED                                                      = src.ShipmentTypeRequirement_REQUIREMENT_MODE_UNSPECIFIED
    57  	SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT                                  = src.SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT
    58  	SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT                                  = src.SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DURATION_LIMIT
    59  	SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS                                    = src.SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TIME_WINDOWS
    60  	SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TRAVEL_DURATION_LIMIT                           = src.SkippedShipment_Reason_CANNOT_BE_PERFORMED_WITHIN_VEHICLE_TRAVEL_DURATION_LIMIT
    61  	SkippedShipment_Reason_CODE_UNSPECIFIED                                                                   = src.SkippedShipment_Reason_CODE_UNSPECIFIED
    62  	SkippedShipment_Reason_DEMAND_EXCEEDS_VEHICLE_CAPACITY                                                    = src.SkippedShipment_Reason_DEMAND_EXCEEDS_VEHICLE_CAPACITY
    63  	SkippedShipment_Reason_NO_VEHICLE                                                                         = src.SkippedShipment_Reason_NO_VEHICLE
    64  	SkippedShipment_Reason_VEHICLE_NOT_ALLOWED                                                                = src.SkippedShipment_Reason_VEHICLE_NOT_ALLOWED
    65  	Vehicle_DRIVING                                                                                           = src.Vehicle_DRIVING
    66  	Vehicle_FIRST_IN_FIRST_OUT                                                                                = src.Vehicle_FIRST_IN_FIRST_OUT
    67  	Vehicle_LAST_IN_FIRST_OUT                                                                                 = src.Vehicle_LAST_IN_FIRST_OUT
    68  	Vehicle_TRAVEL_MODE_UNSPECIFIED                                                                           = src.Vehicle_TRAVEL_MODE_UNSPECIFIED
    69  	Vehicle_UNLOADING_POLICY_UNSPECIFIED                                                                      = src.Vehicle_UNLOADING_POLICY_UNSPECIFIED
    70  )
    71  
    72  // Deprecated: Please use vars in: cloud.google.com/go/optimization/apiv1/optimizationpb
    73  var (
    74  	AsyncModelMetadata_State_name                                          = src.AsyncModelMetadata_State_name
    75  	AsyncModelMetadata_State_value                                         = src.AsyncModelMetadata_State_value
    76  	DataFormat_name                                                        = src.DataFormat_name
    77  	DataFormat_value                                                       = src.DataFormat_value
    78  	File_google_cloud_optimization_v1_async_model_proto                    = src.File_google_cloud_optimization_v1_async_model_proto
    79  	File_google_cloud_optimization_v1_fleet_routing_proto                  = src.File_google_cloud_optimization_v1_fleet_routing_proto
    80  	InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_Level_name  = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_Level_name
    81  	InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_Level_value = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_Level_value
    82  	OptimizeToursRequest_SearchMode_name                                   = src.OptimizeToursRequest_SearchMode_name
    83  	OptimizeToursRequest_SearchMode_value                                  = src.OptimizeToursRequest_SearchMode_value
    84  	OptimizeToursRequest_SolvingMode_name                                  = src.OptimizeToursRequest_SolvingMode_name
    85  	OptimizeToursRequest_SolvingMode_value                                 = src.OptimizeToursRequest_SolvingMode_value
    86  	ShipmentTypeIncompatibility_IncompatibilityMode_name                   = src.ShipmentTypeIncompatibility_IncompatibilityMode_name
    87  	ShipmentTypeIncompatibility_IncompatibilityMode_value                  = src.ShipmentTypeIncompatibility_IncompatibilityMode_value
    88  	ShipmentTypeRequirement_RequirementMode_name                           = src.ShipmentTypeRequirement_RequirementMode_name
    89  	ShipmentTypeRequirement_RequirementMode_value                          = src.ShipmentTypeRequirement_RequirementMode_value
    90  	SkippedShipment_Reason_Code_name                                       = src.SkippedShipment_Reason_Code_name
    91  	SkippedShipment_Reason_Code_value                                      = src.SkippedShipment_Reason_Code_value
    92  	Vehicle_TravelMode_name                                                = src.Vehicle_TravelMode_name
    93  	Vehicle_TravelMode_value                                               = src.Vehicle_TravelMode_value
    94  	Vehicle_UnloadingPolicy_name                                           = src.Vehicle_UnloadingPolicy_name
    95  	Vehicle_UnloadingPolicy_value                                          = src.Vehicle_UnloadingPolicy_value
    96  )
    97  
    98  // Aggregated metrics for
    99  // [ShipmentRoute][google.cloud.optimization.v1.ShipmentRoute] (resp. for
   100  // [OptimizeToursResponse][google.cloud.optimization.v1.OptimizeToursResponse]
   101  // over all [Transition][google.cloud.optimization.v1.ShipmentRoute.Transition]
   102  // and/or [Visit][google.cloud.optimization.v1.ShipmentRoute.Visit] (resp. over
   103  // all [ShipmentRoute][google.cloud.optimization.v1.ShipmentRoute]) elements.
   104  //
   105  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   106  type AggregatedMetrics = src.AggregatedMetrics
   107  
   108  // The long running operation metadata for async model related methods.
   109  //
   110  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   111  type AsyncModelMetadata = src.AsyncModelMetadata
   112  
   113  // Possible states of the operation.
   114  //
   115  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   116  type AsyncModelMetadata_State = src.AsyncModelMetadata_State
   117  
   118  // Request to batch optimize tours as an asynchronous operation. Each input
   119  // file should contain one `OptimizeToursRequest`, and each output file will
   120  // contain one `OptimizeToursResponse`. The request contains information to
   121  // read/write and parse the files. All the input and output files should be
   122  // under the same project.
   123  //
   124  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   125  type BatchOptimizeToursRequest = src.BatchOptimizeToursRequest
   126  
   127  // Information for solving one optimization model asynchronously.
   128  //
   129  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   130  type BatchOptimizeToursRequest_AsyncModelConfig = src.BatchOptimizeToursRequest_AsyncModelConfig
   131  
   132  // Response to a `BatchOptimizeToursRequest`. This is returned in the LRO
   133  // Operation after the operation is complete.
   134  //
   135  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   136  type BatchOptimizeToursResponse = src.BatchOptimizeToursResponse
   137  
   138  // Rules to generate time breaks for a vehicle (e.g. lunch breaks). A break is
   139  // a contiguous period of time during which the vehicle remains idle at its
   140  // current position and cannot perform any visit. A break may occur: - during
   141  // the travel between two visits (which includes the time right before or right
   142  // after a visit, but not in the middle of a visit), in which case it extends
   143  // the corresponding transit time between the visits, - or before the vehicle
   144  // start (the vehicle may not start in the middle of a break), in which case it
   145  // does not affect the vehicle start time. - or after the vehicle end (ditto,
   146  // with the vehicle end time).
   147  //
   148  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   149  type BreakRule = src.BreakRule
   150  
   151  // The sequence of breaks (i.e. their number and order) that apply to each
   152  // vehicle must be known beforehand. The repeated `BreakRequest`s define that
   153  // sequence, in the order in which they must occur. Their time windows
   154  // (`earliest_start_time` / `latest_start_time`) may overlap, but they must be
   155  // compatible with the order (this is checked).
   156  //
   157  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   158  type BreakRule_BreakRequest = src.BreakRule_BreakRequest
   159  
   160  // One may further constrain the frequency and duration of the breaks
   161  // specified above, by enforcing a minimum break frequency, such as "There must
   162  // be a break of at least 1 hour every 12 hours". Assuming that this can be
   163  // interpreted as "Within any sliding time window of 12h, there must be at
   164  // least one break of at least one hour", that example would translate to the
   165  // following `FrequencyConstraint`: ``` { min_break_duration { seconds: 3600 }
   166  // # 1 hour. max_inter_break_duration { seconds: 39600 } # 11 hours (12 - 1 =
   167  // 11). } ``` The timing and duration of the breaks in the solution will
   168  // respect all such constraints, in addition to the time windows and minimum
   169  // durations already specified in the `BreakRequest`. A `FrequencyConstraint`
   170  // may in practice apply to non-consecutive breaks. For example, the following
   171  // schedule honors the "1h every 12h" example: ``` 04:00 vehicle start ..
   172  // performing travel and visits .. 09:00 1 hour break 10:00 end of the break ..
   173  // performing travel and visits .. 12:00 20-min lunch break 12:20 end of the
   174  // break .. performing travel and visits .. 21:00 1 hour break 22:00 end of the
   175  // break .. performing travel and visits .. 23:59 vehicle end ```
   176  //
   177  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   178  type BreakRule_FrequencyConstraint = src.BreakRule_FrequencyConstraint
   179  
   180  // Deprecated: Use [Shipment.Load][], [Vehicle.LoadLimit][] and
   181  // [ShipmentRoute.VehicleLoad][] instead. Deprecated: Do not use.
   182  //
   183  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   184  type CapacityQuantity = src.CapacityQuantity
   185  
   186  // Deprecated: Use [Vehicle.LoadLimit.Interval][] instead. Deprecated: Do not
   187  // use.
   188  //
   189  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   190  type CapacityQuantityInterval = src.CapacityQuantityInterval
   191  
   192  // Data formats for input and output files.
   193  //
   194  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   195  type DataFormat = src.DataFormat
   196  
   197  // A limit defining a maximum distance which can be traveled. It can be either
   198  // hard or soft. If a soft limit is defined, both `soft_max_meters` and
   199  // `cost_per_kilometer_above_soft_max` must be defined and be nonnegative.
   200  //
   201  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   202  type DistanceLimit = src.DistanceLimit
   203  
   204  // FleetRoutingClient is the client API for FleetRouting service. For
   205  // semantics around ctx use and closing/ending streaming RPCs, please refer to
   206  // https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
   207  //
   208  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   209  type FleetRoutingClient = src.FleetRoutingClient
   210  
   211  // FleetRoutingServer is the server API for FleetRouting service.
   212  //
   213  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   214  type FleetRoutingServer = src.FleetRoutingServer
   215  
   216  // The Google Cloud Storage location where the output file will be written to.
   217  //
   218  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   219  type GcsDestination = src.GcsDestination
   220  
   221  // The Google Cloud Storage location where the input file will be read from.
   222  //
   223  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   224  type GcsSource = src.GcsSource
   225  
   226  // Solution injected in the request including information about which visits
   227  // must be constrained and how they must be constrained.
   228  //
   229  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   230  type InjectedSolutionConstraint = src.InjectedSolutionConstraint
   231  
   232  // For a group of vehicles, specifies at what threshold(s) constraints on
   233  // visits will be relaxed and to which level. Shipments listed in the
   234  // `skipped_shipment` field are constrained to be skipped; i.e., they cannot be
   235  // performed.
   236  //
   237  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   238  type InjectedSolutionConstraint_ConstraintRelaxation = src.InjectedSolutionConstraint_ConstraintRelaxation
   239  
   240  // If `relaxations` is empty, the start time and sequence of all visits on
   241  // `routes` are fully constrained and no new visits may be inserted or added to
   242  // those routes. Also, a vehicle's start and end time in `routes` is fully
   243  // constrained, unless the vehicle is empty (i.e., has no visits and has
   244  // `used_if_route_is_empty` set to false in the model). `relaxations(i).level`
   245  // specifies the constraint relaxation level applied to a visit #j that
   246  // satisfies: - `route.visits(j).start_time >= relaxations(i).threshold_time`
   247  // AND - `j + 1 >= relaxations(i).threshold_visit_count` Similarly, the vehicle
   248  // start is relaxed to `relaxations(i).level` if it satisfies: -
   249  // `vehicle_start_time >= relaxations(i).threshold_time` AND -
   250  // `relaxations(i).threshold_visit_count == 0` and the vehicle end is relaxed
   251  // to `relaxations(i).level` if it satisfies: - `vehicle_end_time >=
   252  // relaxations(i).threshold_time` AND - `route.visits_size() + 1 >=
   253  // relaxations(i).threshold_visit_count` To apply a relaxation level if a visit
   254  // meets the `threshold_visit_count` OR the `threshold_time` add two
   255  // `relaxations` with the same `level`: one with only `threshold_visit_count`
   256  // set and the other with only `threshold_time` set. If a visit satisfies the
   257  // conditions of multiple `relaxations`, the most relaxed level applies. As a
   258  // result, from the vehicle start through the route visits in order to the
   259  // vehicle end, the relaxation level becomes more relaxed: i.e., the relaxation
   260  // level is non-decreasing as the route progresses. The timing and sequence of
   261  // route visits that do not satisfy the threshold conditions of any
   262  // `relaxations` are fully constrained and no visits may be inserted into these
   263  // sequences. Also, if a vehicle start or end does not satisfy the conditions
   264  // of any relaxation the time is fixed, unless the vehicle is empty.
   265  //
   266  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   267  type InjectedSolutionConstraint_ConstraintRelaxation_Relaxation = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation
   268  
   269  // Expresses the different constraint relaxation levels, which are applied for
   270  // a visit and those that follow when it satifies the threshold conditions. The
   271  // enumeration below is in order of increasing relaxation.
   272  //
   273  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   274  type InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_Level = src.InjectedSolutionConstraint_ConstraintRelaxation_Relaxation_Level
   275  
   276  // The desired input location information.
   277  //
   278  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   279  type InputConfig = src.InputConfig
   280  type InputConfig_GcsSource = src.InputConfig_GcsSource
   281  
   282  // Encapsulates a location (a geographic point, and an optional heading).
   283  //
   284  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   285  type Location = src.Location
   286  
   287  // Request to be given to a tour optimization solver which defines the
   288  // shipment model to solve as well as optimization parameters.
   289  //
   290  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   291  type OptimizeToursRequest = src.OptimizeToursRequest
   292  
   293  // Mode defining the behavior of the search, trading off latency versus
   294  // solution quality. In all modes, the global request deadline is enforced.
   295  //
   296  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   297  type OptimizeToursRequest_SearchMode = src.OptimizeToursRequest_SearchMode
   298  
   299  // Defines how the solver should handle the request. In all modes but
   300  // `VALIDATE_ONLY`, if the request is invalid, you will receive an
   301  // `INVALID_REQUEST` error. See
   302  // [max_validation_errors][google.cloud.optimization.v1.OptimizeToursRequest.max_validation_errors]
   303  // to cap the number of errors returned.
   304  //
   305  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   306  type OptimizeToursRequest_SolvingMode = src.OptimizeToursRequest_SolvingMode
   307  
   308  // Response after solving a tour optimization problem containing the routes
   309  // followed by each vehicle, the shipments which have been skipped and the
   310  // overall cost of the solution.
   311  //
   312  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   313  type OptimizeToursResponse = src.OptimizeToursResponse
   314  
   315  // Overall metrics, aggregated over all routes.
   316  //
   317  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   318  type OptimizeToursResponse_Metrics = src.OptimizeToursResponse_Metrics
   319  
   320  // Describes an error encountered when validating an `OptimizeToursRequest`.
   321  //
   322  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   323  type OptimizeToursValidationError = src.OptimizeToursValidationError
   324  
   325  // Specifies a context for the validation error. A `FieldReference` always
   326  // refers to a given field in this file and follows the same hierarchical
   327  // structure. For example, we may specify element #2 of `start_time_windows` of
   328  // vehicle #5 using: ``` name: "vehicles" index: 5 sub_field { name:
   329  // "end_time_windows" index: 2 } ``` We however omit top-level entities such as
   330  // `OptimizeToursRequest` or `ShipmentModel` to avoid crowding the message.
   331  //
   332  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   333  type OptimizeToursValidationError_FieldReference = src.OptimizeToursValidationError_FieldReference
   334  type OptimizeToursValidationError_FieldReference_Index = src.OptimizeToursValidationError_FieldReference_Index
   335  type OptimizeToursValidationError_FieldReference_Key = src.OptimizeToursValidationError_FieldReference_Key
   336  
   337  // The desired output location.
   338  //
   339  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   340  type OutputConfig = src.OutputConfig
   341  type OutputConfig_GcsDestination = src.OutputConfig_GcsDestination
   342  
   343  // The shipment of a single item, from one of its pickups to one of its
   344  // deliveries. For the shipment to be considered as performed, a unique vehicle
   345  // must visit one of its pickup locations (and decrease its spare capacities
   346  // accordingly), then visit one of its delivery locations later on (and
   347  // therefore re-increase its spare capacities accordingly).
   348  //
   349  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   350  type Shipment = src.Shipment
   351  
   352  // A shipment model contains a set of shipments which must be performed by a
   353  // set of vehicles, while minimizing the overall cost, which is the sum of: -
   354  // the cost of routing the vehicles (sum of cost per total time, cost per
   355  // travel time, and fixed cost over all vehicles). - the unperformed shipment
   356  // penalties. - the cost of the global duration of the shipments
   357  //
   358  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   359  type ShipmentModel = src.ShipmentModel
   360  
   361  // Deprecated: Use top level [BreakRule][] instead. Rules to generate time
   362  // breaks for a vehicle (e.g. lunch breaks). A break is a contiguous period of
   363  // time during which the vehicle remains idle at its current position and
   364  // cannot perform any visit. A break may occur: - during the travel between two
   365  // visits (which includes the time right before or right after a visit, but not
   366  // in the middle of a visit), in which case it extends the corresponding
   367  // transit time between the visits, - or before the vehicle start (the vehicle
   368  // may not start in the middle of a break), in which case it does not affect
   369  // the vehicle start time. - or after the vehicle end (ditto, with the vehicle
   370  // end time). Deprecated: Do not use.
   371  //
   372  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   373  type ShipmentModel_BreakRule = src.ShipmentModel_BreakRule
   374  
   375  // The sequence of breaks (i.e. their number and order) that apply to each
   376  // vehicle must be known beforehand. The repeated `BreakRequest`s define that
   377  // sequence, in the order in which they must occur. Their time windows
   378  // (`earliest_start_time` / `latest_start_time`) may overlap, but they must be
   379  // compatible with the order (this is checked).
   380  //
   381  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   382  type ShipmentModel_BreakRule_BreakRequest = src.ShipmentModel_BreakRule_BreakRequest
   383  
   384  // One may further constrain the frequency and duration of the breaks
   385  // specified above, by enforcing a minimum break frequency, such as "There must
   386  // be a break of at least 1 hour every 12 hours". Assuming that this can be
   387  // interpreted as "Within any sliding time window of 12h, there must be at
   388  // least one break of at least one hour", that example would translate to the
   389  // following `FrequencyConstraint`: ``` { min_break_duration { seconds: 3600 }
   390  // # 1 hour. max_inter_break_duration { seconds: 39600 } # 11 hours (12 - 1 =
   391  // 11). } ``` The timing and duration of the breaks in the solution will
   392  // respect all such constraints, in addition to the time windows and minimum
   393  // durations already specified in the `BreakRequest`. A `FrequencyConstraint`
   394  // may in practice apply to non-consecutive breaks. For example, the following
   395  // schedule honors the "1h every 12h" example: ``` 04:00 vehicle start ..
   396  // performing travel and visits .. 09:00 1 hour break 10:00 end of the break ..
   397  // performing travel and visits .. 12:00 20-min lunch break 12:20 end of the
   398  // break .. performing travel and visits .. 21:00 1 hour break 22:00 end of the
   399  // break .. performing travel and visits .. 23:59 vehicle end ```
   400  //
   401  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   402  type ShipmentModel_BreakRule_FrequencyConstraint = src.ShipmentModel_BreakRule_FrequencyConstraint
   403  
   404  // Specifies a duration and distance matrix from visit and vehicle start
   405  // locations to visit and vehicle end locations.
   406  //
   407  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   408  type ShipmentModel_DurationDistanceMatrix = src.ShipmentModel_DurationDistanceMatrix
   409  
   410  // Specifies a row of the duration and distance matrix.
   411  //
   412  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   413  type ShipmentModel_DurationDistanceMatrix_Row = src.ShipmentModel_DurationDistanceMatrix_Row
   414  
   415  // A precedence rule between two events (each event is the pickup or the
   416  // delivery of a shipment): the "second" event has to start at least
   417  // `offset_duration` after "first" has started. Several precedences can refer
   418  // to the same (or related) events, e.g., "pickup of B happens after delivery
   419  // of A" and "pickup of C happens after pickup of B". Furthermore, precedences
   420  // only apply when both shipments are performed and are otherwise ignored.
   421  //
   422  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   423  type ShipmentModel_PrecedenceRule = src.ShipmentModel_PrecedenceRule
   424  
   425  // A vehicle's route can be decomposed, along the time axis, like this (we
   426  // assume there are n visits): ``` | | | | | T[2], | | | | Transition | Visit
   427  // #0 | | | V[2], | | | | #0 | aka | T[1] | V[1] | ... | V[n-1] | T[n] | | aka
   428  // T[0] | V[0] | | | V[n-2],| | | | | | | | T[n-1] | | | ^ ^ ^ ^ ^ ^ ^ ^
   429  // vehicle V[0].start V[0].end V[1]. V[1]. V[n]. V[n]. vehicle start (arrival)
   430  // (departure) start end start end end ``` Note that we make a difference
   431  // between: - "punctual events", such as the vehicle start and end and each
   432  // visit's start and end (aka arrival and departure). They happen at a given
   433  // second. - "time intervals", such as the visits themselves, and the
   434  // transition between visits. Though time intervals can sometimes have zero
   435  // duration, i.e. start and end at the same second, they often have a positive
   436  // duration. Invariants: - If there are n visits, there are n+1 transitions. -
   437  // A visit is always surrounded by a transition before it (same index) and a
   438  // transition after it (index + 1). - The vehicle start is always followed by
   439  // transition #0. - The vehicle end is always preceded by transition #n.
   440  // Zooming in, here is what happens during a `Transition` and a `Visit`: ```
   441  // ---+-------------------------------------+-----------------------------+-->
   442  // | TRANSITION[i] | VISIT[i] | | | | | * TRAVEL: the vehicle moves from |
   443  // PERFORM the visit: | | VISIT[i-1].departure_location to | | |
   444  // VISIT[i].arrival_location, which | * Spend some time: | | takes a given
   445  // travel duration | the "visit duration". | | and distance | | | | * Load or
   446  // unload | | * BREAKS: the driver may have | some quantities from the | |
   447  // breaks (e.g. lunch break). | vehicle: the "demand". | | | | | * WAIT: the
   448  // driver/vehicle does | | | nothing. This can happen for | | | many reasons,
   449  // for example when | | | the vehicle reaches the next | | | event's
   450  // destination before the | | | start of its time window | | | | | | * DELAY:
   451  // *right before* the next | | | arrival. E.g. the vehicle and/or | | | driver
   452  // spends time unloading. | | | | |
   453  // ---+-------------------------------------+-----------------------------+-->
   454  // ^ ^ ^ V[i-1].end V[i].start V[i].end ``` Lastly, here is how the TRAVEL,
   455  // BREAKS, DELAY and WAIT can be arranged during a transition. - They don't
   456  // overlap. - The DELAY is unique and *must* be a contiguous period of time
   457  // right before the next visit (or vehicle end). Thus, it suffice to know the
   458  // delay duration to know its start and end time. - The BREAKS are contiguous,
   459  // non-overlapping periods of time. The response specifies the start time and
   460  // duration of each break. - TRAVEL and WAIT are "preemptable": they can be
   461  // interrupted several times during this transition. Clients can assume that
   462  // travel happens "as soon as possible" and that "wait" fills the remaining
   463  // time. A (complex) example: ``` TRANSITION[i]
   464  // --++-----+-----------------------------------------------------------++-->
   465  // || | | | | | | || || T | B | T | | B | | D || || r | r | r | W | r | W | e
   466  // || || a | e | a | a | e | a | l || || v | a | v | i | a | i | a || || e | k
   467  // | e | t | k | t | y || || l | | l | | | | || || | | | | | | ||
   468  // --++-----------------------------------------------------------------++-->
   469  // ```
   470  //
   471  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   472  type ShipmentRoute = src.ShipmentRoute
   473  
   474  // Data representing the execution of a break.
   475  //
   476  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   477  type ShipmentRoute_Break = src.ShipmentRoute_Break
   478  
   479  // Deprecated: Use [ShipmentRoute.Transition.delay_duration][] instead. Time
   480  // interval spent on the route resulting from a
   481  // [TransitionAttributes.delay][google.cloud.optimization.v1.TransitionAttributes.delay].
   482  // Deprecated: Do not use.
   483  //
   484  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   485  type ShipmentRoute_Delay = src.ShipmentRoute_Delay
   486  
   487  // The encoded representation of a polyline. More information on polyline
   488  // encoding can be found here:
   489  // https://developers.google.com/maps/documentation/utilities/polylinealgorithm
   490  // https://developers.google.com/maps/documentation/javascript/reference/geometry#encoding.
   491  //
   492  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   493  type ShipmentRoute_EncodedPolyline = src.ShipmentRoute_EncodedPolyline
   494  
   495  // Transition between two events on the route. See the description of
   496  // [ShipmentRoute][google.cloud.optimization.v1.ShipmentRoute]. If the vehicle
   497  // does not have a `start_location` and/or `end_location`, the corresponding
   498  // travel metrics are 0.
   499  //
   500  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   501  type ShipmentRoute_Transition = src.ShipmentRoute_Transition
   502  
   503  // Deprecated: Use [ShipmentRoute.transitions][] instead. Travel between each
   504  // visit, along the route: from the vehicle's `start_location` to the first
   505  // visit's `arrival_location`, then from the first visit's `departure_location`
   506  // to the second visit's `arrival_location`, and so on until the vehicle's
   507  // `end_location`. This accounts only for the actual travel between visits, not
   508  // counting the waiting time, the time spent performing a visit, nor the
   509  // distance covered during a visit. Invariant: `travel_steps_size() ==
   510  // visits_size() + 1`. If the vehicle does not have a start_ and/or
   511  // end_location, the corresponding travel metrics are 0 and/or empty.
   512  // Deprecated: Do not use.
   513  //
   514  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   515  type ShipmentRoute_TravelStep = src.ShipmentRoute_TravelStep
   516  
   517  // Reports the actual load of the vehicle at some point along the route, for a
   518  // given type (see
   519  // [Transition.vehicle_loads][google.cloud.optimization.v1.ShipmentRoute.Transition.vehicle_loads]).
   520  //
   521  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   522  type ShipmentRoute_VehicleLoad = src.ShipmentRoute_VehicleLoad
   523  
   524  // A visit performed during a route. This visit corresponds to a pickup or a
   525  // delivery of a `Shipment`.
   526  //
   527  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   528  type ShipmentRoute_Visit = src.ShipmentRoute_Visit
   529  
   530  // Specifies incompatibilties between shipments depending on their
   531  // shipment_type. The appearance of incompatible shipments on the same route is
   532  // restricted based on the incompatibility mode.
   533  //
   534  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   535  type ShipmentTypeIncompatibility = src.ShipmentTypeIncompatibility
   536  
   537  // Modes defining how the appearance of incompatible shipments are restricted
   538  // on the same route.
   539  //
   540  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   541  type ShipmentTypeIncompatibility_IncompatibilityMode = src.ShipmentTypeIncompatibility_IncompatibilityMode
   542  
   543  // Specifies requirements between shipments based on their shipment_type. The
   544  // specifics of the requirement are defined by the requirement mode.
   545  //
   546  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   547  type ShipmentTypeRequirement = src.ShipmentTypeRequirement
   548  
   549  // Modes defining the appearance of dependent shipments on a route.
   550  //
   551  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   552  type ShipmentTypeRequirement_RequirementMode = src.ShipmentTypeRequirement_RequirementMode
   553  
   554  // When performing a visit, a predefined amount may be added to the vehicle
   555  // load if it's a pickup, or subtracted if it's a delivery. This message
   556  // defines such amount. See
   557  // [load_demands][google.cloud.optimization.v1.Shipment.load_demands].
   558  //
   559  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   560  type Shipment_Load = src.Shipment_Load
   561  
   562  // Request for a visit which can be done by a vehicle: it has a geo-location
   563  // (or two, see below), opening and closing times represented by time windows,
   564  // and a service duration time (time spent by the vehicle once it has arrived
   565  // to pickup or drop off goods).
   566  //
   567  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   568  type Shipment_VisitRequest = src.Shipment_VisitRequest
   569  
   570  // Specifies details of unperformed shipments in a solution. For trivial cases
   571  // and/or if we are able to identify the cause for skipping, we report the
   572  // reason here.
   573  //
   574  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   575  type SkippedShipment = src.SkippedShipment
   576  
   577  // If we can explain why the shipment was skipped, reasons will be listed
   578  // here. If the reason is not the same for all vehicles, `reason` will have
   579  // more than 1 element. A skipped shipment cannot have duplicate reasons, i.e.
   580  // where all fields are the same except for `example_vehicle_index`. Example:
   581  // ``` reasons { code: DEMAND_EXCEEDS_VEHICLE_CAPACITY example_vehicle_index: 1
   582  // example_exceeded_capacity_type: "Apples" } reasons { code:
   583  // DEMAND_EXCEEDS_VEHICLE_CAPACITY example_vehicle_index: 3
   584  // example_exceeded_capacity_type: "Pears" } reasons { code:
   585  // CANNOT_BE_PERFORMED_WITHIN_VEHICLE_DISTANCE_LIMIT example_vehicle_index: 1 }
   586  // ``` The skipped shipment is incompatible with all vehicles. The reasons may
   587  // be different for all vehicles but at least one vehicle's "Apples" capacity
   588  // would be exceeded (including vehicle 1), at least one vehicle's "Pears"
   589  // capacity would be exceeded (including vehicle 3) and at least one vehicle's
   590  // distance limit would be exceeded (including vehicle 1).
   591  //
   592  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   593  type SkippedShipment_Reason = src.SkippedShipment_Reason
   594  
   595  // Code identifying the reason type. The order here is meaningless. In
   596  // particular, it gives no indication of whether a given reason will appear
   597  // before another in the solution, if both apply.
   598  //
   599  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   600  type SkippedShipment_Reason_Code = src.SkippedShipment_Reason_Code
   601  
   602  // Time windows constrain the time of an event, such as the arrival time at a
   603  // visit, or the start and end time of a vehicle. Hard time window bounds,
   604  // `start_time` and `end_time`, enforce the earliest and latest time of the
   605  // event, such that `start_time <= event_time <= end_time`. The soft time
   606  // window lower bound, `soft_start_time`, expresses a preference for the event
   607  // to happen at or after `soft_start_time` by incurring a cost proportional to
   608  // how long before soft_start_time the event occurs. The soft time window upper
   609  // bound, `soft_end_time`, expresses a preference for the event to happen at or
   610  // before `soft_end_time` by incurring a cost proportional to how long after
   611  // `soft_end_time` the event occurs. `start_time`, `end_time`,
   612  // `soft_start_time` and `soft_end_time` should be within the global time
   613  // limits (see
   614  // [ShipmentModel.global_start_time][google.cloud.optimization.v1.ShipmentModel.global_start_time]
   615  // and
   616  // [ShipmentModel.global_end_time][google.cloud.optimization.v1.ShipmentModel.global_end_time])
   617  // and should respect: ``` 0 <= `start_time` <= `soft_start_time` <= `end_time`
   618  // and 0 <= `start_time` <= `soft_end_time` <= `end_time`. ```
   619  //
   620  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   621  type TimeWindow = src.TimeWindow
   622  
   623  // Specifies attributes of transitions between two consecutive visits on a
   624  // route. Several `TransitionAttributes` may apply to the same transition: in
   625  // that case, all extra costs add up and the strictest constraint or limit
   626  // applies (following natural "AND" semantics).
   627  //
   628  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   629  type TransitionAttributes = src.TransitionAttributes
   630  
   631  // UnimplementedFleetRoutingServer can be embedded to have forward compatible
   632  // implementations.
   633  //
   634  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   635  type UnimplementedFleetRoutingServer = src.UnimplementedFleetRoutingServer
   636  
   637  // Models a vehicle in a shipment problem. Solving a shipment problem will
   638  // build a route starting from `start_location` and ending at `end_location`
   639  // for this vehicle. A route is a sequence of visits (see `ShipmentRoute`).
   640  //
   641  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   642  type Vehicle = src.Vehicle
   643  
   644  // A limit defining a maximum duration of the route of a vehicle. It can be
   645  // either hard or soft. When a soft limit field is defined, both the soft max
   646  // threshold and its associated cost must be defined together.
   647  //
   648  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   649  type Vehicle_DurationLimit = src.Vehicle_DurationLimit
   650  
   651  // Defines a load limit applying to a vehicle, e.g. "this truck may only carry
   652  // up to 3500 kg". See
   653  // [load_limits][google.cloud.optimization.v1.Vehicle.load_limits].
   654  //
   655  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   656  type Vehicle_LoadLimit = src.Vehicle_LoadLimit
   657  
   658  // Interval of acceptable load amounts.
   659  //
   660  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   661  type Vehicle_LoadLimit_Interval = src.Vehicle_LoadLimit_Interval
   662  
   663  // Travel modes which can be used by vehicles. These should be a subset of the
   664  // Google Maps Platform Routes Preferred API travel modes, see:
   665  // https://developers.google.com/maps/documentation/routes_preferred/reference/rest/Shared.Types/RouteTravelMode.
   666  //
   667  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   668  type Vehicle_TravelMode = src.Vehicle_TravelMode
   669  
   670  // Policy on how a vehicle can be unloaded. Applies only to shipments having
   671  // both a pickup and a delivery. Other shipments are free to occur anywhere on
   672  // the route independent of `unloading_policy`.
   673  //
   674  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   675  type Vehicle_UnloadingPolicy = src.Vehicle_UnloadingPolicy
   676  
   677  // Encapsulates a waypoint. Waypoints mark arrival and departure locations of
   678  // VisitRequests, and start and end locations of Vehicles.
   679  //
   680  // Deprecated: Please use types in: cloud.google.com/go/optimization/apiv1/optimizationpb
   681  type Waypoint = src.Waypoint
   682  type Waypoint_Location = src.Waypoint_Location
   683  type Waypoint_PlaceId = src.Waypoint_PlaceId
   684  
   685  // Deprecated: Please use funcs in: cloud.google.com/go/optimization/apiv1/optimizationpb
   686  func NewFleetRoutingClient(cc grpc.ClientConnInterface) FleetRoutingClient {
   687  	return src.NewFleetRoutingClient(cc)
   688  }
   689  
   690  // Deprecated: Please use funcs in: cloud.google.com/go/optimization/apiv1/optimizationpb
   691  func RegisterFleetRoutingServer(s *grpc.Server, srv FleetRoutingServer) {
   692  	src.RegisterFleetRoutingServer(s, srv)
   693  }
   694  

View as plain text