2085 lines
114 KiB
HTML
2085 lines
114 KiB
HTML
<!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"/>-->
|
|
<link rel="stylesheet" type="text/css" href="ortools.css" title="default" media="screen,print" />
|
|
<script type="text/javascript" src="jquery.js"></script>
|
|
<script type="text/javascript" src="dynsections.js"></script>
|
|
</head>
|
|
<body>
|
|
<div id="banner-container">
|
|
<div id="banner">
|
|
<span id="sfml">OR-Tools 7.2</span>
|
|
</div>
|
|
</div>
|
|
<link rel="icon" href="https://developers.google.com/optimization/images/orLogo.png">
|
|
<div id="content">
|
|
<!-- Generated by Doxygen 1.8.15 -->
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<li><a href="index.html"><span>Main Page</span></a></li>
|
|
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
|
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
|
<li><a href="files.html"><span>Files</span></a></li>
|
|
</ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div id="side-nav" class="ui-resizable side-nav-resizable">
|
|
<div id="nav-tree">
|
|
<div id="nav-tree-contents">
|
|
<div id="nav-sync" class="sync"></div>
|
|
</div>
|
|
</div>
|
|
<div id="splitbar" style="-moz-user-select:none;"
|
|
class="ui-resizable-handle">
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
|
|
$(document).ready(function(){initNavTree('classoperations__research_1_1RoutingDimension.html','');});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="doc-content">
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#nested-classes">Classes</a> |
|
|
<a href="#pub-types">Public Types</a> |
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#friends">Friends</a> |
|
|
<a href="classoperations__research_1_1RoutingDimension-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">operations_research::RoutingDimension Class Reference</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>Dimensions represent quantities accumulated at nodes along the routes. </p>
|
|
<p>They represent quantities such as weights or volumes carried along the route, or distance or times.</p>
|
|
<p>Quantities at a node are represented by "cumul" variables and the increase or decrease of quantities between nodes are represented by "transit" variables. These variables are linked as follows:</p>
|
|
<p>if j == next(i), cumuls(j) = cumuls(i) + transits(i) + slacks(i) + state_dependent_transits(i)</p>
|
|
<p>where slack is a positive slack variable (can represent waiting times for a time dimension), and state_dependent_transits is a non-purely functional version of transits_. Favour transits over state_dependent_transits when possible, because purely functional callbacks allow more optimisations and make the model faster and easier to solve. for a given vehicle, it is passed as an external vector, it would be better to have this information here. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02023">2023</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
</div><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
|
|
Classes</h2></td></tr>
|
|
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structoperations__research_1_1RoutingDimension_1_1NodePrecedence.html">NodePrecedence</a></td></tr>
|
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
|
|
Public Types</h2></td></tr>
|
|
<tr class="memitem:a03d51f530bab2758548a51e962f38a1a"><td class="memItemLeft" align="right" valign="top">typedef std::function< int64(int, int)> </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a03d51f530bab2758548a51e962f38a1a">PickupToDeliveryLimitFunction</a></td></tr>
|
|
<tr class="memdesc:a03d51f530bab2758548a51e962f38a1a"><td class="mdescLeft"> </td><td class="mdescRight">Limits, in terms of maximum difference between the cumul variables, between the pickup and delivery alternatives belonging to a single pickup/delivery pair in the <a class="el" href="classoperations__research_1_1RoutingModel.html">RoutingModel</a>. <a href="#a03d51f530bab2758548a51e962f38a1a">More...</a><br /></td></tr>
|
|
<tr class="separator:a03d51f530bab2758548a51e962f38a1a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
|
Public Member Functions</h2></td></tr>
|
|
<tr class="memitem:abfcf989d8ccbc8d02d2b2704ec96f763"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#abfcf989d8ccbc8d02d2b2704ec96f763">~RoutingDimension</a> ()</td></tr>
|
|
<tr class="separator:abfcf989d8ccbc8d02d2b2704ec96f763"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5bef0de22a2f6fc1478082358ef80f38"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1RoutingModel.html">RoutingModel</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a5bef0de22a2f6fc1478082358ef80f38">model</a> () const</td></tr>
|
|
<tr class="memdesc:a5bef0de22a2f6fc1478082358ef80f38"><td class="mdescLeft"> </td><td class="mdescRight">Returns the model on which the dimension was created. <a href="#a5bef0de22a2f6fc1478082358ef80f38">More...</a><br /></td></tr>
|
|
<tr class="separator:a5bef0de22a2f6fc1478082358ef80f38"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5d7e7a4f88775c10240bbe838d2e13ee"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a5d7e7a4f88775c10240bbe838d2e13ee">GetTransitValue</a> (int64 from_index, int64 to_index, int64 vehicle) const</td></tr>
|
|
<tr class="memdesc:a5d7e7a4f88775c10240bbe838d2e13ee"><td class="mdescLeft"> </td><td class="mdescRight">Returns the transition value for a given pair of nodes (as var index); this value is the one taken by the corresponding transit variable when the 'next' variable for 'from_index' is bound to 'to_index'. <a href="#a5d7e7a4f88775c10240bbe838d2e13ee">More...</a><br /></td></tr>
|
|
<tr class="separator:a5d7e7a4f88775c10240bbe838d2e13ee"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7d37150530f088112906877bf54dc4d9"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a7d37150530f088112906877bf54dc4d9">GetTransitValueFromClass</a> (int64 from_index, int64 to_index, int64 vehicle_class) const</td></tr>
|
|
<tr class="memdesc:a7d37150530f088112906877bf54dc4d9"><td class="mdescLeft"> </td><td class="mdescRight">Same as above but taking a vehicle class of the dimension instead of a vehicle (the class of a vehicle can be obtained with <a class="el" href="classoperations__research_1_1RoutingDimension.html#a8bf186bfb9a793f0e92273a6b4998f90">vehicle_to_class()</a>). <a href="#a7d37150530f088112906877bf54dc4d9">More...</a><br /></td></tr>
|
|
<tr class="separator:a7d37150530f088112906877bf54dc4d9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a541eec636cf28916ff1d27749a5a075c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a541eec636cf28916ff1d27749a5a075c">CumulVar</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:a541eec636cf28916ff1d27749a5a075c"><td class="mdescLeft"> </td><td class="mdescRight">Get the cumul, transit and slack variables for the given node (given as int64 var index). <a href="#a541eec636cf28916ff1d27749a5a075c">More...</a><br /></td></tr>
|
|
<tr class="separator:a541eec636cf28916ff1d27749a5a075c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1fc838c052835bfc676c98c39348f60d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a1fc838c052835bfc676c98c39348f60d">TransitVar</a> (int64 index) const</td></tr>
|
|
<tr class="separator:a1fc838c052835bfc676c98c39348f60d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae0795ddfd30eaaec1b9b68c25d681ffa"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#ae0795ddfd30eaaec1b9b68c25d681ffa">FixedTransitVar</a> (int64 index) const</td></tr>
|
|
<tr class="separator:ae0795ddfd30eaaec1b9b68c25d681ffa"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aca1511ec6086af772f1c0de24bc80036"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aca1511ec6086af772f1c0de24bc80036">SlackVar</a> (int64 index) const</td></tr>
|
|
<tr class="separator:aca1511ec6086af772f1c0de24bc80036"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a520037b2703dd61ff94f7f775c31316b"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a520037b2703dd61ff94f7f775c31316b">cumuls</a> () const</td></tr>
|
|
<tr class="memdesc:a520037b2703dd61ff94f7f775c31316b"><td class="mdescLeft"> </td><td class="mdescRight">Like <a class="el" href="classoperations__research_1_1RoutingDimension.html#a541eec636cf28916ff1d27749a5a075c" title="Get the cumul, transit and slack variables for the given node (given as int64 var index).">CumulVar()</a>, <a class="el" href="classoperations__research_1_1RoutingDimension.html#a1fc838c052835bfc676c98c39348f60d">TransitVar()</a>, <a class="el" href="classoperations__research_1_1RoutingDimension.html#aca1511ec6086af772f1c0de24bc80036">SlackVar()</a> but return the whole variable vectors instead (indexed by int64 var index). <a href="#a520037b2703dd61ff94f7f775c31316b">More...</a><br /></td></tr>
|
|
<tr class="separator:a520037b2703dd61ff94f7f775c31316b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:acec74fa72a4a455543d6d850b13058b6"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#acec74fa72a4a455543d6d850b13058b6">fixed_transits</a> () const</td></tr>
|
|
<tr class="separator:acec74fa72a4a455543d6d850b13058b6"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2429f90135681f8a51fe5c598683150a"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a2429f90135681f8a51fe5c598683150a">transits</a> () const</td></tr>
|
|
<tr class="separator:a2429f90135681f8a51fe5c598683150a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a96a618c496ecee054c3708a5949ad5c4"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a> * > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a96a618c496ecee054c3708a5949ad5c4">slacks</a> () const</td></tr>
|
|
<tr class="separator:a96a618c496ecee054c3708a5949ad5c4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a83297ba42788582d369696579addde1e"><td class="memItemLeft" align="right" valign="top">const std::vector< SortedDisjointIntervalList > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a83297ba42788582d369696579addde1e">forbidden_intervals</a> () const</td></tr>
|
|
<tr class="memdesc:a83297ba42788582d369696579addde1e"><td class="mdescLeft"> </td><td class="mdescRight">Returns forbidden intervals for each node. <a href="#a83297ba42788582d369696579addde1e">More...</a><br /></td></tr>
|
|
<tr class="separator:a83297ba42788582d369696579addde1e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af749da37fdb4dd5ebfc941a372e18d2f"><td class="memItemLeft" align="right" valign="top">const std::vector< int64 > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#af749da37fdb4dd5ebfc941a372e18d2f">vehicle_capacities</a> () const</td></tr>
|
|
<tr class="memdesc:af749da37fdb4dd5ebfc941a372e18d2f"><td class="mdescLeft"> </td><td class="mdescRight">Returns the capacities for all vehicles. <a href="#af749da37fdb4dd5ebfc941a372e18d2f">More...</a><br /></td></tr>
|
|
<tr class="separator:af749da37fdb4dd5ebfc941a372e18d2f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a81824038e89413cb3a1970104829cf81"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classoperations__research_1_1RoutingModel.html#a40eca6feb4e3e04786969e3be70e115e">RoutingModel::TransitCallback2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a81824038e89413cb3a1970104829cf81">transit_evaluator</a> (int vehicle) const</td></tr>
|
|
<tr class="memdesc:a81824038e89413cb3a1970104829cf81"><td class="mdescLeft"> </td><td class="mdescRight">Returns the callback evaluating the transit value between two node indices for a given vehicle. <a href="#a81824038e89413cb3a1970104829cf81">More...</a><br /></td></tr>
|
|
<tr class="separator:a81824038e89413cb3a1970104829cf81"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a57ff38168114496e87dc253924fb3e46"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classoperations__research_1_1RoutingModel.html#adbd56cf1cca85c203b23e097f4962079">RoutingModel::TransitCallback1</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a57ff38168114496e87dc253924fb3e46">GetUnaryTransitEvaluator</a> (int vehicle) const</td></tr>
|
|
<tr class="memdesc:a57ff38168114496e87dc253924fb3e46"><td class="mdescLeft"> </td><td class="mdescRight">Returns the unary callback evaluating the transit value between two node indices for a given vehicle. <a href="#a57ff38168114496e87dc253924fb3e46">More...</a><br /></td></tr>
|
|
<tr class="separator:a57ff38168114496e87dc253924fb3e46"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3c7253f12e84337a20296ce54f528c9e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a3c7253f12e84337a20296ce54f528c9e">AreVehicleTransitsPositive</a> (int vehicle) const</td></tr>
|
|
<tr class="memdesc:a3c7253f12e84337a20296ce54f528c9e"><td class="mdescLeft"> </td><td class="mdescRight">Returns true iff the transit evaluator of 'vehicle' is positive for all arcs. <a href="#a3c7253f12e84337a20296ce54f528c9e">More...</a><br /></td></tr>
|
|
<tr class="separator:a3c7253f12e84337a20296ce54f528c9e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8bf186bfb9a793f0e92273a6b4998f90"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a8bf186bfb9a793f0e92273a6b4998f90">vehicle_to_class</a> (int vehicle) const</td></tr>
|
|
<tr class="separator:a8bf186bfb9a793f0e92273a6b4998f90"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:abd077a7b29a7cfc99880172440e14d09"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#abd077a7b29a7cfc99880172440e14d09">SetSpanUpperBoundForVehicle</a> (int64 upper_bound, int vehicle)</td></tr>
|
|
<tr class="memdesc:abd077a7b29a7cfc99880172440e14d09"><td class="mdescLeft"> </td><td class="mdescRight">!defined(SWIGCSHARP) && !defined(SWIGJAVA) !defined(SWIGPYTHON) <a href="#abd077a7b29a7cfc99880172440e14d09">More...</a><br /></td></tr>
|
|
<tr class="separator:abd077a7b29a7cfc99880172440e14d09"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afc5f8f71a501b59e65b5c5f970c27c69"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#afc5f8f71a501b59e65b5c5f970c27c69">SetSpanCostCoefficientForVehicle</a> (int64 coefficient, int vehicle)</td></tr>
|
|
<tr class="memdesc:afc5f8f71a501b59e65b5c5f970c27c69"><td class="mdescLeft"> </td><td class="mdescRight">Sets a cost proportional to the dimension span on a given vehicle, or on all vehicles at once. <a href="#afc5f8f71a501b59e65b5c5f970c27c69">More...</a><br /></td></tr>
|
|
<tr class="separator:afc5f8f71a501b59e65b5c5f970c27c69"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a44bf0c1d2c603b8255765ddd081fa40f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a44bf0c1d2c603b8255765ddd081fa40f">SetSpanCostCoefficientForAllVehicles</a> (int64 coefficient)</td></tr>
|
|
<tr class="separator:a44bf0c1d2c603b8255765ddd081fa40f"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab29859c22398d47a8590b3524e3a442a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#ab29859c22398d47a8590b3524e3a442a">SetGlobalSpanCostCoefficient</a> (int64 coefficient)</td></tr>
|
|
<tr class="memdesc:ab29859c22398d47a8590b3524e3a442a"><td class="mdescLeft"> </td><td class="mdescRight">Sets a cost proportional to the <em>global</em> dimension span, that is the difference between the largest value of route end cumul variables and the smallest value of route start cumul variables. <a href="#ab29859c22398d47a8590b3524e3a442a">More...</a><br /></td></tr>
|
|
<tr class="separator:ab29859c22398d47a8590b3524e3a442a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6052d6bba75371db7e8ea84675187c73"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a6052d6bba75371db7e8ea84675187c73">SetCumulVarPiecewiseLinearCost</a> (int64 index, const PiecewiseLinearFunction &cost)</td></tr>
|
|
<tr class="memdesc:a6052d6bba75371db7e8ea84675187c73"><td class="mdescLeft"> </td><td class="mdescRight">Sets a piecewise linear cost on the cumul variable of a given variable index. <a href="#a6052d6bba75371db7e8ea84675187c73">More...</a><br /></td></tr>
|
|
<tr class="separator:a6052d6bba75371db7e8ea84675187c73"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa6c7d741202e530624ba3165132f6fa2"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aa6c7d741202e530624ba3165132f6fa2">HasCumulVarPiecewiseLinearCost</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:aa6c7d741202e530624ba3165132f6fa2"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if a piecewise linear cost has been set for a given variable index. <a href="#aa6c7d741202e530624ba3165132f6fa2">More...</a><br /></td></tr>
|
|
<tr class="separator:aa6c7d741202e530624ba3165132f6fa2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a4d1d9795fd5d3679da87017897fd4f9b"><td class="memItemLeft" align="right" valign="top">const PiecewiseLinearFunction * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a4d1d9795fd5d3679da87017897fd4f9b">GetCumulVarPiecewiseLinearCost</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:a4d1d9795fd5d3679da87017897fd4f9b"><td class="mdescLeft"> </td><td class="mdescRight">Returns the piecewise linear cost of a cumul variable for a given variable index. <a href="#a4d1d9795fd5d3679da87017897fd4f9b">More...</a><br /></td></tr>
|
|
<tr class="separator:a4d1d9795fd5d3679da87017897fd4f9b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8a84f4cd89001eab25832a01bccf982a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a8a84f4cd89001eab25832a01bccf982a">SetCumulVarSoftUpperBound</a> (int64 index, int64 upper_bound, int64 coefficient)</td></tr>
|
|
<tr class="memdesc:a8a84f4cd89001eab25832a01bccf982a"><td class="mdescLeft"> </td><td class="mdescRight">Sets a soft upper bound to the cumul variable of a given variable index. <a href="#a8a84f4cd89001eab25832a01bccf982a">More...</a><br /></td></tr>
|
|
<tr class="separator:a8a84f4cd89001eab25832a01bccf982a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5800f4776910a275f768050d832d1948"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a5800f4776910a275f768050d832d1948">HasCumulVarSoftUpperBound</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:a5800f4776910a275f768050d832d1948"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if a soft upper bound has been set for a given variable index. <a href="#a5800f4776910a275f768050d832d1948">More...</a><br /></td></tr>
|
|
<tr class="separator:a5800f4776910a275f768050d832d1948"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a487493a16430f10f26366689017701bd"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a487493a16430f10f26366689017701bd">GetCumulVarSoftUpperBound</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:a487493a16430f10f26366689017701bd"><td class="mdescLeft"> </td><td class="mdescRight">Returns the soft upper bound of a cumul variable for a given variable index. <a href="#a487493a16430f10f26366689017701bd">More...</a><br /></td></tr>
|
|
<tr class="separator:a487493a16430f10f26366689017701bd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adcbe383e7ba8630ae23256e98810b6b9"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#adcbe383e7ba8630ae23256e98810b6b9">GetCumulVarSoftUpperBoundCoefficient</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:adcbe383e7ba8630ae23256e98810b6b9"><td class="mdescLeft"> </td><td class="mdescRight">Returns the cost coefficient of the soft upper bound of a cumul variable for a given variable index. <a href="#adcbe383e7ba8630ae23256e98810b6b9">More...</a><br /></td></tr>
|
|
<tr class="separator:adcbe383e7ba8630ae23256e98810b6b9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a3234a1f4aab23c4c4828b6321a5ec906"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a3234a1f4aab23c4c4828b6321a5ec906">SetCumulVarSoftLowerBound</a> (int64 index, int64 lower_bound, int64 coefficient)</td></tr>
|
|
<tr class="memdesc:a3234a1f4aab23c4c4828b6321a5ec906"><td class="mdescLeft"> </td><td class="mdescRight">Sets a soft lower bound to the cumul variable of a given variable index. <a href="#a3234a1f4aab23c4c4828b6321a5ec906">More...</a><br /></td></tr>
|
|
<tr class="separator:a3234a1f4aab23c4c4828b6321a5ec906"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae6dd1772ef933bfe97628d0034450266"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#ae6dd1772ef933bfe97628d0034450266">HasCumulVarSoftLowerBound</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:ae6dd1772ef933bfe97628d0034450266"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if a soft lower bound has been set for a given variable index. <a href="#ae6dd1772ef933bfe97628d0034450266">More...</a><br /></td></tr>
|
|
<tr class="separator:ae6dd1772ef933bfe97628d0034450266"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a569e5105983007797f224986a331dc70"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a569e5105983007797f224986a331dc70">GetCumulVarSoftLowerBound</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:a569e5105983007797f224986a331dc70"><td class="mdescLeft"> </td><td class="mdescRight">Returns the soft lower bound of a cumul variable for a given variable index. <a href="#a569e5105983007797f224986a331dc70">More...</a><br /></td></tr>
|
|
<tr class="separator:a569e5105983007797f224986a331dc70"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2bbbf40328825ffe853e5969eee63f5a"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a2bbbf40328825ffe853e5969eee63f5a">GetCumulVarSoftLowerBoundCoefficient</a> (int64 index) const</td></tr>
|
|
<tr class="memdesc:a2bbbf40328825ffe853e5969eee63f5a"><td class="mdescLeft"> </td><td class="mdescRight">Returns the cost coefficient of the soft lower bound of a cumul variable for a given variable index. <a href="#a2bbbf40328825ffe853e5969eee63f5a">More...</a><br /></td></tr>
|
|
<tr class="separator:a2bbbf40328825ffe853e5969eee63f5a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6e43db91425269dda98c59586731f660"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a6e43db91425269dda98c59586731f660">SetBreakIntervalsOfVehicle</a> (std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > breaks, int vehicle, int pre_travel_evaluator, int post_travel_evaluator)</td></tr>
|
|
<tr class="memdesc:a6e43db91425269dda98c59586731f660"><td class="mdescLeft"> </td><td class="mdescRight">Sets the breaks for a given vehicle. <a href="#a6e43db91425269dda98c59586731f660">More...</a><br /></td></tr>
|
|
<tr class="separator:a6e43db91425269dda98c59586731f660"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a91a8bad350970afc848ae3726fb1f465"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a91a8bad350970afc848ae3726fb1f465">SetBreakIntervalsOfVehicle</a> (std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > breaks, int vehicle, std::vector< int64 > node_visit_transits)</td></tr>
|
|
<tr class="memdesc:a91a8bad350970afc848ae3726fb1f465"><td class="mdescLeft"> </td><td class="mdescRight">Deprecated, sets pre_travel(i, j) = node_visit_transit[i]. <a href="#a91a8bad350970afc848ae3726fb1f465">More...</a><br /></td></tr>
|
|
<tr class="separator:a91a8bad350970afc848ae3726fb1f465"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5303e0e6657cb3efed3c7068eb193c86"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a5303e0e6657cb3efed3c7068eb193c86">SetBreakDistanceDurationOfVehicle</a> (int64 distance, int64 duration, int vehicle)</td></tr>
|
|
<tr class="memdesc:a5303e0e6657cb3efed3c7068eb193c86"><td class="mdescLeft"> </td><td class="mdescRight">With breaks supposed to be consecutive, this forces the distance between breaks of size at least minimum_break_duration to be at least distance. <a href="#a5303e0e6657cb3efed3c7068eb193c86">More...</a><br /></td></tr>
|
|
<tr class="separator:a5303e0e6657cb3efed3c7068eb193c86"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa224ac17be74c79927c18ef4a4b6705d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aa224ac17be74c79927c18ef4a4b6705d">InitializeBreaks</a> ()</td></tr>
|
|
<tr class="memdesc:aa224ac17be74c79927c18ef4a4b6705d"><td class="mdescLeft"> </td><td class="mdescRight">Sets up vehicle_break_intervals_, vehicle_break_distance_duration_, pre_travel_evaluators and post_travel_evaluators. <a href="#aa224ac17be74c79927c18ef4a4b6705d">More...</a><br /></td></tr>
|
|
<tr class="separator:aa224ac17be74c79927c18ef4a4b6705d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a11db411ac857ec2153cd61c3e3296f08"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a11db411ac857ec2153cd61c3e3296f08">HasBreakConstraints</a> () const</td></tr>
|
|
<tr class="memdesc:a11db411ac857ec2153cd61c3e3296f08"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if any break interval or break distance was defined. <a href="#a11db411ac857ec2153cd61c3e3296f08">More...</a><br /></td></tr>
|
|
<tr class="separator:a11db411ac857ec2153cd61c3e3296f08"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aaf017f4f85b78139a428e8a38da4c2a0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aaf017f4f85b78139a428e8a38da4c2a0">SetBreakIntervalsOfVehicle</a> (std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > breaks, int vehicle, std::vector< int64 > node_visit_transits, std::function< int64(int64, int64)> group_delays)</td></tr>
|
|
<tr class="memdesc:aaf017f4f85b78139a428e8a38da4c2a0"><td class="mdescLeft"> </td><td class="mdescRight">Deprecated, sets pre_travel(i, j) = node_visit_transit[i] and post_travel(i, j) = group_delays(i, j). <a href="#aaf017f4f85b78139a428e8a38da4c2a0">More...</a><br /></td></tr>
|
|
<tr class="separator:aaf017f4f85b78139a428e8a38da4c2a0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a07c6cdc82e267942b967f53e6010a82c"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a07c6cdc82e267942b967f53e6010a82c">GetBreakIntervalsOfVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="memdesc:a07c6cdc82e267942b967f53e6010a82c"><td class="mdescLeft"> </td><td class="mdescRight">Returns the break intervals set by <a class="el" href="classoperations__research_1_1RoutingDimension.html#a6e43db91425269dda98c59586731f660" title="Sets the breaks for a given vehicle.">SetBreakIntervalsOfVehicle()</a>. <a href="#a07c6cdc82e267942b967f53e6010a82c">More...</a><br /></td></tr>
|
|
<tr class="separator:a07c6cdc82e267942b967f53e6010a82c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa771a4b1f09590ad4132fbf90f524abe"><td class="memItemLeft" align="right" valign="top">const std::vector< std::pair< int64, int64 > > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aa771a4b1f09590ad4132fbf90f524abe">GetBreakDistanceDurationOfVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="memdesc:aa771a4b1f09590ad4132fbf90f524abe"><td class="mdescLeft"> </td><td class="mdescRight">Returns the pairs (distance, duration) specified by break distance constraints. <a href="#aa771a4b1f09590ad4132fbf90f524abe">More...</a><br /></td></tr>
|
|
<tr class="separator:aa771a4b1f09590ad4132fbf90f524abe"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af929083de8b7e19f2d06d6ee2112b5a5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#af929083de8b7e19f2d06d6ee2112b5a5">GetPreTravelEvaluatorOfVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="memdesc:af929083de8b7e19f2d06d6ee2112b5a5"><td class="mdescLeft"> </td><td class="mdescRight">!defined(SWIGPYTHON) <a href="#af929083de8b7e19f2d06d6ee2112b5a5">More...</a><br /></td></tr>
|
|
<tr class="separator:af929083de8b7e19f2d06d6ee2112b5a5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa9acd23f51d4ba7c0e050db0bf27d9f5"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aa9acd23f51d4ba7c0e050db0bf27d9f5">GetPostTravelEvaluatorOfVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="separator:aa9acd23f51d4ba7c0e050db0bf27d9f5"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ade704c2189c4dfde1ace86100f9c363d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classoperations__research_1_1RoutingDimension.html">RoutingDimension</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#ade704c2189c4dfde1ace86100f9c363d">base_dimension</a> () const</td></tr>
|
|
<tr class="memdesc:ade704c2189c4dfde1ace86100f9c363d"><td class="mdescLeft"> </td><td class="mdescRight">Returns the parent in the dependency tree if any or nullptr otherwise. <a href="#ade704c2189c4dfde1ace86100f9c363d">More...</a><br /></td></tr>
|
|
<tr class="separator:ade704c2189c4dfde1ace86100f9c363d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a15f32489aad9f7d42d76514dff27ccca"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a15f32489aad9f7d42d76514dff27ccca">ShortestTransitionSlack</a> (int64 node) const</td></tr>
|
|
<tr class="memdesc:a15f32489aad9f7d42d76514dff27ccca"><td class="mdescLeft"> </td><td class="mdescRight">It makes sense to use the function only for self-dependent dimension. <a href="#a15f32489aad9f7d42d76514dff27ccca">More...</a><br /></td></tr>
|
|
<tr class="separator:a15f32489aad9f7d42d76514dff27ccca"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a818dcdf6c1102cb0876393a153ef4249"><td class="memItemLeft" align="right" valign="top">const std::string & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a818dcdf6c1102cb0876393a153ef4249">name</a> () const</td></tr>
|
|
<tr class="memdesc:a818dcdf6c1102cb0876393a153ef4249"><td class="mdescLeft"> </td><td class="mdescRight">Returns the name of the dimension. <a href="#a818dcdf6c1102cb0876393a153ef4249">More...</a><br /></td></tr>
|
|
<tr class="separator:a818dcdf6c1102cb0876393a153ef4249"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad3420be5f4b38fd143302fecc1d118bb"><td class="memItemLeft" align="right" valign="top">const ReverseArcListGraph< int, int > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#ad3420be5f4b38fd143302fecc1d118bb">GetPathPrecedenceGraph</a> () const</td></tr>
|
|
<tr class="memdesc:ad3420be5f4b38fd143302fecc1d118bb"><td class="mdescLeft"> </td><td class="mdescRight">Accessors. <a href="#ad3420be5f4b38fd143302fecc1d118bb">More...</a><br /></td></tr>
|
|
<tr class="separator:ad3420be5f4b38fd143302fecc1d118bb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a87f365465eb17819cd0d2f332080b113"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a87f365465eb17819cd0d2f332080b113">SetPickupToDeliveryLimitFunctionForPair</a> (<a class="el" href="classoperations__research_1_1RoutingDimension.html#a03d51f530bab2758548a51e962f38a1a">PickupToDeliveryLimitFunction</a> limit_function, int pair_index)</td></tr>
|
|
<tr class="separator:a87f365465eb17819cd0d2f332080b113"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a30f89b5e42a78e894ea37b3e3d34ec9c"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a30f89b5e42a78e894ea37b3e3d34ec9c">HasPickupToDeliveryLimits</a> () const</td></tr>
|
|
<tr class="separator:a30f89b5e42a78e894ea37b3e3d34ec9c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:abd6b9d007b59cb549ecdb5a1e6d42cc9"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#abd6b9d007b59cb549ecdb5a1e6d42cc9">GetPickupToDeliveryLimitForPair</a> (int pair_index, int pickup, int delivery) const</td></tr>
|
|
<tr class="separator:abd6b9d007b59cb549ecdb5a1e6d42cc9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a55bd9a9e03538855c7cee2eec4378622"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a55bd9a9e03538855c7cee2eec4378622">AddNodePrecedence</a> (<a class="el" href="structoperations__research_1_1RoutingDimension_1_1NodePrecedence.html">NodePrecedence</a> precedence)</td></tr>
|
|
<tr class="separator:a55bd9a9e03538855c7cee2eec4378622"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a23c18b8de8ac3a05ffd9e0a5a5af7798"><td class="memItemLeft" align="right" valign="top">const std::vector< <a class="el" href="structoperations__research_1_1RoutingDimension_1_1NodePrecedence.html">NodePrecedence</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a23c18b8de8ac3a05ffd9e0a5a5af7798">GetNodePrecedences</a> () const</td></tr>
|
|
<tr class="separator:a23c18b8de8ac3a05ffd9e0a5a5af7798"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a00ffdae5c50c4edd8247e84a139b574e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a00ffdae5c50c4edd8247e84a139b574e">AddNodePrecedence</a> (int64 first_node, int64 second_node, int64 offset)</td></tr>
|
|
<tr class="separator:a00ffdae5c50c4edd8247e84a139b574e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6712bb9e01fe65384bad646d06919132"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a6712bb9e01fe65384bad646d06919132">GetSpanUpperBoundForVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="separator:a6712bb9e01fe65384bad646d06919132"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a0a4ec0cb288bbf7da0549a73c1addd1a"><td class="memItemLeft" align="right" valign="top">const std::vector< int64 > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a0a4ec0cb288bbf7da0549a73c1addd1a">vehicle_span_upper_bounds</a> () const</td></tr>
|
|
<tr class="separator:a0a4ec0cb288bbf7da0549a73c1addd1a"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:aa2496cac569779842d4427758da56f1c"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#aa2496cac569779842d4427758da56f1c">GetSpanCostCoefficientForVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="separator:aa2496cac569779842d4427758da56f1c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a395471c25d63a4af009b498581b8ac28"><td class="memItemLeft" align="right" valign="top">const std::vector< int64 > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a395471c25d63a4af009b498581b8ac28">vehicle_span_cost_coefficients</a> () const</td></tr>
|
|
<tr class="separator:a395471c25d63a4af009b498581b8ac28"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a474925b9a253658d4610eb6a3a35be0c"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a474925b9a253658d4610eb6a3a35be0c">global_span_cost_coefficient</a> () const</td></tr>
|
|
<tr class="separator:a474925b9a253658d4610eb6a3a35be0c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7f3c0cb6e8972660736e0bf89ef7d306"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a7f3c0cb6e8972660736e0bf89ef7d306">GetGlobalOptimizerOffset</a> () const</td></tr>
|
|
<tr class="separator:a7f3c0cb6e8972660736e0bf89ef7d306"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a17fc6c0b2c2e09eb94c5c812e3919cd0"><td class="memItemLeft" align="right" valign="top">int64 </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a17fc6c0b2c2e09eb94c5c812e3919cd0">GetLocalOptimizerOffsetForVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="separator:a17fc6c0b2c2e09eb94c5c812e3919cd0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a619aa0df1d2c81eab70de0f764e11f24"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a619aa0df1d2c81eab70de0f764e11f24">SetSoftSpanUpperBoundForVehicle</a> (<a class="el" href="structoperations__research_1_1SimpleBoundCosts_1_1BoundCost.html">SimpleBoundCosts::BoundCost</a> bound_cost, int vehicle)</td></tr>
|
|
<tr class="memdesc:a619aa0df1d2c81eab70de0f764e11f24"><td class="mdescLeft"> </td><td class="mdescRight">If the span of vehicle on this dimension is larger than bound, the cost will be increased by cost * (span - bound). <a href="#a619aa0df1d2c81eab70de0f764e11f24">More...</a><br /></td></tr>
|
|
<tr class="separator:a619aa0df1d2c81eab70de0f764e11f24"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8b71e53aa7d38fbcb7c07a0f98d1bd61"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a8b71e53aa7d38fbcb7c07a0f98d1bd61">HasSoftSpanUpperBounds</a> () const</td></tr>
|
|
<tr class="separator:a8b71e53aa7d38fbcb7c07a0f98d1bd61"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a7ee4f5c15d4e68cf4a01a86d4baa2952"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structoperations__research_1_1SimpleBoundCosts_1_1BoundCost.html">SimpleBoundCosts::BoundCost</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a7ee4f5c15d4e68cf4a01a86d4baa2952">GetSoftSpanUpperBoundForVehicle</a> (int vehicle) const</td></tr>
|
|
<tr class="separator:a7ee4f5c15d4e68cf4a01a86d4baa2952"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
|
|
Friends</h2></td></tr>
|
|
<tr class="memitem:ab7aef297f0c654af26dc7108c9ee6c69"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#ab7aef297f0c654af26dc7108c9ee6c69">RoutingModel</a></td></tr>
|
|
<tr class="separator:ab7aef297f0c654af26dc7108c9ee6c69"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a00141bd90e555aea59a9e98cfbcda6eb"><td class="memItemLeft" align="right" valign="top">class </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a00141bd90e555aea59a9e98cfbcda6eb">RoutingModelInspector</a></td></tr>
|
|
<tr class="separator:a00141bd90e555aea59a9e98cfbcda6eb"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<h2 class="groupheader">Member Typedef Documentation</h2>
|
|
<a id="a03d51f530bab2758548a51e962f38a1a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a03d51f530bab2758548a51e962f38a1a">◆ </a></span>PickupToDeliveryLimitFunction</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">typedef std::function<int64(int, int)> <a class="el" href="classoperations__research_1_1RoutingDimension.html#a03d51f530bab2758548a51e962f38a1a">operations_research::RoutingDimension::PickupToDeliveryLimitFunction</a></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Limits, in terms of maximum difference between the cumul variables, between the pickup and delivery alternatives belonging to a single pickup/delivery pair in the <a class="el" href="classoperations__research_1_1RoutingModel.html">RoutingModel</a>. </p>
|
|
<p>The indices passed to the function respectively correspond to the position of the pickup in the vector of pickup alternatives, and delivery position in the delivery alternatives for this pickup/delivery pair. These limits should only be set when each node index appears in at most one pickup/delivery pair, i.e. each pickup (delivery) index is in a single pickup/delivery pair.first (pair.second). </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02256">2256</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="abfcf989d8ccbc8d02d2b2704ec96f763"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#abfcf989d8ccbc8d02d2b2704ec96f763">◆ </a></span>~RoutingDimension()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">operations_research::RoutingDimension::~RoutingDimension </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="a55bd9a9e03538855c7cee2eec4378622"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a55bd9a9e03538855c7cee2eec4378622">◆ </a></span>AddNodePrecedence() <span class="overload">[1/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::AddNodePrecedence </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structoperations__research_1_1RoutingDimension_1_1NodePrecedence.html">NodePrecedence</a> </td>
|
|
<td class="paramname"><em>precedence</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">
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02272">2272</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a00ffdae5c50c4edd8247e84a139b574e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a00ffdae5c50c4edd8247e84a139b574e">◆ </a></span>AddNodePrecedence() <span class="overload">[2/2]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::AddNodePrecedence </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>first_node</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>second_node</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>offset</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02280">2280</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3c7253f12e84337a20296ce54f528c9e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3c7253f12e84337a20296ce54f528c9e">◆ </a></span>AreVehicleTransitsPositive()</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::RoutingDimension::AreVehicleTransitsPositive </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 iff the transit evaluator of 'vehicle' is positive for all arcs. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02078">2078</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ade704c2189c4dfde1ace86100f9c363d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ade704c2189c4dfde1ace86100f9c363d">◆ </a></span>base_dimension()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classoperations__research_1_1RoutingDimension.html">RoutingDimension</a>* operations_research::RoutingDimension::base_dimension </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 the parent in the dependency tree if any or nullptr otherwise. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02227">2227</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a520037b2703dd61ff94f7f775c31316b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a520037b2703dd61ff94f7f775c31316b">◆ </a></span>cumuls()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<<a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>*>& operations_research::RoutingDimension::cumuls </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Like <a class="el" href="classoperations__research_1_1RoutingDimension.html#a541eec636cf28916ff1d27749a5a075c" title="Get the cumul, transit and slack variables for the given node (given as int64 var index).">CumulVar()</a>, <a class="el" href="classoperations__research_1_1RoutingDimension.html#a1fc838c052835bfc676c98c39348f60d">TransitVar()</a>, <a class="el" href="classoperations__research_1_1RoutingDimension.html#aca1511ec6086af772f1c0de24bc80036">SlackVar()</a> but return the whole variable vectors instead (indexed by int64 var index). </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02049">2049</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a541eec636cf28916ff1d27749a5a075c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a541eec636cf28916ff1d27749a5a075c">◆ </a></span>CumulVar()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>* operations_research::RoutingDimension::CumulVar </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</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>Get the cumul, transit and slack variables for the given node (given as int64 var index). </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02041">2041</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="acec74fa72a4a455543d6d850b13058b6"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#acec74fa72a4a455543d6d850b13058b6">◆ </a></span>fixed_transits()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<<a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>*>& operations_research::RoutingDimension::fixed_transits </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02050">2050</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae0795ddfd30eaaec1b9b68c25d681ffa"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae0795ddfd30eaaec1b9b68c25d681ffa">◆ </a></span>FixedTransitVar()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>* operations_research::RoutingDimension::FixedTransitVar </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02043">2043</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a83297ba42788582d369696579addde1e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a83297ba42788582d369696579addde1e">◆ </a></span>forbidden_intervals()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<SortedDisjointIntervalList>& operations_research::RoutingDimension::forbidden_intervals </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 forbidden intervals for each node. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02055">2055</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa771a4b1f09590ad4132fbf90f524abe"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa771a4b1f09590ad4132fbf90f524abe">◆ </a></span>GetBreakDistanceDurationOfVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<std::pair<int64, int64> >& operations_research::RoutingDimension::GetBreakDistanceDurationOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the pairs (distance, duration) specified by break distance constraints. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a07c6cdc82e267942b967f53e6010a82c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a07c6cdc82e267942b967f53e6010a82c">◆ </a></span>GetBreakIntervalsOfVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<<a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a>*>& operations_research::RoutingDimension::GetBreakIntervalsOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the break intervals set by <a class="el" href="classoperations__research_1_1RoutingDimension.html#a6e43db91425269dda98c59586731f660" title="Sets the breaks for a given vehicle.">SetBreakIntervalsOfVehicle()</a>. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a4d1d9795fd5d3679da87017897fd4f9b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a4d1d9795fd5d3679da87017897fd4f9b">◆ </a></span>GetCumulVarPiecewiseLinearCost()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const PiecewiseLinearFunction* operations_research::RoutingDimension::GetCumulVarPiecewiseLinearCost </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the piecewise linear cost of a cumul variable for a given variable index. </p>
|
|
<p>The returned pointer has the same validity as this class. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a569e5105983007797f224986a331dc70"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a569e5105983007797f224986a331dc70">◆ </a></span>GetCumulVarSoftLowerBound()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetCumulVarSoftLowerBound </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the soft lower bound of a cumul variable for a given variable index. </p>
|
|
<p>The "hard" lower bound of the variable is returned if no soft lower bound has been set. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2bbbf40328825ffe853e5969eee63f5a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2bbbf40328825ffe853e5969eee63f5a">◆ </a></span>GetCumulVarSoftLowerBoundCoefficient()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetCumulVarSoftLowerBoundCoefficient </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the cost coefficient of the soft lower bound of a cumul variable for a given variable index. </p>
|
|
<p>If no soft lower bound has been set, 0 is returned. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a487493a16430f10f26366689017701bd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a487493a16430f10f26366689017701bd">◆ </a></span>GetCumulVarSoftUpperBound()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetCumulVarSoftUpperBound </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the soft upper bound of a cumul variable for a given variable index. </p>
|
|
<p>The "hard" upper bound of the variable is returned if no soft upper bound has been set. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="adcbe383e7ba8630ae23256e98810b6b9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adcbe383e7ba8630ae23256e98810b6b9">◆ </a></span>GetCumulVarSoftUpperBoundCoefficient()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetCumulVarSoftUpperBoundCoefficient </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the cost coefficient of the soft upper bound of a cumul variable for a given variable index. </p>
|
|
<p>If no soft upper bound has been set, 0 is returned. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7f3c0cb6e8972660736e0bf89ef7d306"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7f3c0cb6e8972660736e0bf89ef7d306">◆ </a></span>GetGlobalOptimizerOffset()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetGlobalOptimizerOffset </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02304">2304</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a17fc6c0b2c2e09eb94c5c812e3919cd0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a17fc6c0b2c2e09eb94c5c812e3919cd0">◆ </a></span>GetLocalOptimizerOffsetForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetLocalOptimizerOffsetForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02308">2308</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a23c18b8de8ac3a05ffd9e0a5a5af7798"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a23c18b8de8ac3a05ffd9e0a5a5af7798">◆ </a></span>GetNodePrecedences()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<<a class="el" href="structoperations__research_1_1RoutingDimension_1_1NodePrecedence.html">NodePrecedence</a>>& operations_research::RoutingDimension::GetNodePrecedences </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02275">2275</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad3420be5f4b38fd143302fecc1d118bb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad3420be5f4b38fd143302fecc1d118bb">◆ </a></span>GetPathPrecedenceGraph()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const ReverseArcListGraph<int, int>& operations_research::RoutingDimension::GetPathPrecedenceGraph </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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>Accessors. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02242">2242</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="abd6b9d007b59cb549ecdb5a1e6d42cc9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#abd6b9d007b59cb549ecdb5a1e6d42cc9">◆ </a></span>GetPickupToDeliveryLimitForPair()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetPickupToDeliveryLimitForPair </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>pair_index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>pickup</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>delivery</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa9acd23f51d4ba7c0e050db0bf27d9f5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa9acd23f51d4ba7c0e050db0bf27d9f5">◆ </a></span>GetPostTravelEvaluatorOfVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int operations_research::RoutingDimension::GetPostTravelEvaluatorOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af929083de8b7e19f2d06d6ee2112b5a5"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af929083de8b7e19f2d06d6ee2112b5a5">◆ </a></span>GetPreTravelEvaluatorOfVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int operations_research::RoutingDimension::GetPreTravelEvaluatorOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>!defined(SWIGPYTHON) </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7ee4f5c15d4e68cf4a01a86d4baa2952"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7ee4f5c15d4e68cf4a01a86d4baa2952">◆ </a></span>GetSoftSpanUpperBoundForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="structoperations__research_1_1SimpleBoundCosts_1_1BoundCost.html">SimpleBoundCosts::BoundCost</a> operations_research::RoutingDimension::GetSoftSpanUpperBoundForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02329">2329</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa2496cac569779842d4427758da56f1c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa2496cac569779842d4427758da56f1c">◆ </a></span>GetSpanCostCoefficientForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetSpanCostCoefficientForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02292">2292</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6712bb9e01fe65384bad646d06919132"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6712bb9e01fe65384bad646d06919132">◆ </a></span>GetSpanUpperBoundForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetSpanUpperBoundForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02284">2284</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5d7e7a4f88775c10240bbe838d2e13ee"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5d7e7a4f88775c10240bbe838d2e13ee">◆ </a></span>GetTransitValue()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetTransitValue </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>from_index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>to_index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>vehicle</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns the transition value for a given pair of nodes (as var index); this value is the one taken by the corresponding transit variable when the 'next' variable for 'from_index' is bound to 'to_index'. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a7d37150530f088112906877bf54dc4d9"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a7d37150530f088112906877bf54dc4d9">◆ </a></span>GetTransitValueFromClass()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::GetTransitValueFromClass </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>from_index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>to_index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>vehicle_class</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td> const</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>Same as above but taking a vehicle class of the dimension instead of a vehicle (the class of a vehicle can be obtained with <a class="el" href="classoperations__research_1_1RoutingDimension.html#a8bf186bfb9a793f0e92273a6b4998f90">vehicle_to_class()</a>). </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02034">2034</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a57ff38168114496e87dc253924fb3e46"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a57ff38168114496e87dc253924fb3e46">◆ </a></span>GetUnaryTransitEvaluator()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classoperations__research_1_1RoutingModel.html#adbd56cf1cca85c203b23e097f4962079">RoutingModel::TransitCallback1</a>& operations_research::RoutingDimension::GetUnaryTransitEvaluator </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 the unary callback evaluating the transit value between two node indices for a given vehicle. </p>
|
|
<p>If the corresponding callback is not unary, returns a null callback. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02071">2071</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a474925b9a253658d4610eb6a3a35be0c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a474925b9a253658d4610eb6a3a35be0c">◆ </a></span>global_span_cost_coefficient()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::global_span_cost_coefficient </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02300">2300</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a11db411ac857ec2153cd61c3e3296f08"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a11db411ac857ec2153cd61c3e3296f08">◆ </a></span>HasBreakConstraints()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool operations_research::RoutingDimension::HasBreakConstraints </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns true if any break interval or break distance was defined. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa6c7d741202e530624ba3165132f6fa2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa6c7d741202e530624ba3165132f6fa2">◆ </a></span>HasCumulVarPiecewiseLinearCost()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool operations_research::RoutingDimension::HasCumulVarPiecewiseLinearCost </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns true if a piecewise linear cost has been set for a given variable index. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae6dd1772ef933bfe97628d0034450266"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae6dd1772ef933bfe97628d0034450266">◆ </a></span>HasCumulVarSoftLowerBound()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool operations_research::RoutingDimension::HasCumulVarSoftLowerBound </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns true if a soft lower bound has been set for a given variable index. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5800f4776910a275f768050d832d1948"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5800f4776910a275f768050d832d1948">◆ </a></span>HasCumulVarSoftUpperBound()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool operations_research::RoutingDimension::HasCumulVarSoftUpperBound </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns true if a soft upper bound has been set for a given variable index. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a30f89b5e42a78e894ea37b3e3d34ec9c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a30f89b5e42a78e894ea37b3e3d34ec9c">◆ </a></span>HasPickupToDeliveryLimits()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">bool operations_research::RoutingDimension::HasPickupToDeliveryLimits </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8b71e53aa7d38fbcb7c07a0f98d1bd61"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8b71e53aa7d38fbcb7c07a0f98d1bd61">◆ </a></span>HasSoftSpanUpperBounds()</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::RoutingDimension::HasSoftSpanUpperBounds </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02326">2326</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aa224ac17be74c79927c18ef4a4b6705d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aa224ac17be74c79927c18ef4a4b6705d">◆ </a></span>InitializeBreaks()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::InitializeBreaks </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets up vehicle_break_intervals_, vehicle_break_distance_duration_, pre_travel_evaluators and post_travel_evaluators. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5bef0de22a2f6fc1478082358ef80f38"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5bef0de22a2f6fc1478082358ef80f38">◆ </a></span>model()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classoperations__research_1_1RoutingModel.html">RoutingModel</a>* operations_research::RoutingDimension::model </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 the model on which the dimension was created. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02027">2027</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a818dcdf6c1102cb0876393a153ef4249"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a818dcdf6c1102cb0876393a153ef4249">◆ </a></span>name()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::string& operations_research::RoutingDimension::name </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 the name of the dimension. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02238">2238</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5303e0e6657cb3efed3c7068eb193c86"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5303e0e6657cb3efed3c7068eb193c86">◆ </a></span>SetBreakDistanceDurationOfVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetBreakDistanceDurationOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>distance</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>duration</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>With breaks supposed to be consecutive, this forces the distance between breaks of size at least minimum_break_duration to be at least distance. </p>
|
|
<p>This supposes that the time until route start and after route end are infinite breaks. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6e43db91425269dda98c59586731f660"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6e43db91425269dda98c59586731f660">◆ </a></span>SetBreakIntervalsOfVehicle() <span class="overload">[1/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetBreakIntervalsOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > </td>
|
|
<td class="paramname"><em>breaks</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>pre_travel_evaluator</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>post_travel_evaluator</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets the breaks for a given vehicle. </p>
|
|
<p>Breaks are represented by IntervalVars. They may interrupt transits between nodes and increase the value of corresponding slack variables. A break may take place before the start of a vehicle, after the end of a vehicle, or during a travel i -> j.</p>
|
|
<p>In that case, the interval [break.Start(), break.End()) must be a subset of [CumulVar(i) + pre_travel(i, j), CumulVar(j) - post_travel(i, j)). In other words, a break may not overlap any node n's visit, given by [CumulVar(n) - post_travel(_, n), CumulVar(n) + pre_travel(n, _)). This formula considers post_travel(_, start) and pre_travel(end, _) to be 0; pre_travel will never be called on any (_, start) and post_travel will never we called on any (end, _). If pre_travel_evaluator or post_travel_evaluator is -1, it will be taken as a function that always returns 0. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a91a8bad350970afc848ae3726fb1f465"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a91a8bad350970afc848ae3726fb1f465">◆ </a></span>SetBreakIntervalsOfVehicle() <span class="overload">[2/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetBreakIntervalsOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > </td>
|
|
<td class="paramname"><em>breaks</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::vector< int64 > </td>
|
|
<td class="paramname"><em>node_visit_transits</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Deprecated, sets pre_travel(i, j) = node_visit_transit[i]. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aaf017f4f85b78139a428e8a38da4c2a0"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aaf017f4f85b78139a428e8a38da4c2a0">◆ </a></span>SetBreakIntervalsOfVehicle() <span class="overload">[3/3]</span></h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetBreakIntervalsOfVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">std::vector< <a class="el" href="classoperations__research_1_1IntervalVar.html">IntervalVar</a> * > </td>
|
|
<td class="paramname"><em>breaks</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::vector< int64 > </td>
|
|
<td class="paramname"><em>node_visit_transits</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">std::function< int64(int64, int64)> </td>
|
|
<td class="paramname"><em>group_delays</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Deprecated, sets pre_travel(i, j) = node_visit_transit[i] and post_travel(i, j) = group_delays(i, j). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6052d6bba75371db7e8ea84675187c73"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6052d6bba75371db7e8ea84675187c73">◆ </a></span>SetCumulVarPiecewiseLinearCost()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetCumulVarPiecewiseLinearCost </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">const PiecewiseLinearFunction & </td>
|
|
<td class="paramname"><em>cost</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets a piecewise linear cost on the cumul variable of a given variable index. </p>
|
|
<p>If f is a piecewise linear function, the resulting cost at 'index' will be f(CumulVar(index)). As of 3/2017, only non-decreasing positive cost functions are supported. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a3234a1f4aab23c4c4828b6321a5ec906"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a3234a1f4aab23c4c4828b6321a5ec906">◆ </a></span>SetCumulVarSoftLowerBound()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetCumulVarSoftLowerBound </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>lower_bound</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>coefficient</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets a soft lower bound to the cumul variable of a given variable index. </p>
|
|
<p>If the value of the cumul variable is less than the bound, a cost proportional to the difference between this value and the bound is added to the cost function of the model: cumulVar > lower_bound -> cost = 0 cumulVar <= lower_bound -> cost = coefficient * (lower_bound - cumulVar). This is also handy to model earliness costs when the dimension represents time. Note: Using soft lower and upper bounds or span costs together is, as of 6/2014, not well supported in the sense that an optimal schedule is not guaranteed. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8a84f4cd89001eab25832a01bccf982a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8a84f4cd89001eab25832a01bccf982a">◆ </a></span>SetCumulVarSoftUpperBound()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetCumulVarSoftUpperBound </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>upper_bound</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>coefficient</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets a soft upper bound to the cumul variable of a given variable index. </p>
|
|
<p>If the value of the cumul variable is greater than the bound, a cost proportional to the difference between this value and the bound is added to the cost function of the model: cumulVar <= upper_bound -> cost = 0 cumulVar > upper_bound -> cost = coefficient * (cumulVar - upper_bound) This is also handy to model tardiness costs when the dimension represents time. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab29859c22398d47a8590b3524e3a442a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab29859c22398d47a8590b3524e3a442a">◆ </a></span>SetGlobalSpanCostCoefficient()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetGlobalSpanCostCoefficient </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>coefficient</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets a cost proportional to the <em>global</em> dimension span, that is the difference between the largest value of route end cumul variables and the smallest value of route start cumul variables. </p>
|
|
<p>In other words: global_span_cost = coefficient * (Max(dimension end value) - Min(dimension start value)). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a87f365465eb17819cd0d2f332080b113"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a87f365465eb17819cd0d2f332080b113">◆ </a></span>SetPickupToDeliveryLimitFunctionForPair()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetPickupToDeliveryLimitFunctionForPair </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1RoutingDimension.html#a03d51f530bab2758548a51e962f38a1a">PickupToDeliveryLimitFunction</a> </td>
|
|
<td class="paramname"><em>limit_function</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>pair_index</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a619aa0df1d2c81eab70de0f764e11f24"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a619aa0df1d2c81eab70de0f764e11f24">◆ </a></span>SetSoftSpanUpperBoundForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetSoftSpanUpperBoundForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="structoperations__research_1_1SimpleBoundCosts_1_1BoundCost.html">SimpleBoundCosts::BoundCost</a> </td>
|
|
<td class="paramname"><em>bound_cost</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</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>If the span of vehicle on this dimension is larger than bound, the cost will be increased by cost * (span - bound). </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02318">2318</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a44bf0c1d2c603b8255765ddd081fa40f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a44bf0c1d2c603b8255765ddd081fa40f">◆ </a></span>SetSpanCostCoefficientForAllVehicles()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetSpanCostCoefficientForAllVehicles </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>coefficient</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
</div>
|
|
</div>
|
|
<a id="afc5f8f71a501b59e65b5c5f970c27c69"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afc5f8f71a501b59e65b5c5f970c27c69">◆ </a></span>SetSpanCostCoefficientForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetSpanCostCoefficientForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>coefficient</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Sets a cost proportional to the dimension span on a given vehicle, or on all vehicles at once. </p>
|
|
<p>"coefficient" must be nonnegative. This is handy to model costs proportional to idle time when the dimension represents time. The cost for a vehicle is span_cost = coefficient * (dimension end value - dimension start value). </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="abd077a7b29a7cfc99880172440e14d09"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#abd077a7b29a7cfc99880172440e14d09">◆ </a></span>SetSpanUpperBoundForVehicle()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">void operations_research::RoutingDimension::SetSpanUpperBoundForVehicle </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>upper_bound</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em> </td>
|
|
</tr>
|
|
<tr>
|
|
<td></td>
|
|
<td>)</td>
|
|
<td></td><td></td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>!defined(SWIGCSHARP) && !defined(SWIGJAVA) !defined(SWIGPYTHON) </p>
|
|
<p>Sets an upper bound on the dimension span on a given vehicle. This is the preferred way to limit the "length" of the route of a vehicle according to a dimension. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a15f32489aad9f7d42d76514dff27ccca"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a15f32489aad9f7d42d76514dff27ccca">◆ </a></span>ShortestTransitionSlack()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int64 operations_research::RoutingDimension::ShortestTransitionSlack </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>node</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>It makes sense to use the function only for self-dependent dimension. </p>
|
|
<p>For such dimensions the value of the slack of a node determines the transition cost of the next transit. Provided that</p><ol type="1">
|
|
<li>cumul[node] is fixed,</li>
|
|
<li>next[node] and next[next[node]] (if exists) are fixed, the value of slack[node] for which cumul[next[node]] + transit[next[node]] is minimized can be found in O(1) using this function. </li>
|
|
</ol>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a96a618c496ecee054c3708a5949ad5c4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a96a618c496ecee054c3708a5949ad5c4">◆ </a></span>slacks()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<<a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>*>& operations_research::RoutingDimension::slacks </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02052">2052</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="aca1511ec6086af772f1c0de24bc80036"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#aca1511ec6086af772f1c0de24bc80036">◆ </a></span>SlackVar()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>* operations_research::RoutingDimension::SlackVar </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02044">2044</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a81824038e89413cb3a1970104829cf81"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a81824038e89413cb3a1970104829cf81">◆ </a></span>transit_evaluator()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const <a class="el" href="classoperations__research_1_1RoutingModel.html#a40eca6feb4e3e04786969e3be70e115e">RoutingModel::TransitCallback2</a>& operations_research::RoutingDimension::transit_evaluator </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 the callback evaluating the transit value between two node indices for a given vehicle. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02064">2064</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2429f90135681f8a51fe5c598683150a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2429f90135681f8a51fe5c598683150a">◆ </a></span>transits()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<<a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>*>& operations_research::RoutingDimension::transits </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02051">2051</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1fc838c052835bfc676c98c39348f60d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1fc838c052835bfc676c98c39348f60d">◆ </a></span>TransitVar()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname"><a class="el" href="classoperations__research_1_1IntVar.html">IntVar</a>* operations_research::RoutingDimension::TransitVar </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int64 </td>
|
|
<td class="paramname"><em>index</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02042">2042</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af749da37fdb4dd5ebfc941a372e18d2f"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af749da37fdb4dd5ebfc941a372e18d2f">◆ </a></span>vehicle_capacities()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<int64>& operations_research::RoutingDimension::vehicle_capacities </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 the capacities for all vehicles. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02059">2059</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a395471c25d63a4af009b498581b8ac28"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a395471c25d63a4af009b498581b8ac28">◆ </a></span>vehicle_span_cost_coefficients()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<int64>& operations_research::RoutingDimension::vehicle_span_cost_coefficients </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02296">2296</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a0a4ec0cb288bbf7da0549a73c1addd1a"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0a4ec0cb288bbf7da0549a73c1addd1a">◆ </a></span>vehicle_span_upper_bounds()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const std::vector<int64>& operations_research::RoutingDimension::vehicle_span_upper_bounds </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02288">2288</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8bf186bfb9a793f0e92273a6b4998f90"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8bf186bfb9a793f0e92273a6b4998f90">◆ </a></span>vehicle_to_class()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">int operations_research::RoutingDimension::vehicle_to_class </td>
|
|
<td>(</td>
|
|
<td class="paramtype">int </td>
|
|
<td class="paramname"><em>vehicle</em></td><td>)</td>
|
|
<td> const</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 class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02082">2082</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Friends And Related Function Documentation</h2>
|
|
<a id="ab7aef297f0c654af26dc7108c9ee6c69"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab7aef297f0c654af26dc7108c9ee6c69">◆ </a></span>RoutingModel</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">friend class <a class="el" href="classoperations__research_1_1RoutingModel.html">RoutingModel</a></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02453">2453</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a00141bd90e555aea59a9e98cfbcda6eb"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a00141bd90e555aea59a9e98cfbcda6eb">◆ </a></span>RoutingModelInspector</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">friend class RoutingModelInspector</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p class="definition">Definition at line <a class="el" href="routing_8h_source.html#l02454">2454</a> of file <a class="el" href="routing_8h_source.html">routing.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following file:<ul>
|
|
<li><a class="el" href="routing_8h_source.html">routing.h</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div><!-- doc-content -->
|
|
</div>
|
|
<div id="footer-container">
|
|
<div id="footer">
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|