1024 lines
58 KiB
HTML
1024 lines
58 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">Google OR-Tools 7.5</span>
|
|
</div>
|
|
</div>
|
|
<div id="content" style="width: 100%; overflow: hidden;">
|
|
<div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
|
|
<h2>C++ Reference</h2>
|
|
<ul>
|
|
<li><a href="../cpp_algorithms/annotated.html">Algorithms</a></li>
|
|
<li><a href="../cpp_sat/annotated.html">CP-SAT</a></li>
|
|
<li><a href="../cpp_graph/annotated.html">Graph</a></li>
|
|
<li><a href="../cpp_routing/annotated.html">Routing</a></li>
|
|
<li><a href="../cpp_linear/annotated.html">Linear solver</a></li>
|
|
</ul>
|
|
</div>
|
|
<div id="content">
|
|
<div align="center">
|
|
<h1 style="color: #145A32;">C++ Reference: Routing</h1>
|
|
</div>
|
|
<!-- Generated by Doxygen 1.8.18 -->
|
|
<div id="navrow1" class="tabs">
|
|
<ul class="tablist">
|
|
<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 id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="namespaceoperations__research.html">operations_research</a></li><li class="navelem"><a class="el" href="classoperations__research_1_1SearchMonitor.html">SearchMonitor</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div class="header">
|
|
<div class="summary">
|
|
<a href="#pub-methods">Public Member Functions</a> |
|
|
<a href="#pub-static-attribs">Static Public Attributes</a> |
|
|
<a href="classoperations__research_1_1SearchMonitor-members.html">List of all members</a> </div>
|
|
<div class="headertitle">
|
|
<div class="title">SearchMonitor</div> </div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
|
<div class="textblock"><p>A search monitor is a simple set of callbacks to monitor all search events. </p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03587">3587</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
</div><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:a0717f339467adcc032d893007b3695be"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a0717f339467adcc032d893007b3695be">SearchMonitor</a> (<a class="el" href="classoperations__research_1_1Solver.html">Solver</a> *const s)</td></tr>
|
|
<tr class="separator:a0717f339467adcc032d893007b3695be"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a72beba8c14dafe98d7faea2fd625bf27"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a72beba8c14dafe98d7faea2fd625bf27">~SearchMonitor</a> () override</td></tr>
|
|
<tr class="separator:a72beba8c14dafe98d7faea2fd625bf27"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a27bff456d096558a8be08ca6fee989f2"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a27bff456d096558a8be08ca6fee989f2">EnterSearch</a> ()</td></tr>
|
|
<tr class="memdesc:a27bff456d096558a8be08ca6fee989f2"><td class="mdescLeft"> </td><td class="mdescRight">Beginning of the search. <a href="classoperations__research_1_1SearchMonitor.html#a27bff456d096558a8be08ca6fee989f2">More...</a><br /></td></tr>
|
|
<tr class="separator:a27bff456d096558a8be08ca6fee989f2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a262b3b6ef45475daffd66c5ada5dfdd2"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a262b3b6ef45475daffd66c5ada5dfdd2">RestartSearch</a> ()</td></tr>
|
|
<tr class="memdesc:a262b3b6ef45475daffd66c5ada5dfdd2"><td class="mdescLeft"> </td><td class="mdescRight">Restart the search. <a href="classoperations__research_1_1SearchMonitor.html#a262b3b6ef45475daffd66c5ada5dfdd2">More...</a><br /></td></tr>
|
|
<tr class="separator:a262b3b6ef45475daffd66c5ada5dfdd2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a19bef8716e7418748ef666b07b09c25d"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a19bef8716e7418748ef666b07b09c25d">ExitSearch</a> ()</td></tr>
|
|
<tr class="memdesc:a19bef8716e7418748ef666b07b09c25d"><td class="mdescLeft"> </td><td class="mdescRight">End of the search. <a href="classoperations__research_1_1SearchMonitor.html#a19bef8716e7418748ef666b07b09c25d">More...</a><br /></td></tr>
|
|
<tr class="separator:a19bef8716e7418748ef666b07b09c25d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad68c792579832141c205985973ba8a88"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#ad68c792579832141c205985973ba8a88">BeginNextDecision</a> (<a class="el" href="classoperations__research_1_1DecisionBuilder.html">DecisionBuilder</a> *const b)</td></tr>
|
|
<tr class="memdesc:ad68c792579832141c205985973ba8a88"><td class="mdescLeft"> </td><td class="mdescRight">Before calling <a class="el" href="classoperations__research_1_1DecisionBuilder.html#a68bbb37d42da9d7b82145b3bf435dbc3" title="This is the main method of the decision builder class.">DecisionBuilder::Next</a>. <a href="classoperations__research_1_1SearchMonitor.html#ad68c792579832141c205985973ba8a88">More...</a><br /></td></tr>
|
|
<tr class="separator:ad68c792579832141c205985973ba8a88"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ab472eccafac416112828cde24cefb907"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#ab472eccafac416112828cde24cefb907">EndNextDecision</a> (<a class="el" href="classoperations__research_1_1DecisionBuilder.html">DecisionBuilder</a> *const b, <a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const d)</td></tr>
|
|
<tr class="memdesc:ab472eccafac416112828cde24cefb907"><td class="mdescLeft"> </td><td class="mdescRight">After calling <a class="el" href="classoperations__research_1_1DecisionBuilder.html#a68bbb37d42da9d7b82145b3bf435dbc3" title="This is the main method of the decision builder class.">DecisionBuilder::Next</a>, along with the returned decision. <a href="classoperations__research_1_1SearchMonitor.html#ab472eccafac416112828cde24cefb907">More...</a><br /></td></tr>
|
|
<tr class="separator:ab472eccafac416112828cde24cefb907"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:af4cd0c541c53920fa86ff54ba2349cb2"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#af4cd0c541c53920fa86ff54ba2349cb2">ApplyDecision</a> (<a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const d)</td></tr>
|
|
<tr class="memdesc:af4cd0c541c53920fa86ff54ba2349cb2"><td class="mdescLeft"> </td><td class="mdescRight">Before applying the decision. <a href="classoperations__research_1_1SearchMonitor.html#af4cd0c541c53920fa86ff54ba2349cb2">More...</a><br /></td></tr>
|
|
<tr class="separator:af4cd0c541c53920fa86ff54ba2349cb2"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a150f3693eacbeff5fcf5fb1ab954d11e"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a150f3693eacbeff5fcf5fb1ab954d11e">RefuteDecision</a> (<a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const d)</td></tr>
|
|
<tr class="memdesc:a150f3693eacbeff5fcf5fb1ab954d11e"><td class="mdescLeft"> </td><td class="mdescRight">Before refuting the decision. <a href="classoperations__research_1_1SearchMonitor.html#a150f3693eacbeff5fcf5fb1ab954d11e">More...</a><br /></td></tr>
|
|
<tr class="separator:a150f3693eacbeff5fcf5fb1ab954d11e"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9e7b2a7775d2ff7735f77716cb29d15b"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a9e7b2a7775d2ff7735f77716cb29d15b">AfterDecision</a> (<a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const d, bool apply)</td></tr>
|
|
<tr class="memdesc:a9e7b2a7775d2ff7735f77716cb29d15b"><td class="mdescLeft"> </td><td class="mdescRight">Just after refuting or applying the decision, apply is true after Apply. <a href="classoperations__research_1_1SearchMonitor.html#a9e7b2a7775d2ff7735f77716cb29d15b">More...</a><br /></td></tr>
|
|
<tr class="separator:a9e7b2a7775d2ff7735f77716cb29d15b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a232379b0cabc402db868a849f4f71273"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a232379b0cabc402db868a849f4f71273">BeginFail</a> ()</td></tr>
|
|
<tr class="memdesc:a232379b0cabc402db868a849f4f71273"><td class="mdescLeft"> </td><td class="mdescRight">Just when the failure occurs. <a href="classoperations__research_1_1SearchMonitor.html#a232379b0cabc402db868a849f4f71273">More...</a><br /></td></tr>
|
|
<tr class="separator:a232379b0cabc402db868a849f4f71273"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a365797300972514a230eeb9e2f45f441"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a365797300972514a230eeb9e2f45f441">EndFail</a> ()</td></tr>
|
|
<tr class="memdesc:a365797300972514a230eeb9e2f45f441"><td class="mdescLeft"> </td><td class="mdescRight">After completing the backtrack. <a href="classoperations__research_1_1SearchMonitor.html#a365797300972514a230eeb9e2f45f441">More...</a><br /></td></tr>
|
|
<tr class="separator:a365797300972514a230eeb9e2f45f441"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:adfeaf3bb78e09fb211bdb8a4fa605c05"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#adfeaf3bb78e09fb211bdb8a4fa605c05">BeginInitialPropagation</a> ()</td></tr>
|
|
<tr class="memdesc:adfeaf3bb78e09fb211bdb8a4fa605c05"><td class="mdescLeft"> </td><td class="mdescRight">Before the initial propagation. <a href="classoperations__research_1_1SearchMonitor.html#adfeaf3bb78e09fb211bdb8a4fa605c05">More...</a><br /></td></tr>
|
|
<tr class="separator:adfeaf3bb78e09fb211bdb8a4fa605c05"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1ef0300d79ec636a79c06486f695b2ff"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a1ef0300d79ec636a79c06486f695b2ff">EndInitialPropagation</a> ()</td></tr>
|
|
<tr class="memdesc:a1ef0300d79ec636a79c06486f695b2ff"><td class="mdescLeft"> </td><td class="mdescRight">After the initial propagation. <a href="classoperations__research_1_1SearchMonitor.html#a1ef0300d79ec636a79c06486f695b2ff">More...</a><br /></td></tr>
|
|
<tr class="separator:a1ef0300d79ec636a79c06486f695b2ff"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2895de3ad67f901de28f00994cdcfa34"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a2895de3ad67f901de28f00994cdcfa34">AcceptSolution</a> ()</td></tr>
|
|
<tr class="memdesc:a2895de3ad67f901de28f00994cdcfa34"><td class="mdescLeft"> </td><td class="mdescRight">This method is called when a solution is found. <a href="classoperations__research_1_1SearchMonitor.html#a2895de3ad67f901de28f00994cdcfa34">More...</a><br /></td></tr>
|
|
<tr class="separator:a2895de3ad67f901de28f00994cdcfa34"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a9f55f75747d65ad9c4ca9c6fdc01800d"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a9f55f75747d65ad9c4ca9c6fdc01800d">AtSolution</a> ()</td></tr>
|
|
<tr class="memdesc:a9f55f75747d65ad9c4ca9c6fdc01800d"><td class="mdescLeft"> </td><td class="mdescRight">This method is called when a valid solution is found. <a href="classoperations__research_1_1SearchMonitor.html#a9f55f75747d65ad9c4ca9c6fdc01800d">More...</a><br /></td></tr>
|
|
<tr class="separator:a9f55f75747d65ad9c4ca9c6fdc01800d"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a6c85276e75542eb410f09b0ccd78379b"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a6c85276e75542eb410f09b0ccd78379b">NoMoreSolutions</a> ()</td></tr>
|
|
<tr class="memdesc:a6c85276e75542eb410f09b0ccd78379b"><td class="mdescLeft"> </td><td class="mdescRight">When the search tree is finished. <a href="classoperations__research_1_1SearchMonitor.html#a6c85276e75542eb410f09b0ccd78379b">More...</a><br /></td></tr>
|
|
<tr class="separator:a6c85276e75542eb410f09b0ccd78379b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ad6087c8c2f28d22ff19052db7c0045cf"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#ad6087c8c2f28d22ff19052db7c0045cf">LocalOptimum</a> ()</td></tr>
|
|
<tr class="memdesc:ad6087c8c2f28d22ff19052db7c0045cf"><td class="mdescLeft"> </td><td class="mdescRight">When a local optimum is reached. <a href="classoperations__research_1_1SearchMonitor.html#ad6087c8c2f28d22ff19052db7c0045cf">More...</a><br /></td></tr>
|
|
<tr class="separator:ad6087c8c2f28d22ff19052db7c0045cf"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a98a16aa379c7240ae374adb128142a02"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a98a16aa379c7240ae374adb128142a02">AcceptDelta</a> (<a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *delta, <a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> *deltadelta)</td></tr>
|
|
<tr class="separator:a98a16aa379c7240ae374adb128142a02"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a36df6248a273f003d8d9e1414e3c5e5c"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a36df6248a273f003d8d9e1414e3c5e5c">AcceptNeighbor</a> ()</td></tr>
|
|
<tr class="memdesc:a36df6248a273f003d8d9e1414e3c5e5c"><td class="mdescLeft"> </td><td class="mdescRight">After accepting a neighbor during local search. <a href="classoperations__research_1_1SearchMonitor.html#a36df6248a273f003d8d9e1414e3c5e5c">More...</a><br /></td></tr>
|
|
<tr class="separator:a36df6248a273f003d8d9e1414e3c5e5c"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:ae08d9f4aadd8be8f98637c6dec237b57"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#ae08d9f4aadd8be8f98637c6dec237b57">AcceptUncheckedNeighbor</a> ()</td></tr>
|
|
<tr class="memdesc:ae08d9f4aadd8be8f98637c6dec237b57"><td class="mdescLeft"> </td><td class="mdescRight">After accepting an unchecked neighbor during local search. <a href="classoperations__research_1_1SearchMonitor.html#ae08d9f4aadd8be8f98637c6dec237b57">More...</a><br /></td></tr>
|
|
<tr class="separator:ae08d9f4aadd8be8f98637c6dec237b57"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a198e17615278d9d5b9f39e4f0493447b"><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a198e17615278d9d5b9f39e4f0493447b">IsUncheckedSolutionLimitReached</a> ()</td></tr>
|
|
<tr class="memdesc:a198e17615278d9d5b9f39e4f0493447b"><td class="mdescLeft"> </td><td class="mdescRight">Returns true if the limit of solutions has been reached including unchecked solutions. <a href="classoperations__research_1_1SearchMonitor.html#a198e17615278d9d5b9f39e4f0493447b">More...</a><br /></td></tr>
|
|
<tr class="separator:a198e17615278d9d5b9f39e4f0493447b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a5f32c22c620c811754ba7b6f977db864"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classoperations__research_1_1Solver.html">Solver</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a5f32c22c620c811754ba7b6f977db864">solver</a> () const</td></tr>
|
|
<tr class="separator:a5f32c22c620c811754ba7b6f977db864"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a1fc71393e20b97540f90702601b75fe1"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a1fc71393e20b97540f90702601b75fe1">PeriodicCheck</a> ()</td></tr>
|
|
<tr class="memdesc:a1fc71393e20b97540f90702601b75fe1"><td class="mdescLeft"> </td><td class="mdescRight">Periodic call to check limits in long running methods. <a href="classoperations__research_1_1SearchMonitor.html#a1fc71393e20b97540f90702601b75fe1">More...</a><br /></td></tr>
|
|
<tr class="separator:a1fc71393e20b97540f90702601b75fe1"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a2ebc7607687823d65bf65f331c9ac246"><td class="memItemLeft" align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a2ebc7607687823d65bf65f331c9ac246">ProgressPercent</a> ()</td></tr>
|
|
<tr class="memdesc:a2ebc7607687823d65bf65f331c9ac246"><td class="mdescLeft"> </td><td class="mdescRight">Returns a percentage representing the propress of the search before reaching limits. <a href="classoperations__research_1_1SearchMonitor.html#a2ebc7607687823d65bf65f331c9ac246">More...</a><br /></td></tr>
|
|
<tr class="separator:a2ebc7607687823d65bf65f331c9ac246"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:afcde421cf076575a27bed81c80093ac8"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#afcde421cf076575a27bed81c80093ac8">Accept</a> (<a class="el" href="classoperations__research_1_1ModelVisitor.html">ModelVisitor</a> *const visitor) const</td></tr>
|
|
<tr class="memdesc:afcde421cf076575a27bed81c80093ac8"><td class="mdescLeft"> </td><td class="mdescRight">Accepts the given model visitor. <a href="classoperations__research_1_1SearchMonitor.html#afcde421cf076575a27bed81c80093ac8">More...</a><br /></td></tr>
|
|
<tr class="separator:afcde421cf076575a27bed81c80093ac8"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a16adaa01a30033dfc04405c25b7ede7b"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#a16adaa01a30033dfc04405c25b7ede7b">Install</a> ()</td></tr>
|
|
<tr class="memdesc:a16adaa01a30033dfc04405c25b7ede7b"><td class="mdescLeft"> </td><td class="mdescRight">Registers itself on the solver such that it gets notified of the search and propagation events. <a href="classoperations__research_1_1SearchMonitor.html#a16adaa01a30033dfc04405c25b7ede7b">More...</a><br /></td></tr>
|
|
<tr class="separator:a16adaa01a30033dfc04405c25b7ede7b"><td class="memSeparator" colspan="2"> </td></tr>
|
|
<tr class="memitem:a8eba5d533fa9df4617c1868d3ec2afc4"><td class="memItemLeft" align="right" valign="top">virtual std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1BaseObject.html#a8eba5d533fa9df4617c1868d3ec2afc4">DebugString</a> () const</td></tr>
|
|
<tr class="separator:a8eba5d533fa9df4617c1868d3ec2afc4"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table><table class="memberdecls">
|
|
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
|
|
Static Public Attributes</h2></td></tr>
|
|
<tr class="memitem:ae01b186f0d4be993cdabb7fb50bb98bd"><td class="memItemLeft" align="right" valign="top">static const int </td><td class="memItemRight" valign="bottom"><a class="el" href="classoperations__research_1_1SearchMonitor.html#ae01b186f0d4be993cdabb7fb50bb98bd">kNoProgress</a> = -1</td></tr>
|
|
<tr class="separator:ae01b186f0d4be993cdabb7fb50bb98bd"><td class="memSeparator" colspan="2"> </td></tr>
|
|
</table>
|
|
<h2 class="groupheader">Constructor & Destructor Documentation</h2>
|
|
<a id="a0717f339467adcc032d893007b3695be"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a0717f339467adcc032d893007b3695be">◆ </a></span>SearchMonitor()</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_1SearchMonitor.html">SearchMonitor</a> </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Solver.html">Solver</a> *const </td>
|
|
<td class="paramname"><em>s</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03591">3591</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a72beba8c14dafe98d7faea2fd625bf27"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a72beba8c14dafe98d7faea2fd625bf27">◆ </a></span>~SearchMonitor()</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_1SearchMonitor.html">SearchMonitor</a> </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03592">3592</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Function Documentation</h2>
|
|
<a id="afcde421cf076575a27bed81c80093ac8"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#afcde421cf076575a27bed81c80093ac8">◆ </a></span>Accept()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void Accept </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1ModelVisitor.html">ModelVisitor</a> *const </td>
|
|
<td class="paramname"><em>visitor</em></td><td>)</td>
|
|
<td> const</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Accepts the given model visitor. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1RegularLimit.html#aa30c84aec5e60d6b74e1e1eb15011d4a">RegularLimit</a>, and <a class="el" href="classoperations__research_1_1OptimizeVar.html#aa30c84aec5e60d6b74e1e1eb15011d4a">OptimizeVar</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a98a16aa379c7240ae374adb128142a02"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a98a16aa379c7240ae374adb128142a02">◆ </a></span>AcceptDelta()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual bool AcceptDelta </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> * </td>
|
|
<td class="paramname"><em>delta</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Assignment.html">Assignment</a> * </td>
|
|
<td class="paramname"><em>deltadelta</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">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1OptimizeVar.html#ae983cf659c971e1f2095a2c5a0e81eca">OptimizeVar</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a36df6248a273f003d8d9e1414e3c5e5c"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a36df6248a273f003d8d9e1414e3c5e5c">◆ </a></span>AcceptNeighbor()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void AcceptNeighbor </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>After accepting a neighbor during local search. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2895de3ad67f901de28f00994cdcfa34"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2895de3ad67f901de28f00994cdcfa34">◆ </a></span>AcceptSolution()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual bool AcceptSolution </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>This method is called when a solution is found. </p>
|
|
<p>It asserts whether the solution is valid. A value of false indicates that the solution should be discarded. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1OptimizeVar.html#aa8900234762f2b2015b9108accdf10ff">OptimizeVar</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ae08d9f4aadd8be8f98637c6dec237b57"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae08d9f4aadd8be8f98637c6dec237b57">◆ </a></span>AcceptUncheckedNeighbor()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void AcceptUncheckedNeighbor </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>After accepting an unchecked neighbor during local search. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#afc36af1852ba6e2dbe650aa172e4c680">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9e7b2a7775d2ff7735f77716cb29d15b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9e7b2a7775d2ff7735f77716cb29d15b">◆ </a></span>AfterDecision()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void AfterDecision </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const </td>
|
|
<td class="paramname"><em>d</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype">bool </td>
|
|
<td class="paramname"><em>apply</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">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Just after refuting or applying the decision, apply is true after Apply. </p>
|
|
<p>This is called only if the Apply() or Refute() methods have not failed. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="af4cd0c541c53920fa86ff54ba2349cb2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#af4cd0c541c53920fa86ff54ba2349cb2">◆ </a></span>ApplyDecision()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void ApplyDecision </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const </td>
|
|
<td class="paramname"><em>d</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Before applying the decision. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#a9af93e0c2f02218bf4e586dda448fabe">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a9f55f75747d65ad9c4ca9c6fdc01800d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a9f55f75747d65ad9c4ca9c6fdc01800d">◆ </a></span>AtSolution()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual bool AtSolution </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>This method is called when a valid solution is found. </p>
|
|
<p>If the return value is true, then search will resume after. If the result is false, then search will stop there. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1OptimizeVar.html#ab3631067f88ccc24c5db6a8a0dc64e47">OptimizeVar</a>, and <a class="el" href="classoperations__research_1_1SearchLog.html#ab3631067f88ccc24c5db6a8a0dc64e47">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a232379b0cabc402db868a849f4f71273"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a232379b0cabc402db868a849f4f71273">◆ </a></span>BeginFail()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void BeginFail </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Just when the failure occurs. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#a00e1c5e76ceb9b425ddea62748673d9b">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="adfeaf3bb78e09fb211bdb8a4fa605c05"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#adfeaf3bb78e09fb211bdb8a4fa605c05">◆ </a></span>BeginInitialPropagation()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void BeginInitialPropagation </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Before the initial propagation. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#a73895ddf1e732b9d3fa365f05977c8a6">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad68c792579832141c205985973ba8a88"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad68c792579832141c205985973ba8a88">◆ </a></span>BeginNextDecision()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void BeginNextDecision </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1DecisionBuilder.html">DecisionBuilder</a> *const </td>
|
|
<td class="paramname"><em>b</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Before calling <a class="el" href="classoperations__research_1_1DecisionBuilder.html#a68bbb37d42da9d7b82145b3bf435dbc3" title="This is the main method of the decision builder class.">DecisionBuilder::Next</a>. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1OptimizeVar.html#a2475e9789e99a92fbe93b2eaf1b5f5b3">OptimizeVar</a>, and <a class="el" href="classoperations__research_1_1SearchLimit.html#a6022c765bf8a03b9322ca6c6591b3c21">SearchLimit</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a8eba5d533fa9df4617c1868d3ec2afc4"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a8eba5d533fa9df4617c1868d3ec2afc4">◆ </a></span>DebugString()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual std::string DebugString </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 class="mlabel">virtual</span><span class="mlabel">inherited</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1Pack.html#aed804747c45a7e1caf81461f9e45dd91">Pack</a>, <a class="el" href="classoperations__research_1_1Assignment.html#aed804747c45a7e1caf81461f9e45dd91">Assignment</a>, <a class="el" href="classoperations__research_1_1SequenceVar.html#aed804747c45a7e1caf81461f9e45dd91">SequenceVar</a>, <a class="el" href="classoperations__research_1_1RegularLimit.html#aed804747c45a7e1caf81461f9e45dd91">RegularLimit</a>, <a class="el" href="classoperations__research_1_1SearchLimit.html#aed804747c45a7e1caf81461f9e45dd91">SearchLimit</a>, <a class="el" href="classoperations__research_1_1OptimizeVar.html#aed804747c45a7e1caf81461f9e45dd91">OptimizeVar</a>, <a class="el" href="classoperations__research_1_1SolutionCollector.html#aed804747c45a7e1caf81461f9e45dd91">SolutionCollector</a>, <a class="el" href="classoperations__research_1_1IntVarIterator.html#aed804747c45a7e1caf81461f9e45dd91">IntVarIterator</a>, <a class="el" href="classoperations__research_1_1Constraint.html#aed804747c45a7e1caf81461f9e45dd91">Constraint</a>, <a class="el" href="classoperations__research_1_1CPFeasibilityFilter.html#aed804747c45a7e1caf81461f9e45dd91">CPFeasibilityFilter</a>, <a class="el" href="classoperations__research_1_1Demon.html#aed804747c45a7e1caf81461f9e45dd91">Demon</a>, <a class="el" href="classoperations__research_1_1DecisionBuilder.html#aed804747c45a7e1caf81461f9e45dd91">DecisionBuilder</a>, <a class="el" href="classoperations__research_1_1Decision.html#aed804747c45a7e1caf81461f9e45dd91">Decision</a>, <a class="el" href="classoperations__research_1_1PropagationBaseObject.html#aed804747c45a7e1caf81461f9e45dd91">PropagationBaseObject</a>, <a class="el" href="classoperations__research_1_1IntVarFilteredDecisionBuilder.html#aed804747c45a7e1caf81461f9e45dd91">IntVarFilteredDecisionBuilder</a>, <a class="el" href="classoperations__research_1_1ArrayWithOffset.html#aed804747c45a7e1caf81461f9e45dd91">ArrayWithOffset< T ></a>, <a class="el" href="classoperations__research_1_1SearchLog.html#aed804747c45a7e1caf81461f9e45dd91">SearchLog</a>, <a class="el" href="classoperations__research_1_1BooleanVar.html#aed804747c45a7e1caf81461f9e45dd91">BooleanVar</a>, <a class="el" href="classoperations__research_1_1LocalSearchMonitor.html#aed804747c45a7e1caf81461f9e45dd91">LocalSearchMonitor</a>, <a class="el" href="classoperations__research_1_1PropagationMonitor.html#aed804747c45a7e1caf81461f9e45dd91">PropagationMonitor</a>, <a class="el" href="classoperations__research_1_1GlobalVehicleBreaksConstraint.html#aed804747c45a7e1caf81461f9e45dd91">GlobalVehicleBreaksConstraint</a>, <a class="el" href="classoperations__research_1_1LocalSearchFilterManager.html#aed804747c45a7e1caf81461f9e45dd91">LocalSearchFilterManager</a>, <a class="el" href="classoperations__research_1_1DelayedCallMethod2.html#aed804747c45a7e1caf81461f9e45dd91">DelayedCallMethod2< T, P, Q ></a>, <a class="el" href="classoperations__research_1_1DelayedCallMethod1.html#aed804747c45a7e1caf81461f9e45dd91">DelayedCallMethod1< T, P ></a>, <a class="el" href="classoperations__research_1_1DelayedCallMethod0.html#aed804747c45a7e1caf81461f9e45dd91">DelayedCallMethod0< T ></a>, <a class="el" href="classoperations__research_1_1ExchangeSubtrip.html#aed804747c45a7e1caf81461f9e45dd91">ExchangeSubtrip</a>, <a class="el" href="classoperations__research_1_1CallMethod3.html#aed804747c45a7e1caf81461f9e45dd91">CallMethod3< T, P, Q, R ></a>, <a class="el" href="classoperations__research_1_1RelocateSubtrip.html#aed804747c45a7e1caf81461f9e45dd91">RelocateSubtrip</a>, <a class="el" href="classoperations__research_1_1CallMethod2.html#aed804747c45a7e1caf81461f9e45dd91">CallMethod2< T, P, Q ></a>, <a class="el" href="classoperations__research_1_1CallMethod1.html#aed804747c45a7e1caf81461f9e45dd91">CallMethod1< T, P ></a>, <a class="el" href="classoperations__research_1_1CallMethod0.html#aed804747c45a7e1caf81461f9e45dd91">CallMethod0< T ></a>, <a class="el" href="classoperations__research_1_1PairNodeSwapActiveOperator.html#aed804747c45a7e1caf81461f9e45dd91">PairNodeSwapActiveOperator< swap_first ></a>, <a class="el" href="classoperations__research_1_1RelocateExpensiveChain.html#aed804747c45a7e1caf81461f9e45dd91">RelocateExpensiveChain</a>, <a class="el" href="classoperations__research_1_1FilteredHeuristicExpensiveChainLNSOperator.html#aed804747c45a7e1caf81461f9e45dd91">FilteredHeuristicExpensiveChainLNSOperator</a>, <a class="el" href="classoperations__research_1_1FilteredHeuristicPathLNSOperator.html#aed804747c45a7e1caf81461f9e45dd91">FilteredHeuristicPathLNSOperator</a>, <a class="el" href="classoperations__research_1_1IndexPairSwapActiveOperator.html#aed804747c45a7e1caf81461f9e45dd91">IndexPairSwapActiveOperator</a>, <a class="el" href="classoperations__research_1_1SwapIndexPairOperator.html#aed804747c45a7e1caf81461f9e45dd91">SwapIndexPairOperator</a>, <a class="el" href="classoperations__research_1_1PairExchangeRelocateOperator.html#aed804747c45a7e1caf81461f9e45dd91">PairExchangeRelocateOperator</a>, <a class="el" href="classoperations__research_1_1PairExchangeOperator.html#aed804747c45a7e1caf81461f9e45dd91">PairExchangeOperator</a>, <a class="el" href="classoperations__research_1_1LightPairRelocateOperator.html#aed804747c45a7e1caf81461f9e45dd91">LightPairRelocateOperator</a>, <a class="el" href="classoperations__research_1_1PairRelocateOperator.html#aed804747c45a7e1caf81461f9e45dd91">PairRelocateOperator</a>, <a class="el" href="classoperations__research_1_1MakePairInactiveOperator.html#aed804747c45a7e1caf81461f9e45dd91">MakePairInactiveOperator</a>, <a class="el" href="classoperations__research_1_1MakePairActiveOperator.html#aed804747c45a7e1caf81461f9e45dd91">MakePairActiveOperator</a>, and <a class="el" href="classoperations__research_1_1MakeRelocateNeighborsOperator.html#aed804747c45a7e1caf81461f9e45dd91">MakeRelocateNeighborsOperator</a>.</p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03108">3108</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a365797300972514a230eeb9e2f45f441"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a365797300972514a230eeb9e2f45f441">◆ </a></span>EndFail()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void EndFail </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>After completing the backtrack. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1ef0300d79ec636a79c06486f695b2ff"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1ef0300d79ec636a79c06486f695b2ff">◆ </a></span>EndInitialPropagation()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void EndInitialPropagation </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>After the initial propagation. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#afe2b705fd5af7c1c6812f69e9a9dcdf1">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ab472eccafac416112828cde24cefb907"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ab472eccafac416112828cde24cefb907">◆ </a></span>EndNextDecision()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void EndNextDecision </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1DecisionBuilder.html">DecisionBuilder</a> *const </td>
|
|
<td class="paramname"><em>b</em>, </td>
|
|
</tr>
|
|
<tr>
|
|
<td class="paramkey"></td>
|
|
<td></td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const </td>
|
|
<td class="paramname"><em>d</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">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>After calling <a class="el" href="classoperations__research_1_1DecisionBuilder.html#a68bbb37d42da9d7b82145b3bf435dbc3" title="This is the main method of the decision builder class.">DecisionBuilder::Next</a>, along with the returned decision. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a27bff456d096558a8be08ca6fee989f2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a27bff456d096558a8be08ca6fee989f2">◆ </a></span>EnterSearch()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void EnterSearch </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Beginning of the search. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLimit.html#a0c955ff1b2eae2daece0f25f1e57fb16">SearchLimit</a>, <a class="el" href="classoperations__research_1_1OptimizeVar.html#a0c955ff1b2eae2daece0f25f1e57fb16">OptimizeVar</a>, <a class="el" href="classoperations__research_1_1SolutionCollector.html#a0c955ff1b2eae2daece0f25f1e57fb16">SolutionCollector</a>, and <a class="el" href="classoperations__research_1_1SearchLog.html#a0c955ff1b2eae2daece0f25f1e57fb16">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a19bef8716e7418748ef666b07b09c25d"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a19bef8716e7418748ef666b07b09c25d">◆ </a></span>ExitSearch()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void ExitSearch </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>End of the search. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1RegularLimit.html#a4d07aaa3fe401d52e938c2f8f7f2e26f">RegularLimit</a>, and <a class="el" href="classoperations__research_1_1SearchLog.html#a4d07aaa3fe401d52e938c2f8f7f2e26f">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a16adaa01a30033dfc04405c25b7ede7b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a16adaa01a30033dfc04405c25b7ede7b">◆ </a></span>Install()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void Install </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Registers itself on the solver such that it gets notified of the search and propagation events. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1LocalSearchMonitor.html#a127c860aa3b5024666f308c553edf2a5">LocalSearchMonitor</a>, and <a class="el" href="classoperations__research_1_1PropagationMonitor.html#a127c860aa3b5024666f308c553edf2a5">PropagationMonitor</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a198e17615278d9d5b9f39e4f0493447b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a198e17615278d9d5b9f39e4f0493447b">◆ </a></span>IsUncheckedSolutionLimitReached()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual bool IsUncheckedSolutionLimitReached </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns true if the limit of solutions has been reached including unchecked solutions. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1RegularLimit.html#a1d6a0a8f90a9b39efbd6b00994d212c8">RegularLimit</a>.</p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03658">3658</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="ad6087c8c2f28d22ff19052db7c0045cf"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ad6087c8c2f28d22ff19052db7c0045cf">◆ </a></span>LocalOptimum()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual bool LocalOptimum </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>When a local optimum is reached. </p>
|
|
<p>If 'true' is returned, the last solution is discarded and the search proceeds with the next one. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a6c85276e75542eb410f09b0ccd78379b"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a6c85276e75542eb410f09b0ccd78379b">◆ </a></span>NoMoreSolutions()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void NoMoreSolutions </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>When the search tree is finished. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#a970b194bb0e12ae42db1f1b3ca7ba43e">SearchLog</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a1fc71393e20b97540f90702601b75fe1"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a1fc71393e20b97540f90702601b75fe1">◆ </a></span>PeriodicCheck()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void PeriodicCheck </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Periodic call to check limits in long running methods. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLimit.html#a310e97cfc134567a740679be9186e194">SearchLimit</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a2ebc7607687823d65bf65f331c9ac246"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a2ebc7607687823d65bf65f331c9ac246">◆ </a></span>ProgressPercent()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual int ProgressPercent </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Returns a percentage representing the propress of the search before reaching limits. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1RegularLimit.html#a7dae7731e3aee0f21059730b01aaaf51">RegularLimit</a>.</p>
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03667">3667</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a150f3693eacbeff5fcf5fb1ab954d11e"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a150f3693eacbeff5fcf5fb1ab954d11e">◆ </a></span>RefuteDecision()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void RefuteDecision </td>
|
|
<td>(</td>
|
|
<td class="paramtype"><a class="el" href="classoperations__research_1_1Decision.html">Decision</a> *const </td>
|
|
<td class="paramname"><em>d</em></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Before refuting the decision. </p>
|
|
|
|
<p>Reimplemented in <a class="el" href="classoperations__research_1_1SearchLog.html#a363e3361f6a6b52343e69cbff81deff5">SearchLog</a>, <a class="el" href="classoperations__research_1_1SearchLimit.html#acdef27972648252e66630c3b078aa962">SearchLimit</a>, and <a class="el" href="classoperations__research_1_1OptimizeVar.html#acdef27972648252e66630c3b078aa962">OptimizeVar</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a262b3b6ef45475daffd66c5ada5dfdd2"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a262b3b6ef45475daffd66c5ada5dfdd2">◆ </a></span>RestartSearch()</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">virtual void RestartSearch </td>
|
|
<td>(</td>
|
|
<td class="paramname"></td><td>)</td>
|
|
<td></td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p>Restart the search. </p>
|
|
|
|
</div>
|
|
</div>
|
|
<a id="a5f32c22c620c811754ba7b6f977db864"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#a5f32c22c620c811754ba7b6f977db864">◆ </a></span>solver()</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_1Solver.html">Solver</a>* solver </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="constraint__solver_8h_source.html#l03660">3660</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<h2 class="groupheader">Member Data Documentation</h2>
|
|
<a id="ae01b186f0d4be993cdabb7fb50bb98bd"></a>
|
|
<h2 class="memtitle"><span class="permalink"><a href="#ae01b186f0d4be993cdabb7fb50bb98bd">◆ </a></span>kNoProgress</h2>
|
|
|
|
<div class="memitem">
|
|
<div class="memproto">
|
|
<table class="mlabels">
|
|
<tr>
|
|
<td class="mlabels-left">
|
|
<table class="memname">
|
|
<tr>
|
|
<td class="memname">const int kNoProgress = -1</td>
|
|
</tr>
|
|
</table>
|
|
</td>
|
|
<td class="mlabels-right">
|
|
<span class="mlabels"><span class="mlabel">static</span></span> </td>
|
|
</tr>
|
|
</table>
|
|
</div><div class="memdoc">
|
|
|
|
<p class="definition">Definition at line <a class="el" href="constraint__solver_8h_source.html#l03589">3589</a> of file <a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a>.</p>
|
|
|
|
</div>
|
|
</div>
|
|
<hr/>The documentation for this class was generated from the following file:<ul>
|
|
<li><a class="el" href="constraint__solver_8h_source.html">constraint_solver.h</a></li>
|
|
</ul>
|
|
</div><!-- contents -->
|
|
</div>
|
|
</div>
|
|
<div id="footer-container">
|
|
<div id="footer">
|
|
</div>
|
|
</div>
|
|
</body>
|
|
</html>
|