![]() |
Google OR-Tools v9.12
a fast and portable software suite for combinatorial optimization
|
#include "ortools/constraint_solver/routing_search.h"
#include <algorithm>
#include <cmath>
#include <cstdint>
#include <cstdlib>
#include <deque>
#include <functional>
#include <limits>
#include <map>
#include <memory>
#include <optional>
#include <set>
#include <string>
#include <tuple>
#include <utility>
#include <vector>
#include "absl/algorithm/container.h"
#include "absl/base/attributes.h"
#include "absl/container/btree_set.h"
#include "absl/container/flat_hash_map.h"
#include "absl/container/flat_hash_set.h"
#include "absl/container/inlined_vector.h"
#include "absl/flags/flag.h"
#include "absl/log/check.h"
#include "absl/log/die_if_null.h"
#include "absl/strings/str_cat.h"
#include "absl/strings/string_view.h"
#include "absl/time/time.h"
#include "absl/types/span.h"
#include "ortools/base/adjustable_priority_queue.h"
#include "ortools/base/logging.h"
#include "ortools/base/map_util.h"
#include "ortools/base/mathutil.h"
#include "ortools/base/protoutil.h"
#include "ortools/base/stl_util.h"
#include "ortools/base/types.h"
#include "ortools/constraint_solver/constraint_solver.h"
#include "ortools/constraint_solver/constraint_solveri.h"
#include "ortools/constraint_solver/routing.h"
#include "ortools/constraint_solver/routing_enums.pb.h"
#include "ortools/constraint_solver/routing_parameters.pb.h"
#include "ortools/constraint_solver/routing_types.h"
#include "ortools/constraint_solver/routing_utils.h"
#include "ortools/graph/christofides.h"
#include "ortools/util/bitset.h"
#include "ortools/util/range_query_function.h"
#include "ortools/util/saturated_arithmetic.h"
Go to the source code of this file.
Namespaces | |
namespace | operations_research |
In SWIG mode, we don't want anything besides these top-level includes. | |
Functions | |
ABSL_FLAG (bool, routing_shift_insertion_cost_by_penalty, true, "Shift insertion costs by the penalty of the inserted node(s).") | |
ABSL_FLAG (int64_t, sweep_sectors, 1, "The number of sectors the space is divided into before it is sweeped" " by the ray.") | |
const Assignment * | operations_research::SolveWithAlternativeSolvers (RoutingModel *primary_model, const std::vector< RoutingModel * > &alternative_models, const RoutingSearchParameters ¶meters, int max_non_improving_iterations) |
const Assignment * | operations_research::SolveFromAssignmentWithAlternativeSolvers (const Assignment *assignment, RoutingModel *primary_model, const std::vector< RoutingModel * > &alternative_models, const RoutingSearchParameters ¶meters, int max_non_improving_iterations) |
Same as above, but taking an initial solution. | |
const Assignment * | operations_research::SolveFromAssignmentWithAlternativeSolversAndParameters (const Assignment *assignment, RoutingModel *primary_model, const RoutingSearchParameters ¶meters, const std::vector< RoutingModel * > &alternative_models, const std::vector< RoutingSearchParameters > &alternative_parameters, int max_non_improving_iterations) |
Same as above but taking alternative parameters for each alternative model. | |
FirstSolutionStrategy::Value | operations_research::AutomaticFirstSolutionStrategy (bool has_pickup_deliveries, bool has_node_precedences, bool has_single_vehicle_node) |
std::vector< int64_t > | operations_research::ComputeVehicleEndChainStarts (const RoutingModel &model) |
DecisionBuilder * | operations_research::MakeSweepDecisionBuilder (RoutingModel *model, bool check_assignment) |
DecisionBuilder * | operations_research::MakeAllUnperformed (RoutingModel *model) |
Returns a DecisionBuilder making all nodes unperformed. | |
ABSL_FLAG | ( | bool | , |
routing_shift_insertion_cost_by_penalty | , | ||
true | , | ||
"Shift insertion costs by the penalty of the inserted node(s)." | ) |
ABSL_FLAG | ( | int64_t | , |
sweep_sectors | , | ||
1 | , | ||
"The number of sectors the space is divided into before it is sweeped" " by the ray." | ) |