C++ Reference: class DimensionCumulOptimizerCore

Note: This documentation is automatically generated.

Utility class used in Local/GlobalDimensionCumulOptimizer to set the linear solver constraints and solve the problem.
Method
dimension

Return type: const RoutingDimension*

DimensionCumulOptimizerCore

Arguments: const RoutingDimension* dimension, bool use_precedence_propagator

Optimize

Return type: DimensionSchedulingStatus

Arguments: const std::function<int64_t(int64_t)>& next_accessor, RoutingLinearSolverWrapper* solver, std::vector<int64_t>* cumul_values, std::vector<int64_t>* break_values, std::vector<std::vector<int>>* resource_indices_per_group, int64_t* cost, int64_t* transit_cost, bool clear_lp = true

OptimizeAndPack

Return type: DimensionSchedulingStatus

Arguments: const std::function<int64_t(int64_t)>& next_accessor, RoutingLinearSolverWrapper* solver, std::vector<int64_t>* cumul_values, std::vector<int64_t>* break_values, std::vector<std::vector<int>>* resource_indices_per_group

OptimizeAndPackSingleRoute

Return type: DimensionSchedulingStatus

Arguments: int vehicle, const std::function<int64_t(int64_t)>& next_accessor, const RoutingModel::ResourceGroup::Resource* resource, RoutingLinearSolverWrapper* solver, std::vector<int64_t>* cumul_values, std::vector<int64_t>* break_values

OptimizeSingleRoute

Return type: DimensionSchedulingStatus

Arguments: int vehicle, const std::function<int64_t(int64_t)>& next_accessor, RoutingLinearSolverWrapper* solver, std::vector<int64_t>* cumul_values, std::vector<int64_t>* break_values, int64_t* cost, int64_t* transit_cost, bool clear_lp = true

In the OptimizeSingleRoute() and Optimize() methods, if both "cumul_values" and "cost" parameters are null, we don't optimize the cost and stop at the first feasible solution in the linear solver (since in this case only feasibility is of interest).

OptimizeSingleRouteWithResources

Return type: std::vector<DimensionSchedulingStatus>

Arguments: int vehicle, const std::function<int64_t(int64_t)>& next_accessor, const std::function<int64_t(int64_t, int64_t)>& transit_accessor, const std::vector<RoutingModel::ResourceGroup::Resource>& resources, const std::vector<int>& resource_indices, bool optimize_vehicle_costs, RoutingLinearSolverWrapper* solver, std::vector<int64_t>* costs_without_transits, std::vector<std::vector<int64_t>>* cumul_values, std::vector<std::vector<int64_t>>* break_values, bool clear_lp = true