![]() |
OR-Tools
9.6
|
Collection of objects used to extend the Constraint Solver library. More...
Namespaces | |
| base | |
| bop | |
| cap_prod_util | |
| fz | |
| glop | |
| internal | |
| math_opt | |
| or_internal | |
| packing | |
| pdlp | |
| sat | |
| scheduling | |
| sysinfo | |
| utf8 | |
Classes | |
| class | DenseDoublyLinkedList |
| class | DynamicPartition |
| class | MergingPartition |
| class | SimpleDynamicPartition |
| class | DynamicPermutation |
| class | GraphSymmetryFinder |
| class | HungarianOptimizer |
| class | KnapsackBruteForceSolver |
| struct | KnapsackItemWithEfficiency |
| class | Knapsack64ItemsSolver |
| class | KnapsackDynamicProgrammingSolver |
| class | KnapsackDivideAndConquerSolver |
| class | KnapsackMIPSolver |
| class | KnapsackSolver |
| This library solves knapsack problems. More... | |
| struct | KnapsackAssignment |
| struct | KnapsackItem |
| class | KnapsackSearchNode |
| class | KnapsackSearchPath |
| class | KnapsackState |
| class | KnapsackPropagator |
| class | KnapsackCapacityPropagator |
| class | BaseKnapsackSolver |
| class | KnapsackGenericSolver |
| struct | KnapsackAssignmentForCuts |
| struct | KnapsackItemForCuts |
| class | KnapsackSearchNodeForCuts |
| class | KnapsackSearchPathForCuts |
| class | KnapsackStateForCuts |
| class | KnapsackPropagatorForCuts |
| class | KnapsackSolverForCuts |
| class | SparsePermutation |
| class | AccurateSum |
| class | Bitmap |
| class | MathUtil |
| class | ThreadPool |
| class | Queue |
| struct | StateInfo |
| struct | StateMarker |
| struct | Trail |
| class | Search |
| class | Trace |
| class | LocalSearchMonitorPrimary |
| class | SimpleRevFIFO |
| This class represent a reversible FIFO structure. More... | |
| class | LightIntFunctionElementCt |
| class | LightIntIntFunctionElementCt |
| struct | DefaultPhaseParameters |
| This struct holds all parameters for the default search. More... | |
| class | Solver |
| Solver Class. More... | |
| class | BaseObject |
| A BaseObject is the root of all reversibly allocated objects. More... | |
| class | PropagationBaseObject |
| NOLINT. More... | |
| class | Decision |
| A Decision represents a choice point in the search tree. More... | |
| class | DecisionVisitor |
| A DecisionVisitor is used to inspect a decision. More... | |
| class | DecisionBuilder |
| A DecisionBuilder is responsible for creating the search tree. More... | |
| class | ProfiledDecisionBuilder |
| class | Demon |
| A Demon is the base element of a propagation queue. More... | |
| class | ModelVisitor |
| Model visitor. More... | |
| class | Constraint |
| A constraint is the main modeling object. More... | |
| class | CastConstraint |
| Cast constraints are special channeling constraints designed to keep a variable in sync with an expression. More... | |
| class | SearchMonitor |
| A search monitor is a simple set of callbacks to monitor all search events. More... | |
| class | Rev |
| This class adds reversibility to a POD type. More... | |
| class | NumericalRev |
| Subclass of Rev<T> which adds numerical operations. More... | |
| class | RevArray |
| Reversible array of POD types. More... | |
| class | NumericalRevArray |
| Subclass of RevArray<T> which adds numerical operations. More... | |
| class | IntExpr |
| The class IntExpr is the base of all integer expressions in constraint programming. More... | |
| class | IntVarIterator |
| The class Iterator has two direct subclasses. More... | |
| class | InitAndGetValues |
| Utility class to encapsulate an IntVarIterator and use it in a range-based loop. More... | |
| class | IntVar |
| The class IntVar is a subset of IntExpr. More... | |
| class | SolutionCollector |
| This class is the root class of all solution collectors. More... | |
| class | OptimizeVar |
| This class encapsulates an objective. More... | |
| class | SearchLimit |
| Base class of all search limits. More... | |
| class | RegularLimit |
| Usual limit based on wall_time, number of explored branches and number of failures in the search tree. More... | |
| class | ImprovementSearchLimit |
| class | IntervalVar |
| Interval variables are often used in scheduling. More... | |
| class | SequenceVar |
| A sequence variable is a variable whose domain is a set of possible orderings of the interval variables. More... | |
| class | AssignmentElement |
| class | IntVarElement |
| class | IntervalVarElement |
| class | SequenceVarElement |
| The SequenceVarElement stores a partial representation of ranked interval variables in the underlying sequence variable. More... | |
| class | AssignmentContainer |
| class | Assignment |
| An Assignment is a variable -> domains mapping, used to report solutions to the user. More... | |
| class | Pack |
| class | DisjunctiveConstraint |
| class | SolutionPool |
| This class is used to manage a pool of solutions. More... | |
| class | BaseIntExpr |
| class | RevImmutableMultiMap |
| Reversible Immutable MultiMap class. More... | |
| class | RevSwitch |
| A reversible switch that can switch once from false to true. More... | |
| class | SmallRevBitSet |
| This class represents a small reversible bitset (size <= 64). More... | |
| class | RevBitSet |
| This class represents a reversible bitset. More... | |
| class | RevBitMatrix |
| Matrix version of the RevBitSet class. More... | |
| class | CallMethod0 |
| Demon proxy to a method on the constraint with no arguments. More... | |
| class | CallMethod1 |
| Demon proxy to a method on the constraint with one argument. More... | |
| class | CallMethod2 |
| Demon proxy to a method on the constraint with two arguments. More... | |
| class | CallMethod3 |
| Demon proxy to a method on the constraint with three arguments. More... | |
| class | DelayedCallMethod0 |
| Low-priority demon proxy to a method on the constraint with no arguments. More... | |
| class | DelayedCallMethod1 |
| Low-priority demon proxy to a method on the constraint with one argument. More... | |
| class | DelayedCallMethod2 |
| Low-priority demon proxy to a method on the constraint with two arguments. More... | |
| class | LocalSearchOperator |
| The base class for all local search operators. More... | |
| class | LocalSearchOperatorState |
| class | IntVarLocalSearchOperator |
| Specialization of LocalSearchOperator built from an array of IntVars which specifies the scope of the operator. More... | |
| class | BaseLns |
| This is the base class for building an Lns operator. More... | |
| class | ChangeValue |
| Defines operators which change the value of variables; each neighbor corresponds to one modified variable. More... | |
| class | PathOperator |
| Base class of the local search operators dedicated to path modifications (a path is a set of nodes linked together by arcs). More... | |
| class | LocalSearchState |
| class | LocalSearchVariable |
| class | LocalSearchFilter |
| Local Search Filters are used for fast neighbor pruning. More... | |
| class | LocalSearchFilterManager |
| Filter manager: when a move is made, filters are executed to decide whether the solution is feasible and compute parts of the new cost. More... | |
| class | IntVarLocalSearchFilter |
| class | PropagationMonitor |
| class | LocalSearchMonitor |
| class | BooleanVar |
| class | SymmetryBreaker |
| A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in return. More... | |
| class | SearchLog |
| The base class of all search logs that periodically outputs information when the search is running. More... | |
| class | ModelCache |
| Implements a complete cache for model elements: expressions and constraints. More... | |
| class | ArgumentHolder |
| Argument Holder: useful when visiting a model. More... | |
| class | ModelParser |
| Model Parser. More... | |
| class | ArrayWithOffset |
| class | RevGrowingArray |
| This class is a reversible growing array. More... | |
| class | RevIntSet |
| This is a special class to represent a 'residual' set of T. More... | |
| class | RevPartialSequence |
| --— RevPartialSequence --— More... | |
| class | UnsortedNullableRevBitset |
| This class represents a reversible bitset. More... | |
| class | PathState |
| class | DimensionChecker |
| class | DemonProfiler |
| class | IfThenElseCt |
| class | PiecewiseLinearExpr |
| class | TwoOpt |
| class | Relocate |
| class | Exchange |
| class | Cross |
| class | BaseInactiveNodeToPathOperator |
| class | MakeActiveOperator |
| class | RelocateAndMakeActiveOperator |
| class | MakeActiveAndRelocate |
| class | MakeInactiveOperator |
| class | RelocateAndMakeInactiveOperator |
| class | MakeChainInactiveOperator |
| class | SwapActiveOperator |
| class | ExtendedSwapActiveOperator |
| class | TSPOpt |
| class | TSPLns |
| class | NearestNeighbors |
| class | LinKernighan |
| class | PathLns |
| class | NeighborhoodLimit |
| class | LocalSearchProfiler |
| class | FindOneNeighbor |
| class | LocalSearchPhaseParameters |
| class | Dimension |
| class | RoutingModelInspector |
| class | PathsMetadata |
| class | RoutingModel |
| class | RoutingModelVisitor |
| Routing model visitor. More... | |
| class | DisjunctivePropagator |
| This class acts like a CP propagator: it takes a set of tasks given by their start/duration/end features, and reduces the range of possible values. More... | |
| struct | TravelBounds |
| class | GlobalVehicleBreaksConstraint |
| GlobalVehicleBreaksConstraint ensures breaks constraints are enforced on all vehicles in the dimension passed to its constructor. More... | |
| class | TypeRegulationsChecker |
| class | TypeIncompatibilityChecker |
| Checker for type incompatibilities. More... | |
| class | TypeRequirementChecker |
| Checker for type requirements. More... | |
| class | TypeRegulationsConstraint |
| The following constraint ensures that incompatibilities and requirements between types are respected. More... | |
| struct | BoundCost |
| A structure meant to store soft bounds and associated violation constants. More... | |
| class | SimpleBoundCosts |
| class | RoutingDimension |
| Dimensions represent quantities accumulated at nodes along the routes. More... | |
| class | BasePathFilter |
| Generic path-based filter class. More... | |
| class | RoutingIndexManager |
| Manager for any NodeIndex <-> variable index conversion. More... | |
| class | CumulBoundsPropagator |
| class | RoutingLinearSolverWrapper |
| class | RoutingGlopWrapper |
| class | RoutingCPSatWrapper |
| class | DimensionCumulOptimizerCore |
| class | LocalDimensionCumulOptimizer |
| class | GlobalDimensionCumulOptimizer |
| struct | SlopeAndYIntercept |
| class | MakeRelocateNeighborsOperator |
| Relocate neighborhood which moves chains of neighbors. More... | |
| class | SwapActiveToShortestPathOperator |
| class | MakePairActiveOperator |
| Pair-based neighborhood operators, designed to move nodes by pairs (pairs are static and given). More... | |
| class | MakePairInactiveOperator |
| Operator which makes pairs of active nodes inactive. More... | |
| class | PairRelocateOperator |
| Operator which moves a pair of nodes to another position where the first node of the pair must be before the second node on the same path. More... | |
| class | GroupPairAndRelocateOperator |
| Operator which moves a pair of nodes to another position where the first node of the pair is directly before the second node. More... | |
| class | LightPairRelocateOperator |
| Operator which moves a pair of nodes to another position where the first node of the pair must be before the second node on the same path. More... | |
| class | PairExchangeOperator |
| Operator which exchanges the position of two pairs; for both pairs the first node of the pair must be before the second node on the same path. More... | |
| class | PairExchangeRelocateOperator |
| Operator which exchanges the paths of two pairs (path have to be different). More... | |
| class | SwapIndexPairOperator |
| Operator which iterates through each alternative of a set of pairs. More... | |
| class | IndexPairSwapActiveOperator |
| Operator which inserts inactive nodes into a path and makes a pair of active nodes inactive. More... | |
| class | FilteredHeuristicLocalSearchOperator |
| Class of operators using a RoutingFilteredHeuristic to insert unperformed nodes after changes have been made to the current solution. More... | |
| class | FilteredHeuristicPathLNSOperator |
| LNS-like operator based on a filtered first solution heuristic to rebuild the solution, after the destruction phase consisting of removing one route. More... | |
| class | RelocatePathAndHeuristicInsertUnperformedOperator |
| Heuristic-based local search operator which relocates an entire route to an empty vehicle of different vehicle class and then tries to insert unperformed nodes using the heuristic. More... | |
| class | FilteredHeuristicExpensiveChainLNSOperator |
| Similar to the heuristic path LNS above, but instead of removing one route entirely, the destruction phase consists of removing all nodes on an "expensive" chain from a route. More... | |
| class | FilteredHeuristicCloseNodesLNSOperator |
| Filtered heuristic LNS operator, where the destruction phase consists of removing a node and the 'num_close_nodes' nodes closest to it, along with each of their corresponding sibling pickup/deliveries that are performed. More... | |
| class | RelocateExpensiveChain |
| RelocateExpensiveChain. More... | |
| class | PairNodeSwapActiveOperator |
| Operator which inserts pairs of inactive nodes into a path and makes an active node inactive. More... | |
| class | RelocateSubtrip |
| Tries to move subtrips after an insertion node. More... | |
| class | ExchangeSubtrip |
| class | VehicleTypeCurator |
| Helper class that manages vehicles. More... | |
| class | IntVarFilteredDecisionBuilder |
| Decision builder building a solution using heuristics with local search filters to evaluate its feasibility. More... | |
| class | IntVarFilteredHeuristic |
| Generic filter-based heuristic applied to IntVars. More... | |
| class | RoutingFilteredHeuristic |
| Filter-based heuristic dedicated to routing. More... | |
| class | CheapestInsertionFilteredHeuristic |
| class | GlobalCheapestInsertionFilteredHeuristic |
| Filter-based decision builder which builds a solution by inserting nodes at their cheapest position on any route; potentially several routes can be built in parallel. More... | |
| class | InsertionGenerator |
| class | LocalCheapestInsertionFilteredHeuristic |
| Filter-base decision builder which builds a solution by inserting nodes at their cheapest position. More... | |
| class | CheapestAdditionFilteredHeuristic |
| Filtered-base decision builder based on the addition heuristic, extending a path from its start node with the cheapest arc. More... | |
| class | EvaluatorCheapestAdditionFilteredHeuristic |
| A CheapestAdditionFilteredHeuristic where the notion of 'cheapest arc' comes from an arc evaluator. More... | |
| class | ComparatorCheapestAdditionFilteredHeuristic |
| A CheapestAdditionFilteredHeuristic where the notion of 'cheapest arc' comes from an arc comparator. More... | |
| class | SavingsFilteredHeuristic |
| Filter-based decision builder which builds a solution by using Clarke & Wright's Savings heuristic. More... | |
| class | SequentialSavingsFilteredHeuristic |
| class | ParallelSavingsFilteredHeuristic |
| class | ChristofidesFilteredHeuristic |
| Christofides addition heuristic. More... | |
| class | SweepArranger |
| Class to arrange indices by their distance and their angle from the depot. More... | |
| class | SymmetryManager |
| class | SimpleLinearSumAssignment |
| class | AStarSP |
| class | BellmanFord |
| class | ChristofidesPathSolver |
| class | BronKerboschAlgorithm |
| class | DijkstraSP |
| class | EbertGraph |
| class | ForwardEbertGraph |
| class | ForwardStaticGraph |
| class | StarGraphBase |
| class | PermutationIndexComparisonByArcHead |
| class | EbertGraphBase |
| struct | graph_traits |
| struct | graph_traits< ForwardEbertGraph< NodeIndexType, ArcIndexType > > |
| struct | graph_traits< ForwardStaticGraph< NodeIndexType, ArcIndexType > > |
| class | TailArrayManager |
| class | ArcFunctorOrderingByTailAndHead |
| class | AnnotatedGraphBuildManager |
| struct | Graphs |
| struct | Graphs< operations_research::StarGraph > |
| class | ElementIterator |
| class | Set |
| class | SetRangeIterator |
| class | SetRangeWithCardinality |
| class | LatticeMemoryManager |
| class | HamiltonianPathSolver |
| class | PruningHamiltonianSolver |
| class | LinearSumAssignment |
| class | CostValueCycleHandler |
| class | ArcIndexOrderingByTailNode |
| class | GenericMaxFlow |
| class | SimpleMaxFlow |
| class | PriorityQueueWithRestrictedPush |
| class | MaxFlowStatusClass |
| class | MaxFlow |
| class | GenericMinCostFlow |
| class | MinCostFlowBase |
| class | SimpleMinCostFlow |
| class | MinCostFlow |
| class | VolgenantJonkerEvaluator |
| class | HeldWolfeCrowderEvaluator |
| struct | TravelingSalesmanLowerBoundParameters |
| class | MinCostPerfectMatching |
| class | BlossomGraph |
| struct | GScipResult |
| struct | GScipLinearRange |
| class | GScip |
| struct | GScipQuadraticRange |
| struct | GScipSOSData |
| struct | GScipIndicatorConstraint |
| struct | GScipLogicalConstraintData |
| struct | GScipVariableOptions |
| struct | GScipConstraintOptions |
| struct | GScipEventHandlerDescription |
| class | GScipEventHandlerContext |
| class | GScipEventHandler |
| struct | GScipLinearExpr |
| struct | GScipIndicatorRangeConstraint |
| struct | CppFlags |
| Simple structure that holds useful C++ flags to setup from non-C++ languages. More... | |
| class | CppBridge |
| This class performs various C++ initialization. More... | |
| class | OrToolsVersion |
| class | BopInterface |
| class | CBCInterface |
| class | CLPInterface |
| class | GLOPInterface |
| class | GurobiInterface |
| class | KnapsackInterface |
| class | LinearExpr |
| LinearExpr models a quantity that is linear in the decision variables (MPVariable) of an optimization problem, i.e. More... | |
| class | LinearRange |
| An expression of the form: More... | |
| class | MPSolver |
| This mathematical programming (MP) solver class is the main class though which users build and solve problems. More... | |
| class | MPObjective |
| A class to express a linear objective. More... | |
| class | MPVariable |
| The class for variables of a Mathematical Programming (MP) model. More... | |
| class | MPConstraint |
| The class for constraints of a Mathematical Programming (MP) model. More... | |
| class | MPSolverParameters |
| This class stores parameter settings for LP and MIP solvers. More... | |
| class | MPSolverInterface |
| class | MPCallbackContext |
| class | MPCallback |
| class | MPCallbackList |
| struct | MPModelExportOptions |
| Export options. More... | |
| class | PdlpInterface |
| class | SatInterface |
| struct | CallbackSetup |
| struct | ScipConstraintHandlerDescription |
| class | ScipConstraintHandlerContext |
| struct | CallbackRangeConstraint |
| class | ScipConstraintHandler |
| struct | ScipCallbackConstraintOptions |
| class | SCIPInterface |
| class | ScipConstraintHandlerForMPCallback |
| class | ScipMPCallbackContext |
| class | ModelBuilderHelper |
| class | LogCallback |
| class | ModelSolverHelper |
| class | CarpParser |
| class | LocationContainer |
| class | RandomDemand |
| class | ServiceTimePlusTransition |
| class | StopServiceTimePlusTransition |
| class | NearpParser |
| class | PdTspParser |
| class | Edge |
| class | Arc |
| struct | Coordinates2 |
| struct | Coordinates3 |
| struct | SimpleTimeWindow |
| class | SolomonParser |
| class | RoutingSolution |
| class | TspLibParser |
| class | TspLibTourParser |
| class | CVRPToursParser |
| class | TspTWParser |
| class | AdaptiveParameterValue |
| class | AffineRelation |
| class | Bitset64 |
| class | BitQueue64 |
| class | SparseBitset |
| class | CachedLog |
| class | FlatMatrix |
| class | RoundTripDoubleFormat |
| class | ScopedFloatingPointEnv |
| class | GraphExporter |
| class | IntegerPriorityQueue |
| class | LazyMutableCopy |
| class | SolverLogger |
| class | MonoidOperationTree |
| class | PermutationCycleHandler |
| class | ArrayIndexCycleHandler |
| class | PermutationApplier |
| class | PiecewiseSegment |
| class | PiecewiseLinearFunction |
| struct | QapProblem |
| class | RangeMinimumQuery |
| class | RangeMinimumIndexQuery |
| class | RangeIntToIntFunction |
| class | RangeMinMaxIndexFunction |
| class | ReversibleInterface |
| class | RevRepository |
| class | RevVector |
| class | RevMap |
| class | RevGrowingMultiMap |
| class | RunningAverage |
| class | RunningMax |
| class | SigintHandler |
| struct | ClosedInterval |
| Represents a closed interval [start, end]. More... | |
| class | Domain |
| We call domain any subset of Int64 = [kint64min, kint64max]. More... | |
| class | SortedDisjointIntervalList |
| This class represents a sorted list of disjoint, closed intervals. More... | |
| class | Stat |
| class | StatsGroup |
| class | DistributionStat |
| class | TimeDistribution |
| class | RatioDistribution |
| class | DoubleDistribution |
| class | IntegerDistribution |
| class | EnabledScopedTimeDistributionUpdater |
| class | DisabledScopedTimeDistributionUpdater |
| class | DisabledScopedInstructionCounter |
| struct | DebugStringFormatter |
| class | StrongIndex |
| class | StrongInt64 |
| class | TimeLimit |
| A simple class to enforce both an elapsed time limit and a deterministic time limit in the same thread as a program. More... | |
| class | SharedTimeLimit |
| class | NestedTimeLimit |
| Provides a way to nest time limits for algorithms where a certain part of the computation is bounded not just by the overall time limit, but also by a stricter time limit specific just for this particular part. More... | |
| class | IntTupleSet |
| class | VectorMap |
| class | VectorOrFunction |
| class | VectorOrFunction< ScalarType, std::vector< ScalarType > > |
| class | MatrixOrFunction |
| class | MatrixOrFunction< ScalarType, std::vector< std::vector< ScalarType > >, square > |
| class | ZVector |
Typedefs | |
| typedef KnapsackItem * | KnapsackItemPtr |
| using | KnapsackItemForCutsPtr = std::unique_ptr< KnapsackItemForCuts > |
| typedef std::function< int64_t(int64_t)> | RoutingTransitCallback1 |
| typedef std::function< int64_t(int64_t, int64_t)> | RoutingTransitCallback2 |
| typedef std::pair< std::vector< int64_t >, std::vector< int64_t > > | RoutingIndexPair |
| typedef std::vector< RoutingIndexPair > | RoutingIndexPairs |
| using | NodeIndex = int32_t |
| typedef int32_t | ArcIndex |
| typedef int64_t | FlowQuantity |
| using | CostValue = int64_t |
| typedef EbertGraph< NodeIndex, ArcIndex > | StarGraph |
| typedef ForwardEbertGraph< NodeIndex, ArcIndex > | ForwardStarGraph |
| typedef ForwardStaticGraph< NodeIndex, ArcIndex > | ForwardStarStaticGraph |
| typedef ZVector< NodeIndex > | NodeIndexArray |
| typedef ZVector< ArcIndex > | ArcIndexArray |
| typedef ZVector< FlowQuantity > | QuantityArray |
| typedef ZVector< CostValue > | CostArray |
| typedef int | PathNodeIndex |
| using | GScipSolution = absl::flat_hash_map< SCIP_VAR *, double > |
| using | GScipBranchingPriority = absl::flat_hash_map< SCIP_VAR *, int > |
| using | GScipMessageHandler = std::function< void(GScipMessageType type, absl::string_view message)> |
| typedef std::function< int64_t(RoutingNodeIndex, RoutingNodeIndex)> | RoutingNodeEvaluator2 |
| typedef std::function< int64_t(int, int)> | EdgeWeights |
| using | random_engine_t = std::mt19937_64 |
| typedef std::pair< int64_t, int64_t > | Fraction |
| template<class Iterator > | |
| using | value_type_t = typename std::iterator_traits< Iterator >::value_type |
| using | ScopedTimeDistributionUpdater = DisabledScopedTimeDistributionUpdater |
| using | ScopedInstructionCounter = DisabledScopedInstructionCounter |
| typedef ZVector< int8_t > | Int8ZVector |
| typedef ZVector< int16_t > | Int16ZVector |
| typedef ZVector< int32_t > | Int32ZVector |
| typedef ZVector< int64_t > | Int64ZVector |
| typedef ZVector< uint8_t > | UInt8ZVector |
| typedef ZVector< uint16_t > | UInt16ZVector |
| typedef ZVector< uint32_t > | UInt32ZVector |
| typedef ZVector< uint64_t > | UInt64ZVector |
Functions | |
| std::vector< int > | CountTriangles (const ::util::StaticGraph< int, int > &graph, int max_degree) |
| void | LocalBfs (const ::util::StaticGraph< int, int > &graph, int source, int stop_after_num_nodes, std::vector< int > *visited, std::vector< int > *num_within_radius, std::vector< bool > *tmp_mask) |
| bool | InputContainsNan (const std::vector< std::vector< double >> &input) |
| void | MinimizeLinearAssignment (const std::vector< std::vector< double >> &cost, absl::flat_hash_map< int, int > *direct_assignment, absl::flat_hash_map< int, int > *reverse_assignment) |
| void | MaximizeLinearAssignment (const std::vector< std::vector< double >> &cost, absl::flat_hash_map< int, int > *direct_assignment, absl::flat_hash_map< int, int > *reverse_assignment) |
| void | MinimizeLinearAssignment (const std::vector< std::vector< double > > &cost, absl::flat_hash_map< int, int > *direct_assignment, absl::flat_hash_map< int, int > *reverse_assignment) |
| void | MaximizeLinearAssignment (const std::vector< std::vector< double > > &cost, absl::flat_hash_map< int, int > *direct_assignment, absl::flat_hash_map< int, int > *reverse_assignment) |
| void | GenericCheck (const int expected_assignment_size, const absl::flat_hash_map< int, int > &direct_assignment, const absl::flat_hash_map< int, int > &reverse_assignment, const int expected_agents[], const int expected_tasks[]) |
| void | TestMinimization (const std::vector< std::vector< double >> &cost, const int expected_assignment_size, const int expected_agents[], const int expected_tasks[]) |
| void | TestMaximization (const std::vector< std::vector< double >> &cost, const int expected_assignment_size, const int expected_agents[], const int expected_tasks[]) |
| TEST (LinearAssignmentTest, NullMatrix) | |
| TEST (LinearAssignmentTest, InvalidMatrix) | |
| TEST (LinearAssignmentTest, SizeOneMatrix) | |
| TEST (LinearAssignmentTest, Small4x4Matrix) | |
| TEST (LinearAssignmentTest, Small3x4Matrix) | |
| TEST (LinearAssignmentTest, Small4x3Matrix) | |
| bool | CompareKnapsackItemWithEfficiencyInDecreasingEfficiencyOrder (const KnapsackItemWithEfficiency &item1, const KnapsackItemWithEfficiency &item2) |
| const KnapsackSearchNodeForCuts * | MoveUpToDepth (const KnapsackSearchNodeForCuts *node, int depth) |
| uint64_t | fasthash64 (const void *buf, size_t len, uint64_t seed) |
| static void | mix (uint64_t &a, uint64_t &b, uint64_t &c) |
| void | FixFlagsAndEnvironmentForSwig () |
| void | KeepAbslSymbols () |
| int32_t | strtoint32 (absl::string_view word) |
| int64_t | strtoint64 (absl::string_view word) |
| int32_t | atoi32 (const std::string &word) |
| int64_t | atoi64 (const std::string &word) |
| int64_t | GetProcessMemoryUsage () |
| void | RunWorker (void *data) |
| int | OrToolsMajorVersion () |
| int | OrToolsMinorVersion () |
| int | OrToolsPatchVersion () |
| std::string | OrToolsVersionString () |
| template<class Var , class Element , class Proto , class Container > | |
| void | RealLoad (const AssignmentProto &assignment_proto, Container *const container, int(AssignmentProto::*GetSize)() const, const Proto &(AssignmentProto::*GetElem)(int) const) |
| template<class Var , class Element , class Proto , class Container > | |
| void | RealSave (AssignmentProto *const assignment_proto, const Container &container, Proto *(AssignmentProto::*Add)()) |
| template<class Container , class Element > | |
| void | RealDebugString (const Container &container, std::string *const out) |
| void | SetAssignmentFromAssignment (Assignment *target_assignment, const std::vector< IntVar * > &target_vars, const Assignment *source_assignment, const std::vector< IntVar * > &source_vars) |
| NOLINT. More... | |
| std::ostream & | operator<< (std::ostream &out, const Assignment &assignment) |
| DemonProfiler * | BuildDemonProfiler (Solver *const solver) |
| void | DeleteDemonProfiler (DemonProfiler *const monitor) |
| void | InstallDemonProfiler (DemonProfiler *const monitor) |
| LocalSearchProfiler * | BuildLocalSearchProfiler (Solver *solver) |
| void | DeleteLocalSearchProfiler (LocalSearchProfiler *monitor) |
| void | InstallLocalSearchProfiler (LocalSearchProfiler *monitor) |
| void | CleanVariableOnFail (IntVar *const var) |
| void | RestoreBoolValue (IntVar *const var) |
| void | InternalSaveBooleanVarValue (Solver *const solver, IntVar *const var) |
| bool | LocalOptimumReached (Search *const search) |
| bool | AcceptDelta (Search *const search, Assignment *delta, Assignment *deltadelta) |
| void | AcceptNeighbor (Search *const search) |
| void | AcceptUncheckedNeighbor (Search *const search) |
| PropagationMonitor * | BuildTrace (Solver *const s) |
| LocalSearchMonitor * | BuildLocalSearchMonitorPrimary (Solver *const s) |
| ModelCache * | BuildModelCache (Solver *const solver) |
| PropagationMonitor * | BuildPrintTrace (Solver *const s) |
| std::ostream & | operator<< (std::ostream &out, const Solver *const s) |
| std::ostream & | operator<< (std::ostream &out, const BaseObject *const o) |
| int64_t | CpRandomSeed () |
| int64_t | Zero () |
| NOLINT. More... | |
| int64_t | One () |
| This method returns 1. More... | |
| uint64_t | Hash1 (uint64_t value) |
| Hash functions. More... | |
| uint64_t | Hash1 (uint32_t value) |
| uint64_t | Hash1 (int64_t value) |
| uint64_t | Hash1 (int value) |
| uint64_t | Hash1 (void *const ptr) |
| template<class T > | |
| uint64_t | Hash1 (const std::vector< T * > &ptrs) |
| uint64_t | Hash1 (const std::vector< int64_t > &ptrs) |
| template<class T > | |
| LocalSearchOperator * | MakeLocalSearchOperator (Solver *solver, const std::vector< IntVar * > &vars, const std::vector< IntVar * > &secondary_vars, std::function< int(int64_t)> start_empty_path_class) |
| Operator Factories. More... | |
| template<class T > | |
| bool | IsArrayConstant (const std::vector< T > &values, const T &value) |
| template<class T > | |
| bool | IsArrayBoolean (const std::vector< T > &values) |
| template<class T > | |
| bool | AreAllOnes (const std::vector< T > &values) |
| template<class T > | |
| bool | AreAllNull (const std::vector< T > &values) |
| template<class T > | |
| bool | AreAllGreaterOrEqual (const std::vector< T > &values, const T &value) |
| template<class T > | |
| bool | AreAllLessOrEqual (const std::vector< T > &values, const T &value) |
| template<class T > | |
| bool | AreAllPositive (const std::vector< T > &values) |
| template<class T > | |
| bool | AreAllNegative (const std::vector< T > &values) |
| template<class T > | |
| bool | AreAllStrictlyPositive (const std::vector< T > &values) |
| template<class T > | |
| bool | AreAllStrictlyNegative (const std::vector< T > &values) |
| template<class T > | |
| bool | IsIncreasingContiguous (const std::vector< T > &values) |
| template<class T > | |
| bool | IsIncreasing (const std::vector< T > &values) |
| template<class T > | |
| bool | IsArrayInRange (const std::vector< IntVar * > &vars, T range_min, T range_max) |
| bool | AreAllBound (const std::vector< IntVar * > &vars) |
| bool | AreAllBooleans (const std::vector< IntVar * > &vars) |
| template<class T > | |
| bool | AreAllBoundOrNull (const std::vector< IntVar * > &vars, const std::vector< T > &values) |
| Returns true if all the variables are assigned to a single value, or if their corresponding value is null. More... | |
| bool | AreAllBoundTo (const std::vector< IntVar * > &vars, int64_t value) |
| Returns true if all variables are assigned to 'value'. More... | |
| int64_t | MaxVarArray (const std::vector< IntVar * > &vars) |
| int64_t | MinVarArray (const std::vector< IntVar * > &vars) |
| void | FillValues (const std::vector< IntVar * > &vars, std::vector< int64_t > *const values) |
| int64_t | PosIntDivUp (int64_t e, int64_t v) |
| int64_t | PosIntDivDown (int64_t e, int64_t v) |
| std::vector< int64_t > | ToInt64Vector (const std::vector< int > &input) |
| LocalSearchFilter * | MakePathStateFilter (Solver *solver, std::unique_ptr< PathState > path_state, const std::vector< IntVar * > &nexts) |
| LocalSearchFilter * | MakeDimensionFilter (Solver *solver, std::unique_ptr< DimensionChecker > checker, const std::string &dimension_name) |
| std::string | DefaultPhaseStatString (DecisionBuilder *db) |
| void | RegisterDemon (Solver *const solver, Demon *const demon, DemonProfiler *const monitor) |
| void | DemonProfilerAddFakeRun (DemonProfiler *const monitor, Demon *const demon, int64_t start_time, int64_t end_time, bool is_fail) |
| void | DemonProfilerExportInformation (DemonProfiler *const monitor, const Constraint *const constraint, int64_t *const fails, int64_t *const initial_propagation_runtime, int64_t *const demon_invocations, int64_t *const total_demon_runtime, int *const demon_count) |
| void | DemonProfilerBeginInitialPropagation (DemonProfiler *const monitor, Constraint *const constraint) |
| void | DemonProfilerEndInitialPropagation (DemonProfiler *const monitor, Constraint *const constraint) |
| void | LinkVarExpr (Solver *const s, IntExpr *const expr, IntVar *const var) |
| Constraint * | SetIsEqual (IntVar *const var, const std::vector< int64_t > &values, const std::vector< IntVar * > &vars) |
| Constraint * | SetIsGreaterOrEqual (IntVar *const var, const std::vector< int64_t > &values, const std::vector< IntVar * > &vars) |
| IntExpr * | BuildStartExpr (IntervalVar *var) |
| IntExpr * | BuildDurationExpr (IntervalVar *var) |
| IntExpr * | BuildEndExpr (IntervalVar *var) |
| IntExpr * | BuildSafeStartExpr (IntervalVar *var, int64_t unperformed_value) |
| IntExpr * | BuildSafeDurationExpr (IntervalVar *var, int64_t unperformed_value) |
| IntExpr * | BuildSafeEndExpr (IntervalVar *var, int64_t unperformed_value) |
| DecisionBuilder * | MakeSetValuesFromTargets (Solver *solver, std::vector< IntVar * > variables, std::vector< int64_t > targets) |
| A decision builder which tries to assign values to variables as close as possible to target values first. More... | |
| DecisionBuilder * | MakeRestoreDimensionValuesForUnchangedRoutes (RoutingModel *model) |
| void | FillPathEvaluation (const std::vector< int64_t > &path, const RoutingModel::TransitCallback2 &evaluator, std::vector< int64_t > *values) |
| void | AppendTasksFromPath (const std::vector< int64_t > &path, const TravelBounds &travel_bounds, const RoutingDimension &dimension, DisjunctivePropagator::Tasks *tasks) |
| void | AppendTasksFromIntervals (const std::vector< IntervalVar * > &intervals, DisjunctivePropagator::Tasks *tasks) |
| void | FillTravelBoundsOfVehicle (int vehicle, const std::vector< int64_t > &path, const RoutingDimension &dimension, TravelBounds *travel_bounds) |
| bool | SolveModelWithSat (const RoutingModel &model, const RoutingSearchParameters &search_parameters, const Assignment *initial_solution, Assignment *solution) |
| Attempts to solve the model using the cp-sat solver. More... | |
| IntVarLocalSearchFilter * | MakeVehicleBreaksFilter (const RoutingModel &routing_model, const RoutingDimension &dimension) |
| IntVarLocalSearchFilter * | MakeMaxActiveVehiclesFilter (const RoutingModel &routing_model) |
| Returns a filter ensuring that max active vehicles constraints are enforced. More... | |
| IntVarLocalSearchFilter * | MakeNodeDisjunctionFilter (const RoutingModel &routing_model, bool filter_cost) |
| Returns a filter ensuring that node disjunction constraints are enforced. More... | |
| IntVarLocalSearchFilter * | MakeVehicleAmortizedCostFilter (const RoutingModel &routing_model) |
| Returns a filter computing vehicle amortized costs. More... | |
| IntVarLocalSearchFilter * | MakeTypeRegulationsFilter (const RoutingModel &routing_model) |
| Returns a filter ensuring type regulation constraints are enforced. More... | |
| IntVarLocalSearchFilter * | MakePathCumulFilter (const RoutingDimension &dimension, bool propagate_own_objective_value, bool filter_objective_cost, bool can_use_lp) |
| Returns a filter handling dimension costs and constraints. More... | |
| void | AppendLightWeightDimensionFilters (const PathState *path_state, const std::vector< RoutingDimension * > &dimensions, std::vector< LocalSearchFilterManager::FilterEvent > *filters) |
| Appends dimension-based filters to the given list of filters using a path state. More... | |
| void | AppendDimensionCumulFilters (const std::vector< RoutingDimension * > &dimensions, const RoutingSearchParameters ¶meters, bool filter_objective_cost, bool use_chain_cumul_filter, std::vector< LocalSearchFilterManager::FilterEvent > *filters) |
| IntVarLocalSearchFilter * | MakePickupDeliveryFilter (const RoutingModel &routing_model, const RoutingModel::IndexPairs &pairs, const std::vector< RoutingModel::PickupAndDeliveryPolicy > &vehicle_policies) |
| Returns a filter enforcing pickup and delivery constraints for the given pair of nodes and given policies. More... | |
| IntVarLocalSearchFilter * | MakeVehicleVarFilter (const RoutingModel &routing_model) |
| Returns a filter checking that vehicle variable domains are respected. More... | |
| IntVarLocalSearchFilter * | MakeCumulBoundsPropagatorFilter (const RoutingDimension &dimension) |
| Returns a filter handling dimension cumul bounds. More... | |
| IntVarLocalSearchFilter * | MakeGlobalLPCumulFilter (GlobalDimensionCumulOptimizer *optimizer, GlobalDimensionCumulOptimizer *mp_optimizer, bool filter_objective_cost) |
| Returns a filter checking global linear constraints and costs. More... | |
| LocalSearchFilter * | MakeResourceAssignmentFilter (LocalDimensionCumulOptimizer *optimizer, LocalDimensionCumulOptimizer *mp_optimizer, bool propagate_own_objective_value, bool filter_objective_cost) |
| Returns a filter checking the feasibility and cost of the resource assignment. More... | |
| IntVarLocalSearchFilter * | MakeCPFeasibilityFilter (RoutingModel *routing_model) |
| Returns a filter checking the current solution using CP propagation. More... | |
| void | SetFirstSolutionStrategyFromFlags (RoutingSearchParameters *parameters) |
| void | SetLocalSearchMetaheuristicFromFlags (RoutingSearchParameters *parameters) |
| void | AddLocalSearchNeighborhoodOperatorsFromFlags (RoutingSearchParameters *parameters) |
| void | SetSearchLimitsFromFlags (RoutingSearchParameters *parameters) |
| void | SetMiscellaneousParametersFromFlags (RoutingSearchParameters *parameters) |
| RoutingSearchParameters | BuildSearchParametersFromFlags () |
| Builds routing search parameters from flags. More... | |
| RoutingModelParameters | BuildModelParametersFromFlags () |
| Builds routing search parameters from flags. More... | |
| std::vector< bool > | SlopeAndYInterceptToConvexityRegions (const std::vector< SlopeAndYIntercept > &slope_and_y_intercept) |
| std::vector< SlopeAndYIntercept > | PiecewiseLinearFormulationToSlopeAndYIntercept (const RoutingModel::RouteDimensionTravelInfo::TransitionInfo::PiecewiseLinearFormulation &pwl_function, int index_start, int index_end) |
| PiecewiseEvaluationStatus | ComputePiecewiseLinearFormulationValue (const RoutingModel::RouteDimensionTravelInfo::TransitionInfo::PiecewiseLinearFormulation &pwl, int64_t x, int64_t *value, double delta) |
| int64_t | ComputeConvexPiecewiseLinearFormulationValue (const RoutingModel::RouteDimensionTravelInfo::TransitionInfo::PiecewiseLinearFormulation &pwl, int64_t x, double delta) |
| bool | ComputeVehicleToResourcesAssignmentCosts (int v, const RoutingModel::ResourceGroup &resource_group, const std::function< int64_t(int64_t)> &next_accessor, const std::function< int64_t(int64_t, int64_t)> &transit_accessor, bool optimize_vehicle_costs, LocalDimensionCumulOptimizer *lp_optimizer, LocalDimensionCumulOptimizer *mp_optimizer, std::vector< int64_t > *assignment_costs, std::vector< std::vector< int64_t >> *cumul_values, std::vector< std::vector< int64_t >> *break_values) |
| int64_t | ComputeBestVehicleToResourceAssignment (std::vector< int > vehicles, int num_resources, std::function< const std::vector< int64_t > *(int)> vehicle_to_resource_assignment_costs, std::vector< int > *resource_indices) |
| std::string | Int64ToStr (int64_t number) |
| std::string | DomainToString (const ::google::protobuf::RepeatedField< int64_t > *domain) |
| std::string | VariableToString (std::pair< sat::IntegerVariableProto, int > &variable_pair, const sat::CpSolverResponse &response_) |
| std::string | ConstraintToString (const sat::ConstraintProto &constraint, const sat::CpModelProto &model_, bool show_enforcement=true) |
| std::string | VariablesToString (absl::flat_hash_map< std::string, std::pair< sat::IntegerVariableProto, int >> &variables, absl::flat_hash_map< std::string, std::vector< int >> &variable_instances, absl::flat_hash_map< std::string, absl::flat_hash_set< std::string >> &variable_childs, const sat::CpSolverResponse &response_, const std::string &variable, std::string prefix="") |
| RoutingModelParameters | DefaultRoutingModelParameters () |
| RoutingSearchParameters | DefaultRoutingSearchParameters () |
| std::string | FindErrorInRoutingSearchParameters (const RoutingSearchParameters &search_parameters) |
| Returns an empty std::string if the routing search parameters are valid, and a non-empty, human readable error description if they're not. More... | |
| std::vector< std::string > | FindErrorsInRoutingSearchParameters (const RoutingSearchParameters &search_parameters) |
| Returns a list of std::string describing the errors in the routing search parameters. More... | |
| FirstSolutionStrategy::Value | AutomaticFirstSolutionStrategy (bool has_pickup_deliveries, bool has_node_precedences, bool has_single_vehicle_node) |
| Returns the best value for the automatic first solution strategy, based on the given model parameters. More... | |
| std::vector< int64_t > | ComputeVehicleEndChainStarts (const RoutingModel &model) |
| Computes and returns the first node in the end chain of each vehicle in the model, based on the current bound NextVar values. More... | |
| DecisionBuilder * | MakeSweepDecisionBuilder (RoutingModel *model, bool check_assignment) |
| DecisionBuilder * | MakeAllUnperformed (RoutingModel *model) |
| DEFINE_INT_TYPE (RoutingNodeIndex, int) | |
| Defining common types used in the routing library outside the main RoutingModel class has several purposes: 1) It allows some small libraries to avoid a dependency on routing. More... | |
| DEFINE_INT_TYPE (RoutingCostClassIndex, int) | |
| DEFINE_INT_TYPE (RoutingDimensionIndex, int) | |
| DEFINE_INT_TYPE (RoutingDisjunctionIndex, int) | |
| DEFINE_INT_TYPE (RoutingVehicleClassIndex, int) | |
| BaseAssignVariables::Mode | ChooseMode (Solver::IntValueStrategy val_str) |
| int | ComputeFormVarStatus (glp_prob *const problem, const int num_cstrs, const int k) |
| double | ComputeFormVarReducedCost (glp_prob *const problem, const int num_cstrs, const int k) |
| double | ComputeFormVarPrimalValue (glp_prob *const problem, const int num_cstrs, const int k) |
| double | ComputeFormVarLowerBound (glp_prob *const problem, const int num_cstrs, const int k) |
| double | ComputeFormVarUpperBound (glp_prob *const problem, const int num_cstrs, const int k) |
| void | SetupGlpkEnvAutomaticDeletion () |
| std::string | SolutionStatusString (const int status) |
| std::string | BasisStatusString (const int stat) |
| std::string | ReturnCodeString (const int rc) |
| std::string | TruncateAndQuoteGLPKName (const std::string_view original_name) |
| bool | AStarShortestPath (int node_count, int start_node, int end_node, std::function< int64_t(int, int)> graph, std::function< int64_t(int)> heuristic, int64_t disconnected_distance, std::vector< int > *nodes) |
| bool | BellmanFordShortestPath (int node_count, int start_node, int end_node, std::function< int64_t(int, int)> graph, int64_t disconnected_distance, std::vector< int > *nodes) |
| template<typename WeightFunctionType , typename GraphType > | |
| absl::StatusOr< std::vector< std::pair< typename GraphType::NodeIndex, typename GraphType::NodeIndex > > > | ComputeMinimumWeightMatching (const GraphType &graph, const WeightFunctionType &weight) |
| template<typename WeightFunctionType , typename GraphType > | |
| absl::StatusOr< std::vector< std::pair< typename GraphType::NodeIndex, typename GraphType::NodeIndex > > > | ComputeMinimumWeightMatchingWithMIP (const GraphType &graph, const WeightFunctionType &weight) |
| void | FindCliques (std::function< bool(int, int)> graph, int node_count, std::function< bool(const std::vector< int > &)> callback) |
| void | CoverArcsByCliques (std::function< bool(int, int)> graph, int node_count, std::function< bool(const std::vector< int > &)> callback) |
| bool | DijkstraShortestPath (int node_count, int start_node, int end_node, std::function< int64_t(int, int)> graph, int64_t disconnected_distance, std::vector< int > *nodes) |
| bool | StableDijkstraShortestPath (int node_count, int start_node, int end_node, std::function< int64_t(int, int)> graph, int64_t disconnected_distance, std::vector< int > *nodes) |
| template<typename GraphType > | |
| bool | BuildLineGraph (const GraphType &graph, GraphType *const line_graph) |
| template<typename Graph > | |
| bool | IsEulerianGraph (const Graph &graph, bool assume_connectivity=true) |
| template<typename NodeIndex , typename Graph > | |
| bool | IsSemiEulerianGraph (const Graph &graph, std::vector< NodeIndex > *odd_nodes, bool assume_connectivity=true) |
| template<typename NodeIndex , typename Graph > | |
| std::vector< NodeIndex > | BuildEulerianPathFromNode (const Graph &graph, NodeIndex root) |
| template<typename NodeIndex , typename Graph > | |
| std::vector< NodeIndex > | BuildEulerianTourFromNode (const Graph &graph, NodeIndex root, bool assume_connectivity=true) |
| template<typename Graph > | |
| std::vector< typename Graph::NodeIndex > | BuildEulerianTour (const Graph &graph, bool assume_connectivity=true) |
| template<typename Graph > | |
| std::vector< typename Graph::NodeIndex > | BuildEulerianPath (const Graph &graph, bool assume_connectivity=true) |
| template<typename CostType , typename CostFunction > | |
| HamiltonianPathSolver< CostType, CostFunction > | MakeHamiltonianPathSolver (int num_nodes, CostFunction cost) |
| template<typename Graph > | |
| std::vector< typename Graph::ArcIndex > | BuildKruskalMinimumSpanningTreeFromSortedArcs (const Graph &graph, const std::vector< typename Graph::ArcIndex > &sorted_arcs) |
| template<typename Graph , typename ArcComparator > | |
| std::vector< typename Graph::ArcIndex > | BuildKruskalMinimumSpanningTree (const Graph &graph, const ArcComparator &arc_comparator) |
| template<typename Graph , typename ArcValue > | |
| std::vector< typename Graph::ArcIndex > | BuildPrimMinimumSpanningTree (const Graph &graph, const ArcValue &arc_value) |
| template<typename CostFunction > | |
| std::set< std::pair< int, int > > | NearestNeighbors (int number_of_nodes, int number_of_neighbors, const CostFunction &cost) |
| template<typename CostFunction > | |
| void | AddArcsFromMinimumSpanningTree (int number_of_nodes, const CostFunction &cost, std::set< std::pair< int, int >> *arcs) |
| template<typename CostFunction , typename GraphType , typename AcceptFunction > | |
| int | GetNodeMinimizingEdgeCostToSource (const GraphType &graph, int source, const CostFunction &cost, AcceptFunction accept) |
| template<typename CostFunction , typename GraphType , typename CostType > | |
| std::vector< int > | ComputeOneTree (const GraphType &graph, const CostFunction &cost, const std::vector< double > &weights, const std::vector< int > &sorted_arcs, CostType *one_tree_cost) |
| template<typename CostFunction , typename Algorithm > | |
| double | ComputeOneTreeLowerBoundWithAlgorithm (int number_of_nodes, int nearest_neighbors, const CostFunction &cost, Algorithm *algorithm) |
| template<typename CostFunction > | |
| double | ComputeOneTreeLowerBoundWithParameters (int number_of_nodes, const CostFunction &cost, const TravelingSalesmanLowerBoundParameters ¶meters) |
| template<typename CostFunction > | |
| double | ComputeOneTreeLowerBound (int number_of_nodes, const CostFunction &cost) |
| const GScipVariableOptions & | DefaultGScipVariableOptions () |
| const GScipConstraintOptions & | DefaultGScipConstraintOptions () |
| SCIP_RETCODE | DropAllEvents (GScipEventHandler &handler) |
| GScipLinearExpr | GScipDifference (GScipLinearExpr left, const GScipLinearExpr &right) |
| GScipLinearExpr | GScipNegate (GScipLinearExpr expr) |
| GScipLinearRange | GScipLe (const GScipLinearExpr left, const GScipLinearExpr &right) |
| absl::Status | GScipCreateAbs (GScip *gscip, SCIP_Var *x, SCIP_Var *abs_x, const std::string &name) |
| absl::Status | GScipCreateMaximum (GScip *gscip, const GScipLinearExpr &resultant, const std::vector< GScipLinearExpr > &terms, const std::string &name) |
| absl::Status | GScipCreateMinimum (GScip *gscip, const GScipLinearExpr &resultant, const std::vector< GScipLinearExpr > &terms, const std::string &name) |
| absl::Status | GScipAddQuadraticObjectiveTerm (GScip *gscip, std::vector< SCIP_Var * > quadratic_variables1, std::vector< SCIP_Var * > quadratic_variables2, std::vector< double > quadratic_coefficients, const std::string &name) |
| absl::Status | GScipCreateIndicatorRange (GScip *gscip, const GScipIndicatorRangeConstraint &indicator_range, const std::string &name, const GScipConstraintOptions &options) |
| void | GScipSetTimeLimit (absl::Duration time_limit, GScipParameters *parameters) |
| absl::Duration | GScipTimeLimit (const GScipParameters ¶meters) |
| bool | GScipTimeLimitSet (const GScipParameters ¶meters) |
| void | GScipSetMaxNumThreads (int num_threads, GScipParameters *parameters) |
| int | GScipMaxNumThreads (const GScipParameters ¶meters) |
| bool | GScipMaxNumThreadsSet (const GScipParameters ¶meters) |
| void | GScipSetLogLevel (GScipParameters *parameters, int log_level) |
| int | GScipLogLevel (const GScipParameters ¶meters) |
| bool | GScipLogLevelSet (const GScipParameters ¶meters) |
| void | GScipSetOutputEnabled (GScipParameters *parameters, bool output_enabled) |
| bool | GScipOutputEnabled (const GScipParameters ¶meters) |
| bool | GScipOutputEnabledSet (const GScipParameters ¶meters) |
| void | GScipSetRandomSeed (GScipParameters *parameters, int random_seed) |
| int | GScipRandomSeed (const GScipParameters ¶meters) |
| bool | GScipRandomSeedSet (const GScipParameters ¶meters) |
| void | GScipSetCatchCtrlC (const bool catch_ctrl_c, GScipParameters *const parameters) |
| bool | GScipCatchCtrlC (const GScipParameters ¶meters) |
| bool | GScipCatchCtrlCSet (const GScipParameters ¶meters) |
| absl::Status | LegacyScipSetSolverSpecificParameters (absl::string_view parameters, SCIP *scip) |
| bool | GurobiIsCorrectlyInstalled () |
| void | LoadGurobiFunctions (DynamicLibrary *gurobi_dynamic_library) |
| std::vector< std::string > | GurobiDynamicLibraryPotentialPaths () |
| absl::Status | LoadGurobiDynamicLibrary (std::vector< std::string > potential_paths) |
| absl::StatusOr< GRBenv * > | GetGurobiEnv () |
| MPSolverInterface * | BuildBopInterface (MPSolver *const solver) |
| MPSolverInterface * | BuildCBCInterface (MPSolver *const solver) |
| MPSolverInterface * | BuildCLPInterface (MPSolver *const solver) |
| MPSolverInterface * | BuildGLOPInterface (MPSolver *const solver) |
| MPSolver::ResultStatus | GlopToMPSolverResultStatus (glop::ProblemStatus s) |
| MPSolver::BasisStatus | GlopToMPSolverVariableStatus (glop::VariableStatus s) |
| glop::VariableStatus | MPSolverToGlopVariableStatus (MPSolver::BasisStatus s) |
| MPSolver::BasisStatus | GlopToMPSolverConstraintStatus (glop::ConstraintStatus s) |
| glop::ConstraintStatus | MPSolverToGlopConstraintStatus (MPSolver::BasisStatus s) |
| MPSolverInterface * | BuildGurobiInterface (bool mip, MPSolver *const solver) |
| MPSolverInterface * | BuildKnapsackInterface (MPSolver *const solver) |
| std::ostream & | operator<< (std::ostream &stream, const LinearExpr &linear_expr) |
| LinearExpr | operator+ (LinearExpr lhs, const LinearExpr &rhs) |
| LinearExpr | operator- (LinearExpr lhs, const LinearExpr &rhs) |
| LinearExpr | operator* (LinearExpr lhs, double rhs) |
| LinearExpr | operator/ (LinearExpr lhs, double rhs) |
| LinearExpr | operator* (double lhs, LinearExpr rhs) |
| LinearRange | operator<= (const LinearExpr &lhs, const LinearExpr &rhs) |
| LinearRange | operator== (const LinearExpr &lhs, const LinearExpr &rhs) |
| LinearRange | operator>= (const LinearExpr &lhs, const LinearExpr &rhs) |
| bool | SolverTypeIsMip (MPModelRequest::SolverType solver_type) |
| MPSolverInterface * | BuildPdlpInterface (MPSolver *const solver) |
| MPSolverInterface * | BuildSatInterface (MPSolver *const solver) |
| MPSolverInterface * | BuildSCIPInterface (MPSolver *const solver) |
| const absl::string_view | ToString (MPSolver::OptimizationProblemType optimization_problem_type) |
| bool | AbslParseFlag (const absl::string_view text, MPSolver::OptimizationProblemType *solver_type, std::string *error) |
| bool | MPSolverResponseStatusIsRpcError (MPSolverResponseStatus status) |
| bool | SolverTypeIsMip (MPSolver::OptimizationProblemType solver_type) |
| std::ostream & | operator<< (std::ostream &os, MPSolver::OptimizationProblemType optimization_problem_type) |
| std::ostream & | operator<< (std::ostream &os, MPSolver::ResultStatus status) |
| std::string | AbslUnparseFlag (MPSolver::OptimizationProblemType solver_type) |
| std::string | ToString (MPCallbackEvent event) |
| absl::StatusOr< std::string > | ExportModelAsLpFormat (const MPModelProto &model, const MPModelExportOptions &options=MPModelExportOptions()) |
| Outputs the current model (variables, constraints, objective) as a string encoded in the so-called "CPLEX LP file format" as generated by SCIP. More... | |
| absl::StatusOr< std::string > | ExportModelAsMpsFormat (const MPModelProto &model, const MPModelExportOptions &options=MPModelExportOptions()) |
| Outputs the current model (variables, constraints, objective) as a string encoded in MPS file format, using the "free" MPS format. More... | |
| std::string | FindErrorInMPModelProto (const MPModelProto &model, double abs_value_threshold=0.0, bool accept_trivially_infeasible_bounds=false) |
| Returns an empty string iff the model is valid and not trivially infeasible. More... | |
| std::optional< LazyMutableCopy< MPModelProto > > | ExtractValidMPModelOrPopulateResponseStatus (const MPModelRequest &request, MPSolutionResponse *response) |
| If the model is valid and non-empty, returns it (possibly after extracting the model_delta). More... | |
| bool | ExtractValidMPModelInPlaceOrPopulateResponseStatus (MPModelRequest *request, MPSolutionResponse *response) |
| Like ExtractValidMPModelOrPopulateResponseStatus(), but works in-place: if the MPModel needed extraction, it will be populated in the request, and it returns the success boolean. More... | |
| std::string | FindFeasibilityErrorInSolutionHint (const MPModelProto &model, double tolerance) |
| Returns an empty string if the solution hint given in the model is a feasible solution. More... | |
| std::string | FindErrorInMPModelDeltaProto (const MPModelDeltaProto &delta, const MPModelProto &model) |
| Like FindErrorInMPModelProto, but for a MPModelDeltaProto applied to a given baseline model (assumed valid, eg. More... | |
| void | MergeMPConstraintProtoExceptTerms (const MPConstraintProto &from, MPConstraintProto *to) |
| void | ApplyVerifiedMPModelDelta (const MPModelDeltaProto &delta, MPModelProto *model) |
| absl::Status | SetSolverSpecificParameters (absl::string_view parameters, GRBenv *gurobi) |
| absl::StatusOr< MPSolutionResponse > | GurobiSolveProto (const MPModelRequest &request, GRBenv *gurobi_env) |
| absl::StatusOr< MPSolutionResponse > | HighsSolveProto (MPModelRequest request) |
| absl::StatusOr< MPSolutionResponse > | PdlpSolveProto (const MPModelRequest &request, const bool relax_integer_variables, const std::atomic< bool > *interrupt_solve) |
| absl::StatusOr< MPSolutionResponse > | SatSolveProto (MPModelRequest request, std::atomic< bool > *interrupt_solve, std::function< void(const std::string &)> logging_callback, std::function< void(const MPSolution &)> solution_callback) |
| std::string | EncodeSatParametersAsString (const sat::SatParameters ¶meters) |
| std::string | SatSolverVersion () |
| glop::ProblemStatus | ApplyMipPresolveSteps (const glop::GlopParameters &glop_params, MPModelProto *model, std::vector< std::unique_ptr< glop::Preprocessor >> *for_postsolve, SolverLogger *logger) |
| std::string | FindErrorInMPModelForScip (const MPModelProto &model, SCIP *scip) |
| absl::StatusOr< MPSolutionResponse > | ScipSolveProto (const MPModelRequest &request) |
| bool | LinearConstraintIsViolated (const ScipConstraintHandlerContext &context, const LinearRange &constraint) |
| ScipSeparationResult | RunSeparation (internal::ScipCallbackRunner *runner, const ScipConstraintHandlerContext &context, absl::Span< SCIP_CONS * > constraints, bool is_integral) |
| template<typename Constraint > | |
| void | RegisterConstraintHandler (ScipConstraintHandler< Constraint > *handler, SCIP *scip) |
| template<typename ConstraintData > | |
| void | AddCallbackConstraint (SCIP *scip, ScipConstraintHandler< ConstraintData > *handler, const std::string &constraint_name, const ConstraintData *constraint_data, const ScipCallbackConstraintOptions &options) |
| template<typename ConstraintData > | |
| void | RegisterConstraintHandler (ScipConstraintHandler< ConstraintData > *handler, SCIP *scip) |
| absl::StatusOr< glop::DenseRow > | ParseSolFile (const std::string &file_name, const glop::LinearProgram &model) |
| absl::StatusOr< MPSolutionResponse > | ParseSolFile (const std::string &file_name, const MPModelProto &model) |
| absl::StatusOr< glop::DenseRow > | ParseSolString (const std::string &solution, const glop::LinearProgram &model) |
| absl::StatusOr< MPSolutionResponse > | ParseSolString (const std::string &solution, const MPModelProto &model) |
| ::absl::Status | PortableFileSetContents (absl::string_view file_name, absl::string_view content) |
| ::absl::Status | PortableFileGetContents (absl::string_view file_name, std::string *output) |
| bool | PortableTemporaryFile (const char *directory_prefix, std::string *filename_out) |
| ::absl::Status | PortableDeleteFile (absl::string_view file_name) |
| template<class P > | |
| std::string | ProtobufDebugString (const P &message) |
| template<class P > | |
| std::string | ProtobufShortDebugString (const P &message) |
| template<typename ProtoEnumType > | |
| std::string | ProtoEnumToString (ProtoEnumType enum_value) |
| template<typename ProtoType > | |
| bool | ProtobufTextFormatMergeFromString (absl::string_view proto_text_string, ProtoType *proto) |
| template<typename ProtoType > | |
| bool | ProtobufParseTextProtoForFlag (absl::string_view text, ProtoType *message_out, std::string *error_out) |
| template<typename ProtoType > | |
| std::string | ProtobufTextFormatPrintToString (const ProtoType proto) |
| int32_t | GetSeed (bool deterministic) |
| void | DisplayPlan (const RoutingIndexManager &manager, const RoutingModel &routing, const operations_research::Assignment &plan, bool use_same_vehicle_costs, int64_t max_nodes_per_group, int64_t same_vehicle_cost, const operations_research::RoutingDimension &capacity_dimension, const operations_research::RoutingDimension &time_dimension) |
| RoutingOutputFormat | RoutingOutputFormatFromString (std::string_view format) |
| template<typename T > | |
| std::string | FormatStatistic (const std::string &name, T value, RoutingOutputFormat format) |
| template<> | |
| std::string | FormatStatistic (const std::string &name, double value, RoutingOutputFormat format) |
| template<typename T > | |
| void | PrintStatistic (const std::string &name, T value, RoutingOutputFormat format) |
| uint64_t | OneBit64 (int pos) |
| uint32_t | OneBit32 (int pos) |
| uint64_t | BitCount64 (uint64_t n) |
| uint32_t | BitCount32 (uint32_t n) |
| uint64_t | LeastSignificantBitWord64 (uint64_t n) |
| uint32_t | LeastSignificantBitWord32 (uint32_t n) |
| int | LeastSignificantBitPosition64DeBruijn (uint64_t n) |
| int | LeastSignificantBitPosition64Default (uint64_t n) |
| int | LeastSignificantBitPosition64 (uint64_t n) |
| int | LeastSignificantBitPosition32DeBruijn (uint32_t n) |
| int | LeastSignificantBitPosition32Default (uint32_t n) |
| int | LeastSignificantBitPosition32 (uint32_t n) |
| int | MostSignificantBitPosition64Default (uint64_t n) |
| int | MostSignificantBitPosition64 (uint64_t n) |
| int | MostSignificantBitPosition32Default (uint32_t n) |
| int | MostSignificantBitPosition32 (uint32_t n) |
| uint64_t | OneRange64 (uint64_t s, uint64_t e) |
| uint32_t | OneRange32 (uint32_t s, uint32_t e) |
| uint64_t | IntervalUp64 (uint64_t s) |
| uint32_t | IntervalUp32 (uint32_t s) |
| uint64_t | IntervalDown64 (uint64_t s) |
| uint32_t | IntervalDown32 (uint32_t s) |
| uint32_t | BitPos64 (uint64_t pos) |
| uint32_t | BitPos32 (uint32_t pos) |
| uint64_t | BitOffset64 (uint64_t pos) |
| uint32_t | BitOffset32 (uint32_t pos) |
| uint64_t | BitLength64 (uint64_t size) |
| uint32_t | BitLength32 (uint32_t size) |
| uint64_t | BitShift64 (uint64_t v) |
| uint32_t | BitShift32 (uint32_t v) |
| bool | IsBitSet64 (const uint64_t *const bitset, uint64_t pos) |
| bool | IsBitSet32 (const uint32_t *const bitset, uint32_t pos) |
| void | SetBit64 (uint64_t *const bitset, uint64_t pos) |
| void | SetBit32 (uint32_t *const bitset, uint32_t pos) |
| void | ClearBit64 (uint64_t *const bitset, uint64_t pos) |
| void | ClearBit32 (uint32_t *const bitset, uint32_t pos) |
| uint64_t | BitCountRange64 (const uint64_t *const bitset, uint64_t start, uint64_t end) |
| uint32_t | BitCountRange32 (const uint32_t *const bitset, uint32_t start, uint32_t end) |
| bool | IsEmptyRange64 (const uint64_t *const bitset, uint64_t start, uint64_t end) |
| bool | IsEmptyRange32 (const uint32_t *const bitset, uint32_t start, uint32_t end) |
| int64_t | LeastSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end) |
| int | LeastSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end) |
| int64_t | MostSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end) |
| int | MostSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end) |
| int64_t | UnsafeLeastSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end) |
| int32_t | UnsafeLeastSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end) |
| int64_t | UnsafeMostSignificantBitPosition64 (const uint64_t *const bitset, uint64_t start, uint64_t end) |
| int32_t | UnsafeMostSignificantBitPosition32 (const uint32_t *const bitset, uint32_t start, uint32_t end) |
| uint64_t | TwoBitsFromPos64 (uint64_t pos) |
| absl::StatusOr< std::string > | ReadFileToString (absl::string_view filename) |
| bool | ReadFileToProto (absl::string_view filename, google::protobuf::Message *proto) |
| bool | WriteProtoToFile (absl::string_view filename, const google::protobuf::Message &proto, ProtoWriteFormat proto_write_format, bool gzipped, bool append_extension_to_file_name) |
| template<typename Proto > | |
| Proto | ReadFileToProtoOrDie (absl::string_view filename) |
| template<typename Proto > | |
| std::vector< Proto > | ReadAllRecordsOrDie (absl::string_view filename) |
| template<typename Proto > | |
| std::vector< Proto > | ReadAllRecordsOrDie (File *file) |
| template<typename Proto > | |
| Proto | ReadOneRecordOrDie (absl::string_view filename) |
| template<typename Proto > | |
| void | WriteRecordsOrDie (absl::string_view filename, const std::vector< Proto > &protos) |
| std::ostream & | operator<< (std::ostream &out, const RoundTripDoubleFormat &format) |
| void | ComputeScalingErrors (const std::vector< double > &input, const std::vector< double > &lb, const std::vector< double > &ub, double scaling_factor, double *max_relative_coeff_error, double *max_scaled_sum_error) |
| double | GetBestScalingOfDoublesToInt64 (const std::vector< double > &input, const std::vector< double > &lb, const std::vector< double > &ub, int64_t max_absolute_sum) |
| void | GetBestScalingOfDoublesToInt64 (const std::vector< double > &input, int64_t max_absolute_sum, double *scaling_factor, double *max_relative_coeff_error) |
| int64_t | ComputeGcdOfRoundedDoubles (const std::vector< double > &x, double scaling_factor) |
| int | fast_ilogb (double value) |
| void | fast_scalbn_inplace (double &mutable_value, int exponent) |
| double | fast_scalbn (double value, int exponent) |
| template<typename FloatType > | |
| bool | IsPositiveOrNegativeInfinity (FloatType x) |
| template<typename FloatType > | |
| bool | AreWithinAbsoluteOrRelativeTolerances (FloatType x, FloatType y, FloatType relative_tolerance, FloatType absolute_tolerance) |
| template<typename FloatType > | |
| bool | AreWithinAbsoluteTolerance (FloatType x, FloatType y, FloatType absolute_tolerance) |
| template<typename FloatType > | |
| bool | IsSmallerWithinTolerance (FloatType x, FloatType y, FloatType tolerance) |
| template<typename FloatType > | |
| bool | IsIntegerWithinTolerance (FloatType x, FloatType tolerance) |
| template<typename FloatType > | |
| FloatType | Interpolate (FloatType x, FloatType y, FloatType alpha) |
| bool | ParseTextProtoForFlag (const absl::string_view text, google::protobuf::Message *const message_out, std::string *const error_out) |
| std::string | FullProtocolMessageAsString (const google::protobuf::Message &message, int indent_level) |
| template<class Proto > | |
| absl::StatusOr< Proto * > | SafeProtoDownCast (google::protobuf::Message *proto) |
| template<class Proto > | |
| absl::StatusOr< const Proto * > | SafeProtoConstDownCast (const google::protobuf::Message *proto) |
| QapProblem | ReadQapProblemOrDie (const std::string &filepath) |
| RangeIntToIntFunction * | MakeBareIntToIntFunction (std::function< int64_t(int64_t)> f) |
| RangeIntToIntFunction * | MakeCachedIntToIntFunction (const std::function< int64_t(int64_t)> &f, int64_t domain_start, int64_t domain_end) |
| RangeMinMaxIndexFunction * | MakeCachedRangeMinMaxIndexFunction (const std::function< int64_t(int64_t)> &f, int64_t domain_start, int64_t domain_end) |
| Fraction | RationalApproximation (const double x, const double precision) |
| bool | AtMinOrMaxInt64 (int64_t x) |
| int64_t | CapOpp (int64_t v) |
| int64_t | CapAbs (int64_t v) |
| int64_t | TwosComplementAddition (int64_t x, int64_t y) |
| int64_t | TwosComplementSubtraction (int64_t x, int64_t y) |
| bool | AddHadOverflow (int64_t x, int64_t y, int64_t sum) |
| bool | SubHadOverflow (int64_t x, int64_t y, int64_t diff) |
| bool | AddOverflows (int64_t x, int64_t y) |
| int64_t | SubOverflows (int64_t x, int64_t y) |
| template<typename IntegerType > | |
| bool | SafeAddInto (IntegerType a, IntegerType *b) |
| int64_t | CapWithSignOf (int64_t x) |
| int64_t | CapAddGeneric (int64_t x, int64_t y) |
| int64_t | CapSubGeneric (int64_t x, int64_t y) |
| int64_t | CapProdGeneric (int64_t x, int64_t y) |
| int64_t | CapAdd (int64_t x, int64_t y) |
| void | CapAddTo (int64_t x, int64_t *y) |
| int64_t | CapSub (int64_t x, int64_t y) |
| int64_t | CapProd (int64_t x, int64_t y) |
| template<class Iterator , class Compare = std::less<value_type_t<Iterator>>> | |
| void | IncrementalSort (int max_comparisons, Iterator begin, Iterator end, Compare comp=Compare{}, bool is_stable=false) |
| template<class Iterator , class Compare = std::less<value_type_t<Iterator>>> | |
| void | InsertionSort (Iterator begin, Iterator end, Compare comp=Compare{}) |
| template<class Iterator , class Compare = std::less<value_type_t<Iterator>>> | |
| void | IncrementalSort (Iterator begin, Iterator end, Compare comp=Compare{}, bool is_stable=false) |
| bool | IntervalsAreSortedAndNonAdjacent (absl::Span< const ClosedInterval > intervals) |
| Returns true iff we have: More... | |
| int64_t | CeilRatio (int64_t value, int64_t positive_coeff) |
| int64_t | FloorRatio (int64_t value, int64_t positive_coeff) |
| std::ostream & | operator<< (std::ostream &out, const ClosedInterval &interval) |
| std::ostream & | operator<< (std::ostream &out, const std::vector< ClosedInterval > &intervals) |
| std::ostream & | operator<< (std::ostream &out, const Domain &domain) |
| int64_t | SumOfKMinValueInDomain (const Domain &domain, int k) |
| int64_t | SumOfKMaxValueInDomain (const Domain &domain, int k) |
| std::string | MemoryUsage () |
| template<class T > | |
| std::string | JoinDebugString (const std::vector< T > &v, const std::string &separator) |
| template<class T > | |
| std::string | JoinDebugStringPtr (const std::vector< T > &v, const std::string &separator) |
| template<class T > | |
| std::string | JoinNamePtr (const std::vector< T > &v, const std::string &separator) |
| template<class T > | |
| std::string | JoinNameFieldPtr (const std::vector< T > &v, const std::string &separator) |
| std::string | CropMultiLineString (const std::string &s, int max_line_length, int max_num_lines) |
| template<typename StrongIndexName > | |
| std::ostream & | operator<< (std::ostream &os, StrongIndex< StrongIndexName > arg) |
| template<typename StrongIntegerName > | |
| std::ostream & | operator<< (std::ostream &os, StrongInt64< StrongIntegerName > arg) |
| STRONG_TYPE_ARITHMETIC_OP (StrongIndex, int,+) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongIndex, int, -) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongIndex, int, *) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongIndex, int, %) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t,+) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t, -) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t, *) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t,/) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t,<<) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t, >>) | |
| STRONG_TYPE_ARITHMETIC_OP (StrongInt64, int64_t, %) | |
| STRONG_TYPE_COMPARISON_OP (StrongIndex, int,==) | |
| STRONG_TYPE_COMPARISON_OP (StrongIndex, int, !=) | |
| STRONG_TYPE_COMPARISON_OP (StrongIndex, int,<=) | |
| STRONG_TYPE_COMPARISON_OP (StrongIndex, int, >=) | |
| STRONG_TYPE_COMPARISON_OP (StrongInt64, int64_t,==) | |
| STRONG_TYPE_COMPARISON_OP (StrongInt64, int64_t, !=) | |
| STRONG_TYPE_COMPARISON_OP (StrongInt64, int64_t,<=) | |
| STRONG_TYPE_COMPARISON_OP (StrongInt64, int64_t, >=) | |
| template<typename StrongIndexName , typename H > | |
| H | AbslHashValue (H h, const StrongIndex< StrongIndexName > &i) |
| template<typename StrongIntegerName , typename H > | |
| H | AbslHashValue (H h, const StrongInt64< StrongIntegerName > &i) |
| bool | ProbablyRunningInsideUnitTest () |
| template<class T > | |
| Demon * | MakeConstraintDemon0 (Solver *const s, T *const ct, void(T::*method)(), const std::string &name) |
| template<class P > | |
| std::string | ParameterDebugString (P param) |
| template<class P > | |
| std::string | ParameterDebugString (P *param) |
| Support limited to pointers to classes which define DebugString(). More... | |
| template<class T , class P > | |
| Demon * | MakeConstraintDemon1 (Solver *const s, T *const ct, void(T::*method)(P), const std::string &name, P param1) |
| template<class T , class P , class Q > | |
| Demon * | MakeConstraintDemon2 (Solver *const s, T *const ct, void(T::*method)(P, Q), const std::string &name, P param1, Q param2) |
| template<class T , class P , class Q , class R > | |
| Demon * | MakeConstraintDemon3 (Solver *const s, T *const ct, void(T::*method)(P, Q, R), const std::string &name, P param1, Q param2, R param3) |
| template<class T > | |
| Demon * | MakeDelayedConstraintDemon0 (Solver *const s, T *const ct, void(T::*method)(), const std::string &name) |
| template<class T , class P > | |
| Demon * | MakeDelayedConstraintDemon1 (Solver *const s, T *const ct, void(T::*method)(P), const std::string &name, P param1) |
| template<class T , class P , class Q > | |
| Demon * | MakeDelayedConstraintDemon2 (Solver *const s, T *const ct, void(T::*method)(P, Q), const std::string &name, P param1, Q param2) |
Variables | |
| static const int | kUnassigned = -1 |
| constexpr std::size_t | kMaxGLPKNameLen = 255 |
| std::function< int(GRBenv **, const char *, const char *, const char *, int, const char *)> | GRBisqp = nullptr |
| std::function< int(GRBmodel *model, const char *attrname)> | GRBisattravailable |
| std::function< int(GRBmodel *model, const char *attrname, int *valueP)> | GRBgetintattr = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int newvalue)> | GRBsetintattr = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int element, int *valueP)> | GRBgetintattrelement = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int element, int newvalue)> | GRBsetintattrelement = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, int *values)> | GRBgetintattrarray = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, int *newvalues)> | GRBsetintattrarray = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int len, int *ind, int *newvalues)> | GRBsetintattrlist = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int element, char *valueP)> | GRBgetcharattrelement = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int element, char newvalue)> | GRBsetcharattrelement = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, char *values)> | GRBgetcharattrarray = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, char *newvalues)> | GRBsetcharattrarray = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int len, int *ind, char *newvalues)> | GRBsetcharattrlist = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, double *valueP)> | GRBgetdblattr = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, double newvalue)> | GRBsetdblattr = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int element, double *valueP)> | GRBgetdblattrelement = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int element, double newvalue)> | GRBsetdblattrelement = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, double *values)> | GRBgetdblattrarray = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, double *newvalues)> | GRBsetdblattrarray = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, int len, int *ind, double *newvalues)> | GRBsetdblattrlist = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, char **valueP)> | GRBgetstrattr = nullptr |
| std::function< int(GRBmodel *model, const char *attrname, const char *newvalue)> | GRBsetstrattr = nullptr |
| std::function< int(GRBmodel *model, int(GUROBI_STDCALL *cb)(CB_ARGS), void *usrdata)> | GRBsetcallbackfunc = nullptr |
| std::function< int(void *cbdata, int where, int what, void *resultP)> | GRBcbget |
| std::function< int(void *cbdata, const double *solution, double *objvalP)> | GRBcbsolution = nullptr |
| std::function< int(void *cbdata, int cutlen, const int *cutind, const double *cutval, char cutsense, double cutrhs)> | GRBcbcut = nullptr |
| std::function< int(void *cbdata, int lazylen, const int *lazyind, const double *lazyval, char lazysense, double lazyrhs)> | GRBcblazy = nullptr |
| std::function< int(GRBmodel *model, int *numnzP, int *vbeg, int *vind, double *vval, int start, int len)> | GRBgetvars = nullptr |
| std::function< int(GRBmodel *model)> | GRBoptimize = nullptr |
| std::function< int(GRBmodel *model, const char *filename)> | GRBwrite = nullptr |
| std::function< int(GRBenv *env, GRBmodel **modelP, const char *Pname, int numvars, double *obj, double *lb, double *ub, char *vtype, char **varnames)> | GRBnewmodel = nullptr |
| std::function< int(GRBmodel *model, int numnz, int *vind, double *vval, double obj, double lb, double ub, char vtype, const char *varname)> | GRBaddvar = nullptr |
| std::function< int(GRBmodel *model, int numvars, int numnz, int *vbeg, int *vind, double *vval, double *obj, double *lb, double *ub, char *vtype, char **varnames)> | GRBaddvars = nullptr |
| std::function< int(GRBmodel *model, int numnz, int *cind, double *cval, char sense, double rhs, const char *constrname)> | GRBaddconstr = nullptr |
| std::function< int(GRBmodel *model, int numconstrs, int numnz, int *cbeg, int *cind, double *cval, char *sense, double *rhs, char **constrnames)> | GRBaddconstrs = nullptr |
| std::function< int(GRBmodel *model, int numnz, int *cind, double *cval, double lower, double upper, const char *constrname)> | GRBaddrangeconstr = nullptr |
| std::function< int(GRBmodel *model, int numsos, int nummembers, int *types, int *beg, int *ind, double *weight)> | GRBaddsos = nullptr |
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars, double constant)> | GRBaddgenconstrMax = nullptr |
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars, double constant)> | GRBaddgenconstrMin = nullptr |
| std::function< int(GRBmodel *model, const char *name, int resvar, int argvar)> | GRBaddgenconstrAbs = nullptr |
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars)> | GRBaddgenconstrAnd = nullptr |
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars)> | GRBaddgenconstrOr = nullptr |
| std::function< int(GRBmodel *model, const char *name, int binvar, int binval, int nvars, const int *vars, const double *vals, char sense, double rhs)> | GRBaddgenconstrIndicator = nullptr |
| std::function< int(GRBmodel *model, int numlnz, int *lind, double *lval, int numqnz, int *qrow, int *qcol, double *qval, char sense, double rhs, const char *QCname)> | GRBaddqconstr = nullptr |
| std::function< int(GRBmodel *model, int numqnz, int *qrow, int *qcol, double *qval)> | GRBaddqpterms = nullptr |
| std::function< int(GRBmodel *model, int len, int *ind)> | GRBdelvars = nullptr |
| std::function< int(GRBmodel *model, int len, int *ind)> | GRBdelconstrs = nullptr |
| std::function< int(GRBmodel *model, int len, int *ind)> | GRBdelsos = nullptr |
| std::function< int(GRBmodel *model, int len, int *ind)> | GRBdelgenconstrs |
| std::function< int(GRBmodel *model, int len, int *ind)> | GRBdelqconstrs = nullptr |
| std::function< int(GRBmodel *model)> | GRBdelq = nullptr |
| std::function< int(GRBmodel *model, int cnt, int *cind, int *vind, double *val)> | GRBchgcoeffs = nullptr |
| std::function< int(GRBmodel *model)> | GRBupdatemodel = nullptr |
| std::function< int(GRBmodel *model)> | GRBfreemodel = nullptr |
| std::function< void(GRBmodel *model)> | GRBterminate = nullptr |
| std::function< int(GRBmodel *model, int index, int priority, double weight, double abstol, double reltol, const char *name, double constant, int lnz, int *lind, double *lval)> | GRBsetobjectiven = nullptr |
| std::function< int(GRBenv *env, const char *paramname, int *valueP)> | GRBgetintparam = nullptr |
| std::function< int(GRBenv *env, const char *paramname, double *valueP)> | GRBgetdblparam = nullptr |
| std::function< int(GRBenv *env, const char *paramname, char *valueP)> | GRBgetstrparam = nullptr |
| std::function< int(GRBenv *env, const char *paramname, const char *value)> | GRBsetparam = nullptr |
| std::function< int(GRBenv *env, const char *paramname, int value)> | GRBsetintparam = nullptr |
| std::function< int(GRBenv *env, const char *paramname, double value)> | GRBsetdblparam = nullptr |
| std::function< int(GRBenv *env, const char *paramname, const char *value)> | GRBsetstrparam = nullptr |
| std::function< int(GRBenv *env)> | GRBresetparams = nullptr |
| std::function< int(GRBenv *dest, GRBenv *src)> | GRBcopyparams = nullptr |
| std::function< int(GRBenv **envP, const char *logfilename)> | GRBloadenv = nullptr |
| std::function< GRBenv *(GRBmodel *model)> | GRBgetenv = nullptr |
| std::function< void(GRBenv *env)> | GRBfreeenv = nullptr |
| std::function< const char *(GRBenv *env)> | GRBgeterrormsg = nullptr |
| std::function< void(int *majorP, int *minorP, int *technicalP)> | GRBversion |
| std::function< char *(void)> | GRBplatform = nullptr |
| constexpr NamedOptimizationProblemType | kOptimizationProblemTypeNames [] |
| constexpr double | kDefaultPrimalTolerance = 1e-07 |
| static const uint64_t | kAllBits64 = uint64_t{0xFFFFFFFFFFFFFFFF} |
| static const uint64_t | kAllBitsButLsb64 = uint64_t{0xFFFFFFFFFFFFFFFE} |
| static const uint32_t | kAllBits32 = 0xFFFFFFFFU |
| ABSL_CONST_INIT const bool | kStdToCharsDoubleIsSupported = true |
Collection of objects used to extend the Constraint Solver library.
The vehicle routing library lets one model and solve generic vehicle routing problems ranging from the Traveling Salesman Problem to more complex problems such as the Capacitated Vehicle Routing Problem with Time Windows.
This file contains a set of objects that simplifies writing extensions of the library.
The main objects that define extensions are:
Then, there are some internal classes that are used throughout the solver and exposed in this file:
The objective of a vehicle routing problem is to build routes covering a set of nodes minimizing the overall cost of the routes (usually proportional to the sum of the lengths of each segment of the routes) while respecting some problem-specific constraints (such as the length of a route). A route is equivalent to a path connecting nodes, starting/ending at specific starting/ending nodes.
The term "vehicle routing" is historical and the category of problems solved is not limited to the routing of vehicles: any problem involving finding routes visiting a given number of nodes optimally falls under this category of problems, such as finding the optimal sequence in a playlist. The literature around vehicle routing problems is extremely dense but one can find some basic introductions in the following links:
The vehicle routing library is a vertical layer above the constraint programming library (ortools/constraint_programming:cp). One has access to all underlying constrained variables of the vehicle routing model which can therefore be enriched by adding any constraint available in the constraint programming library.
There are two sets of variables available:
Code sample: Here is a simple example solving a traveling salesman problem given a cost function callback (returns the cost of a route segment):
Define a custom distance/cost function from an index to another; in this example just returns the sum of the indices:
int64_t MyDistance(int64_t from, int64_t to) { return from + to; }
Create a routing model for a given problem size (int number of nodes) and number of routes (here, 1):
RoutingIndexManager manager(...number of nodes..., 1); RoutingModel routing(manager);
Set the cost function by registering an std::function<int64_t(int64_t, int64_t)> in the model and passing its index as the vehicle cost.
const int cost = routing.RegisterTransitCallback(MyDistance); routing.SetArcCostEvaluatorOfAllVehicles(cost);
Find a solution using Solve(), returns a solution if any (owned by routing):
const Assignment* solution = routing.Solve(); CHECK(solution != nullptr);
Inspect the solution cost and route (only one route here):
LOG(INFO) << "Cost " << solution->ObjectiveValue(); const int route_number = 0; for (int64_t node = routing.Start(route_number); !routing.IsEnd(node); node = solution->Value(routing.NextVar(node))) { LOG(INFO) << manager.IndexToNode(node); }
Keywords: Vehicle Routing, Traveling Salesman Problem, TSP, VRP, CVRPTW, PDP.
Meta namespace.
| typedef int32_t ArcIndex |
Definition at line 202 of file ebert_graph.h.
| typedef ZVector<ArcIndex> ArcIndexArray |
Definition at line 209 of file ebert_graph.h.
Definition at line 211 of file ebert_graph.h.
| typedef BlossomGraph::CostValue CostValue |
Definition at line 204 of file ebert_graph.h.
| typedef std::function<int64_t(int, int)> EdgeWeights |
Definition at line 89 of file simple_graph.h.
| typedef int64_t FlowQuantity |
Definition at line 203 of file ebert_graph.h.
| typedef ForwardEbertGraph<NodeIndex, ArcIndex> ForwardStarGraph |
Definition at line 206 of file ebert_graph.h.
Definition at line 207 of file ebert_graph.h.
| typedef std::pair<int64_t, int64_t> Fraction |
Definition at line 26 of file rational_approximation.h.
| using GScipBranchingPriority = absl::flat_hash_map<SCIP_VAR*, int> |
| using GScipMessageHandler = std::function<void(GScipMessageType type, absl::string_view message)> |
Definition at line 36 of file gscip_message_handler.h.
| using GScipSolution = absl::flat_hash_map<SCIP_VAR*, double> |
| typedef ZVector<int16_t> Int16ZVector |
| typedef ZVector<int32_t> Int32ZVector |
| typedef ZVector<int64_t> Int64ZVector |
| typedef ZVector<int8_t> Int8ZVector |
| using KnapsackItemForCutsPtr = std::unique_ptr<KnapsackItemForCuts> |
Definition at line 93 of file knapsack_solver_for_cuts.h.
| typedef KnapsackItem* KnapsackItemPtr |
Definition at line 327 of file knapsack_solver.h.
Definition at line 201 of file ebert_graph.h.
| typedef ZVector<NodeIndex> NodeIndexArray |
Definition at line 208 of file ebert_graph.h.
| typedef int PathNodeIndex |
Definition at line 451 of file hamiltonian_path.h.
| typedef ZVector<FlowQuantity> QuantityArray |
Definition at line 210 of file ebert_graph.h.
| using random_engine_t = std::mt19937_64 |
Definition at line 23 of file random_engine.h.
| typedef std::pair<std::vector<int64_t>, std::vector<int64_t> > RoutingIndexPair |
Definition at line 45 of file routing_types.h.
| typedef std::vector<RoutingIndexPair> RoutingIndexPairs |
Definition at line 46 of file routing_types.h.
| typedef std::function<int64_t(RoutingNodeIndex, RoutingNodeIndex)> RoutingNodeEvaluator2 |
Definition at line 30 of file cvrptw_lib.h.
| typedef std::function<int64_t(int64_t)> RoutingTransitCallback1 |
Definition at line 42 of file routing_types.h.
| typedef std::function<int64_t(int64_t, int64_t)> RoutingTransitCallback2 |
Definition at line 43 of file routing_types.h.
| typedef EbertGraph<NodeIndex, ArcIndex> StarGraph |
Definition at line 205 of file ebert_graph.h.
| typedef ZVector<uint16_t> UInt16ZVector |
| typedef ZVector<uint32_t> UInt32ZVector |
| typedef ZVector<uint64_t> UInt64ZVector |
| typedef ZVector<uint8_t> UInt8ZVector |
| using value_type_t = typename std::iterator_traits<Iterator>::value_type |
|
strong |
|
strong |
|
strong |
| Enumerator | |
|---|---|
| OPTIMAL | |
| RELAXED_OPTIMAL_ONLY | |
| INFEASIBLE | |
Definition at line 153 of file routing_lp_scheduling.h.
|
strong |
|
strong |
| Enumerator | |
|---|---|
| kInfoMessage | |
| kDialogMessage | |
| kWarningMessage | |
Definition at line 28 of file gscip_message_handler.h.
|
strong |
|
strong |
| Enumerator | |
|---|---|
| kUnknown | |
| kPolling | |
| kPresolve | |
| kSimplex | |
| kMip | |
| kMipSolution | |
| kMipNode | |
| kBarrier | |
| kMessage | |
| kMultiObj | |
Definition at line 37 of file linear_solver_callback.h.
|
strong |
| Enumerator | |
|---|---|
| UNSPECIFIED | |
| WITHIN_BOUNDS | |
| SMALLER_THAN_LOWER_BOUND | |
| LARGER_THAN_UPPER_BOUND | |
Definition at line 988 of file routing_lp_scheduling.h.
|
strong |
| Enumerator | |
|---|---|
| kProtoText | |
| kProtoBinary | |
| kJson | |
| kCanonicalJson | |
Definition at line 51 of file file_util.h.
|
strong |
| Enumerator | |
|---|---|
| kNone | |
| kTSPLIB | |
| kCVRPLIB | |
| kCARPLIB | |
| kNEARPLIB | |
Definition at line 37 of file solution_serializer.h.
|
strong |
| Enumerator | |
|---|---|
| kLazyConstraintAdded | |
| kCuttingPlaneAdded | |
| kDidNotFind | |
Definition at line 95 of file scip_callback.cc.
| enum SolveStatus |
Definition at line 112 of file model_builder_helper.h.
| enum VarTypes |
This enum is used internally to do dynamic typing on subclasses of integer variables.
| Enumerator | |
|---|---|
| UNSPECIFIED | |
| DOMAIN_INT_VAR | |
| BOOLEAN_VAR | |
| CONST_VAR | |
| VAR_ADD_CST | |
| VAR_TIMES_CST | |
| CST_SUB_VAR | |
| OPP_VAR | |
| TRACE_VAR | |
Definition at line 115 of file constraint_solveri.h.
| H operations_research::AbslHashValue | ( | H | h, |
| const StrongIndex< StrongIndexName > & | i | ||
| ) |
Definition at line 329 of file strong_integers.h.
| H operations_research::AbslHashValue | ( | H | h, |
| const StrongInt64< StrongIntegerName > & | i | ||
| ) |
Definition at line 334 of file strong_integers.h.
| bool AbslParseFlag | ( | const absl::string_view | text, |
| MPSolver::OptimizationProblemType * | solver_type, | ||
| std::string * | error | ||
| ) |
Definition at line 616 of file linear_solver.cc.
|
inline |
Definition at line 969 of file linear_solver.h.
| bool AcceptDelta | ( | Search *const | search, |
| Assignment * | delta, | ||
| Assignment * | deltadelta | ||
| ) |
Definition at line 1379 of file constraint_solver.cc.
| void AcceptNeighbor | ( | Search *const | search | ) |
Definition at line 1384 of file constraint_solver.cc.
| void AcceptUncheckedNeighbor | ( | Search *const | search | ) |
Definition at line 1386 of file constraint_solver.cc.
| void operations_research::AddArcsFromMinimumSpanningTree | ( | int | number_of_nodes, |
| const CostFunction & | cost, | ||
| std::set< std::pair< int, int >> * | arcs | ||
| ) |
Definition at line 297 of file one_tree_lower_bound.h.
| void AddCallbackConstraint | ( | SCIP * | scip, |
| ScipConstraintHandler< ConstraintData > * | handler, | ||
| const std::string & | constraint_name, | ||
| const ConstraintData * | constraint_data, | ||
| const ScipCallbackConstraintOptions & | options | ||
| ) |
Definition at line 267 of file scip_callback.h.
|
inline |
Definition at line 96 of file saturated_arithmetic.h.
| void operations_research::AddLocalSearchNeighborhoodOperatorsFromFlags | ( | RoutingSearchParameters * | parameters | ) |
Definition at line 206 of file routing_flags.cc.
|
inline |
Definition at line 120 of file saturated_arithmetic.h.
| void AppendDimensionCumulFilters | ( | const std::vector< RoutingDimension * > & | dimensions, |
| const RoutingSearchParameters & | parameters, | ||
| bool | filter_objective_cost, | ||
| bool | use_chain_cumul_filter, | ||
| std::vector< LocalSearchFilterManager::FilterEvent > * | filters | ||
| ) |
Definition at line 2159 of file routing_filters.cc.
| void AppendLightWeightDimensionFilters | ( | const PathState * | path_state, |
| const std::vector< RoutingDimension * > & | dimensions, | ||
| std::vector< LocalSearchFilterManager::FilterEvent > * | filters | ||
| ) |
Appends dimension-based filters to the given list of filters using a path state.
Definition at line 2086 of file routing_filters.cc.
| void AppendTasksFromIntervals | ( | const std::vector< IntervalVar * > & | intervals, |
| DisjunctivePropagator::Tasks * | tasks | ||
| ) |
Definition at line 693 of file routing_breaks.cc.
| void AppendTasksFromPath | ( | const std::vector< int64_t > & | path, |
| const TravelBounds & | travel_bounds, | ||
| const RoutingDimension & | dimension, | ||
| DisjunctivePropagator::Tasks * | tasks | ||
| ) |
Definition at line 609 of file routing_breaks.cc.
| glop::ProblemStatus ApplyMipPresolveSteps | ( | const glop::GlopParameters & | glop_params, |
| MPModelProto * | model, | ||
| std::vector< std::unique_ptr< glop::Preprocessor >> * | for_postsolve, | ||
| SolverLogger * | logger | ||
| ) |
Definition at line 32 of file sat_solver_utils.cc.
| void ApplyVerifiedMPModelDelta | ( | const MPModelDeltaProto & | delta, |
| MPModelProto * | model | ||
| ) |
Definition at line 977 of file linear_solver/model_validator.cc.
|
inline |
Definition at line 2952 of file constraint_solveri.h.
|
inline |
Definition at line 2943 of file constraint_solveri.h.
| bool operations_research::AreAllBoundOrNull | ( | const std::vector< IntVar * > & | vars, |
| const std::vector< T > & | values | ||
| ) |
Returns true if all the variables are assigned to a single value, or if their corresponding value is null.
Definition at line 2959 of file constraint_solveri.h.
|
inline |
Returns true if all variables are assigned to 'value'.
Definition at line 2970 of file constraint_solveri.h.
| bool operations_research::AreAllGreaterOrEqual | ( | const std::vector< T > & | values, |
| const T & | value | ||
| ) |
Definition at line 2873 of file constraint_solveri.h.
| bool operations_research::AreAllLessOrEqual | ( | const std::vector< T > & | values, |
| const T & | value | ||
| ) |
Definition at line 2883 of file constraint_solveri.h.
| bool operations_research::AreAllNegative | ( | const std::vector< T > & | values | ) |
Definition at line 2898 of file constraint_solveri.h.
| bool operations_research::AreAllNull | ( | const std::vector< T > & | values | ) |
Definition at line 2868 of file constraint_solveri.h.
| bool operations_research::AreAllOnes | ( | const std::vector< T > & | values | ) |
Definition at line 2863 of file constraint_solveri.h.
| bool operations_research::AreAllPositive | ( | const std::vector< T > & | values | ) |
Definition at line 2893 of file constraint_solveri.h.
| bool operations_research::AreAllStrictlyNegative | ( | const std::vector< T > & | values | ) |
Definition at line 2908 of file constraint_solveri.h.
| bool operations_research::AreAllStrictlyPositive | ( | const std::vector< T > & | values | ) |
Definition at line 2903 of file constraint_solveri.h.
| bool operations_research::AreWithinAbsoluteOrRelativeTolerances | ( | FloatType | x, |
| FloatType | y, | ||
| FloatType | relative_tolerance, | ||
| FloatType | absolute_tolerance | ||
| ) |
Definition at line 124 of file fp_utils.h.
| bool operations_research::AreWithinAbsoluteTolerance | ( | FloatType | x, |
| FloatType | y, | ||
| FloatType | absolute_tolerance | ||
| ) |
Definition at line 145 of file fp_utils.h.
| bool AStarShortestPath | ( | int | node_count, |
| int | start_node, | ||
| int | end_node, | ||
| std::function< int64_t(int, int)> | graph, | ||
| std::function< int64_t(int)> | heuristic, | ||
| int64_t | disconnected_distance, | ||
| std::vector< int > * | nodes | ||
| ) |
|
inline |
Definition at line 51 of file saturated_arithmetic.h.
|
inline |
Definition at line 57 of file strtoint.h.
|
inline |
Definition at line 58 of file strtoint.h.
| operations_research::FirstSolutionStrategy::Value AutomaticFirstSolutionStrategy | ( | bool | has_pickup_deliveries, |
| bool | has_node_precedences, | ||
| bool | has_single_vehicle_node | ||
| ) |
Returns the best value for the automatic first solution strategy, based on the given model parameters.
Definition at line 180 of file routing_search.cc.
| std::string BasisStatusString | ( | const int | stat | ) |
Definition at line 49 of file glpk_formatters.cc.
| bool BellmanFordShortestPath | ( | int | node_count, |
| int | start_node, | ||
| int | end_node, | ||
| std::function< int64_t(int, int)> | graph, | ||
| int64_t | disconnected_distance, | ||
| std::vector< int > * | nodes | ||
| ) |
Definition at line 115 of file bellman_ford.cc.
|
inline |
|
inline |
| uint32_t operations_research::BitCountRange32 | ( | const uint32_t *const | bitset, |
| uint32_t | start, | ||
| uint32_t | end | ||
| ) |
| uint64_t operations_research::BitCountRange64 | ( | const uint64_t *const | bitset, |
| uint64_t | start, | ||
| uint64_t | end | ||
| ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| MPSolverInterface * BuildBopInterface | ( | MPSolver *const | solver | ) |
Definition at line 391 of file bop_interface.cc.
| MPSolverInterface * BuildCBCInterface | ( | MPSolver *const | solver | ) |
Definition at line 535 of file cbc_interface.cc.
| MPSolverInterface * BuildCLPInterface | ( | MPSolver *const | solver | ) |
Definition at line 628 of file clp_interface.cc.
| DemonProfiler * BuildDemonProfiler | ( | Solver *const | solver | ) |
Definition at line 444 of file demon_profiler.cc.
| IntExpr * BuildDurationExpr | ( | IntervalVar * | var | ) |
Definition at line 165 of file sched_expr.cc.
| IntExpr * BuildEndExpr | ( | IntervalVar * | var | ) |
Definition at line 175 of file sched_expr.cc.
| std::vector<typename Graph::NodeIndex> operations_research::BuildEulerianPath | ( | const Graph & | graph, |
| bool | assume_connectivity = true |
||
| ) |
Definition at line 141 of file eulerian_path.h.
| std::vector<NodeIndex> operations_research::BuildEulerianPathFromNode | ( | const Graph & | graph, |
| NodeIndex | root | ||
| ) |
Definition at line 78 of file eulerian_path.h.
| std::vector<typename Graph::NodeIndex> operations_research::BuildEulerianTour | ( | const Graph & | graph, |
| bool | assume_connectivity = true |
||
| ) |
Definition at line 131 of file eulerian_path.h.
| std::vector<NodeIndex> operations_research::BuildEulerianTourFromNode | ( | const Graph & | graph, |
| NodeIndex | root, | ||
| bool | assume_connectivity = true |
||
| ) |
Definition at line 119 of file eulerian_path.h.
| MPSolverInterface * BuildGLOPInterface | ( | MPSolver *const | solver | ) |
Definition at line 428 of file glop_interface.cc.
| MPSolverInterface * BuildGurobiInterface | ( | bool | mip, |
| MPSolver *const | solver | ||
| ) |
Definition at line 1392 of file gurobi_interface.cc.
| MPSolverInterface* operations_research::BuildKnapsackInterface | ( | MPSolver *const | solver | ) |
Definition at line 363 of file knapsack_interface.cc.
| std::vector<typename Graph::ArcIndex> operations_research::BuildKruskalMinimumSpanningTree | ( | const Graph & | graph, |
| const ArcComparator & | arc_comparator | ||
| ) |
Definition at line 89 of file minimum_spanning_tree.h.
| std::vector<typename Graph::ArcIndex> operations_research::BuildKruskalMinimumSpanningTreeFromSortedArcs | ( | const Graph & | graph, |
| const std::vector< typename Graph::ArcIndex > & | sorted_arcs | ||
| ) |
Definition at line 50 of file minimum_spanning_tree.h.
| bool operations_research::BuildLineGraph | ( | const GraphType & | graph, |
| GraphType *const | line_graph | ||
| ) |
Definition at line 2089 of file ebert_graph.h.
| LocalSearchMonitor * BuildLocalSearchMonitorPrimary | ( | Solver *const | s | ) |
Definition at line 3250 of file constraint_solver.cc.
| LocalSearchProfiler * BuildLocalSearchProfiler | ( | Solver * | solver | ) |
Definition at line 4108 of file local_search.cc.
| ModelCache * BuildModelCache | ( | Solver *const | solver | ) |
Definition at line 846 of file model_cache.cc.
| RoutingModelParameters BuildModelParametersFromFlags | ( | ) |
Builds routing search parameters from flags.
Definition at line 335 of file routing_flags.cc.
| MPSolverInterface * BuildPdlpInterface | ( | MPSolver *const | solver | ) |
Definition at line 303 of file pdlp_interface.cc.
| std::vector<typename Graph::ArcIndex> operations_research::BuildPrimMinimumSpanningTree | ( | const Graph & | graph, |
| const ArcValue & | arc_value | ||
| ) |
Definition at line 115 of file minimum_spanning_tree.h.
| PropagationMonitor * BuildPrintTrace | ( | Solver *const | s | ) |
| IntExpr * BuildSafeDurationExpr | ( | IntervalVar * | var, |
| int64_t | unperformed_value | ||
| ) |
Definition at line 190 of file sched_expr.cc.
| IntExpr * BuildSafeEndExpr | ( | IntervalVar * | var, |
| int64_t | unperformed_value | ||
| ) |
Definition at line 195 of file sched_expr.cc.
| IntExpr * BuildSafeStartExpr | ( | IntervalVar * | var, |
| int64_t | unperformed_value | ||
| ) |
Definition at line 185 of file sched_expr.cc.
| MPSolverInterface * BuildSatInterface | ( | MPSolver *const | solver | ) |
Definition at line 291 of file sat_interface.cc.
| MPSolverInterface * BuildSCIPInterface | ( | MPSolver *const | solver | ) |
Definition at line 1158 of file scip_interface.cc.
| RoutingSearchParameters BuildSearchParametersFromFlags | ( | ) |
Builds routing search parameters from flags.
describe a valid set of routing search parameters.
Definition at line 322 of file routing_flags.cc.
| IntExpr * BuildStartExpr | ( | IntervalVar * | var | ) |
Definition at line 155 of file sched_expr.cc.
| PropagationMonitor * BuildTrace | ( | Solver *const | s | ) |
Definition at line 3175 of file constraint_solver.cc.
|
inline |
Definition at line 59 of file saturated_arithmetic.h.
|
inline |
Definition at line 284 of file saturated_arithmetic.h.
|
inline |
Definition at line 231 of file saturated_arithmetic.h.
|
inline |
Definition at line 294 of file saturated_arithmetic.h.
|
inline |
Definition at line 57 of file saturated_arithmetic.h.
|
inline |
Definition at line 306 of file saturated_arithmetic.h.
|
inline |
Definition at line 256 of file saturated_arithmetic.h.
|
inline |
Definition at line 296 of file saturated_arithmetic.h.
|
inline |
Definition at line 236 of file saturated_arithmetic.h.
|
inline |
Definition at line 141 of file saturated_arithmetic.h.
| int64_t operations_research::CeilRatio | ( | int64_t | value, |
| int64_t | positive_coeff | ||
| ) |
Definition at line 94 of file sorted_interval_list.cc.
| BaseAssignVariables::Mode operations_research::ChooseMode | ( | Solver::IntValueStrategy | val_str | ) |
| void CleanVariableOnFail | ( | IntVar *const | var | ) |
Definition at line 6381 of file expressions.cc.
|
inline |
|
inline |
| bool operations_research::CompareKnapsackItemWithEfficiencyInDecreasingEfficiencyOrder | ( | const KnapsackItemWithEfficiency & | item1, |
| const KnapsackItemWithEfficiency & | item2 | ||
| ) |
Definition at line 719 of file knapsack_solver.cc.
| int64_t ComputeBestVehicleToResourceAssignment | ( | std::vector< int > | vehicles, |
| int | num_resources, | ||
| std::function< const std::vector< int64_t > *(int)> | vehicle_to_resource_assignment_costs, | ||
| std::vector< int > * | resource_indices | ||
| ) |
Definition at line 2616 of file routing_lp_scheduling.cc.
| int64_t ComputeConvexPiecewiseLinearFormulationValue | ( | const RoutingModel::RouteDimensionTravelInfo::TransitionInfo::PiecewiseLinearFormulation & | pwl, |
| int64_t | x, | ||
| double | delta | ||
| ) |
Definition at line 1315 of file routing_lp_scheduling.cc.
|
inline |
Definition at line 118 of file glpk_computational_form.h.
|
inline |
Definition at line 108 of file glpk_computational_form.h.
|
inline |
Definition at line 98 of file glpk_computational_form.h.
|
inline |
Definition at line 88 of file glpk_computational_form.h.
|
inline |
Definition at line 128 of file glpk_computational_form.h.
| int64_t ComputeGcdOfRoundedDoubles | ( | const std::vector< double > & | x, |
| double | scaling_factor | ||
| ) |
Definition at line 202 of file fp_utils.cc.
| absl::StatusOr<std::vector< std::pair<typename GraphType::NodeIndex, typename GraphType::NodeIndex> > > operations_research::ComputeMinimumWeightMatching | ( | const GraphType & | graph, |
| const WeightFunctionType & | weight | ||
| ) |
Definition at line 111 of file christofides.h.
| absl::StatusOr<std::vector< std::pair<typename GraphType::NodeIndex, typename GraphType::NodeIndex> > > operations_research::ComputeMinimumWeightMatchingWithMIP | ( | const GraphType & | graph, |
| const WeightFunctionType & | weight | ||
| ) |
Definition at line 147 of file christofides.h.
| std::vector<int> operations_research::ComputeOneTree | ( | const GraphType & | graph, |
| const CostFunction & | cost, | ||
| const std::vector< double > & | weights, | ||
| const std::vector< int > & | sorted_arcs, | ||
| CostType * | one_tree_cost | ||
| ) |
Definition at line 335 of file one_tree_lower_bound.h.
| double operations_research::ComputeOneTreeLowerBound | ( | int | number_of_nodes, |
| const CostFunction & | cost | ||
| ) |
Definition at line 484 of file one_tree_lower_bound.h.
| double operations_research::ComputeOneTreeLowerBoundWithAlgorithm | ( | int | number_of_nodes, |
| int | nearest_neighbors, | ||
| const CostFunction & | cost, | ||
| Algorithm * | algorithm | ||
| ) |
Definition at line 382 of file one_tree_lower_bound.h.
| double operations_research::ComputeOneTreeLowerBoundWithParameters | ( | int | number_of_nodes, |
| const CostFunction & | cost, | ||
| const TravelingSalesmanLowerBoundParameters & | parameters | ||
| ) |
Definition at line 456 of file one_tree_lower_bound.h.
| PiecewiseEvaluationStatus ComputePiecewiseLinearFormulationValue | ( | const RoutingModel::RouteDimensionTravelInfo::TransitionInfo::PiecewiseLinearFormulation & | pwl, |
| int64_t | x, | ||
| int64_t * | value, | ||
| double | delta | ||
| ) |
Definition at line 1289 of file routing_lp_scheduling.cc.
| void ComputeScalingErrors | ( | const std::vector< double > & | input, |
| const std::vector< double > & | lb, | ||
| const std::vector< double > & | ub, | ||
| double | scaling_factor, | ||
| double * | max_relative_coeff_error, | ||
| double * | max_scaled_sum_error | ||
| ) |
Definition at line 172 of file fp_utils.cc.
| std::vector< int64_t > ComputeVehicleEndChainStarts | ( | const RoutingModel & | model | ) |
Computes and returns the first node in the end chain of each vehicle in the model, based on the current bound NextVar values.
Definition at line 192 of file routing_search.cc.
| bool ComputeVehicleToResourcesAssignmentCosts | ( | int | v, |
| const RoutingModel::ResourceGroup & | resource_group, | ||
| const std::function< int64_t(int64_t)> & | next_accessor, | ||
| const std::function< int64_t(int64_t, int64_t)> & | transit_accessor, | ||
| bool | optimize_vehicle_costs, | ||
| LocalDimensionCumulOptimizer * | lp_optimizer, | ||
| LocalDimensionCumulOptimizer * | mp_optimizer, | ||
| std::vector< int64_t > * | assignment_costs, | ||
| std::vector< std::vector< int64_t >> * | cumul_values, | ||
| std::vector< std::vector< int64_t >> * | break_values | ||
| ) |
Definition at line 2517 of file routing_lp_scheduling.cc.
| std::string operations_research::ConstraintToString | ( | const sat::ConstraintProto & | constraint, |
| const sat::CpModelProto & | model_, | ||
| bool | show_enforcement = true |
||
| ) |
Definition at line 2821 of file routing_lp_scheduling.cc.
| std::vector< int > CountTriangles | ( | const ::util::StaticGraph< int, int > & | graph, |
| int | max_degree | ||
| ) |
Definition at line 51 of file find_graph_symmetries.cc.
| void CoverArcsByCliques | ( | std::function< bool(int, int)> | graph, |
| int | node_count, | ||
| std::function< bool(const std::vector< int > &)> | callback | ||
| ) |
Definition at line 241 of file cliques.cc.
|
inline |
Definition at line 164 of file constraint_solver.h.
| std::string CropMultiLineString | ( | const std::string & | s, |
| int | max_line_length, | ||
| int | max_num_lines | ||
| ) |
Definition at line 25 of file string_util.cc.
| const GScipConstraintOptions & DefaultGScipConstraintOptions | ( | ) |
| const GScipVariableOptions & DefaultGScipVariableOptions | ( | ) |
| std::string operations_research::DefaultPhaseStatString | ( | DecisionBuilder * | db | ) |
Definition at line 1111 of file default_search.cc.
| RoutingModelParameters DefaultRoutingModelParameters | ( | ) |
Definition at line 39 of file routing_parameters.cc.
| RoutingSearchParameters DefaultRoutingSearchParameters | ( | ) |
Definition at line 146 of file routing_parameters.cc.
| operations_research::DEFINE_INT_TYPE | ( | RoutingCostClassIndex | , |
| int | |||
| ) |
| operations_research::DEFINE_INT_TYPE | ( | RoutingDimensionIndex | , |
| int | |||
| ) |
| operations_research::DEFINE_INT_TYPE | ( | RoutingDisjunctionIndex | , |
| int | |||
| ) |
| operations_research::DEFINE_INT_TYPE | ( | RoutingNodeIndex | , |
| int | |||
| ) |
Defining common types used in the routing library outside the main RoutingModel class has several purposes: 1) It allows some small libraries to avoid a dependency on routing.
{h,cc}, eg. routing_neighborhoods.h. 2) It allows an easier wrapping via SWIG, which can have issues with intra-class types.
Users that depend on routing.{h,cc} should just use the RoutingModel:: equivalent, eg. RoutingModel::NodeIndex.
| operations_research::DEFINE_INT_TYPE | ( | RoutingVehicleClassIndex | , |
| int | |||
| ) |
| void DeleteDemonProfiler | ( | DemonProfiler *const | monitor | ) |
Definition at line 452 of file demon_profiler.cc.
| void DeleteLocalSearchProfiler | ( | LocalSearchProfiler * | monitor | ) |
Definition at line 4115 of file local_search.cc.
| void operations_research::DemonProfilerAddFakeRun | ( | DemonProfiler *const | monitor, |
| Demon *const | demon, | ||
| int64_t | start_time, | ||
| int64_t | end_time, | ||
| bool | is_fail | ||
| ) |
Definition at line 469 of file demon_profiler.cc.
| void operations_research::DemonProfilerBeginInitialPropagation | ( | DemonProfiler *const | monitor, |
| Constraint *const | constraint | ||
| ) |
Definition at line 487 of file demon_profiler.cc.
| void operations_research::DemonProfilerEndInitialPropagation | ( | DemonProfiler *const | monitor, |
| Constraint *const | constraint | ||
| ) |
Definition at line 492 of file demon_profiler.cc.
| void operations_research::DemonProfilerExportInformation | ( | DemonProfiler *const | monitor, |
| const Constraint *const | constraint, | ||
| int64_t *const | fails, | ||
| int64_t *const | initial_propagation_runtime, | ||
| int64_t *const | demon_invocations, | ||
| int64_t *const | total_demon_runtime, | ||
| int *const | demon_count | ||
| ) |
Definition at line 475 of file demon_profiler.cc.
| bool DijkstraShortestPath | ( | int | node_count, |
| int | start_node, | ||
| int | end_node, | ||
| std::function< int64_t(int, int)> | graph, | ||
| int64_t | disconnected_distance, | ||
| std::vector< int > * | nodes | ||
| ) |
Definition at line 152 of file dijkstra.cc.
| void DisplayPlan | ( | const RoutingIndexManager & | manager, |
| const RoutingModel & | routing, | ||
| const operations_research::Assignment & | plan, | ||
| bool | use_same_vehicle_costs, | ||
| int64_t | max_nodes_per_group, | ||
| int64_t | same_vehicle_cost, | ||
| const operations_research::RoutingDimension & | capacity_dimension, | ||
| const operations_research::RoutingDimension & | time_dimension | ||
| ) |
Definition at line 160 of file cvrptw_lib.cc.
| std::string operations_research::DomainToString | ( | const ::google::protobuf::RepeatedField< int64_t > * | domain | ) |
Definition at line 2767 of file routing_lp_scheduling.cc.
| SCIP_RETCODE operations_research::DropAllEvents | ( | GScipEventHandler & | handler | ) |
Definition at line 128 of file gscip_event_handler.cc.
| std::string EncodeSatParametersAsString | ( | const sat::SatParameters & | parameters | ) |
Definition at line 425 of file sat_proto_solver.cc.
| absl::StatusOr< std::string > ExportModelAsLpFormat | ( | const MPModelProto & | model, |
| const MPModelExportOptions & | options = MPModelExportOptions() |
||
| ) |
Outputs the current model (variables, constraints, objective) as a string encoded in the so-called "CPLEX LP file format" as generated by SCIP.
The LP file format is easily readable by a human.
Returns false if some error has occurred during execution. The validity of names is automatically checked. If a variable name or a constraint name is invalid or non-existent, a new valid name is automatically generated.
If 'obfuscated' is true, the variable and constraint names of proto_ are not used. Variable and constraint names of the form "V12345" and "C12345" are used instead.
For more information about the different LP file formats: http://lpsolve.sourceforge.net/5.5/lp-format.htm The following give a reasonable idea of the CPLEX LP file format: http://lpsolve.sourceforge.net/5.5/CPLEX-format.htm https://www.ibm.com/docs/en/icos/12.8.0.0?topic=cplex-lp-file-format-algebraic-representation http://www.gurobi.com/documentation/5.1/reference-manual/node871
Definition at line 217 of file model_exporter.cc.
| absl::StatusOr< std::string > ExportModelAsMpsFormat | ( | const MPModelProto & | model, |
| const MPModelExportOptions & | options = MPModelExportOptions() |
||
| ) |
Outputs the current model (variables, constraints, objective) as a string encoded in MPS file format, using the "free" MPS format.
Returns false if some error has occurred during execution. Models with maximization objectives trigger an error, because MPS can encode only minimization problems.
The validity of names is automatically checked. If a variable name or a constraint name is invalid or non-existent, a new valid name is automatically generated.
Name validity and obfuscation works exactly as in ExportModelAsLpFormat().
For more information about the MPS format: http://en.wikipedia.org/wiki/MPS_(format) A close-to-original description coming from OSL: http://tinyurl.com/mps-format-by-osl A recent description from CPLEX: http://tinyurl.com/mps-format-by-cplex CPLEX extensions: http://tinyurl.com/mps-extensions-by-cplex Gurobi's description: http://www.gurobi.com/documentation/5.1/reference-manual/node869
Definition at line 234 of file model_exporter.cc.
| bool ExtractValidMPModelInPlaceOrPopulateResponseStatus | ( | MPModelRequest * | request, |
| MPSolutionResponse * | response | ||
| ) |
Like ExtractValidMPModelOrPopulateResponseStatus(), but works in-place: if the MPModel needed extraction, it will be populated in the request, and it returns the success boolean.
Definition at line 762 of file linear_solver/model_validator.cc.
| std::optional< LazyMutableCopy< MPModelProto > > ExtractValidMPModelOrPopulateResponseStatus | ( | const MPModelRequest & | request, |
| MPSolutionResponse * | response | ||
| ) |
If the model is valid and non-empty, returns it (possibly after extracting the model_delta).
If invalid or empty, updates response and returns null.
Definition at line 685 of file linear_solver/model_validator.cc.
| int fast_ilogb | ( | double | value | ) |
Definition at line 225 of file fp_utils.cc.
| double fast_scalbn | ( | double | value, |
| int | exponent | ||
| ) |
Definition at line 238 of file fp_utils.cc.
| void fast_scalbn_inplace | ( | double & | mutable_value, |
| int | exponent | ||
| ) |
Definition at line 234 of file fp_utils.cc.
| uint64_t fasthash64 | ( | const void * | buf, |
| size_t | len, | ||
| uint64_t | seed | ||
| ) |
| void FillPathEvaluation | ( | const std::vector< int64_t > & | path, |
| const RoutingModel::TransitCallback2 & | evaluator, | ||
| std::vector< int64_t > * | values | ||
| ) |
Definition at line 6774 of file routing.cc.
| void FillTravelBoundsOfVehicle | ( | int | vehicle, |
| const std::vector< int64_t > & | path, | ||
| const RoutingDimension & | dimension, | ||
| TravelBounds * | travel_bounds | ||
| ) |
Definition at line 664 of file routing_breaks.cc.
|
inline |
Definition at line 2999 of file constraint_solveri.h.
| void FindCliques | ( | std::function< bool(int, int)> | graph, |
| int | node_count, | ||
| std::function< bool(const std::vector< int > &)> | callback | ||
| ) |
Definition at line 227 of file cliques.cc.
| std::string FindErrorInMPModelDeltaProto | ( | const MPModelDeltaProto & | delta, |
| const MPModelProto & | model | ||
| ) |
Like FindErrorInMPModelProto, but for a MPModelDeltaProto applied to a given baseline model (assumed valid, eg.
FindErrorInMPModelProto(model)=""). Works in O(|model_delta|) + O(num_vars in model), but the latter term has a very small constant factor.
Definition at line 836 of file linear_solver/model_validator.cc.
| std::string FindErrorInMPModelForScip | ( | const MPModelProto & | model, |
| SCIP * | scip | ||
| ) |
Definition at line 536 of file scip_proto_solver.cc.
| std::string FindErrorInMPModelProto | ( | const MPModelProto & | model, |
| double | abs_value_threshold = 0.0, |
||
| bool | accept_trivially_infeasible_bounds = false |
||
| ) |
Returns an empty string iff the model is valid and not trivially infeasible.
Otherwise, returns a description of the first error or trivial infeasibility variable or constraint bound encountered.
abs_value_threshold is the (exclusive) limit for the abs value of constraint coefficients, objective coefficients, etc. If unspecified, or 0, it defaults to FLAGS_model_validator_infinity.
NOTE(user): the code of this method (and the client code too!) is considerably simplified by this string-based, simple API. If clients require it, we could add a formal error status enum.
Definition at line 556 of file linear_solver/model_validator.cc.
| std::string FindErrorInRoutingSearchParameters | ( | const RoutingSearchParameters & | search_parameters | ) |
Returns an empty std::string if the routing search parameters are valid, and a non-empty, human readable error description if they're not.
Definition at line 160 of file routing_parameters.cc.
| std::vector< std::string > FindErrorsInRoutingSearchParameters | ( | const RoutingSearchParameters & | search_parameters | ) |
Returns a list of std::string describing the errors in the routing search parameters.
Returns an empty vector if the parameters are valid.
Definition at line 167 of file routing_parameters.cc.
| std::string FindFeasibilityErrorInSolutionHint | ( | const MPModelProto & | model, |
| double | tolerance | ||
| ) |
Returns an empty string if the solution hint given in the model is a feasible solution.
Otherwise, returns a description of the first reason for infeasibility.
This function can be useful for debugging/checking that the given solution hint is feasible when it is expected to be the case. The feasibility is checked up to the given tolerance using the ::operations_research::IsLowerWithinTolerance() function.
Definition at line 775 of file linear_solver/model_validator.cc.
| void FixFlagsAndEnvironmentForSwig | ( | ) |
Definition at line 31 of file base/logging.cc.
| int64_t operations_research::FloorRatio | ( | int64_t | value, |
| int64_t | positive_coeff | ||
| ) |
Definition at line 101 of file sorted_interval_list.cc.
|
inline |
Definition at line 269 of file solution_serializer.h.
| std::string operations_research::FormatStatistic | ( | const std::string & | name, |
| T | value, | ||
| RoutingOutputFormat | format | ||
| ) |
Definition at line 246 of file solution_serializer.h.
| std::string FullProtocolMessageAsString | ( | const google::protobuf::Message & | message, |
| int | indent_level | ||
| ) |
Definition at line 59 of file proto_tools.cc.
| void operations_research::GenericCheck | ( | const int | expected_assignment_size, |
| const absl::flat_hash_map< int, int > & | direct_assignment, | ||
| const absl::flat_hash_map< int, int > & | reverse_assignment, | ||
| const int | expected_agents[], | ||
| const int | expected_tasks[] | ||
| ) |
Definition at line 35 of file hungarian_test.cc.
| double GetBestScalingOfDoublesToInt64 | ( | const std::vector< double > & | input, |
| const std::vector< double > & | lb, | ||
| const std::vector< double > & | ub, | ||
| int64_t | max_absolute_sum | ||
| ) |
Definition at line 181 of file fp_utils.cc.
| void GetBestScalingOfDoublesToInt64 | ( | const std::vector< double > & | input, |
| int64_t | max_absolute_sum, | ||
| double * | scaling_factor, | ||
| double * | max_relative_coeff_error | ||
| ) |
Definition at line 191 of file fp_utils.cc.
| absl::StatusOr< GRBenv * > GetGurobiEnv | ( | ) |
Definition at line 420 of file environment.cc.
| int operations_research::GetNodeMinimizingEdgeCostToSource | ( | const GraphType & | graph, |
| int | source, | ||
| const CostFunction & | cost, | ||
| AcceptFunction | accept | ||
| ) |
Definition at line 314 of file one_tree_lower_bound.h.
| int64_t GetProcessMemoryUsage | ( | ) |
Definition at line 85 of file base/sysinfo.cc.
| int32_t GetSeed | ( | bool | deterministic | ) |
Definition at line 35 of file cvrptw_lib.cc.
| MPSolver::BasisStatus GlopToMPSolverConstraintStatus | ( | glop::ConstraintStatus | s | ) |
Definition at line 91 of file glop_utils.cc.
| MPSolver::ResultStatus GlopToMPSolverResultStatus | ( | glop::ProblemStatus | s | ) |
Definition at line 18 of file glop_utils.cc.
| MPSolver::BasisStatus GlopToMPSolverVariableStatus | ( | glop::VariableStatus | s | ) |
Definition at line 57 of file glop_utils.cc.
| absl::Status GScipAddQuadraticObjectiveTerm | ( | GScip * | gscip, |
| std::vector< SCIP_Var * > | quadratic_variables1, | ||
| std::vector< SCIP_Var * > | quadratic_variables2, | ||
| std::vector< double > | quadratic_coefficients, | ||
| const std::string & | name | ||
| ) |
Definition at line 149 of file gscip_ext.cc.
| bool GScipCatchCtrlC | ( | const GScipParameters & | parameters | ) |
Definition at line 134 of file gscip_parameters.cc.
| bool GScipCatchCtrlCSet | ( | const GScipParameters & | parameters | ) |
Definition at line 141 of file gscip_parameters.cc.
| absl::Status GScipCreateAbs | ( | GScip * | gscip, |
| SCIP_Var * | x, | ||
| SCIP_Var * | abs_x, | ||
| const std::string & | name | ||
| ) |
Definition at line 75 of file gscip_ext.cc.
| absl::Status GScipCreateIndicatorRange | ( | GScip * | gscip, |
| const GScipIndicatorRangeConstraint & | indicator_range, | ||
| const std::string & | name, | ||
| const GScipConstraintOptions & | options | ||
| ) |
Definition at line 179 of file gscip_ext.cc.
| absl::Status GScipCreateMaximum | ( | GScip * | gscip, |
| const GScipLinearExpr & | resultant, | ||
| const std::vector< GScipLinearExpr > & | terms, | ||
| const std::string & | name | ||
| ) |
Definition at line 82 of file gscip_ext.cc.
| absl::Status GScipCreateMinimum | ( | GScip * | gscip, |
| const GScipLinearExpr & | resultant, | ||
| const std::vector< GScipLinearExpr > & | terms, | ||
| const std::string & | name | ||
| ) |
Definition at line 138 of file gscip_ext.cc.
| GScipLinearExpr GScipDifference | ( | GScipLinearExpr | left, |
| const GScipLinearExpr & | right | ||
| ) |
Definition at line 43 of file gscip_ext.cc.
| GScipLinearRange GScipLe | ( | const GScipLinearExpr | left, |
| const GScipLinearExpr & | right | ||
| ) |
Definition at line 62 of file gscip_ext.cc.
| int GScipLogLevel | ( | const GScipParameters & | parameters | ) |
Definition at line 86 of file gscip_parameters.cc.
| bool GScipLogLevelSet | ( | const GScipParameters & | parameters | ) |
Definition at line 91 of file gscip_parameters.cc.
| int GScipMaxNumThreads | ( | const GScipParameters & | parameters | ) |
Definition at line 68 of file gscip_parameters.cc.
| bool GScipMaxNumThreadsSet | ( | const GScipParameters & | parameters | ) |
Definition at line 75 of file gscip_parameters.cc.
| GScipLinearExpr GScipNegate | ( | GScipLinearExpr | expr | ) |
Definition at line 52 of file gscip_ext.cc.
| bool GScipOutputEnabled | ( | const GScipParameters & | parameters | ) |
Definition at line 102 of file gscip_parameters.cc.
| bool GScipOutputEnabledSet | ( | const GScipParameters & | parameters | ) |
Definition at line 107 of file gscip_parameters.cc.
| int GScipRandomSeed | ( | const GScipParameters & | parameters | ) |
Definition at line 117 of file gscip_parameters.cc.
| bool GScipRandomSeedSet | ( | const GScipParameters & | parameters | ) |
Definition at line 124 of file gscip_parameters.cc.
| void GScipSetCatchCtrlC | ( | const bool | catch_ctrl_c, |
| GScipParameters *const | parameters | ||
| ) |
Definition at line 128 of file gscip_parameters.cc.
| void GScipSetLogLevel | ( | GScipParameters * | parameters, |
| int | log_level | ||
| ) |
Definition at line 79 of file gscip_parameters.cc.
| void GScipSetMaxNumThreads | ( | int | num_threads, |
| GScipParameters * | parameters | ||
| ) |
Definition at line 62 of file gscip_parameters.cc.
| void GScipSetOutputEnabled | ( | GScipParameters * | parameters, |
| bool | output_enabled | ||
| ) |
Definition at line 95 of file gscip_parameters.cc.
| void GScipSetRandomSeed | ( | GScipParameters * | parameters, |
| int | random_seed | ||
| ) |
Definition at line 111 of file gscip_parameters.cc.
| void GScipSetTimeLimit | ( | absl::Duration | time_limit, |
| GScipParameters * | parameters | ||
| ) |
Definition at line 34 of file gscip_parameters.cc.
| absl::Duration GScipTimeLimit | ( | const GScipParameters & | parameters | ) |
Definition at line 43 of file gscip_parameters.cc.
| bool GScipTimeLimitSet | ( | const GScipParameters & | parameters | ) |
Definition at line 58 of file gscip_parameters.cc.
| std::vector<std::string> operations_research::GurobiDynamicLibraryPotentialPaths | ( | ) |
Definition at line 316 of file environment.cc.
| bool GurobiIsCorrectlyInstalled | ( | ) |
Definition at line 32 of file environment.cc.
| absl::StatusOr< MPSolutionResponse > GurobiSolveProto | ( | const MPModelRequest & | request, |
| GRBenv * | gurobi_env | ||
| ) |
Definition at line 268 of file gurobi_proto_solver.cc.
|
inline |
Definition at line 262 of file constraint_solveri.h.
| uint64_t operations_research::Hash1 | ( | const std::vector< T * > & | ptrs | ) |
Definition at line 252 of file constraint_solveri.h.
|
inline |
Definition at line 240 of file constraint_solveri.h.
|
inline |
Definition at line 236 of file constraint_solveri.h.
|
inline |
Definition at line 225 of file constraint_solveri.h.
|
inline |
Hash functions.
value = (value << 21) - value - 1;
value * 265
value * 21
Definition at line 214 of file constraint_solveri.h.
|
inline |
Definition at line 242 of file constraint_solveri.h.
| absl::StatusOr< MPSolutionResponse > HighsSolveProto | ( | MPModelRequest | request | ) |
Definition at line 32 of file highs_proto_solver.cc.
| void operations_research::IncrementalSort | ( | int | max_comparisons, |
| Iterator | begin, | ||
| Iterator | end, | ||
| Compare | comp = Compare{}, |
||
| bool | is_stable = false |
||
| ) |
| void operations_research::IncrementalSort | ( | Iterator | begin, |
| Iterator | end, | ||
| Compare | comp = Compare{}, |
||
| bool | is_stable = false |
||
| ) |
| bool operations_research::InputContainsNan | ( | const std::vector< std::vector< double >> & | input | ) |
Definition at line 642 of file hungarian.cc.
| void operations_research::InsertionSort | ( | Iterator | begin, |
| Iterator | end, | ||
| Compare | comp = Compare{} |
||
| ) |
| void InstallDemonProfiler | ( | DemonProfiler *const | monitor | ) |
Definition at line 442 of file demon_profiler.cc.
| void InstallLocalSearchProfiler | ( | LocalSearchProfiler * | monitor | ) |
Definition at line 4104 of file local_search.cc.
| std::string operations_research::Int64ToStr | ( | int64_t | number | ) |
Definition at line 2761 of file routing_lp_scheduling.cc.
Definition at line 962 of file constraint_solver.cc.
|
inline |
Definition at line 246 of file fp_utils.h.
|
inline |
|
inline |
| bool IntervalsAreSortedAndNonAdjacent | ( | absl::Span< const ClosedInterval > | intervals | ) |
Returns true iff we have:
Definition at line 39 of file sorted_interval_list.cc.
|
inline |
|
inline |
| bool operations_research::IsArrayBoolean | ( | const std::vector< T > & | values | ) |
Definition at line 2853 of file constraint_solveri.h.
| bool operations_research::IsArrayConstant | ( | const std::vector< T > & | values, |
| const T & | value | ||
| ) |
Definition at line 2843 of file constraint_solveri.h.
| bool operations_research::IsArrayInRange | ( | const std::vector< IntVar * > & | vars, |
| T | range_min, | ||
| T | range_max | ||
| ) |
Definition at line 2933 of file constraint_solveri.h.
|
inline |
|
inline |
| bool operations_research::IsEmptyRange32 | ( | const uint32_t *const | bitset, |
| uint32_t | start, | ||
| uint32_t | end | ||
| ) |
| bool operations_research::IsEmptyRange64 | ( | const uint64_t *const | bitset, |
| uint64_t | start, | ||
| uint64_t | end | ||
| ) |
| bool operations_research::IsEulerianGraph | ( | const Graph & | graph, |
| bool | assume_connectivity = true |
||
| ) |
Definition at line 45 of file eulerian_path.h.
| bool operations_research::IsIncreasing | ( | const std::vector< T > & | values | ) |
Definition at line 2923 of file constraint_solveri.h.
| bool operations_research::IsIncreasingContiguous | ( | const std::vector< T > & | values | ) |
Definition at line 2913 of file constraint_solveri.h.
|
inline |
Definition at line 165 of file fp_utils.h.
|
inline |
Definition at line 111 of file fp_utils.h.
| bool operations_research::IsSemiEulerianGraph | ( | const Graph & | graph, |
| std::vector< NodeIndex > * | odd_nodes, | ||
| bool | assume_connectivity = true |
||
| ) |
Definition at line 59 of file eulerian_path.h.
| bool operations_research::IsSmallerWithinTolerance | ( | FloatType | x, |
| FloatType | y, | ||
| FloatType | tolerance | ||
| ) |
Definition at line 157 of file fp_utils.h.
| std::string operations_research::JoinDebugString | ( | const std::vector< T > & | v, |
| const std::string & | separator | ||
| ) |
Definition at line 38 of file string_array.h.
| std::string operations_research::JoinDebugStringPtr | ( | const std::vector< T > & | v, |
| const std::string & | separator | ||
| ) |
Definition at line 45 of file string_array.h.
| std::string operations_research::JoinNameFieldPtr | ( | const std::vector< T > & | v, |
| const std::string & | separator | ||
| ) |
Definition at line 58 of file string_array.h.
| std::string operations_research::JoinNamePtr | ( | const std::vector< T > & | v, |
| const std::string & | separator | ||
| ) |
Definition at line 52 of file string_array.h.
| void operations_research::KeepAbslSymbols | ( | ) |
Definition at line 39 of file base/logging.cc.
| int operations_research::LeastSignificantBitPosition32 | ( | const uint32_t *const | bitset, |
| uint32_t | start, | ||
| uint32_t | end | ||
| ) |
|
inline |
|
inline |
|
inline |
| int64_t operations_research::LeastSignificantBitPosition64 | ( | const uint64_t *const | bitset, |
| uint64_t | start, | ||
| uint64_t | end | ||
| ) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| absl::Status LegacyScipSetSolverSpecificParameters | ( | absl::string_view | parameters, |
| SCIP * | scip | ||
| ) |
Definition at line 35 of file legacy_scip_params.cc.
| bool operations_research::LinearConstraintIsViolated | ( | const ScipConstraintHandlerContext & | context, |
| const LinearRange & | constraint | ||
| ) |
Definition at line 101 of file scip_callback.cc.
Definition at line 7451 of file expressions.cc.
| absl::Status LoadGurobiDynamicLibrary | ( | std::vector< std::string > | potential_paths | ) |
Definition at line 385 of file environment.cc.
| void operations_research::LoadGurobiFunctions | ( | DynamicLibrary * | gurobi_dynamic_library | ) |
Definition at line 217 of file environment.cc.
| void LocalBfs | ( | const ::util::StaticGraph< int, int > & | graph, |
| int | source, | ||
| int | stop_after_num_nodes, | ||
| std::vector< int > * | visited, | ||
| std::vector< int > * | num_within_radius, | ||
| std::vector< bool > * | tmp_mask | ||
| ) |
Definition at line 72 of file find_graph_symmetries.cc.
| bool LocalOptimumReached | ( | Search *const | search | ) |
Definition at line 1375 of file constraint_solver.cc.
| DecisionBuilder * MakeAllUnperformed | ( | RoutingModel * | model | ) |
Definition at line 4546 of file routing_search.cc.
| RangeIntToIntFunction * MakeBareIntToIntFunction | ( | std::function< int64_t(int64_t)> | f | ) |
Definition at line 218 of file range_query_function.cc.
| RangeIntToIntFunction * MakeCachedIntToIntFunction | ( | const std::function< int64_t(int64_t)> & | f, |
| int64_t | domain_start, | ||
| int64_t | domain_end | ||
| ) |
Definition at line 223 of file range_query_function.cc.
| RangeMinMaxIndexFunction * MakeCachedRangeMinMaxIndexFunction | ( | const std::function< int64_t(int64_t)> & | f, |
| int64_t | domain_start, | ||
| int64_t | domain_end | ||
| ) |
Definition at line 229 of file range_query_function.cc.
| Demon* operations_research::MakeConstraintDemon0 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)() | method, | ||
| const std::string & | name | ||
| ) |
Definition at line 519 of file constraint_solveri.h.
| Demon* operations_research::MakeConstraintDemon1 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)(P) | method, | ||
| const std::string & | name, | ||
| P | param1 | ||
| ) |
Definition at line 560 of file constraint_solveri.h.
| Demon* operations_research::MakeConstraintDemon2 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)(P, Q) | method, | ||
| const std::string & | name, | ||
| P | param1, | ||
| Q | param2 | ||
| ) |
Definition at line 599 of file constraint_solveri.h.
| Demon* operations_research::MakeConstraintDemon3 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)(P, Q, R) | method, | ||
| const std::string & | name, | ||
| P | param1, | ||
| Q | param2, | ||
| R | param3 | ||
| ) |
Definition at line 642 of file constraint_solveri.h.
| IntVarLocalSearchFilter * MakeCPFeasibilityFilter | ( | RoutingModel * | routing_model | ) |
Returns a filter checking the current solution using CP propagation.
Definition at line 3049 of file routing_filters.cc.
| IntVarLocalSearchFilter * MakeCumulBoundsPropagatorFilter | ( | const RoutingDimension & | dimension | ) |
Returns a filter handling dimension cumul bounds.
Definition at line 2569 of file routing_filters.cc.
| Demon* operations_research::MakeDelayedConstraintDemon0 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)() | method, | ||
| const std::string & | name | ||
| ) |
Definition at line 682 of file constraint_solveri.h.
| Demon* operations_research::MakeDelayedConstraintDemon1 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)(P) | method, | ||
| const std::string & | name, | ||
| P | param1 | ||
| ) |
Definition at line 718 of file constraint_solveri.h.
| Demon* operations_research::MakeDelayedConstraintDemon2 | ( | Solver *const | s, |
| T *const | ct, | ||
| void(T::*)(P, Q) | method, | ||
| const std::string & | name, | ||
| P | param1, | ||
| Q | param2 | ||
| ) |
Definition at line 762 of file constraint_solveri.h.
| LocalSearchFilter * MakeDimensionFilter | ( | Solver * | solver, |
| std::unique_ptr< DimensionChecker > | checker, | ||
| const std::string & | dimension_name | ||
| ) |
Definition at line 3347 of file local_search.cc.
| IntVarLocalSearchFilter * MakeGlobalLPCumulFilter | ( | GlobalDimensionCumulOptimizer * | optimizer, |
| GlobalDimensionCumulOptimizer * | mp_optimizer, | ||
| bool | filter_objective_cost | ||
| ) |
Returns a filter checking global linear constraints and costs.
Definition at line 2707 of file routing_filters.cc.
| HamiltonianPathSolver<CostType, CostFunction> operations_research::MakeHamiltonianPathSolver | ( | int | num_nodes, |
| CostFunction | cost | ||
| ) |
Definition at line 600 of file hamiltonian_path.h.
| LocalSearchOperator * MakeLocalSearchOperator | ( | Solver * | solver, |
| const std::vector< IntVar * > & | vars, | ||
| const std::vector< IntVar * > & | secondary_vars, | ||
| std::function< int(int64_t)> | start_empty_path_class | ||
| ) |
Operator Factories.
Definition at line 2320 of file local_search.cc.
| IntVarLocalSearchFilter * MakeMaxActiveVehiclesFilter | ( | const RoutingModel & | routing_model | ) |
Returns a filter ensuring that max active vehicles constraints are enforced.
Definition at line 119 of file routing_filters.cc.
| IntVarLocalSearchFilter * MakeNodeDisjunctionFilter | ( | const RoutingModel & | routing_model, |
| bool | filter_cost | ||
| ) |
Returns a filter ensuring that node disjunction constraints are enforced.
Definition at line 276 of file routing_filters.cc.
| IntVarLocalSearchFilter * MakePathCumulFilter | ( | const RoutingDimension & | dimension, |
| bool | propagate_own_objective_value, | ||
| bool | filter_objective_cost, | ||
| bool | can_use_lp | ||
| ) |
Returns a filter handling dimension costs and constraints.
Definition at line 2035 of file routing_filters.cc.
| LocalSearchFilter * MakePathStateFilter | ( | Solver * | solver, |
| std::unique_ptr< PathState > | path_state, | ||
| const std::vector< IntVar * > & | nexts | ||
| ) |
Definition at line 2974 of file local_search.cc.
| IntVarLocalSearchFilter * MakePickupDeliveryFilter | ( | const RoutingModel & | routing_model, |
| const RoutingModel::IndexPairs & | pairs, | ||
| const std::vector< RoutingModel::PickupAndDeliveryPolicy > & | vehicle_policies | ||
| ) |
Returns a filter enforcing pickup and delivery constraints for the given pair of nodes and given policies.
Definition at line 2438 of file routing_filters.cc.
| LocalSearchFilter * MakeResourceAssignmentFilter | ( | LocalDimensionCumulOptimizer * | optimizer, |
| LocalDimensionCumulOptimizer * | mp_optimizer, | ||
| bool | propagate_own_objective_value, | ||
| bool | filter_objective_cost | ||
| ) |
Returns a filter checking the feasibility and cost of the resource assignment.
Definition at line 2939 of file routing_filters.cc.
| DecisionBuilder * MakeRestoreDimensionValuesForUnchangedRoutes | ( | RoutingModel * | model | ) |
Definition at line 3275 of file routing.cc.
| DecisionBuilder * MakeSetValuesFromTargets | ( | Solver * | solver, |
| std::vector< IntVar * > | variables, | ||
| std::vector< int64_t > | targets | ||
| ) |
A decision builder which tries to assign values to variables as close as possible to target values first.
Definition at line 202 of file routing.cc.
| DecisionBuilder * MakeSweepDecisionBuilder | ( | RoutingModel * | model, |
| bool | check_assignment | ||
| ) |
Definition at line 4512 of file routing_search.cc.
| IntVarLocalSearchFilter * MakeTypeRegulationsFilter | ( | const RoutingModel & | routing_model | ) |
Returns a filter ensuring type regulation constraints are enforced.
Definition at line 813 of file routing_filters.cc.
| IntVarLocalSearchFilter * MakeVehicleAmortizedCostFilter | ( | const RoutingModel & | routing_model | ) |
Returns a filter computing vehicle amortized costs.
Definition at line 664 of file routing_filters.cc.
| IntVarLocalSearchFilter * MakeVehicleBreaksFilter | ( | const RoutingModel & | routing_model, |
| const RoutingDimension & | dimension | ||
| ) |
Definition at line 1080 of file routing_breaks.cc.
| IntVarLocalSearchFilter * MakeVehicleVarFilter | ( | const RoutingModel & | routing_model | ) |
Returns a filter checking that vehicle variable domains are respected.
Definition at line 2511 of file routing_filters.cc.
| void operations_research::MaximizeLinearAssignment | ( | const std::vector< std::vector< double > > & | cost, |
| absl::flat_hash_map< int, int > * | direct_assignment, | ||
| absl::flat_hash_map< int, int > * | reverse_assignment | ||
| ) |
| void operations_research::MaximizeLinearAssignment | ( | const std::vector< std::vector< double >> & | cost, |
| absl::flat_hash_map< int, int > * | direct_assignment, | ||
| absl::flat_hash_map< int, int > * | reverse_assignment | ||
| ) |
Definition at line 672 of file hungarian.cc.
|
inline |
The std::max<int64_t> is needed for compilation on MSVC.
Definition at line 2979 of file constraint_solveri.h.
| void MergeMPConstraintProtoExceptTerms | ( | const MPConstraintProto & | from, |
| MPConstraintProto * | to | ||
| ) |
Definition at line 934 of file linear_solver/model_validator.cc.
| void operations_research::MinimizeLinearAssignment | ( | const std::vector< std::vector< double > > & | cost, |
| absl::flat_hash_map< int, int > * | direct_assignment, | ||
| absl::flat_hash_map< int, int > * | reverse_assignment | ||
| ) |
| void operations_research::MinimizeLinearAssignment | ( | const std::vector< std::vector< double >> & | cost, |
| absl::flat_hash_map< int, int > * | direct_assignment, | ||
| absl::flat_hash_map< int, int > * | reverse_assignment | ||
| ) |
Definition at line 654 of file hungarian.cc.
|
inline |
The std::min<int64_t> is needed for compilation on MSVC.
Definition at line 2989 of file constraint_solveri.h.
|
inlinestatic |
| int operations_research::MostSignificantBitPosition32 | ( | const uint32_t *const | bitset, |
| uint32_t | start, | ||
| uint32_t | end | ||
| ) |
|
inline |
|
inline |
| int64_t operations_research::MostSignificantBitPosition64 | ( | const uint64_t *const | bitset, |
| uint64_t | start, | ||
| uint64_t | end | ||
| ) |
|
inline |
|
inline |
| const KnapsackSearchNodeForCuts * MoveUpToDepth | ( | const KnapsackSearchNodeForCuts * | node, |
| int | depth | ||
| ) |
Definition at line 98 of file knapsack_solver_for_cuts.cc.
| bool MPSolverResponseStatusIsRpcError | ( | MPSolverResponseStatus | status | ) |
Definition at line 1795 of file linear_solver.cc.
| glop::ConstraintStatus MPSolverToGlopConstraintStatus | ( | MPSolver::BasisStatus | s | ) |
Definition at line 108 of file glop_utils.cc.
| glop::VariableStatus MPSolverToGlopVariableStatus | ( | MPSolver::BasisStatus | s | ) |
Definition at line 74 of file glop_utils.cc.
| std::set<std::pair<int, int> > operations_research::NearestNeighbors | ( | int | number_of_nodes, |
| int | number_of_neighbors, | ||
| const CostFunction & | cost | ||
| ) |
Definition at line 266 of file one_tree_lower_bound.h.
|
inline |
This method returns 1.
Definition at line 3242 of file constraint_solver.h.
|
inline |
|
inline |
| LinearExpr operator* | ( | double | lhs, |
| LinearExpr | rhs | ||
| ) |
Definition at line 166 of file linear_expr.cc.
| LinearExpr operator* | ( | LinearExpr | lhs, |
| double | rhs | ||
| ) |
Definition at line 158 of file linear_expr.cc.
| LinearExpr operator+ | ( | LinearExpr | lhs, |
| const LinearExpr & | rhs | ||
| ) |
Definition at line 150 of file linear_expr.cc.
| LinearExpr operator- | ( | LinearExpr | lhs, |
| const LinearExpr & | rhs | ||
| ) |
Definition at line 154 of file linear_expr.cc.
| LinearExpr operator/ | ( | LinearExpr | lhs, |
| double | rhs | ||
| ) |
Definition at line 162 of file linear_expr.cc.
|
inline |
Definition at line 953 of file linear_solver.h.
|
inline |
Definition at line 959 of file linear_solver.h.
| std::ostream& operations_research::operator<< | ( | std::ostream & | os, |
| StrongIndex< StrongIndexName > | arg | ||
| ) |
Definition at line 251 of file strong_integers.h.
| std::ostream& operations_research::operator<< | ( | std::ostream & | os, |
| StrongInt64< StrongIntegerName > | arg | ||
| ) |
Definition at line 257 of file strong_integers.h.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const Assignment & | assignment | ||
| ) |
Definition at line 1087 of file constraint_solver/assignment.cc.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const BaseObject *const | o | ||
| ) |
Definition at line 2532 of file constraint_solver.cc.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const ClosedInterval & | interval | ||
| ) |
Definition at line 108 of file sorted_interval_list.cc.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const Domain & | domain | ||
| ) |
Definition at line 117 of file sorted_interval_list.cc.
| std::ostream& operations_research::operator<< | ( | std::ostream & | out, |
| const RoundTripDoubleFormat & | format | ||
| ) |
Definition at line 94 of file fp_roundtrip_conv.cc.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const Solver *const | s | ||
| ) |
Definition at line 2527 of file constraint_solver.cc.
| std::ostream & operator<< | ( | std::ostream & | out, |
| const std::vector< ClosedInterval > & | intervals | ||
| ) |
Definition at line 112 of file sorted_interval_list.cc.
| std::ostream & operator<< | ( | std::ostream & | stream, |
| const LinearExpr & | linear_expr | ||
| ) |
Definition at line 145 of file linear_expr.cc.
| LinearRange operator<= | ( | const LinearExpr & | lhs, |
| const LinearExpr & | rhs | ||
| ) |
Definition at line 181 of file linear_expr.cc.
| LinearRange operator== | ( | const LinearExpr & | lhs, |
| const LinearExpr & | rhs | ||
| ) |
Definition at line 184 of file linear_expr.cc.
| LinearRange operator>= | ( | const LinearExpr & | lhs, |
| const LinearExpr & | rhs | ||
| ) |
Definition at line 187 of file linear_expr.cc.
| int OrToolsMajorVersion | ( | ) |
Definition at line 22 of file version.cc.
| int OrToolsMinorVersion | ( | ) |
Definition at line 24 of file version.cc.
| int OrToolsPatchVersion | ( | ) |
Definition at line 26 of file version.cc.
| std::string OrToolsVersionString | ( | ) |
Definition at line 28 of file version.cc.
| std::string operations_research::ParameterDebugString | ( | P * | param | ) |
Support limited to pointers to classes which define DebugString().
Definition at line 531 of file constraint_solveri.h.
| std::string operations_research::ParameterDebugString | ( | P | param | ) |
Definition at line 525 of file constraint_solveri.h.
| absl::StatusOr< glop::DenseRow > ParseSolFile | ( | const std::string & | file_name, |
| const glop::LinearProgram & | model | ||
| ) |
Definition at line 34 of file sol_reader.cc.
| absl::StatusOr< MPSolutionResponse > ParseSolFile | ( | const std::string & | file_name, |
| const MPModelProto & | model | ||
| ) |
Definition at line 40 of file sol_reader.cc.
| absl::StatusOr< glop::DenseRow > ParseSolString | ( | const std::string & | solution, |
| const glop::LinearProgram & | model | ||
| ) |
Definition at line 46 of file sol_reader.cc.
| absl::StatusOr< MPSolutionResponse > ParseSolString | ( | const std::string & | solution, |
| const MPModelProto & | model | ||
| ) |
Definition at line 103 of file sol_reader.cc.
| bool ParseTextProtoForFlag | ( | const absl::string_view | text, |
| google::protobuf::Message *const | message_out, | ||
| std::string *const | error_out | ||
| ) |
Definition at line 77 of file parse_proto.cc.
| absl::StatusOr< MPSolutionResponse > PdlpSolveProto | ( | const MPModelRequest & | request, |
| const bool | relax_integer_variables, | ||
| const std::atomic< bool > * | interrupt_solve | ||
| ) |
Definition at line 36 of file pdlp_proto_solver.cc.
| std::vector< SlopeAndYIntercept > PiecewiseLinearFormulationToSlopeAndYIntercept | ( | const RoutingModel::RouteDimensionTravelInfo::TransitionInfo::PiecewiseLinearFormulation & | pwl_function, |
| int | index_start, | ||
| int | index_end | ||
| ) |
Definition at line 1233 of file routing_lp_scheduling.cc.
| absl::Status PortableDeleteFile | ( | absl::string_view | file_name | ) |
Definition at line 78 of file port/file.cc.
| absl::Status PortableFileGetContents | ( | absl::string_view | file_name, |
| std::string * | output | ||
| ) |
Definition at line 45 of file port/file.cc.
| absl::Status PortableFileSetContents | ( | absl::string_view | file_name, |
| absl::string_view | content | ||
| ) |
Definition at line 35 of file port/file.cc.
| bool PortableTemporaryFile | ( | const char * | directory_prefix, |
| std::string * | filename_out | ||
| ) |
Definition at line 55 of file port/file.cc.
|
inline |
Definition at line 3013 of file constraint_solveri.h.
|
inline |
Definition at line 3008 of file constraint_solveri.h.
| void operations_research::PrintStatistic | ( | const std::string & | name, |
| T | value, | ||
| RoutingOutputFormat | format | ||
| ) |
Definition at line 288 of file solution_serializer.h.
|
inline |
Definition at line 19 of file testing_utils.h.
| std::string operations_research::ProtobufDebugString | ( | const P & | message | ) |
Definition at line 31 of file port/proto_utils.h.
| bool operations_research::ProtobufParseTextProtoForFlag | ( | absl::string_view | text, |
| ProtoType * | message_out, | ||
| std::string * | error_out | ||
| ) |
Definition at line 85 of file port/proto_utils.h.
| std::string operations_research::ProtobufShortDebugString | ( | const P & | message | ) |
Definition at line 40 of file port/proto_utils.h.
| bool operations_research::ProtobufTextFormatMergeFromString | ( | absl::string_view | proto_text_string, |
| ProtoType * | proto | ||
| ) |
Definition at line 65 of file port/proto_utils.h.
| std::string operations_research::ProtobufTextFormatPrintToString | ( | const ProtoType | proto | ) |
Definition at line 103 of file port/proto_utils.h.
| std::string operations_research::ProtoEnumToString | ( | ProtoEnumType | enum_value | ) |
Definition at line 49 of file port/proto_utils.h.
| Fraction RationalApproximation | ( | const double | x, |
| const double | precision | ||
| ) |
Definition at line 26 of file rational_approximation.cc.
| std::vector<Proto> operations_research::ReadAllRecordsOrDie | ( | absl::string_view | filename | ) |
Definition at line 106 of file file_util.h.
| std::vector<Proto> operations_research::ReadAllRecordsOrDie | ( | File * | file | ) |
Definition at line 110 of file file_util.h.
| bool ReadFileToProto | ( | absl::string_view | filename, |
| google::protobuf::Message * | proto | ||
| ) |
Definition at line 47 of file file_util.cc.
| Proto operations_research::ReadFileToProtoOrDie | ( | absl::string_view | filename | ) |
Definition at line 43 of file file_util.h.
| absl::StatusOr< std::string > ReadFileToString | ( | absl::string_view | filename | ) |
Definition at line 36 of file file_util.cc.
| Proto operations_research::ReadOneRecordOrDie | ( | absl::string_view | filename | ) |
Definition at line 118 of file file_util.h.
| QapProblem ReadQapProblemOrDie | ( | const std::string & | filepath | ) |
Definition at line 29 of file qap_reader.cc.
| void operations_research::RealDebugString | ( | const Container & | container, |
| std::string *const | out | ||
| ) |
Definition at line 618 of file constraint_solver/assignment.cc.
| void operations_research::RealLoad | ( | const AssignmentProto & | assignment_proto, |
| Container *const | container, | ||
| int(AssignmentProto::*)() const | GetSize, | ||
| const Proto &(AssignmentProto::*)(int) const | GetElem | ||
| ) |
Definition at line 507 of file constraint_solver/assignment.cc.
| void operations_research::RealSave | ( | AssignmentProto *const | assignment_proto, |
| const Container & | container, | ||
| Proto *(AssignmentProto::*)() | Add | ||
| ) |
Definition at line 579 of file constraint_solver/assignment.cc.
| void operations_research::RegisterConstraintHandler | ( | ScipConstraintHandler< Constraint > * | handler, |
| SCIP * | scip | ||
| ) |
| void operations_research::RegisterConstraintHandler | ( | ScipConstraintHandler< ConstraintData > * | handler, |
| SCIP * | scip | ||
| ) |
Definition at line 257 of file scip_callback.h.
| void operations_research::RegisterDemon | ( | Solver *const | solver, |
| Demon *const | demon, | ||
| DemonProfiler *const | monitor | ||
| ) |
Definition at line 464 of file demon_profiler.cc.
| void RestoreBoolValue | ( | IntVar *const | var | ) |
Definition at line 6402 of file expressions.cc.
| std::string ReturnCodeString | ( | const int | rc | ) |
Definition at line 66 of file glpk_formatters.cc.
| RoutingOutputFormat RoutingOutputFormatFromString | ( | std::string_view | format | ) |
Definition at line 29 of file solution_serializer.cc.
| ScipSeparationResult operations_research::RunSeparation | ( | internal::ScipCallbackRunner * | runner, |
| const ScipConstraintHandlerContext & | context, | ||
| absl::Span< SCIP_CONS * > | constraints, | ||
| bool | is_integral | ||
| ) |
Definition at line 118 of file scip_callback.cc.
| void operations_research::RunWorker | ( | void * | data | ) |
Definition at line 19 of file threadpool.cc.
| bool operations_research::SafeAddInto | ( | IntegerType | a, |
| IntegerType * | b | ||
| ) |
Definition at line 131 of file saturated_arithmetic.h.
| absl::StatusOr< const Proto * > SafeProtoConstDownCast | ( | const google::protobuf::Message * | proto | ) |
Definition at line 59 of file proto_tools.h.
| absl::StatusOr< Proto * > SafeProtoDownCast | ( | google::protobuf::Message * | proto | ) |
Definition at line 46 of file proto_tools.h.
| absl::StatusOr< MPSolutionResponse > SatSolveProto | ( | MPModelRequest | request, |
| std::atomic< bool > * | interrupt_solve, | ||
| std::function< void(const std::string &)> | logging_callback, | ||
| std::function< void(const MPSolution &)> | solution_callback | ||
| ) |
Definition at line 129 of file sat_proto_solver.cc.
| std::string SatSolverVersion | ( | ) |
Definition at line 438 of file sat_proto_solver.cc.
| absl::StatusOr< MPSolutionResponse > ScipSolveProto | ( | const MPModelRequest & | request | ) |
Definition at line 660 of file scip_proto_solver.cc.
| void SetAssignmentFromAssignment | ( | Assignment * | target_assignment, |
| const std::vector< IntVar * > & | target_vars, | ||
| const Assignment * | source_assignment, | ||
| const std::vector< IntVar * > & | source_vars | ||
| ) |
NOLINT.
Given a "source_assignment", clears the "target_assignment" and adds all IntVars in "target_vars", with the values of the variables set according to the corresponding values of "source_vars" in "source_assignment". source_vars and target_vars must have the same number of elements. The source and target assignments can belong to different Solvers.
Definition at line 1014 of file constraint_solver/assignment.cc.
|
inline |
|
inline |
| void operations_research::SetFirstSolutionStrategyFromFlags | ( | RoutingSearchParameters * | parameters | ) |
Definition at line 139 of file routing_flags.cc.
| Constraint* operations_research::SetIsEqual | ( | IntVar *const | var, |
| const std::vector< int64_t > & | values, | ||
| const std::vector< IntVar * > & | vars | ||
| ) |
Definition at line 6387 of file expressions.cc.
| Constraint* operations_research::SetIsGreaterOrEqual | ( | IntVar *const | var, |
| const std::vector< int64_t > & | values, | ||
| const std::vector< IntVar * > & | vars | ||
| ) |
Definition at line 6394 of file expressions.cc.
| void operations_research::SetLocalSearchMetaheuristicFromFlags | ( | RoutingSearchParameters * | parameters | ) |
Definition at line 183 of file routing_flags.cc.
| void operations_research::SetMiscellaneousParametersFromFlags | ( | RoutingSearchParameters * | parameters | ) |
Definition at line 306 of file routing_flags.cc.
| void operations_research::SetSearchLimitsFromFlags | ( | RoutingSearchParameters * | parameters | ) |
Definition at line 282 of file routing_flags.cc.
| absl::Status SetSolverSpecificParameters | ( | absl::string_view | parameters, |
| GRBenv * | gurobi | ||
| ) |
Definition at line 226 of file gurobi_proto_solver.cc.
| void SetupGlpkEnvAutomaticDeletion | ( | ) |
Definition at line 35 of file glpk_env_deleter.cc.
| std::vector< bool > SlopeAndYInterceptToConvexityRegions | ( | const std::vector< SlopeAndYIntercept > & | slope_and_y_intercept | ) |
Definition at line 1218 of file routing_lp_scheduling.cc.
| std::string SolutionStatusString | ( | const int | status | ) |
Definition at line 30 of file glpk_formatters.cc.
| bool SolveModelWithSat | ( | const RoutingModel & | model, |
| const RoutingSearchParameters & | search_parameters, | ||
| const Assignment * | initial_solution, | ||
| Assignment * | solution | ||
| ) |
Attempts to solve the model using the cp-sat solver.
As of 5/2019, will solve the TSP corresponding to the model if it has a single vehicle. Therefore the resulting solution might not actually be feasible. Will return false if a solution could not be found.
Definition at line 1056 of file routing_sat.cc.
| bool SolverTypeIsMip | ( | MPModelRequest::SolverType | solver_type | ) |
Definition at line 75 of file linear_solver.cc.
|
inline |
Definition at line 946 of file linear_solver.h.
| bool StableDijkstraShortestPath | ( | int | node_count, |
| int | start_node, | ||
| int | end_node, | ||
| std::function< int64_t(int, int)> | graph, | ||
| int64_t | disconnected_distance, | ||
| std::vector< int > * | nodes | ||
| ) |
Definition at line 161 of file dijkstra.cc.
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongIndex | , |
| int | , | ||
| % | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongIndex | , |
| int | , | ||
| * | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongIndex | , |
| int | , | ||
| - | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongIndex | , |
| int | , | ||
| + | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| % | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| * | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| - | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| >> | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| + | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| / | |||
| ) |
| operations_research::STRONG_TYPE_ARITHMETIC_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| << | |||
| ) |
| operations_research::STRONG_TYPE_COMPARISON_OP | ( | StrongIndex | , |
| int | , | ||
| ! | |||
| ) |
| operations_research::STRONG_TYPE_COMPARISON_OP | ( | StrongIndex | , |
| int | , | ||
| >= | |||
| ) |
| operations_research::STRONG_TYPE_COMPARISON_OP | ( | StrongIndex | , |
| int | , | ||
| <= | |||
| ) |
| STRONG_TYPE_COMPARISON_OP | ( | StrongIndex | , |
| int | |||
| ) |
| operations_research::STRONG_TYPE_COMPARISON_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| ! | |||
| ) |
| operations_research::STRONG_TYPE_COMPARISON_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| >= | |||
| ) |
| operations_research::STRONG_TYPE_COMPARISON_OP | ( | StrongInt64 | , |
| int64_t | , | ||
| <= | |||
| ) |
| STRONG_TYPE_COMPARISON_OP | ( | StrongInt64 | , |
| int64_t | |||
| ) |
| int32_t strtoint32 | ( | absl::string_view | word | ) |
Definition at line 26 of file strtoint.cc.
| int64_t strtoint64 | ( | absl::string_view | word | ) |
Definition at line 32 of file strtoint.cc.
|
inline |
Definition at line 105 of file saturated_arithmetic.h.
|
inline |
Definition at line 124 of file saturated_arithmetic.h.
| int64_t SumOfKMaxValueInDomain | ( | const Domain & | domain, |
| int | k | ||
| ) |
Definition at line 671 of file sorted_interval_list.cc.
| int64_t SumOfKMinValueInDomain | ( | const Domain & | domain, |
| int | k | ||
| ) |
Definition at line 657 of file sorted_interval_list.cc.
| operations_research::TEST | ( | LinearAssignmentTest | , |
| InvalidMatrix | |||
| ) |
Definition at line 87 of file hungarian_test.cc.
| operations_research::TEST | ( | LinearAssignmentTest | , |
| NullMatrix | |||
| ) |
Definition at line 78 of file hungarian_test.cc.
| operations_research::TEST | ( | LinearAssignmentTest | , |
| SizeOneMatrix | |||
| ) |
Definition at line 118 of file hungarian_test.cc.
| operations_research::TEST | ( | LinearAssignmentTest | , |
| Small3x4Matrix | |||
| ) |
Definition at line 146 of file hungarian_test.cc.
| operations_research::TEST | ( | LinearAssignmentTest | , |
| Small4x3Matrix | |||
| ) |
Definition at line 159 of file hungarian_test.cc.
| operations_research::TEST | ( | LinearAssignmentTest | , |
| Small4x4Matrix | |||
| ) |
Definition at line 131 of file hungarian_test.cc.
| void operations_research::TestMaximization | ( | const std::vector< std::vector< double >> & | cost, |
| const int | expected_assignment_size, | ||
| const int | expected_agents[], | ||
| const int | expected_tasks[] | ||
| ) |
Definition at line 65 of file hungarian_test.cc.
| void operations_research::TestMinimization | ( | const std::vector< std::vector< double >> & | cost, |
| const int | expected_assignment_size, | ||
| const int | expected_agents[], | ||
| const int | expected_tasks[] | ||
| ) |
Definition at line 54 of file hungarian_test.cc.
| std::vector< int64_t > ToInt64Vector | ( | const std::vector< int > & | input | ) |
Definition at line 829 of file utilities.cc.
| std::string ToString | ( | MPCallbackEvent | event | ) |
Definition at line 23 of file linear_solver_callback.cc.
| const absl::string_view ToString | ( | MPSolver::OptimizationProblemType | optimization_problem_type | ) |
Definition at line 604 of file linear_solver.cc.
| std::string TruncateAndQuoteGLPKName | ( | const std::string_view | original_name | ) |
Definition at line 111 of file glpk_formatters.cc.
|
inline |
|
inline |
Definition at line 80 of file saturated_arithmetic.h.
|
inline |
Definition at line 87 of file saturated_arithmetic.h.
| int32_t operations_research::UnsafeLeastSignificantBitPosition32 | ( | const uint32_t *const | bitset, |
| uint32_t | start, | ||
| uint32_t | end | ||
| ) |
| int64_t operations_research::UnsafeLeastSignificantBitPosition64 | ( | const uint64_t *const | bitset, |
| uint64_t | start, | ||
| uint64_t | end | ||
| ) |
| int32_t operations_research::UnsafeMostSignificantBitPosition32 | ( | const uint32_t *const | bitset, |
| uint32_t | start, | ||
| uint32_t | end | ||
| ) |
| int64_t operations_research::UnsafeMostSignificantBitPosition64 | ( | const uint64_t *const | bitset, |
| uint64_t | start, | ||
| uint64_t | end | ||
| ) |
| std::string operations_research::VariablesToString | ( | absl::flat_hash_map< std::string, std::pair< sat::IntegerVariableProto, int >> & | variables, |
| absl::flat_hash_map< std::string, std::vector< int >> & | variable_instances, | ||
| absl::flat_hash_map< std::string, absl::flat_hash_set< std::string >> & | variable_childs, | ||
| const sat::CpSolverResponse & | response_, | ||
| const std::string & | variable, | ||
| std::string | prefix = "" |
||
| ) |
Definition at line 2851 of file routing_lp_scheduling.cc.
| std::string operations_research::VariableToString | ( | std::pair< sat::IntegerVariableProto, int > & | variable_pair, |
| const sat::CpSolverResponse & | response_ | ||
| ) |
Definition at line 2799 of file routing_lp_scheduling.cc.
| bool WriteProtoToFile | ( | absl::string_view | filename, |
| const google::protobuf::Message & | proto, | ||
| ProtoWriteFormat | proto_write_format, | ||
| bool | gzipped, | ||
| bool | append_extension_to_file_name | ||
| ) |
Definition at line 112 of file file_util.cc.
| void operations_research::WriteRecordsOrDie | ( | absl::string_view | filename, |
| const std::vector< Proto > & | protos | ||
| ) |
Definition at line 127 of file file_util.h.
|
inline |
NOLINT.
This method returns 0. It is useful when 0 can be cast either as a pointer or as an integer value and thus lead to an ambiguous function call.
Definition at line 3239 of file constraint_solver.h.
| std::function< int(GRBmodel *model, int numnz, int *cind, double *cval, char sense, double rhs, const char *constrname)> GRBaddconstr = nullptr |
Definition at line 141 of file environment.cc.
| std::function< int(GRBmodel *model, int numconstrs, int numnz, int *cbeg, int *cind, double *cval, char *sense, double *rhs, char **constrnames)> GRBaddconstrs = nullptr |
Definition at line 145 of file environment.cc.
| std::function< int(GRBmodel *model, const char *name, int resvar, int argvar)> GRBaddgenconstrAbs = nullptr |
Definition at line 159 of file environment.cc.
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars)> GRBaddgenconstrAnd = nullptr |
Definition at line 162 of file environment.cc.
| std::function< int(GRBmodel *model, const char *name, int binvar, int binval, int nvars, const int *vars, const double *vals, char sense, double rhs)> GRBaddgenconstrIndicator = nullptr |
Definition at line 169 of file environment.cc.
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars, double constant)> GRBaddgenconstrMax = nullptr |
Definition at line 154 of file environment.cc.
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars, double constant)> GRBaddgenconstrMin = nullptr |
Definition at line 157 of file environment.cc.
| std::function< int(GRBmodel *model, const char *name, int resvar, int nvars, const int *vars)> GRBaddgenconstrOr = nullptr |
Definition at line 165 of file environment.cc.
| std::function< int(GRBmodel *model, int numlnz, int *lind, double *lval, int numqnz, int *qrow, int *qcol, double *qval, char sense, double rhs, const char *QCname)> GRBaddqconstr = nullptr |
Definition at line 173 of file environment.cc.
| std::function< int(GRBmodel *model, int numqnz, int *qrow, int *qcol, double *qval)> GRBaddqpterms = nullptr |
Definition at line 176 of file environment.cc.
| std::function< int(GRBmodel *model, int numnz, int *cind, double *cval, double lower, double upper, const char *constrname)> GRBaddrangeconstr = nullptr |
Definition at line 148 of file environment.cc.
| std::function< int(GRBmodel *model, int numsos, int nummembers, int *types, int *beg, int *ind, double *weight)> GRBaddsos = nullptr |
Definition at line 151 of file environment.cc.
| std::function< int(GRBmodel *model, int numnz, int *vind, double *vval, double obj, double lb, double ub, char vtype, const char *varname)> GRBaddvar = nullptr |
Definition at line 134 of file environment.cc.
| std::function< int(GRBmodel *model, int numvars, int numnz, int *vbeg, int *vind, double *vval, double *obj, double *lb, double *ub, char *vtype, char **varnames)> GRBaddvars = nullptr |
Definition at line 138 of file environment.cc.
| std::function< int(void *cbdata, int cutlen, const int *cutind, const double *cutval, char cutsense, double cutrhs)> GRBcbcut = nullptr |
Definition at line 118 of file environment.cc.
| std::function< int(void *cbdata, int where, int what, void *resultP)> GRBcbget |
Definition at line 112 of file environment.cc.
| std::function< int(void *cbdata, int lazylen, const int *lazyind, const double *lazyval, char lazysense, double lazyrhs)> GRBcblazy = nullptr |
Definition at line 121 of file environment.cc.
| std::function< int(void *cbdata, const double *solution, double *objvalP)> GRBcbsolution = nullptr |
Definition at line 115 of file environment.cc.
| std::function< int(GRBmodel *model, int cnt, int *cind, int *vind, double *val)> GRBchgcoeffs = nullptr |
Definition at line 185 of file environment.cc.
Definition at line 208 of file environment.cc.
Definition at line 178 of file environment.cc.
Definition at line 180 of file environment.cc.
Definition at line 183 of file environment.cc.
Definition at line 182 of file environment.cc.
Definition at line 179 of file environment.cc.
Definition at line 177 of file environment.cc.
| std::function< void(GRBenv *env)> GRBfreeenv = nullptr |
Definition at line 211 of file environment.cc.
Definition at line 187 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, char *values)> GRBgetcharattrarray = nullptr |
Definition at line 79 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int element, char *valueP)> GRBgetcharattrelement = nullptr |
Definition at line 73 of file environment.cc.
Definition at line 87 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, double *values)> GRBgetdblattrarray = nullptr |
Definition at line 98 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int element, double *valueP)> GRBgetdblattrelement = nullptr |
Definition at line 92 of file environment.cc.
| std::function< int(GRBenv *env, const char *paramname, double *valueP)> GRBgetdblparam = nullptr |
Definition at line 196 of file environment.cc.
Definition at line 210 of file environment.cc.
| std::function< const char *(GRBenv *env)> GRBgeterrormsg = nullptr |
Definition at line 212 of file environment.cc.
Definition at line 53 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, int *values)> GRBgetintattrarray = nullptr |
Definition at line 64 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int element, int *valueP)> GRBgetintattrelement = nullptr |
Definition at line 58 of file environment.cc.
| std::function< int(GRBenv *env, const char *paramname, int *valueP)> GRBgetintparam = nullptr |
Definition at line 194 of file environment.cc.
Definition at line 106 of file environment.cc.
| std::function< int(GRBenv *env, const char *paramname, char *valueP)> GRBgetstrparam = nullptr |
Definition at line 198 of file environment.cc.
| std::function< int(GRBmodel *model, int *numnzP, int *vbeg, int *vind, double *vval, int start, int len)> GRBgetvars = nullptr |
Definition at line 124 of file environment.cc.
Definition at line 50 of file environment.cc.
| std::function< int(GRBenv **, const char *, const char *, const char *, int, const char *)> GRBisqp = nullptr |
Definition at line 49 of file environment.cc.
| std::function< int(GRBenv **envP, const char *logfilename)> GRBloadenv = nullptr |
Definition at line 209 of file environment.cc.
| std::function< int(GRBenv *env, GRBmodel **modelP, const char *Pname, int numvars, double *obj, double *lb, double *ub, char *vtype, char **varnames)> GRBnewmodel = nullptr |
Definition at line 130 of file environment.cc.
Definition at line 125 of file environment.cc.
| std::function< char *(void)> GRBplatform = nullptr |
Definition at line 215 of file environment.cc.
| std::function< int(GRBenv *env)> GRBresetparams = nullptr |
Definition at line 207 of file environment.cc.
| std::function< int(GRBmodel *model, int(GUROBI_STDCALL *cb)(CB_ARGS), void *usrdata)> GRBsetcallbackfunc = nullptr |
Definition at line 111 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, char *newvalues)> GRBsetcharattrarray = nullptr |
Definition at line 82 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int element, char newvalue)> GRBsetcharattrelement = nullptr |
Definition at line 76 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int len, int *ind, char *newvalues)> GRBsetcharattrlist = nullptr |
Definition at line 85 of file environment.cc.
Definition at line 89 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, double *newvalues)> GRBsetdblattrarray = nullptr |
Definition at line 101 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int element, double newvalue)> GRBsetdblattrelement = nullptr |
Definition at line 95 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int len, int *ind, double *newvalues)> GRBsetdblattrlist = nullptr |
Definition at line 104 of file environment.cc.
Definition at line 204 of file environment.cc.
Definition at line 55 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int first, int len, int *newvalues)> GRBsetintattrarray = nullptr |
Definition at line 67 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int element, int newvalue)> GRBsetintattrelement = nullptr |
Definition at line 61 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, int len, int *ind, int *newvalues)> GRBsetintattrlist = nullptr |
Definition at line 70 of file environment.cc.
Definition at line 202 of file environment.cc.
| std::function< int(GRBmodel *model, int index, int priority, double weight, double abstol, double reltol, const char *name, double constant, int lnz, int *lind, double *lval)> GRBsetobjectiven = nullptr |
Definition at line 192 of file environment.cc.
Definition at line 200 of file environment.cc.
| std::function< int(GRBmodel *model, const char *attrname, const char *newvalue)> GRBsetstrattr = nullptr |
Definition at line 108 of file environment.cc.
Definition at line 206 of file environment.cc.
Definition at line 188 of file environment.cc.
Definition at line 186 of file environment.cc.
| std::function< void(int *majorP, int *minorP, int *technicalP)> GRBversion |
Definition at line 213 of file environment.cc.
Definition at line 126 of file environment.cc.
|
static |
|
static |
|
constexpr |
Definition at line 169 of file linear_solver.h.
|
inlineconstexpr |
Definition at line 35 of file glpk_formatters.h.
|
constexpr |
Definition at line 546 of file linear_solver.cc.
| ABSL_CONST_INIT const bool kStdToCharsDoubleIsSupported = true |
Definition at line 87 of file fp_roundtrip_conv.cc.
|
static |
Definition at line 1131 of file routing.cc.