public sealed class Vehicle.Types.DurationLimit : IMessage<Vehicle.Types.DurationLimit>, IEquatable<Vehicle.Types.DurationLimit>, IDeepCloneable<Vehicle.Types.DurationLimit>, IBufferMessage, IMessage
Reference documentation and code samples for the Cloud Optimization v1 API class Vehicle.Types.DurationLimit.
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.
Implements
IMessageVehicleTypesDurationLimit, IEquatableVehicleTypesDurationLimit, IDeepCloneableVehicleTypesDurationLimit, IBufferMessage, IMessageNamespace
Google.Cloud.Optimization.V1Assembly
Google.Cloud.Optimization.V1.dll
Constructors
DurationLimit()
public DurationLimit()
DurationLimit(DurationLimit)
public DurationLimit(Vehicle.Types.DurationLimit other)
Parameter | |
---|---|
Name | Description |
other | VehicleTypesDurationLimit |
Properties
CostPerHourAfterSoftMax
public double CostPerHourAfterSoftMax { get; set; }
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.
Property Value | |
---|---|
Type | Description |
double |
CostPerSquareHourAfterQuadraticSoftMax
public double CostPerSquareHourAfterQuadraticSoftMax { get; set; }
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.
Property Value | |
---|---|
Type | Description |
double |
HasCostPerHourAfterSoftMax
public bool HasCostPerHourAfterSoftMax { get; }
Gets whether the "cost_per_hour_after_soft_max" field is set
Property Value | |
---|---|
Type | Description |
bool |
HasCostPerSquareHourAfterQuadraticSoftMax
public bool HasCostPerSquareHourAfterQuadraticSoftMax { get; }
Gets whether the "cost_per_square_hour_after_quadratic_soft_max" field is set
Property Value | |
---|---|
Type | Description |
bool |
MaxDuration
public Duration MaxDuration { get; set; }
A hard limit constraining the duration to be at most max_duration.
Property Value | |
---|---|
Type | Description |
Duration |
QuadraticSoftMaxDuration
public Duration QuadraticSoftMaxDuration { get; set; }
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
Property Value | |
---|---|
Type | Description |
Duration |
SoftMaxDuration
public Duration SoftMaxDuration { get; set; }
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.
Property Value | |
---|---|
Type | Description |
Duration |