Class: Google::Cloud::Optimization::V1::OptimizeToursResponse

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/optimization/v1/fleet_routing.rb

Overview

Response after solving a tour optimization problem containing the routes followed by each vehicle, the shipments which have been skipped and the overall cost of the solution.

Defined Under Namespace

Classes: Metrics

Instance Attribute Summary collapse

Instance Attribute Details

#metrics::Google::Cloud::Optimization::V1::OptimizeToursResponse::Metrics

Returns Duration, distance and usage metrics for this solution.

Returns:



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 316

class OptimizeToursResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Overall metrics, aggregated over all routes.
  # @!attribute [rw] aggregated_route_metrics
  #   @return [::Google::Cloud::Optimization::V1::AggregatedMetrics]
  #     Aggregated over the routes. Each metric is the sum (or max, for loads)
  #     over all
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#metrics ShipmentRoute.metrics}
  #     fields of the same name.
  # @!attribute [rw] skipped_mandatory_shipment_count
  #   @return [::Integer]
  #     Number of mandatory shipments skipped.
  # @!attribute [rw] used_vehicle_count
  #   @return [::Integer]
  #     Number of vehicles used. Note: if a vehicle route is empty and
  #     {::Google::Cloud::Optimization::V1::Vehicle#used_if_route_is_empty Vehicle.used_if_route_is_empty}
  #     is true, the vehicle is considered used.
  # @!attribute [rw] earliest_vehicle_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The earliest start time for a used vehicle, computed as the minimum over
  #     all used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_start_time ShipmentRoute.vehicle_start_time}.
  # @!attribute [rw] latest_vehicle_end_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The latest end time for a used vehicle, computed as the maximum over all
  #     used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_end_time ShipmentRoute.vehicle_end_time}.
  # @!attribute [rw] costs
  #   @return [::Google::Protobuf::Map{::String => ::Float}]
  #     Cost of the solution, broken down by cost-related request fields.
  #     The keys are proto paths, relative to the input OptimizeToursRequest,
  #     e.g. "model.shipments.pickups.cost", and the values are the total cost
  #     generated by the corresponding cost field, aggregated over the whole
  #     solution. In other words, costs["model.shipments.pickups.cost"] is the
  #     sum of all pickup costs over the solution. All costs defined in the model
  #     are reported in detail here with the exception of costs related to
  #     TransitionAttributes that are only reported in an aggregated way as of
  #     2022/01.
  # @!attribute [rw] total_cost
  #   @return [::Float]
  #     Total cost of the solution. The sum of all values in the costs map.
  class Metrics
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::Float]
    class CostsEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#request_label::String

Returns Copy of the OptimizeToursRequest.label, if a label was specified in the request.

Returns:



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 316

class OptimizeToursResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Overall metrics, aggregated over all routes.
  # @!attribute [rw] aggregated_route_metrics
  #   @return [::Google::Cloud::Optimization::V1::AggregatedMetrics]
  #     Aggregated over the routes. Each metric is the sum (or max, for loads)
  #     over all
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#metrics ShipmentRoute.metrics}
  #     fields of the same name.
  # @!attribute [rw] skipped_mandatory_shipment_count
  #   @return [::Integer]
  #     Number of mandatory shipments skipped.
  # @!attribute [rw] used_vehicle_count
  #   @return [::Integer]
  #     Number of vehicles used. Note: if a vehicle route is empty and
  #     {::Google::Cloud::Optimization::V1::Vehicle#used_if_route_is_empty Vehicle.used_if_route_is_empty}
  #     is true, the vehicle is considered used.
  # @!attribute [rw] earliest_vehicle_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The earliest start time for a used vehicle, computed as the minimum over
  #     all used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_start_time ShipmentRoute.vehicle_start_time}.
  # @!attribute [rw] latest_vehicle_end_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The latest end time for a used vehicle, computed as the maximum over all
  #     used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_end_time ShipmentRoute.vehicle_end_time}.
  # @!attribute [rw] costs
  #   @return [::Google::Protobuf::Map{::String => ::Float}]
  #     Cost of the solution, broken down by cost-related request fields.
  #     The keys are proto paths, relative to the input OptimizeToursRequest,
  #     e.g. "model.shipments.pickups.cost", and the values are the total cost
  #     generated by the corresponding cost field, aggregated over the whole
  #     solution. In other words, costs["model.shipments.pickups.cost"] is the
  #     sum of all pickup costs over the solution. All costs defined in the model
  #     are reported in detail here with the exception of costs related to
  #     TransitionAttributes that are only reported in an aggregated way as of
  #     2022/01.
  # @!attribute [rw] total_cost
  #   @return [::Float]
  #     Total cost of the solution. The sum of all values in the costs map.
  class Metrics
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::Float]
    class CostsEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#routes::Array<::Google::Cloud::Optimization::V1::ShipmentRoute>

Returns Routes computed for each vehicle; the i-th route corresponds to the i-th vehicle in the model.

Returns:



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 316

class OptimizeToursResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Overall metrics, aggregated over all routes.
  # @!attribute [rw] aggregated_route_metrics
  #   @return [::Google::Cloud::Optimization::V1::AggregatedMetrics]
  #     Aggregated over the routes. Each metric is the sum (or max, for loads)
  #     over all
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#metrics ShipmentRoute.metrics}
  #     fields of the same name.
  # @!attribute [rw] skipped_mandatory_shipment_count
  #   @return [::Integer]
  #     Number of mandatory shipments skipped.
  # @!attribute [rw] used_vehicle_count
  #   @return [::Integer]
  #     Number of vehicles used. Note: if a vehicle route is empty and
  #     {::Google::Cloud::Optimization::V1::Vehicle#used_if_route_is_empty Vehicle.used_if_route_is_empty}
  #     is true, the vehicle is considered used.
  # @!attribute [rw] earliest_vehicle_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The earliest start time for a used vehicle, computed as the minimum over
  #     all used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_start_time ShipmentRoute.vehicle_start_time}.
  # @!attribute [rw] latest_vehicle_end_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The latest end time for a used vehicle, computed as the maximum over all
  #     used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_end_time ShipmentRoute.vehicle_end_time}.
  # @!attribute [rw] costs
  #   @return [::Google::Protobuf::Map{::String => ::Float}]
  #     Cost of the solution, broken down by cost-related request fields.
  #     The keys are proto paths, relative to the input OptimizeToursRequest,
  #     e.g. "model.shipments.pickups.cost", and the values are the total cost
  #     generated by the corresponding cost field, aggregated over the whole
  #     solution. In other words, costs["model.shipments.pickups.cost"] is the
  #     sum of all pickup costs over the solution. All costs defined in the model
  #     are reported in detail here with the exception of costs related to
  #     TransitionAttributes that are only reported in an aggregated way as of
  #     2022/01.
  # @!attribute [rw] total_cost
  #   @return [::Float]
  #     Total cost of the solution. The sum of all values in the costs map.
  class Metrics
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::Float]
    class CostsEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#skipped_shipments::Array<::Google::Cloud::Optimization::V1::SkippedShipment>

Returns The list of all shipments skipped.

Returns:



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 316

class OptimizeToursResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Overall metrics, aggregated over all routes.
  # @!attribute [rw] aggregated_route_metrics
  #   @return [::Google::Cloud::Optimization::V1::AggregatedMetrics]
  #     Aggregated over the routes. Each metric is the sum (or max, for loads)
  #     over all
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#metrics ShipmentRoute.metrics}
  #     fields of the same name.
  # @!attribute [rw] skipped_mandatory_shipment_count
  #   @return [::Integer]
  #     Number of mandatory shipments skipped.
  # @!attribute [rw] used_vehicle_count
  #   @return [::Integer]
  #     Number of vehicles used. Note: if a vehicle route is empty and
  #     {::Google::Cloud::Optimization::V1::Vehicle#used_if_route_is_empty Vehicle.used_if_route_is_empty}
  #     is true, the vehicle is considered used.
  # @!attribute [rw] earliest_vehicle_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The earliest start time for a used vehicle, computed as the minimum over
  #     all used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_start_time ShipmentRoute.vehicle_start_time}.
  # @!attribute [rw] latest_vehicle_end_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The latest end time for a used vehicle, computed as the maximum over all
  #     used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_end_time ShipmentRoute.vehicle_end_time}.
  # @!attribute [rw] costs
  #   @return [::Google::Protobuf::Map{::String => ::Float}]
  #     Cost of the solution, broken down by cost-related request fields.
  #     The keys are proto paths, relative to the input OptimizeToursRequest,
  #     e.g. "model.shipments.pickups.cost", and the values are the total cost
  #     generated by the corresponding cost field, aggregated over the whole
  #     solution. In other words, costs["model.shipments.pickups.cost"] is the
  #     sum of all pickup costs over the solution. All costs defined in the model
  #     are reported in detail here with the exception of costs related to
  #     TransitionAttributes that are only reported in an aggregated way as of
  #     2022/01.
  # @!attribute [rw] total_cost
  #   @return [::Float]
  #     Total cost of the solution. The sum of all values in the costs map.
  class Metrics
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::Float]
    class CostsEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#total_cost::Float

Deprecated.

This field is deprecated and may be removed in the next major version update.

Returns Deprecated: Use Metrics.total_cost instead. Total cost of the solution. This takes into account all costs: costs per per hour and travel hour, fixed vehicle costs, unperformed shipment penalty costs, global duration cost, etc.

Returns:

  • (::Float)

    Deprecated: Use Metrics.total_cost instead. Total cost of the solution. This takes into account all costs: costs per per hour and travel hour, fixed vehicle costs, unperformed shipment penalty costs, global duration cost, etc.



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 316

class OptimizeToursResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Overall metrics, aggregated over all routes.
  # @!attribute [rw] aggregated_route_metrics
  #   @return [::Google::Cloud::Optimization::V1::AggregatedMetrics]
  #     Aggregated over the routes. Each metric is the sum (or max, for loads)
  #     over all
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#metrics ShipmentRoute.metrics}
  #     fields of the same name.
  # @!attribute [rw] skipped_mandatory_shipment_count
  #   @return [::Integer]
  #     Number of mandatory shipments skipped.
  # @!attribute [rw] used_vehicle_count
  #   @return [::Integer]
  #     Number of vehicles used. Note: if a vehicle route is empty and
  #     {::Google::Cloud::Optimization::V1::Vehicle#used_if_route_is_empty Vehicle.used_if_route_is_empty}
  #     is true, the vehicle is considered used.
  # @!attribute [rw] earliest_vehicle_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The earliest start time for a used vehicle, computed as the minimum over
  #     all used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_start_time ShipmentRoute.vehicle_start_time}.
  # @!attribute [rw] latest_vehicle_end_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The latest end time for a used vehicle, computed as the maximum over all
  #     used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_end_time ShipmentRoute.vehicle_end_time}.
  # @!attribute [rw] costs
  #   @return [::Google::Protobuf::Map{::String => ::Float}]
  #     Cost of the solution, broken down by cost-related request fields.
  #     The keys are proto paths, relative to the input OptimizeToursRequest,
  #     e.g. "model.shipments.pickups.cost", and the values are the total cost
  #     generated by the corresponding cost field, aggregated over the whole
  #     solution. In other words, costs["model.shipments.pickups.cost"] is the
  #     sum of all pickup costs over the solution. All costs defined in the model
  #     are reported in detail here with the exception of costs related to
  #     TransitionAttributes that are only reported in an aggregated way as of
  #     2022/01.
  # @!attribute [rw] total_cost
  #   @return [::Float]
  #     Total cost of the solution. The sum of all values in the costs map.
  class Metrics
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::Float]
    class CostsEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end

#validation_errors::Array<::Google::Cloud::Optimization::V1::OptimizeToursValidationError>

Returns List of all the validation errors that we were able to detect independently. See the "MULTIPLE ERRORS" explanation for the OptimizeToursValidationError message.

Returns:



316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 316

class OptimizeToursResponse
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Overall metrics, aggregated over all routes.
  # @!attribute [rw] aggregated_route_metrics
  #   @return [::Google::Cloud::Optimization::V1::AggregatedMetrics]
  #     Aggregated over the routes. Each metric is the sum (or max, for loads)
  #     over all
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#metrics ShipmentRoute.metrics}
  #     fields of the same name.
  # @!attribute [rw] skipped_mandatory_shipment_count
  #   @return [::Integer]
  #     Number of mandatory shipments skipped.
  # @!attribute [rw] used_vehicle_count
  #   @return [::Integer]
  #     Number of vehicles used. Note: if a vehicle route is empty and
  #     {::Google::Cloud::Optimization::V1::Vehicle#used_if_route_is_empty Vehicle.used_if_route_is_empty}
  #     is true, the vehicle is considered used.
  # @!attribute [rw] earliest_vehicle_start_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The earliest start time for a used vehicle, computed as the minimum over
  #     all used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_start_time ShipmentRoute.vehicle_start_time}.
  # @!attribute [rw] latest_vehicle_end_time
  #   @return [::Google::Protobuf::Timestamp]
  #     The latest end time for a used vehicle, computed as the maximum over all
  #     used vehicles of
  #     {::Google::Cloud::Optimization::V1::ShipmentRoute#vehicle_end_time ShipmentRoute.vehicle_end_time}.
  # @!attribute [rw] costs
  #   @return [::Google::Protobuf::Map{::String => ::Float}]
  #     Cost of the solution, broken down by cost-related request fields.
  #     The keys are proto paths, relative to the input OptimizeToursRequest,
  #     e.g. "model.shipments.pickups.cost", and the values are the total cost
  #     generated by the corresponding cost field, aggregated over the whole
  #     solution. In other words, costs["model.shipments.pickups.cost"] is the
  #     sum of all pickup costs over the solution. All costs defined in the model
  #     are reported in detail here with the exception of costs related to
  #     TransitionAttributes that are only reported in an aggregated way as of
  #     2022/01.
  # @!attribute [rw] total_cost
  #   @return [::Float]
  #     Total cost of the solution. The sum of all values in the costs map.
  class Metrics
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods

    # @!attribute [rw] key
    #   @return [::String]
    # @!attribute [rw] value
    #   @return [::Float]
    class CostsEntry
      include ::Google::Protobuf::MessageExts
      extend ::Google::Protobuf::MessageExts::ClassMethods
    end
  end
end