![]() |
Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
|
Parameters defining the search used to solve vehicle routing problems. More...
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
Definition at line 222 of file RoutingParameters.pb.cs.
Classes | |
class | Types |
Container for nested types declared in the RoutingSearchParameters message type. More... |
Public Member Functions | |
RoutingSearchParameters () | |
RoutingSearchParameters (RoutingSearchParameters other) | |
RoutingSearchParameters | Clone () |
void | ClearDisableSchedulingBewareThisMayDegradePerformance () |
Clears the value of the "disable_scheduling_beware_this_may_degrade_performance" field. | |
override bool | Equals (object other) |
bool | Equals (RoutingSearchParameters other) |
override int | GetHashCode () |
override string | ToString () |
void | WriteTo (pb::CodedOutputStream output) |
int | CalculateSize () |
void | MergeFrom (RoutingSearchParameters other) |
void | MergeFrom (pb::CodedInputStream input) |
Static Public Attributes | |
const int | FirstSolutionStrategyFieldNumber = 1 |
Field number for the "first_solution_strategy" field. | |
const int | UseUnfilteredFirstSolutionStrategyFieldNumber = 2 |
Field number for the "use_unfiltered_first_solution_strategy" field. | |
const int | SavingsNeighborsRatioFieldNumber = 14 |
Field number for the "savings_neighbors_ratio" field. | |
const int | SavingsMaxMemoryUsageBytesFieldNumber = 23 |
Field number for the "savings_max_memory_usage_bytes" field. | |
const int | SavingsAddReverseArcsFieldNumber = 15 |
Field number for the "savings_add_reverse_arcs" field. | |
const int | SavingsArcCoefficientFieldNumber = 18 |
Field number for the "savings_arc_coefficient" field. | |
const int | CheapestInsertionFarthestSeedsRatioFieldNumber = 16 |
Field number for the "cheapest_insertion_farthest_seeds_ratio" field. | |
const int | CheapestInsertionFirstSolutionNeighborsRatioFieldNumber = 21 |
Field number for the "cheapest_insertion_first_solution_neighbors_ratio" field. | |
const int | CheapestInsertionFirstSolutionMinNeighborsFieldNumber = 44 |
Field number for the "cheapest_insertion_first_solution_min_neighbors" field. | |
const int | CheapestInsertionLsOperatorNeighborsRatioFieldNumber = 31 |
Field number for the "cheapest_insertion_ls_operator_neighbors_ratio" field. | |
const int | CheapestInsertionLsOperatorMinNeighborsFieldNumber = 45 |
Field number for the "cheapest_insertion_ls_operator_min_neighbors" field. | |
const int | CheapestInsertionFirstSolutionUseNeighborsRatioForInitializationFieldNumber = 46 |
Field number for the "cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization" field. | |
const int | CheapestInsertionAddUnperformedEntriesFieldNumber = 40 |
Field number for the "cheapest_insertion_add_unperformed_entries" field. | |
const int | LocalCheapestInsertionPickupDeliveryStrategyFieldNumber = 49 |
Field number for the "local_cheapest_insertion_pickup_delivery_strategy" field. | |
const int | LocalCheapestCostInsertionPickupDeliveryStrategyFieldNumber = 55 |
Field number for the "local_cheapest_cost_insertion_pickup_delivery_strategy" field. | |
const int | LocalCheapestInsertionSortingPropertiesFieldNumber = 67 |
Field number for the "local_cheapest_insertion_sorting_properties" field. | |
const int | ChristofidesUseMinimumMatchingFieldNumber = 30 |
Field number for the "christofides_use_minimum_matching" field. | |
const int | FirstSolutionOptimizationPeriodFieldNumber = 59 |
Field number for the "first_solution_optimization_period" field. | |
const int | LocalSearchOperatorsFieldNumber = 3 |
Field number for the "local_search_operators" field. | |
const int | LsOperatorNeighborsRatioFieldNumber = 53 |
Field number for the "ls_operator_neighbors_ratio" field. | |
const int | LsOperatorMinNeighborsFieldNumber = 54 |
Field number for the "ls_operator_min_neighbors" field. | |
const int | UseMultiArmedBanditConcatenateOperatorsFieldNumber = 41 |
Field number for the "use_multi_armed_bandit_concatenate_operators" field. | |
const int | MultiArmedBanditCompoundOperatorMemoryCoefficientFieldNumber = 42 |
Field number for the "multi_armed_bandit_compound_operator_memory_coefficient" field. | |
const int | MultiArmedBanditCompoundOperatorExplorationCoefficientFieldNumber = 43 |
Field number for the "multi_armed_bandit_compound_operator_exploration_coefficient" field. | |
const int | MaxSwapActiveChainSizeFieldNumber = 66 |
Field number for the "max_swap_active_chain_size" field. | |
const int | RelocateExpensiveChainNumArcsToConsiderFieldNumber = 20 |
Field number for the "relocate_expensive_chain_num_arcs_to_consider" field. | |
const int | HeuristicExpensiveChainLnsNumArcsToConsiderFieldNumber = 32 |
Field number for the "heuristic_expensive_chain_lns_num_arcs_to_consider" field. | |
const int | HeuristicCloseNodesLnsNumNodesFieldNumber = 35 |
Field number for the "heuristic_close_nodes_lns_num_nodes" field. | |
const int | LocalSearchMetaheuristicFieldNumber = 4 |
Field number for the "local_search_metaheuristic" field. | |
const int | LocalSearchMetaheuristicsFieldNumber = 63 |
Field number for the "local_search_metaheuristics" field. | |
const int | NumMaxLocalOptimaBeforeMetaheuristicSwitchFieldNumber = 64 |
Field number for the "num_max_local_optima_before_metaheuristic_switch" field. | |
const int | GuidedLocalSearchLambdaCoefficientFieldNumber = 5 |
Field number for the "guided_local_search_lambda_coefficient" field. | |
const int | GuidedLocalSearchResetPenaltiesOnNewBestSolutionFieldNumber = 51 |
Field number for the "guided_local_search_reset_penalties_on_new_best_solution" field. | |
const int | GuidedLocalSearchPenalizeWithVehicleClassesFieldNumber = 61 |
Field number for the "guided_local_search_penalize_with_vehicle_classes" field. | |
const int | UseGuidedLocalSearchPenaltiesInLocalSearchOperatorsFieldNumber = 62 |
Field number for the "use_guided_local_search_penalties_in_local_search_operators" field. | |
const int | UseDepthFirstSearchFieldNumber = 6 |
Field number for the "use_depth_first_search" field. | |
const int | UseCpFieldNumber = 28 |
Field number for the "use_cp" field. | |
const int | UseCpSatFieldNumber = 27 |
Field number for the "use_cp_sat" field. | |
const int | UseGeneralizedCpSatFieldNumber = 47 |
Field number for the "use_generalized_cp_sat" field. | |
const int | SatParametersFieldNumber = 48 |
Field number for the "sat_parameters" field. | |
const int | ReportIntermediateCpSatSolutionsFieldNumber = 56 |
Field number for the "report_intermediate_cp_sat_solutions" field. | |
const int | FallbackToCpSatSizeThresholdFieldNumber = 52 |
Field number for the "fallback_to_cp_sat_size_threshold" field. | |
const int | ContinuousSchedulingSolverFieldNumber = 33 |
Field number for the "continuous_scheduling_solver" field. | |
const int | MixedIntegerSchedulingSolverFieldNumber = 34 |
Field number for the "mixed_integer_scheduling_solver" field. | |
const int | DisableSchedulingBewareThisMayDegradePerformanceFieldNumber = 50 |
Field number for the "disable_scheduling_beware_this_may_degrade_performance" field. | |
const int | OptimizationStepFieldNumber = 7 |
Field number for the "optimization_step" field. | |
const int | NumberOfSolutionsToCollectFieldNumber = 17 |
Field number for the "number_of_solutions_to_collect" field. | |
const int | SolutionLimitFieldNumber = 8 |
Field number for the "solution_limit" field. | |
const int | TimeLimitFieldNumber = 9 |
Field number for the "time_limit" field. | |
const int | LnsTimeLimitFieldNumber = 10 |
Field number for the "lns_time_limit" field. | |
const int | SecondaryLsTimeLimitRatioFieldNumber = 57 |
Field number for the "secondary_ls_time_limit_ratio" field. | |
const int | ImprovementLimitParametersFieldNumber = 37 |
Field number for the "improvement_limit_parameters" field. | |
const int | UseFullPropagationFieldNumber = 11 |
Field number for the "use_full_propagation" field. | |
const int | LogSearchFieldNumber = 13 |
Field number for the "log_search" field. | |
const int | LogCostScalingFactorFieldNumber = 22 |
Field number for the "log_cost_scaling_factor" field. | |
const int | LogCostOffsetFieldNumber = 29 |
Field number for the "log_cost_offset" field. | |
const int | LogTagFieldNumber = 36 |
Field number for the "log_tag" field. | |
const int | UseIteratedLocalSearchFieldNumber = 58 |
Field number for the "use_iterated_local_search" field. | |
const int | IteratedLocalSearchParametersFieldNumber = 60 |
Field number for the "iterated_local_search_parameters" field. |
Properties | |
static pb::MessageParser< RoutingSearchParameters > | Parser [get] |
static pbr::MessageDescriptor | Descriptor [get] |
global::Google.OrTools.ConstraintSolver.FirstSolutionStrategy.Types.Value | FirstSolutionStrategy [get, set] |
First solution strategies, used as starting point of local search. | |
bool | UseUnfilteredFirstSolutionStrategy [get, set] |
— Advanced first solutions strategy settings — Don't touch these unless you know what you are doing. | |
double | SavingsNeighborsRatio [get, set] |
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 | SavingsMaxMemoryUsageBytes [get, set] |
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]. | |
bool | SavingsAddReverseArcs [get, set] |
Add savings related to reverse arcs when finding the nearest neighbors of the nodes. | |
double | SavingsArcCoefficient [get, set] |
Coefficient of the cost of the arc for which the saving value is being computed: Saving(a-->b) = Cost(a-->end) + Cost(start-->b) | |
double | CheapestInsertionFarthestSeedsRatio [get, set] |
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 | CheapestInsertionFirstSolutionNeighborsRatio [get, set] |
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. | |
int | CheapestInsertionFirstSolutionMinNeighbors [get, set] |
double | CheapestInsertionLsOperatorNeighborsRatio [get, set] |
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). | |
int | CheapestInsertionLsOperatorMinNeighbors [get, set] |
bool | CheapestInsertionFirstSolutionUseNeighborsRatioForInitialization [get, set] |
Whether or not to only consider closest neighbors when initializing the assignment for the first solution. | |
bool | CheapestInsertionAddUnperformedEntries [get, set] |
Whether or not to consider entries making the nodes/pairs unperformed in the GlobalCheapestInsertion heuristic. | |
global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy | LocalCheapestInsertionPickupDeliveryStrategy [get, set] |
Choice of insertion strategy for pickup/delivery pairs, used in local cheapest insertion, both first solution heuristic and LNS. | |
global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.PairInsertionStrategy | LocalCheapestCostInsertionPickupDeliveryStrategy [get, set] |
Choice of insertion strategy for pickup/delivery pairs, used in local cheapest cost insertion, both first solution heuristic and LNS. | |
pbc::RepeatedField< global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.InsertionSortingProperty > | LocalCheapestInsertionSortingProperties [get] |
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. | |
bool | ChristofidesUseMinimumMatching [get, set] |
If true use minimum matching instead of minimal matching in the Christofides algorithm. | |
int | FirstSolutionOptimizationPeriod [get, set] |
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: | |
global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.LocalSearchNeighborhoodOperators | LocalSearchOperators [get, set] |
double | LsOperatorNeighborsRatio [get, set] |
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). | |
int | LsOperatorMinNeighbors [get, set] |
bool | UseMultiArmedBanditConcatenateOperators [get, set] |
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. | |
double | MultiArmedBanditCompoundOperatorMemoryCoefficient [get, set] |
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 | MultiArmedBanditCompoundOperatorExplorationCoefficient [get, set] |
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. | |
int | MaxSwapActiveChainSize [get, set] |
Maximum size of the chain to make inactive in SwapActiveChainOperator. | |
int | RelocateExpensiveChainNumArcsToConsider [get, set] |
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. | |
int | HeuristicExpensiveChainLnsNumArcsToConsider [get, set] |
Number of expensive arcs to consider cutting in the FilteredHeuristicExpensiveChainLNSOperator operator. | |
int | HeuristicCloseNodesLnsNumNodes [get, set] |
Number of closest nodes to consider for each node during the destruction phase of the FilteredHeuristicCloseNodesLNSOperator. | |
global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value | LocalSearchMetaheuristic [get, set] |
Local search metaheuristics used to guide the search. | |
pbc::RepeatedField< global::Google.OrTools.ConstraintSolver.LocalSearchMetaheuristic.Types.Value > | LocalSearchMetaheuristics [get] |
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. | |
int | NumMaxLocalOptimaBeforeMetaheuristicSwitch [get, set] |
double | GuidedLocalSearchLambdaCoefficient [get, set] |
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. | |
bool | GuidedLocalSearchResetPenaltiesOnNewBestSolution [get, set] |
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 | GuidedLocalSearchPenalizeWithVehicleClasses [get, set] |
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 | UseGuidedLocalSearchPenaltiesInLocalSearchOperators [get, set] |
Whether to consider arc penalties in cost functions used in local search operators using arc costs. | |
bool | UseDepthFirstSearch [get, set] |
— Search control — | |
global::Google.OrTools.Util.OptionalBoolean | UseCp [get, set] |
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). | |
global::Google.OrTools.Util.OptionalBoolean | UseCpSat [get, set] |
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. | |
global::Google.OrTools.Util.OptionalBoolean | UseGeneralizedCpSat [get, set] |
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. | |
global::Google.OrTools.Sat.SatParameters | SatParameters [get, set] |
If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm parameters which will be used. | |
bool | ReportIntermediateCpSatSolutions [get, set] |
If use_cp_sat or use_generalized_cp_sat is true, will report intermediate solutions found by CP-SAT to solution listeners. | |
int | FallbackToCpSatSizeThreshold [get, set] |
If model.Size() is less than the threshold and that no solution has been found, attempt a pass with CP-SAT. | |
global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver | ContinuousSchedulingSolver [get, set] |
global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.SchedulingSolver | MixedIntegerSchedulingSolver [get, set] |
bool | DisableSchedulingBewareThisMayDegradePerformance [get, set] |
Setting this to true completely disables the LP and MIP scheduling in the solver. This overrides the 2 SchedulingSolver options above. | |
bool | HasDisableSchedulingBewareThisMayDegradePerformance [get] |
Gets whether the "disable_scheduling_beware_this_may_degrade_performance" field is set. | |
double | OptimizationStep [get, set] |
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. | |
int | NumberOfSolutionsToCollect [get, set] |
Number of solutions to collect during the search. Corresponds to the best solutions found during the search. 0 means "unspecified". | |
long | SolutionLimit [get, set] |
– Search limits – Limit to the number of solutions generated during the search. 0 means "unspecified". | |
global::Google.Protobuf.WellKnownTypes.Duration | TimeLimit [get, set] |
Limit to the time spent in the search. | |
global::Google.Protobuf.WellKnownTypes.Duration | LnsTimeLimit [get, set] |
Limit to the time spent in the completion search for each local search neighbor. | |
double | SecondaryLsTimeLimitRatio [get, set] |
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. | |
global::Google.OrTools.ConstraintSolver.RoutingSearchParameters.Types.ImprovementSearchLimitParameters | ImprovementLimitParameters [get, set] |
The improvement search limit is added to the solver if the following parameters are set. | |
bool | UseFullPropagation [get, set] |
— Propagation control — These are advanced settings which should not be modified unless you know what you are doing. | |
bool | LogSearch [get, set] |
— Miscellaneous — Some of these are advanced settings which should not be modified unless you know what you are doing. | |
double | LogCostScalingFactor [get, set] |
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 | LogCostOffset [get, set] |
string | LogTag [get, set] |
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. | |
bool | UseIteratedLocalSearch [get, set] |
Whether the solver should use an Iterated Local Search approach to solve the problem. | |
global::Google.OrTools.ConstraintSolver.IteratedLocalSearchParameters | IteratedLocalSearchParameters [get, set] |
Iterated Local Search parameters. |
|
inline |
Definition at line 248 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 256 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 1969 of file RoutingParameters.pb.cs.
|
inline |
Clears the value of the "disable_scheduling_beware_this_may_degrade_performance" field.
Definition at line 1084 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 322 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 1335 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 1341 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 1412 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 2352 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 2152 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 1481 of file RoutingParameters.pb.cs.
|
inline |
Definition at line 1487 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_add_unperformed_entries" field.
Definition at line 538 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_farthest_seeds_ratio" field.
Definition at line 433 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_first_solution_min_neighbors" field.
Definition at line 480 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_first_solution_neighbors_ratio" field.
Definition at line 450 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_first_solution_use_neighbors_ratio_for_initialization" field.
Definition at line 522 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_ls_operator_min_neighbors" field.
Definition at line 510 of file RoutingParameters.pb.cs.
|
static |
Field number for the "cheapest_insertion_ls_operator_neighbors_ratio" field.
Definition at line 492 of file RoutingParameters.pb.cs.
|
static |
Field number for the "christofides_use_minimum_matching" field.
Definition at line 605 of file RoutingParameters.pb.cs.
|
static |
Field number for the "continuous_scheduling_solver" field.
Definition at line 1034 of file RoutingParameters.pb.cs.
|
static |
Field number for the "disable_scheduling_beware_this_may_degrade_performance" field.
Definition at line 1058 of file RoutingParameters.pb.cs.
|
static |
Field number for the "fallback_to_cp_sat_size_threshold" field.
Definition at line 1018 of file RoutingParameters.pb.cs.
|
static |
Field number for the "first_solution_optimization_period" field.
Definition at line 621 of file RoutingParameters.pb.cs.
|
static |
Field number for the "first_solution_strategy" field.
Definition at line 327 of file RoutingParameters.pb.cs.
|
static |
Field number for the "guided_local_search_lambda_coefficient" field.
Definition at line 847 of file RoutingParameters.pb.cs.
|
static |
Field number for the "guided_local_search_penalize_with_vehicle_classes" field.
Definition at line 881 of file RoutingParameters.pb.cs.
|
static |
Field number for the "guided_local_search_reset_penalties_on_new_best_solution" field.
Definition at line 865 of file RoutingParameters.pb.cs.
|
static |
Field number for the "heuristic_close_nodes_lns_num_nodes" field.
Definition at line 787 of file RoutingParameters.pb.cs.
|
static |
Field number for the "heuristic_expensive_chain_lns_num_arcs_to_consider" field.
Definition at line 771 of file RoutingParameters.pb.cs.
|
static |
Field number for the "improvement_limit_parameters" field.
Definition at line 1190 of file RoutingParameters.pb.cs.
|
static |
Field number for the "iterated_local_search_parameters" field.
Definition at line 1319 of file RoutingParameters.pb.cs.
|
static |
Field number for the "lns_time_limit" field.
Definition at line 1154 of file RoutingParameters.pb.cs.
|
static |
Field number for the "local_cheapest_cost_insertion_pickup_delivery_strategy" field.
Definition at line 570 of file RoutingParameters.pb.cs.
|
static |
Field number for the "local_cheapest_insertion_pickup_delivery_strategy" field.
Definition at line 554 of file RoutingParameters.pb.cs.
|
static |
Field number for the "local_cheapest_insertion_sorting_properties" field.
Definition at line 586 of file RoutingParameters.pb.cs.
|
static |
Field number for the "local_search_metaheuristic" field.
Definition at line 803 of file RoutingParameters.pb.cs.
|
static |
Field number for the "local_search_metaheuristics" field.
Definition at line 818 of file RoutingParameters.pb.cs.
|
static |
Field number for the "local_search_operators" field.
Definition at line 642 of file RoutingParameters.pb.cs.
|
static |
Field number for the "log_cost_offset" field.
Definition at line 1275 of file RoutingParameters.pb.cs.
|
static |
Field number for the "log_cost_scaling_factor" field.
Definition at line 1259 of file RoutingParameters.pb.cs.
|
static |
Field number for the "log_search" field.
Definition at line 1231 of file RoutingParameters.pb.cs.
|
static |
Field number for the "log_tag" field.
Definition at line 1287 of file RoutingParameters.pb.cs.
|
static |
Field number for the "ls_operator_min_neighbors" field.
Definition at line 671 of file RoutingParameters.pb.cs.
|
static |
Field number for the "ls_operator_neighbors_ratio" field.
Definition at line 654 of file RoutingParameters.pb.cs.
|
static |
Field number for the "max_swap_active_chain_size" field.
Definition at line 735 of file RoutingParameters.pb.cs.
|
static |
Field number for the "mixed_integer_scheduling_solver" field.
Definition at line 1046 of file RoutingParameters.pb.cs.
|
static |
Field number for the "multi_armed_bandit_compound_operator_exploration_coefficient" field.
Definition at line 718 of file RoutingParameters.pb.cs.
|
static |
Field number for the "multi_armed_bandit_compound_operator_memory_coefficient" field.
Definition at line 700 of file RoutingParameters.pb.cs.
|
static |
Field number for the "number_of_solutions_to_collect" field.
Definition at line 1106 of file RoutingParameters.pb.cs.
|
static |
Field number for the "num_max_local_optima_before_metaheuristic_switch" field.
Definition at line 835 of file RoutingParameters.pb.cs.
|
static |
Field number for the "optimization_step" field.
Definition at line 1089 of file RoutingParameters.pb.cs.
|
static |
Field number for the "relocate_expensive_chain_num_arcs_to_consider" field.
Definition at line 750 of file RoutingParameters.pb.cs.
|
static |
Field number for the "report_intermediate_cp_sat_solutions" field.
Definition at line 1002 of file RoutingParameters.pb.cs.
|
static |
Field number for the "sat_parameters" field.
Definition at line 986 of file RoutingParameters.pb.cs.
|
static |
Field number for the "savings_add_reverse_arcs" field.
Definition at line 398 of file RoutingParameters.pb.cs.
|
static |
Field number for the "savings_arc_coefficient" field.
Definition at line 414 of file RoutingParameters.pb.cs.
|
static |
Field number for the "savings_max_memory_usage_bytes" field.
Definition at line 378 of file RoutingParameters.pb.cs.
|
static |
Field number for the "savings_neighbors_ratio" field.
Definition at line 361 of file RoutingParameters.pb.cs.
|
static |
Field number for the "secondary_ls_time_limit_ratio" field.
Definition at line 1170 of file RoutingParameters.pb.cs.
|
static |
Field number for the "solution_limit" field.
Definition at line 1122 of file RoutingParameters.pb.cs.
|
static |
Field number for the "time_limit" field.
Definition at line 1139 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_cp" field.
Definition at line 933 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_cp_sat" field.
Definition at line 950 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_depth_first_search" field.
Definition at line 914 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_full_propagation" field.
Definition at line 1206 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_generalized_cp_sat" field.
Definition at line 968 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_guided_local_search_penalties_in_local_search_operators" field.
Definition at line 898 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_iterated_local_search" field.
Definition at line 1303 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_multi_armed_bandit_concatenate_operators" field.
Definition at line 683 of file RoutingParameters.pb.cs.
|
static |
Field number for the "use_unfiltered_first_solution_strategy" field.
Definition at line 342 of file RoutingParameters.pb.cs.
|
getset |
Whether or not to consider entries making the nodes/pairs unperformed in the GlobalCheapestInsertion heuristic.
Definition at line 546 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 442 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 484 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 472 of file RoutingParameters.pb.cs.
|
getset |
Whether or not to only consider closest neighbors when initializing the assignment for the first solution.
Definition at line 530 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 514 of file RoutingParameters.pb.cs.
|
getset |
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).
Definition at line 502 of file RoutingParameters.pb.cs.
|
getset |
If true use minimum matching instead of minimal matching in the Christofides algorithm.
Definition at line 613 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 1038 of file RoutingParameters.pb.cs.
|
staticget |
Definition at line 236 of file RoutingParameters.pb.cs.
|
getset |
Setting this to true completely disables the LP and MIP scheduling in the solver. This overrides the 2 SchedulingSolver options above.
Definition at line 1068 of file RoutingParameters.pb.cs.
|
getset |
If model.Size() is less than the threshold and that no solution has been found, attempt a pass with CP-SAT.
Definition at line 1026 of file RoutingParameters.pb.cs.
|
getset |
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:
Definition at line 634 of file RoutingParameters.pb.cs.
|
getset |
First solution strategies, used as starting point of local search.
Definition at line 334 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 857 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 890 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 873 of file RoutingParameters.pb.cs.
|
get |
Gets whether the "disable_scheduling_beware_this_may_degrade_performance" field is set.
Definition at line 1078 of file RoutingParameters.pb.cs.
|
getset |
Number of closest nodes to consider for each node during the destruction phase of the FilteredHeuristicCloseNodesLNSOperator.
Definition at line 795 of file RoutingParameters.pb.cs.
|
getset |
Number of expensive arcs to consider cutting in the FilteredHeuristicExpensiveChainLNSOperator operator.
Definition at line 779 of file RoutingParameters.pb.cs.
|
getset |
The improvement search limit is added to the solver if the following parameters are set.
Definition at line 1198 of file RoutingParameters.pb.cs.
|
getset |
Iterated Local Search parameters.
Definition at line 1326 of file RoutingParameters.pb.cs.
|
getset |
Limit to the time spent in the completion search for each local search neighbor.
Definition at line 1162 of file RoutingParameters.pb.cs.
|
getset |
Choice of insertion strategy for pickup/delivery pairs, used in local cheapest cost insertion, both first solution heuristic and LNS.
Definition at line 578 of file RoutingParameters.pb.cs.
|
getset |
Choice of insertion strategy for pickup/delivery pairs, used in local cheapest insertion, both first solution heuristic and LNS.
Definition at line 562 of file RoutingParameters.pb.cs.
|
get |
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.
Definition at line 600 of file RoutingParameters.pb.cs.
|
getset |
Local search metaheuristics used to guide the search.
Definition at line 810 of file RoutingParameters.pb.cs.
|
get |
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.
Definition at line 830 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 646 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 1279 of file RoutingParameters.pb.cs.
|
getset |
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)
Definition at line 1267 of file RoutingParameters.pb.cs.
|
getset |
— 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.
Definition at line 1251 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 1295 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 675 of file RoutingParameters.pb.cs.
|
getset |
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).
Definition at line 663 of file RoutingParameters.pb.cs.
|
getset |
Maximum size of the chain to make inactive in SwapActiveChainOperator.
Definition at line 742 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 1050 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 727 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 710 of file RoutingParameters.pb.cs.
|
getset |
Number of solutions to collect during the search. Corresponds to the best solutions found during the search. 0 means "unspecified".
Definition at line 1114 of file RoutingParameters.pb.cs.
|
getset |
Definition at line 839 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 1098 of file RoutingParameters.pb.cs.
|
staticget |
Definition at line 232 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 763 of file RoutingParameters.pb.cs.
|
getset |
If use_cp_sat or use_generalized_cp_sat is true, will report intermediate solutions found by CP-SAT to solution listeners.
Definition at line 1010 of file RoutingParameters.pb.cs.
|
getset |
If use_cp_sat or use_generalized_cp_sat is true, contains the SAT algorithm parameters which will be used.
Definition at line 994 of file RoutingParameters.pb.cs.
|
getset |
Add savings related to reverse arcs when finding the nearest neighbors of the nodes.
Definition at line 406 of file RoutingParameters.pb.cs.
|
getset |
Coefficient of the cost of the arc for which the saving value is being computed: Saving(a-->b) = Cost(a-->end) + Cost(start-->b)
Definition at line 425 of file RoutingParameters.pb.cs.
|
getset |
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].
Definition at line 390 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 370 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 1182 of file RoutingParameters.pb.cs.
|
getset |
– Search limits – Limit to the number of solutions generated during the search. 0 means "unspecified".
Definition at line 1131 of file RoutingParameters.pb.cs.
|
getset |
Limit to the time spent in the search.
Definition at line 1146 of file RoutingParameters.pb.cs.
|
getset |
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).
Definition at line 942 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 960 of file RoutingParameters.pb.cs.
|
getset |
— Search control —
If true, the solver should use depth-first search rather than local search to solve the problem.
Definition at line 925 of file RoutingParameters.pb.cs.
|
getset |
— 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.
Definition at line 1223 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 978 of file RoutingParameters.pb.cs.
|
getset |
Whether to consider arc penalties in cost functions used in local search operators using arc costs.
Definition at line 906 of file RoutingParameters.pb.cs.
|
getset |
Whether the solver should use an Iterated Local Search approach to solve the problem.
Definition at line 1311 of file RoutingParameters.pb.cs.
|
getset |
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.
Definition at line 692 of file RoutingParameters.pb.cs.
|
getset |
— 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.
Definition at line 353 of file RoutingParameters.pb.cs.