Send feedback
Class InjectedSolutionConstraint.ConstraintRelaxation.Relaxation (1.45.0)
Stay organized with collections
Save and categorize content based on your preferences.
Version 1.45.0 keyboard_arrow_down
public static final class InjectedSolutionConstraint . ConstraintRelaxation . Relaxation extends GeneratedMessageV3 implements InjectedSolutionConstraint . ConstraintRelaxation . RelaxationOrBuilder
If relaxations
is empty, the start time and sequence of all visits
on routes
are fully constrained and no new visits may be inserted or
added to those routes. Also, a vehicle's start and end time in
routes
is fully constrained, unless the vehicle is empty (i.e., has no
visits and has used_if_route_is_empty
set to false in the model).
relaxations(i).level
specifies the constraint relaxation level applied
to a visit #j that satisfies:
route.visits(j).start_time >= relaxations(i).threshold_time
AND
j + 1 >= relaxations(i).threshold_visit_count
Similarly, the vehicle start is relaxed to relaxations(i).level
if it
satisfies:
vehicle_start_time >= relaxations(i).threshold_time
AND
relaxations(i).threshold_visit_count == 0
and the vehicle end is relaxed to relaxations(i).level
if it satisfies:
vehicle_end_time >= relaxations(i).threshold_time
AND
route.visits_size() + 1 >= relaxations(i).threshold_visit_count
To apply a relaxation level if a visit meets the threshold_visit_count
OR the threshold_time
add two relaxations
with the same level
:
one with only threshold_visit_count
set and the other with only
threshold_time
set. If a visit satisfies the conditions of multiple
relaxations
, the most relaxed level applies. As a result, from the
vehicle start through the route visits in order to the vehicle end, the
relaxation level becomes more relaxed: i.e., the relaxation level is
non-decreasing as the route progresses.
The timing and sequence of route visits that do not satisfy the
threshold conditions of any relaxations
are fully constrained
and no visits may be inserted into these sequences. Also, if a
vehicle start or end does not satisfy the conditions of any
relaxation the time is fixed, unless the vehicle is empty.
Protobuf type
google.cloud.optimization.v1.InjectedSolutionConstraint.ConstraintRelaxation.Relaxation
Inherited Members
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT)
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT,int)
com.google.protobuf.GeneratedMessageV3.<T>emptyList(java.lang.Class<T>)
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)
Static Fields
LEVEL_FIELD_NUMBER
public static final int LEVEL_FIELD_NUMBER
Field Value
Type
Description
int
THRESHOLD_TIME_FIELD_NUMBER
public static final int THRESHOLD_TIME_FIELD_NUMBER
Field Value
Type
Description
int
THRESHOLD_VISIT_COUNT_FIELD_NUMBER
public static final int THRESHOLD_VISIT_COUNT_FIELD_NUMBER
Field Value
Type
Description
int
Static Methods
getDefaultInstance()
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation getDefaultInstance ()
getDescriptor()
public static final Descriptors . Descriptor getDescriptor ()
newBuilder()
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation . Builder newBuilder ()
newBuilder(InjectedSolutionConstraint.ConstraintRelaxation.Relaxation prototype)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation . Builder newBuilder ( InjectedSolutionConstraint . ConstraintRelaxation . Relaxation prototype )
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseDelimitedFrom ( InputStream input )
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseDelimitedFrom ( InputStream input , ExtensionRegistryLite extensionRegistry )
parseFrom(byte[] data)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( byte [] data )
Parameter
Name
Description
data
byte []
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( byte [] data , ExtensionRegistryLite extensionRegistry )
parseFrom(ByteString data)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( ByteString data )
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( ByteString data , ExtensionRegistryLite extensionRegistry )
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( CodedInputStream input )
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( CodedInputStream input , ExtensionRegistryLite extensionRegistry )
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( InputStream input )
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( InputStream input , ExtensionRegistryLite extensionRegistry )
parseFrom(ByteBuffer data)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( ByteBuffer data )
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static InjectedSolutionConstraint . ConstraintRelaxation . Relaxation parseFrom ( ByteBuffer data , ExtensionRegistryLite extensionRegistry )
parser()
public static Parser<InjectedSolutionConstraint . ConstraintRelaxation . Relaxation> parser ()
Methods
equals(Object obj)
public boolean equals ( Object obj )
Parameter
Name
Description
obj
Object
Overrides
getDefaultInstanceForType()
public InjectedSolutionConstraint . ConstraintRelaxation . Relaxation getDefaultInstanceForType ()
getLevel()
public InjectedSolutionConstraint . ConstraintRelaxation . Relaxation . Level getLevel ()
The constraint relaxation level that applies when the conditions
at or after threshold_time
AND at least threshold_visit_count
are
satisfied.
.google.cloud.optimization.v1.InjectedSolutionConstraint.ConstraintRelaxation.Relaxation.Level level = 1;
getLevelValue()
public int getLevelValue ()
The constraint relaxation level that applies when the conditions
at or after threshold_time
AND at least threshold_visit_count
are
satisfied.
.google.cloud.optimization.v1.InjectedSolutionConstraint.ConstraintRelaxation.Relaxation.Level level = 1;
Returns
Type
Description
int
The enum numeric value on the wire for level.
getParserForType()
public Parser<InjectedSolutionConstraint . ConstraintRelaxation . Relaxation> getParserForType ()
Overrides
getSerializedSize()
public int getSerializedSize ()
Returns
Type
Description
int
Overrides
getThresholdTime()
public Timestamp getThresholdTime ()
The time at or after which the relaxation level
may be applied.
.google.protobuf.Timestamp threshold_time = 2;
Returns
Type
Description
Timestamp
The thresholdTime.
getThresholdTimeOrBuilder()
public TimestampOrBuilder getThresholdTimeOrBuilder ()
The time at or after which the relaxation level
may be applied.
.google.protobuf.Timestamp threshold_time = 2;
getThresholdVisitCount()
public int getThresholdVisitCount ()
The number of visits at or after which the relaxation level
may be
applied. If threshold_visit_count
is 0 (or unset), the level
may be
applied directly at the vehicle start.
If it is route.visits_size() + 1
, the level
may only be applied to
the vehicle end. If it is more than route.visits_size() + 1
,
level
is not applied at all for that route.
int32 threshold_visit_count = 3;
Returns
Type
Description
int
The thresholdVisitCount.
hasThresholdTime()
public boolean hasThresholdTime ()
The time at or after which the relaxation level
may be applied.
.google.protobuf.Timestamp threshold_time = 2;
Returns
Type
Description
boolean
Whether the thresholdTime field is set.
hashCode()
Returns
Type
Description
int
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3 . FieldAccessorTable internalGetFieldAccessorTable ()
Overrides
isInitialized()
public final boolean isInitialized ()
Overrides
newBuilderForType()
public InjectedSolutionConstraint . ConstraintRelaxation . Relaxation . Builder newBuilderForType ()
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected InjectedSolutionConstraint . ConstraintRelaxation . Relaxation . Builder newBuilderForType ( GeneratedMessageV3 . BuilderParent parent )
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance ( GeneratedMessageV3 . UnusedPrivateParameter unused )
Returns
Type
Description
Object
Overrides
toBuilder()
public InjectedSolutionConstraint . ConstraintRelaxation . Relaxation . Builder toBuilder ()
writeTo(CodedOutputStream output)
public void writeTo ( CodedOutputStream output )
Overrides
Send feedback
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License , and code samples are licensed under the Apache 2.0 License . For details, see the Google Developers Site Policies . Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-09-24 UTC.
[{
"type": "thumb-down",
"id": "hardToUnderstand",
"label":"Hard to understand"
},{
"type": "thumb-down",
"id": "incorrectInformationOrSampleCode",
"label":"Incorrect information or sample code"
},{
"type": "thumb-down",
"id": "missingTheInformationSamplesINeed",
"label":"Missing the information/samples I need"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Other"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Easy to understand"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Solved my problem"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Other"
}]
Need to tell us more?
{"lastModified": "Last updated 2024-09-24 UTC."}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2024-09-24 UTC."]]