Package com.google.ortools.sat
Class SymmetryProto
- java.lang.Object
-
- com.google.protobuf.AbstractMessageLite
-
- com.google.protobuf.AbstractMessage
-
- com.google.protobuf.GeneratedMessageV3
-
- com.google.ortools.sat.SymmetryProto
-
- All Implemented Interfaces:
SymmetryProtoOrBuilder,com.google.protobuf.Message,com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,com.google.protobuf.MessageOrBuilder,java.io.Serializable
public final class SymmetryProto extends com.google.protobuf.GeneratedMessageV3 implements SymmetryProtoOrBuilder
EXPERIMENTAL. For now, this is meant to be used by the solver and not filled by clients. Hold symmetry information about the set of feasible solutions. If we permute the variable values of any feasible solution using one of the permutation described here, we should always get another feasible solution. We usually also enforce that the objective of the new solution is the same. The group of permutations encoded here is usually computed from the encoding of the model, so it is not meant to be a complete representation of the feasible solution symmetries, just a valid subgroup.
Protobuf typeoperations_research.sat.SymmetryProto- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classSymmetryProto.BuilderEXPERIMENTAL.-
Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3
com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
-
-
Field Summary
Fields Modifier and Type Field Description static intORBITOPES_FIELD_NUMBERstatic intPERMUTATIONS_FIELD_NUMBER
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object obj)static SymmetryProtogetDefaultInstance()SymmetryProtogetDefaultInstanceForType()static com.google.protobuf.Descriptors.DescriptorgetDescriptor()DenseMatrixProtogetOrbitopes(int index)An orbitope is a special symmetry structure of the solution space.intgetOrbitopesCount()An orbitope is a special symmetry structure of the solution space.java.util.List<DenseMatrixProto>getOrbitopesList()An orbitope is a special symmetry structure of the solution space.DenseMatrixProtoOrBuildergetOrbitopesOrBuilder(int index)An orbitope is a special symmetry structure of the solution space.java.util.List<? extends DenseMatrixProtoOrBuilder>getOrbitopesOrBuilderList()An orbitope is a special symmetry structure of the solution space.com.google.protobuf.Parser<SymmetryProto>getParserForType()SparsePermutationProtogetPermutations(int index)A list of variable indices permutations that leave the feasible space of solution invariant.intgetPermutationsCount()A list of variable indices permutations that leave the feasible space of solution invariant.java.util.List<SparsePermutationProto>getPermutationsList()A list of variable indices permutations that leave the feasible space of solution invariant.SparsePermutationProtoOrBuildergetPermutationsOrBuilder(int index)A list of variable indices permutations that leave the feasible space of solution invariant.java.util.List<? extends SparsePermutationProtoOrBuilder>getPermutationsOrBuilderList()A list of variable indices permutations that leave the feasible space of solution invariant.intgetSerializedSize()inthashCode()protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTableinternalGetFieldAccessorTable()booleanisInitialized()static SymmetryProto.BuildernewBuilder()static SymmetryProto.BuildernewBuilder(SymmetryProto prototype)SymmetryProto.BuildernewBuilderForType()protected SymmetryProto.BuildernewBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)protected java.lang.ObjectnewInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)static SymmetryProtoparseDelimitedFrom(java.io.InputStream input)static SymmetryProtoparseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SymmetryProtoparseFrom(byte[] data)static SymmetryProtoparseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SymmetryProtoparseFrom(com.google.protobuf.ByteString data)static SymmetryProtoparseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SymmetryProtoparseFrom(com.google.protobuf.CodedInputStream input)static SymmetryProtoparseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SymmetryProtoparseFrom(java.io.InputStream input)static SymmetryProtoparseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static SymmetryProtoparseFrom(java.nio.ByteBuffer data)static SymmetryProtoparseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)static com.google.protobuf.Parser<SymmetryProto>parser()SymmetryProto.BuildertoBuilder()voidwriteTo(com.google.protobuf.CodedOutputStream output)-
Methods inherited from class com.google.protobuf.GeneratedMessageV3
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBooleanList, newBuilderForType, newDoubleList, newFloatList, newIntList, newLongList, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
-
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashBoolean, hashEnum, hashEnumList, hashFields, hashLong, toString
-
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
-
-
-
Field Detail
-
PERMUTATIONS_FIELD_NUMBER
public static final int PERMUTATIONS_FIELD_NUMBER
- See Also:
- Constant Field Values
-
ORBITOPES_FIELD_NUMBER
public static final int ORBITOPES_FIELD_NUMBER
- See Also:
- Constant Field Values
-
-
Method Detail
-
newInstance
protected java.lang.Object newInstance(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
- Overrides:
newInstancein classcom.google.protobuf.GeneratedMessageV3
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
-
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
- Specified by:
internalGetFieldAccessorTablein classcom.google.protobuf.GeneratedMessageV3
-
getPermutationsList
public java.util.List<SparsePermutationProto> getPermutationsList()
A list of variable indices permutations that leave the feasible space of solution invariant. Usually, we only encode a set of generators of the group.
repeated .operations_research.sat.SparsePermutationProto permutations = 1;- Specified by:
getPermutationsListin interfaceSymmetryProtoOrBuilder
-
getPermutationsOrBuilderList
public java.util.List<? extends SparsePermutationProtoOrBuilder> getPermutationsOrBuilderList()
A list of variable indices permutations that leave the feasible space of solution invariant. Usually, we only encode a set of generators of the group.
repeated .operations_research.sat.SparsePermutationProto permutations = 1;- Specified by:
getPermutationsOrBuilderListin interfaceSymmetryProtoOrBuilder
-
getPermutationsCount
public int getPermutationsCount()
A list of variable indices permutations that leave the feasible space of solution invariant. Usually, we only encode a set of generators of the group.
repeated .operations_research.sat.SparsePermutationProto permutations = 1;- Specified by:
getPermutationsCountin interfaceSymmetryProtoOrBuilder
-
getPermutations
public SparsePermutationProto getPermutations(int index)
A list of variable indices permutations that leave the feasible space of solution invariant. Usually, we only encode a set of generators of the group.
repeated .operations_research.sat.SparsePermutationProto permutations = 1;- Specified by:
getPermutationsin interfaceSymmetryProtoOrBuilder
-
getPermutationsOrBuilder
public SparsePermutationProtoOrBuilder getPermutationsOrBuilder(int index)
A list of variable indices permutations that leave the feasible space of solution invariant. Usually, we only encode a set of generators of the group.
repeated .operations_research.sat.SparsePermutationProto permutations = 1;- Specified by:
getPermutationsOrBuilderin interfaceSymmetryProtoOrBuilder
-
getOrbitopesList
public java.util.List<DenseMatrixProto> getOrbitopesList()
An orbitope is a special symmetry structure of the solution space. If the variable indices are arranged in a matrix (with no duplicates), then any permutation of the columns will be a valid permutation of the feasible space. This arise quite often. The typical example is a graph coloring problem where for each node i, you have j booleans to indicate its color. If the variables color_of_i_is_j are arranged in a matrix[i][j], then any columns permutations leave the problem invariant.
repeated .operations_research.sat.DenseMatrixProto orbitopes = 2;- Specified by:
getOrbitopesListin interfaceSymmetryProtoOrBuilder
-
getOrbitopesOrBuilderList
public java.util.List<? extends DenseMatrixProtoOrBuilder> getOrbitopesOrBuilderList()
An orbitope is a special symmetry structure of the solution space. If the variable indices are arranged in a matrix (with no duplicates), then any permutation of the columns will be a valid permutation of the feasible space. This arise quite often. The typical example is a graph coloring problem where for each node i, you have j booleans to indicate its color. If the variables color_of_i_is_j are arranged in a matrix[i][j], then any columns permutations leave the problem invariant.
repeated .operations_research.sat.DenseMatrixProto orbitopes = 2;- Specified by:
getOrbitopesOrBuilderListin interfaceSymmetryProtoOrBuilder
-
getOrbitopesCount
public int getOrbitopesCount()
An orbitope is a special symmetry structure of the solution space. If the variable indices are arranged in a matrix (with no duplicates), then any permutation of the columns will be a valid permutation of the feasible space. This arise quite often. The typical example is a graph coloring problem where for each node i, you have j booleans to indicate its color. If the variables color_of_i_is_j are arranged in a matrix[i][j], then any columns permutations leave the problem invariant.
repeated .operations_research.sat.DenseMatrixProto orbitopes = 2;- Specified by:
getOrbitopesCountin interfaceSymmetryProtoOrBuilder
-
getOrbitopes
public DenseMatrixProto getOrbitopes(int index)
An orbitope is a special symmetry structure of the solution space. If the variable indices are arranged in a matrix (with no duplicates), then any permutation of the columns will be a valid permutation of the feasible space. This arise quite often. The typical example is a graph coloring problem where for each node i, you have j booleans to indicate its color. If the variables color_of_i_is_j are arranged in a matrix[i][j], then any columns permutations leave the problem invariant.
repeated .operations_research.sat.DenseMatrixProto orbitopes = 2;- Specified by:
getOrbitopesin interfaceSymmetryProtoOrBuilder
-
getOrbitopesOrBuilder
public DenseMatrixProtoOrBuilder getOrbitopesOrBuilder(int index)
An orbitope is a special symmetry structure of the solution space. If the variable indices are arranged in a matrix (with no duplicates), then any permutation of the columns will be a valid permutation of the feasible space. This arise quite often. The typical example is a graph coloring problem where for each node i, you have j booleans to indicate its color. If the variables color_of_i_is_j are arranged in a matrix[i][j], then any columns permutations leave the problem invariant.
repeated .operations_research.sat.DenseMatrixProto orbitopes = 2;- Specified by:
getOrbitopesOrBuilderin interfaceSymmetryProtoOrBuilder
-
isInitialized
public final boolean isInitialized()
- Specified by:
isInitializedin interfacecom.google.protobuf.MessageLiteOrBuilder- Overrides:
isInitializedin classcom.google.protobuf.GeneratedMessageV3
-
writeTo
public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException- Specified by:
writeToin interfacecom.google.protobuf.MessageLite- Overrides:
writeToin classcom.google.protobuf.GeneratedMessageV3- Throws:
java.io.IOException
-
getSerializedSize
public int getSerializedSize()
- Specified by:
getSerializedSizein interfacecom.google.protobuf.MessageLite- Overrides:
getSerializedSizein classcom.google.protobuf.GeneratedMessageV3
-
equals
public boolean equals(java.lang.Object obj)
- Specified by:
equalsin interfacecom.google.protobuf.Message- Overrides:
equalsin classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()
- Specified by:
hashCodein interfacecom.google.protobuf.Message- Overrides:
hashCodein classcom.google.protobuf.AbstractMessage
-
parseFrom
public static SymmetryProto parseFrom(java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SymmetryProto parseFrom(java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SymmetryProto parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SymmetryProto parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SymmetryProto parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SymmetryProto parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
- Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static SymmetryProto parseFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static SymmetryProto parseFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static SymmetryProto parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseDelimitedFrom
public static SymmetryProto parseDelimitedFrom(java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static SymmetryProto parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException
- Throws:
java.io.IOException
-
parseFrom
public static SymmetryProto parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
- Throws:
java.io.IOException
-
newBuilderForType
public SymmetryProto.Builder newBuilderForType()
- Specified by:
newBuilderForTypein interfacecom.google.protobuf.Message- Specified by:
newBuilderForTypein interfacecom.google.protobuf.MessageLite
-
newBuilder
public static SymmetryProto.Builder newBuilder()
-
newBuilder
public static SymmetryProto.Builder newBuilder(SymmetryProto prototype)
-
toBuilder
public SymmetryProto.Builder toBuilder()
- Specified by:
toBuilderin interfacecom.google.protobuf.Message- Specified by:
toBuilderin interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected SymmetryProto.Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
- Specified by:
newBuilderForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstance
public static SymmetryProto getDefaultInstance()
-
parser
public static com.google.protobuf.Parser<SymmetryProto> parser()
-
getParserForType
public com.google.protobuf.Parser<SymmetryProto> getParserForType()
- Specified by:
getParserForTypein interfacecom.google.protobuf.Message- Specified by:
getParserForTypein interfacecom.google.protobuf.MessageLite- Overrides:
getParserForTypein classcom.google.protobuf.GeneratedMessageV3
-
getDefaultInstanceForType
public SymmetryProto getDefaultInstanceForType()
- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageLiteOrBuilder- Specified by:
getDefaultInstanceForTypein interfacecom.google.protobuf.MessageOrBuilder
-
-