Class: Google::Cloud::Optimization::V1::Vehicle::DurationLimit
- Inherits:
-
Object
- Object
- Google::Cloud::Optimization::V1::Vehicle::DurationLimit
- Extended by:
- Protobuf::MessageExts::ClassMethods
- Includes:
- Protobuf::MessageExts
- Defined in:
- proto_docs/google/cloud/optimization/v1/fleet_routing.rb
Overview
A limit defining a maximum duration of the route of a vehicle. It can be either hard or soft.
When a soft limit field is defined, both the soft max threshold and its associated cost must be defined together.
Instance Attribute Summary collapse
-
#cost_per_hour_after_soft_max ⇒ ::Float
Cost per hour incurred if the
soft_max_duration
threshold is violated. -
#cost_per_square_hour_after_quadratic_soft_max ⇒ ::Float
Cost per square hour incurred if the
quadratic_soft_max_duration
threshold is violated. -
#max_duration ⇒ ::Google::Protobuf::Duration
A hard limit constraining the duration to be at most max_duration.
-
#quadratic_soft_max_duration ⇒ ::Google::Protobuf::Duration
A soft limit not enforcing a maximum duration limit, but when violated makes the route incur a cost, quadratic in the duration.
-
#soft_max_duration ⇒ ::Google::Protobuf::Duration
A soft limit not enforcing a maximum duration limit, but when violated makes the route incur a cost.
Instance Attribute Details
#cost_per_hour_after_soft_max ⇒ ::Float
Returns Cost per hour incurred if the soft_max_duration
threshold is violated.
The additional cost is 0 if the duration is under the threshold,
otherwise the cost depends on the duration as follows:
cost_per_hour_after_soft_max * (duration - soft_max_duration)
The cost must be nonnegative.
1478 1479 1480 1481 |
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1478 class DurationLimit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end |
#cost_per_square_hour_after_quadratic_soft_max ⇒ ::Float
Returns Cost per square hour incurred if the
quadratic_soft_max_duration
threshold is violated.
The additional cost is 0 if the duration is under the threshold, otherwise the cost depends on the duration as follows:
cost_per_square_hour_after_quadratic_soft_max *
(duration - quadratic_soft_max_duration)^2
The cost must be nonnegative.
1478 1479 1480 1481 |
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1478 class DurationLimit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end |
#max_duration ⇒ ::Google::Protobuf::Duration
Returns A hard limit constraining the duration to be at most max_duration.
1478 1479 1480 1481 |
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1478 class DurationLimit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end |
#quadratic_soft_max_duration ⇒ ::Google::Protobuf::Duration
Returns A soft limit not enforcing a maximum duration limit, but when violated makes the route incur a cost, quadratic in the duration. This cost adds up to other costs defined in the model, with the same unit.
If defined, quadratic_soft_max_duration
must be nonnegative. If
max_duration
is also defined, quadratic_soft_max_duration
must be
less than max_duration
, and the difference must be no larger than one
day:
max_duration - quadratic_soft_max_duration <= 86400 seconds
.
1478 1479 1480 1481 |
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1478 class DurationLimit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end |
#soft_max_duration ⇒ ::Google::Protobuf::Duration
Returns A soft limit not enforcing a maximum duration limit, but when violated makes the route incur a cost. This cost adds up to other costs defined in the model, with the same unit.
If defined, soft_max_duration
must be nonnegative. If max_duration is
also defined, soft_max_duration
must be less than max_duration.
1478 1479 1480 1481 |
# File 'proto_docs/google/cloud/optimization/v1/fleet_routing.rb', line 1478 class DurationLimit include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end |