Update notebooks
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -82,7 +82,6 @@
|
||||
"\"\"\"A simple knapsack problem.\"\"\"\n",
|
||||
"# [START program]\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.algorithms import pywrapknapsack_solver\n",
|
||||
"# [END import]\n",
|
||||
"\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -82,7 +82,6 @@
|
||||
"# [START program]\n",
|
||||
"\"\"\"A simple knapsack problem.\"\"\"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.algorithms import pywrapknapsack_solver\n",
|
||||
"# [END import]\n",
|
||||
"\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -92,10 +92,8 @@
|
||||
" Distances are in meters.\n",
|
||||
"\"\"\"\n",
|
||||
"\n",
|
||||
"from __future__ import print_function\n",
|
||||
"\n",
|
||||
"from functools import partial\n",
|
||||
"from six.moves import xrange\n",
|
||||
"\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
@@ -153,9 +151,9 @@
|
||||
" \"\"\"Creates callback to return distance between points.\"\"\"\n",
|
||||
" _distances = {}\n",
|
||||
" # precompute distance between location to have distance callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _distances[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _distances[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -201,7 +199,7 @@
|
||||
" total_distance = 0\n",
|
||||
" total_load = 0\n",
|
||||
" capacity_dimension = routing.GetDimensionOrDie('Capacity')\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" plan_output = 'Route for vehicle {}:\\n'.format(vehicle_id)\n",
|
||||
" distance = 0\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -92,10 +92,8 @@
|
||||
" Distances are in meters.\n",
|
||||
"\"\"\"\n",
|
||||
"\n",
|
||||
"from __future__ import print_function\n",
|
||||
"\n",
|
||||
"from functools import partial\n",
|
||||
"from six.moves import xrange\n",
|
||||
"\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
@@ -191,9 +189,9 @@
|
||||
" \"\"\"Creates callback to return distance between points.\"\"\"\n",
|
||||
" _distances = {}\n",
|
||||
" # precompute distance between location to have distance callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _distances[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _distances[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -273,9 +271,9 @@
|
||||
"\n",
|
||||
" _total_time = {}\n",
|
||||
" # precompute total time to have time callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _total_time[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _total_time[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -312,7 +310,7 @@
|
||||
" routing.AddToAssignment(time_dimension.SlackVar(index))\n",
|
||||
" # Add time window constraints for each vehicle start node\n",
|
||||
" # and 'copy' the slack var in the solution object (aka Assignment) to print it\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" time_dimension.CumulVar(index).SetRange(data['time_windows'][0][0],\n",
|
||||
" data['time_windows'][0][1])\n",
|
||||
@@ -333,13 +331,13 @@
|
||||
" capacity_dimension = routing.GetDimensionOrDie('Capacity')\n",
|
||||
" time_dimension = routing.GetDimensionOrDie('Time')\n",
|
||||
" dropped = []\n",
|
||||
" for order in xrange(0, routing.nodes()):\n",
|
||||
" for order in range(0, routing.nodes()):\n",
|
||||
" index = manager.NodeToIndex(order)\n",
|
||||
" if assignment.Value(routing.NextVar(index)) == index:\n",
|
||||
" dropped.append(order)\n",
|
||||
" print('dropped orders: {}'.format(dropped))\n",
|
||||
"\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" plan_output = 'Route for vehicle {}:\\n'.format(vehicle_id)\n",
|
||||
" distance = 0\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -92,10 +92,8 @@
|
||||
" Distances are in meters and time in minutes.\n",
|
||||
"\"\"\"\n",
|
||||
"\n",
|
||||
"from __future__ import print_function\n",
|
||||
"\n",
|
||||
"from functools import partial\n",
|
||||
"from six.moves import xrange\n",
|
||||
"\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
@@ -165,9 +163,9 @@
|
||||
" \"\"\"Creates callback to return distance between points.\"\"\"\n",
|
||||
" _distances = {}\n",
|
||||
" # precompute distance between location to have distance callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _distances[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _distances[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -222,9 +220,9 @@
|
||||
"\n",
|
||||
" _total_time = {}\n",
|
||||
" # precompute total time to have time callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _total_time[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _total_time[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -261,7 +259,7 @@
|
||||
" routing.AddToAssignment(time_dimension.SlackVar(index))\n",
|
||||
" # Add time window constraints for each vehicle start node\n",
|
||||
" # and 'copy' the slack var in the solution object (aka Assignment) to print it\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" time_dimension.CumulVar(index).SetRange(data['time_windows'][0][0],\n",
|
||||
" data['time_windows'][0][1])\n",
|
||||
@@ -281,7 +279,7 @@
|
||||
" total_time = 0\n",
|
||||
" capacity_dimension = routing.GetDimensionOrDie('Capacity')\n",
|
||||
" time_dimension = routing.GetDimensionOrDie('Time')\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" plan_output = 'Route for vehicle {}:\\n'.format(vehicle_id)\n",
|
||||
" distance = 0\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -92,10 +92,8 @@
|
||||
" Distances are in meters and time in minutes.\n",
|
||||
"\"\"\"\n",
|
||||
"\n",
|
||||
"from __future__ import print_function\n",
|
||||
"\n",
|
||||
"from functools import partial\n",
|
||||
"from six.moves import xrange\n",
|
||||
"\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
@@ -166,9 +164,9 @@
|
||||
" \"\"\"Creates callback to return distance between points.\"\"\"\n",
|
||||
" _distances = {}\n",
|
||||
" # precompute distance between location to have distance callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _distances[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _distances[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -223,9 +221,9 @@
|
||||
"\n",
|
||||
" _total_time = {}\n",
|
||||
" # precompute total time to have time callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _total_time[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _total_time[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -262,7 +260,7 @@
|
||||
" routing.AddToAssignment(time_dimension.SlackVar(index))\n",
|
||||
" # Add time window constraints for each vehicle start node\n",
|
||||
" # and 'copy' the slack var in the solution object (aka Assignment) to print it\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" time_dimension.CumulVar(index).SetRange(data['time_windows'][0][0],\n",
|
||||
" data['time_windows'][0][1])\n",
|
||||
@@ -280,7 +278,7 @@
|
||||
"\n",
|
||||
" print('Breaks:')\n",
|
||||
" intervals = assignment.IntervalVarContainer()\n",
|
||||
" for i in xrange(intervals.Size()):\n",
|
||||
" for i in range(intervals.Size()):\n",
|
||||
" brk = intervals.Element(i)\n",
|
||||
" if brk.PerformedValue() == 1:\n",
|
||||
" print('{}: Start({}) Duration({})'.format(\n",
|
||||
@@ -295,7 +293,7 @@
|
||||
" total_time = 0\n",
|
||||
" capacity_dimension = routing.GetDimensionOrDie('Capacity')\n",
|
||||
" time_dimension = routing.GetDimensionOrDie('Time')\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" plan_output = 'Route for vehicle {}:\\n'.format(vehicle_id)\n",
|
||||
" distance = 0\n",
|
||||
@@ -366,7 +364,7 @@
|
||||
"# Add breaks\n",
|
||||
"time_dimension = routing.GetDimensionOrDie(\"Time\")\n",
|
||||
"node_visit_transit = {}\n",
|
||||
"for n in xrange(routing.Size()):\n",
|
||||
"for n in range(routing.Size()):\n",
|
||||
" if n >= data['num_locations']:\n",
|
||||
" node_visit_transit[n] = 0\n",
|
||||
" else:\n",
|
||||
@@ -374,7 +372,7 @@
|
||||
" data['demands'][n] * data['time_per_demand_unit'])\n",
|
||||
"\n",
|
||||
"break_intervals = {}\n",
|
||||
"#for v in xrange(data['num_vehicles']):\n",
|
||||
"#for v in range(data['num_vehicles']):\n",
|
||||
"for v in [0]:\n",
|
||||
" vehicle_break = data['breaks'][v]\n",
|
||||
" break_intervals[v] = [\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Constraint optimization example.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
"\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Vehicle Routing example.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -87,7 +87,6 @@
|
||||
"\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple travelling salesman problem on a circuit board.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"import math\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple travelling salesman problem between cities.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Travelling Salesman Problem.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Vehicles Routing Problem.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Capacited Vehicles Routing Problem (CVRP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Capacited Vehicles Routing Problem (CVRP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Vehicles Routing Problem (VRP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Vehicles Routing Problem (VRP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Pickup Delivery Problem (PDP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Pickup Delivery Problem (PDP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Pickup Delivery Problem (PDP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Vehicles Routing Problem (VRP) with Resource Constraints.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Simple Vehicles Routing Problem.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Vehicles Routing Problem (VRP) with Time Windows.\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -83,7 +83,6 @@
|
||||
"\"\"\"Vehicles Routing Problem (VRP).\"\"\"\n",
|
||||
"\n",
|
||||
"# [START import]\n",
|
||||
"from __future__ import print_function\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"# [END import]\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
@@ -92,10 +92,8 @@
|
||||
" Distances are in meters.\n",
|
||||
"\"\"\"\n",
|
||||
"\n",
|
||||
"from __future__ import print_function\n",
|
||||
"\n",
|
||||
"from functools import partial\n",
|
||||
"from six.moves import xrange\n",
|
||||
"\n",
|
||||
"from ortools.constraint_solver import pywrapcp\n",
|
||||
"from ortools.constraint_solver import routing_enums_pb2\n",
|
||||
@@ -142,9 +140,9 @@
|
||||
" \"\"\"Creates callback to return distance between points.\"\"\"\n",
|
||||
" _distances = {}\n",
|
||||
" # precompute distance between location to have distance callback in O(1)\n",
|
||||
" for from_node in xrange(data['num_locations']):\n",
|
||||
" for from_node in range(data['num_locations']):\n",
|
||||
" _distances[from_node] = {}\n",
|
||||
" for to_node in xrange(data['num_locations']):\n",
|
||||
" for to_node in range(data['num_locations']):\n",
|
||||
" if from_node == to_node:\n",
|
||||
" _distances[from_node][to_node] = 0\n",
|
||||
" else:\n",
|
||||
@@ -181,7 +179,7 @@
|
||||
" \"\"\"Prints assignment on console\"\"\"\n",
|
||||
" print('Objective: {}'.format(assignment.ObjectiveValue()))\n",
|
||||
" total_distance = 0\n",
|
||||
" for vehicle_id in xrange(data['num_vehicles']):\n",
|
||||
" for vehicle_id in range(data['num_vehicles']):\n",
|
||||
" index = routing.Start(vehicle_id)\n",
|
||||
" plan_output = 'Route for vehicle {}:\\n'.format(vehicle_id)\n",
|
||||
" distance = 0\n",
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"##### Copyright 2020 The OR-Tools Authors."
|
||||
"##### Copyright 2020 Google LLC."
|
||||
]
|
||||
},
|
||||
{
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user