2020-09-02 09:42:51 +02:00
<!-- HTML header for doxygen 1.8.18 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
2022-01-17 21:42:14 +01:00
< meta name = "generator" content = "Doxygen 1.9.3" / >
2020-09-02 09:42:51 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< title > OR-Tools: tsp.cc< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< link href = "navtree.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "resize.js" > < / script >
< script type = "text/javascript" src = "navtreedata.js" > < / script >
< script type = "text/javascript" src = "navtree.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/searchdata.js" > < / script >
< script type = "text/javascript" src = "search/search.js" > < / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< link href = "styleSheet.tmp.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td id = "projectlogo" > < img alt = "Logo" src = "orLogo.png" / > < / td >
< td id = "projectalign" style = "padding-left: 0.5em;" >
< div id = "projectname" > OR-Tools
2022-03-04 00:11:33 +01:00
  < span id = "projectnumber" > 9.3< / span >
2020-09-02 09:42:51 +02:00
< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
2022-01-17 21:42:14 +01:00
<!-- Generated by Doxygen 1.9.3 -->
2020-09-02 09:42:51 +02:00
< script type = "text/javascript" >
2022-01-17 21:42:14 +01:00
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
2020-09-02 09:42:51 +02:00
/* @license-end */
< / script >
< script type = "text/javascript" src = "menudata.js" > < / script >
< script type = "text/javascript" src = "menu.js" > < / script >
< script type = "text/javascript" >
2022-01-17 21:42:14 +01:00
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
2020-09-02 09:42:51 +02:00
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
2022-01-17 21:42:14 +01:00
/* @license-end */
< / script >
2020-09-02 09:42:51 +02:00
< div id = "main-nav" > < / div >
< / div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" > < / div >
< / div >
< / div >
< div id = "splitbar" style = "-moz-user-select:none;"
class="ui-resizable-handle">
< / div >
< / div >
< script type = "text/javascript" >
2022-01-17 21:42:14 +01:00
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(document).ready(function(){initNavTree('tsp_8cc-example.html',''); initResizable(); });
2020-09-02 09:42:51 +02:00
/* @license-end */
< / script >
< div id = "doc-content" >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< iframe src = "javascript:void(0)" frameborder = "0"
name="MSearchResults" id="MSearchResults">
< / iframe >
< / div >
< div class = "header" >
2022-01-17 21:42:14 +01:00
< div class = "headertitle" > < div class = "title" > tsp.cc< / div > < / div >
2020-09-02 09:42:51 +02:00
< / div > <!-- header -->
< div class = "contents" >
2022-01-17 21:42:14 +01:00
< div class = "fragment" > < div class = "line" > < span class = "comment" > // Copyright 2010-2021 Google LLC< / span > < / div >
< div class = "line" > < span class = "comment" > // Licensed under the Apache License, Version 2.0 (the " License" );< / span > < / div >
< div class = "line" > < span class = "comment" > // you may not use this file except in compliance with the License.< / span > < / div >
< div class = "line" > < span class = "comment" > // You may obtain a copy of the License at< / span > < / div >
< div class = "line" > < span class = "comment" > //< / span > < / div >
< div class = "line" > < span class = "comment" > // http://www.apache.org/licenses/LICENSE-2.0< / span > < / div >
< div class = "line" > < span class = "comment" > //< / span > < / div >
< div class = "line" > < span class = "comment" > // Unless required by applicable law or agreed to in writing, software< / span > < / div >
< div class = "line" > < span class = "comment" > // distributed under the License is distributed on an " AS IS" BASIS,< / span > < / div >
< div class = "line" > < span class = "comment" > // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.< / span > < / div >
< div class = "line" > < span class = "comment" > // See the License for the specific language governing permissions and< / span > < / div >
< div class = "line" > < span class = "comment" > // limitations under the License.< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // [START program]< / span > < / div >
< div class = "line" > < span class = "comment" > // [START import]< / span > < / div >
< div class = "line" > < span class = "preprocessor" > #include < cmath> < / span > < / div >
< div class = "line" > < span class = "preprocessor" > #include < cstdint> < / span > < / div >
< div class = "line" > < span class = "preprocessor" > #include < vector> < / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "preprocessor" > #include " < a class = "code" href = "routing_8h.html" > ortools/constraint_solver/routing.h< / a > " < / span > < / div >
2022-03-04 00:11:33 +01:00
< div class = "line" > < span class = "preprocessor" > #include " ortools/constraint_solver/routing_enums.pb.h" < / span > < / div >
2022-01-17 21:42:14 +01:00
< div class = "line" > < span class = "preprocessor" > #include " < a class = "code" href = "routing__index__manager_8h.html" > ortools/constraint_solver/routing_index_manager.h< / a > " < / span > < / div >
< div class = "line" > < span class = "preprocessor" > #include " < a class = "code" href = "routing__parameters_8h.html" > ortools/constraint_solver/routing_parameters.h< / a > " < / span > < / div >
< div class = "line" > < span class = "comment" > // [END import]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "keyword" > namespace < / span > < a class = "code hl_namespace" href = "namespaceoperations__research.html" > operations_research< / a > {< / div >
< div class = "line" > < span class = "comment" > // [START data_model]< / span > < / div >
< div class = "line" > < span class = "keyword" > struct < / span > DataModel {< / div >
< div class = "line" > < span class = "keyword" > const< / span > std::vector< std::vector< int> > locations{< / div >
< div class = "line" > {4, 4}, {2, 0}, {8, 0}, {0, 1}, {1, 1}, {5, 2}, {7, 2}, {3, 3}, {6, 3},< / div >
< div class = "line" > {5, 5}, {8, 5}, {1, 6}, {2, 6}, {3, 7}, {6, 7}, {0, 8}, {7, 8},< / div >
< div class = "line" > };< / div >
< div class = "line" > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > num_vehicles = 1;< / div >
< div class = "line" > < span class = "keyword" > const< / span > < a id = "a0" name = "a0" > < / a > < a class = "code hl_typedef" href = "classoperations__research_1_1_routing_index_manager.html#aeb44c17e71161ec3a77d4a87e358c84b" > RoutingIndexManager::NodeIndex< / a > depot{0};< / div >
< div class = "line" > DataModel() {< / div >
< div class = "line" > < span class = "comment" > // Convert locations in meters using a city block dimension of 114m x 80m.< / span > < / div >
< div class = "line" > < span class = "keywordflow" > for< / span > (< span class = "keyword" > auto< / span > & it : < span class = "keyword" > const_cast< < / span > std::vector< std::vector< int> < span class = "keyword" > > < / span > & > (locations)) {< / div >
< div class = "line" > it[0] *= 114;< / div >
< div class = "line" > it[1] *= 80;< / div >
< div class = "line" > }< / div >
< div class = "line" > }< / div >
< div class = "line" > };< / div >
< div class = "line" > < span class = "comment" > // [END data_model]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // [START manhattan_distance_matrix]< / span > < / div >
< div class = "line" > < span class = "comment" > < / span > std::vector< std::vector< int64_t> > GenerateManhattanDistanceMatrix(< / div >
< div class = "line" > < span class = "keyword" > const< / span > std::vector< std::vector< int> > & locations) {< / div >
< div class = "line" > std::vector< std::vector< int64_t> > distances =< / div >
< div class = "line" > std::vector< std::vector< int64_t> > (< / div >
< div class = "line" > locations.size(), std::vector< int64_t> (locations.size(), int64_t{0}));< / div >
< div class = "line" > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > fromNode = 0; fromNode < locations.size(); fromNode++) {< / div >
< div class = "line" > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > toNode = 0; toNode < locations.size(); toNode++) {< / div >
< div class = "line" > < span class = "keywordflow" > if< / span > (fromNode != toNode)< / div >
< div class = "line" > distances[fromNode][toNode] =< / div >
< div class = "line" > int64_t{std::abs(locations[toNode][0] - locations[fromNode][0]) +< / div >
< div class = "line" > std::abs(locations[toNode][1] - locations[fromNode][1])};< / div >
< div class = "line" > }< / div >
< div class = "line" > }< / div >
< div class = "line" > < span class = "keywordflow" > return< / span > distances;< / div >
< div class = "line" > }< / div >
< div class = "line" > < span class = "comment" > // [END manhattan_distance_matrix]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // [START solution_printer]< / span > < / div >
< div class = "line" > < span class = "comment" > < / span > < span class = "keywordtype" > void< / span > PrintSolution(< span class = "keyword" > const< / span > RoutingIndexManager& manager,< / div >
< div class = "line" > < span class = "keyword" > const< / span > RoutingModel& routing, < span class = "keyword" > const< / span > Assignment& solution) {< / div >
< div class = "line" > < a id = "a1" name = "a1" > < / a > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a id = "a2" name = "a2" > < / a > < a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < < span class = "stringliteral" > " Objective: " < / span > < < solution.ObjectiveValue();< / div >
< div class = "line" > < span class = "comment" > // Inspect solution.< / span > < / div >
2022-03-04 00:11:33 +01:00
< div class = "line" > int64_t < a id = "a3" name = "a3" > < / a > < a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > = routing.Start(0);< / div >
2022-01-17 21:42:14 +01:00
< div class = "line" > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < < span class = "stringliteral" > " Route for Vehicle 0:" < / span > ;< / div >
< div class = "line" > int64_t < a id = "a4" name = "a4" > < / a > < a class = "code hl_variable" href = "routing__search_8cc.html#a79b8e036dca6911e3295a47d99f21f43" > distance< / a > {0};< / div >
< div class = "line" > std::stringstream route;< / div >
2022-03-04 00:11:33 +01:00
< div class = "line" > < span class = "keywordflow" > while< / span > (routing.IsEnd(< a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) == < span class = "keyword" > false< / span > ) {< / div >
< div class = "line" > route < < manager.IndexToNode(< a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ).value() < < < span class = "stringliteral" > " -> " < / span > ;< / div >
< div class = "line" > int64_t previous_index = < a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ;< / div >
< div class = "line" > < a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > = solution.Value(routing.NextVar(< a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ));< / div >
< div class = "line" > < a class = "code hl_variable" href = "routing__search_8cc.html#a79b8e036dca6911e3295a47d99f21f43" > distance< / a > += routing.GetArcCostForVehicle(previous_index, < a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t{0});< / div >
2022-01-17 21:42:14 +01:00
< div class = "line" > }< / div >
2022-03-04 00:11:33 +01:00
< div class = "line" > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < route.str() < < manager.IndexToNode(< a class = "code hl_variable" href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ).value();< / div >
2022-01-17 21:42:14 +01:00
< div class = "line" > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < < span class = "stringliteral" > " Distance of the route: " < / span > < < < a class = "code hl_variable" href = "routing__search_8cc.html#a79b8e036dca6911e3295a47d99f21f43" > distance< / a > < < < span class = "stringliteral" > " m" < / span > ;< / div >
< div class = "line" > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < < span class = "stringliteral" > " " < / span > ;< / div >
< div class = "line" > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < < span class = "stringliteral" > " Advanced usage:" < / span > ;< / div >
< div class = "line" > < a class = "code hl_define" href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > (< a class = "code hl_variable" href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > ) < < < span class = "stringliteral" > " Problem solved in " < / span > < < routing.solver()-> wall_time() < < < span class = "stringliteral" > " ms" < / span > ;< / div >
< div class = "line" > }< / div >
< div class = "line" > < span class = "comment" > // [END solution_printer]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "keywordtype" > void< / span > Tsp() {< / div >
< div class = "line" > < span class = "comment" > // Instantiate the data problem.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START data]< / span > < / div >
< div class = "line" > DataModel data;< / div >
< div class = "line" > < span class = "comment" > // [END data]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Create Routing Index Manager< / span > < / div >
< div class = "line" > < span class = "comment" > // [START index_manager]< / span > < / div >
< div class = "line" > RoutingIndexManager manager(data.locations.size(), data.num_vehicles,< / div >
< div class = "line" > data.depot);< / div >
< div class = "line" > < span class = "comment" > // [END index_manager]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Create Routing Model.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START routing_model]< / span > < / div >
< div class = "line" > RoutingModel routing(manager);< / div >
< div class = "line" > < span class = "comment" > // [END routing_model]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Create and register a transit callback.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START transit_callback]< / span > < / div >
< div class = "line" > < span class = "keyword" > const< / span > < span class = "keyword" > auto< / span > distance_matrix = GenerateManhattanDistanceMatrix(data.locations);< / div >
< div class = "line" > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > transit_callback_index = routing.RegisterTransitCallback(< / div >
< div class = "line" > [& distance_matrix, & manager](int64_t from_index,< / div >
< div class = "line" > int64_t to_index) -> int64_t {< / div >
< div class = "line" > < span class = "comment" > // Convert from routing variable Index to distance matrix NodeIndex.< / span > < / div >
< div class = "line" > < span class = "keyword" > auto< / span > from_node = manager.IndexToNode(from_index).< a id = "a5" name = "a5" > < / a > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ();< / div >
< div class = "line" > < span class = "keyword" > auto< / span > to_node = manager.IndexToNode(to_index).< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ();< / div >
< div class = "line" > < span class = "keywordflow" > return< / span > distance_matrix[from_node][to_node];< / div >
< div class = "line" > });< / div >
< div class = "line" > < span class = "comment" > // [END transit_callback]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Define cost of each arc.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START arc_cost]< / span > < / div >
< div class = "line" > routing.SetArcCostEvaluatorOfAllVehicles(transit_callback_index);< / div >
< div class = "line" > < span class = "comment" > // [END arc_cost]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Setting first solution heuristic.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START parameters]< / span > < / div >
< div class = "line" > RoutingSearchParameters searchParameters = < a id = "a6" name = "a6" > < / a > < a class = "code hl_function" href = "namespaceoperations__research.html#ab59d4ce2b572e1ae576d2aa181433187" > DefaultRoutingSearchParameters< / a > ();< / div >
< div class = "line" > searchParameters.set_first_solution_strategy(< / div >
2022-03-04 00:11:33 +01:00
< div class = "line" > FirstSolutionStrategy::PATH_CHEAPEST_ARC);< / div >
2022-01-17 21:42:14 +01:00
< div class = "line" > < span class = "comment" > // [END parameters]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Solve the problem.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START solve]< / span > < / div >
< div class = "line" > < span class = "keyword" > const< / span > Assignment* solution = routing.SolveWithParameters(searchParameters);< / div >
< div class = "line" > < span class = "comment" > // [END solve]< / span > < / div >
< div class = "line" > < / div >
< div class = "line" > < span class = "comment" > // Print solution on console.< / span > < / div >
< div class = "line" > < span class = "comment" > // [START print_solution]< / span > < / div >
< div class = "line" > PrintSolution(manager, routing, *solution);< / div >
< div class = "line" > < span class = "comment" > // [END print_solution]< / span > < / div >
< div class = "line" > }< / div >
< div class = "line" > < / div >
< div class = "line" > } < span class = "comment" > // namespace operations_research< / span > < / div >
< div class = "line" > < / div >
2022-03-04 00:11:33 +01:00
< div class = "line" > < span class = "keywordtype" > int< / span > < a id = "a7" name = "a7" > < / a > < a class = "code hl_function" href = "tsp_8cc.html#a3c04138a5bfe5d72780bb7e82a18e627" > main< / a > (< span class = "keywordtype" > int< / span > argc, < span class = "keywordtype" > char< / span > ** argv) {< / div >
2022-01-17 21:42:14 +01:00
< div class = "line" > operations_research::Tsp();< / div >
< div class = "line" > < span class = "keywordflow" > return< / span > EXIT_SUCCESS;< / div >
< div class = "line" > }< / div >
< div class = "line" > < span class = "comment" > // [END program]< / span > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_accad43a85d781d53381cd53a9894b6ae" > < div class = "ttname" > < a href = "base_2logging_8h.html#accad43a85d781d53381cd53a9894b6ae" > LOG< / a > < / div > < div class = "ttdeci" > #define LOG(severity)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00420" > base/logging.h:420< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_routing_index_manager_html_aeb44c17e71161ec3a77d4a87e358c84b" > < div class = "ttname" > < a href = "classoperations__research_1_1_routing_index_manager.html#aeb44c17e71161ec3a77d4a87e358c84b" > operations_research::RoutingIndexManager::NodeIndex< / a > < / div > < div class = "ttdeci" > RoutingNodeIndex NodeIndex< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "routing__index__manager_8h_source.html#l00051" > routing_index_manager.h:51< / a > < / div > < / div >
< div class = "ttc" id = "ademon__profiler_8cc_html_ac072af30c4ffbc834bb4c681f6ecb514" > < div class = "ttname" > < a href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < / div > < div class = "ttdeci" > int64_t value< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "demon__profiler_8cc_source.html#l00044" > demon_profiler.cc:44< / a > < / div > < / div >
2022-03-04 00:11:33 +01:00
< div class = "ttc" id = "alocal__search_8cc_html_a750b5d744c39a06bfb13e6eb010e35d0" > < div class = "ttname" > < a href = "local__search_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > < / div > < div class = "ttdeci" > int index< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l02750" > local_search.cc:2750< / a > < / div > < / div >
2022-01-17 21:42:14 +01:00
< div class = "ttc" id = "alog__severity_8h_html_ab4a2cbab234914b320b7fae11b6e8cb9" > < div class = "ttname" > < a href = "log__severity_8h.html#ab4a2cbab234914b320b7fae11b6e8cb9" > INFO< / a > < / div > < div class = "ttdeci" > const int INFO< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "log__severity_8h_source.html#l00031" > log_severity.h:31< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html" > < div class = "ttname" > < a href = "namespaceoperations__research.html" > operations_research< / a > < / div > < div class = "ttdoc" > Collection of objects used to extend the Constraint Solver library.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "dense__doubly__linked__list_8h_source.html#l00021" > dense_doubly_linked_list.h:21< / a > < / div > < / div >
2022-03-04 00:11:33 +01:00
< div class = "ttc" id = "anamespaceoperations__research_html_ab59d4ce2b572e1ae576d2aa181433187" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ab59d4ce2b572e1ae576d2aa181433187" > operations_research::DefaultRoutingSearchParameters< / a > < / div > < div class = "ttdeci" > RoutingSearchParameters DefaultRoutingSearchParameters()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "routing__parameters_8cc_source.html#l00048" > routing_parameters.cc:48< / a > < / div > < / div >
2022-01-17 21:42:14 +01:00
< div class = "ttc" id = "arouting_8h_html" > < div class = "ttname" > < a href = "routing_8h.html" > routing.h< / a > < / div > < / div >
< div class = "ttc" id = "arouting__index__manager_8h_html" > < div class = "ttname" > < a href = "routing__index__manager_8h.html" > routing_index_manager.h< / a > < / div > < / div >
< div class = "ttc" id = "arouting__parameters_8h_html" > < div class = "ttname" > < a href = "routing__parameters_8h.html" > routing_parameters.h< / a > < / div > < / div >
2022-03-04 00:11:33 +01:00
< div class = "ttc" id = "arouting__search_8cc_html_a79b8e036dca6911e3295a47d99f21f43" > < div class = "ttname" > < a href = "routing__search_8cc.html#a79b8e036dca6911e3295a47d99f21f43" > distance< / a > < / div > < div class = "ttdeci" > double distance< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "routing__search_8cc_source.html#l03741" > routing_search.cc:3741< / a > < / div > < / div >
< div class = "ttc" id = "atsp_8cc_html_a3c04138a5bfe5d72780bb7e82a18e627" > < div class = "ttname" > < a href = "tsp_8cc.html#a3c04138a5bfe5d72780bb7e82a18e627" > main< / a > < / div > < div class = "ttdeci" > int main(int argc, char **argv)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "tsp_8cc_source.html#l00347" > tsp.cc:347< / a > < / div > < / div >
2022-01-17 21:42:14 +01:00
< / div > <!-- fragment --> < / div > <!-- contents -->
2021-01-26 11:28:50 +01:00
< / div > <!-- doc - content -->
2020-09-02 09:42:51 +02:00
<!-- HTML footer for doxygen 1.8.18 -->
<!-- start footer part -->
< div id = "nav-path" class = "navpath" > <!-- id is needed for treeview function! -->
< ul >
< li class = "footer" > Generated by
< a href = "http://www.doxygen.org/index.html" >
2022-01-17 21:42:14 +01:00
< img class = "footer" src = "doxygen.png" alt = "doxygen" / > < / a > 1.9.3 < / li >
2020-09-02 09:42:51 +02:00
< / ul >
< / div >
< / body >
< / html >