completed doc
git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@665 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
parent
0ee27a6c9d
commit
abc68c9e88
184 changed files with 13542 additions and 0 deletions
136
trunk/paradiseo-peo/doc/html/Lesson1_2main_8cpp-source.html
Normal file
136
trunk/paradiseo-peo/doc/html/Lesson1_2main_8cpp-source.html
Normal file
|
|
@ -0,0 +1,136 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: main.cpp Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>main.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* </span>
|
||||
<a name="l00002"></a>00002 <span class="comment">* <main.cpp></span>
|
||||
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007</span>
|
||||
<a name="l00004"></a>00004 <span class="comment">* (C) OPAC Team, LIFL, 2002-2007</span>
|
||||
<a name="l00005"></a>00005 <span class="comment">*</span>
|
||||
<a name="l00006"></a>00006 <span class="comment">* Sebastien Cahon, Alexandru-Adrian Tantar</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*</span>
|
||||
<a name="l00008"></a>00008 <span class="comment">* This software is governed by the CeCILL license under French law and</span>
|
||||
<a name="l00009"></a>00009 <span class="comment">* abiding by the rules of distribution of free software. You can use,</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">* modify and/ or redistribute the software under the terms of the CeCILL</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">* license as circulated by CEA, CNRS and INRIA at the following URL</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">* "http://www.cecill.info".</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">*</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">* As a counterpart to the access to the source code and rights to copy,</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">* modify and redistribute granted by the license, users are provided only</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">* with a limited warranty and the software's author, the holder of the</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">* economic rights, and the successive licensors have only limited liability.</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">*</span>
|
||||
<a name="l00019"></a>00019 <span class="comment">* In this respect, the user's attention is drawn to the risks associated</span>
|
||||
<a name="l00020"></a>00020 <span class="comment">* with loading, using, modifying and/or developing or reproducing the</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">* software by the user in light of its specific status of free software,</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">* that may mean that it is complicated to manipulate, and that also</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">* therefore means that it is reserved for developers and experienced</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">* professionals having in-depth computer knowledge. Users are therefore</span>
|
||||
<a name="l00025"></a>00025 <span class="comment">* encouraged to load and test the software's suitability as regards their</span>
|
||||
<a name="l00026"></a>00026 <span class="comment">* requirements in conditions enabling the security of their systems and/or</span>
|
||||
<a name="l00027"></a>00027 <span class="comment">* data to be ensured and, more generally, to use and operate it in the</span>
|
||||
<a name="l00028"></a>00028 <span class="comment">* same conditions as regards security.</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">* The fact that you are presently reading this means that you have had</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">* knowledge of the CeCILL license and that you accept its terms.</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">*</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">* ParadisEO WebSite : http://paradiseo.gforge.inria.fr</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">* Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">*</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">*/</span>
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#include "route.h"</span>
|
||||
<a name="l00038"></a>00038 <span class="preprocessor">#include "route_init.h"</span>
|
||||
<a name="l00039"></a>00039 <span class="preprocessor">#include "route_eval.h"</span>
|
||||
<a name="l00040"></a>00040
|
||||
<a name="l00041"></a>00041 <span class="preprocessor">#include "order_xover.h"</span>
|
||||
<a name="l00042"></a>00042 <span class="preprocessor">#include "city_swap.h"</span>
|
||||
<a name="l00043"></a>00043
|
||||
<a name="l00044"></a>00044 <span class="preprocessor">#include "param.h"</span>
|
||||
<a name="l00045"></a>00045
|
||||
<a name="l00046"></a>00046 <span class="preprocessor">#include <peo></span>
|
||||
<a name="l00047"></a>00047
|
||||
<a name="l00048"></a>00048
|
||||
<a name="l00049"></a>00049 <span class="preprocessor">#define POP_SIZE 10</span>
|
||||
<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor">#define NUM_GEN 100</span>
|
||||
<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#define CROSS_RATE 1.0</span>
|
||||
<a name="l00052"></a>00052 <span class="preprocessor"></span><span class="preprocessor">#define MUT_RATE 0.01</span>
|
||||
<a name="l00053"></a>00053 <span class="preprocessor"></span>
|
||||
<a name="l00054"></a>00054
|
||||
<a name="l00055"></a>00055 <span class="keywordtype">int</span> main( <span class="keywordtype">int</span> __argc, <span class="keywordtype">char</span>** __argv ) {
|
||||
<a name="l00056"></a>00056
|
||||
<a name="l00057"></a>00057 <span class="comment">// initializing the ParadisEO-PEO environment</span>
|
||||
<a name="l00058"></a>00058 <a class="code" href="namespacepeo.html#8184c3b1f7eecc68f69bb8e8b872a7d3">peo :: init</a>( __argc, __argv );
|
||||
<a name="l00059"></a>00059
|
||||
<a name="l00060"></a>00060
|
||||
<a name="l00061"></a>00061 <span class="comment">// processing the command line specified parameters</span>
|
||||
<a name="l00062"></a>00062 <a class="code" href="namespacepeo.html#2b496ee9b81d9ae322ae6edb9a93dc71">loadParameters</a>( __argc, __argv );
|
||||
<a name="l00063"></a>00063
|
||||
<a name="l00064"></a>00064
|
||||
<a name="l00065"></a>00065 <span class="comment">// init, eval operators, EA operators -------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00066"></a>00066
|
||||
<a name="l00067"></a>00067 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00068"></a>00068 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> full_eval; <span class="comment">// evaluator object - offers a fitness value for a specified Route object</span>
|
||||
<a name="l00069"></a>00069
|
||||
<a name="l00070"></a>00070 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_order_xover.html">OrderXover</a> crossover; <span class="comment">// crossover operator - creates two offsprings out of two specified parents</span>
|
||||
<a name="l00071"></a>00071 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html">CitySwap</a> mutation; <span class="comment">// mutation operator - randomly mutates one gene for a specified individual</span>
|
||||
<a name="l00072"></a>00072 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00073"></a>00073
|
||||
<a name="l00074"></a>00074
|
||||
<a name="l00075"></a>00075 <span class="comment">// evolutionary algorithm components --------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00076"></a>00076
|
||||
<a name="l00077"></a>00077 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> population( POP_SIZE, route_init ); <span class="comment">// initial population for the algorithm having POP_SIZE individuals</span>
|
||||
<a name="l00078"></a>00078 <a class="code" href="classpeoSeqPopEval.html">peoSeqPopEval< Route ></a> eaPopEval( full_eval ); <span class="comment">// evaluator object - to be applied at each iteration on the entire population</span>
|
||||
<a name="l00079"></a>00079
|
||||
<a name="l00080"></a>00080 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_gen_continue.html">eoGenContinue< Route ></a> eaCont( NUM_GEN ); <span class="comment">// continuation criterion - the algorithm will iterate for NUM_GEN generations</span>
|
||||
<a name="l00081"></a>00081 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_check_point.html">eoCheckPoint< Route ></a> eaCheckpointContinue( eaCont ); <span class="comment">// checkpoint object - verify at each iteration if the continuation criterion is met</span>
|
||||
<a name="l00082"></a>00082
|
||||
<a name="l00083"></a>00083 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_ranking_select.html">eoRankingSelect< Route ></a> selectionStrategy; <span class="comment">// selection strategy - applied at each iteration for selecting parent individuals</span>
|
||||
<a name="l00084"></a>00084 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> eaSelect( selectionStrategy, POP_SIZE ); <span class="comment">// selection object - POP_SIZE individuals are selected at each iteration</span>
|
||||
<a name="l00085"></a>00085
|
||||
<a name="l00086"></a>00086 <span class="comment">// transform operator - includes the crossover and the mutation operators with a specified associated rate</span>
|
||||
<a name="l00087"></a>00087 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_s_g_a_transform.html">eoSGATransform< Route ></a> transform( crossover, CROSS_RATE, mutation, MUT_RATE );
|
||||
<a name="l00088"></a>00088 <a class="code" href="classpeoSeqTransform.html">peoSeqTransform< Route ></a> eaTransform( transform ); <span class="comment">// ParadisEO transform operator (please remark the peo prefix) - wraps an e EO transform object</span>
|
||||
<a name="l00089"></a>00089
|
||||
<a name="l00090"></a>00090 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> eaReplace; <span class="comment">// replacement strategy - for replacing the initial population with offspring individuals</span>
|
||||
<a name="l00091"></a>00091 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00092"></a>00092
|
||||
<a name="l00093"></a>00093
|
||||
<a name="l00094"></a>00094 <span class="comment">// ParadisEO-PEO evolutionary algorithm -----------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00095"></a>00095
|
||||
<a name="l00096"></a>00096 <a class="code" href="classpeoEA.html">peoEA< Route ></a> eaAlg( eaCheckpointContinue, eaPopEval, eaSelect, eaTransform, eaReplace );
|
||||
<a name="l00097"></a>00097
|
||||
<a name="l00098"></a>00098 eaAlg( population ); <span class="comment">// specifying the initial population for the algorithm, to be iteratively evolved</span>
|
||||
<a name="l00099"></a>00099 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00100"></a>00100
|
||||
<a name="l00101"></a>00101
|
||||
<a name="l00102"></a>00102 <a class="code" href="namespacepeo.html#10819b2d60b37477c6a89b60c595c67c">peo :: run</a>( );
|
||||
<a name="l00103"></a>00103 <a class="code" href="namespacepeo.html#f90478489cc92d1e6abb222179163a30">peo :: finalize</a>( );
|
||||
<a name="l00104"></a>00104 <span class="comment">// shutting down the ParadisEO-PEO environment</span>
|
||||
<a name="l00105"></a>00105
|
||||
<a name="l00106"></a>00106 <span class="keywordflow">return</span> 0;
|
||||
<a name="l00107"></a>00107 }
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
168
trunk/paradiseo-peo/doc/html/Lesson2_2main_8cpp-source.html
Normal file
168
trunk/paradiseo-peo/doc/html/Lesson2_2main_8cpp-source.html
Normal file
|
|
@ -0,0 +1,168 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: main.cpp Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>main.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* </span>
|
||||
<a name="l00002"></a>00002 <span class="comment">* <main.cpp></span>
|
||||
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007</span>
|
||||
<a name="l00004"></a>00004 <span class="comment">* (C) OPAC Team, LIFL, 2002-2007</span>
|
||||
<a name="l00005"></a>00005 <span class="comment">*</span>
|
||||
<a name="l00006"></a>00006 <span class="comment">* Sebastien Cahon, Alexandru-Adrian Tantar</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*</span>
|
||||
<a name="l00008"></a>00008 <span class="comment">* This software is governed by the CeCILL license under French law and</span>
|
||||
<a name="l00009"></a>00009 <span class="comment">* abiding by the rules of distribution of free software. You can use,</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">* modify and/ or redistribute the software under the terms of the CeCILL</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">* license as circulated by CEA, CNRS and INRIA at the following URL</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">* "http://www.cecill.info".</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">*</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">* As a counterpart to the access to the source code and rights to copy,</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">* modify and redistribute granted by the license, users are provided only</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">* with a limited warranty and the software's author, the holder of the</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">* economic rights, and the successive licensors have only limited liability.</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">*</span>
|
||||
<a name="l00019"></a>00019 <span class="comment">* In this respect, the user's attention is drawn to the risks associated</span>
|
||||
<a name="l00020"></a>00020 <span class="comment">* with loading, using, modifying and/or developing or reproducing the</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">* software by the user in light of its specific status of free software,</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">* that may mean that it is complicated to manipulate, and that also</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">* therefore means that it is reserved for developers and experienced</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">* professionals having in-depth computer knowledge. Users are therefore</span>
|
||||
<a name="l00025"></a>00025 <span class="comment">* encouraged to load and test the software's suitability as regards their</span>
|
||||
<a name="l00026"></a>00026 <span class="comment">* requirements in conditions enabling the security of their systems and/or</span>
|
||||
<a name="l00027"></a>00027 <span class="comment">* data to be ensured and, more generally, to use and operate it in the</span>
|
||||
<a name="l00028"></a>00028 <span class="comment">* same conditions as regards security.</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">* The fact that you are presently reading this means that you have had</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">* knowledge of the CeCILL license and that you accept its terms.</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">*</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">* ParadisEO WebSite : http://paradiseo.gforge.inria.fr</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">* Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">*</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">*/</span>
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#include "route.h"</span>
|
||||
<a name="l00038"></a>00038 <span class="preprocessor">#include "route_init.h"</span>
|
||||
<a name="l00039"></a>00039 <span class="preprocessor">#include "route_eval.h"</span>
|
||||
<a name="l00040"></a>00040
|
||||
<a name="l00041"></a>00041 <span class="preprocessor">#include "order_xover.h"</span>
|
||||
<a name="l00042"></a>00042 <span class="preprocessor">#include "city_swap.h"</span>
|
||||
<a name="l00043"></a>00043
|
||||
<a name="l00044"></a>00044 <span class="preprocessor">#include "param.h"</span>
|
||||
<a name="l00045"></a>00045
|
||||
<a name="l00046"></a>00046 <span class="preprocessor">#include "merge_route_eval.h"</span>
|
||||
<a name="l00047"></a>00047 <span class="preprocessor">#include "part_route_eval.h"</span>
|
||||
<a name="l00048"></a>00048
|
||||
<a name="l00049"></a>00049
|
||||
<a name="l00050"></a>00050 <span class="preprocessor">#include <peo></span>
|
||||
<a name="l00051"></a>00051
|
||||
<a name="l00052"></a>00052
|
||||
<a name="l00053"></a>00053 <span class="preprocessor">#define POP_SIZE 10</span>
|
||||
<a name="l00054"></a>00054 <span class="preprocessor"></span><span class="preprocessor">#define NUM_GEN 100</span>
|
||||
<a name="l00055"></a>00055 <span class="preprocessor"></span><span class="preprocessor">#define CROSS_RATE 1.0</span>
|
||||
<a name="l00056"></a>00056 <span class="preprocessor"></span><span class="preprocessor">#define MUT_RATE 0.01</span>
|
||||
<a name="l00057"></a>00057 <span class="preprocessor"></span>
|
||||
<a name="l00058"></a>00058 <span class="preprocessor">#define NUM_PART_EVALS 2</span>
|
||||
<a name="l00059"></a>00059 <span class="preprocessor"></span>
|
||||
<a name="l00060"></a>00060
|
||||
<a name="l00061"></a>00061 <span class="comment">// by default, parallel evaluation of the population is performed;</span>
|
||||
<a name="l00062"></a>00062 <span class="comment">// for parallel fitness evaluation, uncomment the following line</span>
|
||||
<a name="l00063"></a>00063
|
||||
<a name="l00064"></a>00064 <span class="comment">// #define PARALLEL_FIT_EVALUATION</span>
|
||||
<a name="l00065"></a>00065
|
||||
<a name="l00066"></a>00066
|
||||
<a name="l00067"></a>00067 <span class="keywordtype">int</span> main( <span class="keywordtype">int</span> __argc, <span class="keywordtype">char</span>** __argv ) {
|
||||
<a name="l00068"></a>00068
|
||||
<a name="l00069"></a>00069 <span class="comment">// initializing the ParadisEO-PEO environment</span>
|
||||
<a name="l00070"></a>00070 <a class="code" href="namespacepeo.html#8184c3b1f7eecc68f69bb8e8b872a7d3">peo :: init</a>( __argc, __argv );
|
||||
<a name="l00071"></a>00071
|
||||
<a name="l00072"></a>00072
|
||||
<a name="l00073"></a>00073 <span class="comment">// processing the command line specified parameters</span>
|
||||
<a name="l00074"></a>00074 <a class="code" href="namespacepeo.html#2b496ee9b81d9ae322ae6edb9a93dc71">loadParameters</a>( __argc, __argv );
|
||||
<a name="l00075"></a>00075
|
||||
<a name="l00076"></a>00076
|
||||
<a name="l00077"></a>00077 <span class="comment">// init, eval operators, EA operators -------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00078"></a>00078
|
||||
<a name="l00079"></a>00079 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00080"></a>00080 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> full_eval; <span class="comment">// evaluator object - offers a fitness value for a specified Route object</span>
|
||||
<a name="l00081"></a>00081
|
||||
<a name="l00082"></a>00082 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_order_xover.html">OrderXover</a> crossover; <span class="comment">// crossover operator - creates two offsprings out of two specified parents</span>
|
||||
<a name="l00083"></a>00083 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html">CitySwap</a> mutation; <span class="comment">// mutation operator - randomly mutates one gene for a specified individual</span>
|
||||
<a name="l00084"></a>00084 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00085"></a>00085
|
||||
<a name="l00086"></a>00086
|
||||
<a name="l00087"></a>00087 <span class="comment">// evolutionary algorithm components --------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00088"></a>00088
|
||||
<a name="l00089"></a>00089 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> population( POP_SIZE, route_init ); <span class="comment">// initial population for the algorithm having POP_SIZE individuals</span>
|
||||
<a name="l00090"></a>00090
|
||||
<a name="l00091"></a>00091
|
||||
<a name="l00092"></a>00092 <span class="preprocessor"> #ifdef PARALLEL_FIT_EVALUATION</span>
|
||||
<a name="l00093"></a>00093 <span class="preprocessor"></span>
|
||||
<a name="l00094"></a>00094 <a class="code" href="classMergeRouteEval.html">MergeRouteEval</a> merge_eval;
|
||||
<a name="l00095"></a>00095
|
||||
<a name="l00096"></a>00096 std :: vector< eoEvalFunc< Route >* > part_eval;
|
||||
<a name="l00097"></a>00097 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> index = 1; index <= NUM_PART_EVALS; index++ )
|
||||
<a name="l00098"></a>00098 part_eval.push_back( <span class="keyword">new</span> <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_part_route_eval.html">PartRouteEval</a>( ( <span class="keywordtype">float</span> )( index - 1 ) / NUM_PART_EVALS, ( <span class="keywordtype">float</span> )index / NUM_PART_EVALS ) );
|
||||
<a name="l00099"></a>00099
|
||||
<a name="l00100"></a>00100 <a class="code" href="classpeoParaPopEval.html">peoParaPopEval< Route ></a> ox_pop_eval( part_eval, merge_eval );
|
||||
<a name="l00101"></a>00101
|
||||
<a name="l00102"></a>00102 <span class="preprocessor"> #else</span>
|
||||
<a name="l00103"></a>00103 <span class="preprocessor"></span>
|
||||
<a name="l00104"></a>00104 <a class="code" href="classpeoParaPopEval.html">peoParaPopEval< Route ></a> ox_pop_eval( full_eval );
|
||||
<a name="l00105"></a>00105
|
||||
<a name="l00106"></a>00106 <span class="preprocessor"> #endif</span>
|
||||
<a name="l00107"></a>00107 <span class="preprocessor"></span>
|
||||
<a name="l00108"></a>00108
|
||||
<a name="l00109"></a>00109
|
||||
<a name="l00110"></a>00110 <a class="code" href="classpeoParaPopEval.html">peoParaPopEval< Route ></a> eaPopEval( full_eval ); <span class="comment">// evaluator object - to be applied at each iteration on the entire population</span>
|
||||
<a name="l00111"></a>00111
|
||||
<a name="l00112"></a>00112 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_gen_continue.html">eoGenContinue< Route ></a> eaCont( NUM_GEN ); <span class="comment">// continuation criterion - the algorithm will iterate for NUM_GEN generations</span>
|
||||
<a name="l00113"></a>00113 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_check_point.html">eoCheckPoint< Route ></a> eaCheckpointContinue( eaCont ); <span class="comment">// checkpoint object - verify at each iteration if the continuation criterion is met</span>
|
||||
<a name="l00114"></a>00114
|
||||
<a name="l00115"></a>00115 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_ranking_select.html">eoRankingSelect< Route ></a> selectionStrategy; <span class="comment">// selection strategy - applied at each iteration for selecting parent individuals</span>
|
||||
<a name="l00116"></a>00116 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> eaSelect( selectionStrategy, POP_SIZE ); <span class="comment">// selection object - POP_SIZE individuals are selected at each iteration</span>
|
||||
<a name="l00117"></a>00117
|
||||
<a name="l00118"></a>00118 <span class="comment">// transform operator - includes the crossover and the mutation operators with a specified associated rate</span>
|
||||
<a name="l00119"></a>00119 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_s_g_a_transform.html">eoSGATransform< Route ></a> transform( crossover, CROSS_RATE, mutation, MUT_RATE );
|
||||
<a name="l00120"></a>00120 <a class="code" href="classpeoSeqTransform.html">peoSeqTransform< Route ></a> eaTransform( transform ); <span class="comment">// ParadisEO transform operator (please remark the peo prefix) - wraps an e EO transform object</span>
|
||||
<a name="l00121"></a>00121
|
||||
<a name="l00122"></a>00122 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> eaReplace; <span class="comment">// replacement strategy - for replacing the initial population with offspring individuals</span>
|
||||
<a name="l00123"></a>00123 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00124"></a>00124
|
||||
<a name="l00125"></a>00125
|
||||
<a name="l00126"></a>00126 <span class="comment">// ParadisEO-PEO evolutionary algorithm -----------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00127"></a>00127
|
||||
<a name="l00128"></a>00128 <a class="code" href="classpeoEA.html">peoEA< Route ></a> eaAlg( eaCheckpointContinue, eaPopEval, eaSelect, eaTransform, eaReplace );
|
||||
<a name="l00129"></a>00129
|
||||
<a name="l00130"></a>00130 eaAlg( population ); <span class="comment">// specifying the initial population for the algorithm, to be iteratively evolved</span>
|
||||
<a name="l00131"></a>00131 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00132"></a>00132
|
||||
<a name="l00133"></a>00133
|
||||
<a name="l00134"></a>00134 <a class="code" href="namespacepeo.html#10819b2d60b37477c6a89b60c595c67c">peo :: run</a>( );
|
||||
<a name="l00135"></a>00135 <a class="code" href="namespacepeo.html#f90478489cc92d1e6abb222179163a30">peo :: finalize</a>( );
|
||||
<a name="l00136"></a>00136 <span class="comment">// shutting down the ParadisEO-PEO environment</span>
|
||||
<a name="l00137"></a>00137
|
||||
<a name="l00138"></a>00138 <span class="keywordflow">return</span> 0;
|
||||
<a name="l00139"></a>00139 }
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
217
trunk/paradiseo-peo/doc/html/Lesson3_2main_8cpp-source.html
Normal file
217
trunk/paradiseo-peo/doc/html/Lesson3_2main_8cpp-source.html
Normal file
|
|
@ -0,0 +1,217 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: main.cpp Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>main.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* </span>
|
||||
<a name="l00002"></a>00002 <span class="comment">* <main.cpp></span>
|
||||
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007</span>
|
||||
<a name="l00004"></a>00004 <span class="comment">* (C) OPAC Team, LIFL, 2002-2007</span>
|
||||
<a name="l00005"></a>00005 <span class="comment">*</span>
|
||||
<a name="l00006"></a>00006 <span class="comment">* Sebastien Cahon, Alexandru-Adrian Tantar</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*</span>
|
||||
<a name="l00008"></a>00008 <span class="comment">* This software is governed by the CeCILL license under French law and</span>
|
||||
<a name="l00009"></a>00009 <span class="comment">* abiding by the rules of distribution of free software. You can use,</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">* modify and/ or redistribute the software under the terms of the CeCILL</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">* license as circulated by CEA, CNRS and INRIA at the following URL</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">* "http://www.cecill.info".</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">*</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">* As a counterpart to the access to the source code and rights to copy,</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">* modify and redistribute granted by the license, users are provided only</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">* with a limited warranty and the software's author, the holder of the</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">* economic rights, and the successive licensors have only limited liability.</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">*</span>
|
||||
<a name="l00019"></a>00019 <span class="comment">* In this respect, the user's attention is drawn to the risks associated</span>
|
||||
<a name="l00020"></a>00020 <span class="comment">* with loading, using, modifying and/or developing or reproducing the</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">* software by the user in light of its specific status of free software,</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">* that may mean that it is complicated to manipulate, and that also</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">* therefore means that it is reserved for developers and experienced</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">* professionals having in-depth computer knowledge. Users are therefore</span>
|
||||
<a name="l00025"></a>00025 <span class="comment">* encouraged to load and test the software's suitability as regards their</span>
|
||||
<a name="l00026"></a>00026 <span class="comment">* requirements in conditions enabling the security of their systems and/or</span>
|
||||
<a name="l00027"></a>00027 <span class="comment">* data to be ensured and, more generally, to use and operate it in the</span>
|
||||
<a name="l00028"></a>00028 <span class="comment">* same conditions as regards security.</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">* The fact that you are presently reading this means that you have had</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">* knowledge of the CeCILL license and that you accept its terms.</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">*</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">* ParadisEO WebSite : http://paradiseo.gforge.inria.fr</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">* Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">*</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">*/</span>
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#include "route.h"</span>
|
||||
<a name="l00038"></a>00038 <span class="preprocessor">#include "route_init.h"</span>
|
||||
<a name="l00039"></a>00039 <span class="preprocessor">#include "route_eval.h"</span>
|
||||
<a name="l00040"></a>00040
|
||||
<a name="l00041"></a>00041 <span class="preprocessor">#include "order_xover.h"</span>
|
||||
<a name="l00042"></a>00042 <span class="preprocessor">#include "city_swap.h"</span>
|
||||
<a name="l00043"></a>00043
|
||||
<a name="l00044"></a>00044 <span class="preprocessor">#include "param.h"</span>
|
||||
<a name="l00045"></a>00045
|
||||
<a name="l00046"></a>00046
|
||||
<a name="l00047"></a>00047 <span class="preprocessor">#include <peo></span>
|
||||
<a name="l00048"></a>00048
|
||||
<a name="l00049"></a>00049
|
||||
<a name="l00050"></a>00050 <span class="preprocessor">#define POP_SIZE 10</span>
|
||||
<a name="l00051"></a>00051 <span class="preprocessor"></span><span class="preprocessor">#define NUM_GEN 100</span>
|
||||
<a name="l00052"></a>00052 <span class="preprocessor"></span><span class="preprocessor">#define CROSS_RATE 1.0</span>
|
||||
<a name="l00053"></a>00053 <span class="preprocessor"></span><span class="preprocessor">#define MUT_RATE 0.01</span>
|
||||
<a name="l00054"></a>00054 <span class="preprocessor"></span>
|
||||
<a name="l00055"></a>00055 <span class="preprocessor">#define MIG_FREQ 10</span>
|
||||
<a name="l00056"></a>00056 <span class="preprocessor"></span><span class="preprocessor">#define MIG_SIZE 5</span>
|
||||
<a name="l00057"></a>00057 <span class="preprocessor"></span>
|
||||
<a name="l00058"></a>00058
|
||||
<a name="l00059"></a>00059 <span class="keywordtype">int</span> main( <span class="keywordtype">int</span> __argc, <span class="keywordtype">char</span>** __argv ) {
|
||||
<a name="l00060"></a>00060
|
||||
<a name="l00061"></a>00061 <span class="comment">// initializing the ParadisEO-PEO environment</span>
|
||||
<a name="l00062"></a>00062 <a class="code" href="namespacepeo.html#8184c3b1f7eecc68f69bb8e8b872a7d3">peo :: init</a>( __argc, __argv );
|
||||
<a name="l00063"></a>00063
|
||||
<a name="l00064"></a>00064
|
||||
<a name="l00065"></a>00065 <span class="comment">// processing the command line specified parameters</span>
|
||||
<a name="l00066"></a>00066 <a class="code" href="namespacepeo.html#2b496ee9b81d9ae322ae6edb9a93dc71">loadParameters</a>( __argc, __argv );
|
||||
<a name="l00067"></a>00067
|
||||
<a name="l00068"></a>00068
|
||||
<a name="l00069"></a>00069 <span class="comment">// init, eval operators, EA operators -------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00070"></a>00070
|
||||
<a name="l00071"></a>00071 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00072"></a>00072 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> full_eval; <span class="comment">// evaluator object - offers a fitness value for a specified Route object</span>
|
||||
<a name="l00073"></a>00073
|
||||
<a name="l00074"></a>00074 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_order_xover.html">OrderXover</a> crossover; <span class="comment">// crossover operator - creates two offsprings out of two specified parents</span>
|
||||
<a name="l00075"></a>00075 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html">CitySwap</a> mutation; <span class="comment">// mutation operator - randomly mutates one gene for a specified individual</span>
|
||||
<a name="l00076"></a>00076 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00077"></a>00077
|
||||
<a name="l00078"></a>00078
|
||||
<a name="l00079"></a>00079 <span class="comment">// evolutionary algorithm components --------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00080"></a>00080
|
||||
<a name="l00081"></a>00081 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> population( POP_SIZE, route_init ); <span class="comment">// initial population for the algorithm having POP_SIZE individuals</span>
|
||||
<a name="l00082"></a>00082 <a class="code" href="classpeoParaPopEval.html">peoParaPopEval< Route ></a> eaPopEval( full_eval ); <span class="comment">// evaluator object - to be applied at each iteration on the entire population</span>
|
||||
<a name="l00083"></a>00083
|
||||
<a name="l00084"></a>00084 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_gen_continue.html">eoGenContinue< Route ></a> eaCont( NUM_GEN ); <span class="comment">// continuation criterion - the algorithm will iterate for NUM_GEN generations</span>
|
||||
<a name="l00085"></a>00085 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_check_point.html">eoCheckPoint< Route ></a> eaCheckpointContinue( eaCont ); <span class="comment">// checkpoint object - verify at each iteration if the continuation criterion is met</span>
|
||||
<a name="l00086"></a>00086
|
||||
<a name="l00087"></a>00087 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_ranking_select.html">eoRankingSelect< Route ></a> selectionStrategy; <span class="comment">// selection strategy - applied at each iteration for selecting parent individuals</span>
|
||||
<a name="l00088"></a>00088 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> eaSelect( selectionStrategy, POP_SIZE ); <span class="comment">// selection object - POP_SIZE individuals are selected at each iteration</span>
|
||||
<a name="l00089"></a>00089
|
||||
<a name="l00090"></a>00090 <span class="comment">// transform operator - includes the crossover and the mutation operators with a specified associated rate</span>
|
||||
<a name="l00091"></a>00091 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_s_g_a_transform.html">eoSGATransform< Route ></a> transform( crossover, CROSS_RATE, mutation, MUT_RATE );
|
||||
<a name="l00092"></a>00092 <a class="code" href="classpeoSeqTransform.html">peoSeqTransform< Route ></a> eaTransform( transform ); <span class="comment">// ParadisEO transform operator (please remark the peo prefix) - wraps an e EO transform object</span>
|
||||
<a name="l00093"></a>00093
|
||||
<a name="l00094"></a>00094 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> eaReplace; <span class="comment">// replacement strategy - for replacing the initial population with offspring individuals</span>
|
||||
<a name="l00095"></a>00095 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00096"></a>00096
|
||||
<a name="l00097"></a>00097
|
||||
<a name="l00098"></a>00098
|
||||
<a name="l00099"></a>00099 <a class="code" href="classRingTopology.html">RingTopology</a> topology;
|
||||
<a name="l00100"></a>00100
|
||||
<a name="l00101"></a>00101 <span class="comment">// migration policy and components ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00102"></a>00102
|
||||
<a name="l00103"></a>00103 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_periodic_continue.html">eoPeriodicContinue< Route ></a> mig_cont( MIG_FREQ ); <span class="comment">// migration occurs periodically</span>
|
||||
<a name="l00104"></a>00104
|
||||
<a name="l00105"></a>00105 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_random_select.html">eoRandomSelect< Route ></a> mig_select_one; <span class="comment">// emigrants are randomly selected </span>
|
||||
<a name="l00106"></a>00106 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> mig_select( mig_select_one, MIG_SIZE );
|
||||
<a name="l00107"></a>00107
|
||||
<a name="l00108"></a>00108 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> mig_replace; <span class="comment">// immigrants replace the worse individuals</span>
|
||||
<a name="l00109"></a>00109
|
||||
<a name="l00110"></a>00110 <a class="code" href="classpeoSyncIslandMig.html">peoSyncIslandMig< Route ></a> mig( MIG_FREQ, mig_select, mig_replace, topology, population, population );
|
||||
<a name="l00111"></a>00111 <span class="comment">//peoAsyncIslandMig< Route > mig( mig_cont, mig_select, mig_replace, topology, population, population );</span>
|
||||
<a name="l00112"></a>00112
|
||||
<a name="l00113"></a>00113 eaCheckpointContinue.add( mig );
|
||||
<a name="l00114"></a>00114 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00115"></a>00115
|
||||
<a name="l00116"></a>00116
|
||||
<a name="l00117"></a>00117
|
||||
<a name="l00118"></a>00118
|
||||
<a name="l00119"></a>00119
|
||||
<a name="l00120"></a>00120 <span class="comment">// ParadisEO-PEO evolutionary algorithm -----------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00121"></a>00121
|
||||
<a name="l00122"></a>00122 <a class="code" href="classpeoEA.html">peoEA< Route ></a> eaAlg( eaCheckpointContinue, eaPopEval, eaSelect, eaTransform, eaReplace );
|
||||
<a name="l00123"></a>00123
|
||||
<a name="l00124"></a>00124 mig.setOwner( eaAlg );
|
||||
<a name="l00125"></a>00125
|
||||
<a name="l00126"></a>00126 eaAlg( population ); <span class="comment">// specifying the initial population for the algorithm, to be iteratively evolved</span>
|
||||
<a name="l00127"></a>00127 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00128"></a>00128
|
||||
<a name="l00129"></a>00129
|
||||
<a name="l00130"></a>00130
|
||||
<a name="l00131"></a>00131
|
||||
<a name="l00132"></a>00132 <span class="comment">// evolutionary algorithm components --------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00133"></a>00133
|
||||
<a name="l00134"></a>00134 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> population2( POP_SIZE, route_init ); <span class="comment">// initial population for the algorithm having POP_SIZE individuals</span>
|
||||
<a name="l00135"></a>00135 <a class="code" href="classpeoParaPopEval.html">peoParaPopEval< Route ></a> eaPopEval2( full_eval ); <span class="comment">// evaluator object - to be applied at each iteration on the entire population</span>
|
||||
<a name="l00136"></a>00136
|
||||
<a name="l00137"></a>00137 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_gen_continue.html">eoGenContinue< Route ></a> eaCont2( NUM_GEN ); <span class="comment">// continuation criterion - the algorithm will iterate for NUM_GEN generations</span>
|
||||
<a name="l00138"></a>00138 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_check_point.html">eoCheckPoint< Route ></a> eaCheckpointContinue2( eaCont2 ); <span class="comment">// checkpoint object - verify at each iteration if the continuation criterion is met</span>
|
||||
<a name="l00139"></a>00139
|
||||
<a name="l00140"></a>00140 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_ranking_select.html">eoRankingSelect< Route ></a> selectionStrategy2; <span class="comment">// selection strategy - applied at each iteration for selecting parent individuals</span>
|
||||
<a name="l00141"></a>00141 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> eaSelect2( selectionStrategy2, POP_SIZE ); <span class="comment">// selection object - POP_SIZE individuals are selected at each iteration</span>
|
||||
<a name="l00142"></a>00142
|
||||
<a name="l00143"></a>00143 <span class="comment">// transform operator - includes the crossover and the mutation operators with a specified associated rate</span>
|
||||
<a name="l00144"></a>00144 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_s_g_a_transform.html">eoSGATransform< Route ></a> transform2( crossover, CROSS_RATE, mutation, MUT_RATE );
|
||||
<a name="l00145"></a>00145 <a class="code" href="classpeoSeqTransform.html">peoSeqTransform< Route ></a> eaTransform2( transform2 ); <span class="comment">// ParadisEO transform operator (please remark the peo prefix) - wraps an e EO transform object</span>
|
||||
<a name="l00146"></a>00146
|
||||
<a name="l00147"></a>00147 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> eaReplace2; <span class="comment">// replacement strategy - for replacing the initial population with offspring individuals</span>
|
||||
<a name="l00148"></a>00148 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00149"></a>00149
|
||||
<a name="l00150"></a>00150
|
||||
<a name="l00151"></a>00151
|
||||
<a name="l00152"></a>00152
|
||||
<a name="l00153"></a>00153 <span class="comment">// migration policy and components ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00154"></a>00154
|
||||
<a name="l00155"></a>00155 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_periodic_continue.html">eoPeriodicContinue< Route ></a> mig_cont2( MIG_FREQ ); <span class="comment">// migration occurs periodically</span>
|
||||
<a name="l00156"></a>00156
|
||||
<a name="l00157"></a>00157 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_random_select.html">eoRandomSelect< Route ></a> mig_select_one2; <span class="comment">// emigrants are randomly selected </span>
|
||||
<a name="l00158"></a>00158 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> mig_select2( mig_select_one2, MIG_SIZE );
|
||||
<a name="l00159"></a>00159
|
||||
<a name="l00160"></a>00160 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> mig_replace2; <span class="comment">// immigrants replace the worse individuals</span>
|
||||
<a name="l00161"></a>00161
|
||||
<a name="l00162"></a>00162 <a class="code" href="classpeoSyncIslandMig.html">peoSyncIslandMig< Route ></a> mig2( MIG_FREQ, mig_select2, mig_replace2, topology, population2, population2 );
|
||||
<a name="l00163"></a>00163 <span class="comment">//peoAsyncIslandMig< Route > mig2( mig_cont2, mig_select2, mig_replace2, topology, population2, population2 );</span>
|
||||
<a name="l00164"></a>00164
|
||||
<a name="l00165"></a>00165 eaCheckpointContinue2.add( mig2 );
|
||||
<a name="l00166"></a>00166 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00167"></a>00167
|
||||
<a name="l00168"></a>00168
|
||||
<a name="l00169"></a>00169
|
||||
<a name="l00170"></a>00170
|
||||
<a name="l00171"></a>00171
|
||||
<a name="l00172"></a>00172 <span class="comment">// ParadisEO-PEO evolutionary algorithm -----------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00173"></a>00173
|
||||
<a name="l00174"></a>00174 <a class="code" href="classpeoEA.html">peoEA< Route ></a> eaAlg2( eaCheckpointContinue2, eaPopEval2, eaSelect2, eaTransform2, eaReplace2 );
|
||||
<a name="l00175"></a>00175
|
||||
<a name="l00176"></a>00176 mig2.setOwner( eaAlg2 );
|
||||
<a name="l00177"></a>00177
|
||||
<a name="l00178"></a>00178 eaAlg2( population2 ); <span class="comment">// specifying the initial population for the algorithm, to be iteratively evolved</span>
|
||||
<a name="l00179"></a>00179 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00180"></a>00180
|
||||
<a name="l00181"></a>00181
|
||||
<a name="l00182"></a>00182
|
||||
<a name="l00183"></a>00183 <a class="code" href="namespacepeo.html#10819b2d60b37477c6a89b60c595c67c">peo :: run</a>( );
|
||||
<a name="l00184"></a>00184 <a class="code" href="namespacepeo.html#f90478489cc92d1e6abb222179163a30">peo :: finalize</a>( );
|
||||
<a name="l00185"></a>00185 <span class="comment">// shutting down the ParadisEO-PEO environment</span>
|
||||
<a name="l00186"></a>00186
|
||||
<a name="l00187"></a>00187 <span class="keywordflow">return</span> 0;
|
||||
<a name="l00188"></a>00188 }
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,366 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: main.cpp Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>main.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// "main.cpp"</span>
|
||||
<a name="l00002"></a>00002
|
||||
<a name="l00003"></a>00003 <span class="comment">// (c) OPAC Team, LIFL, January 2006</span>
|
||||
<a name="l00004"></a>00004
|
||||
<a name="l00005"></a>00005 <span class="comment">/* </span>
|
||||
<a name="l00006"></a>00006 <span class="comment"> Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*/</span>
|
||||
<a name="l00008"></a>00008
|
||||
<a name="l00009"></a>00009 <span class="preprocessor">#include <eo></span>
|
||||
<a name="l00010"></a>00010 <span class="preprocessor">#include <paradiseo></span>
|
||||
<a name="l00011"></a>00011
|
||||
<a name="l00012"></a>00012 <span class="preprocessor">#include <peoParallelAlgorithmWrapper.h></span>
|
||||
<a name="l00013"></a>00013 <span class="preprocessor">#include <peoSynchronousMultiStart.h></span>
|
||||
<a name="l00014"></a>00014
|
||||
<a name="l00015"></a>00015
|
||||
<a name="l00016"></a>00016
|
||||
<a name="l00017"></a>00017 <span class="preprocessor">#include "route.h"</span>
|
||||
<a name="l00018"></a>00018 <span class="preprocessor">#include "route_init.h"</span>
|
||||
<a name="l00019"></a>00019 <span class="preprocessor">#include "route_eval.h"</span>
|
||||
<a name="l00020"></a>00020
|
||||
<a name="l00021"></a>00021 <span class="preprocessor">#include "order_xover.h"</span>
|
||||
<a name="l00022"></a>00022 <span class="preprocessor">#include "city_swap.h"</span>
|
||||
<a name="l00023"></a>00023
|
||||
<a name="l00024"></a>00024 <span class="preprocessor">#include "param.h"</span>
|
||||
<a name="l00025"></a>00025
|
||||
<a name="l00026"></a>00026
|
||||
<a name="l00027"></a>00027
|
||||
<a name="l00028"></a>00028
|
||||
<a name="l00029"></a>00029 <span class="preprocessor">#include <mo.h></span>
|
||||
<a name="l00030"></a>00030
|
||||
<a name="l00031"></a>00031 <span class="preprocessor">#include <graph.h></span>
|
||||
<a name="l00032"></a>00032 <span class="preprocessor">#include <route.h></span>
|
||||
<a name="l00033"></a>00033 <span class="preprocessor">#include <route_eval.h></span>
|
||||
<a name="l00034"></a>00034 <span class="preprocessor">#include <route_init.h></span>
|
||||
<a name="l00035"></a>00035
|
||||
<a name="l00036"></a>00036 <span class="preprocessor">#include <two_opt.h></span>
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#include <two_opt_init.h></span>
|
||||
<a name="l00038"></a>00038 <span class="preprocessor">#include <two_opt_next.h></span>
|
||||
<a name="l00039"></a>00039 <span class="preprocessor">#include <two_opt_incr_eval.h></span>
|
||||
<a name="l00040"></a>00040
|
||||
<a name="l00041"></a>00041
|
||||
<a name="l00042"></a>00042
|
||||
<a name="l00043"></a>00043 <span class="preprocessor">#define RANDOM_POP_SIZE 30</span>
|
||||
<a name="l00044"></a>00044 <span class="preprocessor"></span><span class="preprocessor">#define RANDOM_ITERATIONS 10</span>
|
||||
<a name="l00045"></a>00045 <span class="preprocessor"></span>
|
||||
<a name="l00046"></a>00046
|
||||
<a name="l00047"></a>00047 <span class="preprocessor">#define POP_SIZE 10</span>
|
||||
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#define NUM_GEN 100</span>
|
||||
<a name="l00049"></a>00049 <span class="preprocessor"></span><span class="preprocessor">#define CROSS_RATE 1.0</span>
|
||||
<a name="l00050"></a>00050 <span class="preprocessor"></span><span class="preprocessor">#define MUT_RATE 0.01</span>
|
||||
<a name="l00051"></a>00051 <span class="preprocessor"></span>
|
||||
<a name="l00052"></a>00052 <span class="preprocessor">#define NUMBER_OF_POPULATIONS 3</span>
|
||||
<a name="l00053"></a>00053 <span class="preprocessor"></span>
|
||||
<a name="l00054"></a>00054
|
||||
<a name="l00055"></a>00055
|
||||
<a name="l00056"></a><a class="code" href="structRandomExplorationAlgorithm.html">00056</a> <span class="keyword">struct </span><a class="code" href="structRandomExplorationAlgorithm.html">RandomExplorationAlgorithm</a> {
|
||||
<a name="l00057"></a>00057
|
||||
<a name="l00058"></a><a class="code" href="structRandomExplorationAlgorithm.html#ed4847c164759fbb1168948d3620037c">00058</a> <a class="code" href="structRandomExplorationAlgorithm.html#ed4847c164759fbb1168948d3620037c">RandomExplorationAlgorithm</a>( <a class="code" href="classpeoPopEval.html">peoPopEval< Route ></a>& __popEval, <a class="code" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< Route ></a>& extParallelExecution )
|
||||
<a name="l00059"></a>00059 : <a class="code" href="structRandomExplorationAlgorithm.html#e9fbab7402f290c62224cedebd9de0a4">popEval</a>( __popEval ), <a class="code" href="structRandomExplorationAlgorithm.html#e36e837e956772738773364cd71201de">parallelExecution</a>( extParallelExecution ) {
|
||||
<a name="l00060"></a>00060 }
|
||||
<a name="l00061"></a>00061
|
||||
<a name="l00062"></a>00062
|
||||
<a name="l00063"></a>00063 <span class="comment">// the sequential algorithm to be executed in parallel by the wrapper</span>
|
||||
<a name="l00064"></a><a class="code" href="structRandomExplorationAlgorithm.html#3a7b3cc174726fff45985854c3d1b812">00064</a> <span class="keywordtype">void</span> <a class="code" href="structRandomExplorationAlgorithm.html#3a7b3cc174726fff45985854c3d1b812">operator()</a>() {
|
||||
<a name="l00065"></a>00065
|
||||
<a name="l00066"></a>00066 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00067"></a>00067 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> route_eval;
|
||||
<a name="l00068"></a>00068 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> population( RANDOM_POP_SIZE, route_init );
|
||||
<a name="l00069"></a>00069
|
||||
<a name="l00070"></a>00070 <a class="code" href="structRandomExplorationAlgorithm.html#e9fbab7402f290c62224cedebd9de0a4">popEval</a>( population );
|
||||
<a name="l00071"></a>00071
|
||||
<a name="l00072"></a>00072
|
||||
<a name="l00073"></a>00073 <span class="comment">// executing HCs on the population in parallel</span>
|
||||
<a name="l00074"></a>00074 <a class="code" href="structRandomExplorationAlgorithm.html#e36e837e956772738773364cd71201de">parallelExecution</a>( population );
|
||||
<a name="l00075"></a>00075
|
||||
<a name="l00076"></a>00076
|
||||
<a name="l00077"></a>00077
|
||||
<a name="l00078"></a>00078 <span class="comment">// just to show off :: HCs on a vector of Route objects</span>
|
||||
<a name="l00079"></a>00079 {
|
||||
<a name="l00080"></a>00080 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a>* rVect = <span class="keyword">new</span> <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a>[ 5 ];
|
||||
<a name="l00081"></a>00081 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = 0; index < 5; index++ ) {
|
||||
<a name="l00082"></a>00082
|
||||
<a name="l00083"></a>00083 route_init( rVect[ index ] ); route_eval( rVect[ index ] );
|
||||
<a name="l00084"></a>00084 }
|
||||
<a name="l00085"></a>00085
|
||||
<a name="l00086"></a>00086 <span class="comment">// applying the HCs on the vector of Route objects</span>
|
||||
<a name="l00087"></a>00087 <a class="code" href="structRandomExplorationAlgorithm.html#e36e837e956772738773364cd71201de">parallelExecution</a>( rVect, rVect + 5 );
|
||||
<a name="l00088"></a>00088 <span class="keyword">delete</span>[] rVect;
|
||||
<a name="l00089"></a>00089 }
|
||||
<a name="l00090"></a>00090
|
||||
<a name="l00091"></a>00091
|
||||
<a name="l00092"></a>00092
|
||||
<a name="l00093"></a>00093 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> bestRoute = population.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html#bd89eb233cb6af943eab45f2533d06cf">best_element</a>();
|
||||
<a name="l00094"></a>00094
|
||||
<a name="l00095"></a>00095 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = 0; index < RANDOM_ITERATIONS; index++ ) {
|
||||
<a name="l00096"></a>00096
|
||||
<a name="l00097"></a>00097 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> routeIndex = 0; routeIndex < RANDOM_POP_SIZE; routeIndex++ ) {
|
||||
<a name="l00098"></a>00098
|
||||
<a name="l00099"></a>00099 route_init( population[ routeIndex ] );
|
||||
<a name="l00100"></a>00100 }
|
||||
<a name="l00101"></a>00101
|
||||
<a name="l00102"></a>00102 <a class="code" href="structRandomExplorationAlgorithm.html#e9fbab7402f290c62224cedebd9de0a4">popEval</a>( population );
|
||||
<a name="l00103"></a>00103
|
||||
<a name="l00104"></a>00104 <span class="keywordflow">if</span> ( fabs( population.best_element().fitness() ) < fabs( bestRoute.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/class_e_o.html#57d5610c9296eb927816a2f06bd00a08">fitness</a>() ) ) bestRoute = population.best_element();
|
||||
<a name="l00105"></a>00105
|
||||
<a name="l00106"></a>00106 std::cout << <span class="stringliteral">"Random Iteration #"</span> << index << <span class="stringliteral">"... [ "</span> << bestRoute.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/class_e_o.html#57d5610c9296eb927816a2f06bd00a08">fitness</a>() << <span class="stringliteral">" ]"</span> << std::flush << std::endl;
|
||||
<a name="l00107"></a>00107 }
|
||||
<a name="l00108"></a>00108 }
|
||||
<a name="l00109"></a>00109
|
||||
<a name="l00110"></a>00110
|
||||
<a name="l00111"></a><a class="code" href="structRandomExplorationAlgorithm.html#e9fbab7402f290c62224cedebd9de0a4">00111</a> <a class="code" href="classpeoPopEval.html">peoPopEval< Route ></a>& <a class="code" href="structRandomExplorationAlgorithm.html#e9fbab7402f290c62224cedebd9de0a4">popEval</a>;
|
||||
<a name="l00112"></a><a class="code" href="structRandomExplorationAlgorithm.html#e36e837e956772738773364cd71201de">00112</a> <a class="code" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< Route ></a>& <a class="code" href="structRandomExplorationAlgorithm.html#e36e837e956772738773364cd71201de">parallelExecution</a>;
|
||||
<a name="l00113"></a>00113 };
|
||||
<a name="l00114"></a>00114
|
||||
<a name="l00115"></a>00115
|
||||
<a name="l00116"></a>00116
|
||||
<a name="l00117"></a>00117
|
||||
<a name="l00118"></a>00118 <span class="keywordtype">int</span> main( <span class="keywordtype">int</span> __argc, <span class="keywordtype">char</span>** __argv ) {
|
||||
<a name="l00119"></a>00119
|
||||
<a name="l00120"></a>00120 srand( time(NULL) );
|
||||
<a name="l00121"></a>00121
|
||||
<a name="l00122"></a>00122
|
||||
<a name="l00123"></a>00123
|
||||
<a name="l00124"></a>00124 <span class="comment">// initializing the ParadisEO-PEO environment</span>
|
||||
<a name="l00125"></a>00125 <a class="code" href="namespacepeo.html#8184c3b1f7eecc68f69bb8e8b872a7d3">peo :: init</a>( __argc, __argv );
|
||||
<a name="l00126"></a>00126
|
||||
<a name="l00127"></a>00127
|
||||
<a name="l00128"></a>00128 <span class="comment">// processing the command line specified parameters</span>
|
||||
<a name="l00129"></a>00129 loadParameters( __argc, __argv );
|
||||
<a name="l00130"></a>00130
|
||||
<a name="l00131"></a>00131
|
||||
<a name="l00132"></a>00132
|
||||
<a name="l00133"></a>00133 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00134"></a>00134 <span class="comment">// #1 An EO evolutionary algorithm to be executed in parallel with other algorithms (no parallel evaluation, no etc.).</span>
|
||||
<a name="l00135"></a>00135
|
||||
<a name="l00136"></a>00136 <span class="comment">// init, eval operators, EA operators -------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00137"></a>00137 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00138"></a>00138 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> full_eval; <span class="comment">// evaluator object - offers a fitness value for a specified Route object</span>
|
||||
<a name="l00139"></a>00139
|
||||
<a name="l00140"></a>00140 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_order_xover.html">OrderXover</a> crossover; <span class="comment">// crossover operator - creates two offsprings out of two specified parents</span>
|
||||
<a name="l00141"></a>00141 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html">CitySwap</a> mutation; <span class="comment">// mutation operator - randomly mutates one gene for a specified individual</span>
|
||||
<a name="l00142"></a>00142 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00143"></a>00143
|
||||
<a name="l00144"></a>00144
|
||||
<a name="l00145"></a>00145 <span class="comment">// evolutionary algorithm components --------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00146"></a>00146
|
||||
<a name="l00147"></a>00147 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> population( POP_SIZE, route_init ); <span class="comment">// initial population for the algorithm having POP_SIZE individuals</span>
|
||||
<a name="l00148"></a>00148
|
||||
<a name="l00149"></a>00149 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_gen_continue.html">eoGenContinue< Route ></a> eaCont( NUM_GEN ); <span class="comment">// continuation criterion - the algorithm will iterate for NUM_GEN generations</span>
|
||||
<a name="l00150"></a>00150 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_check_point.html">eoCheckPoint< Route ></a> eaCheckpointContinue( eaCont ); <span class="comment">// checkpoint object - verify at each iteration if the continuation criterion is met</span>
|
||||
<a name="l00151"></a>00151
|
||||
<a name="l00152"></a>00152 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_ranking_select.html">eoRankingSelect< Route ></a> selectionStrategy; <span class="comment">// selection strategy - applied at each iteration for selecting parent individuals</span>
|
||||
<a name="l00153"></a>00153 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_select_number.html">eoSelectNumber< Route ></a> eaSelect( selectionStrategy, POP_SIZE ); <span class="comment">// selection object - POP_SIZE individuals are selected at each iteration</span>
|
||||
<a name="l00154"></a>00154
|
||||
<a name="l00155"></a>00155 <span class="comment">// transform operator - includes the crossover and the mutation operators with a specified associated rate</span>
|
||||
<a name="l00156"></a>00156 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_s_g_a_transform.html">eoSGATransform< Route ></a> transform( crossover, CROSS_RATE, mutation, MUT_RATE );
|
||||
<a name="l00157"></a>00157
|
||||
<a name="l00158"></a>00158 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_plus_replacement.html">eoPlusReplacement< Route ></a> eaReplace; <span class="comment">// replacement strategy - for replacing the initial population with offspring individuals</span>
|
||||
<a name="l00159"></a>00159 <span class="comment">// ------------------------------------------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00160"></a>00160
|
||||
<a name="l00161"></a>00161
|
||||
<a name="l00162"></a>00162
|
||||
<a name="l00163"></a>00163 <span class="comment">// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!</span>
|
||||
<a name="l00164"></a>00164 <span class="comment">// SEQENTIAL ALGORITHM DEFINITION -----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00165"></a>00165 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_easy_e_a.html">eoEasyEA< Route ></a> eaAlg( eaCheckpointContinue, full_eval, eaSelect, transform, eaReplace );
|
||||
<a name="l00166"></a>00166 <span class="comment">// SEQENTIAL ALGORITHM DEFINITION -----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00167"></a>00167
|
||||
<a name="l00168"></a>00168 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00169"></a>00169 <a class="code" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a> parallelEAAlg( eaAlg, population ); <span class="comment">// specifying the embedded algorithm and the algorithm input data</span>
|
||||
<a name="l00170"></a>00170 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00171"></a>00171 <span class="comment">// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!</span>
|
||||
<a name="l00172"></a>00172 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00173"></a>00173
|
||||
<a name="l00174"></a>00174
|
||||
<a name="l00175"></a>00175
|
||||
<a name="l00176"></a>00176
|
||||
<a name="l00177"></a>00177
|
||||
<a name="l00178"></a>00178 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00179"></a>00179 <span class="comment">// #2 A MO hill climbing to be executed in parallel with other algorithms (no parallel evaluation, no etc.).</span>
|
||||
<a name="l00180"></a>00180
|
||||
<a name="l00181"></a>00181 <span class="keywordflow">if</span> ( getNodeRank() == 1 ) {
|
||||
<a name="l00182"></a>00182
|
||||
<a name="l00183"></a>00183 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/namespace_graph.html#95f0bc08fa93f8f4abf1801674488b30">Graph::load</a>( __argv [ 1 ] );
|
||||
<a name="l00184"></a>00184 }
|
||||
<a name="l00185"></a>00185
|
||||
<a name="l00186"></a>00186 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> route;
|
||||
<a name="l00187"></a>00187 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> <a class="code" href="namespacepeo.html#8184c3b1f7eecc68f69bb8e8b872a7d3">init</a>; init( route );
|
||||
<a name="l00188"></a>00188 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> full_evalHC; full_evalHC( route );
|
||||
<a name="l00189"></a>00189
|
||||
<a name="l00190"></a>00190 <span class="keywordflow">if</span> ( getNodeRank() == 1 ) {
|
||||
<a name="l00191"></a>00191
|
||||
<a name="l00192"></a>00192 std :: cout << <span class="stringliteral">"[From] "</span> << route << std :: endl;
|
||||
<a name="l00193"></a>00193 }
|
||||
<a name="l00194"></a>00194
|
||||
<a name="l00195"></a>00195
|
||||
<a name="l00196"></a>00196 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_two_opt_init.html">TwoOptInit</a> two_opt_init;
|
||||
<a name="l00197"></a>00197 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_two_opt_next.html">TwoOptNext</a> two_opt_next;
|
||||
<a name="l00198"></a>00198 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_two_opt_incr_eval.html">TwoOptIncrEval</a> two_opt_incr_eval;
|
||||
<a name="l00199"></a>00199
|
||||
<a name="l00200"></a>00200 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/classmo_best_impr_select.html">moBestImprSelect< TwoOpt ></a> two_opt_select;
|
||||
<a name="l00201"></a>00201
|
||||
<a name="l00202"></a>00202
|
||||
<a name="l00203"></a>00203
|
||||
<a name="l00204"></a>00204 <span class="comment">// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!</span>
|
||||
<a name="l00205"></a>00205 <span class="comment">// SEQENTIAL ALGORITHM DEFINITION -----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00206"></a>00206 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/classmo_h_c.html">moHC< TwoOpt ></a> hill_climbing( two_opt_init, two_opt_next, two_opt_incr_eval, two_opt_select, full_evalHC );
|
||||
<a name="l00207"></a>00207 <span class="comment">// SEQENTIAL ALGORITHM DEFINITION -----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00208"></a>00208
|
||||
<a name="l00209"></a>00209 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00210"></a>00210 <a class="code" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a> parallelHillClimbing( hill_climbing, route ); <span class="comment">// specifying the embedded algorithm and the algorithm input data</span>
|
||||
<a name="l00211"></a>00211 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00212"></a>00212 <span class="comment">// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!</span>
|
||||
<a name="l00213"></a>00213 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00214"></a>00214
|
||||
<a name="l00215"></a>00215
|
||||
<a name="l00216"></a>00216
|
||||
<a name="l00217"></a>00217
|
||||
<a name="l00218"></a>00218
|
||||
<a name="l00219"></a>00219
|
||||
<a name="l00220"></a>00220 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00221"></a>00221 <span class="comment">// #3 A user defined algorithm to be executed in parallel with other algorithms - parallel evaluation and synchronous </span>
|
||||
<a name="l00222"></a>00222 <span class="comment">// multi-start of several hill-climbing algorithms (inside the user defined algorithm)!!.</span>
|
||||
<a name="l00223"></a>00223
|
||||
<a name="l00224"></a>00224 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> full_evalRandom;
|
||||
<a name="l00225"></a>00225 <a class="code" href="classpeoParaPopEval.html">peoParaPopEval< Route ></a> randomParaEval( full_evalRandom );
|
||||
<a name="l00226"></a>00226
|
||||
<a name="l00227"></a>00227
|
||||
<a name="l00228"></a>00228 <a class="code" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< Route ></a> parallelExecution( hill_climbing );
|
||||
<a name="l00229"></a>00229
|
||||
<a name="l00230"></a>00230 <a class="code" href="structRandomExplorationAlgorithm.html">RandomExplorationAlgorithm</a> randomExplorationAlgorithm( randomParaEval, parallelExecution );
|
||||
<a name="l00231"></a>00231
|
||||
<a name="l00232"></a>00232
|
||||
<a name="l00233"></a>00233 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00234"></a>00234 <a class="code" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a> parallelRandExp( randomExplorationAlgorithm ); <span class="comment">// specifying the embedded algorithm - no input data in this case</span>
|
||||
<a name="l00235"></a>00235
|
||||
<a name="l00236"></a>00236 randomParaEval.setOwner( parallelRandExp );
|
||||
<a name="l00237"></a>00237 parallelExecution.setOwner( parallelRandExp );
|
||||
<a name="l00238"></a>00238 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00239"></a>00239 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00240"></a>00240
|
||||
<a name="l00241"></a>00241
|
||||
<a name="l00242"></a>00242
|
||||
<a name="l00243"></a>00243
|
||||
<a name="l00244"></a>00244 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00245"></a>00245 <span class="comment">// #4 Synchronous Multi-Start: several hill-climbing algorithms launched in parallel on different initial solutions</span>
|
||||
<a name="l00246"></a>00246
|
||||
<a name="l00247"></a>00247 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> ex_hc_route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00248"></a>00248 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> ex_hc_full_eval; <span class="comment">// evaluator object - offers a fitness value for a specified Route object</span>
|
||||
<a name="l00249"></a>00249
|
||||
<a name="l00250"></a>00250 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop< Route ></a> ex_hc_population( POP_SIZE, ex_hc_route_init );
|
||||
<a name="l00251"></a>00251
|
||||
<a name="l00252"></a>00252 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = 0; index < POP_SIZE; index++ ) {
|
||||
<a name="l00253"></a>00253
|
||||
<a name="l00254"></a>00254 ex_hc_full_eval( ex_hc_population[ index ] );
|
||||
<a name="l00255"></a>00255 }
|
||||
<a name="l00256"></a>00256
|
||||
<a name="l00257"></a>00257
|
||||
<a name="l00258"></a>00258 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00259"></a>00259 <a class="code" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< Route ></a> ex_hc_parallelExecution( hill_climbing );
|
||||
<a name="l00260"></a>00260 <a class="code" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a> ex_hc_parallel( ex_hc_parallelExecution, ex_hc_population ); <span class="comment">// specifying the embedded algorithm - no input data in this case</span>
|
||||
<a name="l00261"></a>00261
|
||||
<a name="l00262"></a>00262 ex_hc_parallelExecution.setOwner( ex_hc_parallel );
|
||||
<a name="l00263"></a>00263 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00264"></a>00264 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00265"></a>00265
|
||||
<a name="l00266"></a>00266
|
||||
<a name="l00267"></a>00267
|
||||
<a name="l00268"></a>00268
|
||||
<a name="l00269"></a>00269
|
||||
<a name="l00270"></a>00270 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00271"></a>00271 <span class="comment">// #5 Synchronous Multi-Start: Multiple EO evolutionary algorithms to be executed in parallel</span>
|
||||
<a name="l00272"></a>00272 <span class="comment">// (inside different processes, on different populations; no parallel evaluation, no etc.).</span>
|
||||
<a name="l00273"></a>00273
|
||||
<a name="l00274"></a>00274 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_init.html">RouteInit</a> ex_route_init; <span class="comment">// random init object - creates random Route objects</span>
|
||||
<a name="l00275"></a>00275 <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_route_eval.html">RouteEval</a> ex_full_eval; <span class="comment">// evaluator object - offers a fitness value for a specified Route object</span>
|
||||
<a name="l00276"></a>00276
|
||||
<a name="l00277"></a>00277 std::vector< eoPop< Route > > ex_population;
|
||||
<a name="l00278"></a>00278 ex_population.resize( NUMBER_OF_POPULATIONS );
|
||||
<a name="l00279"></a>00279
|
||||
<a name="l00280"></a>00280 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> indexPop = 0; indexPop < NUMBER_OF_POPULATIONS; indexPop++ ) {
|
||||
<a name="l00281"></a>00281
|
||||
<a name="l00282"></a>00282 ex_population[ indexPop ].resize( POP_SIZE );
|
||||
<a name="l00283"></a>00283
|
||||
<a name="l00284"></a>00284 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = 0; index < POP_SIZE; index++ ) {
|
||||
<a name="l00285"></a>00285
|
||||
<a name="l00286"></a>00286 ex_route_init( ex_population[ indexPop ][ index ] );
|
||||
<a name="l00287"></a>00287 ex_full_eval( ex_population[ indexPop ][ index ] );
|
||||
<a name="l00288"></a>00288 }
|
||||
<a name="l00289"></a>00289 }
|
||||
<a name="l00290"></a>00290
|
||||
<a name="l00291"></a>00291
|
||||
<a name="l00292"></a>00292 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00293"></a>00293 <a class="code" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< eoPop< Route ></a> > ex_parallelExecution( eaAlg );
|
||||
<a name="l00294"></a>00294 <a class="code" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a> ex_parallel( ex_parallelExecution, ex_population ); <span class="comment">// specifying the embedded algorithm - no input data in this case</span>
|
||||
<a name="l00295"></a>00295
|
||||
<a name="l00296"></a>00296 ex_parallelExecution.setOwner( ex_parallel );
|
||||
<a name="l00297"></a>00297 <span class="comment">// SETTING UP THE PARALLEL WRAPPER ----------------------------------------------------------------------------------------------------------------</span>
|
||||
<a name="l00298"></a>00298 <span class="comment">// <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</span>
|
||||
<a name="l00299"></a>00299
|
||||
<a name="l00300"></a>00300
|
||||
<a name="l00301"></a>00301
|
||||
<a name="l00302"></a>00302
|
||||
<a name="l00303"></a>00303
|
||||
<a name="l00304"></a>00304
|
||||
<a name="l00305"></a>00305 <a class="code" href="namespacepeo.html#10819b2d60b37477c6a89b60c595c67c">peo :: run</a>( );
|
||||
<a name="l00306"></a>00306 <a class="code" href="namespacepeo.html#f90478489cc92d1e6abb222179163a30">peo :: finalize</a>( );
|
||||
<a name="l00307"></a>00307 <span class="comment">// shutting down the ParadisEO-PEO environment</span>
|
||||
<a name="l00308"></a>00308
|
||||
<a name="l00309"></a>00309
|
||||
<a name="l00310"></a>00310
|
||||
<a name="l00311"></a>00311 <span class="comment">// the algorithm is executed in the #1 rank process</span>
|
||||
<a name="l00312"></a>00312 <span class="keywordflow">if</span> ( getNodeRank() == 1 ) {
|
||||
<a name="l00313"></a>00313
|
||||
<a name="l00314"></a>00314 std :: cout << <span class="stringliteral">"[To] "</span> << route << std :: endl << std::endl;
|
||||
<a name="l00315"></a>00315
|
||||
<a name="l00316"></a>00316
|
||||
<a name="l00317"></a>00317 std :: cout << <span class="stringliteral">"Synchronous Multi-Start HCs:"</span> << std :: endl ;
|
||||
<a name="l00318"></a>00318 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = 0; index < POP_SIZE; index++ ) {
|
||||
<a name="l00319"></a>00319
|
||||
<a name="l00320"></a>00320 std::cout << ex_hc_population[ index ] << std::endl;
|
||||
<a name="l00321"></a>00321 }
|
||||
<a name="l00322"></a>00322 std::cout << std::endl << std::endl;
|
||||
<a name="l00323"></a>00323
|
||||
<a name="l00324"></a>00324
|
||||
<a name="l00325"></a>00325 std :: cout << <span class="stringliteral">"Synchronous Multi-Start EAs:"</span> << std :: endl ;
|
||||
<a name="l00326"></a>00326 <span class="keywordflow">for</span> ( <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> index = 0; index < NUMBER_OF_POPULATIONS; index++ ) {
|
||||
<a name="l00327"></a>00327
|
||||
<a name="l00328"></a>00328 std::cout << ex_population[ index ] << std::endl;
|
||||
<a name="l00329"></a>00329 }
|
||||
<a name="l00330"></a>00330 std::cout << std::endl << std::flush;
|
||||
<a name="l00331"></a>00331
|
||||
<a name="l00332"></a>00332 }
|
||||
<a name="l00333"></a>00333
|
||||
<a name="l00334"></a>00334
|
||||
<a name="l00335"></a>00335
|
||||
<a name="l00336"></a>00336 <span class="keywordflow">return</span> 0;
|
||||
<a name="l00337"></a>00337 }
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
107
trunk/paradiseo-peo/doc/html/README-source.html
Normal file
107
trunk/paradiseo-peo/doc/html/README-source.html
Normal file
|
|
@ -0,0 +1,107 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: README Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>README</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 PARADISEO-PEO README FILE
|
||||
<a name="l00002"></a>00002 =======================================================================
|
||||
<a name="l00003"></a>00003 <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/namespacedominance.html#01ead7419cb41bd6a8d7ea265dce1ce3">check</a> latest news at http:<span class="comment">//paradiseo.gforge.inria.fr/</span>
|
||||
<a name="l00004"></a>00004 =======================================================================
|
||||
<a name="l00005"></a>00005
|
||||
<a name="l00006"></a>00006 Welcome to ParadisEO-PEO, the Parallel Evolving Objects library.
|
||||
<a name="l00007"></a>00007 The latest news about ParadisEO-PEO can be found on the gforge repository at
|
||||
<a name="l00008"></a>00008 http:<span class="comment">//paradiseo.gforge.inria.fr/</span>
|
||||
<a name="l00009"></a>00009 In <span class="keywordflow">case</span> of any problem, please e-mail us at
|
||||
<a name="l00010"></a>00010 paradiseo-help@lists.gforge.inria.fr
|
||||
<a name="l00011"></a>00011
|
||||
<a name="l00012"></a>00012
|
||||
<a name="l00013"></a>00013 =======================================================================
|
||||
<a name="l00014"></a>00014 BUILDING PARADISEO-PEO
|
||||
<a name="l00015"></a>00015 =======================================================================
|
||||
<a name="l00016"></a>00016 The basic installation procedure goes the following.
|
||||
<a name="l00017"></a>00017
|
||||
<a name="l00018"></a>00018 To compile paradiseo-peo in the <span class="keywordflow">default</span> directory,
|
||||
<a name="l00019"></a>00019 go to paradiseo-peo/build/ and run:
|
||||
<a name="l00020"></a>00020 > cmake ../ -Dconfig=<path to the install.cmake file>
|
||||
<a name="l00021"></a>00021 > make
|
||||
<a name="l00022"></a>00022 <span class="comment">// for an easy-use of the provided lessons</span>
|
||||
<a name="l00023"></a>00023 > make install
|
||||
<a name="l00024"></a>00024 <span class="comment">// optional (if the documentation is not already available)</span>
|
||||
<a name="l00025"></a>00025 > make doc
|
||||
<a name="l00026"></a>00026
|
||||
<a name="l00027"></a>00027 To compile paradiseo-peo anywhere <span class="keywordflow">else</span>, simply run:
|
||||
<a name="l00028"></a>00028 > cmake $(PEO) -Dconfig=<path to the install.cmake file>
|
||||
<a name="l00029"></a>00029 > make
|
||||
<a name="l00030"></a>00030 <span class="comment">// for an easy-use of the provided lessons</span>
|
||||
<a name="l00031"></a>00031 > make install
|
||||
<a name="l00032"></a>00032 <span class="comment">// optional (if the documentation is not already available)</span>
|
||||
<a name="l00033"></a>00033 > make doc
|
||||
<a name="l00034"></a>00034
|
||||
<a name="l00035"></a>00035 To clean everything, simply run
|
||||
<a name="l00036"></a>00036 > make clean
|
||||
<a name="l00037"></a>00037
|
||||
<a name="l00038"></a>00038
|
||||
<a name="l00039"></a>00039 ===================================================================
|
||||
<a name="l00040"></a>00040 DIRECTORY STRUCTURE
|
||||
<a name="l00041"></a>00041 ===================================================================
|
||||
<a name="l00042"></a>00042 After unpacking the archive file, you should end up with the following
|
||||
<a name="l00043"></a>00043 structure:
|
||||
<a name="l00044"></a>00044
|
||||
<a name="l00045"></a>00045 .../ The main PARADISEO-PEO directory, created when unpacking.
|
||||
<a name="l00046"></a>00046 |
|
||||
<a name="l00047"></a>00047 +-- build BUILD directory that contains libraries and executable files.
|
||||
<a name="l00048"></a>00048 |
|
||||
<a name="l00049"></a>00049 +-- src SOURCE directory Contains most PARADISEO-PEO .h files.
|
||||
<a name="l00050"></a>00050 |
|
||||
<a name="l00051"></a>00051 +-- doc DOCUMENTATION directory (generated by Doxygen).
|
||||
<a name="l00052"></a>00052 | |
|
||||
<a name="l00053"></a>00053 | +- html HTML files - start at index.html.
|
||||
<a name="l00054"></a>00054 | |
|
||||
<a name="l00055"></a>00055 | +- latex latex files - use to generate Postcript doc.
|
||||
<a name="l00056"></a>00056 | |
|
||||
<a name="l00057"></a>00057 | +- man Unix man format documentation.
|
||||
<a name="l00058"></a>00058 |
|
||||
<a name="l00059"></a>00059 |
|
||||
<a name="l00060"></a>00060 +-- tutorial APPLICATIONS - one directory per separate application.
|
||||
<a name="l00061"></a>00061 |
|
||||
<a name="l00062"></a>00062 +-- examples Examples repository including source code shared by all or most of the included lessons.
|
||||
<a name="l00063"></a>00063 | |
|
||||
<a name="l00064"></a>00064 | +- tsp A Traveling Salesman Problem (TSP) example with benchmarks, the main operators, definitions, etc.
|
||||
<a name="l00065"></a>00065 |
|
||||
<a name="l00066"></a>00066 +-- Lesson1 A simple ParadisEO-PEO evolutionary algorithm example <span class="keyword">using</span> the <a class="code" href="classpeoEA.html">peoEA</a> <span class="keyword">class</span>.
|
||||
<a name="l00067"></a>00067 |
|
||||
<a name="l00068"></a>00068 +-- Lesson2 Example of an EA featuring a parallel evaluation of the population/parallel fitness function evaluation.
|
||||
<a name="l00069"></a>00069 |
|
||||
<a name="l00070"></a>00070 +-- Lesson3 Example of an asynchronous insular model including two evolutionary algorithms.
|
||||
<a name="l00071"></a>00071 |
|
||||
<a name="l00072"></a>00072 +-- Walkthrough Walkthrough ParadisEO-PEO features - EA+LS hybridization, parallelization, insular model.
|
||||
<a name="l00073"></a>00073
|
||||
<a name="l00074"></a>00074 ===================================================================
|
||||
<a name="l00075"></a>00075 NOTES
|
||||
<a name="l00076"></a>00076 ===================================================================
|
||||
<a name="l00077"></a>00077
|
||||
<a name="l00078"></a>00078 Mailing list : paradiseo-help@lists.gforge.inria.fr
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:46 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
78
trunk/paradiseo-peo/doc/html/city__swap_8cpp-source.html
Normal file
78
trunk/paradiseo-peo/doc/html/city__swap_8cpp-source.html
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: city_swap.cpp Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>city_swap.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* </span>
|
||||
<a name="l00002"></a>00002 <span class="comment">* <city_swap.cpp></span>
|
||||
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007</span>
|
||||
<a name="l00004"></a>00004 <span class="comment">* (C) OPAC Team, LIFL, 2002-2007</span>
|
||||
<a name="l00005"></a>00005 <span class="comment">*</span>
|
||||
<a name="l00006"></a>00006 <span class="comment">* Sebastien Cahon, Alexandru-Adrian Tantar</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*</span>
|
||||
<a name="l00008"></a>00008 <span class="comment">* This software is governed by the CeCILL license under French law and</span>
|
||||
<a name="l00009"></a>00009 <span class="comment">* abiding by the rules of distribution of free software. You can use,</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">* modify and/ or redistribute the software under the terms of the CeCILL</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">* license as circulated by CEA, CNRS and INRIA at the following URL</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">* "http://www.cecill.info".</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">*</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">* As a counterpart to the access to the source code and rights to copy,</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">* modify and redistribute granted by the license, users are provided only</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">* with a limited warranty and the software's author, the holder of the</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">* economic rights, and the successive licensors have only limited liability.</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">*</span>
|
||||
<a name="l00019"></a>00019 <span class="comment">* In this respect, the user's attention is drawn to the risks associated</span>
|
||||
<a name="l00020"></a>00020 <span class="comment">* with loading, using, modifying and/or developing or reproducing the</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">* software by the user in light of its specific status of free software,</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">* that may mean that it is complicated to manipulate, and that also</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">* therefore means that it is reserved for developers and experienced</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">* professionals having in-depth computer knowledge. Users are therefore</span>
|
||||
<a name="l00025"></a>00025 <span class="comment">* encouraged to load and test the software's suitability as regards their</span>
|
||||
<a name="l00026"></a>00026 <span class="comment">* requirements in conditions enabling the security of their systems and/or</span>
|
||||
<a name="l00027"></a>00027 <span class="comment">* data to be ensured and, more generally, to use and operate it in the</span>
|
||||
<a name="l00028"></a>00028 <span class="comment">* same conditions as regards security.</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">* The fact that you are presently reading this means that you have had</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">* knowledge of the CeCILL license and that you accept its terms.</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">*</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">* ParadisEO WebSite : http://paradiseo.gforge.inria.fr</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">* Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">*</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">*/</span>
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#include <utils/eoRNG.h></span>
|
||||
<a name="l00038"></a>00038
|
||||
<a name="l00039"></a>00039 <span class="preprocessor">#include "city_swap.h"</span>
|
||||
<a name="l00040"></a>00040
|
||||
<a name="l00041"></a>00041 <span class="keywordtype">bool</span> <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html#7e6958b62048c89604cbf046b86bdf2d">CitySwap :: operator () </a>(<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> & __route) {
|
||||
<a name="l00042"></a>00042
|
||||
<a name="l00043"></a>00043 std :: swap (__route [<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/namespaceeo.html#2727d901e79a00930492730539e3b644">rng</a>.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_rng.html#f0829d258c74cdc3a8f6cd72c0287cb4">random</a> (__route.size ())],
|
||||
<a name="l00044"></a>00044 __route [<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/namespaceeo.html#2727d901e79a00930492730539e3b644">rng</a>.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_rng.html#f0829d258c74cdc3a8f6cd72c0287cb4">random</a> (__route.size ())]) ;
|
||||
<a name="l00045"></a>00045
|
||||
<a name="l00046"></a>00046 __route.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/class_e_o.html#f57e9b0b1772446b12f97abfc0d64a59">invalidate</a> () ;
|
||||
<a name="l00047"></a>00047
|
||||
<a name="l00048"></a>00048 <span class="keywordflow">return</span> true ;
|
||||
<a name="l00049"></a>00049 }
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
81
trunk/paradiseo-peo/doc/html/city__swap_8h-source.html
Normal file
81
trunk/paradiseo-peo/doc/html/city__swap_8h-source.html
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: city_swap.h Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>city_swap.h</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* </span>
|
||||
<a name="l00002"></a>00002 <span class="comment">* <city_swap.h></span>
|
||||
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007</span>
|
||||
<a name="l00004"></a>00004 <span class="comment">* (C) OPAC Team, LIFL, 2002-2007</span>
|
||||
<a name="l00005"></a>00005 <span class="comment">*</span>
|
||||
<a name="l00006"></a>00006 <span class="comment">* Sebastien Cahon, Alexandru-Adrian Tantar</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*</span>
|
||||
<a name="l00008"></a>00008 <span class="comment">* This software is governed by the CeCILL license under French law and</span>
|
||||
<a name="l00009"></a>00009 <span class="comment">* abiding by the rules of distribution of free software. You can use,</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">* modify and/ or redistribute the software under the terms of the CeCILL</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">* license as circulated by CEA, CNRS and INRIA at the following URL</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">* "http://www.cecill.info".</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">*</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">* As a counterpart to the access to the source code and rights to copy,</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">* modify and redistribute granted by the license, users are provided only</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">* with a limited warranty and the software's author, the holder of the</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">* economic rights, and the successive licensors have only limited liability.</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">*</span>
|
||||
<a name="l00019"></a>00019 <span class="comment">* In this respect, the user's attention is drawn to the risks associated</span>
|
||||
<a name="l00020"></a>00020 <span class="comment">* with loading, using, modifying and/or developing or reproducing the</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">* software by the user in light of its specific status of free software,</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">* that may mean that it is complicated to manipulate, and that also</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">* therefore means that it is reserved for developers and experienced</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">* professionals having in-depth computer knowledge. Users are therefore</span>
|
||||
<a name="l00025"></a>00025 <span class="comment">* encouraged to load and test the software's suitability as regards their</span>
|
||||
<a name="l00026"></a>00026 <span class="comment">* requirements in conditions enabling the security of their systems and/or</span>
|
||||
<a name="l00027"></a>00027 <span class="comment">* data to be ensured and, more generally, to use and operate it in the</span>
|
||||
<a name="l00028"></a>00028 <span class="comment">* same conditions as regards security.</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">* The fact that you are presently reading this means that you have had</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">* knowledge of the CeCILL license and that you accept its terms.</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">*</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">* ParadisEO WebSite : http://paradiseo.gforge.inria.fr</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">* Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">*</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">*/</span>
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#ifndef city_swap_h</span>
|
||||
<a name="l00038"></a>00038 <span class="preprocessor"></span><span class="preprocessor">#define city_swap_h</span>
|
||||
<a name="l00039"></a>00039 <span class="preprocessor"></span>
|
||||
<a name="l00040"></a>00040 <span class="preprocessor">#include <eoOp.h></span>
|
||||
<a name="l00041"></a>00041
|
||||
<a name="l00042"></a>00042 <span class="preprocessor">#include "route.h"</span>
|
||||
<a name="l00043"></a>00043
|
||||
<a name="l00046"></a>00046 <span class="keyword">class </span><a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html">CitySwap</a> : <span class="keyword">public</span> <a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_mon_op.html">eoMonOp</a> <Route> {
|
||||
<a name="l00047"></a>00047
|
||||
<a name="l00048"></a>00048 <span class="keyword">public</span> :
|
||||
<a name="l00049"></a>00049
|
||||
<a name="l00050"></a>00050 <span class="keywordtype">bool</span> <a class="codeRef" doxygen="mo.doxytag:/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/" href="/data/OPAC/software/paradisEO/repository/paradiseo/trunk/paradiseo-peo/build/../../paradiseo-mo/build/doc/html/class_city_swap.html#7e6958b62048c89604cbf046b86bdf2d">operator () </a>(<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> & __route) ;
|
||||
<a name="l00051"></a>00051
|
||||
<a name="l00052"></a>00052 } ;
|
||||
<a name="l00053"></a>00053
|
||||
<a name="l00054"></a>00054 <span class="preprocessor">#endif</span>
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,47 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>DisplayBestRoute Member List</h1>This is the complete list of members for <a class="el" href="classDisplayBestRoute.html">DisplayBestRoute</a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html#d24e769249a861468a0c0e113d1208bb">addTo</a>(eoCheckPoint< EOT > &cp)</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html">eoUpdater</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html#362659613082a328a9a1fac94cc2a120">className</a>(void) const </td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html">eoUpdater</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classDisplayBestRoute.html#db263e38f1e82174f811bf62f323f87f">DisplayBestRoute</a>(eoPop< Route > &__pop)</td><td><a class="el" href="classDisplayBestRoute.html">DisplayBestRoute</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html#2e9f6291a5516a275953520ca592ec20">functor_category</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html">eoF< void ></a></td><td><code> [static]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html#5a1ee902b561f1ccd1ee01fe45bdea2a">lastCall</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html">eoUpdater</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classDisplayBestRoute.html#ee879344a6d8b81a04d4eabbed2c7a04">operator()</a>()</td><td><a class="el" href="classDisplayBestRoute.html">DisplayBestRoute</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classDisplayBestRoute.html#5270aabbf294d2deca9878934216eb89">pop</a></td><td><a class="el" href="classDisplayBestRoute.html">DisplayBestRoute</a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html#ce124173b1bde24e846c8095e5bf060b">result_type</a> typedef</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html">eoF< void ></a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html#178dc5a2f684f488c806089dec9ae84b">~eoF</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html">eoF< void ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_functor_base.html#8c8feaced1598f8445a94c22d69dbd31">~eoFunctorBase</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_functor_base.html">eoFunctorBase</a></td><td><code> [virtual]</code></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:47 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
64
trunk/paradiseo-peo/doc/html/classDisplayBestRoute.html
Normal file
64
trunk/paradiseo-peo/doc/html/classDisplayBestRoute.html
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: DisplayBestRoute Class Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>DisplayBestRoute Class Reference</h1><!-- doxytag: class="DisplayBestRoute" --><!-- doxytag: inherits="eoUpdater" --><p>Inheritance diagram for DisplayBestRoute:
|
||||
<p><center><img src="classDisplayBestRoute.png" usemap="#DisplayBestRoute_map" border="0" alt=""></center>
|
||||
<map name="DisplayBestRoute_map">
|
||||
<area doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_updater.html" alt="eoUpdater" shape="rect" coords="0,112,110,136">
|
||||
<area doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_f.html" alt="eoF< void >" shape="rect" coords="0,56,110,80">
|
||||
<area doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_functor_base.html" alt="eoFunctorBase" shape="rect" coords="0,0,110,24">
|
||||
</map>
|
||||
<a href="classDisplayBestRoute-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="db263e38f1e82174f811bf62f323f87f"></a><!-- doxytag: member="DisplayBestRoute::DisplayBestRoute" ref="db263e38f1e82174f811bf62f323f87f" args="(eoPop< Route > &__pop)" -->
|
||||
</td><td class="memItemRight" valign="bottom"><a class="el" href="classDisplayBestRoute.html#db263e38f1e82174f811bf62f323f87f">DisplayBestRoute</a> (<a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop</a>< <a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> > &__pop)</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ee879344a6d8b81a04d4eabbed2c7a04"></a><!-- doxytag: member="DisplayBestRoute::operator()" ref="ee879344a6d8b81a04d4eabbed2c7a04" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classDisplayBestRoute.html#ee879344a6d8b81a04d4eabbed2c7a04">operator()</a> ()</td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5270aabbf294d2deca9878934216eb89"></a><!-- doxytag: member="DisplayBestRoute::pop" ref="5270aabbf294d2deca9878934216eb89" args="" -->
|
||||
<a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_pop.html">eoPop</a>< <a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classDisplayBestRoute.html#5270aabbf294d2deca9878934216eb89">pop</a></td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="display__best__route_8h-source.html#l00046">46</a> of file <a class="el" href="display__best__route_8h-source.html">display_best_route.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
|
||||
<li><a class="el" href="display__best__route_8h-source.html">display_best_route.h</a><li><a class="el" href="display__best__route_8cpp-source.html">display_best_route.cpp</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:47 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
BIN
trunk/paradiseo-peo/doc/html/classDisplayBestRoute.png
Normal file
BIN
trunk/paradiseo-peo/doc/html/classDisplayBestRoute.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 631 B |
|
|
@ -0,0 +1,42 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>MergeRouteEval Member List</h1>This is the complete list of members for <a class="el" href="classMergeRouteEval.html">MergeRouteEval</a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html#fc64069be06fa835846ab2a7114c5374">functor_category</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html">eoBF< A1, A2, R ></a></td><td><code> [static]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classMergeRouteEval.html#29cb0028ac0df4b2cee3a809c8f35dea">operator()</a>(Route &__route, const int &__part_fit)</td><td><a class="el" href="classMergeRouteEval.html">MergeRouteEval</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html#a03c40b95210569b826df79a2237a0d0">peoAggEvalFunc::operator()</a>(A1, A2)=0</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html">eoBF< A1, A2, R ></a></td><td><code> [pure virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html#adc459db710dea2a91c47f8b6863b96c">~eoBF</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html">eoBF< A1, A2, R ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_functor_base.html#8c8feaced1598f8445a94c22d69dbd31">~eoFunctorBase</a>()</td><td><a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_functor_base.html">eoFunctorBase</a></td><td><code> [virtual]</code></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:47 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
57
trunk/paradiseo-peo/doc/html/classMergeRouteEval.html
Normal file
57
trunk/paradiseo-peo/doc/html/classMergeRouteEval.html
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: MergeRouteEval Class Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>MergeRouteEval Class Reference</h1><!-- doxytag: class="MergeRouteEval" --><!-- doxytag: inherits="peoAggEvalFunc" --><p>Inheritance diagram for MergeRouteEval:
|
||||
<p><center><img src="classMergeRouteEval.png" usemap="#MergeRouteEval_map" border="0" alt=""></center>
|
||||
<map name="MergeRouteEval_map">
|
||||
<area href="classpeoAggEvalFunc.html" alt="peoAggEvalFunc< EOT >" shape="rect" coords="0,112,159,136">
|
||||
<area doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_b_f.html" alt="eoBF< A1, A2, R >" shape="rect" coords="0,56,159,80">
|
||||
<area doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_functor_base.html" alt="eoFunctorBase" shape="rect" coords="0,0,159,24">
|
||||
</map>
|
||||
<a href="classMergeRouteEval-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29cb0028ac0df4b2cee3a809c8f35dea"></a><!-- doxytag: member="MergeRouteEval::operator()" ref="29cb0028ac0df4b2cee3a809c8f35dea" args="(Route &__route, const int &__part_fit)" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classMergeRouteEval.html#29cb0028ac0df4b2cee3a809c8f35dea">operator()</a> (<a class="elRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_vector.html">Route</a> &__route, const int &__part_fit)</td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="merge__route__eval_8h-source.html#l00044">44</a> of file <a class="el" href="merge__route__eval_8h-source.html">merge_route_eval.h</a>.<hr>The documentation for this class was generated from the following files:<ul>
|
||||
<li><a class="el" href="merge__route__eval_8h-source.html">merge_route_eval.h</a><li><a class="el" href="merge__route__eval_8cpp-source.html">merge_route_eval.cpp</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:47 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
BIN
trunk/paradiseo-peo/doc/html/classMergeRouteEval.png
Normal file
BIN
trunk/paradiseo-peo/doc/html/classMergeRouteEval.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 869 B |
|
|
@ -0,0 +1,65 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>peoParallelAlgorithmWrapper Member List</h1>This is the complete list of members for <a class="el" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoParallelAlgorithmWrapper.html#99f10723f15c63c4822dd6431b9d6d7d">algorithm</a></td><td><a class="el" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#8ae1827ecf7569b3db1ed386c7d8ad78">Communicable</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#5026c74eec184e3a15cb3c0ec4200a57">getID</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#db4307b69b9ccacff55fdbf84b8f50e4">getKey</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#40adbfb7d6944189b4fff60b02e669ca">isLocal</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#605b0efeffe81326f216c9903f5bbf4c">key</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#e1f8bd1ee810fd73d44315c95998d19d">lock</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#3591be473e0fcee1105fb57319b529aa">notifySendingTermination</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#7a6acfdc781a67c9c0ec4f17893f86c3">num_comm</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected, static]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#2ad6d199d684d6f34347fc202ffe2fa3">packTermination</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoParallelAlgorithmWrapper.html#e1e1de8b007934080876df1c65c4d8b0">peoParallelAlgorithmWrapper</a>(AlgorithmType &externalAlgorithm)</td><td><a class="el" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoParallelAlgorithmWrapper.html#1ebfe70e6826002f6280aba01e141ad5">peoParallelAlgorithmWrapper</a>(AlgorithmType &externalAlgorithm, AlgorithmDataType &externalData)</td><td><a class="el" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#3306a9adb11a0ab5af342c0db9f7bb2a">resume</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoParallelAlgorithmWrapper.html#4b10b46b4ea2e3f66c660c15f3c98e6c">run</a>()</td><td><a class="el" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a></td><td><code> [inline, virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#7acb8258c21da9daa62f9a177a2e5acd">Runner</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#cf9639312f71a2f348bc1e7789ccbd9d">sem_lock</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#29c53b9191348e0505e3bcba6d8b82b1">sem_stop</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classThread.html#e197c46f8f62ecce6d2a7fe95bdc5b38">setActive</a>()</td><td><a class="el" href="classThread.html">Thread</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classThread.html#20632ffe9ddfa2a478afb0c84dc1096b">setPassive</a>()</td><td><a class="el" href="classThread.html">Thread</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#7dc4419051fcc5cc9dadd54ecc9cd47d">start</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#cb53e6534b947bc889aa181d9dbbd13b">stop</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#0f133e75c28fb8264549814f80608e68">terminate</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classThread.html#95c703fb8f2f27cb64f475a8c940864a">Thread</a>()</td><td><a class="el" href="classThread.html">Thread</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#caa814847192e71f434fbf9479ede862">unlock</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classRunner.html#5bc239db2be753b77369fa9a038769fd">waitStarting</a>()</td><td><a class="el" href="classRunner.html">Runner</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#2280b0dfa0d3a515fccf62c2a9fd5f41">~Communicable</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoParallelAlgorithmWrapper.html#0e64f517afe790db467750a6980e1666">~peoParallelAlgorithmWrapper</a>()</td><td><a class="el" href="classpeoParallelAlgorithmWrapper.html">peoParallelAlgorithmWrapper</a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classThread.html#37d9edd3a1a776cbc27dedff949c9726">~Thread</a>()</td><td><a class="el" href="classThread.html">Thread</a></td><td><code> [virtual]</code></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:47 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: peoParallelAlgorithmWrapper Class Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>peoParallelAlgorithmWrapper Class Reference</h1><!-- doxytag: class="peoParallelAlgorithmWrapper" --><!-- doxytag: inherits="Runner" --><p>Inheritance diagram for peoParallelAlgorithmWrapper:
|
||||
<p><center><img src="classpeoParallelAlgorithmWrapper.png" usemap="#peoParallelAlgorithmWrapper_map" border="0" alt=""></center>
|
||||
<map name="peoParallelAlgorithmWrapper_map">
|
||||
<area href="classRunner.html" alt="Runner" shape="rect" coords="94,56,272,80">
|
||||
<area href="classCommunicable.html" alt="Communicable" shape="rect" coords="0,0,178,24">
|
||||
<area href="classThread.html" alt="Thread" shape="rect" coords="188,0,366,24">
|
||||
</map>
|
||||
<a href="classpeoParallelAlgorithmWrapper-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
|
||||
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e1e1de8b007934080876df1c65c4d8b0"></a><!-- doxytag: member="peoParallelAlgorithmWrapper::peoParallelAlgorithmWrapper" ref="e1e1de8b007934080876df1c65c4d8b0" args="(AlgorithmType &externalAlgorithm)" -->
|
||||
template<typename AlgorithmType> </td></tr>
|
||||
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpeoParallelAlgorithmWrapper.html#e1e1de8b007934080876df1c65c4d8b0">peoParallelAlgorithmWrapper</a> (AlgorithmType &externalAlgorithm)</td></tr>
|
||||
|
||||
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1ebfe70e6826002f6280aba01e141ad5"></a><!-- doxytag: member="peoParallelAlgorithmWrapper::peoParallelAlgorithmWrapper" ref="1ebfe70e6826002f6280aba01e141ad5" args="(AlgorithmType &externalAlgorithm, AlgorithmDataType &externalData)" -->
|
||||
template<typename AlgorithmType, typename AlgorithmDataType> </td></tr>
|
||||
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpeoParallelAlgorithmWrapper.html#1ebfe70e6826002f6280aba01e141ad5">peoParallelAlgorithmWrapper</a> (AlgorithmType &externalAlgorithm, AlgorithmDataType &externalData)</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0e64f517afe790db467750a6980e1666"></a><!-- doxytag: member="peoParallelAlgorithmWrapper::~peoParallelAlgorithmWrapper" ref="0e64f517afe790db467750a6980e1666" args="()" -->
|
||||
</td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoParallelAlgorithmWrapper.html#0e64f517afe790db467750a6980e1666">~peoParallelAlgorithmWrapper</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="4b10b46b4ea2e3f66c660c15f3c98e6c"></a><!-- doxytag: member="peoParallelAlgorithmWrapper::run" ref="4b10b46b4ea2e3f66c660c15f3c98e6c" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoParallelAlgorithmWrapper.html#4b10b46b4ea2e3f66c660c15f3c98e6c">run</a> ()</td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="99f10723f15c63c4822dd6431b9d6d7d"></a><!-- doxytag: member="peoParallelAlgorithmWrapper::algorithm" ref="99f10723f15c63c4822dd6431b9d6d7d" args="" -->
|
||||
<a class="el" href="structpeoParallelAlgorithmWrapper_1_1AbstractAlgorithm.html">AbstractAlgorithm</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoParallelAlgorithmWrapper.html#99f10723f15c63c4822dd6431b9d6d7d">algorithm</a></td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoParallelAlgorithmWrapper_1_1AbstractAlgorithm.html">AbstractAlgorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoParallelAlgorithmWrapper_1_1Algorithm.html">Algorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoParallelAlgorithmWrapper_1_1Algorithm_3_01AlgorithmType_00_01void_01_4.html">Algorithm< AlgorithmType, void ></a></td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="peoParallelAlgorithmWrapper_8h-source.html#l00047">47</a> of file <a class="el" href="peoParallelAlgorithmWrapper_8h-source.html">peoParallelAlgorithmWrapper.h</a>.<hr>The documentation for this class was generated from the following file:<ul>
|
||||
<li><a class="el" href="peoParallelAlgorithmWrapper_8h-source.html">peoParallelAlgorithmWrapper.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:47 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 837 B |
|
|
@ -0,0 +1,74 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: Member List</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>peoSynchronousMultiStart< EntityType > Member List</h1>This is the complete list of members for <a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a>, including all inherited members.<p><table>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#abcd58d71eabf2fab35c662fb300e61c">aggregationFunction</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#f47bb795f53df73f04c0d1528fa346a6">algorithms</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#8ae1827ecf7569b3db1ed386c7d8ad78">Communicable</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#f729f5a1671437dce7607ad5b7253560">data</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#a49cb2d76e6fdbfdbe0788c8388d6a0f">dataIndex</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#6efedfa64f7a4f3a0d81002e8226dcea">entityTypeInstance</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#da98ee86056eca293b3f08c89584b701">execute</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#20cff9a01fb7bb621264b901dab7f336">functionIndex</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#db4307b69b9ccacff55fdbf84b8f50e4">getKey</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classService.html#0dae00309c51a7b7069788142aed799f">getOwner</a>()</td><td><a class="el" href="classService.html">Service</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#0264a28725fb4a030ed1e4010e07e69e">idx</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#605b0efeffe81326f216c9903f5bbf4c">key</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#e1f8bd1ee810fd73d44315c95998d19d">lock</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#e328547d97849bfc85f2a7356e5e7927">notifySendingAllResourceRequests</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#de581c634fa9f952d571f9ed0a6611ed">notifySendingData</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classService.html#94e2012e76aaae3aa8199250f558d503">notifySendingResourceRequest</a>()</td><td><a class="el" href="classService.html">Service</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#7a6acfdc781a67c9c0ec4f17893f86c3">num_comm</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected, static]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#e8c889e6228535ce02086c76d3480cbb">num_term</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#1fd09337a6edcf173edff1fdda2387c7">operator()</a>(Type &externalData)</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#45372c26ac5b979d29458815debceff8">operator()</a>(const Type &externalDataBegin, const Type &externalDataEnd)</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#c73358b4f04f258c55f631660a7992fb">packData</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classService.html#c4289f98d1cd9ed53e850efbb6a947bd">packResourceRequest</a>()</td><td><a class="el" href="classService.html">Service</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#0a5e0e1c1db5af61351e201e019f5a89">packResult</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#e9a336c61dd6216d7d15253ff9c9d2a3">peoSynchronousMultiStart</a>(AlgorithmType &externalAlgorithm)</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#689374232ff67f266ddaa5d309ea54ac">peoSynchronousMultiStart</a>(std::vector< AlgorithmType * > &externalAlgorithms, AggregationFunctionType &externalAggregationFunction)</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [inline]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classService.html#7e2ae35a9070a05dcd46488df649896d">requestResourceRequest</a>(unsigned __how_many=1)</td><td><a class="el" href="classService.html">Service</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#3306a9adb11a0ab5af342c0db9f7bb2a">resume</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#cf9639312f71a2f348bc1e7789ccbd9d">sem_lock</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#29c53b9191348e0505e3bcba6d8b82b1">sem_stop</a></td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [protected]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classService.html#33b149b98498c0e7e401b0f0839d7f0d">setOwner</a>(Thread &__owner)</td><td><a class="el" href="classService.html">Service</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#ea22b8cd0f4974da519ec416904d772e">singularAlgorithm</a></td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [private]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#cb53e6534b947bc889aa181d9dbbd13b">stop</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#caa814847192e71f434fbf9479ede862">unlock</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#9881b3f05c9f90bcb3c3ec0af8109ccc">unpackData</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#976b78c11073ee3be09c1aed7826411a">unpackResult</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classCommunicable.html#2280b0dfa0d3a515fccf62c2a9fd5f41">~Communicable</a>()</td><td><a class="el" href="classCommunicable.html">Communicable</a></td><td><code> [virtual]</code></td></tr>
|
||||
<tr class="memlist"><td><a class="el" href="classpeoSynchronousMultiStart.html#f9ec55d67f5f45f5a737064fae569277">~peoSynchronousMultiStart</a>()</td><td><a class="el" href="classpeoSynchronousMultiStart.html">peoSynchronousMultiStart< EntityType ></a></td><td><code> [inline]</code></td></tr>
|
||||
</table><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:48 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
139
trunk/paradiseo-peo/doc/html/classpeoSynchronousMultiStart.html
Normal file
139
trunk/paradiseo-peo/doc/html/classpeoSynchronousMultiStart.html
Normal file
|
|
@ -0,0 +1,139 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: peoSynchronousMultiStart< EntityType > Class Template Reference</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li id="current"><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="classes.html"><span>Alphabetical List</span></a></li>
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul></div>
|
||||
<h1>peoSynchronousMultiStart< EntityType > Class Template Reference</h1><!-- doxytag: class="peoSynchronousMultiStart" --><!-- doxytag: inherits="Service" --><p>Inheritance diagram for peoSynchronousMultiStart< EntityType >:
|
||||
<p><center><img src="classpeoSynchronousMultiStart.png" usemap="#peoSynchronousMultiStart< EntityType >_map" border="0" alt=""></center>
|
||||
<map name="peoSynchronousMultiStart< EntityType >_map">
|
||||
<area href="classService.html" alt="Service" shape="rect" coords="0,56,244,80">
|
||||
<area href="classCommunicable.html" alt="Communicable" shape="rect" coords="0,0,244,24">
|
||||
</map>
|
||||
<a href="classpeoSynchronousMultiStart-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
|
||||
<tr><td></td></tr>
|
||||
<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
|
||||
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="e9a336c61dd6216d7d15253ff9c9d2a3"></a><!-- doxytag: member="peoSynchronousMultiStart::peoSynchronousMultiStart" ref="e9a336c61dd6216d7d15253ff9c9d2a3" args="(AlgorithmType &externalAlgorithm)" -->
|
||||
template<typename AlgorithmType> </td></tr>
|
||||
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#e9a336c61dd6216d7d15253ff9c9d2a3">peoSynchronousMultiStart</a> (AlgorithmType &externalAlgorithm)</td></tr>
|
||||
|
||||
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="689374232ff67f266ddaa5d309ea54ac"></a><!-- doxytag: member="peoSynchronousMultiStart::peoSynchronousMultiStart" ref="689374232ff67f266ddaa5d309ea54ac" args="(std::vector< AlgorithmType * > &externalAlgorithms, AggregationFunctionType &externalAggregationFunction)" -->
|
||||
template<typename AlgorithmType, typename AggregationFunctionType> </td></tr>
|
||||
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#689374232ff67f266ddaa5d309ea54ac">peoSynchronousMultiStart</a> (std::vector< AlgorithmType * > &externalAlgorithms, AggregationFunctionType &externalAggregationFunction)</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f9ec55d67f5f45f5a737064fae569277"></a><!-- doxytag: member="peoSynchronousMultiStart::~peoSynchronousMultiStart" ref="f9ec55d67f5f45f5a737064fae569277" args="()" -->
|
||||
</td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#f9ec55d67f5f45f5a737064fae569277">~peoSynchronousMultiStart</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="1fd09337a6edcf173edff1fdda2387c7"></a><!-- doxytag: member="peoSynchronousMultiStart::operator()" ref="1fd09337a6edcf173edff1fdda2387c7" args="(Type &externalData)" -->
|
||||
template<typename Type> </td></tr>
|
||||
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#1fd09337a6edcf173edff1fdda2387c7">operator()</a> (Type &externalData)</td></tr>
|
||||
|
||||
<tr><td class="memTemplParams" nowrap colspan="2"><a class="anchor" name="45372c26ac5b979d29458815debceff8"></a><!-- doxytag: member="peoSynchronousMultiStart::operator()" ref="45372c26ac5b979d29458815debceff8" args="(const Type &externalDataBegin, const Type &externalDataEnd)" -->
|
||||
template<typename Type> </td></tr>
|
||||
<tr><td class="memTemplItemLeft" nowrap align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#45372c26ac5b979d29458815debceff8">operator()</a> (const Type &externalDataBegin, const Type &externalDataEnd)</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c73358b4f04f258c55f631660a7992fb"></a><!-- doxytag: member="peoSynchronousMultiStart::packData" ref="c73358b4f04f258c55f631660a7992fb" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#c73358b4f04f258c55f631660a7992fb">packData</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9881b3f05c9f90bcb3c3ec0af8109ccc"></a><!-- doxytag: member="peoSynchronousMultiStart::unpackData" ref="9881b3f05c9f90bcb3c3ec0af8109ccc" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#9881b3f05c9f90bcb3c3ec0af8109ccc">unpackData</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="da98ee86056eca293b3f08c89584b701"></a><!-- doxytag: member="peoSynchronousMultiStart::execute" ref="da98ee86056eca293b3f08c89584b701" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#da98ee86056eca293b3f08c89584b701">execute</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0a5e0e1c1db5af61351e201e019f5a89"></a><!-- doxytag: member="peoSynchronousMultiStart::packResult" ref="0a5e0e1c1db5af61351e201e019f5a89" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#0a5e0e1c1db5af61351e201e019f5a89">packResult</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="976b78c11073ee3be09c1aed7826411a"></a><!-- doxytag: member="peoSynchronousMultiStart::unpackResult" ref="976b78c11073ee3be09c1aed7826411a" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#976b78c11073ee3be09c1aed7826411a">unpackResult</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="de581c634fa9f952d571f9ed0a6611ed"></a><!-- doxytag: member="peoSynchronousMultiStart::notifySendingData" ref="de581c634fa9f952d571f9ed0a6611ed" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#de581c634fa9f952d571f9ed0a6611ed">notifySendingData</a> ()</td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e328547d97849bfc85f2a7356e5e7927"></a><!-- doxytag: member="peoSynchronousMultiStart::notifySendingAllResourceRequests" ref="e328547d97849bfc85f2a7356e5e7927" args="()" -->
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#e328547d97849bfc85f2a7356e5e7927">notifySendingAllResourceRequests</a> ()</td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ea22b8cd0f4974da519ec416904d772e"></a><!-- doxytag: member="peoSynchronousMultiStart::singularAlgorithm" ref="ea22b8cd0f4974da519ec416904d772e" args="" -->
|
||||
<a class="el" href="structpeoSynchronousMultiStart_1_1AbstractAlgorithm.html">AbstractAlgorithm</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#ea22b8cd0f4974da519ec416904d772e">singularAlgorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f47bb795f53df73f04c0d1528fa346a6"></a><!-- doxytag: member="peoSynchronousMultiStart::algorithms" ref="f47bb795f53df73f04c0d1528fa346a6" args="" -->
|
||||
std::vector< <a class="el" href="structpeoSynchronousMultiStart_1_1AbstractAlgorithm.html">AbstractAlgorithm</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#f47bb795f53df73f04c0d1528fa346a6">algorithms</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="abcd58d71eabf2fab35c662fb300e61c"></a><!-- doxytag: member="peoSynchronousMultiStart::aggregationFunction" ref="abcd58d71eabf2fab35c662fb300e61c" args="" -->
|
||||
<a class="el" href="structpeoSynchronousMultiStart_1_1AbstractAggregationAlgorithm.html">AbstractAggregationAlgorithm</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#abcd58d71eabf2fab35c662fb300e61c">aggregationFunction</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6efedfa64f7a4f3a0d81002e8226dcea"></a><!-- doxytag: member="peoSynchronousMultiStart::entityTypeInstance" ref="6efedfa64f7a4f3a0d81002e8226dcea" args="" -->
|
||||
EntityType </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#6efedfa64f7a4f3a0d81002e8226dcea">entityTypeInstance</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f729f5a1671437dce7607ad5b7253560"></a><!-- doxytag: member="peoSynchronousMultiStart::data" ref="f729f5a1671437dce7607ad5b7253560" args="" -->
|
||||
std::vector< <a class="el" href="structpeoSynchronousMultiStart_1_1AbstractDataType.html">AbstractDataType</a> * > </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#f729f5a1671437dce7607ad5b7253560">data</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0264a28725fb4a030ed1e4010e07e69e"></a><!-- doxytag: member="peoSynchronousMultiStart::idx" ref="0264a28725fb4a030ed1e4010e07e69e" args="" -->
|
||||
unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#0264a28725fb4a030ed1e4010e07e69e">idx</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e8c889e6228535ce02086c76d3480cbb"></a><!-- doxytag: member="peoSynchronousMultiStart::num_term" ref="e8c889e6228535ce02086c76d3480cbb" args="" -->
|
||||
unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#e8c889e6228535ce02086c76d3480cbb">num_term</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a49cb2d76e6fdbfdbe0788c8388d6a0f"></a><!-- doxytag: member="peoSynchronousMultiStart::dataIndex" ref="a49cb2d76e6fdbfdbe0788c8388d6a0f" args="" -->
|
||||
unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#a49cb2d76e6fdbfdbe0788c8388d6a0f">dataIndex</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="20cff9a01fb7bb621264b901dab7f336"></a><!-- doxytag: member="peoSynchronousMultiStart::functionIndex" ref="20cff9a01fb7bb621264b901dab7f336" args="" -->
|
||||
unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="classpeoSynchronousMultiStart.html#20cff9a01fb7bb621264b901dab7f336">functionIndex</a></td></tr>
|
||||
|
||||
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1AbstractAggregationAlgorithm.html">AbstractAggregationAlgorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1AbstractAlgorithm.html">AbstractAlgorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1AbstractDataType.html">AbstractDataType</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1AggregationAlgorithm.html">AggregationAlgorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1Algorithm.html">Algorithm</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1DataType.html">DataType</a></td></tr>
|
||||
|
||||
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structpeoSynchronousMultiStart_1_1NoAggregationFunction.html">NoAggregationFunction</a></td></tr>
|
||||
|
||||
</table>
|
||||
<hr><a name="_details"></a><h2>Detailed Description</h2>
|
||||
<h3>template<typename EntityType><br>
|
||||
class peoSynchronousMultiStart< EntityType ></h3>
|
||||
|
||||
|
||||
<p>
|
||||
|
||||
<p>
|
||||
Definition at line <a class="el" href="peoSynchronousMultiStart_8h-source.html#l00045">45</a> of file <a class="el" href="peoSynchronousMultiStart_8h-source.html">peoSynchronousMultiStart.h</a>.<hr>The documentation for this class was generated from the following file:<ul>
|
||||
<li><a class="el" href="peoSynchronousMultiStart_8h-source.html">peoSynchronousMultiStart.h</a></ul>
|
||||
<hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:48 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
BIN
trunk/paradiseo-peo/doc/html/classpeoSynchronousMultiStart.png
Normal file
BIN
trunk/paradiseo-peo/doc/html/classpeoSynchronousMultiStart.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 714 B |
155
trunk/paradiseo-peo/doc/html/data_8cpp-source.html
Normal file
155
trunk/paradiseo-peo/doc/html/data_8cpp-source.html
Normal file
|
|
@ -0,0 +1,155 @@
|
|||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
|
||||
<title>ParadisEO-PEOMovingObjects: data.cpp Source File</title>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css">
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css">
|
||||
</head><body>
|
||||
<!-- Generated by Doxygen 1.4.7 -->
|
||||
<div class="tabs">
|
||||
<ul>
|
||||
<li><a href="main.html"><span>Main Page</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="classes.html"><span>Classes</span></a></li>
|
||||
<li id="current"><a href="files.html"><span>Files</span></a></li>
|
||||
<li>
|
||||
<form action="search.php" method="get">
|
||||
<table cellspacing="0" cellpadding="0" border="0">
|
||||
<tr>
|
||||
<td><label> <u>S</u>earch for </label></td>
|
||||
<td><input type="text" name="query" value="" size="20" accesskey="s"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</li>
|
||||
</ul></div>
|
||||
<h1>data.cpp</h1><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/* </span>
|
||||
<a name="l00002"></a>00002 <span class="comment">* <data.cpp></span>
|
||||
<a name="l00003"></a>00003 <span class="comment">* Copyright (C) DOLPHIN Project-Team, INRIA Futurs, 2006-2007</span>
|
||||
<a name="l00004"></a>00004 <span class="comment">* (C) OPAC Team, LIFL, 2002-2007</span>
|
||||
<a name="l00005"></a>00005 <span class="comment">*</span>
|
||||
<a name="l00006"></a>00006 <span class="comment">* Sebastien Cahon, Alexandru-Adrian Tantar</span>
|
||||
<a name="l00007"></a>00007 <span class="comment">*</span>
|
||||
<a name="l00008"></a>00008 <span class="comment">* This software is governed by the CeCILL license under French law and</span>
|
||||
<a name="l00009"></a>00009 <span class="comment">* abiding by the rules of distribution of free software. You can use,</span>
|
||||
<a name="l00010"></a>00010 <span class="comment">* modify and/ or redistribute the software under the terms of the CeCILL</span>
|
||||
<a name="l00011"></a>00011 <span class="comment">* license as circulated by CEA, CNRS and INRIA at the following URL</span>
|
||||
<a name="l00012"></a>00012 <span class="comment">* "http://www.cecill.info".</span>
|
||||
<a name="l00013"></a>00013 <span class="comment">*</span>
|
||||
<a name="l00014"></a>00014 <span class="comment">* As a counterpart to the access to the source code and rights to copy,</span>
|
||||
<a name="l00015"></a>00015 <span class="comment">* modify and redistribute granted by the license, users are provided only</span>
|
||||
<a name="l00016"></a>00016 <span class="comment">* with a limited warranty and the software's author, the holder of the</span>
|
||||
<a name="l00017"></a>00017 <span class="comment">* economic rights, and the successive licensors have only limited liability.</span>
|
||||
<a name="l00018"></a>00018 <span class="comment">*</span>
|
||||
<a name="l00019"></a>00019 <span class="comment">* In this respect, the user's attention is drawn to the risks associated</span>
|
||||
<a name="l00020"></a>00020 <span class="comment">* with loading, using, modifying and/or developing or reproducing the</span>
|
||||
<a name="l00021"></a>00021 <span class="comment">* software by the user in light of its specific status of free software,</span>
|
||||
<a name="l00022"></a>00022 <span class="comment">* that may mean that it is complicated to manipulate, and that also</span>
|
||||
<a name="l00023"></a>00023 <span class="comment">* therefore means that it is reserved for developers and experienced</span>
|
||||
<a name="l00024"></a>00024 <span class="comment">* professionals having in-depth computer knowledge. Users are therefore</span>
|
||||
<a name="l00025"></a>00025 <span class="comment">* encouraged to load and test the software's suitability as regards their</span>
|
||||
<a name="l00026"></a>00026 <span class="comment">* requirements in conditions enabling the security of their systems and/or</span>
|
||||
<a name="l00027"></a>00027 <span class="comment">* data to be ensured and, more generally, to use and operate it in the</span>
|
||||
<a name="l00028"></a>00028 <span class="comment">* same conditions as regards security.</span>
|
||||
<a name="l00029"></a>00029 <span class="comment">* The fact that you are presently reading this means that you have had</span>
|
||||
<a name="l00030"></a>00030 <span class="comment">* knowledge of the CeCILL license and that you accept its terms.</span>
|
||||
<a name="l00031"></a>00031 <span class="comment">*</span>
|
||||
<a name="l00032"></a>00032 <span class="comment">* ParadisEO WebSite : http://paradiseo.gforge.inria.fr</span>
|
||||
<a name="l00033"></a>00033 <span class="comment">* Contact: paradiseo-help@lists.gforge.inria.fr</span>
|
||||
<a name="l00034"></a>00034 <span class="comment">*</span>
|
||||
<a name="l00035"></a>00035 <span class="comment">*/</span>
|
||||
<a name="l00036"></a>00036
|
||||
<a name="l00037"></a>00037 <span class="preprocessor">#include <stdio.h></span>
|
||||
<a name="l00038"></a>00038 <span class="preprocessor">#include <assert.h></span>
|
||||
<a name="l00039"></a>00039 <span class="preprocessor">#include <string.h></span>
|
||||
<a name="l00040"></a>00040 <span class="preprocessor">#include <stdlib.h></span>
|
||||
<a name="l00041"></a>00041
|
||||
<a name="l00042"></a>00042 <span class="preprocessor">#include <utils/eoParser.h></span>
|
||||
<a name="l00043"></a>00043
|
||||
<a name="l00044"></a>00044 <span class="preprocessor">#include "data.h"</span>
|
||||
<a name="l00045"></a>00045 <span class="preprocessor">#include "node.h"</span>
|
||||
<a name="l00046"></a>00046
|
||||
<a name="l00047"></a>00047 <span class="preprocessor">#define MAX_TRASH_LENGTH 1000</span>
|
||||
<a name="l00048"></a>00048 <span class="preprocessor"></span><span class="preprocessor">#define MAX_FIELD_LENGTH 1000</span>
|
||||
<a name="l00049"></a>00049 <span class="preprocessor"></span><span class="preprocessor">#define MAX_LINE_LENGTH 1000</span>
|
||||
<a name="l00050"></a>00050 <span class="preprocessor"></span>
|
||||
<a name="l00051"></a>00051 <span class="keyword">static</span> <span class="keywordtype">void</span> getNextField (FILE * __f, <span class="keywordtype">char</span> * __buff) {
|
||||
<a name="l00052"></a>00052
|
||||
<a name="l00053"></a>00053 <span class="keywordtype">char</span> trash [MAX_TRASH_LENGTH];
|
||||
<a name="l00054"></a>00054
|
||||
<a name="l00055"></a>00055 fscanf (__f, <span class="stringliteral">"%[ \t:\n]"</span>, trash); <span class="comment">/* Discarding sep. */</span>
|
||||
<a name="l00056"></a>00056 fscanf (__f, <span class="stringliteral">"%[^:\n]"</span>, __buff); <span class="comment">/* Reading the field */</span>
|
||||
<a name="l00057"></a>00057 fgetc (__f);
|
||||
<a name="l00058"></a>00058 }
|
||||
<a name="l00059"></a>00059
|
||||
<a name="l00060"></a>00060 <span class="keyword">static</span> <span class="keywordtype">void</span> getLine (FILE * __f, <span class="keywordtype">char</span> * __buff) {
|
||||
<a name="l00061"></a>00061
|
||||
<a name="l00062"></a>00062 <span class="keywordtype">char</span> trash [MAX_TRASH_LENGTH];
|
||||
<a name="l00063"></a>00063
|
||||
<a name="l00064"></a>00064 fscanf (__f, <span class="stringliteral">"%[ \t:\n]"</span>, trash); <span class="comment">/* Discarding sep. */</span>
|
||||
<a name="l00065"></a>00065 fscanf (__f, <span class="stringliteral">"%[^\n]"</span>, __buff); <span class="comment">/* Reading the line */</span>
|
||||
<a name="l00066"></a>00066 }
|
||||
<a name="l00067"></a>00067
|
||||
<a name="l00068"></a>00068 <span class="keywordtype">void</span> loadData (<span class="keyword">const</span> <span class="keywordtype">char</span> * __filename) {
|
||||
<a name="l00069"></a>00069
|
||||
<a name="l00070"></a>00070 FILE * f = fopen (__filename, <span class="stringliteral">"r"</span>);
|
||||
<a name="l00071"></a>00071
|
||||
<a name="l00072"></a>00072 <span class="keywordflow">if</span> (f) {
|
||||
<a name="l00073"></a>00073
|
||||
<a name="l00074"></a>00074 printf (<span class="stringliteral">"Loading '%s'.\n"</span>, __filename);
|
||||
<a name="l00075"></a>00075
|
||||
<a name="l00076"></a>00076 <span class="keywordtype">char</span> field [MAX_FIELD_LENGTH];
|
||||
<a name="l00077"></a>00077
|
||||
<a name="l00078"></a>00078 getNextField (f, field); <span class="comment">/* Name */</span>
|
||||
<a name="l00079"></a>00079 assert (strstr (field, <span class="stringliteral">"NAME"</span>));
|
||||
<a name="l00080"></a>00080 getNextField (f, field);
|
||||
<a name="l00081"></a>00081 printf (<span class="stringliteral">"NAME: %s.\n"</span>, field);
|
||||
<a name="l00082"></a>00082
|
||||
<a name="l00083"></a>00083 getNextField (f, field); <span class="comment">/* Comment */</span>
|
||||
<a name="l00084"></a>00084 assert (strstr (field, <span class="stringliteral">"COMMENT"</span>));
|
||||
<a name="l00085"></a>00085 getLine (f, field);
|
||||
<a name="l00086"></a>00086 printf (<span class="stringliteral">"COMMENT: %s.\n"</span>, field);
|
||||
<a name="l00087"></a>00087
|
||||
<a name="l00088"></a>00088 getNextField (f, field); <span class="comment">/* Type */</span>
|
||||
<a name="l00089"></a>00089 assert (strstr (field, <span class="stringliteral">"TYPE"</span>));
|
||||
<a name="l00090"></a>00090 getNextField (f, field);
|
||||
<a name="l00091"></a>00091 printf (<span class="stringliteral">"TYPE: %s.\n"</span>, field);
|
||||
<a name="l00092"></a>00092
|
||||
<a name="l00093"></a>00093 getNextField (f, field); <span class="comment">/* Dimension */</span>
|
||||
<a name="l00094"></a>00094 assert (strstr (field, <span class="stringliteral">"DIMENSION"</span>));
|
||||
<a name="l00095"></a>00095 getNextField (f, field);
|
||||
<a name="l00096"></a>00096 printf (<span class="stringliteral">"DIMENSION: %s.\n"</span>, field);
|
||||
<a name="l00097"></a>00097 numNodes = atoi (field);
|
||||
<a name="l00098"></a>00098
|
||||
<a name="l00099"></a>00099 getNextField (f, field); <span class="comment">/* Edge weight type */</span>
|
||||
<a name="l00100"></a>00100 assert (strstr (field, <span class="stringliteral">"EDGE_WEIGHT_TYPE"</span>));
|
||||
<a name="l00101"></a>00101 getNextField (f, field);
|
||||
<a name="l00102"></a>00102 printf (<span class="stringliteral">"EDGE_WEIGHT_TYPE: %s.\n"</span>, field);
|
||||
<a name="l00103"></a>00103
|
||||
<a name="l00104"></a>00104 getNextField (f, field); <span class="comment">/* Node coord section */</span>
|
||||
<a name="l00105"></a>00105 assert (strstr (field, <span class="stringliteral">"NODE_COORD_SECTION"</span>));
|
||||
<a name="l00106"></a>00106 loadNodes (f);
|
||||
<a name="l00107"></a>00107
|
||||
<a name="l00108"></a>00108 getNextField (f, field); <span class="comment">/* End of file */</span>
|
||||
<a name="l00109"></a>00109 assert (strstr (field, <span class="stringliteral">"EOF"</span>));
|
||||
<a name="l00110"></a>00110 printf (<span class="stringliteral">"EOF.\n"</span>);
|
||||
<a name="l00111"></a>00111 }
|
||||
<a name="l00112"></a>00112 <span class="keywordflow">else</span> {
|
||||
<a name="l00113"></a>00113
|
||||
<a name="l00114"></a>00114 fprintf (stderr, <span class="stringliteral">"Can't open '%s'.\n"</span>, __filename);
|
||||
<a name="l00115"></a>00115 exit (1);
|
||||
<a name="l00116"></a>00116 }
|
||||
<a name="l00117"></a>00117 }
|
||||
<a name="l00118"></a>00118
|
||||
<a name="l00119"></a>00119 <span class="keywordtype">void</span> loadData (<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_parser.html">eoParser</a> & __parser) {
|
||||
<a name="l00120"></a>00120
|
||||
<a name="l00121"></a>00121 <span class="comment">/* Getting the path of the instance */</span>
|
||||
<a name="l00122"></a>00122
|
||||
<a name="l00123"></a>00123 eoValueParam <std :: string> param (<span class="stringliteral">""</span>, <span class="stringliteral">"inst"</span>, <span class="stringliteral">"Path of the instance"</span>) ;
|
||||
<a name="l00124"></a>00124 __parser.<a class="codeRef" doxygen="eo.doxytag:http://eodev.sourceforge.net/eo/doc/html/" href="http://eodev.sourceforge.net/eo/doc/html/classeo_parser.html#3e39518c3f01abbb776b8813a81598de">processParam</a> (param) ;
|
||||
<a name="l00125"></a>00125 loadData (param.value ().c_str ());
|
||||
<a name="l00126"></a>00126 }
|
||||
</pre></div><hr size="1"><address style="align: right;"><small>Generated on Mon Oct 8 11:16:45 2007 for ParadisEO-PEOMovingObjects by
|
||||
<a href="http://www.doxygen.org/index.html">
|
||||
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address>
|
||||
</body>
|
||||
</html>
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue