Class RoutingSearchParameters.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<RoutingSearchParameters.Builder>
com.google.protobuf.GeneratedMessage.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, Cloneable
Enclosing class:
RoutingSearchParameters

public static final class RoutingSearchParameters.Builder extends com.google.protobuf.GeneratedMessage.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: 68
 
Protobuf type operations_research.RoutingSearchParameters
  • Method Details

    • getDescriptor

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

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.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.GeneratedMessage.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.GeneratedMessage.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
    • 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.GeneratedMessage.Builder<RoutingSearchParameters.Builder>
    • mergeFrom

      public RoutingSearchParameters.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws 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:
      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.
    • 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.
    • getLocalCheapestInsertionPickupDeliveryStrategyValue

      public int getLocalCheapestInsertionPickupDeliveryStrategyValue()
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_insertion_pickup_delivery_strategy = 49;
      Specified by:
      getLocalCheapestInsertionPickupDeliveryStrategyValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for localCheapestInsertionPickupDeliveryStrategy.
    • setLocalCheapestInsertionPickupDeliveryStrategyValue

      public RoutingSearchParameters.Builder setLocalCheapestInsertionPickupDeliveryStrategyValue(int value)
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_insertion_pickup_delivery_strategy = 49;
      Parameters:
      value - The enum numeric value on the wire for localCheapestInsertionPickupDeliveryStrategy to set.
      Returns:
      This builder for chaining.
    • getLocalCheapestInsertionPickupDeliveryStrategy

      public RoutingSearchParameters.PairInsertionStrategy getLocalCheapestInsertionPickupDeliveryStrategy()
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_insertion_pickup_delivery_strategy = 49;
      Specified by:
      getLocalCheapestInsertionPickupDeliveryStrategy in interface RoutingSearchParametersOrBuilder
      Returns:
      The localCheapestInsertionPickupDeliveryStrategy.
    • setLocalCheapestInsertionPickupDeliveryStrategy

      public RoutingSearchParameters.Builder setLocalCheapestInsertionPickupDeliveryStrategy(RoutingSearchParameters.PairInsertionStrategy value)
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_insertion_pickup_delivery_strategy = 49;
      Parameters:
      value - The localCheapestInsertionPickupDeliveryStrategy to set.
      Returns:
      This builder for chaining.
    • clearLocalCheapestInsertionPickupDeliveryStrategy

      public RoutingSearchParameters.Builder clearLocalCheapestInsertionPickupDeliveryStrategy()
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_insertion_pickup_delivery_strategy = 49;
      Returns:
      This builder for chaining.
    • getLocalCheapestCostInsertionPickupDeliveryStrategyValue

      public int getLocalCheapestCostInsertionPickupDeliveryStrategyValue()
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest cost insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_cost_insertion_pickup_delivery_strategy = 55;
      Specified by:
      getLocalCheapestCostInsertionPickupDeliveryStrategyValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for localCheapestCostInsertionPickupDeliveryStrategy.
    • setLocalCheapestCostInsertionPickupDeliveryStrategyValue

      public RoutingSearchParameters.Builder setLocalCheapestCostInsertionPickupDeliveryStrategyValue(int value)
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest cost insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_cost_insertion_pickup_delivery_strategy = 55;
      Parameters:
      value - The enum numeric value on the wire for localCheapestCostInsertionPickupDeliveryStrategy to set.
      Returns:
      This builder for chaining.
    • getLocalCheapestCostInsertionPickupDeliveryStrategy

      public RoutingSearchParameters.PairInsertionStrategy getLocalCheapestCostInsertionPickupDeliveryStrategy()
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest cost insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_cost_insertion_pickup_delivery_strategy = 55;
      Specified by:
      getLocalCheapestCostInsertionPickupDeliveryStrategy in interface RoutingSearchParametersOrBuilder
      Returns:
      The localCheapestCostInsertionPickupDeliveryStrategy.
    • setLocalCheapestCostInsertionPickupDeliveryStrategy

      public RoutingSearchParameters.Builder setLocalCheapestCostInsertionPickupDeliveryStrategy(RoutingSearchParameters.PairInsertionStrategy value)
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest cost insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_cost_insertion_pickup_delivery_strategy = 55;
      Parameters:
      value - The localCheapestCostInsertionPickupDeliveryStrategy to set.
      Returns:
      This builder for chaining.
    • clearLocalCheapestCostInsertionPickupDeliveryStrategy

      public RoutingSearchParameters.Builder clearLocalCheapestCostInsertionPickupDeliveryStrategy()
       Choice of insertion strategy for pickup/delivery pairs, used in local
       cheapest cost insertion, both first solution heuristic and LNS.
       
      .operations_research.RoutingSearchParameters.PairInsertionStrategy local_cheapest_cost_insertion_pickup_delivery_strategy = 55;
      Returns:
      This builder for chaining.
    • getLocalCheapestInsertionSortingPropertiesList

      public List<RoutingSearchParameters.InsertionSortingProperty> getLocalCheapestInsertionSortingPropertiesList()
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Specified by:
      getLocalCheapestInsertionSortingPropertiesList in interface RoutingSearchParametersOrBuilder
      Returns:
      A list containing the localCheapestInsertionSortingProperties.
    • getLocalCheapestInsertionSortingPropertiesCount

      public int getLocalCheapestInsertionSortingPropertiesCount()
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Specified by:
      getLocalCheapestInsertionSortingPropertiesCount in interface RoutingSearchParametersOrBuilder
      Returns:
      The count of localCheapestInsertionSortingProperties.
    • getLocalCheapestInsertionSortingProperties

      public RoutingSearchParameters.InsertionSortingProperty getLocalCheapestInsertionSortingProperties(int index)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Specified by:
      getLocalCheapestInsertionSortingProperties in interface RoutingSearchParametersOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The localCheapestInsertionSortingProperties at the given index.
    • setLocalCheapestInsertionSortingProperties

      public RoutingSearchParameters.Builder setLocalCheapestInsertionSortingProperties(int index, RoutingSearchParameters.InsertionSortingProperty value)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Parameters:
      index - The index to set the value at.
      value - The localCheapestInsertionSortingProperties to set.
      Returns:
      This builder for chaining.
    • addLocalCheapestInsertionSortingProperties

      public RoutingSearchParameters.Builder addLocalCheapestInsertionSortingProperties(RoutingSearchParameters.InsertionSortingProperty value)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Parameters:
      value - The localCheapestInsertionSortingProperties to add.
      Returns:
      This builder for chaining.
    • addAllLocalCheapestInsertionSortingProperties

      public RoutingSearchParameters.Builder addAllLocalCheapestInsertionSortingProperties(Iterable<? extends RoutingSearchParameters.InsertionSortingProperty> values)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Parameters:
      values - The localCheapestInsertionSortingProperties to add.
      Returns:
      This builder for chaining.
    • clearLocalCheapestInsertionSortingProperties

      public RoutingSearchParameters.Builder clearLocalCheapestInsertionSortingProperties()
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Returns:
      This builder for chaining.
    • getLocalCheapestInsertionSortingPropertiesValueList

      public List<Integer> getLocalCheapestInsertionSortingPropertiesValueList()
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Specified by:
      getLocalCheapestInsertionSortingPropertiesValueList in interface RoutingSearchParametersOrBuilder
      Returns:
      A list containing the enum numeric values on the wire for localCheapestInsertionSortingProperties.
    • getLocalCheapestInsertionSortingPropertiesValue

      public int getLocalCheapestInsertionSortingPropertiesValue(int index)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Specified by:
      getLocalCheapestInsertionSortingPropertiesValue in interface RoutingSearchParametersOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The enum numeric value on the wire of localCheapestInsertionSortingProperties at the given index.
    • setLocalCheapestInsertionSortingPropertiesValue

      public RoutingSearchParameters.Builder setLocalCheapestInsertionSortingPropertiesValue(int index, int value)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Parameters:
      index - The index to set the value at.
      value - The enum numeric value on the wire for localCheapestInsertionSortingProperties to set.
      Returns:
      This builder for chaining.
    • addLocalCheapestInsertionSortingPropertiesValue

      public RoutingSearchParameters.Builder addLocalCheapestInsertionSortingPropertiesValue(int value)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Parameters:
      value - The enum numeric value on the wire for localCheapestInsertionSortingProperties to add.
      Returns:
      This builder for chaining.
    • addAllLocalCheapestInsertionSortingPropertiesValue

      public RoutingSearchParameters.Builder addAllLocalCheapestInsertionSortingPropertiesValue(Iterable<Integer> values)
       The properties used to sort insertion entries in the local cheapest
       insertion heuristic, in *decreasing* order of priority. The properties
       listed here are applied hierarchically, from highest to lowest priority.
       When no properties are provided
       (SORTING_PROPERTY_ALLOWED_VEHICLES, SORTING_PROPERTY_PENALTY)
       is used by default.
       
      repeated .operations_research.RoutingSearchParameters.InsertionSortingProperty local_cheapest_insertion_sorting_properties = 67;
      Parameters:
      values - The enum numeric values on the wire for localCheapestInsertionSortingProperties to add.
      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.
    • getFirstSolutionOptimizationPeriod

      public int getFirstSolutionOptimizationPeriod()
       If non zero, a period p indicates that every p node insertions or additions
       to a path, an optimization of the current partial solution will be
       performed. As of 12/2023:
       - this requires that a secondary routing model has been passed to the main
       one,
       - this is only supported by LOCAL_CHEAPEST_INSERTION and
       LOCAL_CHEAPEST_COST_INSERTION.
       
      int32 first_solution_optimization_period = 59;
      Specified by:
      getFirstSolutionOptimizationPeriod in interface RoutingSearchParametersOrBuilder
      Returns:
      The firstSolutionOptimizationPeriod.
    • setFirstSolutionOptimizationPeriod

      public RoutingSearchParameters.Builder setFirstSolutionOptimizationPeriod(int value)
       If non zero, a period p indicates that every p node insertions or additions
       to a path, an optimization of the current partial solution will be
       performed. As of 12/2023:
       - this requires that a secondary routing model has been passed to the main
       one,
       - this is only supported by LOCAL_CHEAPEST_INSERTION and
       LOCAL_CHEAPEST_COST_INSERTION.
       
      int32 first_solution_optimization_period = 59;
      Parameters:
      value - The firstSolutionOptimizationPeriod to set.
      Returns:
      This builder for chaining.
    • clearFirstSolutionOptimizationPeriod

      public RoutingSearchParameters.Builder clearFirstSolutionOptimizationPeriod()
       If non zero, a period p indicates that every p node insertions or additions
       to a path, an optimization of the current partial solution will be
       performed. As of 12/2023:
       - this requires that a secondary routing model has been passed to the main
       one,
       - this is only supported by LOCAL_CHEAPEST_INSERTION and
       LOCAL_CHEAPEST_COST_INSERTION.
       
      int32 first_solution_optimization_period = 59;
      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
    • getLsOperatorNeighborsRatio

      public double getLsOperatorNeighborsRatio()
       Neighbors ratio and minimum number of neighbors considered in local
       search operators (see cheapest_insertion_first_solution_neighbors_ratio
       and cheapest_insertion_first_solution_min_neighbors for more information).
       
      double ls_operator_neighbors_ratio = 53;
      Specified by:
      getLsOperatorNeighborsRatio in interface RoutingSearchParametersOrBuilder
      Returns:
      The lsOperatorNeighborsRatio.
    • setLsOperatorNeighborsRatio

      public RoutingSearchParameters.Builder setLsOperatorNeighborsRatio(double value)
       Neighbors ratio and minimum number of neighbors considered in local
       search operators (see cheapest_insertion_first_solution_neighbors_ratio
       and cheapest_insertion_first_solution_min_neighbors for more information).
       
      double ls_operator_neighbors_ratio = 53;
      Parameters:
      value - The lsOperatorNeighborsRatio to set.
      Returns:
      This builder for chaining.
    • clearLsOperatorNeighborsRatio

      public RoutingSearchParameters.Builder clearLsOperatorNeighborsRatio()
       Neighbors ratio and minimum number of neighbors considered in local
       search operators (see cheapest_insertion_first_solution_neighbors_ratio
       and cheapest_insertion_first_solution_min_neighbors for more information).
       
      double ls_operator_neighbors_ratio = 53;
      Returns:
      This builder for chaining.
    • getLsOperatorMinNeighbors

      public int getLsOperatorMinNeighbors()
      int32 ls_operator_min_neighbors = 54;
      Specified by:
      getLsOperatorMinNeighbors in interface RoutingSearchParametersOrBuilder
      Returns:
      The lsOperatorMinNeighbors.
    • setLsOperatorMinNeighbors

      public RoutingSearchParameters.Builder setLsOperatorMinNeighbors(int value)
      int32 ls_operator_min_neighbors = 54;
      Parameters:
      value - The lsOperatorMinNeighbors to set.
      Returns:
      This builder for chaining.
    • clearLsOperatorMinNeighbors

      public RoutingSearchParameters.Builder clearLsOperatorMinNeighbors()
      int32 ls_operator_min_neighbors = 54;
      Returns:
      This builder for chaining.
    • 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.
    • getMaxSwapActiveChainSize

      public int getMaxSwapActiveChainSize()
       Maximum size of the chain to make inactive in SwapActiveChainOperator.
       
      int32 max_swap_active_chain_size = 66;
      Specified by:
      getMaxSwapActiveChainSize in interface RoutingSearchParametersOrBuilder
      Returns:
      The maxSwapActiveChainSize.
    • setMaxSwapActiveChainSize

      public RoutingSearchParameters.Builder setMaxSwapActiveChainSize(int value)
       Maximum size of the chain to make inactive in SwapActiveChainOperator.
       
      int32 max_swap_active_chain_size = 66;
      Parameters:
      value - The maxSwapActiveChainSize to set.
      Returns:
      This builder for chaining.
    • clearMaxSwapActiveChainSize

      public RoutingSearchParameters.Builder clearMaxSwapActiveChainSize()
       Maximum size of the chain to make inactive in SwapActiveChainOperator.
       
      int32 max_swap_active_chain_size = 66;
      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.
    • getLocalSearchMetaheuristicsList

      public List<LocalSearchMetaheuristic.Value> getLocalSearchMetaheuristicsList()
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Specified by:
      getLocalSearchMetaheuristicsList in interface RoutingSearchParametersOrBuilder
      Returns:
      A list containing the localSearchMetaheuristics.
    • getLocalSearchMetaheuristicsCount

      public int getLocalSearchMetaheuristicsCount()
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Specified by:
      getLocalSearchMetaheuristicsCount in interface RoutingSearchParametersOrBuilder
      Returns:
      The count of localSearchMetaheuristics.
    • getLocalSearchMetaheuristics

      public LocalSearchMetaheuristic.Value getLocalSearchMetaheuristics(int index)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Specified by:
      getLocalSearchMetaheuristics in interface RoutingSearchParametersOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The localSearchMetaheuristics at the given index.
    • setLocalSearchMetaheuristics

      public RoutingSearchParameters.Builder setLocalSearchMetaheuristics(int index, LocalSearchMetaheuristic.Value value)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Parameters:
      index - The index to set the value at.
      value - The localSearchMetaheuristics to set.
      Returns:
      This builder for chaining.
    • addLocalSearchMetaheuristics

      public RoutingSearchParameters.Builder addLocalSearchMetaheuristics(LocalSearchMetaheuristic.Value value)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Parameters:
      value - The localSearchMetaheuristics to add.
      Returns:
      This builder for chaining.
    • addAllLocalSearchMetaheuristics

      public RoutingSearchParameters.Builder addAllLocalSearchMetaheuristics(Iterable<? extends LocalSearchMetaheuristic.Value> values)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Parameters:
      values - The localSearchMetaheuristics to add.
      Returns:
      This builder for chaining.
    • clearLocalSearchMetaheuristics

      public RoutingSearchParameters.Builder clearLocalSearchMetaheuristics()
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Returns:
      This builder for chaining.
    • getLocalSearchMetaheuristicsValueList

      public List<Integer> getLocalSearchMetaheuristicsValueList()
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Specified by:
      getLocalSearchMetaheuristicsValueList in interface RoutingSearchParametersOrBuilder
      Returns:
      A list containing the enum numeric values on the wire for localSearchMetaheuristics.
    • getLocalSearchMetaheuristicsValue

      public int getLocalSearchMetaheuristicsValue(int index)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Specified by:
      getLocalSearchMetaheuristicsValue in interface RoutingSearchParametersOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The enum numeric value on the wire of localSearchMetaheuristics at the given index.
    • setLocalSearchMetaheuristicsValue

      public RoutingSearchParameters.Builder setLocalSearchMetaheuristicsValue(int index, int value)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Parameters:
      index - The index to set the value at.
      value - The enum numeric value on the wire for localSearchMetaheuristics to set.
      Returns:
      This builder for chaining.
    • addLocalSearchMetaheuristicsValue

      public RoutingSearchParameters.Builder addLocalSearchMetaheuristicsValue(int value)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Parameters:
      value - The enum numeric value on the wire for localSearchMetaheuristics to add.
      Returns:
      This builder for chaining.
    • addAllLocalSearchMetaheuristicsValue

      public RoutingSearchParameters.Builder addAllLocalSearchMetaheuristicsValue(Iterable<Integer> values)
       Local search metaheuristics alternatively used to guide the search. Every
       num_max_local_optima_before_metaheuristic_switch local minima found by a
       metaheurisitic, the solver will switch to the next metaheuristic. Cannot be
       defined if local_search_metaheuristic is different from UNSET or AUTOMATIC.
       
      repeated .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristics = 63;
      Parameters:
      values - The enum numeric values on the wire for localSearchMetaheuristics to add.
      Returns:
      This builder for chaining.
    • getNumMaxLocalOptimaBeforeMetaheuristicSwitch

      public int getNumMaxLocalOptimaBeforeMetaheuristicSwitch()
      int32 num_max_local_optima_before_metaheuristic_switch = 64;
      Specified by:
      getNumMaxLocalOptimaBeforeMetaheuristicSwitch in interface RoutingSearchParametersOrBuilder
      Returns:
      The numMaxLocalOptimaBeforeMetaheuristicSwitch.
    • setNumMaxLocalOptimaBeforeMetaheuristicSwitch

      public RoutingSearchParameters.Builder setNumMaxLocalOptimaBeforeMetaheuristicSwitch(int value)
      int32 num_max_local_optima_before_metaheuristic_switch = 64;
      Parameters:
      value - The numMaxLocalOptimaBeforeMetaheuristicSwitch to set.
      Returns:
      This builder for chaining.
    • clearNumMaxLocalOptimaBeforeMetaheuristicSwitch

      public RoutingSearchParameters.Builder clearNumMaxLocalOptimaBeforeMetaheuristicSwitch()
      int32 num_max_local_optima_before_metaheuristic_switch = 64;
      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.
    • getGuidedLocalSearchResetPenaltiesOnNewBestSolution

      public boolean getGuidedLocalSearchResetPenaltiesOnNewBestSolution()
       Whether to reset penalties when a new best solution is found. The effect is
       that a greedy descent is started before the next penalization phase.
       
      bool guided_local_search_reset_penalties_on_new_best_solution = 51;
      Specified by:
      getGuidedLocalSearchResetPenaltiesOnNewBestSolution in interface RoutingSearchParametersOrBuilder
      Returns:
      The guidedLocalSearchResetPenaltiesOnNewBestSolution.
    • setGuidedLocalSearchResetPenaltiesOnNewBestSolution

      public RoutingSearchParameters.Builder setGuidedLocalSearchResetPenaltiesOnNewBestSolution(boolean value)
       Whether to reset penalties when a new best solution is found. The effect is
       that a greedy descent is started before the next penalization phase.
       
      bool guided_local_search_reset_penalties_on_new_best_solution = 51;
      Parameters:
      value - The guidedLocalSearchResetPenaltiesOnNewBestSolution to set.
      Returns:
      This builder for chaining.
    • clearGuidedLocalSearchResetPenaltiesOnNewBestSolution

      public RoutingSearchParameters.Builder clearGuidedLocalSearchResetPenaltiesOnNewBestSolution()
       Whether to reset penalties when a new best solution is found. The effect is
       that a greedy descent is started before the next penalization phase.
       
      bool guided_local_search_reset_penalties_on_new_best_solution = 51;
      Returns:
      This builder for chaining.
    • getGuidedLocalSearchPenalizeWithVehicleClasses

      public boolean getGuidedLocalSearchPenalizeWithVehicleClasses()
       When an arc leaving a vehicle start or arriving at a vehicle end is
       penalized, this field controls whether to penalize all other equivalent
       arcs with starts or ends in the same vehicle class.
       
      bool guided_local_search_penalize_with_vehicle_classes = 61;
      Specified by:
      getGuidedLocalSearchPenalizeWithVehicleClasses in interface RoutingSearchParametersOrBuilder
      Returns:
      The guidedLocalSearchPenalizeWithVehicleClasses.
    • setGuidedLocalSearchPenalizeWithVehicleClasses

      public RoutingSearchParameters.Builder setGuidedLocalSearchPenalizeWithVehicleClasses(boolean value)
       When an arc leaving a vehicle start or arriving at a vehicle end is
       penalized, this field controls whether to penalize all other equivalent
       arcs with starts or ends in the same vehicle class.
       
      bool guided_local_search_penalize_with_vehicle_classes = 61;
      Parameters:
      value - The guidedLocalSearchPenalizeWithVehicleClasses to set.
      Returns:
      This builder for chaining.
    • clearGuidedLocalSearchPenalizeWithVehicleClasses

      public RoutingSearchParameters.Builder clearGuidedLocalSearchPenalizeWithVehicleClasses()
       When an arc leaving a vehicle start or arriving at a vehicle end is
       penalized, this field controls whether to penalize all other equivalent
       arcs with starts or ends in the same vehicle class.
       
      bool guided_local_search_penalize_with_vehicle_classes = 61;
      Returns:
      This builder for chaining.
    • getUseGuidedLocalSearchPenaltiesInLocalSearchOperators

      public boolean getUseGuidedLocalSearchPenaltiesInLocalSearchOperators()
       Whether to consider arc penalties in cost functions used in local search
       operators using arc costs.
       
      bool use_guided_local_search_penalties_in_local_search_operators = 62;
      Specified by:
      getUseGuidedLocalSearchPenaltiesInLocalSearchOperators in interface RoutingSearchParametersOrBuilder
      Returns:
      The useGuidedLocalSearchPenaltiesInLocalSearchOperators.
    • setUseGuidedLocalSearchPenaltiesInLocalSearchOperators

      public RoutingSearchParameters.Builder setUseGuidedLocalSearchPenaltiesInLocalSearchOperators(boolean value)
       Whether to consider arc penalties in cost functions used in local search
       operators using arc costs.
       
      bool use_guided_local_search_penalties_in_local_search_operators = 62;
      Parameters:
      value - The useGuidedLocalSearchPenaltiesInLocalSearchOperators to set.
      Returns:
      This builder for chaining.
    • clearUseGuidedLocalSearchPenaltiesInLocalSearchOperators

      public RoutingSearchParameters.Builder clearUseGuidedLocalSearchPenaltiesInLocalSearchOperators()
       Whether to consider arc penalties in cost functions used in local search
       operators using arc costs.
       
      bool use_guided_local_search_penalties_in_local_search_operators = 62;
      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

       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.
    • getUseGeneralizedCpSatValue

      public int getUseGeneralizedCpSatValue()
       If true, use the CP-SAT solver to find a solution on generalized routing
       model. 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.
       
      .operations_research.OptionalBoolean use_generalized_cp_sat = 47;
      Specified by:
      getUseGeneralizedCpSatValue in interface RoutingSearchParametersOrBuilder
      Returns:
      The enum numeric value on the wire for useGeneralizedCpSat.
    • setUseGeneralizedCpSatValue

      public RoutingSearchParameters.Builder setUseGeneralizedCpSatValue(int value)
       If true, use the CP-SAT solver to find a solution on generalized routing
       model. 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.
       
      .operations_research.OptionalBoolean use_generalized_cp_sat = 47;
      Parameters:
      value - The enum numeric value on the wire for useGeneralizedCpSat to set.
      Returns:
      This builder for chaining.
    • getUseGeneralizedCpSat

      public OptionalBoolean getUseGeneralizedCpSat()
       If true, use the CP-SAT solver to find a solution on generalized routing
       model. 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.
       
      .operations_research.OptionalBoolean use_generalized_cp_sat = 47;
      Specified by:
      getUseGeneralizedCpSat in interface RoutingSearchParametersOrBuilder
      Returns:
      The useGeneralizedCpSat.
    • setUseGeneralizedCpSat

      public RoutingSearchParameters.Builder setUseGeneralizedCpSat(OptionalBoolean value)
       If true, use the CP-SAT solver to find a solution on generalized routing
       model. 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.
       
      .operations_research.OptionalBoolean use_generalized_cp_sat = 47;
      Parameters:
      value - The useGeneralizedCpSat to set.
      Returns:
      This builder for chaining.
    • clearUseGeneralizedCpSat

      public RoutingSearchParameters.Builder clearUseGeneralizedCpSat()
       If true, use the CP-SAT solver to find a solution on generalized routing
       model. 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.
       
      .operations_research.OptionalBoolean use_generalized_cp_sat = 47;
      Returns:
      This builder for chaining.
    • hasSatParameters

      public boolean hasSatParameters()
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
      Specified by:
      hasSatParameters in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the satParameters field is set.
    • getSatParameters

      public SatParameters getSatParameters()
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
      Specified by:
      getSatParameters in interface RoutingSearchParametersOrBuilder
      Returns:
      The satParameters.
    • setSatParameters

      public RoutingSearchParameters.Builder setSatParameters(SatParameters value)
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
    • setSatParameters

      public RoutingSearchParameters.Builder setSatParameters(SatParameters.Builder builderForValue)
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
    • mergeSatParameters

      public RoutingSearchParameters.Builder mergeSatParameters(SatParameters value)
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
    • clearSatParameters

      public RoutingSearchParameters.Builder clearSatParameters()
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
    • getSatParametersBuilder

      public SatParameters.Builder getSatParametersBuilder()
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
    • getSatParametersOrBuilder

      public SatParametersOrBuilder getSatParametersOrBuilder()
       If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm
       parameters which will be used.
       
      .operations_research.sat.SatParameters sat_parameters = 48;
      Specified by:
      getSatParametersOrBuilder in interface RoutingSearchParametersOrBuilder
    • getReportIntermediateCpSatSolutions

      public boolean getReportIntermediateCpSatSolutions()
       If use_cp_sat or use_generalized_cp_sat is true, will report intermediate
       solutions found by CP-SAT to solution listeners.
       
      bool report_intermediate_cp_sat_solutions = 56;
      Specified by:
      getReportIntermediateCpSatSolutions in interface RoutingSearchParametersOrBuilder
      Returns:
      The reportIntermediateCpSatSolutions.
    • setReportIntermediateCpSatSolutions

      public RoutingSearchParameters.Builder setReportIntermediateCpSatSolutions(boolean value)
       If use_cp_sat or use_generalized_cp_sat is true, will report intermediate
       solutions found by CP-SAT to solution listeners.
       
      bool report_intermediate_cp_sat_solutions = 56;
      Parameters:
      value - The reportIntermediateCpSatSolutions to set.
      Returns:
      This builder for chaining.
    • clearReportIntermediateCpSatSolutions

      public RoutingSearchParameters.Builder clearReportIntermediateCpSatSolutions()
       If use_cp_sat or use_generalized_cp_sat is true, will report intermediate
       solutions found by CP-SAT to solution listeners.
       
      bool report_intermediate_cp_sat_solutions = 56;
      Returns:
      This builder for chaining.
    • getFallbackToCpSatSizeThreshold

      public int getFallbackToCpSatSizeThreshold()
       If model.Size() is less than the threshold and that no solution has been
       found, attempt a pass with CP-SAT.
       
      int32 fallback_to_cp_sat_size_threshold = 52;
      Specified by:
      getFallbackToCpSatSizeThreshold in interface RoutingSearchParametersOrBuilder
      Returns:
      The fallbackToCpSatSizeThreshold.
    • setFallbackToCpSatSizeThreshold

      public RoutingSearchParameters.Builder setFallbackToCpSatSizeThreshold(int value)
       If model.Size() is less than the threshold and that no solution has been
       found, attempt a pass with CP-SAT.
       
      int32 fallback_to_cp_sat_size_threshold = 52;
      Parameters:
      value - The fallbackToCpSatSizeThreshold to set.
      Returns:
      This builder for chaining.
    • clearFallbackToCpSatSizeThreshold

      public RoutingSearchParameters.Builder clearFallbackToCpSatSizeThreshold()
       If model.Size() is less than the threshold and that no solution has been
       found, attempt a pass with CP-SAT.
       
      int32 fallback_to_cp_sat_size_threshold = 52;
      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.
    • hasDisableSchedulingBewareThisMayDegradePerformance

      public boolean hasDisableSchedulingBewareThisMayDegradePerformance()
       Setting this to true completely disables the LP and MIP scheduling in the
       solver. This overrides the 2 SchedulingSolver options above.
       
      optional bool disable_scheduling_beware_this_may_degrade_performance = 50;
      Specified by:
      hasDisableSchedulingBewareThisMayDegradePerformance in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the disableSchedulingBewareThisMayDegradePerformance field is set.
    • getDisableSchedulingBewareThisMayDegradePerformance

      public boolean getDisableSchedulingBewareThisMayDegradePerformance()
       Setting this to true completely disables the LP and MIP scheduling in the
       solver. This overrides the 2 SchedulingSolver options above.
       
      optional bool disable_scheduling_beware_this_may_degrade_performance = 50;
      Specified by:
      getDisableSchedulingBewareThisMayDegradePerformance in interface RoutingSearchParametersOrBuilder
      Returns:
      The disableSchedulingBewareThisMayDegradePerformance.
    • setDisableSchedulingBewareThisMayDegradePerformance

      public RoutingSearchParameters.Builder setDisableSchedulingBewareThisMayDegradePerformance(boolean value)
       Setting this to true completely disables the LP and MIP scheduling in the
       solver. This overrides the 2 SchedulingSolver options above.
       
      optional bool disable_scheduling_beware_this_may_degrade_performance = 50;
      Parameters:
      value - The disableSchedulingBewareThisMayDegradePerformance to set.
      Returns:
      This builder for chaining.
    • clearDisableSchedulingBewareThisMayDegradePerformance

      public RoutingSearchParameters.Builder clearDisableSchedulingBewareThisMayDegradePerformance()
       Setting this to true completely disables the LP and MIP scheduling in the
       solver. This overrides the 2 SchedulingSolver options above.
       
      optional bool disable_scheduling_beware_this_may_degrade_performance = 50;
      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
    • getSecondaryLsTimeLimitRatio

      public double getSecondaryLsTimeLimitRatio()
       Ratio of the overall time limit spent in a secondary LS phase with only
       intra-route and insertion operators, meant to "cleanup" the current
       solution before stopping the search.
       TODO(user): Since these operators are very fast, add a parameter to cap
       the max time allocated for this second phase (e.g.
       Duration max_secondary_ls_time_limit).
       
      double secondary_ls_time_limit_ratio = 57;
      Specified by:
      getSecondaryLsTimeLimitRatio in interface RoutingSearchParametersOrBuilder
      Returns:
      The secondaryLsTimeLimitRatio.
    • setSecondaryLsTimeLimitRatio

      public RoutingSearchParameters.Builder setSecondaryLsTimeLimitRatio(double value)
       Ratio of the overall time limit spent in a secondary LS phase with only
       intra-route and insertion operators, meant to "cleanup" the current
       solution before stopping the search.
       TODO(user): Since these operators are very fast, add a parameter to cap
       the max time allocated for this second phase (e.g.
       Duration max_secondary_ls_time_limit).
       
      double secondary_ls_time_limit_ratio = 57;
      Parameters:
      value - The secondaryLsTimeLimitRatio to set.
      Returns:
      This builder for chaining.
    • clearSecondaryLsTimeLimitRatio

      public RoutingSearchParameters.Builder clearSecondaryLsTimeLimitRatio()
       Ratio of the overall time limit spent in a secondary LS phase with only
       intra-route and insertion operators, meant to "cleanup" the current
       solution before stopping the search.
       TODO(user): Since these operators are very fast, add a parameter to cap
       the max time allocated for this second phase (e.g.
       Duration max_secondary_ls_time_limit).
       
      double secondary_ls_time_limit_ratio = 57;
      Returns:
      This builder for chaining.
    • 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 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(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.
    • getUseIteratedLocalSearch

      public boolean getUseIteratedLocalSearch()
       Whether the solver should use an Iterated Local Search approach to solve
       the problem.
       
      bool use_iterated_local_search = 58;
      Specified by:
      getUseIteratedLocalSearch in interface RoutingSearchParametersOrBuilder
      Returns:
      The useIteratedLocalSearch.
    • setUseIteratedLocalSearch

      public RoutingSearchParameters.Builder setUseIteratedLocalSearch(boolean value)
       Whether the solver should use an Iterated Local Search approach to solve
       the problem.
       
      bool use_iterated_local_search = 58;
      Parameters:
      value - The useIteratedLocalSearch to set.
      Returns:
      This builder for chaining.
    • clearUseIteratedLocalSearch

      public RoutingSearchParameters.Builder clearUseIteratedLocalSearch()
       Whether the solver should use an Iterated Local Search approach to solve
       the problem.
       
      bool use_iterated_local_search = 58;
      Returns:
      This builder for chaining.
    • hasIteratedLocalSearchParameters

      public boolean hasIteratedLocalSearchParameters()
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
      Specified by:
      hasIteratedLocalSearchParameters in interface RoutingSearchParametersOrBuilder
      Returns:
      Whether the iteratedLocalSearchParameters field is set.
    • getIteratedLocalSearchParameters

      public IteratedLocalSearchParameters getIteratedLocalSearchParameters()
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
      Specified by:
      getIteratedLocalSearchParameters in interface RoutingSearchParametersOrBuilder
      Returns:
      The iteratedLocalSearchParameters.
    • setIteratedLocalSearchParameters

      public RoutingSearchParameters.Builder setIteratedLocalSearchParameters(IteratedLocalSearchParameters value)
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
    • setIteratedLocalSearchParameters

      public RoutingSearchParameters.Builder setIteratedLocalSearchParameters(IteratedLocalSearchParameters.Builder builderForValue)
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
    • mergeIteratedLocalSearchParameters

      public RoutingSearchParameters.Builder mergeIteratedLocalSearchParameters(IteratedLocalSearchParameters value)
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
    • clearIteratedLocalSearchParameters

      public RoutingSearchParameters.Builder clearIteratedLocalSearchParameters()
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
    • getIteratedLocalSearchParametersBuilder

      public IteratedLocalSearchParameters.Builder getIteratedLocalSearchParametersBuilder()
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
    • getIteratedLocalSearchParametersOrBuilder

      public IteratedLocalSearchParametersOrBuilder getIteratedLocalSearchParametersOrBuilder()
       Iterated Local Search parameters.
       
      .operations_research.IteratedLocalSearchParameters iterated_local_search_parameters = 60;
      Specified by:
      getIteratedLocalSearchParametersOrBuilder in interface RoutingSearchParametersOrBuilder