📄 easylocal_h-source.html
字号:
<a name="l00817"></a><a class="code" href="class_easylocal__Solver.html#n0">00817</a> Input* p_in;
<a name="l00818"></a><a class="code" href="class_easylocal__Solver.html#n1">00818</a> Output* p_out;
00819 };
00820
00825 template <class Input, class Output, class State>
<a name="l00826"></a><a class="code" href="class_easylocal__LocalSearchSolver.html">00826</a> <font class="keyword">class </font>LocalSearchSolver : <font class="keyword">public</font> Solver<Input, Output>
00827 {<font class="keyword">public</font>:
00828 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#a0">SetInitTrials</a>(<font class="keywordtype">int</font> t);
00829 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#a1">Solve</a>();
00834 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#a2">ReSolve</a>();
00835 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#a3">MultiStartSolve</a>(<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> n);
00836 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#a4">SetInput</a>(Input* in);
00837 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#a5">Check</a>();
00838 fvalue <a class="code" href="class_easylocal__LocalSearchSolver.html#a6">InternalStateCost</a>();
00839 <font class="keyword">protected</font>:
00840 <a class="code" href="class_easylocal__LocalSearchSolver.html#b0">LocalSearchSolver</a>(StateManager<Input,State>* sm,
00841 OutputManager<Input,Output,State>* om, Input* in = NULL, Output* out = NULL);
00846 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#b1">Run</a>() = 0;
00848 <font class="keyword">virtual</font> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#b2">NumberOfIterations</a>() <font class="keyword">const</font> = 0;
00849 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#b3">DeliverOutput</a>();
00850 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#b4">FindInitialState</a>();
00851 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__LocalSearchSolver.html#b5">ComputeCost</a>();
<a name="l00852"></a><a class="code" href="class_easylocal__LocalSearchSolver.html#n0">00852</a> StateManager<Input,State>* p_sm;
<a name="l00854"></a><a class="code" href="class_easylocal__LocalSearchSolver.html#n1">00854</a> OutputManager<Input,Output,State>* p_om;
<a name="l00856"></a><a class="code" href="class_easylocal__LocalSearchSolver.html#n2">00856</a> fvalue internal_state_cost;
<a name="l00857"></a><a class="code" href="class_easylocal__LocalSearchSolver.html#n3">00857</a> State internal_state;
<a name="l00858"></a><a class="code" href="class_easylocal__LocalSearchSolver.html#n4">00858</a> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> number_of_init_trials;
00860 };
00861
00866 template <class Input, class Output, class State>
<a name="l00867"></a><a class="code" href="class_easylocal__SimpleLocalSearch.html">00867</a> <font class="keyword">class </font>SimpleLocalSearch : <font class="keyword">public</font> LocalSearchSolver<Input,Output,State>
00868 {
00869 <font class="keyword">public</font>:
00870 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__SimpleLocalSearch.html#a0">SetRunner</a>(Runner<Input,State> *r);
00871 <font class="keyword">protected</font>:
00872 <a class="code" href="class_easylocal__SimpleLocalSearch.html#b0">SimpleLocalSearch</a>(StateManager<Input,State>* sm,
00873 OutputManager<Input,Output,State>* om,
00874 Runner<Input,State>* r, Input* in = NULL, Output* out = NULL);
00875 <a class="code" href="class_easylocal__SimpleLocalSearch.html#b0">SimpleLocalSearch</a>(StateManager<Input,State>* sm,
00876 OutputManager<Input,Output,State>* om, Input* in = NULL, Output* out = NULL);
00877 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__SimpleLocalSearch.html#b2">Run</a>();
00878 <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="class_easylocal__SimpleLocalSearch.html#b3">NumberOfIterations</a>() <font class="keyword">const</font>;
<a name="l00879"></a><a class="code" href="class_easylocal__SimpleLocalSearch.html#n0">00879</a> Runner<Input,State>* p_runner;
00880 };
00881
00882
00886 template <class Input, class Output, class State>
<a name="l00887"></a><a class="code" href="class_easylocal__MultiRunnerSolver.html">00887</a> <font class="keyword">class </font>MultiRunnerSolver : <font class="keyword">public</font> LocalSearchSolver<Input,Output,State>
00888 {
00889 <font class="keyword">public</font>:
00890 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__MultiRunnerSolver.html#a0">ClearRunners</a>();
00891 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__MultiRunnerSolver.html#a1">AddRunner</a>(Runner<Input,State> *r);
00892 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__MultiRunnerSolver.html#a2">SetRunner</a>(Runner<Input,State> *r, <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> i);
00893 <font class="keyword">protected</font>:
00894 <a class="code" href="class_easylocal__MultiRunnerSolver.html#b0">MultiRunnerSolver</a>(StateManager<Input,State>* sm,
00895 OutputManager<Input,Output,State>* om, Input* in = NULL, Output* out = NULL);
00896 <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> <a class="code" href="class_easylocal__MultiRunnerSolver.html#b1">NumberOfIterations</a>() <font class="keyword">const</font>;
<a name="l00897"></a><a class="code" href="class_easylocal__MultiRunnerSolver.html#n0">00897</a> <font class="keywordtype">unsigned</font> <font class="keywordtype">long</font> total_iterations;
<a name="l00900"></a><a class="code" href="class_easylocal__MultiRunnerSolver.html#n1">00900</a> <font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> start_runner;
<a name="l00902"></a><a class="code" href="class_easylocal__MultiRunnerSolver.html#n2">00902</a> std::vector<Runner<Input,State>* > runners;
00904 };
00905
00910 template <class Input, class Output, class State>
<a name="l00911"></a><a class="code" href="class_easylocal__ComparativeSolver.html">00911</a> <font class="keyword">class </font>ComparativeSolver : <font class="keyword">public</font> MultiRunnerSolver<Input,Output,State>
00912 {
00913 <font class="keyword">protected</font>:
<a name="l00922"></a><a class="code" href="class_easylocal__ComparativeSolver.html#b0">00922</a> <a class="code" href="class_easylocal__ComparativeSolver.html#b0">ComparativeSolver</a>(StateManager<Input,State>* sm,
00923 OutputManager<Input,Output,State>* om,
00924 Input* in = NULL, Output* out = NULL)
00925 : MultiRunnerSolver<Input,Output,State>(sm,om,in,out) {}
00926 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__ComparativeSolver.html#b1">Run</a>();
<a name="l00927"></a><a class="code" href="class_easylocal__ComparativeSolver.html#n0">00927</a> State start_state;
00929 };
00930
00935 template <class Input, class Output, class State>
<a name="l00936"></a><a class="code" href="class_easylocal__TokenRingSolver.html">00936</a> <font class="keyword">class </font>TokenRingSolver : <font class="keyword">public</font> MultiRunnerSolver<Input,Output,State>
00937 {<font class="keyword">public</font>:
00938 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__TokenRingSolver.html#a0">SetRounds</a>(<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> r);
00939 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__TokenRingSolver.html#a1">SetStartRunner</a>(<font class="keywordtype">unsigned</font> <font class="keywordtype">int</font> sr);
00940 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__TokenRingSolver.html#a2">Check</a>();
00941 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__TokenRingSolver.html#a3">Print</a>(std::ostream& os = std::cout) <font class="keyword">const</font>;
00942 <font class="keyword">protected</font>:
00943 <a class="code" href="class_easylocal__TokenRingSolver.html#b0">TokenRingSolver</a>(StateManager<Input,State>* sm,
00944 OutputManager<Input,Output,State>* om, Input* in = NULL, Output* out = NULL);
00945 <font class="comment">// Run all runners circularly on the same thread</font>
00946 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__TokenRingSolver.html#b1">Run</a>();
<a name="l00947"></a><a class="code" href="class_easylocal__TokenRingSolver.html#n0">00947</a> <font class="keywordtype">int</font> max_idle_rounds;
00949 <font class="comment">// unsigned int start_runner;</font>
00950 };
00951
00964 template <class Input, class Output, class State>
<a name="l00965"></a><a class="code" href="class_easylocal__AbstractMoveTester.html">00965</a> <font class="keyword">class </font>AbstractMoveTester
00966 {
00967 <font class="keyword">public</font>:
00968 <a class="code" href="class_easylocal__AbstractMoveTester.html#a0">AbstractMoveTester</a>(std::string s);
<a name="l00970"></a><a class="code" href="class_easylocal__AbstractMoveTester.html#a1">00970</a> <font class="keyword">virtual</font> <a class="code" href="class_easylocal__AbstractMoveTester.html#a1">~AbstractMoveTester</a>()<font class="keyword"> </font>{}
00971 std::string <a class="code" href="class_easylocal__AbstractMoveTester.html#a2">Name</a>();
00975 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__AbstractMoveTester.html#a3">RunTestMenu</a>(State& st) = 0;
00980 <font class="keyword">virtual</font> <font class="keywordtype">void</font> <a class="code" href="class_easylocal__AbstractMoveTester.html#a4">SetInput</a>(Input* in) = 0;
00981 <font class="keyword">protected</font>:
<a name="l00982"></a><a class="code" href="class_easylocal__AbstractMoveTester.html#n0">00982</a> std::string name;
00983 };
00984
00989 template <class Input, class Output, class State, class Move>
<a name="l00990"></a><a class="code" href="class_easylocal__MoveTester.html">00990</a> <font class="keyword">class </font>MoveTester : <font class="keyword">public</font> AbstractMoveTester<Input,Output,State>
00991 {
00992 <font class="keyword">public</font>:
00993 <a class="code" href="class_easylocal__MoveTester.html#a0">MoveTester</a>(StateManager<Input,State>* sm, OutputManager<Input,Output,State>* om, NeighborhoodExplorer<Input,State,Move>* ne, std::string nm, Input* in = NULL);
00994 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__MoveTester.html#a1">RunTestMenu</a>(State& st);
00995 <font class="keywordtype">void</font> <a class="code" href="class_easylocal__MoveTester
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -