Enum SatParameters.SearchBranching
- All Implemented Interfaces:
com.google.protobuf.Internal.EnumLite
,com.google.protobuf.ProtocolMessageEnum
,Serializable
,Comparable<SatParameters.SearchBranching>
,java.lang.constant.Constable
- Enclosing class:
SatParameters
public static enum SatParameters.SearchBranching
extends Enum<SatParameters.SearchBranching>
implements com.google.protobuf.ProtocolMessageEnum
The search branching will be used to decide how to branch on unfixed nodes.Protobuf enum
operations_research.sat.SatParameters.SearchBranching
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>>
-
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionTry to fix all literals using the underlying SAT solver's heuristics, then generate and fix literals until integer variables are fixed.If used then all decisions taken by the solver are made using a fixed order as specified in the API or in the CpModelProto search_strategy field.Mainly used internally.If used, the solver will use heuristics from the LP relaxation.Similar to FIXED_SEARCH, but differ in how the variable not listed into the fixed search heuristics are branched on.Simple portfolio search used by LNS workers.Mainly exposed here for testing.If used, the solver uses the pseudo costs for branching.Randomized search. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Try to fix all literals using the underlying SAT solver's heuristics, then generate and fix literals until integer variables are fixed.static final int
If used then all decisions taken by the solver are made using a fixed order as specified in the API or in the CpModelProto search_strategy field.static final int
Mainly used internally.static final int
If used, the solver will use heuristics from the LP relaxation.static final int
Similar to FIXED_SEARCH, but differ in how the variable not listed into the fixed search heuristics are branched on.static final int
Simple portfolio search used by LNS workers.static final int
Mainly exposed here for testing.static final int
If used, the solver uses the pseudo costs for branching.static final int
Randomized search. -
Method Summary
Modifier and TypeMethodDescriptionforNumber
(int value) static com.google.protobuf.Descriptors.EnumDescriptor
final com.google.protobuf.Descriptors.EnumDescriptor
final int
final com.google.protobuf.Descriptors.EnumValueDescriptor
static com.google.protobuf.Internal.EnumLiteMap
<SatParameters.SearchBranching> valueOf
(int value) Deprecated.valueOf
(com.google.protobuf.Descriptors.EnumValueDescriptor desc) Returns the enum constant of this type with the specified name.Returns the enum constant of this type with the specified name.static SatParameters.SearchBranching[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
Enum Constant Details
-
AUTOMATIC_SEARCH
Try to fix all literals using the underlying SAT solver's heuristics, then generate and fix literals until integer variables are fixed. New literals on integer variables are generated using the fixed search specified by the user or our default one.
AUTOMATIC_SEARCH = 0;
-
FIXED_SEARCH
If used then all decisions taken by the solver are made using a fixed order as specified in the API or in the CpModelProto search_strategy field.
FIXED_SEARCH = 1;
-
PORTFOLIO_SEARCH
Simple portfolio search used by LNS workers.
PORTFOLIO_SEARCH = 2;
-
LP_SEARCH
If used, the solver will use heuristics from the LP relaxation. This exploit the reduced costs of the variables in the relaxation.
LP_SEARCH = 3;
-
PSEUDO_COST_SEARCH
If used, the solver uses the pseudo costs for branching. Pseudo costs are computed using the historical change in objective bounds when some decision are taken. Note that this works whether we use an LP or not.
PSEUDO_COST_SEARCH = 4;
-
PORTFOLIO_WITH_QUICK_RESTART_SEARCH
Mainly exposed here for testing. This quickly tries a lot of randomized heuristics with a low conflict limit. It usually provides a good first solution.
PORTFOLIO_WITH_QUICK_RESTART_SEARCH = 5;
-
HINT_SEARCH
Mainly used internally. This is like FIXED_SEARCH, except we follow the solution_hint field of the CpModelProto rather than using the information provided in the search_strategy.
HINT_SEARCH = 6;
-
PARTIAL_FIXED_SEARCH
Similar to FIXED_SEARCH, but differ in how the variable not listed into the fixed search heuristics are branched on. This will always start the search tree according to the specified fixed search strategy, but will complete it using the default automatic search.
PARTIAL_FIXED_SEARCH = 7;
-
RANDOMIZED_SEARCH
Randomized search. Used to increase entropy in the search.
RANDOMIZED_SEARCH = 8;
-
-
Field Details
-
AUTOMATIC_SEARCH_VALUE
public static final int AUTOMATIC_SEARCH_VALUETry to fix all literals using the underlying SAT solver's heuristics, then generate and fix literals until integer variables are fixed. New literals on integer variables are generated using the fixed search specified by the user or our default one.
AUTOMATIC_SEARCH = 0;
- See Also:
-
FIXED_SEARCH_VALUE
public static final int FIXED_SEARCH_VALUEIf used then all decisions taken by the solver are made using a fixed order as specified in the API or in the CpModelProto search_strategy field.
FIXED_SEARCH = 1;
- See Also:
-
PORTFOLIO_SEARCH_VALUE
public static final int PORTFOLIO_SEARCH_VALUESimple portfolio search used by LNS workers.
PORTFOLIO_SEARCH = 2;
- See Also:
-
LP_SEARCH_VALUE
public static final int LP_SEARCH_VALUEIf used, the solver will use heuristics from the LP relaxation. This exploit the reduced costs of the variables in the relaxation.
LP_SEARCH = 3;
- See Also:
-
PSEUDO_COST_SEARCH_VALUE
public static final int PSEUDO_COST_SEARCH_VALUEIf used, the solver uses the pseudo costs for branching. Pseudo costs are computed using the historical change in objective bounds when some decision are taken. Note that this works whether we use an LP or not.
PSEUDO_COST_SEARCH = 4;
- See Also:
-
PORTFOLIO_WITH_QUICK_RESTART_SEARCH_VALUE
public static final int PORTFOLIO_WITH_QUICK_RESTART_SEARCH_VALUEMainly exposed here for testing. This quickly tries a lot of randomized heuristics with a low conflict limit. It usually provides a good first solution.
PORTFOLIO_WITH_QUICK_RESTART_SEARCH = 5;
- See Also:
-
HINT_SEARCH_VALUE
public static final int HINT_SEARCH_VALUEMainly used internally. This is like FIXED_SEARCH, except we follow the solution_hint field of the CpModelProto rather than using the information provided in the search_strategy.
HINT_SEARCH = 6;
- See Also:
-
PARTIAL_FIXED_SEARCH_VALUE
public static final int PARTIAL_FIXED_SEARCH_VALUESimilar to FIXED_SEARCH, but differ in how the variable not listed into the fixed search heuristics are branched on. This will always start the search tree according to the specified fixed search strategy, but will complete it using the default automatic search.
PARTIAL_FIXED_SEARCH = 7;
- See Also:
-
RANDOMIZED_SEARCH_VALUE
public static final int RANDOMIZED_SEARCH_VALUERandomized search. Used to increase entropy in the search.
RANDOMIZED_SEARCH = 8;
- See Also:
-
-
Method Details
-
values
Returns an array containing the constants of this enum type, in the order they are declared.- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
getNumber
public final int getNumber()- Specified by:
getNumber
in interfacecom.google.protobuf.Internal.EnumLite
- Specified by:
getNumber
in interfacecom.google.protobuf.ProtocolMessageEnum
-
valueOf
Deprecated.Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
value
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-
forNumber
- Parameters:
value
- The numeric wire value of the corresponding enum entry.- Returns:
- The enum associated with the given numeric wire value.
-
internalGetValueMap
public static com.google.protobuf.Internal.EnumLiteMap<SatParameters.SearchBranching> internalGetValueMap() -
getValueDescriptor
public final com.google.protobuf.Descriptors.EnumValueDescriptor getValueDescriptor()- Specified by:
getValueDescriptor
in interfacecom.google.protobuf.ProtocolMessageEnum
-
getDescriptorForType
public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType()- Specified by:
getDescriptorForType
in interfacecom.google.protobuf.ProtocolMessageEnum
-
getDescriptor
public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() -
valueOf
public static SatParameters.SearchBranching valueOf(com.google.protobuf.Descriptors.EnumValueDescriptor desc) Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
desc
- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is null
-