Interface RoutingSearchParametersOrBuilder

  • All Superinterfaces:
    com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
    All Known Implementing Classes:
    RoutingSearchParameters, RoutingSearchParameters.Builder

    public interface RoutingSearchParametersOrBuilder
    extends com.google.protobuf.MessageOrBuilder
    • Method Detail

      • getFirstSolutionStrategyValue

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

        FirstSolutionStrategy.Value getFirstSolutionStrategy()
         First solution strategies, used as starting point of local search.
         
        .operations_research.FirstSolutionStrategy.Value first_solution_strategy = 1;
        Returns:
        The firstSolutionStrategy.
      • getUseUnfilteredFirstSolutionStrategy

        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;
        Returns:
        The useUnfilteredFirstSolutionStrategy.
      • getSavingsNeighborsRatio

        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;
        Returns:
        The savingsNeighborsRatio.
      • getSavingsMaxMemoryUsageBytes

        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;
        Returns:
        The savingsMaxMemoryUsageBytes.
      • getSavingsAddReverseArcs

        boolean getSavingsAddReverseArcs()
         Add savings related to reverse arcs when finding the nearest neighbors
         of the nodes.
         
        bool savings_add_reverse_arcs = 15;
        Returns:
        The savingsAddReverseArcs.
      • getSavingsArcCoefficient

        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;
        Returns:
        The savingsArcCoefficient.
      • getSavingsParallelRoutes

        boolean getSavingsParallelRoutes()
         When true, the routes are built in parallel, sequentially otherwise.
         
        bool savings_parallel_routes = 19;
        Returns:
        The savingsParallelRoutes.
      • getCheapestInsertionFarthestSeedsRatio

        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;
        Returns:
        The cheapestInsertionFarthestSeedsRatio.
      • getCheapestInsertionFirstSolutionNeighborsRatio

        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;
        Returns:
        The cheapestInsertionFirstSolutionNeighborsRatio.
      • getCheapestInsertionFirstSolutionMinNeighbors

        int getCheapestInsertionFirstSolutionMinNeighbors()
        int32 cheapest_insertion_first_solution_min_neighbors = 44;
        Returns:
        The cheapestInsertionFirstSolutionMinNeighbors.
      • getCheapestInsertionLsOperatorNeighborsRatio

        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;
        Returns:
        The cheapestInsertionLsOperatorNeighborsRatio.
      • getCheapestInsertionLsOperatorMinNeighbors

        int getCheapestInsertionLsOperatorMinNeighbors()
        int32 cheapest_insertion_ls_operator_min_neighbors = 45;
        Returns:
        The cheapestInsertionLsOperatorMinNeighbors.
      • getCheapestInsertionFirstSolutionUseNeighborsRatioForInitialization

        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;
        Returns:
        The cheapestInsertionFirstSolutionUseNeighborsRatioForInitialization.
      • getCheapestInsertionAddUnperformedEntries

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

        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;
        Returns:
        The enum numeric value on the wire for localCheapestInsertionPickupDeliveryStrategy.
      • getLocalCheapestInsertionPickupDeliveryStrategy

        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;
        Returns:
        The localCheapestInsertionPickupDeliveryStrategy.
      • getLocalCheapestCostInsertionPickupDeliveryStrategyValue

        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;
        Returns:
        The enum numeric value on the wire for localCheapestCostInsertionPickupDeliveryStrategy.
      • getLocalCheapestCostInsertionPickupDeliveryStrategy

        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;
        Returns:
        The localCheapestCostInsertionPickupDeliveryStrategy.
      • getChristofidesUseMinimumMatching

        boolean getChristofidesUseMinimumMatching()
         If true use minimum matching instead of minimal matching in the
         Christofides algorithm.
         
        bool christofides_use_minimum_matching = 30;
        Returns:
        The christofidesUseMinimumMatching.
      • hasLocalSearchOperators

        boolean hasLocalSearchOperators()
        .operations_research.RoutingSearchParameters.LocalSearchNeighborhoodOperators local_search_operators = 3;
        Returns:
        Whether the localSearchOperators field is set.
      • getLsOperatorNeighborsRatio

        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;
        Returns:
        The lsOperatorNeighborsRatio.
      • getLsOperatorMinNeighbors

        int getLsOperatorMinNeighbors()
        int32 ls_operator_min_neighbors = 54;
        Returns:
        The lsOperatorMinNeighbors.
      • getUseMultiArmedBanditConcatenateOperators

        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;
        Returns:
        The useMultiArmedBanditConcatenateOperators.
      • getMultiArmedBanditCompoundOperatorMemoryCoefficient

        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;
        Returns:
        The multiArmedBanditCompoundOperatorMemoryCoefficient.
      • getMultiArmedBanditCompoundOperatorExplorationCoefficient

        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;
        Returns:
        The multiArmedBanditCompoundOperatorExplorationCoefficient.
      • getRelocateExpensiveChainNumArcsToConsider

        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;
        Returns:
        The relocateExpensiveChainNumArcsToConsider.
      • getHeuristicExpensiveChainLnsNumArcsToConsider

        int getHeuristicExpensiveChainLnsNumArcsToConsider()
         Number of expensive arcs to consider cutting in the
         FilteredHeuristicExpensiveChainLNSOperator operator.
         
        int32 heuristic_expensive_chain_lns_num_arcs_to_consider = 32;
        Returns:
        The heuristicExpensiveChainLnsNumArcsToConsider.
      • getHeuristicCloseNodesLnsNumNodes

        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;
        Returns:
        The heuristicCloseNodesLnsNumNodes.
      • getLocalSearchMetaheuristicValue

        int getLocalSearchMetaheuristicValue()
         Local search metaheuristics used to guide the search.
         
        .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
        Returns:
        The enum numeric value on the wire for localSearchMetaheuristic.
      • getLocalSearchMetaheuristic

        LocalSearchMetaheuristic.Value getLocalSearchMetaheuristic()
         Local search metaheuristics used to guide the search.
         
        .operations_research.LocalSearchMetaheuristic.Value local_search_metaheuristic = 4;
        Returns:
        The localSearchMetaheuristic.
      • getGuidedLocalSearchLambdaCoefficient

        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;
        Returns:
        The guidedLocalSearchLambdaCoefficient.
      • getGuidedLocalSearchResetPenaltiesOnNewBestSolution

        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;
        Returns:
        The guidedLocalSearchResetPenaltiesOnNewBestSolution.
      • getUseDepthFirstSearch

        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;
        Returns:
        The useDepthFirstSearch.
      • getUseCpValue

        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;
        Returns:
        The enum numeric value on the wire for useCp.
      • getUseCp

        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;
        Returns:
        The useCp.
      • getUseCpSatValue

        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;
        Returns:
        The enum numeric value on the wire for useCpSat.
      • getUseCpSat

        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;
        Returns:
        The useCpSat.
      • getUseGeneralizedCpSatValue

        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;
        Returns:
        The enum numeric value on the wire for useGeneralizedCpSat.
      • getUseGeneralizedCpSat

        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;
        Returns:
        The useGeneralizedCpSat.
      • hasSatParameters

        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;
        Returns:
        Whether the satParameters field is set.
      • getSatParameters

        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;
        Returns:
        The satParameters.
      • getSatParametersOrBuilder

        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;
      • getReportIntermediateCpSatSolutions

        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;
        Returns:
        The reportIntermediateCpSatSolutions.
      • getFallbackToCpSatSizeThreshold

        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;
        Returns:
        The fallbackToCpSatSizeThreshold.
      • getContinuousSchedulingSolverValue

        int getContinuousSchedulingSolverValue()
        .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
        Returns:
        The enum numeric value on the wire for continuousSchedulingSolver.
      • getContinuousSchedulingSolver

        RoutingSearchParameters.SchedulingSolver getContinuousSchedulingSolver()
        .operations_research.RoutingSearchParameters.SchedulingSolver continuous_scheduling_solver = 33;
        Returns:
        The continuousSchedulingSolver.
      • getMixedIntegerSchedulingSolverValue

        int getMixedIntegerSchedulingSolverValue()
        .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
        Returns:
        The enum numeric value on the wire for mixedIntegerSchedulingSolver.
      • getMixedIntegerSchedulingSolver

        RoutingSearchParameters.SchedulingSolver getMixedIntegerSchedulingSolver()
        .operations_research.RoutingSearchParameters.SchedulingSolver mixed_integer_scheduling_solver = 34;
        Returns:
        The mixedIntegerSchedulingSolver.
      • hasDisableSchedulingBewareThisMayDegradePerformance

        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;
        Returns:
        Whether the disableSchedulingBewareThisMayDegradePerformance field is set.
      • getDisableSchedulingBewareThisMayDegradePerformance

        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;
        Returns:
        The disableSchedulingBewareThisMayDegradePerformance.
      • getOptimizationStep

        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;
        Returns:
        The optimizationStep.
      • getNumberOfSolutionsToCollect

        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;
        Returns:
        The numberOfSolutionsToCollect.
      • getSolutionLimit

        long getSolutionLimit()
         -- Search limits --
         Limit to the number of solutions generated during the search. 0 means
         "unspecified".
         
        int64 solution_limit = 8;
        Returns:
        The solutionLimit.
      • hasTimeLimit

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

        com.google.protobuf.Duration getTimeLimit()
         Limit to the time spent in the search.
         
        .google.protobuf.Duration time_limit = 9;
        Returns:
        The timeLimit.
      • getTimeLimitOrBuilder

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

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

        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;
        Returns:
        The lnsTimeLimit.
      • getLnsTimeLimitOrBuilder

        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;
      • getSecondaryLsTimeLimitRatio

        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;
        Returns:
        The secondaryLsTimeLimitRatio.
      • hasImprovementLimitParameters

        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;
        Returns:
        Whether the improvementLimitParameters field is set.
      • getImprovementLimitParameters

        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;
        Returns:
        The improvementLimitParameters.
      • getImprovementLimitParametersOrBuilder

        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;
      • getUseFullPropagation

        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;
        Returns:
        The useFullPropagation.
      • getLogSearch

        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;
        Returns:
        The logSearch.
      • getLogCostScalingFactor

        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;
        Returns:
        The logCostScalingFactor.
      • getLogCostOffset

        double getLogCostOffset()
        double log_cost_offset = 29;
        Returns:
        The logCostOffset.
      • getLogTag

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

        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;
        Returns:
        The bytes for logTag.