Class RoutingSearchParameters.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderType>
com.google.protobuf.GeneratedMessageV3.Builder<RoutingSearchParameters.Builder>
com.google.ortools.constraintsolver.RoutingSearchParameters.Builder
All Implemented Interfaces:
RoutingSearchParametersOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, java.lang.Cloneable
Enclosing class:
RoutingSearchParameters

public static final class RoutingSearchParameters.Builder
extends com.google.protobuf.GeneratedMessageV3.Builder<RoutingSearchParameters.Builder>
implements RoutingSearchParametersOrBuilder
 Parameters defining the search used to solve vehicle routing problems.
 If a parameter is unset (or, equivalently, set to its default value),
 then the routing library will pick its preferred value for that parameter
 automatically: this should be the case for most parameters.
 To see those "default" parameters, call GetDefaultRoutingSearchParameters().
 Next ID: 47
 
Protobuf type operations_research.RoutingSearchParameters
  • Method Details

    • 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<RoutingSearchParameters.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<RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • getDefaultInstanceForType

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

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

      public RoutingSearchParameters buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.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<RoutingSearchParameters.Builder>
    • setField

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • clearField

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • clearOneof

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • setRepeatedField

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • addRepeatedField

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • mergeFrom

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • mergeFrom

    • isInitialized

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

      public RoutingSearchParameters.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<RoutingSearchParameters.Builder>
      Throws:
      java.io.IOException
    • getFirstSolutionStrategyValue

      public int getFirstSolutionStrategyValue()
       First solution strategies, used as starting point of local search.
       
      .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
      Specified by:
      getFirstSolutionStrategyValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for firstSolutionStrategy.
    • setFirstSolutionStrategyValue

      public RoutingSearchParameters.Builder setFirstSolutionStrategyValue​(int value)
       First solution strategies, used as starting point of local search.
       
      .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
      Parameters:
      value - The enum numeric value on the wire for firstSolutionStrategy to set.
      Returns:
      This builder for chaining.
    • getFirstSolutionStrategy

      public FirstSolutionStrategy.Value getFirstSolutionStrategy()
       First solution strategies, used as starting point of local search.
       
      .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
      Specified by:
      getFirstSolutionStrategy in interface RoutingSearchParametersOrBuilder
      Returns:
      The firstSolutionStrategy.
    • setFirstSolutionStrategy

      public RoutingSearchParameters.Builder setFirstSolutionStrategy​(FirstSolutionStrategy.Value value)
       First solution strategies, used as starting point of local search.
       
      .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
      Parameters:
      value - The firstSolutionStrategy to set.
      Returns:
      This builder for chaining.
    • clearFirstSolutionStrategy

      public RoutingSearchParameters.Builder clearFirstSolutionStrategy()
       First solution strategies, used as starting point of local search.
       
      .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
      Returns:
      This builder for chaining.
    • getUseUnfilteredFirstSolutionStrategy

      public boolean getUseUnfilteredFirstSolutionStrategy()
       --- Advanced first solutions strategy settings ---
       Don't touch these unless you know what you are doing.
       Use filtered version of first solution strategy if available.
       
      bool use_unfiltered_first_solution_strategy = 2;
      Specified by:
      getUseUnfilteredFirstSolutionStrategy in interface RoutingSearchParametersOrBuilder
      Returns:
      The useUnfilteredFirstSolutionStrategy.
    • setUseUnfilteredFirstSolutionStrategy

      public RoutingSearchParameters.Builder setUseUnfilteredFirstSolutionStrategy​(boolean value)
       --- Advanced first solutions strategy settings ---
       Don't touch these unless you know what you are doing.
       Use filtered version of first solution strategy if available.
       
      bool use_unfiltered_first_solution_strategy = 2;
      Parameters:
      value - The useUnfilteredFirstSolutionStrategy to set.
      Returns:
      This builder for chaining.
    • clearUseUnfilteredFirstSolutionStrategy

      public RoutingSearchParameters.Builder clearUseUnfilteredFirstSolutionStrategy()
       --- Advanced first solutions strategy settings ---
       Don't touch these unless you know what you are doing.
       Use filtered version of first solution strategy if available.
       
      bool use_unfiltered_first_solution_strategy = 2;
      Returns:
      This builder for chaining.
    • getSavingsNeighborsRatio

      public double getSavingsNeighborsRatio()
       Parameters specific to the Savings first solution heuristic.
       Ratio (in ]0, 1]) of neighbors to consider for each node when constructing
       the savings. If unspecified, its value is considered to be 1.0.
       
      double savings_neighbors_ratio = 14;
      Specified by:
      getSavingsNeighborsRatio in interface RoutingSearchParametersOrBuilder
      Returns:
      The savingsNeighborsRatio.
    • setSavingsNeighborsRatio

      public RoutingSearchParameters.Builder setSavingsNeighborsRatio​(double value)
       Parameters specific to the Savings first solution heuristic.
       Ratio (in ]0, 1]) of neighbors to consider for each node when constructing
       the savings. If unspecified, its value is considered to be 1.0.
       
      double savings_neighbors_ratio = 14;
      Parameters:
      value - The savingsNeighborsRatio to set.
      Returns:
      This builder for chaining.
    • clearSavingsNeighborsRatio

      public RoutingSearchParameters.Builder clearSavingsNeighborsRatio()
       Parameters specific to the Savings first solution heuristic.
       Ratio (in ]0, 1]) of neighbors to consider for each node when constructing
       the savings. If unspecified, its value is considered to be 1.0.
       
      double savings_neighbors_ratio = 14;
      Returns:
      This builder for chaining.
    • getSavingsMaxMemoryUsageBytes

      public double getSavingsMaxMemoryUsageBytes()
       The number of neighbors considered for each node in the Savings heuristic
       is chosen so that the space used to store the savings doesn't exceed
       savings_max_memory_usage_bytes, which must be in ]0, 1e10].
       NOTE: If both savings_neighbors_ratio and savings_max_memory_usage_bytes
       are specified, the number of neighbors considered for each node will be the
       minimum of the two numbers determined by these parameters.
       
      double savings_max_memory_usage_bytes = 23;
      Specified by:
      getSavingsMaxMemoryUsageBytes in interface RoutingSearchParametersOrBuilder
      Returns:
      The savingsMaxMemoryUsageBytes.
    • setSavingsMaxMemoryUsageBytes

      public RoutingSearchParameters.Builder setSavingsMaxMemoryUsageBytes​(double value)
       The number of neighbors considered for each node in the Savings heuristic
       is chosen so that the space used to store the savings doesn't exceed
       savings_max_memory_usage_bytes, which must be in ]0, 1e10].
       NOTE: If both savings_neighbors_ratio and savings_max_memory_usage_bytes
       are specified, the number of neighbors considered for each node will be the
       minimum of the two numbers determined by these parameters.
       
      double savings_max_memory_usage_bytes = 23;
      Parameters:
      value - The savingsMaxMemoryUsageBytes to set.
      Returns:
      This builder for chaining.
    • clearSavingsMaxMemoryUsageBytes

      public RoutingSearchParameters.Builder clearSavingsMaxMemoryUsageBytes()
       The number of neighbors considered for each node in the Savings heuristic
       is chosen so that the space used to store the savings doesn't exceed
       savings_max_memory_usage_bytes, which must be in ]0, 1e10].
       NOTE: If both savings_neighbors_ratio and savings_max_memory_usage_bytes
       are specified, the number of neighbors considered for each node will be the
       minimum of the two numbers determined by these parameters.
       
      double savings_max_memory_usage_bytes = 23;
      Returns:
      This builder for chaining.
    • getSavingsAddReverseArcs

      public boolean getSavingsAddReverseArcs()
       Add savings related to reverse arcs when finding the nearest neighbors
       of the nodes.
       
      bool savings_add_reverse_arcs = 15;
      Specified by:
      getSavingsAddReverseArcs in interface RoutingSearchParametersOrBuilder
      Returns:
      The savingsAddReverseArcs.
    • setSavingsAddReverseArcs

      public RoutingSearchParameters.Builder setSavingsAddReverseArcs​(boolean value)
       Add savings related to reverse arcs when finding the nearest neighbors
       of the nodes.
       
      bool savings_add_reverse_arcs = 15;
      Parameters:
      value - The savingsAddReverseArcs to set.
      Returns:
      This builder for chaining.
    • clearSavingsAddReverseArcs

      public RoutingSearchParameters.Builder clearSavingsAddReverseArcs()
       Add savings related to reverse arcs when finding the nearest neighbors
       of the nodes.
       
      bool savings_add_reverse_arcs = 15;
      Returns:
      This builder for chaining.
    • getSavingsArcCoefficient

      public double getSavingsArcCoefficient()
       Coefficient of the cost of the arc for which the saving value is being
       computed:
       Saving(a-->b) = Cost(a-->end) + Cost(start-->b)
                       - savings_arc_coefficient * Cost(a-->b)
       This parameter must be greater than 0, and its default value is 1.
       
      double savings_arc_coefficient = 18;
      Specified by:
      getSavingsArcCoefficient in interface RoutingSearchParametersOrBuilder
      Returns:
      The savingsArcCoefficient.
    • setSavingsArcCoefficient

      public RoutingSearchParameters.Builder setSavingsArcCoefficient​(double value)
       Coefficient of the cost of the arc for which the saving value is being
       computed:
       Saving(a-->b) = Cost(a-->end) + Cost(start-->b)
                       - savings_arc_coefficient * Cost(a-->b)
       This parameter must be greater than 0, and its default value is 1.
       
      double savings_arc_coefficient = 18;
      Parameters:
      value - The savingsArcCoefficient to set.
      Returns:
      This builder for chaining.
    • clearSavingsArcCoefficient

      public RoutingSearchParameters.Builder clearSavingsArcCoefficient()
       Coefficient of the cost of the arc for which the saving value is being
       computed:
       Saving(a-->b) = Cost(a-->end) + Cost(start-->b)
                       - savings_arc_coefficient * Cost(a-->b)
       This parameter must be greater than 0, and its default value is 1.
       
      double savings_arc_coefficient = 18;
      Returns:
      This builder for chaining.
    • getSavingsParallelRoutes

      public boolean getSavingsParallelRoutes()
       When true, the routes are built in parallel, sequentially otherwise.
       
      bool savings_parallel_routes = 19;
      Specified by:
      getSavingsParallelRoutes in interface RoutingSearchParametersOrBuilder
      Returns:
      The savingsParallelRoutes.
    • setSavingsParallelRoutes

      public RoutingSearchParameters.Builder setSavingsParallelRoutes​(boolean value)
       When true, the routes are built in parallel, sequentially otherwise.
       
      bool savings_parallel_routes = 19;
      Parameters:
      value - The savingsParallelRoutes to set.
      Returns:
      This builder for chaining.
    • clearSavingsParallelRoutes

      public RoutingSearchParameters.Builder clearSavingsParallelRoutes()
       When true, the routes are built in parallel, sequentially otherwise.
       
      bool savings_parallel_routes = 19;
      Returns:
      This builder for chaining.
    • getCheapestInsertionFarthestSeedsRatio

      public double getCheapestInsertionFarthestSeedsRatio()
       Ratio (between 0 and 1) of available vehicles in the model on which
       farthest nodes of the model are inserted as seeds in the
       GlobalCheapestInsertion first solution heuristic.
       
      double cheapest_insertion_farthest_seeds_ratio = 16;
      Specified by:
      getCheapestInsertionFarthestSeedsRatio in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionFarthestSeedsRatio.
    • setCheapestInsertionFarthestSeedsRatio

      public RoutingSearchParameters.Builder setCheapestInsertionFarthestSeedsRatio​(double value)
       Ratio (between 0 and 1) of available vehicles in the model on which
       farthest nodes of the model are inserted as seeds in the
       GlobalCheapestInsertion first solution heuristic.
       
      double cheapest_insertion_farthest_seeds_ratio = 16;
      Parameters:
      value - The cheapestInsertionFarthestSeedsRatio to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionFarthestSeedsRatio

      public RoutingSearchParameters.Builder clearCheapestInsertionFarthestSeedsRatio()
       Ratio (between 0 and 1) of available vehicles in the model on which
       farthest nodes of the model are inserted as seeds in the
       GlobalCheapestInsertion first solution heuristic.
       
      double cheapest_insertion_farthest_seeds_ratio = 16;
      Returns:
      This builder for chaining.
    • getCheapestInsertionFirstSolutionNeighborsRatio

      public double getCheapestInsertionFirstSolutionNeighborsRatio()
       Ratio (in ]0, 1]) of closest non start/end nodes to consider as neighbors
       for each node when creating new insertions in the parallel/sequential
       cheapest insertion heuristic.
       If not overridden, its default value is 1, meaning all neighbors will be
       considered.
       The neighborhood ratio is coupled with the corresponding min_neighbors
       integer, indicating the minimum number of neighbors to consider for each
       node:
       num_closest_neighbors =
              max(min_neighbors, neighbors_ratio * NUM_NON_START_END_NODES)
       This minimum number of neighbors must be greater or equal to 1, its
       default value.
       Neighbors ratio and minimum number of neighbors for the first solution
       heuristic.
       
      double cheapest_insertion_first_solution_neighbors_ratio = 21;
      Specified by:
      getCheapestInsertionFirstSolutionNeighborsRatio in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionFirstSolutionNeighborsRatio.
    • setCheapestInsertionFirstSolutionNeighborsRatio

      public RoutingSearchParameters.Builder setCheapestInsertionFirstSolutionNeighborsRatio​(double value)
       Ratio (in ]0, 1]) of closest non start/end nodes to consider as neighbors
       for each node when creating new insertions in the parallel/sequential
       cheapest insertion heuristic.
       If not overridden, its default value is 1, meaning all neighbors will be
       considered.
       The neighborhood ratio is coupled with the corresponding min_neighbors
       integer, indicating the minimum number of neighbors to consider for each
       node:
       num_closest_neighbors =
              max(min_neighbors, neighbors_ratio * NUM_NON_START_END_NODES)
       This minimum number of neighbors must be greater or equal to 1, its
       default value.
       Neighbors ratio and minimum number of neighbors for the first solution
       heuristic.
       
      double cheapest_insertion_first_solution_neighbors_ratio = 21;
      Parameters:
      value - The cheapestInsertionFirstSolutionNeighborsRatio to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionFirstSolutionNeighborsRatio

      public RoutingSearchParameters.Builder clearCheapestInsertionFirstSolutionNeighborsRatio()
       Ratio (in ]0, 1]) of closest non start/end nodes to consider as neighbors
       for each node when creating new insertions in the parallel/sequential
       cheapest insertion heuristic.
       If not overridden, its default value is 1, meaning all neighbors will be
       considered.
       The neighborhood ratio is coupled with the corresponding min_neighbors
       integer, indicating the minimum number of neighbors to consider for each
       node:
       num_closest_neighbors =
              max(min_neighbors, neighbors_ratio * NUM_NON_START_END_NODES)
       This minimum number of neighbors must be greater or equal to 1, its
       default value.
       Neighbors ratio and minimum number of neighbors for the first solution
       heuristic.
       
      double cheapest_insertion_first_solution_neighbors_ratio = 21;
      Returns:
      This builder for chaining.
    • getCheapestInsertionFirstSolutionMinNeighbors

      public int getCheapestInsertionFirstSolutionMinNeighbors()
      int32 cheapest_insertion_first_solution_min_neighbors = 44;
      Specified by:
      getCheapestInsertionFirstSolutionMinNeighbors in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionFirstSolutionMinNeighbors.
    • setCheapestInsertionFirstSolutionMinNeighbors

      public RoutingSearchParameters.Builder setCheapestInsertionFirstSolutionMinNeighbors​(int value)
      int32 cheapest_insertion_first_solution_min_neighbors = 44;
      Parameters:
      value - The cheapestInsertionFirstSolutionMinNeighbors to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionFirstSolutionMinNeighbors

      public RoutingSearchParameters.Builder clearCheapestInsertionFirstSolutionMinNeighbors()
      int32 cheapest_insertion_first_solution_min_neighbors = 44;
      Returns:
      This builder for chaining.
    • getCheapestInsertionLsOperatorNeighborsRatio

      public double getCheapestInsertionLsOperatorNeighborsRatio()
       Neighbors ratio and minimum number of neighbors for the heuristic when used
       in a local search operator (see
       local_search_operators.use_global_cheapest_insertion_path_lns and
       local_search_operators.use_global_cheapest_insertion_chain_lns below).
       
      double cheapest_insertion_ls_operator_neighbors_ratio = 31;
      Specified by:
      getCheapestInsertionLsOperatorNeighborsRatio in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionLsOperatorNeighborsRatio.
    • setCheapestInsertionLsOperatorNeighborsRatio

      public RoutingSearchParameters.Builder setCheapestInsertionLsOperatorNeighborsRatio​(double value)
       Neighbors ratio and minimum number of neighbors for the heuristic when used
       in a local search operator (see
       local_search_operators.use_global_cheapest_insertion_path_lns and
       local_search_operators.use_global_cheapest_insertion_chain_lns below).
       
      double cheapest_insertion_ls_operator_neighbors_ratio = 31;
      Parameters:
      value - The cheapestInsertionLsOperatorNeighborsRatio to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionLsOperatorNeighborsRatio

      public RoutingSearchParameters.Builder clearCheapestInsertionLsOperatorNeighborsRatio()
       Neighbors ratio and minimum number of neighbors for the heuristic when used
       in a local search operator (see
       local_search_operators.use_global_cheapest_insertion_path_lns and
       local_search_operators.use_global_cheapest_insertion_chain_lns below).
       
      double cheapest_insertion_ls_operator_neighbors_ratio = 31;
      Returns:
      This builder for chaining.
    • getCheapestInsertionLsOperatorMinNeighbors

      public int getCheapestInsertionLsOperatorMinNeighbors()
      int32 cheapest_insertion_ls_operator_min_neighbors = 45;
      Specified by:
      getCheapestInsertionLsOperatorMinNeighbors in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionLsOperatorMinNeighbors.
    • setCheapestInsertionLsOperatorMinNeighbors

      public RoutingSearchParameters.Builder setCheapestInsertionLsOperatorMinNeighbors​(int value)
      int32 cheapest_insertion_ls_operator_min_neighbors = 45;
      Parameters:
      value - The cheapestInsertionLsOperatorMinNeighbors to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionLsOperatorMinNeighbors

      public RoutingSearchParameters.Builder clearCheapestInsertionLsOperatorMinNeighbors()
      int32 cheapest_insertion_ls_operator_min_neighbors = 45;
      Returns:
      This builder for chaining.
    • getCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization

      public boolean getCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization()
       Whether or not to only consider closest neighbors when initializing the
       assignment for the first solution.
       
      bool cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization = 46;
      Specified by:
      getCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization.
    • setCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization

      public RoutingSearchParameters.Builder setCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization​(boolean value)
       Whether or not to only consider closest neighbors when initializing the
       assignment for the first solution.
       
      bool cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization = 46;
      Parameters:
      value - The cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization

      public RoutingSearchParameters.Builder clearCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization()
       Whether or not to only consider closest neighbors when initializing the
       assignment for the first solution.
       
      bool cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization = 46;
      Returns:
      This builder for chaining.
    • getCheapestInsertionAddUnperformedEntries

      public boolean getCheapestInsertionAddUnperformedEntries()
       Whether or not to consider entries making the nodes/pairs unperformed in
       the GlobalCheapestInsertion heuristic.
       
      bool cheapest_insertion_add_unperformed_entries = 40;
      Specified by:
      getCheapestInsertionAddUnperformedEntries in interface RoutingSearchParametersOrBuilder
      Returns:
      The cheapestInsertionAddUnperformedEntries.
    • setCheapestInsertionAddUnperformedEntries

      public RoutingSearchParameters.Builder setCheapestInsertionAddUnperformedEntries​(boolean value)
       Whether or not to consider entries making the nodes/pairs unperformed in
       the GlobalCheapestInsertion heuristic.
       
      bool cheapest_insertion_add_unperformed_entries = 40;
      Parameters:
      value - The cheapestInsertionAddUnperformedEntries to set.
      Returns:
      This builder for chaining.
    • clearCheapestInsertionAddUnperformedEntries

      public RoutingSearchParameters.Builder clearCheapestInsertionAddUnperformedEntries()
       Whether or not to consider entries making the nodes/pairs unperformed in
       the GlobalCheapestInsertion heuristic.
       
      bool cheapest_insertion_add_unperformed_entries = 40;
      Returns:
      This builder for chaining.
    • getChristofidesUseMinimumMatching

      public boolean getChristofidesUseMinimumMatching()
       If true use minimum matching instead of minimal matching in the
       Christofides algorithm.
       
      bool christofides_use_minimum_matching = 30;
      Specified by:
      getChristofidesUseMinimumMatching in interface RoutingSearchParametersOrBuilder
      Returns:
      The christofidesUseMinimumMatching.
    • setChristofidesUseMinimumMatching

      public RoutingSearchParameters.Builder setChristofidesUseMinimumMatching​(boolean value)
       If true use minimum matching instead of minimal matching in the
       Christofides algorithm.
       
      bool christofides_use_minimum_matching = 30;
      Parameters:
      value - The christofidesUseMinimumMatching to set.
      Returns:
      This builder for chaining.
    • clearChristofidesUseMinimumMatching

      public RoutingSearchParameters.Builder clearChristofidesUseMinimumMatching()
       If true use minimum matching instead of minimal matching in the
       Christofides algorithm.
       
      bool christofides_use_minimum_matching = 30;
      Returns:
      This builder for chaining.
    • hasLocalSearchOperators

      public boolean hasLocalSearchOperators()
      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
      Specified by:
      hasLocalSearchOperators in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the localSearchOperators field is set.
    • getLocalSearchOperators

      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
      Specified by:
      getLocalSearchOperators in interface RoutingSearchParametersOrBuilder
      Returns:
      The localSearchOperators.
    • setLocalSearchOperators

      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
    • setLocalSearchOperators

      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
    • mergeLocalSearchOperators

      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
    • clearLocalSearchOperators

      public RoutingSearchParameters.Builder clearLocalSearchOperators()
      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
    • getLocalSearchOperatorsBuilder

      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
    • getLocalSearchOperatorsOrBuilder

      public RoutingSearchParameters.LocalSearchNeighborhoodOperatorsOrBuilder getLocalSearchOperatorsOrBuilder()
      .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
      Specified by:
      getLocalSearchOperatorsOrBuilder in interface RoutingSearchParametersOrBuilder
    • getUseMultiArmedBanditConcatenateOperators

      public boolean getUseMultiArmedBanditConcatenateOperators()
       If true, the solver will use multi-armed bandit concatenate operators. It
       dynamically chooses the next neighbor operator in order to get the best
       objective improvement.
       
      bool use_multi_armed_bandit_concatenate_operators = 41;
      Specified by:
      getUseMultiArmedBanditConcatenateOperators in interface RoutingSearchParametersOrBuilder
      Returns:
      The useMultiArmedBanditConcatenateOperators.
    • setUseMultiArmedBanditConcatenateOperators

      public RoutingSearchParameters.Builder setUseMultiArmedBanditConcatenateOperators​(boolean value)
       If true, the solver will use multi-armed bandit concatenate operators. It
       dynamically chooses the next neighbor operator in order to get the best
       objective improvement.
       
      bool use_multi_armed_bandit_concatenate_operators = 41;
      Parameters:
      value - The useMultiArmedBanditConcatenateOperators to set.
      Returns:
      This builder for chaining.
    • clearUseMultiArmedBanditConcatenateOperators

      public RoutingSearchParameters.Builder clearUseMultiArmedBanditConcatenateOperators()
       If true, the solver will use multi-armed bandit concatenate operators. It
       dynamically chooses the next neighbor operator in order to get the best
       objective improvement.
       
      bool use_multi_armed_bandit_concatenate_operators = 41;
      Returns:
      This builder for chaining.
    • getMultiArmedBanditCompoundOperatorMemoryCoefficient

      public double getMultiArmedBanditCompoundOperatorMemoryCoefficient()
       Memory coefficient related to the multi-armed bandit compound operator.
       Sets how much the objective improvement of previous accepted neighbors
       influence the current average improvement.
       This parameter should be between 0 and 1.
       
      double multi_armed_bandit_compound_operator_memory_coefficient = 42;
      Specified by:
      getMultiArmedBanditCompoundOperatorMemoryCoefficient in interface RoutingSearchParametersOrBuilder
      Returns:
      The multiArmedBanditCompoundOperatorMemoryCoefficient.
    • setMultiArmedBanditCompoundOperatorMemoryCoefficient

      public RoutingSearchParameters.Builder setMultiArmedBanditCompoundOperatorMemoryCoefficient​(double value)
       Memory coefficient related to the multi-armed bandit compound operator.
       Sets how much the objective improvement of previous accepted neighbors
       influence the current average improvement.
       This parameter should be between 0 and 1.
       
      double multi_armed_bandit_compound_operator_memory_coefficient = 42;
      Parameters:
      value - The multiArmedBanditCompoundOperatorMemoryCoefficient to set.
      Returns:
      This builder for chaining.
    • clearMultiArmedBanditCompoundOperatorMemoryCoefficient

      public RoutingSearchParameters.Builder clearMultiArmedBanditCompoundOperatorMemoryCoefficient()
       Memory coefficient related to the multi-armed bandit compound operator.
       Sets how much the objective improvement of previous accepted neighbors
       influence the current average improvement.
       This parameter should be between 0 and 1.
       
      double multi_armed_bandit_compound_operator_memory_coefficient = 42;
      Returns:
      This builder for chaining.
    • getMultiArmedBanditCompoundOperatorExplorationCoefficient

      public double getMultiArmedBanditCompoundOperatorExplorationCoefficient()
       Positive parameter defining the exploration coefficient of the multi-armed
       bandit compound operator. Sets how often we explore rarely used and
       unsuccessful in the past operators
       
      double multi_armed_bandit_compound_operator_exploration_coefficient = 43;
      Specified by:
      getMultiArmedBanditCompoundOperatorExplorationCoefficient in interface RoutingSearchParametersOrBuilder
      Returns:
      The multiArmedBanditCompoundOperatorExplorationCoefficient.
    • setMultiArmedBanditCompoundOperatorExplorationCoefficient

      public RoutingSearchParameters.Builder setMultiArmedBanditCompoundOperatorExplorationCoefficient​(double value)
       Positive parameter defining the exploration coefficient of the multi-armed
       bandit compound operator. Sets how often we explore rarely used and
       unsuccessful in the past operators
       
      double multi_armed_bandit_compound_operator_exploration_coefficient = 43;
      Parameters:
      value - The multiArmedBanditCompoundOperatorExplorationCoefficient to set.
      Returns:
      This builder for chaining.
    • clearMultiArmedBanditCompoundOperatorExplorationCoefficient

      public RoutingSearchParameters.Builder clearMultiArmedBanditCompoundOperatorExplorationCoefficient()
       Positive parameter defining the exploration coefficient of the multi-armed
       bandit compound operator. Sets how often we explore rarely used and
       unsuccessful in the past operators
       
      double multi_armed_bandit_compound_operator_exploration_coefficient = 43;
      Returns:
      This builder for chaining.
    • getRelocateExpensiveChainNumArcsToConsider

      public int getRelocateExpensiveChainNumArcsToConsider()
       Number of expensive arcs to consider cutting in the RelocateExpensiveChain
       neighborhood operator (see
       LocalSearchNeighborhoodOperators.use_relocate_expensive_chain()).
       This parameter must be greater than 2.
       NOTE(user): The number of neighbors generated by the operator for
       relocate_expensive_chain_num_arcs_to_consider = K is around
       K*(K-1)/2 * number_of_routes * number_of_nodes.
       
      int32 relocate_expensive_chain_num_arcs_to_consider = 20;
      Specified by:
      getRelocateExpensiveChainNumArcsToConsider in interface RoutingSearchParametersOrBuilder
      Returns:
      The relocateExpensiveChainNumArcsToConsider.
    • setRelocateExpensiveChainNumArcsToConsider

      public RoutingSearchParameters.Builder setRelocateExpensiveChainNumArcsToConsider​(int value)
       Number of expensive arcs to consider cutting in the RelocateExpensiveChain
       neighborhood operator (see
       LocalSearchNeighborhoodOperators.use_relocate_expensive_chain()).
       This parameter must be greater than 2.
       NOTE(user): The number of neighbors generated by the operator for
       relocate_expensive_chain_num_arcs_to_consider = K is around
       K*(K-1)/2 * number_of_routes * number_of_nodes.
       
      int32 relocate_expensive_chain_num_arcs_to_consider = 20;
      Parameters:
      value - The relocateExpensiveChainNumArcsToConsider to set.
      Returns:
      This builder for chaining.
    • clearRelocateExpensiveChainNumArcsToConsider

      public RoutingSearchParameters.Builder clearRelocateExpensiveChainNumArcsToConsider()
       Number of expensive arcs to consider cutting in the RelocateExpensiveChain
       neighborhood operator (see
       LocalSearchNeighborhoodOperators.use_relocate_expensive_chain()).
       This parameter must be greater than 2.
       NOTE(user): The number of neighbors generated by the operator for
       relocate_expensive_chain_num_arcs_to_consider = K is around
       K*(K-1)/2 * number_of_routes * number_of_nodes.
       
      int32 relocate_expensive_chain_num_arcs_to_consider = 20;
      Returns:
      This builder for chaining.
    • getHeuristicExpensiveChainLnsNumArcsToConsider

      public int getHeuristicExpensiveChainLnsNumArcsToConsider()
       Number of expensive arcs to consider cutting in the
       FilteredHeuristicExpensiveChainLNSOperator operator.
       
      int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
      Specified by:
      getHeuristicExpensiveChainLnsNumArcsToConsider in interface RoutingSearchParametersOrBuilder
      Returns:
      The heuristicExpensiveChainLnsNumArcsToConsider.
    • setHeuristicExpensiveChainLnsNumArcsToConsider

      public RoutingSearchParameters.Builder setHeuristicExpensiveChainLnsNumArcsToConsider​(int value)
       Number of expensive arcs to consider cutting in the
       FilteredHeuristicExpensiveChainLNSOperator operator.
       
      int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
      Parameters:
      value - The heuristicExpensiveChainLnsNumArcsToConsider to set.
      Returns:
      This builder for chaining.
    • clearHeuristicExpensiveChainLnsNumArcsToConsider

      public RoutingSearchParameters.Builder clearHeuristicExpensiveChainLnsNumArcsToConsider()
       Number of expensive arcs to consider cutting in the
       FilteredHeuristicExpensiveChainLNSOperator operator.
       
      int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
      Returns:
      This builder for chaining.
    • getHeuristicCloseNodesLnsNumNodes

      public int getHeuristicCloseNodesLnsNumNodes()
       Number of closest nodes to consider for each node during the destruction
       phase of the FilteredHeuristicCloseNodesLNSOperator.
       
      int32 heuristic_close_nodes_lns_num_nodes = 35;
      Specified by:
      getHeuristicCloseNodesLnsNumNodes in interface RoutingSearchParametersOrBuilder
      Returns:
      The heuristicCloseNodesLnsNumNodes.
    • setHeuristicCloseNodesLnsNumNodes

      public RoutingSearchParameters.Builder setHeuristicCloseNodesLnsNumNodes​(int value)
       Number of closest nodes to consider for each node during the destruction
       phase of the FilteredHeuristicCloseNodesLNSOperator.
       
      int32 heuristic_close_nodes_lns_num_nodes = 35;
      Parameters:
      value - The heuristicCloseNodesLnsNumNodes to set.
      Returns:
      This builder for chaining.
    • clearHeuristicCloseNodesLnsNumNodes

      public RoutingSearchParameters.Builder clearHeuristicCloseNodesLnsNumNodes()
       Number of closest nodes to consider for each node during the destruction
       phase of the FilteredHeuristicCloseNodesLNSOperator.
       
      int32 heuristic_close_nodes_lns_num_nodes = 35;
      Returns:
      This builder for chaining.
    • getLocalSearchMetaheuristicValue

      public int getLocalSearchMetaheuristicValue()
       Local search metaheuristics used to guide the search.
       
      .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
      Specified by:
      getLocalSearchMetaheuristicValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for localSearchMetaheuristic.
    • setLocalSearchMetaheuristicValue

      public RoutingSearchParameters.Builder setLocalSearchMetaheuristicValue​(int value)
       Local search metaheuristics used to guide the search.
       
      .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
      Parameters:
      value - The enum numeric value on the wire for localSearchMetaheuristic to set.
      Returns:
      This builder for chaining.
    • getLocalSearchMetaheuristic

      public LocalSearchMetaheuristic.Value getLocalSearchMetaheuristic()
       Local search metaheuristics used to guide the search.
       
      .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
      Specified by:
      getLocalSearchMetaheuristic in interface RoutingSearchParametersOrBuilder
      Returns:
      The localSearchMetaheuristic.
    • setLocalSearchMetaheuristic

      public RoutingSearchParameters.Builder setLocalSearchMetaheuristic​(LocalSearchMetaheuristic.Value value)
       Local search metaheuristics used to guide the search.
       
      .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
      Parameters:
      value - The localSearchMetaheuristic to set.
      Returns:
      This builder for chaining.
    • clearLocalSearchMetaheuristic

      public RoutingSearchParameters.Builder clearLocalSearchMetaheuristic()
       Local search metaheuristics used to guide the search.
       
      .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
      Returns:
      This builder for chaining.
    • getGuidedLocalSearchLambdaCoefficient

      public double getGuidedLocalSearchLambdaCoefficient()
       These are advanced settings which should not be modified unless you know
       what you are doing.
       Lambda coefficient used to penalize arc costs when GUIDED_LOCAL_SEARCH is
       used. Must be positive.
       
      double guided_local_search_lambda_coefficient = 5;
      Specified by:
      getGuidedLocalSearchLambdaCoefficient in interface RoutingSearchParametersOrBuilder
      Returns:
      The guidedLocalSearchLambdaCoefficient.
    • setGuidedLocalSearchLambdaCoefficient

      public RoutingSearchParameters.Builder setGuidedLocalSearchLambdaCoefficient​(double value)
       These are advanced settings which should not be modified unless you know
       what you are doing.
       Lambda coefficient used to penalize arc costs when GUIDED_LOCAL_SEARCH is
       used. Must be positive.
       
      double guided_local_search_lambda_coefficient = 5;
      Parameters:
      value - The guidedLocalSearchLambdaCoefficient to set.
      Returns:
      This builder for chaining.
    • clearGuidedLocalSearchLambdaCoefficient

      public RoutingSearchParameters.Builder clearGuidedLocalSearchLambdaCoefficient()
       These are advanced settings which should not be modified unless you know
       what you are doing.
       Lambda coefficient used to penalize arc costs when GUIDED_LOCAL_SEARCH is
       used. Must be positive.
       
      double guided_local_search_lambda_coefficient = 5;
      Returns:
      This builder for chaining.
    • getUseDepthFirstSearch

      public boolean getUseDepthFirstSearch()
       --- Search control ---
       If true, the solver should use depth-first search rather than local search
       to solve the problem.
       
      bool use_depth_first_search = 6;
      Specified by:
      getUseDepthFirstSearch in interface RoutingSearchParametersOrBuilder
      Returns:
      The useDepthFirstSearch.
    • setUseDepthFirstSearch

      public RoutingSearchParameters.Builder setUseDepthFirstSearch​(boolean value)
       --- Search control ---
       If true, the solver should use depth-first search rather than local search
       to solve the problem.
       
      bool use_depth_first_search = 6;
      Parameters:
      value - The useDepthFirstSearch to set.
      Returns:
      This builder for chaining.
    • clearUseDepthFirstSearch

      public RoutingSearchParameters.Builder clearUseDepthFirstSearch()
       --- Search control ---
       If true, the solver should use depth-first search rather than local search
       to solve the problem.
       
      bool use_depth_first_search = 6;
      Returns:
      This builder for chaining.
    • getUseCpValue

      public int getUseCpValue()
       If true, use the CP solver to find a solution. Either local or depth-first
       search will be used depending on the value of use_depth_first_search. Will
       be run before the CP-SAT solver (cf. use_cp_sat).
       
      .operations_research.OptionalBoolean use_cp = 28;
      Specified by:
      getUseCpValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for useCp.
    • setUseCpValue

      public RoutingSearchParameters.Builder setUseCpValue​(int value)
       If true, use the CP solver to find a solution. Either local or depth-first
       search will be used depending on the value of use_depth_first_search. Will
       be run before the CP-SAT solver (cf. use_cp_sat).
       
      .operations_research.OptionalBoolean use_cp = 28;
      Parameters:
      value - The enum numeric value on the wire for useCp to set.
      Returns:
      This builder for chaining.
    • getUseCp

      public OptionalBoolean getUseCp()
       If true, use the CP solver to find a solution. Either local or depth-first
       search will be used depending on the value of use_depth_first_search. Will
       be run before the CP-SAT solver (cf. use_cp_sat).
       
      .operations_research.OptionalBoolean use_cp = 28;
      Specified by:
      getUseCp in interface RoutingSearchParametersOrBuilder
      Returns:
      The useCp.
    • setUseCp

       If true, use the CP solver to find a solution. Either local or depth-first
       search will be used depending on the value of use_depth_first_search. Will
       be run before the CP-SAT solver (cf. use_cp_sat).
       
      .operations_research.OptionalBoolean use_cp = 28;
      Parameters:
      value - The useCp to set.
      Returns:
      This builder for chaining.
    • clearUseCp

      public RoutingSearchParameters.Builder clearUseCp()
       If true, use the CP solver to find a solution. Either local or depth-first
       search will be used depending on the value of use_depth_first_search. Will
       be run before the CP-SAT solver (cf. use_cp_sat).
       
      .operations_research.OptionalBoolean use_cp = 28;
      Returns:
      This builder for chaining.
    • getUseCpSatValue

      public int getUseCpSatValue()
       If true, use the CP-SAT solver to find a solution. If use_cp is also true,
       the CP-SAT solver will be run after the CP solver if there is time
       remaining and will use the CP solution as a hint for the CP-SAT search.
       As of 5/2019, only TSP models can be solved.
       
      .operations_research.OptionalBoolean use_cp_sat = 27;
      Specified by:
      getUseCpSatValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for useCpSat.
    • setUseCpSatValue

      public RoutingSearchParameters.Builder setUseCpSatValue​(int value)
       If true, use the CP-SAT solver to find a solution. If use_cp is also true,
       the CP-SAT solver will be run after the CP solver if there is time
       remaining and will use the CP solution as a hint for the CP-SAT search.
       As of 5/2019, only TSP models can be solved.
       
      .operations_research.OptionalBoolean use_cp_sat = 27;
      Parameters:
      value - The enum numeric value on the wire for useCpSat to set.
      Returns:
      This builder for chaining.
    • getUseCpSat

      public OptionalBoolean getUseCpSat()
       If true, use the CP-SAT solver to find a solution. If use_cp is also true,
       the CP-SAT solver will be run after the CP solver if there is time
       remaining and will use the CP solution as a hint for the CP-SAT search.
       As of 5/2019, only TSP models can be solved.
       
      .operations_research.OptionalBoolean use_cp_sat = 27;
      Specified by:
      getUseCpSat in interface RoutingSearchParametersOrBuilder
      Returns:
      The useCpSat.
    • setUseCpSat

      public RoutingSearchParameters.Builder setUseCpSat​(OptionalBoolean value)
       If true, use the CP-SAT solver to find a solution. If use_cp is also true,
       the CP-SAT solver will be run after the CP solver if there is time
       remaining and will use the CP solution as a hint for the CP-SAT search.
       As of 5/2019, only TSP models can be solved.
       
      .operations_research.OptionalBoolean use_cp_sat = 27;
      Parameters:
      value - The useCpSat to set.
      Returns:
      This builder for chaining.
    • clearUseCpSat

      public RoutingSearchParameters.Builder clearUseCpSat()
       If true, use the CP-SAT solver to find a solution. If use_cp is also true,
       the CP-SAT solver will be run after the CP solver if there is time
       remaining and will use the CP solution as a hint for the CP-SAT search.
       As of 5/2019, only TSP models can be solved.
       
      .operations_research.OptionalBoolean use_cp_sat = 27;
      Returns:
      This builder for chaining.
    • getContinuousSchedulingSolverValue

      public int getContinuousSchedulingSolverValue()
      .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
      Specified by:
      getContinuousSchedulingSolverValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for continuousSchedulingSolver.
    • setContinuousSchedulingSolverValue

      public RoutingSearchParameters.Builder setContinuousSchedulingSolverValue​(int value)
      .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
      Parameters:
      value - The enum numeric value on the wire for continuousSchedulingSolver to set.
      Returns:
      This builder for chaining.
    • getContinuousSchedulingSolver

      public RoutingSearchParameters.SchedulingSolver getContinuousSchedulingSolver()
      .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
      Specified by:
      getContinuousSchedulingSolver in interface RoutingSearchParametersOrBuilder
      Returns:
      The continuousSchedulingSolver.
    • setContinuousSchedulingSolver

      public RoutingSearchParameters.Builder setContinuousSchedulingSolver​(RoutingSearchParameters.SchedulingSolver value)
      .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
      Parameters:
      value - The continuousSchedulingSolver to set.
      Returns:
      This builder for chaining.
    • clearContinuousSchedulingSolver

      public RoutingSearchParameters.Builder clearContinuousSchedulingSolver()
      .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
      Returns:
      This builder for chaining.
    • getMixedIntegerSchedulingSolverValue

      public int getMixedIntegerSchedulingSolverValue()
      .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
      Specified by:
      getMixedIntegerSchedulingSolverValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for mixedIntegerSchedulingSolver.
    • setMixedIntegerSchedulingSolverValue

      public RoutingSearchParameters.Builder setMixedIntegerSchedulingSolverValue​(int value)
      .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
      Parameters:
      value - The enum numeric value on the wire for mixedIntegerSchedulingSolver to set.
      Returns:
      This builder for chaining.
    • getMixedIntegerSchedulingSolver

      public RoutingSearchParameters.SchedulingSolver getMixedIntegerSchedulingSolver()
      .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
      Specified by:
      getMixedIntegerSchedulingSolver in interface RoutingSearchParametersOrBuilder
      Returns:
      The mixedIntegerSchedulingSolver.
    • setMixedIntegerSchedulingSolver

      public RoutingSearchParameters.Builder setMixedIntegerSchedulingSolver​(RoutingSearchParameters.SchedulingSolver value)
      .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
      Parameters:
      value - The mixedIntegerSchedulingSolver to set.
      Returns:
      This builder for chaining.
    • clearMixedIntegerSchedulingSolver

      public RoutingSearchParameters.Builder clearMixedIntegerSchedulingSolver()
      .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
      Returns:
      This builder for chaining.
    • getOptimizationStep

      public double getOptimizationStep()
       Minimum step by which the solution must be improved in local search. 0
       means "unspecified". If this value is fractional, it will get rounded to
       the nearest integer.
       
      double optimization_step = 7;
      Specified by:
      getOptimizationStep in interface RoutingSearchParametersOrBuilder
      Returns:
      The optimizationStep.
    • setOptimizationStep

      public RoutingSearchParameters.Builder setOptimizationStep​(double value)
       Minimum step by which the solution must be improved in local search. 0
       means "unspecified". If this value is fractional, it will get rounded to
       the nearest integer.
       
      double optimization_step = 7;
      Parameters:
      value - The optimizationStep to set.
      Returns:
      This builder for chaining.
    • clearOptimizationStep

      public RoutingSearchParameters.Builder clearOptimizationStep()
       Minimum step by which the solution must be improved in local search. 0
       means "unspecified". If this value is fractional, it will get rounded to
       the nearest integer.
       
      double optimization_step = 7;
      Returns:
      This builder for chaining.
    • getNumberOfSolutionsToCollect

      public int getNumberOfSolutionsToCollect()
       Number of solutions to collect during the search. Corresponds to the best
       solutions found during the search. 0 means "unspecified".
       
      int32 number_of_solutions_to_collect = 17;
      Specified by:
      getNumberOfSolutionsToCollect in interface RoutingSearchParametersOrBuilder
      Returns:
      The numberOfSolutionsToCollect.
    • setNumberOfSolutionsToCollect

      public RoutingSearchParameters.Builder setNumberOfSolutionsToCollect​(int value)
       Number of solutions to collect during the search. Corresponds to the best
       solutions found during the search. 0 means "unspecified".
       
      int32 number_of_solutions_to_collect = 17;
      Parameters:
      value - The numberOfSolutionsToCollect to set.
      Returns:
      This builder for chaining.
    • clearNumberOfSolutionsToCollect

      public RoutingSearchParameters.Builder clearNumberOfSolutionsToCollect()
       Number of solutions to collect during the search. Corresponds to the best
       solutions found during the search. 0 means "unspecified".
       
      int32 number_of_solutions_to_collect = 17;
      Returns:
      This builder for chaining.
    • getSolutionLimit

      public long getSolutionLimit()
       -- Search limits --
       Limit to the number of solutions generated during the search. 0 means
       "unspecified".
       
      int64 solution_limit = 8;
      Specified by:
      getSolutionLimit in interface RoutingSearchParametersOrBuilder
      Returns:
      The solutionLimit.
    • setSolutionLimit

      public RoutingSearchParameters.Builder setSolutionLimit​(long value)
       -- Search limits --
       Limit to the number of solutions generated during the search. 0 means
       "unspecified".
       
      int64 solution_limit = 8;
      Parameters:
      value - The solutionLimit to set.
      Returns:
      This builder for chaining.
    • clearSolutionLimit

      public RoutingSearchParameters.Builder clearSolutionLimit()
       -- Search limits --
       Limit to the number of solutions generated during the search. 0 means
       "unspecified".
       
      int64 solution_limit = 8;
      Returns:
      This builder for chaining.
    • hasTimeLimit

      public boolean hasTimeLimit()
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
      Specified by:
      hasTimeLimit in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the timeLimit field is set.
    • getTimeLimit

      public com.google.protobuf.Duration getTimeLimit()
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
      Specified by:
      getTimeLimit in interface RoutingSearchParametersOrBuilder
      Returns:
      The timeLimit.
    • setTimeLimit

      public RoutingSearchParameters.Builder setTimeLimit​(com.google.protobuf.Duration value)
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
    • setTimeLimit

      public RoutingSearchParameters.Builder setTimeLimit​(com.google.protobuf.Duration.Builder builderForValue)
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
    • mergeTimeLimit

      public RoutingSearchParameters.Builder mergeTimeLimit​(com.google.protobuf.Duration value)
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
    • clearTimeLimit

      public RoutingSearchParameters.Builder clearTimeLimit()
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
    • getTimeLimitBuilder

      public com.google.protobuf.Duration.Builder getTimeLimitBuilder()
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
    • getTimeLimitOrBuilder

      public com.google.protobuf.DurationOrBuilder getTimeLimitOrBuilder()
       Limit to the time spent in the search.
       
      .google.protobuf.Duration time_limit = 9;
      Specified by:
      getTimeLimitOrBuilder in interface RoutingSearchParametersOrBuilder
    • hasLnsTimeLimit

      public boolean hasLnsTimeLimit()
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
      Specified by:
      hasLnsTimeLimit in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the lnsTimeLimit field is set.
    • getLnsTimeLimit

      public com.google.protobuf.Duration getLnsTimeLimit()
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
      Specified by:
      getLnsTimeLimit in interface RoutingSearchParametersOrBuilder
      Returns:
      The lnsTimeLimit.
    • setLnsTimeLimit

      public RoutingSearchParameters.Builder setLnsTimeLimit​(com.google.protobuf.Duration value)
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
    • setLnsTimeLimit

      public RoutingSearchParameters.Builder setLnsTimeLimit​(com.google.protobuf.Duration.Builder builderForValue)
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
    • mergeLnsTimeLimit

      public RoutingSearchParameters.Builder mergeLnsTimeLimit​(com.google.protobuf.Duration value)
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
    • clearLnsTimeLimit

      public RoutingSearchParameters.Builder clearLnsTimeLimit()
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
    • getLnsTimeLimitBuilder

      public com.google.protobuf.Duration.Builder getLnsTimeLimitBuilder()
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
    • getLnsTimeLimitOrBuilder

      public com.google.protobuf.DurationOrBuilder getLnsTimeLimitOrBuilder()
       Limit to the time spent in the completion search for each local search
       neighbor.
       
      .google.protobuf.Duration lns_time_limit = 10;
      Specified by:
      getLnsTimeLimitOrBuilder in interface RoutingSearchParametersOrBuilder
    • hasImprovementLimitParameters

      public boolean hasImprovementLimitParameters()
       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
      Specified by:
      hasImprovementLimitParameters in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the improvementLimitParameters field is set.
    • getImprovementLimitParameters

      public RoutingSearchParameters.ImprovementSearchLimitParameters getImprovementLimitParameters()
       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
      Specified by:
      getImprovementLimitParameters in interface RoutingSearchParametersOrBuilder
      Returns:
      The improvementLimitParameters.
    • setImprovementLimitParameters

       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
    • setImprovementLimitParameters

       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
    • mergeImprovementLimitParameters

       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
    • clearImprovementLimitParameters

      public RoutingSearchParameters.Builder clearImprovementLimitParameters()
       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
    • getImprovementLimitParametersBuilder

      public RoutingSearchParameters.ImprovementSearchLimitParameters.Builder getImprovementLimitParametersBuilder()
       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
    • getImprovementLimitParametersOrBuilder

      public RoutingSearchParameters.ImprovementSearchLimitParametersOrBuilder getImprovementLimitParametersOrBuilder()
       The improvement search limit is added to the solver if the following
       parameters are set.
       
      .operations_research.RoutingSearchParameters.ImprovementSearchLimitParameters improvement_limit_parameters = 37;
      Specified by:
      getImprovementLimitParametersOrBuilder in interface RoutingSearchParametersOrBuilder
    • getUseFullPropagation

      public boolean getUseFullPropagation()
       --- Propagation control ---
       These are advanced settings which should not be modified unless you know
       what you are doing.
       Use constraints with full propagation in routing model (instead of 'light'
       propagation only). Full propagation is only necessary when using
       depth-first search or for models which require strong propagation to
       finalize the value of secondary variables.
       Changing this setting to true will slow down the search in most cases and
       increase memory consumption in all cases.
       
      bool use_full_propagation = 11;
      Specified by:
      getUseFullPropagation in interface RoutingSearchParametersOrBuilder
      Returns:
      The useFullPropagation.
    • setUseFullPropagation

      public RoutingSearchParameters.Builder setUseFullPropagation​(boolean value)
       --- Propagation control ---
       These are advanced settings which should not be modified unless you know
       what you are doing.
       Use constraints with full propagation in routing model (instead of 'light'
       propagation only). Full propagation is only necessary when using
       depth-first search or for models which require strong propagation to
       finalize the value of secondary variables.
       Changing this setting to true will slow down the search in most cases and
       increase memory consumption in all cases.
       
      bool use_full_propagation = 11;
      Parameters:
      value - The useFullPropagation to set.
      Returns:
      This builder for chaining.
    • clearUseFullPropagation

      public RoutingSearchParameters.Builder clearUseFullPropagation()
       --- Propagation control ---
       These are advanced settings which should not be modified unless you know
       what you are doing.
       Use constraints with full propagation in routing model (instead of 'light'
       propagation only). Full propagation is only necessary when using
       depth-first search or for models which require strong propagation to
       finalize the value of secondary variables.
       Changing this setting to true will slow down the search in most cases and
       increase memory consumption in all cases.
       
      bool use_full_propagation = 11;
      Returns:
      This builder for chaining.
    • getLogSearch

      public boolean getLogSearch()
       --- Miscellaneous ---
       Some of these are advanced settings which should not be modified unless you
       know what you are doing.
       Activates search logging. For each solution found during the search, the
       following will be displayed: its objective value, the maximum objective
       value since the beginning of the search, the elapsed time since the
       beginning of the search, the number of branches explored in the search
       tree, the number of failures in the search tree, the depth of the search
       tree, the number of local search neighbors explored, the number of local
       search neighbors filtered by local search filters, the number of local
       search neighbors accepted, the total memory used and the percentage of the
       search done.
       
      bool log_search = 13;
      Specified by:
      getLogSearch in interface RoutingSearchParametersOrBuilder
      Returns:
      The logSearch.
    • setLogSearch

      public RoutingSearchParameters.Builder setLogSearch​(boolean value)
       --- Miscellaneous ---
       Some of these are advanced settings which should not be modified unless you
       know what you are doing.
       Activates search logging. For each solution found during the search, the
       following will be displayed: its objective value, the maximum objective
       value since the beginning of the search, the elapsed time since the
       beginning of the search, the number of branches explored in the search
       tree, the number of failures in the search tree, the depth of the search
       tree, the number of local search neighbors explored, the number of local
       search neighbors filtered by local search filters, the number of local
       search neighbors accepted, the total memory used and the percentage of the
       search done.
       
      bool log_search = 13;
      Parameters:
      value - The logSearch to set.
      Returns:
      This builder for chaining.
    • clearLogSearch

      public RoutingSearchParameters.Builder clearLogSearch()
       --- Miscellaneous ---
       Some of these are advanced settings which should not be modified unless you
       know what you are doing.
       Activates search logging. For each solution found during the search, the
       following will be displayed: its objective value, the maximum objective
       value since the beginning of the search, the elapsed time since the
       beginning of the search, the number of branches explored in the search
       tree, the number of failures in the search tree, the depth of the search
       tree, the number of local search neighbors explored, the number of local
       search neighbors filtered by local search filters, the number of local
       search neighbors accepted, the total memory used and the percentage of the
       search done.
       
      bool log_search = 13;
      Returns:
      This builder for chaining.
    • getLogCostScalingFactor

      public double getLogCostScalingFactor()
       In logs, cost values will be scaled and offset by the given values in the
       following way: log_cost_scaling_factor * (cost + log_cost_offset)
       
      double log_cost_scaling_factor = 22;
      Specified by:
      getLogCostScalingFactor in interface RoutingSearchParametersOrBuilder
      Returns:
      The logCostScalingFactor.
    • setLogCostScalingFactor

      public RoutingSearchParameters.Builder setLogCostScalingFactor​(double value)
       In logs, cost values will be scaled and offset by the given values in the
       following way: log_cost_scaling_factor * (cost + log_cost_offset)
       
      double log_cost_scaling_factor = 22;
      Parameters:
      value - The logCostScalingFactor to set.
      Returns:
      This builder for chaining.
    • clearLogCostScalingFactor

      public RoutingSearchParameters.Builder clearLogCostScalingFactor()
       In logs, cost values will be scaled and offset by the given values in the
       following way: log_cost_scaling_factor * (cost + log_cost_offset)
       
      double log_cost_scaling_factor = 22;
      Returns:
      This builder for chaining.
    • getLogCostOffset

      public double getLogCostOffset()
      double log_cost_offset = 29;
      Specified by:
      getLogCostOffset in interface RoutingSearchParametersOrBuilder
      Returns:
      The logCostOffset.
    • setLogCostOffset

      public RoutingSearchParameters.Builder setLogCostOffset​(double value)
      double log_cost_offset = 29;
      Parameters:
      value - The logCostOffset to set.
      Returns:
      This builder for chaining.
    • clearLogCostOffset

      public RoutingSearchParameters.Builder clearLogCostOffset()
      double log_cost_offset = 29;
      Returns:
      This builder for chaining.
    • getLogTag

      public java.lang.String getLogTag()
       In logs, this tag will be appended to each line corresponding to a new
       solution. Useful to sort out logs when several solves are run in parallel.
       
      string log_tag = 36;
      Specified by:
      getLogTag in interface RoutingSearchParametersOrBuilder
      Returns:
      The logTag.
    • getLogTagBytes

      public com.google.protobuf.ByteString getLogTagBytes()
       In logs, this tag will be appended to each line corresponding to a new
       solution. Useful to sort out logs when several solves are run in parallel.
       
      string log_tag = 36;
      Specified by:
      getLogTagBytes in interface RoutingSearchParametersOrBuilder
      Returns:
      The bytes for logTag.
    • setLogTag

      public RoutingSearchParameters.Builder setLogTag​(java.lang.String value)
       In logs, this tag will be appended to each line corresponding to a new
       solution. Useful to sort out logs when several solves are run in parallel.
       
      string log_tag = 36;
      Parameters:
      value - The logTag to set.
      Returns:
      This builder for chaining.
    • clearLogTag

      public RoutingSearchParameters.Builder clearLogTag()
       In logs, this tag will be appended to each line corresponding to a new
       solution. Useful to sort out logs when several solves are run in parallel.
       
      string log_tag = 36;
      Returns:
      This builder for chaining.
    • setLogTagBytes

      public RoutingSearchParameters.Builder setLogTagBytes​(com.google.protobuf.ByteString value)
       In logs, this tag will be appended to each line corresponding to a new
       solution. Useful to sort out logs when several solves are run in parallel.
       
      string log_tag = 36;
      Parameters:
      value - The bytes for logTag to set.
      Returns:
      This builder for chaining.
    • setUnknownFields

      public final RoutingSearchParameters.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<RoutingSearchParameters.Builder>
    • mergeUnknownFields

      public final RoutingSearchParameters.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<RoutingSearchParameters.Builder>