Class LinearObjective.Builder

  • All Implemented Interfaces:
    LinearObjectiveOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, java.lang.Cloneable
    Enclosing class:
    LinearObjective

    public static final class LinearObjective.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
    implements LinearObjectiveOrBuilder
     The objective of an optimization problem.
     
    Protobuf type operations_research.sat.LinearObjective
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      LinearObjective.Builder addAllCoefficients​(java.lang.Iterable<? extends java.lang.Long> values)
      repeated int64 coefficients = 2;
      LinearObjective.Builder addAllLiterals​(java.lang.Iterable<? extends java.lang.Integer> values)
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      LinearObjective.Builder addCoefficients​(long value)
      repeated int64 coefficients = 2;
      LinearObjective.Builder addLiterals​(int value)
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      LinearObjective.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)  
      LinearObjective build()  
      LinearObjective buildPartial()  
      LinearObjective.Builder clear()  
      LinearObjective.Builder clearCoefficients()
      repeated int64 coefficients = 2;
      LinearObjective.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)  
      LinearObjective.Builder clearLiterals()
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      LinearObjective.Builder clearOffset()
      For a given variable assignment, the "real" problem objective value is 'scaling_factor * (minimization_objective + offset)' where 'minimization_objective is the one defined just above.
      LinearObjective.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)  
      LinearObjective.Builder clearScalingFactor()
      optional double scaling_factor = 4 [default = 1];
      LinearObjective.Builder clone()  
      long getCoefficients​(int index)
      repeated int64 coefficients = 2;
      int getCoefficientsCount()
      repeated int64 coefficients = 2;
      java.util.List<java.lang.Long> getCoefficientsList()
      repeated int64 coefficients = 2;
      LinearObjective getDefaultInstanceForType()  
      static com.google.protobuf.Descriptors.Descriptor getDescriptor()  
      com.google.protobuf.Descriptors.Descriptor getDescriptorForType()  
      int getLiterals​(int index)
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      int getLiteralsCount()
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      java.util.List<java.lang.Integer> getLiteralsList()
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      double getOffset()
      For a given variable assignment, the "real" problem objective value is 'scaling_factor * (minimization_objective + offset)' where 'minimization_objective is the one defined just above.
      double getScalingFactor()
      optional double scaling_factor = 4 [default = 1];
      boolean hasOffset()
      For a given variable assignment, the "real" problem objective value is 'scaling_factor * (minimization_objective + offset)' where 'minimization_objective is the one defined just above.
      boolean hasScalingFactor()
      optional double scaling_factor = 4 [default = 1];
      protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()  
      boolean isInitialized()  
      LinearObjective.Builder mergeFrom​(LinearObjective other)  
      LinearObjective.Builder mergeFrom​(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)  
      LinearObjective.Builder mergeFrom​(com.google.protobuf.Message other)  
      LinearObjective.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)  
      LinearObjective.Builder setCoefficients​(int index, long value)
      repeated int64 coefficients = 2;
      LinearObjective.Builder setField​(com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)  
      LinearObjective.Builder setLiterals​(int index, int value)
      The goal is always to minimize the linear Boolean formula defined by these two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff literal_i is true in a given assignment.
      LinearObjective.Builder setOffset​(double value)
      For a given variable assignment, the "real" problem objective value is 'scaling_factor * (minimization_objective + offset)' where 'minimization_objective is the one defined just above.
      LinearObjective.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)  
      LinearObjective.Builder setScalingFactor​(double value)
      optional double scaling_factor = 4 [default = 1];
      LinearObjective.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)  
      • Methods inherited from class com.google.protobuf.GeneratedMessageV3.Builder

        getAllFields, getField, getFieldBuilder, getOneofFieldDescriptor, getParentForChildren, getRepeatedField, getRepeatedFieldBuilder, getRepeatedFieldCount, getUnknownFields, getUnknownFieldSetBuilder, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, internalGetMutableMapField, internalGetMutableMapFieldReflection, isClean, markClean, mergeUnknownLengthDelimitedField, mergeUnknownVarintField, newBuilderForField, onBuilt, onChanged, parseUnknownField, setUnknownFieldSetBuilder, setUnknownFieldsProto3
      • Methods inherited from class com.google.protobuf.AbstractMessage.Builder

        findInitializationErrors, getInitializationErrorString, internalMergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, mergeFrom, newUninitializedMessageException, toString
      • Methods inherited from class com.google.protobuf.AbstractMessageLite.Builder

        addAll, addAll, mergeDelimitedFrom, mergeDelimitedFrom, mergeFrom, newUninitializedMessageException
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface com.google.protobuf.Message.Builder

        mergeDelimitedFrom, mergeDelimitedFrom
      • Methods inherited from interface com.google.protobuf.MessageLite.Builder

        mergeFrom
      • Methods inherited from interface com.google.protobuf.MessageOrBuilder

        findInitializationErrors, getAllFields, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • clear

        public LinearObjective.Builder clear()
        Specified by:
        clear in interface com.google.protobuf.Message.Builder
        Specified by:
        clear in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clear in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • getDefaultInstanceForType

        public LinearObjective getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public LinearObjective build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public LinearObjective buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • clone

        public LinearObjective.Builder clone()
        Specified by:
        clone in interface com.google.protobuf.Message.Builder
        Specified by:
        clone in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        clone in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • setField

        public LinearObjective.Builder setField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                java.lang.Object value)
        Specified by:
        setField in interface com.google.protobuf.Message.Builder
        Overrides:
        setField in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • clearField

        public LinearObjective.Builder clearField​(com.google.protobuf.Descriptors.FieldDescriptor field)
        Specified by:
        clearField in interface com.google.protobuf.Message.Builder
        Overrides:
        clearField in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • clearOneof

        public LinearObjective.Builder clearOneof​(com.google.protobuf.Descriptors.OneofDescriptor oneof)
        Specified by:
        clearOneof in interface com.google.protobuf.Message.Builder
        Overrides:
        clearOneof in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • setRepeatedField

        public LinearObjective.Builder setRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                        int index,
                                                        java.lang.Object value)
        Specified by:
        setRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        setRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • addRepeatedField

        public LinearObjective.Builder addRepeatedField​(com.google.protobuf.Descriptors.FieldDescriptor field,
                                                        java.lang.Object value)
        Specified by:
        addRepeatedField in interface com.google.protobuf.Message.Builder
        Overrides:
        addRepeatedField in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • mergeFrom

        public LinearObjective.Builder mergeFrom​(com.google.protobuf.Message other)
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<LinearObjective.Builder>
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • mergeFrom

        public LinearObjective.Builder mergeFrom​(com.google.protobuf.CodedInputStream input,
                                                 com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                          throws java.io.IOException
        Specified by:
        mergeFrom in interface com.google.protobuf.Message.Builder
        Specified by:
        mergeFrom in interface com.google.protobuf.MessageLite.Builder
        Overrides:
        mergeFrom in class com.google.protobuf.AbstractMessage.Builder<LinearObjective.Builder>
        Throws:
        java.io.IOException
      • getLiteralsList

        public java.util.List<java.lang.Integer> getLiteralsList()
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Specified by:
        getLiteralsList in interface LinearObjectiveOrBuilder
        Returns:
        A list containing the literals.
      • getLiteralsCount

        public int getLiteralsCount()
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Specified by:
        getLiteralsCount in interface LinearObjectiveOrBuilder
        Returns:
        The count of literals.
      • getLiterals

        public int getLiterals​(int index)
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Specified by:
        getLiterals in interface LinearObjectiveOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The literals at the given index.
      • setLiterals

        public LinearObjective.Builder setLiterals​(int index,
                                                   int value)
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Parameters:
        index - The index to set the value at.
        value - The literals to set.
        Returns:
        This builder for chaining.
      • addLiterals

        public LinearObjective.Builder addLiterals​(int value)
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Parameters:
        value - The literals to add.
        Returns:
        This builder for chaining.
      • addAllLiterals

        public LinearObjective.Builder addAllLiterals​(java.lang.Iterable<? extends java.lang.Integer> values)
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Parameters:
        values - The literals to add.
        Returns:
        This builder for chaining.
      • clearLiterals

        public LinearObjective.Builder clearLiterals()
         The goal is always to minimize the linear Boolean formula defined by these
         two fields: sum_i literal_i * coefficient_i where literal_i is 1 iff
         literal_i is true in a given assignment.
        
         Note that the same variable shouldn't appear twice and that zero
         coefficients are not allowed.
         
        repeated int32 literals = 1;
        Returns:
        This builder for chaining.
      • getCoefficientsList

        public java.util.List<java.lang.Long> getCoefficientsList()
        repeated int64 coefficients = 2;
        Specified by:
        getCoefficientsList in interface LinearObjectiveOrBuilder
        Returns:
        A list containing the coefficients.
      • getCoefficients

        public long getCoefficients​(int index)
        repeated int64 coefficients = 2;
        Specified by:
        getCoefficients in interface LinearObjectiveOrBuilder
        Parameters:
        index - The index of the element to return.
        Returns:
        The coefficients at the given index.
      • setCoefficients

        public LinearObjective.Builder setCoefficients​(int index,
                                                       long value)
        repeated int64 coefficients = 2;
        Parameters:
        index - The index to set the value at.
        value - The coefficients to set.
        Returns:
        This builder for chaining.
      • addCoefficients

        public LinearObjective.Builder addCoefficients​(long value)
        repeated int64 coefficients = 2;
        Parameters:
        value - The coefficients to add.
        Returns:
        This builder for chaining.
      • addAllCoefficients

        public LinearObjective.Builder addAllCoefficients​(java.lang.Iterable<? extends java.lang.Long> values)
        repeated int64 coefficients = 2;
        Parameters:
        values - The coefficients to add.
        Returns:
        This builder for chaining.
      • clearCoefficients

        public LinearObjective.Builder clearCoefficients()
        repeated int64 coefficients = 2;
        Returns:
        This builder for chaining.
      • hasOffset

        public boolean hasOffset()
         For a given variable assignment, the "real" problem objective value is
         'scaling_factor * (minimization_objective + offset)' where
         'minimization_objective is the one defined just above.
        
         Note that this is not what we minimize, but it is what we display.
         In particular if scaling_factor is negative, then the "real" problem is
         a maximization problem, even if the "internal" objective is minimized.
         
        optional double offset = 3 [default = 0];
        Specified by:
        hasOffset in interface LinearObjectiveOrBuilder
        Returns:
        Whether the offset field is set.
      • getOffset

        public double getOffset()
         For a given variable assignment, the "real" problem objective value is
         'scaling_factor * (minimization_objective + offset)' where
         'minimization_objective is the one defined just above.
        
         Note that this is not what we minimize, but it is what we display.
         In particular if scaling_factor is negative, then the "real" problem is
         a maximization problem, even if the "internal" objective is minimized.
         
        optional double offset = 3 [default = 0];
        Specified by:
        getOffset in interface LinearObjectiveOrBuilder
        Returns:
        The offset.
      • setOffset

        public LinearObjective.Builder setOffset​(double value)
         For a given variable assignment, the "real" problem objective value is
         'scaling_factor * (minimization_objective + offset)' where
         'minimization_objective is the one defined just above.
        
         Note that this is not what we minimize, but it is what we display.
         In particular if scaling_factor is negative, then the "real" problem is
         a maximization problem, even if the "internal" objective is minimized.
         
        optional double offset = 3 [default = 0];
        Parameters:
        value - The offset to set.
        Returns:
        This builder for chaining.
      • clearOffset

        public LinearObjective.Builder clearOffset()
         For a given variable assignment, the "real" problem objective value is
         'scaling_factor * (minimization_objective + offset)' where
         'minimization_objective is the one defined just above.
        
         Note that this is not what we minimize, but it is what we display.
         In particular if scaling_factor is negative, then the "real" problem is
         a maximization problem, even if the "internal" objective is minimized.
         
        optional double offset = 3 [default = 0];
        Returns:
        This builder for chaining.
      • hasScalingFactor

        public boolean hasScalingFactor()
        optional double scaling_factor = 4 [default = 1];
        Specified by:
        hasScalingFactor in interface LinearObjectiveOrBuilder
        Returns:
        Whether the scalingFactor field is set.
      • getScalingFactor

        public double getScalingFactor()
        optional double scaling_factor = 4 [default = 1];
        Specified by:
        getScalingFactor in interface LinearObjectiveOrBuilder
        Returns:
        The scalingFactor.
      • setScalingFactor

        public LinearObjective.Builder setScalingFactor​(double value)
        optional double scaling_factor = 4 [default = 1];
        Parameters:
        value - The scalingFactor to set.
        Returns:
        This builder for chaining.
      • clearScalingFactor

        public LinearObjective.Builder clearScalingFactor()
        optional double scaling_factor = 4 [default = 1];
        Returns:
        This builder for chaining.
      • setUnknownFields

        public final LinearObjective.Builder setUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        setUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        setUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>
      • mergeUnknownFields

        public final LinearObjective.Builder mergeUnknownFields​(com.google.protobuf.UnknownFieldSet unknownFields)
        Specified by:
        mergeUnknownFields in interface com.google.protobuf.Message.Builder
        Overrides:
        mergeUnknownFields in class com.google.protobuf.GeneratedMessageV3.Builder<LinearObjective.Builder>