2019-06-13 15:51:12 +02:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< title > OR-Tools< / title >
< meta http-equiv = "Content-Type" content = "text/html;" / >
< meta charset = "utf-8" / >
<!-- <link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/> -->
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
2020-09-01 16:00:33 +02:00
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< link href = "styleSheet.tmp.css" rel = "stylesheet" type = "text/css" / >
2019-06-13 15:51:12 +02:00
< / head >
< body >
< div id = "banner-container" >
< div id = "banner" >
2022-03-04 00:11:33 +01:00
< span id = "sfml" > Google OR-Tools 9.3< / span >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2019-08-07 18:01:08 -07:00
< div id = "content" style = "width: 100%; overflow: hidden;" >
< div style = "margin-left: 15px; margin-top: 5px; float: left; color: #145A32;" >
2019-08-12 09:16:03 -07:00
< h2 > C++ Reference< / h2 >
2019-08-07 18:01:08 -07:00
< ul >
< li > < a href = "../cpp_algorithms/annotated.html" > Algorithms< / a > < / li >
2019-08-12 09:16:03 -07:00
< li > < a href = "../cpp_sat/annotated.html" > CP-SAT< / a > < / li >
2019-08-07 18:01:08 -07:00
< li > < a href = "../cpp_graph/annotated.html" > Graph< / a > < / li >
< li > < a href = "../cpp_routing/annotated.html" > Routing< / a > < / li >
< li > < a href = "../cpp_linear/annotated.html" > Linear solver< / a > < / li >
< / ul >
< / div >
2019-06-13 15:51:12 +02:00
< div id = "content" >
2019-08-07 18:01:08 -07:00
< div align = "center" >
< h1 style = "color: #145A32;" > C++ Reference: Routing< / h1 >
< / div >
2022-01-17 21:42:14 +01:00
<!-- Generated by Doxygen 1.9.3 -->
2020-09-01 16:00:33 +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-01 16:00:33 +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-01 16:00:33 +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-01 16:00:33 +02:00
< div id = "main-nav" > < / div >
2019-08-07 18:01:08 -07:00
< / div > <!-- top -->
2020-09-01 16:00:33 +02:00
< 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('namespaceoperations__research.html',''); initResizable(); });
2020-09-01 16:00:33 +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 >
2019-06-13 15:51:12 +02:00
< div class = "header" >
< div class = "summary" >
< a href = "#nested-classes" > Classes< / a > |
< a href = "#typedef-members" > Typedefs< / a > |
< a href = "#enum-members" > Enumerations< / a > |
2022-03-04 00:11:33 +01:00
< a href = "#func-members" > Functions< / a > < / div >
2022-01-17 21:42:14 +01:00
< div class = "headertitle" > < div class = "title" > operations_research Namespace Reference< / div > < / div >
2019-06-13 15:51:12 +02:00
< / div > <!-- header -->
< div class = "contents" >
2019-07-05 09:33:19 +02:00
2021-04-27 23:00:03 +02:00
< p > Collection of objects used to extend the < a class = "el" href = "classoperations__research_1_1_constraint.html" title = "A constraint is the main modeling object." > Constraint< / a > < a class = "el" href = "classoperations__research_1_1_solver.html" title = "Solver Class." > Solver< / a > library.
2022-01-17 21:42:14 +01:00
< a href = "namespaceoperations__research.html#details" > More...< / a > < / p >
2019-06-13 15:51:12 +02:00
< table class = "memberdecls" >
2022-01-17 21:42:14 +01:00
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "nested-classes" name = "nested-classes" > < / a >
2019-06-13 15:51:12 +02:00
Classes< / h2 > < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_argument_holder.html" > ArgumentHolder< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Argument Holder: useful when visiting a model. < a href = "classoperations__research_1_1_argument_holder.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_array_with_offset.html" > ArrayWithOffset< / a > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > An < a class = "el" href = "classoperations__research_1_1_assignment.html" title = "An Assignment is a variable -> domains mapping, used to report solutions to the user." > Assignment< / a > is a variable -> domains mapping, used to report solutions to the user. < a href = "classoperations__research_1_1_assignment.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_assignment_container.html" > AssignmentContainer< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_assignment_element.html" > AssignmentElement< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_base_int_expr.html" > BaseIntExpr< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_base_lns.html" > BaseLns< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This is the base class for building an Lns operator. < a href = "classoperations__research_1_1_base_lns.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A < a class = "el" href = "classoperations__research_1_1_base_object.html" title = "A BaseObject is the root of all reversibly allocated objects." > BaseObject< / a > is the root of all reversibly allocated objects. < a href = "classoperations__research_1_1_base_object.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_boolean_var.html" > BooleanVar< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_call_method0.html" > CallMethod0< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_demon.html" title = "A Demon is the base element of a propagation queue." > Demon< / a > proxy to a method on the constraint with no arguments. < a href = "classoperations__research_1_1_call_method0.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_call_method1.html" > CallMethod1< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_demon.html" title = "A Demon is the base element of a propagation queue." > Demon< / a > proxy to a method on the constraint with one argument. < a href = "classoperations__research_1_1_call_method1.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_call_method2.html" > CallMethod2< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_demon.html" title = "A Demon is the base element of a propagation queue." > Demon< / a > proxy to a method on the constraint with two arguments. < a href = "classoperations__research_1_1_call_method2.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_call_method3.html" > CallMethod3< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_demon.html" title = "A Demon is the base element of a propagation queue." > Demon< / a > proxy to a method on the constraint with three arguments. < a href = "classoperations__research_1_1_call_method3.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_cast_constraint.html" > CastConstraint< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Cast constraints are special channeling constraints designed to keep a variable in sync with an expression. < a href = "classoperations__research_1_1_cast_constraint.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_change_value.html" > ChangeValue< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Defines operators which change the value of variables; each neighbor corresponds to < em > one< / em > modified variable. < a href = "classoperations__research_1_1_change_value.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A constraint is the main modeling object. < a href = "classoperations__research_1_1_constraint.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_cumul_bounds_propagator.html" > CumulBoundsPropagator< / a > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_decision.html" > Decision< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A < a class = "el" href = "classoperations__research_1_1_decision.html" title = "A Decision represents a choice point in the search tree." > Decision< / a > represents a choice point in the search tree. < a href = "classoperations__research_1_1_decision.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_decision_builder.html" > DecisionBuilder< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A < a class = "el" href = "classoperations__research_1_1_decision_builder.html" title = "A DecisionBuilder is responsible for creating the search tree." > DecisionBuilder< / a > is responsible for creating the search tree. < a href = "classoperations__research_1_1_decision_builder.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_decision_visitor.html" > DecisionVisitor< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A < a class = "el" href = "classoperations__research_1_1_decision_visitor.html" title = "A DecisionVisitor is used to inspect a decision." > DecisionVisitor< / a > is used to inspect a decision. < a href = "classoperations__research_1_1_decision_visitor.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structoperations__research_1_1_default_phase_parameters.html" > DefaultPhaseParameters< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This struct holds all parameters for the default search. < a href = "structoperations__research_1_1_default_phase_parameters.html#details" > More...< / a > < br / > < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_delayed_call_method0.html" > DelayedCallMethod0< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Low-priority demon proxy to a method on the constraint with no arguments. < a href = "classoperations__research_1_1_delayed_call_method0.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_delayed_call_method1.html" > DelayedCallMethod1< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Low-priority demon proxy to a method on the constraint with one argument. < a href = "classoperations__research_1_1_delayed_call_method1.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_delayed_call_method2.html" > DelayedCallMethod2< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Low-priority demon proxy to a method on the constraint with two arguments. < a href = "classoperations__research_1_1_delayed_call_method2.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A < a class = "el" href = "classoperations__research_1_1_demon.html" title = "A Demon is the base element of a propagation queue." > Demon< / a > is the base element of a propagation queue. < a href = "classoperations__research_1_1_demon.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_dimension_cumul_optimizer_core.html" > DimensionCumulOptimizerCore< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_disjunctive_constraint.html" > DisjunctiveConstraint< / a > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_disjunctive_propagator.html" > DisjunctivePropagator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 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. < a href = "classoperations__research_1_1_disjunctive_propagator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_exchange_subtrip.html" > ExchangeSubtrip< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_filtered_heuristic_close_nodes_l_n_s_operator.html" > FilteredHeuristicCloseNodesLNSOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 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. < a href = "classoperations__research_1_1_filtered_heuristic_close_nodes_l_n_s_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-08-07 18:01:08 -07:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_filtered_heuristic_expensive_chain_l_n_s_operator.html" > FilteredHeuristicExpensiveChainLNSOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 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. < a href = "classoperations__research_1_1_filtered_heuristic_expensive_chain_l_n_s_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_filtered_heuristic_local_search_operator.html" > FilteredHeuristicLocalSearchOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Class of operators using a RoutingFilteredHeuristic to insert unperformed nodes after changes have been made to the current solution. < a href = "classoperations__research_1_1_filtered_heuristic_local_search_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_filtered_heuristic_path_l_n_s_operator.html" > FilteredHeuristicPathLNSOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > LNS-like operator based on a filtered first solution heuristic to rebuild the solution, after the destruction phase consisting of removing one route. < a href = "classoperations__research_1_1_filtered_heuristic_path_l_n_s_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_global_dimension_cumul_optimizer.html" > GlobalDimensionCumulOptimizer< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_global_vehicle_breaks_constraint.html" > GlobalVehicleBreaksConstraint< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_global_vehicle_breaks_constraint.html" title = "GlobalVehicleBreaksConstraint ensures breaks constraints are enforced on all vehicles in the dimensio..." > GlobalVehicleBreaksConstraint< / a > ensures breaks constraints are enforced on all vehicles in the dimension passed to its constructor. < a href = "classoperations__research_1_1_global_vehicle_breaks_constraint.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_improvement_search_limit.html" > ImprovementSearchLimit< / a > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_index_pair_swap_active_operator.html" > IndexPairSwapActiveOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Operator which inserts inactive nodes into a path and makes a pair of active nodes inactive. < a href = "classoperations__research_1_1_index_pair_swap_active_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_init_and_get_values.html" > InitAndGetValues< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Utility class to encapsulate an < a class = "el" href = "classoperations__research_1_1_int_var_iterator.html" title = "The class Iterator has two direct subclasses." > IntVarIterator< / a > and use it in a range-based loop. < a href = "classoperations__research_1_1_init_and_get_values.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Interval variables are often used in scheduling. < a href = "classoperations__research_1_1_interval_var.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_interval_var_element.html" > IntervalVarElement< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The class < a class = "el" href = "classoperations__research_1_1_int_expr.html" title = "The class IntExpr is the base of all integer expressions in constraint programming." > IntExpr< / a > is the base of all integer expressions in constraint programming. < a href = "classoperations__research_1_1_int_expr.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The class < a class = "el" href = "classoperations__research_1_1_int_var.html" title = "The class IntVar is a subset of IntExpr." > IntVar< / a > is a subset of < a class = "el" href = "classoperations__research_1_1_int_expr.html" title = "The class IntExpr is the base of all integer expressions in constraint programming." > IntExpr< / a > . < a href = "classoperations__research_1_1_int_var.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_var_element.html" > IntVarElement< / a > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_var_iterator.html" > IntVarIterator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The class Iterator has two direct subclasses. < a href = "classoperations__research_1_1_int_var_iterator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-01-27 13:48:26 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_var_local_search_filter.html" > IntVarLocalSearchFilter< / a > < / td > < / tr >
2020-01-27 13:48:26 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_var_local_search_handler.html" > IntVarLocalSearchHandler< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Specialization of < a class = "el" href = "classoperations__research_1_1_local_search_operator.html" title = "The base class for all local search operators." > LocalSearchOperator< / a > built from an array of IntVars which specifies the scope of the operator. < a href = "classoperations__research_1_1_int_var_local_search_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_light_pair_relocate_operator.html" > LightPairRelocateOperator< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_dimension_cumul_optimizer.html" > LocalDimensionCumulOptimizer< / a > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Local Search Filters are used for fast neighbor pruning. < a href = "classoperations__research_1_1_local_search_filter.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_search_filter_manager.html" > LocalSearchFilterManager< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Filter manager: when a move is made, filters are executed to decide whether the solution is feasible and compute parts of the new cost. < a href = "classoperations__research_1_1_local_search_filter_manager.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_search_monitor.html" > LocalSearchMonitor< / a > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The base class for all local search operators. < a href = "classoperations__research_1_1_local_search_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_search_state.html" > LocalSearchState< / a > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_local_search_variable.html" > LocalSearchVariable< / a > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_make_pair_active_operator.html" > MakePairActiveOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Pair-based neighborhood operators, designed to move nodes by pairs (pairs are static and given). < a href = "classoperations__research_1_1_make_pair_active_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-11-14 13:52:51 -08:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_make_pair_inactive_operator.html" > MakePairInactiveOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Operator which makes pairs of active nodes inactive. < a href = "classoperations__research_1_1_make_pair_inactive_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_make_relocate_neighbors_operator.html" > MakeRelocateNeighborsOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Relocate neighborhood which moves chains of neighbors. < a href = "classoperations__research_1_1_make_relocate_neighbors_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_model_cache.html" > ModelCache< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Implements a complete cache for model elements: expressions and constraints. < a href = "classoperations__research_1_1_model_cache.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_model_parser.html" > ModelParser< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Model Parser. < a href = "classoperations__research_1_1_model_parser.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_model_visitor.html" > ModelVisitor< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Model visitor. < a href = "classoperations__research_1_1_model_visitor.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_numerical_rev.html" > NumericalRev< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Subclass of Rev< T> which adds numerical operations. < a href = "classoperations__research_1_1_numerical_rev.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_numerical_rev_array.html" > NumericalRevArray< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Subclass of RevArray< T> which adds numerical operations. < a href = "classoperations__research_1_1_numerical_rev_array.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_optimize_var.html" > OptimizeVar< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class encapsulates an objective. < a href = "classoperations__research_1_1_optimize_var.html#details" > More...< / a > < br / > < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_pack.html" > Pack< / a > < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_pair_exchange_operator.html" > PairExchangeOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 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. < a href = "classoperations__research_1_1_pair_exchange_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_pair_exchange_relocate_operator.html" > PairExchangeRelocateOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Operator which exchanges the paths of two pairs (path have to be different). < a href = "classoperations__research_1_1_pair_exchange_relocate_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_pair_node_swap_active_operator.html" > PairNodeSwapActiveOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Operator which inserts pairs of inactive nodes into a path and makes an active node inactive. < a href = "classoperations__research_1_1_pair_node_swap_active_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_pair_relocate_operator.html" > PairRelocateOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 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. < a href = "classoperations__research_1_1_pair_relocate_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_path_operator.html" > PathOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Base class of the local search operators dedicated to path modifications (a path is a set of nodes linked together by arcs). < a href = "classoperations__research_1_1_path_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_path_state.html" > PathState< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-12-14 13:41:01 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_profiled_decision_builder.html" > ProfiledDecisionBuilder< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_propagation_base_object.html" > PropagationBaseObject< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > NOLINT. < a href = "classoperations__research_1_1_propagation_base_object.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_propagation_monitor.html" > PropagationMonitor< / a > < / td > < / tr >
2019-11-14 13:52:51 -08:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_regular_limit.html" > RegularLimit< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Usual limit based on wall_time, number of explored branches and number of failures in the search tree. < a href = "classoperations__research_1_1_regular_limit.html#details" > More...< / a > < br / > < / td > < / tr >
2019-11-14 13:52:51 -08:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_relocate_expensive_chain.html" > RelocateExpensiveChain< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_relocate_expensive_chain.html" title = "RelocateExpensiveChain." > RelocateExpensiveChain< / a > . < a href = "classoperations__research_1_1_relocate_expensive_chain.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_relocate_path_and_heuristic_insert_unperformed_operator.html" > RelocatePathAndHeuristicInsertUnperformedOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > 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. < a href = "classoperations__research_1_1_relocate_path_and_heuristic_insert_unperformed_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_relocate_subtrip.html" > RelocateSubtrip< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Tries to move subtrips after an insertion node. < a href = "classoperations__research_1_1_relocate_subtrip.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-12-14 13:41:01 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_resource_assignment_optimizer.html" > ResourceAssignmentOptimizer< / a > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev.html" > Rev< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class adds reversibility to a POD type. < a href = "classoperations__research_1_1_rev.html#details" > More...< / a > < br / > < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_array.html" > RevArray< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Reversible array of POD types. < a href = "classoperations__research_1_1_rev_array.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_bit_matrix.html" > RevBitMatrix< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Matrix version of the < a class = "el" href = "classoperations__research_1_1_rev_bit_set.html" title = "This class represents a reversible bitset." > RevBitSet< / a > class. < a href = "classoperations__research_1_1_rev_bit_matrix.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_bit_set.html" > RevBitSet< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class represents a reversible bitset. < a href = "classoperations__research_1_1_rev_bit_set.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_growing_array.html" > RevGrowingArray< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class is a reversible growing array. < a href = "classoperations__research_1_1_rev_growing_array.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_immutable_multi_map.html" > RevImmutableMultiMap< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Reversible Immutable MultiMap class. < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#details" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_int_set.html" > RevIntSet< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This is a special class to represent a 'residual' set of T. < a href = "classoperations__research_1_1_rev_int_set.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-01-26 11:28:50 +01:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_partial_sequence.html" > RevPartialSequence< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > --— < a class = "el" href = "classoperations__research_1_1_rev_partial_sequence.html" title = "--— RevPartialSequence --—" > RevPartialSequence< / a > --— < a href = "classoperations__research_1_1_rev_partial_sequence.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_rev_switch.html" > RevSwitch< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A reversible switch that can switch once from false to true. < a href = "classoperations__research_1_1_rev_switch.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_c_p_sat_wrapper.html" > RoutingCPSatWrapper< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Dimensions represent quantities accumulated at nodes along the routes. < a href = "classoperations__research_1_1_routing_dimension.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_glop_wrapper.html" > RoutingGlopWrapper< / a > < / td > < / tr >
2020-04-23 15:34:43 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_index_manager.html" > RoutingIndexManager< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Manager for any NodeIndex < -> variable index conversion. < a href = "classoperations__research_1_1_routing_index_manager.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_linear_solver_wrapper.html" > RoutingLinearSolverWrapper< / a > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > < / td > < / tr >
2020-01-31 17:22:59 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_routing_model_visitor.html" > RoutingModelVisitor< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Routing model visitor. < a href = "classoperations__research_1_1_routing_model_visitor.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_search_limit.html" > SearchLimit< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Base class of all search limits. < a href = "classoperations__research_1_1_search_limit.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_search_log.html" > SearchLog< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The base class of all search logs that periodically outputs information when the search is running. < a href = "classoperations__research_1_1_search_log.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_search_monitor.html" > SearchMonitor< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A search monitor is a simple set of callbacks to monitor all search events. < a href = "classoperations__research_1_1_search_monitor.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A sequence variable is a variable whose domain is a set of possible orderings of the interval variables. < a href = "classoperations__research_1_1_sequence_var.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_sequence_var_element.html" > SequenceVarElement< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The < a class = "el" href = "classoperations__research_1_1_sequence_var_element.html" title = "The SequenceVarElement stores a partial representation of ranked interval variables in the underlying..." > SequenceVarElement< / a > stores a partial representation of ranked interval variables in the underlying sequence variable. < a href = "classoperations__research_1_1_sequence_var_element.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > SequenceVarLocalSearchOperator< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_simple_bound_costs.html" > SimpleBoundCosts< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A structure meant to store soft bounds and associated violation constants. < a href = "classoperations__research_1_1_simple_bound_costs.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > SimpleRevFIFO< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class represent a reversible FIFO structure. < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_small_rev_bit_set.html" > SmallRevBitSet< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class represents a small reversible bitset (size < = 64). < a href = "classoperations__research_1_1_small_rev_bit_set.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_solution_collector.html" > SolutionCollector< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class is the root class of all solution collectors. < a href = "classoperations__research_1_1_solution_collector.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_solution_pool.html" > SolutionPool< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class is used to manage a pool of solutions. < a href = "classoperations__research_1_1_solution_pool.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > < a class = "el" href = "classoperations__research_1_1_solver.html" title = "Solver Class." > Solver< / a > Class. < a href = "classoperations__research_1_1_solver.html#details" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-10-09 12:00:09 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_swap_index_pair_operator.html" > SwapIndexPairOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Operator which iterates through each alternative of a set of pairs. < a href = "classoperations__research_1_1_swap_index_pair_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_symmetry_breaker.html" > SymmetryBreaker< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in return. < a href = "classoperations__research_1_1_symmetry_breaker.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > struct   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "structoperations__research_1_1_travel_bounds.html" > TravelBounds< / a > < / td > < / tr >
2020-09-01 16:00:33 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_type_incompatibility_checker.html" > TypeIncompatibilityChecker< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Checker for type incompatibilities. < a href = "classoperations__research_1_1_type_incompatibility_checker.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_type_regulations_checker.html" > TypeRegulationsChecker< / a > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_type_regulations_constraint.html" > TypeRegulationsConstraint< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > The following constraint ensures that incompatibilities and requirements between types are respected. < a href = "classoperations__research_1_1_type_regulations_constraint.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_type_requirement_checker.html" > TypeRequirementChecker< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Checker for type requirements. < a href = "classoperations__research_1_1_type_requirement_checker.html#details" > More...< / a > < br / > < / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_unary_dimension_checker.html" > UnaryDimensionChecker< / a > < / td > < / tr >
2020-04-23 15:34:43 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html" > UnsortedNullableRevBitset< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This class represents a reversible bitset. < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-09-20 15:57:27 +02:00
< tr class = "memitem:" > < td class = "memItemLeft" align = "right" valign = "top" > class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "classoperations__research_1_1_var_local_search_operator.html" > VarLocalSearchOperator< / a > < / td > < / tr >
< tr class = "memdesc:" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Base operator class for operators manipulating variables. < a href = "classoperations__research_1_1_var_local_search_operator.html#details" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< / table > < table class = "memberdecls" >
2022-01-17 21:42:14 +01:00
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "typedef-members" name = "typedef-members" > < / a >
2019-06-13 15:51:12 +02:00
Typedefs< / h2 > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:ad502b08bb4d69dfbaf025415310b8da8" > < td class = "memItemLeft" align = "right" valign = "top" > typedef < a class = "el" href = "classoperations__research_1_1_var_local_search_operator.html" > VarLocalSearchOperator< / a > < < a class = "el" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > , std::vector< int > , < a class = "el" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > SequenceVarLocalSearchOperatorTemplate< / a > < / td > < / tr >
2019-08-07 18:01:08 -07:00
< tr class = "separator:ad502b08bb4d69dfbaf025415310b8da8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:aae02b84a58c3008fb747c0f6917bfe6c" > < td class = "memItemLeft" align = "right" valign = "top" > typedef std::function< int64_t(int64_t)>   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aae02b84a58c3008fb747c0f6917bfe6c" > RoutingTransitCallback1< / a > < / td > < / tr >
< tr class = "separator:aae02b84a58c3008fb747c0f6917bfe6c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a26868b9d744edcd8d59145e068678885" > < td class = "memItemLeft" align = "right" valign = "top" > typedef std::function< int64_t(int64_t, int64_t)>   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a26868b9d744edcd8d59145e068678885" > RoutingTransitCallback2< / a > < / td > < / tr >
< tr class = "separator:a26868b9d744edcd8d59145e068678885" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a630fe793e232b361cd9fd99f18599df1" > < td class = "memItemLeft" align = "right" valign = "top" > typedef std::pair< std::vector< int64_t > , std::vector< int64_t > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a630fe793e232b361cd9fd99f18599df1" > RoutingIndexPair< / a > < / td > < / tr >
< tr class = "separator:a630fe793e232b361cd9fd99f18599df1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aef7db0bee0a22d1791d040fd3853f3b7" > < td class = "memItemLeft" align = "right" valign = "top" > typedef std::vector< < a class = "el" href = "namespaceoperations__research.html#a630fe793e232b361cd9fd99f18599df1" > RoutingIndexPair< / a > >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aef7db0bee0a22d1791d040fd3853f3b7" > RoutingIndexPairs< / a > < / td > < / tr >
2019-08-07 18:01:08 -07:00
< tr class = "separator:aef7db0bee0a22d1791d040fd3853f3b7" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2019-06-13 15:51:12 +02:00
< / table > < table class = "memberdecls" >
2022-01-17 21:42:14 +01:00
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "enum-members" name = "enum-members" > < / a >
2019-06-13 15:51:12 +02:00
Enumerations< / h2 > < / td > < / tr >
2019-08-07 18:01:08 -07:00
< tr class = "memitem:a403e52e933033645c3388146d5e2edd2" > < td class = "memItemLeft" align = "right" valign = "top" > enum   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2" > VarTypes< / a > { < br / >
2022-01-17 21:42:14 +01:00
    < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" > UNSPECIFIED< / a >
, < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" > DOMAIN_INT_VAR< / a >
, < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > BOOLEAN_VAR< / a >
, < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" > CONST_VAR< / a >
, < br / >
    < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" > VAR_ADD_CST< / a >
, < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" > VAR_TIMES_CST< / a >
, < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" > CST_SUB_VAR< / a >
, < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" > OPP_VAR< / a >
, < br / >
2019-08-07 18:01:08 -07:00
    < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" > TRACE_VAR< / a >
2019-06-13 15:51:12 +02:00
< br / >
}< / td > < / tr >
2019-08-07 18:01:08 -07:00
< tr class = "memdesc:a403e52e933033645c3388146d5e2edd2" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This enum is used internally to do dynamic typing on subclasses of integer variables. < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a403e52e933033645c3388146d5e2edd2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:aa0787bf78fb09d1e30f2451b5a68d4b8" > < td class = "memItemLeft" align = "right" valign = "top" > enum class   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aa0787bf78fb09d1e30f2451b5a68d4b8" > DimensionSchedulingStatus< / a > { < a class = "el" href = "namespaceoperations__research.html#aa0787bf78fb09d1e30f2451b5a68d4b8af00c8dbdd6e1f11bdae06be94277d293" > OPTIMAL< / a >
, < a class = "el" href = "namespaceoperations__research.html#aa0787bf78fb09d1e30f2451b5a68d4b8af8cfb2115ef7ab822bca8edd1edac285" > RELAXED_OPTIMAL_ONLY< / a >
, < a class = "el" href = "namespaceoperations__research.html#aa0787bf78fb09d1e30f2451b5a68d4b8a6faaca695f728b47f47dd389f31e4a93" > INFEASIBLE< / a >
2020-04-23 15:34:43 +02:00
}< / td > < / tr >
< tr class = "separator:aa0787bf78fb09d1e30f2451b5a68d4b8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2019-06-13 15:51:12 +02:00
< / table > < table class = "memberdecls" >
2022-01-17 21:42:14 +01:00
< tr class = "heading" > < td colspan = "2" > < h2 class = "groupheader" > < a id = "func-members" name = "func-members" > < / a >
2019-06-13 15:51:12 +02:00
Functions< / h2 > < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:a6daa2481a6bbd7b307647006a8752630" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a6daa2481a6bbd7b307647006a8752630" > CpRandomSeed< / a > ()< / td > < / tr >
< tr class = "separator:a6daa2481a6bbd7b307647006a8752630" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:a87fdc0126f6fc98ffb86ba1aa618f322" > < td class = "memItemLeft" align = "right" valign = "top" > std::ostream &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a87fdc0126f6fc98ffb86ba1aa618f322" > operator< < < / a > (std::ostream & out, const < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s)< / td > < / tr >
< tr class = "separator:a87fdc0126f6fc98ffb86ba1aa618f322" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:a5a9881f8a07b166ef2cbde572cea27b6" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a5a9881f8a07b166ef2cbde572cea27b6" > Zero< / a > ()< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:a5a9881f8a07b166ef2cbde572cea27b6" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > NOLINT. < a href = "namespaceoperations__research.html#a5a9881f8a07b166ef2cbde572cea27b6" > More...< / a > < br / > < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "separator:a5a9881f8a07b166ef2cbde572cea27b6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a9e48359348ad94d97e6c44ffd52b33e3" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a9e48359348ad94d97e6c44ffd52b33e3" > One< / a > ()< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:a9e48359348ad94d97e6c44ffd52b33e3" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > This method returns 1. < a href = "namespaceoperations__research.html#a9e48359348ad94d97e6c44ffd52b33e3" > More...< / a > < br / > < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "separator:a9e48359348ad94d97e6c44ffd52b33e3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:ab563b868509e5ca6c0db57a038d863e4" > < td class = "memItemLeft" align = "right" valign = "top" > std::ostream &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ab563b868509e5ca6c0db57a038d863e4" > operator< < < / a > (std::ostream & out, const < a class = "el" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > *o)< / td > < / tr >
< tr class = "separator:ab563b868509e5ca6c0db57a038d863e4" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a82d722796fae06c7fb9d1d8a37c91c99" > < td class = "memItemLeft" align = "right" valign = "top" > std::ostream &   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a82d722796fae06c7fb9d1d8a37c91c99" > operator< < < / a > (std::ostream & out, const < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > & assignment)< / td > < / tr >
< tr class = "separator:a82d722796fae06c7fb9d1d8a37c91c99" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:aea2bf322fab4e2319a23ad22acf8ccf8" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aea2bf322fab4e2319a23ad22acf8ccf8" > SetAssignmentFromAssignment< / a > (< a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *target_assignment, const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & target_vars, const < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *source_assignment, const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & source_vars)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:aea2bf322fab4e2319a23ad22acf8ccf8" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > NOLINT. < a href = "namespaceoperations__research.html#aea2bf322fab4e2319a23ad22acf8ccf8" > More...< / a > < br / > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "separator:aea2bf322fab4e2319a23ad22acf8ccf8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:aee1401375b23909949cce272a3b787db" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (uint64_t value)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:aee1401375b23909949cce272a3b787db" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Hash functions. < a href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > More...< / a > < br / > < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "separator:aee1401375b23909949cce272a3b787db" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5c150546a98dce59439f838f68493d84" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a5c150546a98dce59439f838f68493d84" > Hash1< / a > (uint32_t value)< / td > < / tr >
< tr class = "separator:a5c150546a98dce59439f838f68493d84" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8e95e16a711ae93395f3735e07708708" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a8e95e16a711ae93395f3735e07708708" > Hash1< / a > (int64_t value)< / td > < / tr >
< tr class = "separator:a8e95e16a711ae93395f3735e07708708" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a53a6358ea0e13e600820df98156f132d" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a53a6358ea0e13e600820df98156f132d" > Hash1< / a > (int value)< / td > < / tr >
< tr class = "separator:a53a6358ea0e13e600820df98156f132d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a24d85d1e77f31f346dba6bdc02067473" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a24d85d1e77f31f346dba6bdc02067473" > Hash1< / a > (void *const ptr)< / td > < / tr >
< tr class = "separator:a24d85d1e77f31f346dba6bdc02067473" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a14927dac339bd5be7348433e5ae46551" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a14927dac339bd5be7348433e5ae46551" > < td class = "memTemplItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a14927dac339bd5be7348433e5ae46551" > Hash1< / a > (const std::vector< T * > & ptrs)< / td > < / tr >
< tr class = "separator:a14927dac339bd5be7348433e5ae46551" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a597f70b9007402fadc265ccb27687966" > < td class = "memItemLeft" align = "right" valign = "top" > uint64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a597f70b9007402fadc265ccb27687966" > Hash1< / a > (const std::vector< int64_t > & ptrs)< / td > < / tr >
< tr class = "separator:a597f70b9007402fadc265ccb27687966" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:a5a2c92a28ee59ab17dfb5885ab3e20c8" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a5a2c92a28ee59ab17dfb5885ab3e20c8" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a5a2c92a28ee59ab17dfb5885ab3e20c8" > MakeLocalSearchOperator< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *solver, const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars, const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & secondary_vars, std::function< int(int64_t)> start_empty_path_class)< / td > < / tr >
< tr class = "memdesc:a5a2c92a28ee59ab17dfb5885ab3e20c8" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Operator Factories. < a href = "namespaceoperations__research.html#a5a2c92a28ee59ab17dfb5885ab3e20c8" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a5a2c92a28ee59ab17dfb5885ab3e20c8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "memitem:a12527c82ffc8b31c5d8dc836c366d624" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a12527c82ffc8b31c5d8dc836c366d624" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624" > IsArrayConstant< / a > (const std::vector< T > & values, const T & value)< / td > < / tr >
< tr class = "separator:a12527c82ffc8b31c5d8dc836c366d624" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3f4525e71a6b05d97c868f0832750a60" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a3f4525e71a6b05d97c868f0832750a60" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a3f4525e71a6b05d97c868f0832750a60" > IsArrayBoolean< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:a3f4525e71a6b05d97c868f0832750a60" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ae3e4f71c4c79e0b4ec00c4e715a7c298" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:ae3e4f71c4c79e0b4ec00c4e715a7c298" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ae3e4f71c4c79e0b4ec00c4e715a7c298" > AreAllOnes< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:ae3e4f71c4c79e0b4ec00c4e715a7c298" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab0ae787392a8dd8a499eb55ac0916aa4" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:ab0ae787392a8dd8a499eb55ac0916aa4" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ab0ae787392a8dd8a499eb55ac0916aa4" > AreAllNull< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:ab0ae787392a8dd8a499eb55ac0916aa4" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3aea406979285a28c91fd1ee8115af74" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a3aea406979285a28c91fd1ee8115af74" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74" > AreAllGreaterOrEqual< / a > (const std::vector< T > & values, const T & value)< / td > < / tr >
< tr class = "separator:a3aea406979285a28c91fd1ee8115af74" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a15f08cfbb35e2b8b1eb76f79caea924a" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a15f08cfbb35e2b8b1eb76f79caea924a" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a" > AreAllLessOrEqual< / a > (const std::vector< T > & values, const T & value)< / td > < / tr >
< tr class = "separator:a15f08cfbb35e2b8b1eb76f79caea924a" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ab62b402f767cda48eb67ef8b50397f8f" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:ab62b402f767cda48eb67ef8b50397f8f" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ab62b402f767cda48eb67ef8b50397f8f" > AreAllPositive< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:ab62b402f767cda48eb67ef8b50397f8f" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a38972723946490ea4df4e34298d8805d" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a38972723946490ea4df4e34298d8805d" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a38972723946490ea4df4e34298d8805d" > AreAllNegative< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:a38972723946490ea4df4e34298d8805d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3de09f9134b976e5ba64751ac0f4440b" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a3de09f9134b976e5ba64751ac0f4440b" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a3de09f9134b976e5ba64751ac0f4440b" > AreAllStrictlyPositive< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:a3de09f9134b976e5ba64751ac0f4440b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8351829c324863ddda52e201df4f9f84" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a8351829c324863ddda52e201df4f9f84" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a8351829c324863ddda52e201df4f9f84" > AreAllStrictlyNegative< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:a8351829c324863ddda52e201df4f9f84" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:aafac7375c23337f25821aa6f86ca627c" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:aafac7375c23337f25821aa6f86ca627c" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aafac7375c23337f25821aa6f86ca627c" > IsIncreasingContiguous< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:aafac7375c23337f25821aa6f86ca627c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3d434774c07815a25ffaa7adb343c19e" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a3d434774c07815a25ffaa7adb343c19e" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a3d434774c07815a25ffaa7adb343c19e" > IsIncreasing< / a > (const std::vector< T > & values)< / td > < / tr >
< tr class = "separator:a3d434774c07815a25ffaa7adb343c19e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:adf2aea6c68fe502389c9264b971b2f85" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:adf2aea6c68fe502389c9264b971b2f85" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#adf2aea6c68fe502389c9264b971b2f85" > IsArrayInRange< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars, T range_min, T range_max)< / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:adf2aea6c68fe502389c9264b971b2f85" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:ae4c7a8bfc6877606e512d3279549f44d" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ae4c7a8bfc6877606e512d3279549f44d" > AreAllBound< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars)< / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:ae4c7a8bfc6877606e512d3279549f44d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:a7abde7313cef64d25202a18f07481fc3" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a7abde7313cef64d25202a18f07481fc3" > AreAllBooleans< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars)< / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:a7abde7313cef64d25202a18f07481fc3" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a54470bffc3ea32cc37d0222e5dbb62a6" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:a54470bffc3ea32cc37d0222e5dbb62a6" > < td class = "memTemplItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6" > AreAllBoundOrNull< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars, const std::vector< T > & values)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:a54470bffc3ea32cc37d0222e5dbb62a6" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Returns true if all the variables are assigned to a single value, or if their corresponding value is null. < a href = "namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:a54470bffc3ea32cc37d0222e5dbb62a6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:a78ff06a9b302c6c96d8d917da235b749" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a78ff06a9b302c6c96d8d917da235b749" > AreAllBoundTo< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars, int64_t value)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:a78ff06a9b302c6c96d8d917da235b749" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Returns true if all variables are assigned to 'value'. < a href = "namespaceoperations__research.html#a78ff06a9b302c6c96d8d917da235b749" > More...< / a > < br / > < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "separator:a78ff06a9b302c6c96d8d917da235b749" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a587a6a73cbcb4e4a4c7d3b596fa407aa" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a587a6a73cbcb4e4a4c7d3b596fa407aa" > MaxVarArray< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars)< / td > < / tr >
< tr class = "separator:a587a6a73cbcb4e4a4c7d3b596fa407aa" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a8e8f645f06f9749b562b6625cd822daa" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a8e8f645f06f9749b562b6625cd822daa" > MinVarArray< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars)< / td > < / tr >
< tr class = "separator:a8e8f645f06f9749b562b6625cd822daa" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a79edaa5bfddfcd382d36a2ae25df798c" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a79edaa5bfddfcd382d36a2ae25df798c" > FillValues< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & vars, std::vector< int64_t > *const values)< / td > < / tr >
< tr class = "separator:a79edaa5bfddfcd382d36a2ae25df798c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:afb0903025d265c67199f5f09cee57ed0" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#afb0903025d265c67199f5f09cee57ed0" > PosIntDivUp< / a > (int64_t e, int64_t v)< / td > < / tr >
< tr class = "separator:afb0903025d265c67199f5f09cee57ed0" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ade1945fe75ec08245775fc4df20153d6" > < td class = "memItemLeft" align = "right" valign = "top" > int64_t  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ade1945fe75ec08245775fc4df20153d6" > PosIntDivDown< / a > (int64_t e, int64_t v)< / td > < / tr >
< tr class = "separator:ade1945fe75ec08245775fc4df20153d6" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:aa9ef36940950625d5a6745caf0000a78" > < td class = "memItemLeft" align = "right" valign = "top" > std::vector< int64_t >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aa9ef36940950625d5a6745caf0000a78" > ToInt64Vector< / a > (const std::vector< int > & input)< / td > < / tr >
< tr class = "separator:aa9ef36940950625d5a6745caf0000a78" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6cdc2ad7aac33203a04919652bd0a916" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a6cdc2ad7aac33203a04919652bd0a916" > MakePathStateFilter< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *solver, std::unique_ptr< < a class = "el" href = "classoperations__research_1_1_path_state.html" > PathState< / a > > path_state, const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > & nexts)< / td > < / tr >
< tr class = "separator:a6cdc2ad7aac33203a04919652bd0a916" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:acc7429aa3368c33f6444304ad8669259" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#acc7429aa3368c33f6444304ad8669259" > MakeUnaryDimensionFilter< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *solver, std::unique_ptr< < a class = "el" href = "classoperations__research_1_1_unary_dimension_checker.html" > UnaryDimensionChecker< / a > > checker, const std::string & dimension_name)< / td > < / tr >
< tr class = "separator:acc7429aa3368c33f6444304ad8669259" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:aa24417adbd90d64820e9b7e274652934" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aa24417adbd90d64820e9b7e274652934" > AppendTasksFromPath< / a > (const std::vector< int64_t > & path, const < a class = "el" href = "structoperations__research_1_1_travel_bounds.html" > TravelBounds< / a > & travel_bounds, const < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > & dimension, < a class = "el" href = "structoperations__research_1_1_disjunctive_propagator_1_1_tasks.html" > DisjunctivePropagator::Tasks< / a > *tasks)< / td > < / tr >
< tr class = "separator:aa24417adbd90d64820e9b7e274652934" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-11-18 14:53:30 +01:00
< tr class = "memitem:aec575fd72a48b07ceca957691d785d57" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aec575fd72a48b07ceca957691d785d57" > AppendTasksFromIntervals< / a > (const std::vector< < a class = "el" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * > & intervals, < a class = "el" href = "structoperations__research_1_1_disjunctive_propagator_1_1_tasks.html" > DisjunctivePropagator::Tasks< / a > *tasks)< / td > < / tr >
2019-07-05 00:25:55 +02:00
< tr class = "separator:aec575fd72a48b07ceca957691d785d57" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2021-04-27 23:00:03 +02:00
< tr class = "memitem:ab0da8bffc5e8eafc798d8b3b1750f05b" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ab0da8bffc5e8eafc798d8b3b1750f05b" > FillPathEvaluation< / a > (const std::vector< int64_t > & path, const < a class = "el" href = "classoperations__research_1_1_routing_model.html#a5fa8aee5b0c67072dbbb03f1899ec60a" > RoutingModel::TransitCallback2< / a > & evaluator, std::vector< int64_t > *values)< / td > < / tr >
< tr class = "separator:ab0da8bffc5e8eafc798d8b3b1750f05b" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3923814cbd98268f7c8b9eb9ad16bc17" > < td class = "memItemLeft" align = "right" valign = "top" > void  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a3923814cbd98268f7c8b9eb9ad16bc17" > FillTravelBoundsOfVehicle< / a > (int vehicle, const std::vector< int64_t > & path, const < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > & dimension, < a class = "el" href = "structoperations__research_1_1_travel_bounds.html" > TravelBounds< / a > *travel_bounds)< / td > < / tr >
< tr class = "separator:a3923814cbd98268f7c8b9eb9ad16bc17" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:afbea4d6dff74754bcb65e6d432d71ebe" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_decision_builder.html" > DecisionBuilder< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#afbea4d6dff74754bcb65e6d432d71ebe" > MakeSetValuesFromTargets< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *solver, std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > variables, std::vector< int64_t > targets)< / td > < / tr >
< tr class = "memdesc:afbea4d6dff74754bcb65e6d432d71ebe" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > A decision builder which tries to assign values to variables as close as possible to target values first. < a href = "namespaceoperations__research.html#afbea4d6dff74754bcb65e6d432d71ebe" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:afbea4d6dff74754bcb65e6d432d71ebe" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:aa17cca151690da44e948d7fbe07abca5" > < td class = "memItemLeft" align = "right" valign = "top" > bool  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aa17cca151690da44e948d7fbe07abca5" > SolveModelWithSat< / a > (const < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > & model, const RoutingSearchParameters & search_parameters, const < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *initial_solution, < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *solution)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:aa17cca151690da44e948d7fbe07abca5" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Attempts to solve the model using the cp-sat solver. < a href = "namespaceoperations__research.html#aa17cca151690da44e948d7fbe07abca5" > More...< / a > < br / > < / td > < / tr >
2019-08-07 18:01:08 -07:00
< tr class = "separator:aa17cca151690da44e948d7fbe07abca5" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:a4ea29fb0eedce9f806f0e0f5fbaff870" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_int_var_local_search_filter.html" > IntVarLocalSearchFilter< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a4ea29fb0eedce9f806f0e0f5fbaff870" > MakeVehicleBreaksFilter< / a > (const < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > & routing_model, const < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > & dimension)< / td > < / tr >
< tr class = "separator:a4ea29fb0eedce9f806f0e0f5fbaff870" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a5ccb557dd21c73b6bcd5470476201cb8" > < td class = "memItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_decision_builder.html" > DecisionBuilder< / a > *  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a5ccb557dd21c73b6bcd5470476201cb8" > MakeRestoreDimensionValuesForUnchangedRoutes< / a > (< a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > *model)< / td > < / tr >
< tr class = "separator:a5ccb557dd21c73b6bcd5470476201cb8" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:ae39a6c4d8ba890ec5150ea91a7aad643" > < td class = "memItemLeft" align = "right" valign = "top" > RoutingModelParameters  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ae39a6c4d8ba890ec5150ea91a7aad643" > BuildModelParametersFromFlags< / a > ()< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:ae39a6c4d8ba890ec5150ea91a7aad643" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Builds routing search parameters from flags. < a href = "namespaceoperations__research.html#ae39a6c4d8ba890ec5150ea91a7aad643" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:ae39a6c4d8ba890ec5150ea91a7aad643" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:a95da1d3a46432afd40024f79279a48b2" > < td class = "memItemLeft" align = "right" valign = "top" > RoutingSearchParameters  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a95da1d3a46432afd40024f79279a48b2" > BuildSearchParametersFromFlags< / a > ()< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:a95da1d3a46432afd40024f79279a48b2" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Builds routing search parameters from flags. < a href = "namespaceoperations__research.html#a95da1d3a46432afd40024f79279a48b2" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:a95da1d3a46432afd40024f79279a48b2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:aa388c8707db255ae7742c04046bdd613" > < td class = "memItemLeft" align = "right" valign = "top" > RoutingModelParameters  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aa388c8707db255ae7742c04046bdd613" > DefaultRoutingModelParameters< / a > ()< / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:aa388c8707db255ae7742c04046bdd613" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:adcac4a11f1e4d36ceb47f7251461487d" > < td class = "memItemLeft" align = "right" valign = "top" > RoutingSearchParameters  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#adcac4a11f1e4d36ceb47f7251461487d" > DefaultRoutingSearchParameters< / a > ()< / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:adcac4a11f1e4d36ceb47f7251461487d" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:ae2e060e8ee4ea901dc4df260b3385eac" > < td class = "memItemLeft" align = "right" valign = "top" > std::string  < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ae2e060e8ee4ea901dc4df260b3385eac" > FindErrorInRoutingSearchParameters< / a > (const RoutingSearchParameters & search_parameters)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:ae2e060e8ee4ea901dc4df260b3385eac" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Returns an empty std::string if the routing search parameters are valid, and a non-empty, human readable error description if they're not. < a href = "namespaceoperations__research.html#ae2e060e8ee4ea901dc4df260b3385eac" > More...< / a > < br / > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< tr class = "separator:ae2e060e8ee4ea901dc4df260b3385eac" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-03-04 00:11:33 +01:00
< tr class = "memitem:a5ac15931bc80d274989abd5021c1a405" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a5ac15931bc80d274989abd5021c1a405" > DEFINE_STRONG_INT_TYPE< / a > (RoutingNodeIndex, int)< / td > < / tr >
< tr class = "memdesc:a5ac15931bc80d274989abd5021c1a405" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Defining common types used in the routing library outside the main < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > class has several purposes: 1) It allows some small libraries to avoid a dependency on routing. < a href = "namespaceoperations__research.html#a5ac15931bc80d274989abd5021c1a405" > More...< / a > < br / > < / td > < / tr >
< tr class = "separator:a5ac15931bc80d274989abd5021c1a405" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac31922bec0fce604355f05e442c6841e" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ac31922bec0fce604355f05e442c6841e" > DEFINE_STRONG_INT_TYPE< / a > (RoutingCostClassIndex, int)< / td > < / tr >
< tr class = "separator:ac31922bec0fce604355f05e442c6841e" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a81f46879035192e05c66ea2057a932a2" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a81f46879035192e05c66ea2057a932a2" > DEFINE_STRONG_INT_TYPE< / a > (RoutingDimensionIndex, int)< / td > < / tr >
< tr class = "separator:a81f46879035192e05c66ea2057a932a2" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a09339ebcf4d5e8a848ebcf71a7c552ce" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a09339ebcf4d5e8a848ebcf71a7c552ce" > DEFINE_STRONG_INT_TYPE< / a > (RoutingDisjunctionIndex, int)< / td > < / tr >
< tr class = "separator:a09339ebcf4d5e8a848ebcf71a7c552ce" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a85589635492c818a6f29133d763ad679" > < td class = "memItemLeft" align = "right" valign = "top" >   < / td > < td class = "memItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a85589635492c818a6f29133d763ad679" > DEFINE_STRONG_INT_TYPE< / a > (RoutingVehicleClassIndex, int)< / td > < / tr >
< tr class = "separator:a85589635492c818a6f29133d763ad679" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-10-09 12:00:09 +02:00
< tr > < td colspan = "2" > < div class = "groupHeader" > < / div > < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:aa213d8f884283e0d72712243cbbefa7c" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:aa213d8f884283e0d72712243cbbefa7c" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#aa213d8f884283e0d72712243cbbefa7c" > MakeConstraintDemon0< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(), const std::string & name)< / td > < / tr >
< tr class = "separator:aa213d8f884283e0d72712243cbbefa7c" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-10-09 12:00:09 +02:00
< tr class = "memitem:a0953b50b08320d1109c678555137f1db" > < td class = "memTemplParams" colspan = "2" > template< class P > < / td > < / tr >
< tr class = "memitem:a0953b50b08320d1109c678555137f1db" > < td class = "memTemplItemLeft" align = "right" valign = "top" > std::string  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (P param)< / td > < / tr >
< tr class = "separator:a0953b50b08320d1109c678555137f1db" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a3c2f93547af434566184b7dee7039c93" > < td class = "memTemplParams" colspan = "2" > template< class P > < / td > < / tr >
< tr class = "memitem:a3c2f93547af434566184b7dee7039c93" > < td class = "memTemplItemLeft" align = "right" valign = "top" > std::string  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a3c2f93547af434566184b7dee7039c93" > ParameterDebugString< / a > (P *param)< / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memdesc:a3c2f93547af434566184b7dee7039c93" > < td class = "mdescLeft" >   < / td > < td class = "mdescRight" > Support limited to pointers to classes which define DebugString(). < a href = "namespaceoperations__research.html#a3c2f93547af434566184b7dee7039c93" > More...< / a > < br / > < / td > < / tr >
2020-10-09 12:00:09 +02:00
< tr class = "separator:a3c2f93547af434566184b7dee7039c93" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:ae0190f4a9c848c207d0bff97f625fcd1" > < td class = "memTemplParams" colspan = "2" > template< class T , class P > < / td > < / tr >
< tr class = "memitem:ae0190f4a9c848c207d0bff97f625fcd1" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ae0190f4a9c848c207d0bff97f625fcd1" > MakeConstraintDemon1< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(P), const std::string & name, P param1)< / td > < / tr >
< tr class = "separator:ae0190f4a9c848c207d0bff97f625fcd1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a68441e43b6c0228145d1101db5f3c4de" > < td class = "memTemplParams" colspan = "2" > template< class T , class P , class Q > < / td > < / tr >
< tr class = "memitem:a68441e43b6c0228145d1101db5f3c4de" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a68441e43b6c0228145d1101db5f3c4de" > MakeConstraintDemon2< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(P, Q), const std::string & name, P param1, Q param2)< / td > < / tr >
< tr class = "separator:a68441e43b6c0228145d1101db5f3c4de" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a362b5a75841c543eec770b731d6e6865" > < td class = "memTemplParams" colspan = "2" > template< class T , class P , class Q , class R > < / td > < / tr >
< tr class = "memitem:a362b5a75841c543eec770b731d6e6865" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a362b5a75841c543eec770b731d6e6865" > MakeConstraintDemon3< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(P, Q, R), const std::string & name, P param1, Q param2, R param3)< / td > < / tr >
< tr class = "separator:a362b5a75841c543eec770b731d6e6865" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2020-10-09 12:00:09 +02:00
< tr > < td colspan = "2" > < div class = "groupHeader" > < / div > < / td > < / tr >
2022-01-17 21:42:14 +01:00
< tr class = "memitem:a6a001b36b291a4afe7dffdbb9194bc45" > < td class = "memTemplParams" colspan = "2" > template< class T > < / td > < / tr >
< tr class = "memitem:a6a001b36b291a4afe7dffdbb9194bc45" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a6a001b36b291a4afe7dffdbb9194bc45" > MakeDelayedConstraintDemon0< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(), const std::string & name)< / td > < / tr >
< tr class = "separator:a6a001b36b291a4afe7dffdbb9194bc45" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:ac316c82f31293db18e25c809592908dd" > < td class = "memTemplParams" colspan = "2" > template< class T , class P > < / td > < / tr >
< tr class = "memitem:ac316c82f31293db18e25c809592908dd" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#ac316c82f31293db18e25c809592908dd" > MakeDelayedConstraintDemon1< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(P), const std::string & name, P param1)< / td > < / tr >
< tr class = "separator:ac316c82f31293db18e25c809592908dd" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
< tr class = "memitem:a6c0bc84812eed9d626b00bc8fb5b9ae1" > < td class = "memTemplParams" colspan = "2" > template< class T , class P , class Q > < / td > < / tr >
< tr class = "memitem:a6c0bc84812eed9d626b00bc8fb5b9ae1" > < td class = "memTemplItemLeft" align = "right" valign = "top" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > *  < / td > < td class = "memTemplItemRight" valign = "bottom" > < a class = "el" href = "namespaceoperations__research.html#a6c0bc84812eed9d626b00bc8fb5b9ae1" > MakeDelayedConstraintDemon2< / a > (< a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const s, T *const ct, void(T::*method)(P, Q), const std::string & name, P param1, Q param2)< / td > < / tr >
< tr class = "separator:a6c0bc84812eed9d626b00bc8fb5b9ae1" > < td class = "memSeparator" colspan = "2" >   < / td > < / tr >
2019-06-13 15:51:12 +02:00
< / table >
2019-07-05 09:33:19 +02:00
< a name = "details" id = "details" > < / a > < h2 class = "groupheader" > Detailed Description< / h2 >
2022-01-17 21:42:14 +01:00
< div class = "textblock" > < p > Collection of objects used to extend the < a class = "el" href = "classoperations__research_1_1_constraint.html" title = "A constraint is the main modeling object." > Constraint< / a > < a class = "el" href = "classoperations__research_1_1_solver.html" title = "Solver Class." > Solver< / a > library. < / p >
< p > 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.< / p >
< p > This file contains a set of objects that simplifies writing extensions of the library.< / p >
< p > The main objects that define extensions are:< / p > < ul >
2021-04-27 23:00:03 +02:00
< li > < a class = "el" href = "classoperations__research_1_1_base_int_expr.html" > BaseIntExpr< / a > , the base class of all expressions that are not variables.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" title = "This class represent a reversible FIFO structure." > SimpleRevFIFO< / a > , a reversible FIFO list with templatized values. A reversible data structure is a data structure that reverts its modifications when the search is going up in the search tree, usually after a failure occurs.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_rev_immutable_multi_map.html" title = "Reversible Immutable MultiMap class." > RevImmutableMultiMap< / a > , a reversible immutable multimap.< / li >
< li > MakeConstraintDemon< n> and MakeDelayedConstraintDemon< n> to wrap methods of a constraint as a demon.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_rev_switch.html" title = "A reversible switch that can switch once from false to true." > RevSwitch< / a > , a reversible flip-once switch.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_small_rev_bit_set.html" title = "This class represents a small reversible bitset (size <= 64)." > SmallRevBitSet< / a > , < a class = "el" href = "classoperations__research_1_1_rev_bit_set.html" title = "This class represents a reversible bitset." > RevBitSet< / a > , and < a class = "el" href = "classoperations__research_1_1_rev_bit_matrix.html" title = "Matrix version of the RevBitSet class." > RevBitMatrix< / a > : reversible 1D or 2D bitsets.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_local_search_operator.html" title = "The base class for all local search operators." > LocalSearchOperator< / a > , < a class = "el" href = "classoperations__research_1_1_int_var_local_search_operator.html" title = "Specialization of LocalSearchOperator built from an array of IntVars which specifies the scope of the..." > IntVarLocalSearchOperator< / a > , < a class = "el" href = "classoperations__research_1_1_change_value.html" title = "Defines operators which change the value of variables; each neighbor corresponds to one modified vari..." > ChangeValue< / a > and < a class = "el" href = "classoperations__research_1_1_path_operator.html" title = "Base class of the local search operators dedicated to path modifications (a path is a set of nodes li..." > PathOperator< / a > , to create new local search operators.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_local_search_filter.html" title = "Local Search Filters are used for fast neighbor pruning." > LocalSearchFilter< / a > and < a class = "el" href = "classoperations__research_1_1_int_var_local_search_filter.html" > IntVarLocalSearchFilter< / a > , to create new local search filters.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_base_lns.html" title = "This is the base class for building an Lns operator." > BaseLns< / a > , to write Large Neighborhood Search operators.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_symmetry_breaker.html" title = "A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in r..." > SymmetryBreaker< / a > , to describe model symmetries that will be broken during search using the 'Symmetry Breaking During Search' framework see Gent, I. P., Harvey, W., & Kelsey, T. (2002). Groups and Constraints: Symmetry Breaking During Search. Principles and Practice of < a class = "el" href = "classoperations__research_1_1_constraint.html" title = "A constraint is the main modeling object." > Constraint< / a > Programming CP2002 (Vol. 2470, pp. 415-430). Springer. Retrieved from < a href = "http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.1442" > http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.11.1442< / a > .< / li >
< / ul >
2022-01-17 21:42:14 +01:00
< p > Then, there are some internal classes that are used throughout the solver and exposed in this file:< / p > < ul >
2021-04-27 23:00:03 +02:00
< li > < a class = "el" href = "classoperations__research_1_1_search_log.html" title = "The base class of all search logs that periodically outputs information when the search is running." > SearchLog< / a > , the root class of all periodic outputs during search.< / li >
< li > < a class = "el" href = "classoperations__research_1_1_model_cache.html" title = "Implements a complete cache for model elements: expressions and constraints." > ModelCache< / a > , A caching layer to avoid creating twice the same object.< / li >
< / ul >
2022-01-17 21:42:14 +01:00
< p > 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.< / p >
< p > 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:< / p > < ul >
2019-07-05 09:33:19 +02:00
< li > < a href = "http://en.wikipedia.org/wiki/Travelling_salesman_problem" > http://en.wikipedia.org/wiki/Travelling_salesman_problem< / a > < / li >
< li > < a href = "http://www.tsp.gatech.edu/history/index.html" > http://www.tsp.gatech.edu/history/index.html< / a > < / li >
< li > < a href = "http://en.wikipedia.org/wiki/Vehicle_routing_problem" > http://en.wikipedia.org/wiki/Vehicle_routing_problem< / a > < / li >
< / ul >
2022-01-17 21:42:14 +01:00
< p > 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.< / p >
< p > There are two sets of variables available:< / p > < ul >
2019-07-05 09:33:19 +02:00
< li > path variables:< ul >
2022-03-04 00:11:33 +01:00
< li > "next(i)" variables representing the immediate successor of the node corresponding to i; use IndexToNode() to get the node corresponding to a "next" variable value; note that node indices are strongly typed integers (cf. ortools/base/strong_int.h);< / li >
2019-07-05 09:33:19 +02:00
< li > "vehicle(i)" variables representing the vehicle route to which the node corresponding to i belongs;< / li >
< li > "active(i)" boolean variables, true if the node corresponding to i is visited and false if not; this can be false when nodes are either optional or part of a disjunction;< / li >
< li > The following relationships hold for all i: active(i) == 0 < => next(i) == i < => vehicle(i) == -1, next(i) == j => vehicle(j) == vehicle(i).< / li >
< / ul >
< / li >
< li > dimension variables, used when one is accumulating quantities along routes, such as weight or volume carried, distance or time:< ul >
< li > "cumul(i,d)" variables representing the quantity of dimension d when arriving at the node corresponding to i;< / li >
< li > "transit(i,d)" variables representing the quantity of dimension d added after visiting the node corresponding to i.< / li >
< li > The following relationship holds for all (i,d): next(i) == j => cumul(j,d) == cumul(i,d) + transit(i,d). Solving the vehicle routing problems is mainly done using approximate methods (namely local search, cf. < a href = "http://en.wikipedia.org/wiki/Local_search_(optimization)" > http://en.wikipedia.org/wiki/Local_search_(optimization)< / a > ), potentially combined with exact techniques based on dynamic programming and exhaustive tree search. Advanced tips: Flags are available to tune the search used to solve routing problems. Here is a quick overview of the ones one might want to modify:< / li >
< / ul >
< / li >
< li > Limiting the search for solutions:< ul >
< li > routing_solution_limit (default: kint64max): stop the search after finding 'routing_solution_limit' improving solutions;< / li >
< li > routing_time_limit (default: kint64max): stop the search after 'routing_time_limit' milliseconds;< / li >
< / ul >
< / li >
< li > Customizing search:< ul >
< li > routing_first_solution (default: select the first node with an unbound successor and connect it to the first available node): selects the heuristic to build a first solution which will then be improved by local search; possible values are GlobalCheapestArc (iteratively connect two nodes which produce the cheapest route segment), LocalCheapestArc (select the first node with an unbound successor and connect it to the node which produces the cheapest route segment), PathCheapestArc (starting from a route "start" node, connect it to the node which produces the cheapest route segment, then extend the route by iterating on the last node added to the route).< / li >
< li > Local search neighborhoods:< ul >
< li > routing_no_lns (default: false): forbids the use of Large Neighborhood Search (LNS); LNS can find good solutions but is usually very slow. Refer to the description of PATHLNS in the LocalSearchOperators enum in < a class = "el" href = "constraint__solver_8h.html" > constraint_solver.h< / a > for more information.< / li >
< li > routing_no_tsp (default: true): forbids the use of exact methods to solve "sub"-traveling salesman problems (TSPs) of the current model (such as sub-parts of a route, or one route in a multiple route problem). Uses dynamic programming to solve such TSPs with a maximum size (in number of nodes) up to cp_local_search_tsp_opt_size (flag with a default value of 13 nodes). It is not activated by default because it can slow down the search.< / li >
< / ul >
< / li >
< li > Meta-heuristics: used to guide the search out of local minima found by local search. Note that, in general, a search with metaheuristics activated never stops, therefore one must specify a search limit. Several types of metaheuristics are provided:< ul >
< li > routing_guided_local_search (default: false): activates guided local search (cf. < a href = "http://en.wikipedia.org/wiki/Guided_Local_Search" > http://en.wikipedia.org/wiki/Guided_Local_Search< / a > ); this is generally the most efficient metaheuristic for vehicle routing;< / li >
< li > routing_simulated_annealing (default: false): activates simulated annealing (cf. < a href = "http://en.wikipedia.org/wiki/Simulated_annealing" > http://en.wikipedia.org/wiki/Simulated_annealing< / a > );< / li >
< li > routing_tabu_search (default: false): activates tabu search (cf. < a href = "http://en.wikipedia.org/wiki/Tabu_search" > http://en.wikipedia.org/wiki/Tabu_search< / a > ).< / li >
< / ul >
< / li >
< / ul >
< / li >
< / ul >
2022-01-17 21:42:14 +01:00
< p > Code sample: Here is a simple example solving a traveling salesman problem given a cost function callback (returns the cost of a route segment):< / p >
2019-07-05 09:33:19 +02:00
< ul >
< li > < p class = "startli" > Define a custom distance/cost function from an index to another; in this example just returns the sum of the indices:< / p >
2021-04-27 23:00:03 +02:00
< p class = "startli" > int64_t MyDistance(int64_t from, int64_t to) { return from + to; }< / p >
2019-07-05 09:33:19 +02:00
< / li >
< li > < p class = "startli" > Create a routing model for a given problem size (int number of nodes) and number of routes (here, 1):< / p >
2020-10-09 12:00:09 +02:00
< p class = "startli" > < a class = "el" href = "classoperations__research_1_1_routing_index_manager.html" title = "Manager for any NodeIndex <-> variable index conversion." > RoutingIndexManager< / a > manager(...number of nodes..., 1); < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > routing(manager);< / p >
2019-07-05 09:33:19 +02:00
< / li >
2022-01-17 21:42:14 +01:00
< li > < p class = "startli" > 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.< / p >
2019-07-05 09:33:19 +02:00
< p class = "startli" > const int cost = routing.RegisterTransitCallback(MyDistance); routing.SetArcCostEvaluatorOfAllVehicles(cost);< / p >
< / li >
< li > < p class = "startli" > Find a solution using Solve(), returns a solution if any (owned by routing):< / p >
< p class = "startli" > const Assignment* solution = routing.Solve(); CHECK(solution != nullptr);< / p >
< / li >
< li > < p class = "startli" > Inspect the solution cost and route (only one route here):< / p >
2021-04-27 23:00:03 +02:00
< p class = "startli" > 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); }< / p >
2019-07-05 09:33:19 +02:00
< / li >
< / ul >
2022-01-17 21:42:14 +01:00
< p > Keywords: Vehicle Routing, Traveling Salesman Problem, TSP, VRP, CVRPTW, PDP. < / p >
2019-07-05 09:33:19 +02:00
< / div > < h2 class = "groupheader" > Typedef Documentation< / h2 >
2022-01-17 21:42:14 +01:00
< a id = "a630fe793e232b361cd9fd99f18599df1" name = "a630fe793e232b361cd9fd99f18599df1" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a630fe793e232b361cd9fd99f18599df1" > ◆ < / a > < / span > RoutingIndexPair< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > typedef std::pair< std::vector< int64_t> , std::vector< int64_t> > < a class = "el" href = "namespaceoperations__research.html#a630fe793e232b361cd9fd99f18599df1" > RoutingIndexPair< / a > < / td >
2019-06-13 15:51:12 +02:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
2021-04-27 23:00:03 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "routing__types_8h_source.html#l00045" > 45< / a > of file < a class = "el" href = "routing__types_8h_source.html" > routing_types.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aef7db0bee0a22d1791d040fd3853f3b7" name = "aef7db0bee0a22d1791d040fd3853f3b7" > < / a >
2019-08-07 18:01:08 -07:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aef7db0bee0a22d1791d040fd3853f3b7" > ◆ < / a > < / span > RoutingIndexPairs< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > typedef std::vector< < a class = "el" href = "namespaceoperations__research.html#a630fe793e232b361cd9fd99f18599df1" > RoutingIndexPair< / a > > < a class = "el" href = "namespaceoperations__research.html#aef7db0bee0a22d1791d040fd3853f3b7" > RoutingIndexPairs< / a > < / td >
2019-06-13 15:51:12 +02:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
2021-04-27 23:00:03 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "routing__types_8h_source.html#l00046" > 46< / a > of file < a class = "el" href = "routing__types_8h_source.html" > routing_types.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aae02b84a58c3008fb747c0f6917bfe6c" name = "aae02b84a58c3008fb747c0f6917bfe6c" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aae02b84a58c3008fb747c0f6917bfe6c" > ◆ < / a > < / span > RoutingTransitCallback1< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > typedef std::function< int64_t(int64_t)> < a class = "el" href = "namespaceoperations__research.html#aae02b84a58c3008fb747c0f6917bfe6c" > RoutingTransitCallback1< / a > < / td >
2019-06-13 15:51:12 +02:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
2021-04-27 23:00:03 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "routing__types_8h_source.html#l00042" > 42< / a > of file < a class = "el" href = "routing__types_8h_source.html" > routing_types.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a26868b9d744edcd8d59145e068678885" name = "a26868b9d744edcd8d59145e068678885" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a26868b9d744edcd8d59145e068678885" > ◆ < / a > < / span > RoutingTransitCallback2< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > typedef std::function< int64_t(int64_t, int64_t)> < a class = "el" href = "namespaceoperations__research.html#a26868b9d744edcd8d59145e068678885" > RoutingTransitCallback2< / a > < / td >
2019-06-13 15:51:12 +02:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
2021-04-27 23:00:03 +02:00
< p class = "definition" > Definition at line < a class = "el" href = "routing__types_8h_source.html#l00043" > 43< / a > of file < a class = "el" href = "routing__types_8h_source.html" > routing_types.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ad502b08bb4d69dfbaf025415310b8da8" name = "ad502b08bb4d69dfbaf025415310b8da8" > < / a >
2019-08-07 18:01:08 -07:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ad502b08bb4d69dfbaf025415310b8da8" > ◆ < / a > < / span > SequenceVarLocalSearchOperatorTemplate< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2020-11-18 14:53:30 +01:00
< td class = "memname" > typedef < a class = "el" href = "classoperations__research_1_1_var_local_search_operator.html" > VarLocalSearchOperator< / a > < < a class = "el" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > , std::vector< int> , < a class = "el" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > > < a class = "el" href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > SequenceVarLocalSearchOperatorTemplate< / a > < / td >
2019-06-13 15:51:12 +02:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l01148" > 1148< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
< h2 class = "groupheader" > Enumeration Type Documentation< / h2 >
2022-01-17 21:42:14 +01:00
< a id = "aa0787bf78fb09d1e30f2451b5a68d4b8" name = "aa0787bf78fb09d1e30f2451b5a68d4b8" > < / a >
2020-04-23 15:34:43 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa0787bf78fb09d1e30f2451b5a68d4b8" > ◆ < / a > < / span > DimensionSchedulingStatus< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > enum class < a class = "el" href = "namespaceoperations__research.html#aa0787bf78fb09d1e30f2451b5a68d4b8" > DimensionSchedulingStatus< / a > < / td >
2020-04-23 15:34:43 +02:00
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > strong< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< table class = "fieldtable" >
2022-01-17 21:42:14 +01:00
< tr > < th colspan = "2" > Enumerator< / th > < / tr > < tr > < td class = "fieldname" > < a id = "aa0787bf78fb09d1e30f2451b5a68d4b8af00c8dbdd6e1f11bdae06be94277d293" name = "aa0787bf78fb09d1e30f2451b5a68d4b8af00c8dbdd6e1f11bdae06be94277d293" > < / a > OPTIMAL  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "aa0787bf78fb09d1e30f2451b5a68d4b8af8cfb2115ef7ab822bca8edd1edac285" name = "aa0787bf78fb09d1e30f2451b5a68d4b8af8cfb2115ef7ab822bca8edd1edac285" > < / a > RELAXED_OPTIMAL_ONLY  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "aa0787bf78fb09d1e30f2451b5a68d4b8a6faaca695f728b47f47dd389f31e4a93" name = "aa0787bf78fb09d1e30f2451b5a68d4b8a6faaca695f728b47f47dd389f31e4a93" > < / a > INFEASIBLE  < / td > < td class = "fielddoc" > < / td > < / tr >
2020-04-23 15:34:43 +02:00
< / table >
2021-12-14 13:41:01 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "routing__lp__scheduling_8h_source.html#l00150" > 150< / a > of file < a class = "el" href = "routing__lp__scheduling_8h_source.html" > routing_lp_scheduling.h< / a > .< / p >
2020-04-23 15:34:43 +02:00
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a403e52e933033645c3388146d5e2edd2" name = "a403e52e933033645c3388146d5e2edd2" > < / a >
2019-08-07 18:01:08 -07:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a403e52e933033645c3388146d5e2edd2" > ◆ < / a > < / span > VarTypes< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2019-08-07 18:01:08 -07:00
< td class = "memname" > enum < a class = "el" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2" > VarTypes< / a > < / td >
2019-06-13 15:51:12 +02:00
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > This enum is used internally to do dynamic typing on subclasses of integer variables. < / p >
< table class = "fieldtable" >
2022-01-17 21:42:14 +01:00
< tr > < th colspan = "2" > Enumerator< / th > < / tr > < tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" name = "a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" > < / a > UNSPECIFIED  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" name = "a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" > < / a > DOMAIN_INT_VAR  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" name = "a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > < / a > BOOLEAN_VAR  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" name = "a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" > < / a > CONST_VAR  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" name = "a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" > < / a > VAR_ADD_CST  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" name = "a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" > < / a > VAR_TIMES_CST  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" name = "a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" > < / a > CST_SUB_VAR  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" name = "a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" > < / a > OPP_VAR  < / td > < td class = "fielddoc" > < / td > < / tr >
< tr > < td class = "fieldname" > < a id = "a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" name = "a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" > < / a > TRACE_VAR  < / td > < td class = "fielddoc" > < / td > < / tr >
2019-06-13 15:51:12 +02:00
< / table >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00115" > 115< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
< h2 class = "groupheader" > Function Documentation< / h2 >
2022-01-17 21:42:14 +01:00
< a id = "aec575fd72a48b07ceca957691d785d57" name = "aec575fd72a48b07ceca957691d785d57" > < / a >
2019-07-05 00:25:55 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aec575fd72a48b07ceca957691d785d57" > ◆ < / a > < / span > AppendTasksFromIntervals()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void operations_research::AppendTasksFromIntervals < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > intervals< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > < a class = "el" href = "structoperations__research_1_1_disjunctive_propagator_1_1_tasks.html" > DisjunctivePropagator::Tasks< / a > *  < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > tasks< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aa24417adbd90d64820e9b7e274652934" name = "aa24417adbd90d64820e9b7e274652934" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa24417adbd90d64820e9b7e274652934" > ◆ < / a > < / span > AppendTasksFromPath()< / h2 >
2019-07-05 00:25:55 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void operations_research::AppendTasksFromPath < / td >
< td > (< / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > const std::vector< int64_t > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > path< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "structoperations__research_1_1_travel_bounds.html" > TravelBounds< / a > &   < / td >
2020-09-01 16:00:33 +02:00
< td class = "paramname" > < em > travel_bounds< / em > , < / td >
2019-07-05 00:25:55 +02:00
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > dimension< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > < a class = "el" href = "structoperations__research_1_1_disjunctive_propagator_1_1_tasks.html" > DisjunctivePropagator::Tasks< / a > *  < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > tasks< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a7abde7313cef64d25202a18f07481fc3" name = "a7abde7313cef64d25202a18f07481fc3" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a7abde7313cef64d25202a18f07481fc3" > ◆ < / a > < / span > AreAllBooleans()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllBooleans < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02955" > 2955< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ae4c7a8bfc6877606e512d3279549f44d" name = "ae4c7a8bfc6877606e512d3279549f44d" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae4c7a8bfc6877606e512d3279549f44d" > ◆ < / a > < / span > AreAllBound()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllBound < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02946" > 2946< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a54470bffc3ea32cc37d0222e5dbb62a6" name = "a54470bffc3ea32cc37d0222e5dbb62a6" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a54470bffc3ea32cc37d0222e5dbb62a6" > ◆ < / a > < / span > AreAllBoundOrNull()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllBoundOrNull < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Returns true if all the variables are assigned to a single value, or if their corresponding value is null. < / p >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02962" > 2962< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a78ff06a9b302c6c96d8d917da235b749" name = "a78ff06a9b302c6c96d8d917da235b749" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a78ff06a9b302c6c96d8d917da235b749" > ◆ < / a > < / span > AreAllBoundTo()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllBoundTo < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > int64_t  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > value< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Returns true if all variables are assigned to 'value'. < / p >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02973" > 2973< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a3aea406979285a28c91fd1ee8115af74" name = "a3aea406979285a28c91fd1ee8115af74" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3aea406979285a28c91fd1ee8115af74" > ◆ < / a > < / span > AreAllGreaterOrEqual()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllGreaterOrEqual < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const T &   < / td >
< td class = "paramname" > < em > value< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02876" > 2876< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a15f08cfbb35e2b8b1eb76f79caea924a" name = "a15f08cfbb35e2b8b1eb76f79caea924a" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a15f08cfbb35e2b8b1eb76f79caea924a" > ◆ < / a > < / span > AreAllLessOrEqual()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllLessOrEqual < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const T &   < / td >
< td class = "paramname" > < em > value< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02886" > 2886< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a38972723946490ea4df4e34298d8805d" name = "a38972723946490ea4df4e34298d8805d" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a38972723946490ea4df4e34298d8805d" > ◆ < / a > < / span > AreAllNegative()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllNegative < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02901" > 2901< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ab0ae787392a8dd8a499eb55ac0916aa4" name = "ab0ae787392a8dd8a499eb55ac0916aa4" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab0ae787392a8dd8a499eb55ac0916aa4" > ◆ < / a > < / span > AreAllNull()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllNull < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02871" > 2871< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ae3e4f71c4c79e0b4ec00c4e715a7c298" name = "ae3e4f71c4c79e0b4ec00c4e715a7c298" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae3e4f71c4c79e0b4ec00c4e715a7c298" > ◆ < / a > < / span > AreAllOnes()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllOnes < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02866" > 2866< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ab62b402f767cda48eb67ef8b50397f8f" name = "ab62b402f767cda48eb67ef8b50397f8f" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab62b402f767cda48eb67ef8b50397f8f" > ◆ < / a > < / span > AreAllPositive()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllPositive < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02896" > 2896< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a8351829c324863ddda52e201df4f9f84" name = "a8351829c324863ddda52e201df4f9f84" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8351829c324863ddda52e201df4f9f84" > ◆ < / a > < / span > AreAllStrictlyNegative()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllStrictlyNegative < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02911" > 2911< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a3de09f9134b976e5ba64751ac0f4440b" name = "a3de09f9134b976e5ba64751ac0f4440b" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3de09f9134b976e5ba64751ac0f4440b" > ◆ < / a > < / span > AreAllStrictlyPositive()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::AreAllStrictlyPositive < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02906" > 2906< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ae39a6c4d8ba890ec5150ea91a7aad643" name = "ae39a6c4d8ba890ec5150ea91a7aad643" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae39a6c4d8ba890ec5150ea91a7aad643" > ◆ < / a > < / span > BuildModelParametersFromFlags()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > RoutingModelParameters operations_research::BuildModelParametersFromFlags < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Builds routing search parameters from flags. < / p >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a95da1d3a46432afd40024f79279a48b2" name = "a95da1d3a46432afd40024f79279a48b2" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a95da1d3a46432afd40024f79279a48b2" > ◆ < / a > < / span > BuildSearchParametersFromFlags()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > RoutingSearchParameters operations_research::BuildSearchParametersFromFlags < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Builds routing search parameters from flags. < / p >
2022-01-17 21:42:14 +01:00
< p > describe a valid set of routing search parameters. < / p >
2019-06-13 15:51:12 +02:00
2020-11-18 14:53:30 +01:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a6daa2481a6bbd7b307647006a8752630" name = "a6daa2481a6bbd7b307647006a8752630" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6daa2481a6bbd7b307647006a8752630" > ◆ < / a > < / span > CpRandomSeed()< / h2 >
2020-11-18 14:53:30 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::CpRandomSeed < / td >
2020-11-18 14:53:30 +01:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2021-12-14 13:41:01 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l00160" > 160< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
2020-11-18 14:53:30 +01:00
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aa388c8707db255ae7742c04046bdd613" name = "aa388c8707db255ae7742c04046bdd613" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa388c8707db255ae7742c04046bdd613" > ◆ < / a > < / span > DefaultRoutingModelParameters()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > RoutingModelParameters operations_research::DefaultRoutingModelParameters < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "adcac4a11f1e4d36ceb47f7251461487d" name = "adcac4a11f1e4d36ceb47f7251461487d" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adcac4a11f1e4d36ceb47f7251461487d" > ◆ < / a > < / span > DefaultRoutingSearchParameters()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > RoutingSearchParameters operations_research::DefaultRoutingSearchParameters < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-03-04 00:11:33 +01:00
< a id = "ac31922bec0fce604355f05e442c6841e" name = "ac31922bec0fce604355f05e442c6841e" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac31922bec0fce604355f05e442c6841e" > ◆ < / a > < / span > DEFINE_STRONG_INT_TYPE() < span class = "overload" > [1/5]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > operations_research::DEFINE_STRONG_INT_TYPE < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > RoutingCostClassIndex  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-03-04 00:11:33 +01:00
< a id = "a81f46879035192e05c66ea2057a932a2" name = "a81f46879035192e05c66ea2057a932a2" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a81f46879035192e05c66ea2057a932a2" > ◆ < / a > < / span > DEFINE_STRONG_INT_TYPE() < span class = "overload" > [2/5]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > operations_research::DEFINE_STRONG_INT_TYPE < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > RoutingDimensionIndex  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-03-04 00:11:33 +01:00
< a id = "a09339ebcf4d5e8a848ebcf71a7c552ce" name = "a09339ebcf4d5e8a848ebcf71a7c552ce" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a09339ebcf4d5e8a848ebcf71a7c552ce" > ◆ < / a > < / span > DEFINE_STRONG_INT_TYPE() < span class = "overload" > [3/5]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > operations_research::DEFINE_STRONG_INT_TYPE < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > RoutingDisjunctionIndex  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-03-04 00:11:33 +01:00
< a id = "a5ac15931bc80d274989abd5021c1a405" name = "a5ac15931bc80d274989abd5021c1a405" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5ac15931bc80d274989abd5021c1a405" > ◆ < / a > < / span > DEFINE_STRONG_INT_TYPE() < span class = "overload" > [4/5]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > operations_research::DEFINE_STRONG_INT_TYPE < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > RoutingNodeIndex  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p > Defining common types used in the routing library outside the main < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > class has several purposes: 1) It allows some small libraries to avoid a dependency on routing. < / p >
< p > {h,cc}, eg. < a class = "el" href = "routing__neighborhoods_8h.html" > routing_neighborhoods.h< / a > . 2) It allows an easier wrapping via SWIG, which can have issues with intra-class types.< / p >
< p > Users that depend on routing.{h,cc} should just use the < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > :: equivalent, eg. RoutingModel::NodeIndex. < / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-03-04 00:11:33 +01:00
< a id = "a85589635492c818a6f29133d763ad679" name = "a85589635492c818a6f29133d763ad679" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a85589635492c818a6f29133d763ad679" > ◆ < / a > < / span > DEFINE_STRONG_INT_TYPE() < span class = "overload" > [5/5]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-03-04 00:11:33 +01:00
< td class = "memname" > operations_research::DEFINE_STRONG_INT_TYPE < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
< td class = "paramtype" > RoutingVehicleClassIndex  < / td >
< td class = "paramname" > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 00:25:55 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ab0da8bffc5e8eafc798d8b3b1750f05b" name = "ab0da8bffc5e8eafc798d8b3b1750f05b" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab0da8bffc5e8eafc798d8b3b1750f05b" > ◆ < / a > < / span > FillPathEvaluation()< / h2 >
2019-07-05 00:25:55 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void operations_research::FillPathEvaluation < / td >
< td > (< / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > const std::vector< int64_t > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > path< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_routing_model.html#a5fa8aee5b0c67072dbbb03f1899ec60a" > RoutingModel::TransitCallback2< / a > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > evaluator< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > std::vector< int64_t > *  < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > values< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-09-01 16:00:33 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a3923814cbd98268f7c8b9eb9ad16bc17" name = "a3923814cbd98268f7c8b9eb9ad16bc17" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3923814cbd98268f7c8b9eb9ad16bc17" > ◆ < / a > < / span > FillTravelBoundsOfVehicle()< / h2 >
2020-09-01 16:00:33 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void operations_research::FillTravelBoundsOfVehicle < / td >
< td > (< / td >
< td class = "paramtype" > int  < / td >
< td class = "paramname" > < em > vehicle< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > const std::vector< int64_t > &   < / td >
2020-09-01 16:00:33 +02:00
< td class = "paramname" > < em > path< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > &   < / td >
2020-09-01 16:00:33 +02:00
< td class = "paramname" > < em > dimension< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > < a class = "el" href = "structoperations__research_1_1_travel_bounds.html" > TravelBounds< / a > *  < / td >
2020-09-01 16:00:33 +02:00
< td class = "paramname" > < em > travel_bounds< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a79edaa5bfddfcd382d36a2ae25df798c" name = "a79edaa5bfddfcd382d36a2ae25df798c" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a79edaa5bfddfcd382d36a2ae25df798c" > ◆ < / a > < / span > FillValues()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
< td class = "memname" > void operations_research::FillValues < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > std::vector< int64_t > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > values< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l03002" > 3002< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ae2e060e8ee4ea901dc4df260b3385eac" name = "ae2e060e8ee4ea901dc4df260b3385eac" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae2e060e8ee4ea901dc4df260b3385eac" > ◆ < / a > < / span > FindErrorInRoutingSearchParameters()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::string operations_research::FindErrorInRoutingSearchParameters < / td >
< td > (< / td >
2022-03-04 00:11:33 +01:00
< td class = "paramtype" > const RoutingSearchParameters &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > search_parameters< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > Returns an empty std::string if the routing search parameters are valid, and a non-empty, human readable error description if they're not. < / p >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a597f70b9007402fadc265ccb27687966" name = "a597f70b9007402fadc265ccb27687966" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a597f70b9007402fadc265ccb27687966" > ◆ < / a > < / span > Hash1() < span class = "overload" > [1/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > const std::vector< int64_t > &   < / td >
< td class = "paramname" > < em > ptrs< / em > < / td > < td > )< / td >
2019-06-13 15:51:12 +02:00
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00262" > 262< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a14927dac339bd5be7348433e5ae46551" name = "a14927dac339bd5be7348433e5ae46551" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a14927dac339bd5be7348433e5ae46551" > ◆ < / a > < / span > Hash1() < span class = "overload" > [2/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > const std::vector< T * > &   < / td >
< td class = "paramname" > < em > ptrs< / em > < / td > < td > )< / td >
2019-06-13 15:51:12 +02:00
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00252" > 252< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a53a6358ea0e13e600820df98156f132d" name = "a53a6358ea0e13e600820df98156f132d" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a53a6358ea0e13e600820df98156f132d" > ◆ < / a > < / span > Hash1() < span class = "overload" > [3/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > int  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > value< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00240" > 240< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a8e95e16a711ae93395f3735e07708708" name = "a8e95e16a711ae93395f3735e07708708" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8e95e16a711ae93395f3735e07708708" > ◆ < / a > < / span > Hash1() < span class = "overload" > [4/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > int64_t  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > value< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00236" > 236< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a5c150546a98dce59439f838f68493d84" name = "a5c150546a98dce59439f838f68493d84" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5c150546a98dce59439f838f68493d84" > ◆ < / a > < / span > Hash1() < span class = "overload" > [5/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > uint32_t  < / td >
< td class = "paramname" > < em > value< / em > < / td > < td > )< / td >
2019-06-13 15:51:12 +02:00
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00225" > 225< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aee1401375b23909949cce272a3b787db" name = "aee1401375b23909949cce272a3b787db" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aee1401375b23909949cce272a3b787db" > ◆ < / a > < / span > Hash1() < span class = "overload" > [6/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
2022-01-17 21:42:14 +01:00
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
2019-06-13 15:51:12 +02:00
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > uint64_t  < / td >
< td class = "paramname" > < em > value< / em > < / td > < td > )< / td >
2019-06-13 15:51:12 +02:00
< td > < / td >
< / tr >
< / table >
2022-01-17 21:42:14 +01:00
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
2019-06-13 15:51:12 +02:00
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p > Hash functions. < / p >
< p > value = (value < < 21) - value - 1;< / p >
< p > value * 265< / p >
< p > value * 21< / p >
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00214" > 214< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a24d85d1e77f31f346dba6bdc02067473" name = "a24d85d1e77f31f346dba6bdc02067473" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a24d85d1e77f31f346dba6bdc02067473" > ◆ < / a > < / span > Hash1() < span class = "overload" > [7/7]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > uint64_t operations_research::Hash1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > void *const  < / td >
< td class = "paramname" > < em > ptr< / em > < / td > < td > )< / td >
2019-06-13 15:51:12 +02:00
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00242" > 242< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a3f4525e71a6b05d97c868f0832750a60" name = "a3f4525e71a6b05d97c868f0832750a60" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3f4525e71a6b05d97c868f0832750a60" > ◆ < / a > < / span > IsArrayBoolean()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::IsArrayBoolean < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02856" > 2856< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a12527c82ffc8b31c5d8dc836c366d624" name = "a12527c82ffc8b31c5d8dc836c366d624" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a12527c82ffc8b31c5d8dc836c366d624" > ◆ < / a > < / span > IsArrayConstant()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::IsArrayConstant < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const T &   < / td >
< td class = "paramname" > < em > value< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02846" > 2846< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "adf2aea6c68fe502389c9264b971b2f85" name = "adf2aea6c68fe502389c9264b971b2f85" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#adf2aea6c68fe502389c9264b971b2f85" > ◆ < / a > < / span > IsArrayInRange()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::IsArrayInRange < / td >
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T  < / td >
< td class = "paramname" > < em > range_min< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T  < / td >
< td class = "paramname" > < em > range_max< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02936" > 2936< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a3d434774c07815a25ffaa7adb343c19e" name = "a3d434774c07815a25ffaa7adb343c19e" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3d434774c07815a25ffaa7adb343c19e" > ◆ < / a > < / span > IsIncreasing()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::IsIncreasing < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02926" > 2926< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aafac7375c23337f25821aa6f86ca627c" name = "aafac7375c23337f25821aa6f86ca627c" > < / a >
2019-06-13 15:51:12 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aafac7375c23337f25821aa6f86ca627c" > ◆ < / a > < / span > IsIncreasingContiguous()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::IsIncreasingContiguous < / td >
< td > (< / td >
< td class = "paramtype" > const std::vector< T > &   < / td >
< td class = "paramname" > < em > values< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02916" > 2916< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-03-04 00:11:33 +01:00
< a id = "aa213d8f884283e0d72712243cbbefa7c" name = "aa213d8f884283e0d72712243cbbefa7c" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa213d8f884283e0d72712243cbbefa7c" > ◆ < / a > < / span > MakeConstraintDemon0()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeConstraintDemon0 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)()  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00519" > 519< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ae0190f4a9c848c207d0bff97f625fcd1" name = "ae0190f4a9c848c207d0bff97f625fcd1" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ae0190f4a9c848c207d0bff97f625fcd1" > ◆ < / a > < / span > MakeConstraintDemon1()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeConstraintDemon1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)(P)  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > P  < / td >
< td class = "paramname" > < em > param1< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00560" > 560< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a68441e43b6c0228145d1101db5f3c4de" name = "a68441e43b6c0228145d1101db5f3c4de" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a68441e43b6c0228145d1101db5f3c4de" > ◆ < / a > < / span > MakeConstraintDemon2()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeConstraintDemon2 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)(P, Q)  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > P  < / td >
< td class = "paramname" > < em > param1< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > Q  < / td >
< td class = "paramname" > < em > param2< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00599" > 599< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a362b5a75841c543eec770b731d6e6865" name = "a362b5a75841c543eec770b731d6e6865" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a362b5a75841c543eec770b731d6e6865" > ◆ < / a > < / span > MakeConstraintDemon3()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeConstraintDemon3 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)(P, Q, R)  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > P  < / td >
< td class = "paramname" > < em > param1< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > Q  < / td >
< td class = "paramname" > < em > param2< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > R  < / td >
< td class = "paramname" > < em > param3< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00642" > 642< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-09-12 09:22:44 +02:00
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a6a001b36b291a4afe7dffdbb9194bc45" name = "a6a001b36b291a4afe7dffdbb9194bc45" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6a001b36b291a4afe7dffdbb9194bc45" > ◆ < / a > < / span > MakeDelayedConstraintDemon0()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeDelayedConstraintDemon0 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)()  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00682" > 682< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ac316c82f31293db18e25c809592908dd" name = "ac316c82f31293db18e25c809592908dd" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ac316c82f31293db18e25c809592908dd" > ◆ < / a > < / span > MakeDelayedConstraintDemon1()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeDelayedConstraintDemon1 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)(P)  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > P  < / td >
< td class = "paramname" > < em > param1< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00718" > 718< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a6c0bc84812eed9d626b00bc8fb5b9ae1" name = "a6c0bc84812eed9d626b00bc8fb5b9ae1" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6c0bc84812eed9d626b00bc8fb5b9ae1" > ◆ < / a > < / span > MakeDelayedConstraintDemon2()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_demon.html" > Demon< / a > * operations_research::MakeDelayedConstraintDemon2 < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > s< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > T *const  < / td >
< td class = "paramname" > < em > ct< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > void(T::*)(P, Q)  < / td >
< td class = "paramname" > < em > method< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > name< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > P  < / td >
< td class = "paramname" > < em > param1< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > Q  < / td >
< td class = "paramname" > < em > param2< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00762" > 762< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a5a2c92a28ee59ab17dfb5885ab3e20c8" name = "a5a2c92a28ee59ab17dfb5885ab3e20c8" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5a2c92a28ee59ab17dfb5885ab3e20c8" > ◆ < / a > < / span > MakeLocalSearchOperator()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * operations_research::MakeLocalSearchOperator < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > solver< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > secondary_vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > std::function< int(int64_t)>   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > start_empty_path_class< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 00:25:55 +02:00
< p > Operator Factories. < / p >
2020-04-23 15:34:43 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a6cdc2ad7aac33203a04919652bd0a916" name = "a6cdc2ad7aac33203a04919652bd0a916" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a6cdc2ad7aac33203a04919652bd0a916" > ◆ < / a > < / span > MakePathStateFilter()< / h2 >
2020-04-23 15:34:43 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * operations_research::MakePathStateFilter < / td >
2020-04-23 15:34:43 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *  < / td >
2020-04-23 15:34:43 +02:00
< td class = "paramname" > < em > solver< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > std::unique_ptr< < a class = "el" href = "classoperations__research_1_1_path_state.html" > PathState< / a > >   < / td >
2020-04-23 15:34:43 +02:00
< td class = "paramname" > < em > path_state< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2020-04-23 15:34:43 +02:00
< td class = "paramname" > < em > nexts< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2021-12-14 13:41:01 +01:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a5ccb557dd21c73b6bcd5470476201cb8" name = "a5ccb557dd21c73b6bcd5470476201cb8" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5ccb557dd21c73b6bcd5470476201cb8" > ◆ < / a > < / span > MakeRestoreDimensionValuesForUnchangedRoutes()< / h2 >
2021-12-14 13:41:01 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_decision_builder.html" > DecisionBuilder< / a > * operations_research::MakeRestoreDimensionValuesForUnchangedRoutes < / td >
2021-12-14 13:41:01 +01:00
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > *  < / td >
< td class = "paramname" > < em > model< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 00:25:55 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "afbea4d6dff74754bcb65e6d432d71ebe" name = "afbea4d6dff74754bcb65e6d432d71ebe" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#afbea4d6dff74754bcb65e6d432d71ebe" > ◆ < / a > < / span > MakeSetValuesFromTargets()< / h2 >
2019-07-05 00:25:55 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_decision_builder.html" > DecisionBuilder< / a > * operations_research::MakeSetValuesFromTargets < / td >
2019-07-05 00:25:55 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *  < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > solver< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * >   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > variables< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > std::vector< int64_t >   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > targets< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 09:33:19 +02:00
< p > A decision builder which tries to assign values to variables as close as possible to target values first. < / p >
2020-04-23 15:34:43 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "acc7429aa3368c33f6444304ad8669259" name = "acc7429aa3368c33f6444304ad8669259" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#acc7429aa3368c33f6444304ad8669259" > ◆ < / a > < / span > MakeUnaryDimensionFilter()< / h2 >
2020-04-23 15:34:43 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * operations_research::MakeUnaryDimensionFilter < / td >
2020-04-23 15:34:43 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *  < / td >
2020-04-23 15:34:43 +02:00
< td class = "paramname" > < em > solver< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > std::unique_ptr< < a class = "el" href = "classoperations__research_1_1_unary_dimension_checker.html" > UnaryDimensionChecker< / a > >   < / td >
2021-09-20 15:57:27 +02:00
< td class = "paramname" > < em > checker< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::string &   < / td >
< td class = "paramname" > < em > dimension_name< / em >   < / td >
2020-04-23 15:34:43 +02:00
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-07-05 00:25:55 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a4ea29fb0eedce9f806f0e0f5fbaff870" name = "a4ea29fb0eedce9f806f0e0f5fbaff870" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a4ea29fb0eedce9f806f0e0f5fbaff870" > ◆ < / a > < / span > MakeVehicleBreaksFilter()< / h2 >
2019-07-05 00:25:55 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > < a class = "el" href = "classoperations__research_1_1_int_var_local_search_filter.html" > IntVarLocalSearchFilter< / a > * operations_research::MakeVehicleBreaksFilter < / td >
2019-07-05 00:25:55 +02:00
< td > (< / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > routing_model< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_routing_dimension.html" > RoutingDimension< / a > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > dimension< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a587a6a73cbcb4e4a4c7d3b596fa407aa" name = "a587a6a73cbcb4e4a4c7d3b596fa407aa" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a587a6a73cbcb4e4a4c7d3b596fa407aa" > ◆ < / a > < / span > MaxVarArray()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::MaxVarArray < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p > The std::max< int64_t> is needed for compilation on MSVC.< / p >
2019-06-13 15:51:12 +02:00
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02982" > 2982< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a8e8f645f06f9749b562b6625cd822daa" name = "a8e8f645f06f9749b562b6625cd822daa" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a8e8f645f06f9749b562b6625cd822daa" > ◆ < / a > < / span > MinVarArray()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::MinVarArray < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > vars< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p > The std::min< int64_t> is needed for compilation on MSVC.< / p >
2019-06-13 15:51:12 +02:00
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l02992" > 2992< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2020-11-18 14:53:30 +01:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a9e48359348ad94d97e6c44ffd52b33e3" name = "a9e48359348ad94d97e6c44ffd52b33e3" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a9e48359348ad94d97e6c44ffd52b33e3" > ◆ < / a > < / span > One()< / h2 >
2020-11-18 14:53:30 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::One < / td >
2020-11-18 14:53:30 +01:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > This method returns 1. < / p >
2021-12-14 13:41:01 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l03164" > 3164< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
2020-11-18 14:53:30 +01:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a82d722796fae06c7fb9d1d8a37c91c99" name = "a82d722796fae06c7fb9d1d8a37c91c99" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a82d722796fae06c7fb9d1d8a37c91c99" > ◆ < / a > < / span > operator< < () < span class = "overload" > [1/3]< / span > < / h2 >
2020-11-18 14:53:30 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > std::ostream & operations_research::operator< < < / td >
2020-11-18 14:53:30 +01:00
< td > (< / td >
< td class = "paramtype" > std::ostream &   < / td >
< td class = "paramname" > < em > out< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > &   < / td >
< td class = "paramname" > < em > assignment< / em >   < / td >
2020-11-18 14:53:30 +01:00
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ab563b868509e5ca6c0db57a038d863e4" name = "ab563b868509e5ca6c0db57a038d863e4" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ab563b868509e5ca6c0db57a038d863e4" > ◆ < / a > < / span > operator< < () < span class = "overload" > [2/3]< / span > < / h2 >
2020-11-18 14:53:30 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > std::ostream & operations_research::operator< < < / td >
2020-11-18 14:53:30 +01:00
< td > (< / td >
< td class = "paramtype" > std::ostream &   < / td >
< td class = "paramname" > < em > out< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > *  < / td >
< td class = "paramname" > < em > o< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a87fdc0126f6fc98ffb86ba1aa618f322" name = "a87fdc0126f6fc98ffb86ba1aa618f322" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a87fdc0126f6fc98ffb86ba1aa618f322" > ◆ < / a > < / span > operator< < () < span class = "overload" > [3/3]< / span > < / h2 >
2020-11-18 14:53:30 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > std::ostream & operations_research::operator< < < / td >
2020-11-18 14:53:30 +01:00
< td > (< / td >
< td class = "paramtype" > std::ostream &   < / td >
< td class = "paramname" > < em > out< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_solver.html" > Solver< / a > *const  < / td >
< td class = "paramname" > < em > s< / em >   < / td >
2020-11-18 14:53:30 +01:00
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a3c2f93547af434566184b7dee7039c93" name = "a3c2f93547af434566184b7dee7039c93" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a3c2f93547af434566184b7dee7039c93" > ◆ < / a > < / span > ParameterDebugString() < span class = "overload" > [1/2]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::string operations_research::ParameterDebugString < / td >
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > P *  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > param< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p > Support limited to pointers to classes which define DebugString(). < / p >
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00531" > 531< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a0953b50b08320d1109c678555137f1db" name = "a0953b50b08320d1109c678555137f1db" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a0953b50b08320d1109c678555137f1db" > ◆ < / a > < / span > ParameterDebugString() < span class = "overload" > [2/2]< / span > < / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > std::string operations_research::ParameterDebugString < / td >
< td > (< / td >
2022-01-17 21:42:14 +01:00
< td class = "paramtype" > P  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > param< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-17 21:42:14 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l00525" > 525< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "ade1945fe75ec08245775fc4df20153d6" name = "ade1945fe75ec08245775fc4df20153d6" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#ade1945fe75ec08245775fc4df20153d6" > ◆ < / a > < / span > PosIntDivDown()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::PosIntDivDown < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > int64_t  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > e< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > int64_t  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > v< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l03016" > 3016< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "afb0903025d265c67199f5f09cee57ed0" name = "afb0903025d265c67199f5f09cee57ed0" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#afb0903025d265c67199f5f09cee57ed0" > ◆ < / a > < / span > PosIntDivUp()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::PosIntDivUp < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > int64_t  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > e< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2021-04-27 23:00:03 +02:00
< td class = "paramtype" > int64_t  < / td >
2019-06-13 15:51:12 +02:00
< td class = "paramname" > < em > v< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2022-01-15 22:53:18 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solveri_8h_source.html#l03011" > 3011< / a > of file < a class = "el" href = "constraint__solveri_8h_source.html" > constraint_solveri.h< / a > .< / p >
2019-06-13 15:51:12 +02:00
2020-11-18 14:53:30 +01:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aea2bf322fab4e2319a23ad22acf8ccf8" name = "aea2bf322fab4e2319a23ad22acf8ccf8" > < / a >
2020-11-18 14:53:30 +01:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aea2bf322fab4e2319a23ad22acf8ccf8" > ◆ < / a > < / span > SetAssignmentFromAssignment()< / h2 >
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > void operations_research::SetAssignmentFromAssignment < / td >
< td > (< / td >
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *  < / td >
< td class = "paramname" > < em > target_assignment< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
< td class = "paramname" > < em > target_vars< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *  < / td >
< td class = "paramname" > < em > source_assignment< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
< td class = "paramtype" > const std::vector< < a class = "el" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * > &   < / td >
< td class = "paramname" > < em > source_vars< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > NOLINT. < / p >
2022-01-17 21:42:14 +01:00
< p > 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. < / p >
2020-01-31 17:22:59 +01:00
2019-07-05 00:25:55 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aa17cca151690da44e948d7fbe07abca5" name = "aa17cca151690da44e948d7fbe07abca5" > < / a >
2019-08-07 18:01:08 -07:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa17cca151690da44e948d7fbe07abca5" > ◆ < / a > < / span > SolveModelWithSat()< / h2 >
2019-07-05 00:25:55 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
< td class = "memname" > bool operations_research::SolveModelWithSat < / td >
< td > (< / td >
2020-10-09 12:00:09 +02:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_routing_model.html" > RoutingModel< / a > &   < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > model< / em > , < / td >
< / tr >
2019-08-07 18:01:08 -07:00
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2022-03-04 00:11:33 +01:00
< td class = "paramtype" > const RoutingSearchParameters &   < / td >
2019-08-07 18:01:08 -07:00
< td class = "paramname" > < em > search_parameters< / em > , < / td >
< / tr >
2019-07-05 00:25:55 +02:00
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > const < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *  < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > initial_solution< / em > , < / td >
< / tr >
< tr >
< td class = "paramkey" > < / td >
< td > < / td >
2020-11-18 14:53:30 +01:00
< td class = "paramtype" > < a class = "el" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > *  < / td >
2019-07-05 00:25:55 +02:00
< td class = "paramname" > < em > solution< / em >   < / td >
< / tr >
< tr >
< td > < / td >
< td > )< / td >
< td > < / td > < td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2019-06-13 15:51:12 +02:00
2019-07-05 09:33:19 +02:00
< p > Attempts to solve the model using the cp-sat solver. < / p >
2022-01-17 21:42:14 +01:00
< p > 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. < / p >
2019-07-05 09:33:19 +02:00
2019-06-13 15:51:12 +02:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "aa9ef36940950625d5a6745caf0000a78" name = "aa9ef36940950625d5a6745caf0000a78" > < / a >
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#aa9ef36940950625d5a6745caf0000a78" > ◆ < / a > < / span > ToInt64Vector()< / h2 >
2019-06-13 15:51:12 +02:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "memname" >
< tr >
2022-01-17 21:42:14 +01:00
< td class = "memname" > std::vector< int64_t > operations_research::ToInt64Vector < / td >
2019-06-13 15:51:12 +02:00
< td > (< / td >
< td class = "paramtype" > const std::vector< int > &   < / td >
< td class = "paramname" > < em > input< / em > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
2020-11-18 14:53:30 +01:00
< / div >
< / div >
2022-01-17 21:42:14 +01:00
< a id = "a5a9881f8a07b166ef2cbde572cea27b6" name = "a5a9881f8a07b166ef2cbde572cea27b6" > < / a >
2021-04-27 23:00:03 +02:00
< h2 class = "memtitle" > < span class = "permalink" > < a href = "#a5a9881f8a07b166ef2cbde572cea27b6" > ◆ < / a > < / span > Zero()< / h2 >
2020-11-18 14:53:30 +01:00
< div class = "memitem" >
< div class = "memproto" >
< table class = "mlabels" >
< tr >
< td class = "mlabels-left" >
< table class = "memname" >
< tr >
2021-04-27 23:00:03 +02:00
< td class = "memname" > int64_t operations_research::Zero < / td >
2020-11-18 14:53:30 +01:00
< td > (< / td >
< td class = "paramname" > < / td > < td > )< / td >
< td > < / td >
< / tr >
< / table >
< / td >
< td class = "mlabels-right" >
< span class = "mlabels" > < span class = "mlabel" > inline< / span > < / span > < / td >
< / tr >
< / table >
< / div > < div class = "memdoc" >
< p > NOLINT. < / p >
2022-01-17 21:42:14 +01:00
< p > 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. < / p >
2020-11-18 14:53:30 +01:00
2021-12-14 13:41:01 +01:00
< p class = "definition" > Definition at line < a class = "el" href = "constraint__solver_8h_source.html#l03161" > 3161< / a > of file < a class = "el" href = "constraint__solver_8h_source.html" > constraint_solver.h< / a > .< / p >
2020-11-18 14:53:30 +01:00
2019-06-13 15:51:12 +02:00
< / div >
< / div >
< / div > <!-- contents -->
2020-09-01 16:00:33 +02:00
< / div > <!-- doc - content -->
2019-08-07 18:01:08 -07:00
< / div >
2019-06-13 15:51:12 +02:00
< / div >
< div id = "footer-container" >
< div id = "footer" >
< / div >
< / div >
< / body >
< / html >