class_easylocal__neighborhoodexplorer.html
来自「一个tabu search算法框架」· HTML 代码 · 共 1,464 行 · 第 1/4 页
HTML
1,464 行
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Checks wether the object state is consistent with all the related objects.
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l00674">674</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>. </td>
</tr>
</table>
<a name="a12" doxytag="easylocal::NeighborhoodExplorer::DeltaCostFunction"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
fvalue easylocal::NeighborhoodExplorer< Input, State, Move >::DeltaCostFunction (
</b></td>
<td valign="bottom"><b>
const State & <em>st</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const Move & <em>mv</em> )<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Evaluates the variation of the cost function obtainted by applying the move to the given state. The tentative definition computes a weighted sum of the variation of the violations function and of the difference in the objective function.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>st</em>
</td><td>
the start state </td></tr>
<tr><td valign=top><em>mv</em>
</td><td>
the move </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
the variation in the cost function </dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l00404">404</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.
<p>
Referenced by <a class="el" href="EasyLocalTemplates_cpp-source.html#l00427">BestMove</a>(), <a class="el" href="EasyLocalTemplates_cpp-source.html#l00547">BestNonProhibitedMove</a>(), <a class="el" href="EasyLocalTemplates_cpp-source.html#l00459">NeighborhoodStatistics</a>(), <a class="el" href="EasyLocalTemplates_cpp-source.html#l00631">PrintMoveInfo</a>(), <a class="el" href="EasyLocalTemplates_cpp-source.html#l00514">SampleMove</a>(), and <a class="el" href="EasyLocalTemplates_cpp-source.html#l00590">SampleNonProhibitedMove</a>(). </td>
</tr>
</table>
<a name="b2" doxytag="easylocal::NeighborhoodExplorer::DeltaObjective"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
fvalue easylocal::NeighborhoodExplorer< Input, State, Move >::DeltaObjective (
</b></td>
<td valign="bottom"><b>
const State & <em>st</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const Move & <em>mv</em> )<code> [protected, virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Evaluates the variation of the objective function obtained by performing a move in a given state. The tentative definition simply makes the move and invokes the companion <a class="el" href="class_easylocal__StateManager.html">StateManager</a> method (Objective) on the initial and on the final state.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>st</em>
</td><td>
the state </td></tr>
<tr><td valign=top><em>mv</em>
</td><td>
the move to evaluate </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
the difference in the objective function induced by the move mv </dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l00708">708</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.
<p>
Referenced by <a class="el" href="EasyLocalTemplates_cpp-source.html#l00404">DeltaCostFunction</a>(), and <a class="el" href="EasyLocalTemplates_cpp-source.html#l00631">PrintMoveInfo</a>(). </td>
</tr>
</table>
<a name="b3" doxytag="easylocal::NeighborhoodExplorer::DeltaViolations"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
fvalue easylocal::NeighborhoodExplorer< Input, State, Move >::DeltaViolations (
</b></td>
<td valign="bottom"><b>
const State & <em>st</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const Move & <em>mv</em> )<code> [protected, virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Evaluates the variation of the violations function obtained by performing a move in a given state. The tentative definition simply makes the move and invokes the companion <a class="el" href="class_easylocal__StateManager.html">StateManager</a> method (Violations) on the initial and on the final state.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>st</em>
</td><td>
the state </td></tr>
<tr><td valign=top><em>mv</em>
</td><td>
the move to evaluate </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
the difference in the violations function induced by the move mv </dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l00689">689</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.
<p>
Referenced by <a class="el" href="EasyLocalTemplates_cpp-source.html#l00404">DeltaCostFunction</a>(), and <a class="el" href="EasyLocalTemplates_cpp-source.html#l00631">PrintMoveInfo</a>(). </td>
</tr>
</table>
<a name="a9" doxytag="easylocal::NeighborhoodExplorer::FeasibleMove"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
bool easylocal::NeighborhoodExplorer<Input, State, Move>::FeasibleMove (
</b></td>
<td valign="bottom"><b>
const State & <em>st</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
const Move <em>mv</em> )<code> [inline, virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
States whether a move is feasible or not in a given state. For default it acceptsall the moves as feasible ones, but it can be overwritten by the user.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>st</em>
</td><td>
the start state </td></tr>
<tr><td valign=top><em>mv</em>
</td><td>
the move to check for feasibility </td></tr>
</table>
</dl><dl compact><dt>
<b>Returns: </b><dd>
true if the move is feasible in st, false otherwise </dl>
<p>
Definition at line <a class="el" href="EasyLocal_h-source.html#l00371">371</a> of file <a class="el" href="EasyLocal_h-source.html">EasyLocal.h</a>. </td>
</tr>
</table>
<a name="a1" doxytag="easylocal::NeighborhoodExplorer::FirstMove"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
void easylocal::NeighborhoodExplorer< Input, State, Move >::FirstMove (
</b></td>
<td valign="bottom"><b>
const State & <em>st</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
Move & <em>mv</em> )<code> [virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Generates the first move in the exploration of the neighborhood of a given state. By default, it invokes the RandomMove function and records mv as start move.<dl compact><dt>
<b>Parameters: </b><dd>
<table border=0 cellspacing=2 cellpadding=0>
<tr><td valign=top><em>st</em>
</td><td>
the state </td></tr>
</table>
</dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l00498">498</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>.
<p>
Referenced by <a class="el" href="EasyLocalTemplates_cpp-source.html#l00427">BestMove</a>(), <a class="el" href="EasyLocalTemplates_cpp-source.html#l00547">BestNonProhibitedMove</a>(), and <a class="el" href="EasyLocalTemplates_cpp-source.html#l00459">NeighborhoodStatistics</a>(). </td>
</tr>
</table>
<a name="a17" doxytag="easylocal::NeighborhoodExplorer::GetInput"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
Input * easylocal::NeighborhoodExplorer< Input, State, Move >::GetInput (
</b></td>
<td valign="bottom"><b>
)
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Returns the input pointer which the object is attached to.
<p>
<dl compact><dt>
<b>Returns: </b><dd>
the pointer to the input. </dl>
<p>
Definition at line <a class="el" href="EasyLocalTemplates_cpp-source.html#l00666">666</a> of file <a class="el" href="EasyLocalTemplates_cpp-source.html">EasyLocalTemplates.cpp</a>. </td>
</tr>
</table>
<a name="a15" doxytag="easylocal::NeighborhoodExplorer::InputMove"></a><p>
<table width="100%" cellpadding="2" cellspacing="0" border="0">
<tr>
<td class="md">
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td colspan="2"><b>
template<class Input, class State, class Move> </b></td>
</tr>
<tr>
<td nowrap valign="top"><b>
void easylocal::NeighborhoodExplorer<Input, State, Move>::InputMove (
</b></td>
<td valign="bottom"><b>
const State & <em>st</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
Move & <em>mv</em>,
</b></td>
</tr>
<tr>
<td></td>
<td><b>
std::istream & <em>is</em> = std::cin ) const<code> [inline, virtual]</code>
</b></td>
</tr>
</table>
</td>
</tr>
</table>
<table cellspacing=5 cellpadding=0 border=0>
<tr>
<td>
</td>
<td>
<p>
Prompts for reading a move in the neighborhood of a given state from an input stream.<dl compact><dt>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?