closed model in vrp_initial_routes
This commit is contained in:
@@ -147,7 +147,17 @@ void VrpInitialRoutes() {
|
||||
routing.GetMutableDimension("Distance")->SetGlobalSpanCostCoefficient(100);
|
||||
// [END distance_constraint]
|
||||
|
||||
// Get initial solution from routes.
|
||||
// [START parameters]
|
||||
RoutingSearchParameters searchParameters = DefaultRoutingSearchParameters();
|
||||
searchParameters.set_first_solution_strategy(FirstSolutionStrategy_Value_PATH_CHEAPEST_ARC);
|
||||
searchParameters.set_local_search_metaheuristic(LocalSearchMetaheuristic::GUIDED_LOCAL_SEARCH);
|
||||
searchParameters.mutable_time_limit()->set_seconds(5);
|
||||
// When an initial solution is given for search, the model should be closed,
|
||||
// otherwise the solver will ignore the search parameters.
|
||||
routing.CloseModelWithParameters(searchParameters);
|
||||
// [END parameters]
|
||||
|
||||
// Get initial solution from routes after closing the model.
|
||||
// [START print_initial_solution]
|
||||
const Assignment* initial_solution =
|
||||
routing.ReadAssignmentFromRoutes(data.initial_routes, true);
|
||||
@@ -155,16 +165,12 @@ void VrpInitialRoutes() {
|
||||
LOG(INFO) << "Initial solution: ";
|
||||
PrintSolution(data, manager, routing, *initial_solution);
|
||||
// [END print_initial_solution]
|
||||
// Setting first solution heuristic.
|
||||
// [START parameters]
|
||||
RoutingSearchParameters searchParameters = DefaultRoutingSearchParameters();
|
||||
// [END parameters]
|
||||
|
||||
// Solve from initial solution.
|
||||
// [START solve]
|
||||
const Assignment* solution = routing.SolveFromAssignmentWithParameters(
|
||||
initial_solution, searchParameters);
|
||||
// [START solve]
|
||||
// [END solve]
|
||||
|
||||
// Print solution on console.
|
||||
// [START print_solution]
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
"""Vehicles Routing Problem (VRP)."""
|
||||
|
||||
# [START import]
|
||||
from ortools.constraint_solver import routing_enums_pb2
|
||||
from ortools.constraint_solver import pywrapcp
|
||||
# [END import]
|
||||
|
||||
@@ -181,6 +182,20 @@ def main():
|
||||
distance_dimension.SetGlobalSpanCostCoefficient(100)
|
||||
# [END distance_constraint]
|
||||
|
||||
# Set default search parameters.
|
||||
# [START parameters]
|
||||
search_parameters = pywrapcp.DefaultRoutingSearchParameters()
|
||||
search_parameters.first_solution_strategy = (
|
||||
routing_enums_pb2.FirstSolutionStrategy.PATH_CHEAPEST_ARC)
|
||||
search_parameters.local_search_metaheuristic = (
|
||||
routing_enums_pb2.LocalSearchMetaheuristic.GUIDED_LOCAL_SEARCH)
|
||||
search_parameters.time_limit.FromSeconds(5)
|
||||
# When an initial solution is given for search, the model should be closed,
|
||||
# otherwise the solver will ignore the search parameters.
|
||||
routing.CloseModelWithParameters(search_parameters)
|
||||
# [END parameters]
|
||||
|
||||
# Get initial solution from routes after closing the model.
|
||||
# [START print_initial_solution]
|
||||
initial_solution = routing.ReadAssignmentFromRoutes(data['initial_routes'],
|
||||
True)
|
||||
@@ -188,11 +203,6 @@ def main():
|
||||
print_solution(data, manager, routing, initial_solution)
|
||||
# [END print_initial_solution]
|
||||
|
||||
# Set default search parameters.
|
||||
# [START parameters]
|
||||
search_parameters = pywrapcp.DefaultRoutingSearchParameters()
|
||||
# [END parameters]
|
||||
|
||||
# Solve the problem.
|
||||
# [START solve]
|
||||
solution = routing.SolveFromAssignmentWithParameters(
|
||||
|
||||
Reference in New Issue
Block a user