Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
com.google.ortools.sat.SymmetryProto Class Reference

Detailed Description

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 type operations_research.sat.SymmetryProto

Definition at line 27 of file SymmetryProto.java.

Inheritance diagram for com.google.ortools.sat.SymmetryProto:
com.google.ortools.sat.SymmetryProtoOrBuilder

Classes

class  Builder

Public Member Functions

java.util.List< com.google.ortools.sat.SparsePermutationProtogetPermutationsList ()
java.util.List<? extends com.google.ortools.sat.SparsePermutationProtoOrBuildergetPermutationsOrBuilderList ()
int getPermutationsCount ()
com.google.ortools.sat.SparsePermutationProto getPermutations (int index)
com.google.ortools.sat.SparsePermutationProtoOrBuilder getPermutationsOrBuilder (int index)
java.util.List< com.google.ortools.sat.DenseMatrixProtogetOrbitopesList ()
java.util.List<? extends com.google.ortools.sat.DenseMatrixProtoOrBuildergetOrbitopesOrBuilderList ()
int getOrbitopesCount ()
com.google.ortools.sat.DenseMatrixProto getOrbitopes (int index)
com.google.ortools.sat.DenseMatrixProtoOrBuilder getOrbitopesOrBuilder (int index)
final boolean isInitialized ()
void writeTo (com.google.protobuf.CodedOutputStream output) throws java.io.IOException
int getSerializedSize ()
boolean equals (final java.lang.Object obj)
int hashCode ()
Builder newBuilderForType ()
Builder toBuilder ()
com.google.protobuf.Parser< SymmetryProtogetParserForType ()
com.google.ortools.sat.SymmetryProto getDefaultInstanceForType ()

Static Public Member Functions

static final com.google.protobuf.Descriptors.Descriptor getDescriptor ()
static com.google.ortools.sat.SymmetryProto parseFrom (java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
static com.google.ortools.sat.SymmetryProto parseFrom (java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
static com.google.ortools.sat.SymmetryProto parseFrom (com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
static com.google.ortools.sat.SymmetryProto parseFrom (com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
static com.google.ortools.sat.SymmetryProto parseFrom (byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
static com.google.ortools.sat.SymmetryProto parseFrom (byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
static com.google.ortools.sat.SymmetryProto parseFrom (java.io.InputStream input) throws java.io.IOException
static com.google.ortools.sat.SymmetryProto parseFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
static com.google.ortools.sat.SymmetryProto parseDelimitedFrom (java.io.InputStream input) throws java.io.IOException
static com.google.ortools.sat.SymmetryProto parseDelimitedFrom (java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
static com.google.ortools.sat.SymmetryProto parseFrom (com.google.protobuf.CodedInputStream input) throws java.io.IOException
static com.google.ortools.sat.SymmetryProto parseFrom (com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException
static Builder newBuilder ()
static Builder newBuilder (com.google.ortools.sat.SymmetryProto prototype)
static com.google.ortools.sat.SymmetryProto getDefaultInstance ()
static com.google.protobuf.Parser< SymmetryProtoparser ()

Static Public Attributes

static final int PERMUTATIONS_FIELD_NUMBER = 1
static final int ORBITOPES_FIELD_NUMBER = 2

Protected Member Functions

com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable ()
Builder newBuilderForType (com.google.protobuf.GeneratedMessage.BuilderParent parent)

Member Function Documentation

◆ equals()

boolean com.google.ortools.sat.SymmetryProto.equals ( final java.lang.Object obj)

Definition at line 278 of file SymmetryProto.java.

◆ getDefaultInstance()

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.getDefaultInstance ( )
static

Definition at line 1473 of file SymmetryProto.java.

◆ getDefaultInstanceForType()

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.getDefaultInstanceForType ( )

Definition at line 1509 of file SymmetryProto.java.

◆ getDescriptor()

final com.google.protobuf.Descriptors.Descriptor com.google.ortools.sat.SymmetryProto.getDescriptor ( )
static

Definition at line 51 of file SymmetryProto.java.

◆ getOrbitopes()

com.google.ortools.sat.DenseMatrixProto com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 211 of file SymmetryProto.java.

◆ getOrbitopesCount()

int com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 192 of file SymmetryProto.java.

◆ getOrbitopesList()

java.util.List< com.google.ortools.sat.DenseMatrixProto > com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 153 of file SymmetryProto.java.

◆ getOrbitopesOrBuilder()

com.google.ortools.sat.DenseMatrixProtoOrBuilder com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 230 of file SymmetryProto.java.

◆ getOrbitopesOrBuilderList()

java.util.List<? extends com.google.ortools.sat.DenseMatrixProtoOrBuilder > com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 173 of file SymmetryProto.java.

◆ getParserForType()

com.google.protobuf.Parser< SymmetryProto > com.google.ortools.sat.SymmetryProto.getParserForType ( )

Definition at line 1504 of file SymmetryProto.java.

◆ getPermutations()

com.google.ortools.sat.SparsePermutationProto com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 116 of file SymmetryProto.java.

◆ getPermutationsCount()

int com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 103 of file SymmetryProto.java.

◆ getPermutationsList()

java.util.List< com.google.ortools.sat.SparsePermutationProto > com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 76 of file SymmetryProto.java.

◆ getPermutationsOrBuilder()

com.google.ortools.sat.SparsePermutationProtoOrBuilder com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 129 of file SymmetryProto.java.

◆ getPermutationsOrBuilderList()

java.util.List<? extends com.google.ortools.sat.SparsePermutationProtoOrBuilder > com.google.ortools.sat.SymmetryProto.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;

Implements com.google.ortools.sat.SymmetryProtoOrBuilder.

Definition at line 90 of file SymmetryProto.java.

◆ getSerializedSize()

int com.google.ortools.sat.SymmetryProto.getSerializedSize ( )

Definition at line 259 of file SymmetryProto.java.

◆ hashCode()

int com.google.ortools.sat.SymmetryProto.hashCode ( )

Definition at line 296 of file SymmetryProto.java.

◆ internalGetFieldAccessorTable()

com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.ortools.sat.SymmetryProto.internalGetFieldAccessorTable ( )
protected

Definition at line 57 of file SymmetryProto.java.

◆ isInitialized()

final boolean com.google.ortools.sat.SymmetryProto.isInitialized ( )

Definition at line 237 of file SymmetryProto.java.

◆ newBuilder() [1/2]

Builder com.google.ortools.sat.SymmetryProto.newBuilder ( )
static

Definition at line 389 of file SymmetryProto.java.

◆ newBuilder() [2/2]

Builder com.google.ortools.sat.SymmetryProto.newBuilder ( com.google.ortools.sat.SymmetryProto prototype)
static

Definition at line 392 of file SymmetryProto.java.

◆ newBuilderForType() [1/2]

Builder com.google.ortools.sat.SymmetryProto.newBuilderForType ( )

Definition at line 388 of file SymmetryProto.java.

◆ newBuilderForType() [2/2]

Builder com.google.ortools.sat.SymmetryProto.newBuilderForType ( com.google.protobuf.GeneratedMessage.BuilderParent parent)
protected

Definition at line 402 of file SymmetryProto.java.

◆ parseDelimitedFrom() [1/2]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseDelimitedFrom ( java.io.InputStream input) throws java.io.IOException
static

Definition at line 360 of file SymmetryProto.java.

◆ parseDelimitedFrom() [2/2]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseDelimitedFrom ( java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws java.io.IOException
static

Definition at line 366 of file SymmetryProto.java.

◆ parseFrom() [1/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 337 of file SymmetryProto.java.

◆ parseFrom() [2/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 341 of file SymmetryProto.java.

◆ parseFrom() [3/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 326 of file SymmetryProto.java.

◆ parseFrom() [4/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 331 of file SymmetryProto.java.

◆ parseFrom() [5/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( com.google.protobuf.CodedInputStream input) throws java.io.IOException
static

Definition at line 373 of file SymmetryProto.java.

◆ parseFrom() [6/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws java.io.IOException
static

Definition at line 379 of file SymmetryProto.java.

◆ parseFrom() [7/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( java.io.InputStream input) throws java.io.IOException
static

Definition at line 347 of file SymmetryProto.java.

◆ parseFrom() [8/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws java.io.IOException
static

Definition at line 352 of file SymmetryProto.java.

◆ parseFrom() [9/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 315 of file SymmetryProto.java.

◆ parseFrom() [10/10]

com.google.ortools.sat.SymmetryProto com.google.ortools.sat.SymmetryProto.parseFrom ( java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry ) throws com.google.protobuf.InvalidProtocolBufferException
static

Definition at line 320 of file SymmetryProto.java.

◆ parser()

com.google.protobuf.Parser< SymmetryProto > com.google.ortools.sat.SymmetryProto.parser ( )
static

Definition at line 1499 of file SymmetryProto.java.

◆ toBuilder()

Builder com.google.ortools.sat.SymmetryProto.toBuilder ( )

Definition at line 396 of file SymmetryProto.java.

◆ writeTo()

void com.google.ortools.sat.SymmetryProto.writeTo ( com.google.protobuf.CodedOutputStream output) throws java.io.IOException

Definition at line 247 of file SymmetryProto.java.

Member Data Documentation

◆ ORBITOPES_FIELD_NUMBER

final int com.google.ortools.sat.SymmetryProto.ORBITOPES_FIELD_NUMBER = 2
static

Definition at line 134 of file SymmetryProto.java.

◆ PERMUTATIONS_FIELD_NUMBER

final int com.google.ortools.sat.SymmetryProto.PERMUTATIONS_FIELD_NUMBER = 1
static

Definition at line 63 of file SymmetryProto.java.


The documentation for this class was generated from the following file: